首页 > 试题广场 >

发送方需要重发的帧数是?

[单选题]
数据链路层采用后退N帧(GBN)协议,发送方已经发送了编号为0~7的帧。当计时器超时时,若发送方只收到0.2.3号帧的确认,则发送方需要重发的帧数是?
  • 4
  • 2
  • 3
  • 5
推荐
收到了3号帧的确认,说明接收方发送了3号帧的确认,从而说明接收方收到了3号及3号之前的帧。因此,发送方需要重发的4号之后的帧 
编辑于 2015-12-24 11:03:18 回复(3)

我觉得这个题目有问题

基于滑动窗口协议,接收窗口为1.如若返回ACK丢失,则发送方重传该帧。超过重传次数,进行重连。

此题发送方没收到返回的ACK信号,必然将1-7号帧进行重传。否则,在没有得到确认第一帧是否正确达到接收方的情况下,无法判断误码率为0。也就不是真正意义上的重传,只是伪重传而已。

发表于 2016-11-21 10:18:39 回复(1)
收到了3号帧的确认,由于是捎带确认,所以说3号帧以前的都到了接收端,但是发送方没有收到1号帧的确认,只说明1号帧的确认丢失了,不需要重传,只传3后面的帧就好了。
发表于 2017-07-18 15:57:34 回复(0)
首先回退N协议的确认号是积累值,然后发送的ack是希望接收的下一个帧号,故收到3表示2及之前的1和0都接收到了,所以还需4帧。
发表于 2017-03-17 09:27:53 回复(0)
收到了3号帧的确认,由于是捎带确认,所以说3号帧以前的都到了接收端,但是发送方没有收到1号帧的确认,只说明1号帧的确认丢失了,不需要重传,只传3后面的帧就好了。
发表于 2015-10-03 15:52:46 回复(1)
因为GBN在接受端的包是按顺序提交给上层的,只有当上层收到既定顺序的包,才会发送确认帧,所以接收端收到3号确认帧,至少保证3号和3号之前的帧是有收到的。至于1号确认帧没收到,那不影响
发表于 2016-07-16 00:28:26 回复(0)
ACK不逐一确认 : 接收方 不用 对每个 数据帧 逐一返回确认帧 , 可以每隔一段时间返回一个确认帧 ,代表前面所有的都能成功接受;
发表于 2022-05-27 11:18:12 回复(0)
因为GBN在接受端的包是按顺序提交给上层的,只有当上层收到既定顺序的包,才会发送确认帧,所以接收端收到3号确认帧,至少保证3号和3号之前的帧是有收到的。至于1号确认帧没收到,那不影响
发表于 2022-11-08 14:00:53 回复(0)

答案选A应该都能得出来。

但是我个人觉得这个问题有问题。
过程应该是这样吧:

  1. 接受方的接受缓存包含滑动窗口和确认序列两个部分,最开始都为空。
  2. 接受方收到0号分组,0号分组先放到滑动窗口,因为是第一个,再从滑动窗口放到确认序列中。
  3. 接受方接受2号分组,2号分组被放到滑动窗口中,由于确认序列中,最后一个是0,0与2不连续,所以2不能被放到确认序列中。此时,返回ack,应该是确认序列中最后一个分组+1,即ack = 0+1 = 1.
  4. 接受方接受3号分组,3号分组被放到滑动窗口中,由于3与0也不连续,所以3不能被放入确认序列中,此时返回ack,ack = 0 + 1 = 1.

接受方接受到的确认应该只有0号分组的,不会出现上述中的情况。

如果后续,1号分组还没来,且发送方的计数器没有归0,会触发快速重传。

以上个人看法,如果不对,还望大佬解答!

发表于 2020-06-05 16:43:26 回复(0)
3后面的都要重新发送。4,5,6,7一共4帧需要重发
发表于 2018-07-04 11:17:38 回复(0)
因为GBN在接受端的包是按顺序提交给上层的,只有当上层收到既定顺序的包,才会发送确认帧,所以接收端收到3号确认帧,至少保证3号和3号之前的帧是有收到的。至于1号确认帧没收到,那不影响,可能是接收放收到了,但是确定祯丢失了
编辑于 2017-08-30 00:00:19 回复(0)
收到了3号帧的确认,说明接收方发送了3号帧的确认,从而说明接收方收到了3号及3号之前的帧。因此,发送方需要重发的4号之后的帧
发表于 2017-08-22 07:21:07 回复(0)
发送方收到0,2,3的话,以3为主。
发表于 2017-07-14 21:31:38 回复(0)
收到了3号帧的确认,由于是捎带确认,所以说3号帧以前的都到了接收端,但是发送方没有收到1号帧的确认,只说明1号帧的确认丢失了,不需要重传,只传3后面的帧就好了。
发表于 2017-04-08 20:20:29 回复(0)
可是运输层的GBN协议的话,要把1-7全部发送啊,难道是因为在数据链路层的原因????求大神解答
发表于 2016-08-09 11:57:05 回复(0)
哈哈,09年408那哥们太逗了
发表于 2016-06-16 23:58:46 回复(0)
在GBN协议中,对序号为n的分组的确认采取的是 累计确认 (cumulative acknowledgment)的方式,表明在接收方已确认 接收到序号n以前(包括n在内) 的所有组。
以下讲得挺清楚的:
http://zhidao.baidu.com/link?url=YH-9b39hpfIHbk30iExgyvATcjce41tLqXVrOFpVIJVenh2CYSP9vSKoEWivgK7HEk99Wd65sTAyhhWbiQ3zhK
编辑于 2016-05-22 16:07:32 回复(0)
09年的408....
发表于 2016-03-08 21:20:11 回复(0)
主要是区别帧的发送帧和确认帧,0'2'3说明1'2帧已经发送,剩下3.4.5.6.7共5次
发表于 2015-12-23 15:21:28 回复(0)
话说编号为1的帧没有发送,不就是选5了吗?难道那个协议是默认忽略之前没有确认的帧吗?
发表于 2015-09-25 17:49:06 回复(0)
需重发的是4,5,67号,捎带确认
发表于 2015-09-25 16:43:55 回复(1)