gpt4 book ai didi

networking - 仅使用 NAK 的数据传输协议(protocol)如何可靠?

转载 作者:可可西里 更新时间:2023-11-01 02:42:54 25 4
gpt4 key购买 nike

我一直在学习计算机网络方面的书(这不是作业题)

其中一个问题比较了基于 ACK 和 NAK 的数据传输协议(protocol),重点是对于基于 NAK 的协议(protocol),当接收到第 (x + 1) 个数据包时,接收方可以检测到数据包 x 的丢包.

但是,我的问题是,如果接收方发送的 NAK 在到达发送方之前丢失了,会发生什么情况?发件人不会意识到错误,也不会重新传输。此外,如果数据包是序列中的最后一个数据包怎么办? (没有后续数据包可以测试)

我看不出只有 NAK 的协议(protocol)如何可靠(以正确的顺序传送每个数据包)

最佳答案

我怀疑书中描述的理论背景假设了无限的数据包流,并忽略了 channel 完全禁用等情况。实际上,还有其他构造被定义为 ACK/NAK 协议(protocol)的一部分,或者留给更高或更低层的层协议(protocol)来处理。例如,物理层会提供诸如“ channel 已损坏”之类的指示,并且上面的协议(protocol)可能会发送/接收“流结束”数据包,并使用计时器检测最后一个数据包的 NAK 丢失的情况。这些只是假设的例子,但却是现实生活中协议(protocol)所做的事情。

I do not see how a NAK-only protocol can be reliable (delivers each packet in the correct order)

我敢肯定这本书暗示有某种机制可以按顺序识别数据包。否则,接收方将无法指示哪个数据包正在 NAK,即大多数协议(protocol)在每个数据包/ack/nak 中使用序列号。

关于networking - 仅使用 NAK 的数据传输协议(protocol)如何可靠?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17907089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com