纳格尔的算法是什么(Nagle's Algorithm)?

Nagle的算法是一个用来提高网络效率的系统,尤其是互联网。该系统涉及避免不必要的小批量发送数据,这也增加了发送的批处理数量。虽然Nagle的算法有其用途,但它与网络通信的其他元素之间的交互作用很差 Nagle的算法是一个...
Nagle的算法是一个用来提高网络效率的系统,尤其是互联网。该系统涉及避免不必要的小批量发送数据,这也增加了发送的批处理数量。虽然Nagle的算法有其用途,但它与网络通信的其他元素之间的交互作用很差Nagle的算法是一个用来提高网络效率的系统,尤其是互联网一个叫约翰·纳格尔的人,纳格尔的算法适用于使用TCP/IP协议的网络。这些协议,或者说是网络如何传输数据的"规则"。虽然这些协议可以应用于任何网络,但它们最常与互联网相关联该算法处理数据以小块或"数据包"的方式传输。每个数据包都包含一些数据加上标头信息,这相当于物理信封上的发送方和接收方地址。数据包还包含校验和,一种数学等价物,相当于包括一份装箱单,以便收件人知道包裹中的所有内容都已安全到达。虽然该系统正常工作良好,但如果数据块特别小,则可能效率低下。在极端情况下在这种情况下,数据包中的数据可能只有一个字节,但是不管数据的大小,报头信息将占用40个字节这大致相当于给某人写一封信,然后把它剪成一个单独的信封发送。事实上,由于消息是以二进制的形式发送的,它的效率甚至比这个还要低。这不仅浪费了带宽,还增加了必须发送的包数,Nagle算法的原理是发送一个包后,发送计算机将等待两个事件中的一个发生,然后再发送下一个包如果它收到最后一个数据包已经收到的确认,它将立即发送它所拥有的数据,而不管它的大小。否则,它将等待直到它有一个"完整"的数据包发送。一旦发生这种情况,它将发送完整的包,而不管前一个包是否已收到在某些情况下,纳格尔的算法弊大于利。一个例子是在线视频游戏,其设计假设数据会立即发送。如果使用纳格尔算法,有些数据会被延迟到一个完整的数据包准备好,这会对玩家的反应速度产生明显的影响,并且会有效地降低玩家的反应速度。
  • 发表于 2020-07-29 19:56
  • 阅读 ( 1692 )
  • 分类:电脑网络

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具