`

TCP与性能优化

 
阅读更多
TCP的可优化点:
1.TCP三次握手增加了整整一次的往返时间
2.TCP慢启动将被应用到每一个新连接
3.TCP流量及拥塞控制会影响所有的连接吞吐量
4.TCP的吞吐量由当前拥塞窗口大小控制

结论:现代TCP连接的数据传输速度,往往受到接收端和发送端之间往返时间的限制,在大多数情况下TCP的瓶颈是延迟而非带宽

为了使每个连接具有较低的延迟和较高的吞吐量,在TCP这一层我们可以这样做:
1.使用最新的操作系统(内核)
2.增加TCP初始拥塞窗口:让TCP在第一次往返就传输较多的数据,随后的速度提升也会明显
3.在连接空闲时禁用慢启动:这样可以提升TCP长连接瞬时发送数据的性能
4.增大最大接收窗口:让高延迟的连接达到更好的吞吐量
5.TCP快速打开:在发送第一个syn时,发送应用程序数据,需要客户端和服务器同时支持

性能优化清单:
• 把服务器内核升级到最新版本(Linux:3.2+)
• 确保 cwnd 大小为 10;
• 禁用空闲后的慢启动;
• 确保启动窗口缩放;
• 减少传输冗余数据;
• 压缩要传输的数据;
• 把服务器放到离用户近的地方以减少往返时间(CDN);
• 尽最大可能重用已经建立的 TCP 连接。
分享到:
评论

相关推荐

    大型网站性能优化实战

    具体内容包括:基于用户体验的性能优化要素、前端性能优化实战、网站性能分析、服务端性能优化、TCP优化、DNS优化、CDN优化、大型网站性能监控体系、大型网站容量评估、高性能系统架构模式、大促保障体系、数据分析...

    TCP协议优化思路

    TCP协议优化思路,优化后能够明显的提升网络性能,效果显著

    嵌入式Linux 3G无线路由器TCP_IP性能优化.pdf

    嵌入式Linux 3G无线路由器TCP_IP性能优化.pdf

    TCP协议在卫星通信网络中的运用优化

    针对TCP(Transmission Control Protocol)协议在卫星通信网络中的局限性,通过三个方面对TCP进行性能优化改进,对于性能增强代理的方案进行性能分析,最后的推荐方案为通过在信关站和用户终端处设置性能增强代理,性能...

    uni-app:从运行原理上面解决性能优化问题

    Uni-App,从了解到开发,相信大家都会觉得Uni-App性能不好,其实也这是非原生的弊病。React Native、Flutter等,非原生框架,性能上都会或多或少的折损。但各个框架,都会做出性能提升建议,所以开发者在开发前,多...

    MTU、TCP、UDP优化配置的一些总结.docx

    MTU、TCP、UDP

    linux 下tcp参数优化

    linux 文件系统 网络性能 参数优化 linux 文件系统 网络性能 参数优化 linux 文件系统 网络性能 参数优化

    优化Linux的TCP_IP协议栈性能.pdf

    优化Linux的TCP_IP协议栈性能.pdf

    TCP发送缓冲区优化方法的分析与实现

    要资源,高效地使用TCP发送缓冲区是提高HTTP服务性能 的一个有效方法[1]。随着Internet的发展,在其上运行的 HTTP服务器也以极快的速率增加。每个HTTP服务器每时每 刻要处理成百上千的HTTP请求,每个HTTP请求都要在...

    【荐】mysql服务性能优化—my.cnf_my.ini配置说明详解(16G内存)

    此配置是老男孩生产线上使用的配置,这配置已经优化的不错了,如果你的mysql没有什么特殊情况的话,可以直接使用该配置参数 对各参数添加了中文说明 ======= back_log = 600 #在MYSQL暂时停止响应新请求之前,短...

    TCP服务器与多个客户端通信.7z

    TCP服务器与多个客户端通信

    源自新浪的TCP性能分析工具Tcpdive.zip

    作为一个TCP协议的性能评测工具,Tcpdive提供了大量的性能指标,从以下维度来对每条TCP连接进行刻画: 传输情况 丢包和重传 拥塞控制 HTTP处理   传输:   损失和重传: 拥塞...

    Android端TCP长连接的性能优化教程分享

    在开发过程中,我们经常会用到TCP/IP连接实现即时数据传输,下面这篇文章主要给大家介绍了关于Android端TCP长连接的性能优化的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧...

    网络篇 2:图片优化——质量与性能的博弈(2).md

    我们现在站在性能优化的角度,一起简单地复习一遍这个经典的过程:首先我们需要通过 DNS(域名解析系统)将 URL 解析为对应的 IP 地址,然后与这个 IP 地址确定的那台服务器建立起 TCP 网络连接,随后我们向服务端抛...

    MySQL服务器性能优化.docx

    MySQL服务器性能优化全文共3页,当前为第1页。MySQL服务器性能优化全文共3页,当前为第1页。 MySQL服务器性能优化全文共3页,当前为第1页。 MySQL服务器性能优化全文共3页,当前为第1页。 MySQL服务器性能优化 MySQL...

    提高 Linux 上 socket 性能 加速网络应用程序的 4 种方法

    提高 Linux 上 socket 性能 加速网络应用程序的 4 种方法。修改socket参数和TCP/IP相关参数设置,从而适应各自业务提高网络性能。

    SQLServer安全及性能优化

    SQLServer安全及性能优化 修补漏洞 安装程序补丁修补漏洞 随时关注微软官方网站补丁升级 关闭不必要的端口 关闭联必要的服务 数据库引擎 SQL Server Analysis Services SQL Server Reporting Services SQL ...

    性能监测篇:Performance、LightHouse 与性能 API(1).md

    我们现在站在性能优化的角度,一起简单地复习一遍这个经典的过程:首先我们需要通过 DNS(域名解析系统)将 URL 解析为对应的 IP 地址,然后与这个 IP 地址确定的那台服务器建立起 TCP 网络连接,随后我们向服务端抛...

Global site tag (gtag.js) - Google Analytics