TCP确认延时和Nagle算法

TCP确认延时和Nagle算法

nagle 算法是   发送端 收到前一个报文的确认然后再发送下一个tcp数据。这样可以避免大量的小数据。 TCP_NODELAY选项控制。
Delay ACK是   接收端 在等待超时(还有其他发送ack确认的时机) 然后才发送ACK给客户端。
CORK算法 是  发送端 尽可能的进行数据的组包,以最大mtu传输,如果发送的数据包大小过小则如果在0.6~0.8S范围内都没能组装成一个MTU时,直接发送。
如果发送的数据包大小足够间隔在0.45内时,每次组装一个MTU进行发送。如果间隔大于0.4~0.8S则,每过来一个数据包就直接发送。TCP_CORK选项控制。


**禁用nagle算法 导致小片数据包多 但是ack确认的返回的机制仍旧不变(Delay ACK)。

Linux TCP确认延时(TCP有关压力测试):http://blog.csdn.net/turkeyzhou/article/details/6764389

网络编程的Nagle算法与Delay ACK算法:http://blog.csdn.net/yangruibao/article/details/9410445

posted on 2016-09-13 14:57  zhuzhu2016  阅读(3217)  评论(0编辑  收藏  举报

导航