Prayer

在一般中寻求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

Linux下设置帧和socket缓冲区的大小

Posted on 2009-02-03 12:44 Prayer 阅读(12087) 评论(0)  编辑 收藏 引用 所属分类: SOCKET
修改帧大小和socket缓冲区大小

MTU (最大传输单元)的缺省值为1500. 

通过下面命令将其改为9000(jumbo frame)



% ifconfig eth0 mtu 9000



socket buffer size缺省为64 kB.

理论上,最优的buffer大小为<bandwidth>*<round-trip delay>

可以通过下列命令改变其大小(如256KB)



% sysctl -w net.core.rmem_max=262144 ;最大的接收缓冲区大小(tcp连接)

% sysctl -w net.core.wmem_max=262144 ;最大的发送缓冲区大小(tcp连接)

% sysctl -w net.core.rmem_default=262144;缺省的接收缓冲区大小(tcp连接)

% sysctl -w net.core.wmem_default=262144;缺省的发送缓冲区大小(tcp连接)



这些参数在proc/sys下面可以看到;

sysctl -p | grep mem:显示当前缓冲区设置

round-trip delay 可由ping命令得到。

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理