浅谈linux性能调优之十四:调节socket缓冲区
来源:互联网 发布:sql语句创建的表在哪 编辑:程序博客网 时间:2024/05/19 08:39
应用程序通过socket系统调用和远程主机进行通讯,每一个socket都有一个读写缓冲区。读缓冲区保存了远程主机发送过来的数据,如果缓冲区已满,则数据会被丢弃,写缓冲期保存了要发送到远程主机的数据,如果写缓冲区已满,则系统的应用程序在写入数据时会阻塞。可知,缓冲区是有大小的。
BDP 给出了一种简单的方法来计算理论上最优的 TCP socket 缓冲区大小(其中保存了排队等待传输和等待应用程序接收的数据)。如果缓冲区太小,那么 TCP 窗口就不能完全打开,这会对性能造成限制。如果缓冲区太大,那么宝贵的内存资源就会造成浪费。如果您设置的缓冲区大小正好合适,那么就可以完全利用可用的带宽
BDP = 带宽 * 延迟 (单位: 字节)
带宽*延时/8*2^20 = ***B
带宽: Mebibites 延时:s (RTT)
注意:调整tcp前,必须调整core,对于tcp,udp来说不能超出core的限制
默认值:
net.core.rmem_max = 131071 128K
net.core.rmem_default = 124928
net.core.wmem_max = 131071
net.core.wmem_default = 124928
net.ipv4.tcp_rmem = 4096 87380 2691072
net.ipv4.tcp_wmem = 4096 16384 2691072
示例:
带宽:1.5M 100M
延时:500ms 3000ms
1.5 * 0.5 / 8 * 2^20 ======= net.ipv4.tcp_wmem
100 * 3 / 8 * 2^20 ======= net.ipv4.tcp_wmem
http://www.2cto.com/os/201307/230154.html
0 0
- 浅谈linux性能调优之十四:调节socket缓冲区
- 浅谈linux性能调优之五:调优软raid
- [3.0.1]性能调优之调节并行度
- 49.性能调优之调节并行度
- LINUX系统性能调节
- linux proc 调节系统性能
- 浅谈linux性能调优之十五:常见网络参数整理
- 浅谈linux性能调优之二十:模块管理与内核编译
- 浅谈linux性能调优之十二:红帽优化策略Tuned
- 浅谈linux性能调优之十七:进程绑定与中断绑定
- linux socket 缓冲区默认大小
- linux 默认socket 缓冲区大小
- linux下socket读写缓冲区
- linux socket 缓冲区默认大小
- linux socket 缓冲区默认大小
- linux socket 缓冲区默认大小
- 性能调优之在实际项目中调节并行度
- spark性能调优之调节数据本地化等待时长
- Python报错:ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can
- BestCoder Round #41 A B C
- HTML5学堂 全新的HTML5/前端技术分享平台
- 凌阳16位单片机之定时器中断
- 第十一周项目二 存储班长信息的学生类(派生类)
- 浅谈linux性能调优之十四:调节socket缓冲区
- myeclipse tomcat7.0 内存配置
- poj 1325 最小顶点覆盖
- java RMI原理详解
- 第11周 自选阅读3
- 测试用例
- 微软近年来很给力啊!
- 抑郁症的表现及危害
- 单链表应用--一元多项式求和