|
UDP Tuning
MTP/IP software uses the UDP/IP packet format to provide network and operating system compatibility. Some legacy operating systems place very restrictive limits on the performance of UDP/IP protocols. In particular, the UDP/IP buffer size determines how much data the operating system will store while waiting for other network and disk operations to complete. If this buffer is not adequate, then performance will be reduced.
Only a few of the systems currently supported by MTP/IP experience this problem. Windows XP+ and Mac OS X 10.5+ do not have this problem.
A buffer size of at least 1 megabyte is necessary, particularly for operation on gigabit or faster networks. MTP/IP will utilize buffers up to 16 megabytes for receiving and 4 megabytes for sending if the operating system allows it. The instructions below require administrative access and will raise each UDP/IP buffer limit to 1 megabyte. Use larger values for network speeds of hundreds of megabits per second or faster.
Linux
Check the current UDP/IP buffer limit by typing the following commands:
sysctl net.core.wmem_max
sysctl net.core.rmem_max
If the values are less than 1048576 bytes you should add the following lines to the /etc/sysctl.conf file:
net.core.wmem_max=1048576
net.core.rmem_max=1048576
Changes to /etc/sysctl.conf do not take effect until reboot. To update the values immediately, type the following commands as root:
sysctl -w net.core.wmem_max=1048576
sysctl -w net.core.rmem_max=1048576
FreeBSD
Check the current UDP/IP buffer limit by typing the following command:
sysctl kern.ipc.maxsockbuf
If the value is less than 1048576 bytes you should add the following lines to the /etc/sysctl.conf file (create it if necessary):
kern.ipc.maxsockbuf=1048576
Changes to /etc/sysctl.conf do not take effect until reboot. To update the values immediately, type the following commands as root:
sysctl -w kern.ipc.maxsockbuf=1048576
NetBSD
Check the current UDP/IP buffer limit by typing the following command:
sysctl kern.sbmax
If the value is less than 1048576 bytes you should add the following lines to the /etc/sysctl.conf file (create it if necessary):
kern.sbmax=1048576
Changes to /etc/sysctl.conf do not take effect until reboot. To update the values immediately, type the following commands as root:
sysctl -w kern.sbmax=1048576
Solaris 8 or 9
Check the current UDP/IP buffer limit by typing the following command:
ndd /dev/udp udp_max_buf
If the value is less than 1048576 bytes you should add the following lines to the /etc/init.d/inetinit file:
ndd -set /dev/udp udp_max_buf 1048576
Changes to /etc/init.d/inetinit do not take effect until reboot. To update the values immediately, type the following commands as root:
ndd -set /dev/udp udp_max_buf 1048576
Others
As of this writing, all other supported systems are believed to provide adequate UDP/IP buffering by default. You can verify this by setting the debugging to level 1 and looking for a line such as this:
M 20120604 09:14:03 MTP1: UDP SO_RCVBUF 3670016, SO_SNDBUF 3670016
If either of the given values is less than 1048576, then you should examine the host operating system to determine if it is limiting UDP/IP buffer sizes, or contact DEI for assistance.
|