ZettaScale Knowledge Base ZettaScale Knowledge Base

  • Home
  • DDS Products
    • DDS Overview and Concepts
    • OpenSplice DDS
      • OpenSplice DDS
        • OpenSplice FAQ
        • Why OpenSplice DDS?
        • Installation
          • OpenSplice Licensing FAQ
        • Best Practice and Possible Errors
        • API and IDL
        • Configuration
        • Networking
          • DDSI
          • RT Networking
        • Durability Service
        • DDS Security
        • Logging
        • Databases and DBMS
        • Release Notes
      • OpenSplice Tools
        • Overview
        • OpenSplice Launcher
        • OpenSplice Tuner
        • OpenSplice Tester
        • Record and Replay Manager
        • MMStat
    • Cyclone DDS
  • Zenoh
  • Contact Support
Home / DDSI, DDS, OpenSplice DDS, Networking, Durability Service / Networking and Durability Warnings and what they mean

Networking and Durability Warnings and what they mean

Lack of privileges

The following two types of warnings occur because the user which is running OpenSplice does not have the privileges to set the scheduling priority of the networking process and it’s threads to realtime.

Description : sched_setscheduler failed with error 1 (Operation not permitted) for process ‘networking’
Description : pthread_create failed with SCHED_FIFO for thread ‘nwRAlignementChannel’, reverting to SCHED_OTHER.

The consequence is that the networking process and it’s thread will run at timesharing priority.

This can be solved by changing the rtprio settings for this user in the /etc/security/limits.conf file.

This should not be an issue with Windows OS.

Receive Buffer Size

The following warning occurs because of the default setting of the ReceiveBufferSize parameter which determines the receive socket buffer size.

Description : Channels/Channel[@name=’Reliable’]: failed to set requested socket receive buffer size to 1000000 (actual 425984)

The default setting of the ReceiveBufferSize is 1000000 bytes. Thus when creating the receive socket the networking service will try to set the receive buffer size of this socket to this value. However in this case the OS current limit is set to 425984. This does not provide a problem normally but when there is a high load and bursty incoming data this may cause packet loss to occur in the socket buffer when the networking service is not able to read all packets from the receive socket in time.

To remove this warning under Linux the OS limit on the receive buffer size of the network sockets should be increased. This can by setting the system variable “net.core.rmem_max” in the /etc/sysctl.conf file.
For example add to this file: net.core.rmem_max = 1048576

For Windows then a few network adaptors allow you to increase the resources manually. Go to the network adapter properties and look under Advanced for Receive Buffers and increase to 1024 if necessary.

Time Differences

The following warning occurs because the durability service detects that the time difference between the reported node is it too high.

Description : Estimated time difference including latency with fellow ‘587176280’ is larger then expected (1.253450 seconds). Durability alignment might not be reliable. Please align time between these nodes and restart.

This may cause the durability service to not align all data with that node. Note that the durability service expects a time difference smaller that 1 second. To solve this the time between the nodes should be aligned properly.

Related

DDSIDDSOpenSplice DDSNetworkingDurability Service
twitter logo linkedin logo
News and Events
Copyright © 2022 ZettaScale Technology Ltd. All Rights Reserved