编号规则。 3位序号按模8循环,GBN发送窗口最多2³−1=7帧。确认号y表示希望收到对方下一帧,因而累计确认此前所有按序到达的数据;数据方向的发送序号x与反向确认y是两套独立状态。
(1)图a已经确认的甲帧。 甲收到R0,1后知道S0,0已收;之后R1,3和R3,3的确认号都为3,说明乙已按序收到甲的0、1、2并期望3。因此能断定正确接收3帧,分别为S0,0、S1,0、S2,0。S3,0与S4,1尚未得到更高累计确认,不能因图画出已发送就认为它们已被乙正确接收。
(2)图a还能新发的帧。 甲已发序号0~4,0~2已确认,窗口当前从3开始,最大7帧,可覆盖3、4、5、6、7、0、1。其中3、4已占两格,余下还可发送5帧:5、6、7、0、1。甲自己收到乙的数据0、1后期望2;随后来的是R3,3,数据序号3越过缺失的2,GBN接收端不能按序接受它,所以甲的捎带确认仍为2。新发5帧为S5,2、S6,2、S7,2、S0,2、S1,2,第一S5,2,最后S1,2。不能把乙帧的确认号3当作甲对乙的接收确认号。
(3)图b的重传。 乙返回的确认号先1后2,随后R2,2仍确认2,说明甲的0、1已确认,2、3、4未确认。t1时序号2超时,GBN须回退重传从2起的所有已发未确认帧,共3帧,即2、3、4。此时甲已按序收到乙的数据0、1、2,期望3,重传时更新捎带确认字段为3,所以重传首帧为S2,3,随后S3,3、S4,3。重发的数据发送序号保持原序号,反向确认号则可使用最新状态。
(4)最大利用率。 一帧1000B,发送时间 tf=1000×8/(100×106)=0.08ms。按题中往返传播时延RTT=0.96ms计算,首帧从开始发送到收到完整捎带确认,还包括自身帧发送0.08ms以及对方携带确认的数据帧发送0.08ms,总计1.12ms。窗口最大7帧,每轮能连续发送7×0.08=0.56ms,随后等待窗口推进,所以
Umax=min(1,0.96+0.08+0.087×0.08)=0.5=50%.
捎带确认字段虽短,却要等完整的对方1000B帧传到才能使用,不能把确认传输时间当成0;序号空间8也不等于GBN可开8帧窗口,必须保留一格区分新旧轮次。