sun solaris操作系统udp参数设置
UDP的两个参数UDP_XMIT_HIWAT和UDP_RECV_HIWAT从8192调整到65536。
调整这两个参数很简单,运行:
ndd -set /dev/udp udp_xmit_hiwat 65536
ndd -set /dev/udp udp_recv_hiwat 65536
进行设置就可以了,但是这种设置只对当前有效,一旦系统重启,修改就会丢失。
Oracle的文档给出的方法是在/etc/system文件中添加:
set udp:udp_xmit_hiwat=65536
set udp:udp_recv_hiwat=65536
但是这种方法是错误的。设置了参数后,重启系统,这两个参数仍然会回到默认值8192。
查询了一下sun的文档发现,似乎无法通过设置/etc/system文件的方式来设置这两个参数,而必须通过建立启动脚本的方式。
步骤如下:
# vi /etc/init.d/nddudp
ndd -set /dev/udp udp_xmit_hiwat 65536
ndd -set /dev/udp udp_recv_hiwat 65536
在/etc/init.d目录下添加一个初始化脚本,将要修改的参数添加进去,然后在/etc目录下的rc1.d、rc2.d和rcS.d目录下添加上面文件的链接。这个链接需要以S70或S71开头:
# ln -s -f /etc/init.d/nddudp /etc/rc1.d/S70nddudp
# ln -s -f /etc/init.d/nddudp /etc/rc2.d/S70nddudp
# ln -s -f /etc/init.d/nddudp /etc/rcS.d/S70nddudp
完成之后,重启系统会发现这两个UDP参数的修改已经生效。
网络参数:
ndd /dev/udp udp_xmit_hiwat udp_recv_hiwat udp_max_buf;
修改参数命令:
ndd -set 参数=值
ndd -set /dev/udp udp_xmit_hiwat 262144
参数调优参考:
将UDP的两个参数UDP_XMIT_HIWAT和UDP_RECV_HIWAT从8192调整到65536。
调优需要可以设置得更大。
ndd -set /dev/udp udp_xmit_hiwat 262144
ndd -set /dev/udp udp_recv_hiwat 262144
ndd -set /dev/udp udp_max_buf 2621440
参数解释:
UDP_XMIT_HIWAT:
定义缺省的最大 UDP 套接字数据报大小。
UDP_RECV_HIWAT:
定义缺省的最大 UDP 套接字接收缓冲区大小。
UDP_MAX_BUF:
控制 UDP 套接字的发送缓冲区和接收缓冲区的大小。