HOW TO: Decrease Latency with the RealPort Driver in Linux

Typically latency seen communicating with the serial ports when using RealPort in Linux can be further decreased by tuning the edelay port setting.

The edelay setting is configured on a per port basis. This parameter changes the value we send to the firmware for "ttime" and "rtime".

By default edelay has always been set to 100ms with the lowest value of 1.

For example, when issuing the following setting:

ditty-rp edelay 1 /dev/ttyzz01

tells the firmware the ttime/rtime is 1ms.

Keep in mind, this works okay for 2.4 kernels, but shows considerable improvement under 2.6 kernels, where HZ has changed from 100 to 1000. (timers run every 10ms versus 1ms).

Under 2.4 kernels, the "max" latency can reach 20ms, (10ms in, 10ms out), but usually is about 10ms under ideal conditions with lower port counts.

Under 2.6 kernels, the "max" latency is  lower, but average still runs about 9ms.  Again, this is under ideal conditions and lower port counts.

PortServer TS Optimize Configuration:

This setting is usable with the PortServer TS model "optimize" setting, which should be set to "latency". 

This can be configured using telnet or SSH to the connect to the unit, logging in as root and issuing the following command: 

#> set config optimize=latency

A reboot is not necessary when changing this value. 

#> boot action=reset

Important note:  This capability is configured within the driver, actual latency experienced may be limited by the capabilities of the hardware and firmware of the target product and may also be impacted by the speed and traffic loading on the IP network.  Please refer to the firmware release notes and product manuals for more detailed guidance on specific RealPort enabled product capabilities.        

Last updated: Jan 01, 2024

Filed Under


Recently Viewed

No recently viewed articles

Did you find this article helpful?