13397158231   jevian_ma@worldflying.cn

如何查看linux的socket可支持的最大缓冲区(buffer)大小

2020-05-06 02:51:42

由于小沃经常开发一些高并发的程序,经常使用到非阻塞IO以及epoll等特性。而在非阻塞IO编程中,socket的缓冲区大小是提高性能的一个重要指标。

这个参数可以通过setsockopt来修改,但是修改总有个上线,如果知道了这个上线,我们就可以合理用户层的接收缓冲区大小了。

下面小沃就来告诉大家如何查看这个缓冲区大小的最大可设置值:

读缓冲

cat /proc/sys/net/core/rmem_max

写缓冲

cat /proc/sys/net/core/wmem_max

但是注意,这个值并不是最大值,这个值只有最大值的1/2。

当我们通过setsockopt设置的参数大于上面的值时,实际就会变为这个值的两倍。

比如通过上面的命令得到的值为212992,那么通过程序设置的值大于212992,实际就会变为2*212992=425984?


文章作者:沃航科技

优秀产品推荐:可编程网络IO控制器

上一篇:百度云认证算法实现

下一篇:openwrt远程通过ssh免密钥连接其他linux系统

联系我们

  • 地址:武汉市东湖高新开发区光谷总部国际1栋2412室
  • QQ:932773931
  • 电话:027-59761089-806
  • 手机:13397158231
  • 邮箱:jevian_ma@worldflying.cn

关注公众号

扫码添加微信

沃航(武汉)科技有限公司版权所有

备案号:鄂ICP备16014230号-1

本网站由提供CDN加速/云存储服务