Nagle算法

来源:互联网 发布:河北网络分销商查询 编辑:程序博客网 时间:2024/06/06 01:11

     Nagle算法主要用于避免过多小分节报文在网络中传输,从而降低网络容量利用率。比如一个20字节的TCP首部+20字节的IP首部+1个字节的数据组成的TCP数据报,有效传输通道利用率只有将近1 /40。如果网络充斥着这样的小分组数据,则网络资源的利用率是相当低下的。

    

    Nagle算法要求一个TCP连接上最多只能有一个未被确认的未完成的小分组,在该分组的
确认到达之前不能发送其他的小分组。相反TCP收集这些小分组,并在确认到来时以一个
分组的方式发出去。

    然而Nagle算法并不是所有场合都需要开启,对于一些需要快速响应,对延时敏感的应用,
比如窗口程序,鼠标响应,一般而言需要关闭Nagle。Socket API用户可以通过套接口
选项TCP_NODELAY来关闭该算法。

0 0
原创粉丝点击