首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >仅使用NAK的数据传输协议如何才是可靠的?

仅使用NAK的数据传输协议如何才是可靠的?
EN

Stack Overflow用户
提问于 2013-07-28 18:04:22
回答 2查看 1.7K关注 0票数 2

我一直在学习一本关于计算机网络的书(这不是一个家庭作业问题)

其中一个问题比较了基于ACK和NAK的数据传输协议,重点在于对于基于NAK的协议,当接收到第(x +1)个分组时,可以通过接收到的分组来检测分组x的分组丢失。

然而,我的问题是,如果接收方发送的NAK在到达发送方之前丢失了,会发生什么?发送者将不会意识到错误,并且不会重新传输。此外,如果数据包是序列中的最后一个,该怎么办?(没有后续数据包可用来测试)

我不明白纯NAK协议怎么可能是可靠的(以正确的顺序传送每个数据包)

EN

回答 2

Stack Overflow用户

发布于 2013-08-08 22:24:26

我怀疑书中描述的理论上下文假设了无限的数据包流,并忽略了通道变得完全禁用等情况。实际上,还有其他结构被定义为ACK/NAK协议的一部分,或者留给较高层或较低层协议处理。例如,物理层将提供诸如“信道中断”之类的指示,并且可能上面的协议发送/接收“流结束”分组,其中定时器检测最后一个分组的NAK丢失的情况。这些只是假设的例子,但都是现实生活中协议所做的事情类型。

我不明白NAK-only协议如何是可靠的(以正确的顺序传送每个数据包)

我确信这本书是在暗示有某种机制可以按顺序识别数据包。否则,接收器将无法指示它正在nak哪个分组,即,大多数协议在每个分组/ack/nak中使用序列号。

票数 1
EN

Stack Overflow用户

发布于 2017-04-04 03:34:17

通过使接收器在发送NAK时启动定时器,并在定时器在丢失的分组被重传之前超时时重传NAK,仅NAK协议可以实现可靠性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17907089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档