A-A+

考虑在一条链路上传送文件的一个简单协议。在经过某种初始协商之后 A给B发送1KB大小的数据分

2022-08-12 10:27:55 问答库 阅读 195 次

问题详情

考虑在一条链路上传送文件的一个简单协议。在经过某种初始协商之后,A给B发送1KB大小的数据分组,B然后用一个确认应答。A在发送下一个数据分组之前总是要等待前一个ACK(确认),这就是通常所说的停止一等待协议。在一个预定的时间内未收到确认的分组,就认为是丢失了,并且进行重发。(a)在不会有分组丢失或重复的情况下,说明为什么在分组头中包含“序列号”是不必要的?(b)假定链路可能偶尔地丢失分组,但分组总是以发送的顺序到达接收方。为了让A和B能够检测到和重发丢失的分组,使用2位作序列号够用吗?1位怎么样?(c)现在假定链路可能投递无序,有时候1个分组的投递可能用1分钟时间,有若干分组随之后到达。这会怎样改变对序列号的需求?


请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:×
在不会有分组丢失或接收重复的情况下,当我们期待接收第Ⅳ个分组时,就一定接收到第N个分组,因此我们可以在接收方本地保持跟踪分组的顺序号N。为了能够区分所收到的是一个新的分组还是前一个分组的重复拷贝,需要至少一位序列号。对于允许的失序投递,长至1分钟时间的多个分组必须通过顺序号区别开来。否则,一个很老的分组可能到达时被作为当前分组接收。序列号的个数必须多至:带宽×1分钟/分组大小。

考点:大小,协议