我试图了解使用Nagle's algorithm
不同send buffer size
值的后果。
我目前的理解send buffer
是,它指的是内存的一部分,其中存储了未确认的发送数据包的副本。一旦收到该数据包的 ACK,send buffer
就会清除 ACK。如果没有收到 ACK,则从send buffer
. 如果我错了,请纠正我。
现在我的问题 -
- 如果
send buffer
已满,这是否意味着即使禁用 Nagle 也不会向接收方发送新数据包? - 如果我将 设置
send buffer size
为 0 并禁用 Nagle 会发生什么?如果 ACK 永远不会到达,我是否会失去重新发送丢失数据包的能力?