我来我网
https://5come5.cn
 
您尚未 登录  注册 | 菠菜 | 软件站 | 音乐站 | 邮箱1 | 邮箱2 | 风格选择 | 更多 » 
 

本页主题: AIX网络性能优化简介 显示签名 | 打印 | 加为IE收藏 | 收藏主题 | 上一主题 | 下一主题

klo



性别: 帅哥 状态: 该用户目前不在线
等级: 品行端正
家族: YD一族
发贴: 473
威望: 0
浮云: 1105
在线等级:
注册时间: 2007-01-10
最后登陆: 2008-06-30

5come5帮你背单词 [ handle /'hændl/ n. 把手,柄;vt. 处理,对待 ]


AIX网络性能优化简介

在AIX 中,网络性能的优化可从以下几方面进行:
网络内存(network memory)的调整
socket 缓冲区 (socket buffer) 的调整
网络接口(network interface)参数的调整
网络适配器 (network adapter) 上发送/接收队列的调整
名字解析(name resolution) 的查找顺序。

1.网络内存的调整
AIX中参数 thewall 的值限定了系统中最多有多少物理内存可被网络缓冲区使用。但在AIX5L中 thewall 的值是无法修改的,是在系统启动时就确定的:
32-位核心 – thewall 取值为 1/2 物理内存 与 1GB 中的最小值,即最大为1GB。
64-位核心 – thewall 取值为 1/2 物理内存 与 65GB 中的最小值,即最大为65GB。
如果 netstat –m??命令结果显示缺少mbuf --- “rewuests for mbufs denied” 的值非0 。
# netstat -m
2434 mbufs in use:
2432 mbuf cluster pages in use
10336 Kbytes allocated to mbufs
0 requests for mbufs denied
0 calls to protocol drain routines
0 sockets not created because sockthresh was reached
Kernel malloc statistics:
******* CPU 0 *******
By size??inuse? ?calls failed delayed free hiwat freed
32? ?? ?? ?172? ?426280? ???0? ???0? ?? ???84??1440? ? 0
64? ?? ?? ? 84? ?2418? ?? ???0? ???0? ?? ???44? ?720? ? 0
128? ?? ???103? ?881463? ???0? ???0? ?? ? 313? ?360? ?17
。。。
使用下述方法之一调整网络内存:
a.? ?? ? 如果是32位核心,并且内存小于2GB,增大系统内存。
b.? ?? ? 如果是64位核心,并且内存小于65GB,增大系统内存。
c.? ?? ? 如果可能,将32位核心改成64位核心,增大系统内存。
d.? ?? ? 检查socket 的发送/接收缓存区的大小,以确定是否可将其减小。
e.? ?? ? 是否有mbuf的泄漏现象。

2. socket 缓冲区 (socket buffer) 的调整
TCP??Socket 的发送缓冲区(send buffer)是用于暂时存放应用的数据的区域。缓冲区的大小是由 no 参数 tcp_sendspace 来定义的,在用户应用中使用系统调用 setsockopt() 可以覆盖此参数的定义。为了保证使网络的吞吐量的平稳,常规将tcp_sendspace 值设成MTU的 10倍以上 。
使用 netstat –i 可以查出每一网络接口的MTU 值:
$ netstat -i
Name??Mtu? ?Network? ???Address? ?? ?? ?? ?Ipkts? ?? ?Ierrs? ? Opkts? ?Oerrs??Coll
en0? ?1500? ? link#2? ?? ?0.2.55.4f.4.bf? ?? ???378329? ???0? ???411094? ? 0? ? 0
en0? ?1500? ? 9.181.48.64??atstrs? ?? ?? ?? ???378329? ???0? ???411094? ? 0? ? 0
lo0? ?16896? ?link#1? ?? ?? ?? ?? ?? ?? ?? ? 375205? ???0? ?375243? ?? ?0? ???0
lo0? ?16896? ?127? ?? ?? ?loopback? ?? ?? ???375205? ???0? ?375243? ?? ?0? ???0
lo0? ?16896 :? ?:1? ?? ?? ?? ?? ?? ?? ?? ?? ? 375205? ???0? ?375243? ?? ?0? ???0

Tcp scoket的接收缓冲区(receive buffer)是用于接收来自于网络上的数据的区域,收到数据包后要给发送方回送确认信息(ACK),同时告诉发送方本地的接收缓冲区中还有多少空间,若没有足够的空间存放新数据,则发送方就暂停发送新数据,直到接收方能再接收为止。接收缓冲区的大小由 tcp_recvspace 设定,常规将tcp_recvspace 值设成MTU的 10倍以上 。可根据应用的需要来调整此参数。
对于socket buffer 还有 udp_sendspace, udp_recvspace 这两个参数,用于UDP协议。由于没有流量控制功能,udp_recvspace 太小会引起数据包的丢失。
系统中 tcp_sendspace, tcp_recvspace 的缺省值是 16384, udp_sendspace 是 9216, udp_recvspace 是41600。

注意: 系统中全部scoket 所用的内存不能大于 sb_max 所设定的值。
查看当前tcp_sendspace 和 tcp_revcspace 的值:
$ no –o tcp_sendspace
$ no –o tcp_revcspace
设置 socket buffer 的值, 直到下次重启:
$no –o tcp_sendspace=32768
$no –o tcp_recvspace=32768
设置 socket buffer 的值, 下次重启仍有效:
$no –r –o tcp_sendspace=32768
$no –r –o tcp_recvspace=32768

3.网络接口(network interface)参数的调整
在AIX5以前,网络参数的定义在整个系统范围内有效,所有网络接口使用统一的定义,无法为特定的网络接口单独设定值。
在AIX5 中 TCP socket 的 发送/接收缓冲区的尺寸、rfc1323(调整窗口值)、tcp_mssdflt(调整 maximum transmission size)和tcp_nodelay (是否立刻转发数据包) 网络参数可在网络接口上进行定义。 在接口上定义的值覆盖系统上统一定义的值,应用中setsockopt() 系统调用设定的值也能覆盖系统的统一定义。
在为特定的网络接口调整参数时,要将 isno (Interface Specific Network Options) 设为1:
#no –r –o isno=1
a. 若只是临时修改,可用 ifconfig 命令:
#ifconfig en0 ip_lable tcp_recvspace 65536 tcp_sendspace 65536.

b. 使用chdev 命令来修改参数,如:
#chdev –l en0 –a tcp_recvspace=65536 –a tcp_space=65536??
会修改ODM中的内容,所以在重新开机后参数也会生效。


4.网络适配器 (network adapter) 发送/接收队列的调整
如果适配器的传输队列不够大的话,在netstat –v 的结果中 “S/W Transmit Queue Overflow” 的值为非0。
如果接收资源不足,则“Packets Dropped” 或 “Out of Rcv Buffers” 或 “ No Resource Errors” 就会出现非0的值。
使用 chdev 或 smit 来调整相应队列的值,如:# chdev -l entx -a tx_que_sz=16384
5. 名字解析(name resolution) 的查找顺序
在AIX中缺省名字解析的顺序是DNS àNIS à/etc/hosts。
可以使用 /etc/netsvc.conf文件或 NSORDER环境变量来改变缺省的名字解析顺序,以提高名字解析的速度,若/etc/netsvc.conf文件和 NSORDER环境变量同时存在,则NSORDER起作用。

使用变量 NSORDER 改变解析顺序,用如下方法定义:
export NSORDER= local,nis,bind

使用/etc/netsvc.conf 文件,在文件中加入:
hosts=local,bind,nis


 
顶端 Posted: 2008-01-05 14:11 | [楼 主]
我来我网·5come5 Forum » Linux专区

Total 0.011436(s) query 4, Time now is:05-08 19:11, Gzip enabled
Powered by PHPWind v5.3, Localized by 5come5 Tech Team, 黔ICP备16009856号