18. 主要的ARQ方法是什么? 19. 20. 21. 22.
在什么情形下发送方要重传数据帧? 停止等待ARQ差错控制的机制是什么?
在停止等待ARQ中,如果ACK帧在传输中丢失会发生什么?为什么需要给帧编号? 滑动窗口ARQ差错控制的两种类型有何区别?
23. 哪一种滑动窗口ARQ更常见?为什么? 24. 在3种ARQ方法中何时丢弃帧?
25. 什么是捎带确认?
26. 按照协议与通信的关系,定义术语数据链路控制协议。 27. 描述3种HDLC站点的类型。
28. HDLC的两种链路配置与3种数据传输方式分别是什么? 29. 对于HDLC的每个配置,讨论命令与响应。 30. HDLC 3类帧中彼此之间有何不同?
31. HDLC中的I帧和U帧的控制字段有什么不同? 32. 在HDLC中,为何需要位填充?
33. 列出并简要讨论HDLC控制字段中各位的含义。 34. 偶检验与奇检验有什么区别?
35. 讨论奇偶检验及它能检测与不能检测的差错类型。 36. CRC如何优于奇偶检验?
37. 下列比特块是HDLC协议从相邻高层接收来的数据的一部分,准备组帧交给物理层传输,为了能够以透明方式传输,请按照位填充算法写出填充后放在帧的数据段中的对应输出。 011111011110111111011111110
38. PPP帧格式的开头和结尾都是1字节的段,其值用十六进制表示等于;地址段的值设置成等于十六进制的;协议段用2个字节指明;控制段的值设置成等于十六进制的。
39. 若数据链路的发送窗口尺寸为4,在发送了3号帧、并收到2号帧的确认后,发送方还可连续发几帧?试给出可发帧的序号。
40. 信息有效数据m是每个字符用7位字节编码的ASCII码串“well”,即m长28 b,其中,w=1110111,e=1100101 , l=1101100,取多项式CRC?12=X12+X11+X3+X2+X+1做循环冗余检验编码,求该码串的冗余部分r(要求写出主要计算步骤)。
41. 在使用位填充的情况下,对于丢失、插入或修改单个位的错误,检验和是否可能发现不了?如果不可能,为什么不?如果可能,怎么回事?在这里检验和的长度起作用吗? 42. 用发生器多项式x3+1去除x7+x5 +1,所得的余数是多少?
43. 数据链路协议几乎总是把CRC放在尾部,而不是放在头部,为什么?
44. 假定在一条无错线路上运行采用选择性重传的滑动窗口协议,线路速率是1Mb/s,最大帧长度是1000b,每一秒钟产生一个新帧,超时间隔是10ms。如果删除ACK超时机制,将会发生不必要的超时事件,平均每个报文要传输多少次?
45. 一个信道的数据率是4kb/s,传播时延为20ms,那么帧的大小在什么范围内,停等协议才有50%的效率?
46. 在一个1Mb/s的卫星信道上发送1000b长的帧。确认总是捎带在数据帧中。帧头很短,使用3位序列号。对以下协议而言,可以取得的最大信道利用率是多少? (a) 停?等协议;
(b) 回退N滑动窗口协议; (c) 选择性重传滑动窗口协议。
47. PPP是以HDLC为基础的,HDLC使用位充填防止在有效载荷内偶尔出现的标志字节产
生混淆。给出至少一个理由,说明PPP为什么使用字符充填来代替位充填。
48. 在使用PPP发送一个IP分组时,最小的开销是多少?仅考虑由PPP本身所引入的开销,而不计IP头部的开销。
49. 使用一个64Kb/s无错卫星通道发送512 B的数据帧(在一个方向上),卫星通道端到端的传播时延是270ms,在另一个方向上返回很小的确认帧,对于窗口大小分别为1、7、15和127的最大吞吐率是多少?
参考答案 一、选择题
1B 2B 3D 4C 5C 6B 7B
8 (1)C (2) C (3)D
9 (1)C (2)A (3)D (4)B (5)C
10(1)B (2)B (3)C (4)C (5)A 二、练习题
11线路规程、差错控制和流量控制。
12流量控制防止接收设备的数据因过载而丢失。
13每个接收设备有一个存储块作为接收缓存(缓冲区),用以保存接收到的数据直至它们被处理。如果缓冲区快要填满,接收方必须通知发送方。 14停止等待与滑动窗口。
15 在停止等待流量控制中,发送方在发送每一帧后等待来自接收方的ACK,只有前一帧被确认后再发送新的一帧 在滑动窗口流量控制中,发送方可以连续发送若干帧后才需要一个确认。接收方可以发送单个ACK帧对多个数据帧给予确认。
16停止等待流量控制的线路利用率与帧的长度、链路距离、数据率相关。对报文或报文分组按帧长度允许范围组帧,帧越长,比特长度越长,且帧数少,需要等待确认的时间开销也少,因此线路利用率高;链路距离越长,传播时延越大,在数据率和帧长度不变情况下,线路利用率越低;在传播距离和帧长度不变情况下,数据率高,线路利用率低。
滑动窗口流量控制的线路利用率不仅与上述参数有关,还与窗口大小有关。当窗口较大时,线路利用率较高。
17 如果数据帧或者确认帧丢失,发送方计时器超时并重传该数据帧,如果是确认帧丢失,接收方丢弃重复的帧。
如果数据帧被损坏,接收方可以不予确认,发送方按丢失帧的处理,超时重传;也可以采用否定确认的方法,由接收方发送一个NAK给发送方,指示上一帧损坏且需要重传。
18ARQ主要有停止等待ARQ和滑动窗口ARQ,滑动窗口ARQ又可分为回退N帧ARQ和选择拒绝ARQ两种。
19如果发送的帧损伤或丢失,或者该帧的确认丢失,则发送方重传一帧。
20发送方等待接收方对上一帧的确认,收到后再发送另一帧。发送设备保留已发送帧的一个副本直至收到一个ACK。ACK帧交替编号0和1予以标识。如果在接收方检测到一个差错它可以发送一个NAK帧请求重传发送的上一帧,或者不进行确认。对于后一种方法,发送设备有一个计时器,当计时器超时,则假定该帧丢失,并重发上一帧。如果确认帧丢失,也引起计时器超时并重传上一帧,此时上一帧在接收方出现重复的副本,丢弃副本。
21为了解决上面所提到的确认帧丢失引起接收方重复副本的识别问题,需对数据帧和予以标识。目的就是为了让接收方识别。对ACK帧也交替编号0和1,发送方计时器即使不超时,也能根据ACK的编号识别出确认帧是否丢失。
22回退N帧和选择拒绝这两种滑动窗口ARQ的区别在于,第一种方法中,如果某帧丢失或损坏,自上次确认以来的所有帧全部重传,或者重传损坏或丢失的帧及随后的所有已发送的帧;在选择拒绝方法中,仅重传损坏或丢失的该帧。
23 尽管选择拒绝是一种性能更好的ARQ,然而实际应用中,回退N帧更普遍,因为实现相对简单。
24在ARQ方法中当接收方收到重复的帧时,丢弃重复的副本,这发生于确认帧丢失的情况或者在回退N帧方法中接收到损坏的帧或数据帧丢失的情况。在后一种情况,丢弃损坏帧或丢失帧之后的所有帧,直至接收到损坏帧或丢失帧的正确副本。
25 捎带确认是发送的数据与对接收到的数据帧的确认组合在单个帧中,在发送数据给对方的同时,对收到的对方数据给予确认。
26在数据通信中,协议意味着用于实现OSI模型一层或多层的一组规则或规范。数据链路控制协议实现的是OSI模型的数据链路层的功能。它包括站点类型、链路配置和数据传送方式等线路规程的设置,依据这些规程设置建立和拆除链路,在建立的链路上进行数据交换,并提供数据交换相关的链路控制功能和管理功能,包括流量控制和差错控制以及链路的复位恢复等。
27在HDLC中有三种站点,主站、从站、混合站。主站发送命令,从站发送响应,混合站既可发送命令也可发送响应,
28HDLC有两种链路配置,非平衡与平衡。非平衡配置包括一个主站和一个或多个从站,也称主从式,采用轮询/选择模式线路规程。平衡配置由两个混合站组成,也称对等式,采用询问/确认模式线路规程。
HDLC支持三种数据传送方式:使用非平衡配置的正常响应方式NRM和异步响应方式ARM、使用平衡方式的异步平衡方式ABM。NRM方式是标准的轮询/选择模式,只由主站发起传输;ARM方式中从站也可发起传输,但线路初始化、差错恢复以及拆链等仍由主站负责。ARM方式每个站都可以发起传输。
这里的同步链路控制协议中的异步传送方式是帧之间的异步,不同于异步链路控制协议是字符间的异步。
29在平衡配置中,两个站都可以发送命令和响应;在非平衡配置中,主站发送命令,从站发送响应;还有一种对称配置,主站和从站可以互换角色,一个站的主导部分发送命令,另一个站的从属部分发送响应,或者反之。
30I帧用于运输用户数据以及相关的控制信息,S帧运载控制信息(数据链路流量控制和差错控制),U帧用于运输系统管理信息。
31 HDLC的I帧控制字段含有用户数据(发送的数据帧序号和起确认作用的接收序号),而U帧的控制字段是涉及网络管理的信息。
32比特填充是当数据流出现连续五个1时添加一个附加的0,目的是将数据与标志相区别。
33
第一个或前两个比特标识帧的类型,第一个比特为0表示I帧。第一个比特为1,则判断第二个比特,为0表示S帧,为表示U帧。N (S)的3个或7个比特指定该帧的序号,N (R)的3个或7个比特指定确认的序号。在S帧中的一个字段和U帧的两个字段中定义了相应帧的功能。在所有类型的帧中的P/F比特定义了帧的方向。
34
在偶检验中,数据单元中1的数目为偶数,在奇检验中1的个数是奇数。
35
奇偶检验是根据数据单元的比特奇偶性来决定传输是否出现差错,能检测单比特错和所有奇数个比特错的突发错,不能检测出偶数个比特错。
36
CRC能检测影响奇数个比特的所有突发错、长度小于或等于余数多项式的阶数的所有突发错、长度大于多项式阶数的大多数突发错。
37 0 1 1 1 1 1 0 0 1 1 1 10 1 1 1 1 1 0 1 0 1 1 1 1 101 1 0
38 PPP帧格式的开头和结尾都是1字节的 标志 段,其值用十六进制表示等 7E;地址段的值设置成等于十六进制的 FF ;协议段用2个字节指明 高层协议 ;控制段的值设置成等于十六进制的 03 。
39 发3帧,帧序号为4、5、6。
40
用被除数=1110111 1100101 1101100 1101100 000000000000
除数=1100 0000 01111
做二进制除法,得到商=1011010 1010101 1001000 1010110
余数r=1111 0001 0010,因此该码串的冗余部分r就等于1111 0001 0010。
41
可能。假定原来的正文包含位序列01111110作为数据。位填充之后,这个序列将
变成011111010。如果由于传输错误第二个0丢失了,收到的位串又变成01111110,被接收方看成是帧尾。然后接收方在该串的前面寻找检验和,并对它进行验证。如果检验和是16位,那么被错误的看成是检验和的16位的内容碰巧经验证后仍然正确的概率是1/216。如果这种概率的条件成立了,就会导致不正确的帧被接收。显然,检验和段越长,传输错误不被发现的概率会越低,但该概率永远不等于零。
42
所得余数是 +x+1。 43
CRC是在发送期间进行计算的。一旦把最后一位数据送上外出线路,就立即把CRC编码附加在输出流的后面发出。如果把CRC放在帧的头部,那么就要在发送之前把整个帧先检查一边来计算CRC。这样每个字节都要处理两遍,第一遍是为了计算检验码,第二遍是为了发送。把CRC放在尾部就可以把处理时间减半。
44
发送一位用时1μs,发送1000bit的最长帧花时间1ms。由于超时间隔是10ms,而1s才能产生一个新的数据帧,所以超时是不可避免的。假定A站向B站发送一个帧,正确到达接收方,但较长时间无反向交通。不久,A站发生超时事件,导致重发以发过的一帧。B站发现收到的帧的序列号错误,因为该序列号小余所期待接收的序列号。因此,B站将发送一个NAK,该NAK会携带一个确认号,导致不再重发该帧。结果是,每个帧都被发送两次。
45
设帧的大小为xbit,发送时延为xbit/4kbps,效率为(xbit/4kbps)/((xbit/4kbps)+20ms*2)
可解出x = 160bit 46
对应三种协议的窗口大小值分别是1、7和4。
使用卫星信道端到端的传输延迟是270ms,以1Mb/s发送,1000bit长的帧的发送时间是1ms。我们用t=0表示传输的开始时间,那么在t=1ms时,第一帧发送完毕。t=271ms,第一帧完全到达接收方。t=272ms时,对第一个帧的确认帧发送完毕。t=542ms时带有确认的帧完全到达发送方。因此周期是542ms。如果在542ms内可以发送k个帧(每个帧发送用1ms