15.【2015统考真题】主机甲通过128kb/s卫星链路,采用滑动窗口协议向主机乙发送数据,链路单向传播时延为250ms,帧长为1000字节。不考虑确认帧的开销,为使链路利用率不小于80%,帧序号的比特数至少是(). A.3 B.4 C.7 D.8 解析:从发送周期思考,开始发送帧到收到第一个确认帧为止,用时为T = 第 一 个 帧 的 传 输 时 延 + 第 一 个 帧 的 传 播 时 延 + 确 认 帧 的 传 输 时 延 + 确 认 帧 的 传 播 时 延 T=第一个帧的传输时延+第一个帧的传播时延+确认帧的传输时延+确认帧的传播时延T=第一个帧的传输时延+第一个帧的传播时延+确认帧的传输时延+确认帧的传播时延,这里忽略确认帧的传输时延。因此T = 1000 B / 128 k b / s + R T T = 0.5625 s T=1000B/128kb/s+ RTT=0.5625sT=1000B/128kb/s+RTT=0.5625s,接着计算在T内需要发送多少数据才能满足利用率不小于80%。设数据大小为L字节,则( L / 128 k b / s ) / T ≥ 0.8 (L/128kb/s)/T≥0.8(L/128kb/s)/T≥0.8,得L ≥ 7200 B L≥7200BL≥7200B,即在一个发送周期内至少发7.2个帧才能满足要求,设需要编号的比特数为n,则2 n − 1 ≥ 7.2 2^n-1≥7.22n−1≥7.2,因此n至少为4。
16.【2018统考真题】主机甲采用停止-等待协议向主机乙发送数据,数据传输速率是3kb/s,单向传播时延是200ms,忽略确认帧的传输时延。当信道利用率等于40%时,数据帧的长度为(). A.240比特 B.400比特 C.480比特 D.800比特 解析:信 道 利 用 率 = 传 输 帧 的 有 效 时 间 / 传 输 帧 的 周 期 信道利用率=传输帧的有效时间/传输帧的周期信道利用率=传输帧的有效时间/传输帧的周期。假设帧的长度为x比特。对于有效时间,应该用帧的大小除以数据传输速率,即x / ( 3 k b / s ) x/(3kb/s)x/(3kb/s)。对于帧的传输周期,应包含4部分:帧在发送端的发送时延、帧从发送端到接收端的单程传播时延、确认帧在接收端的发送时延、确认帧从接收端到发送端的单程传播时延。这4个时延中,由于题目中说“忽略确认帧的传输时延”,因此不计算确认帧的发送时延(注意区分传输时延和传播时延的区别,传输时延也称发送时延,和传播时延只有一字之差)。所以帧的传输周期由三部分组成:首先是帧在发送端的发送时延x / ( 3 k b / s ) x/(3kb/s)x/(3kb/s),其次是帧从发送端到接收端的单程传播时延200ms,最后是确认帧从接收端到发送端的单程传播时延200ms,三者相加可得周期为x / ( 3 k b / s ) + 400 m s x/(3kb/s)+400msx/(3kb/s)+400ms。代入信道利用率的公式,求出x = 800 b i t x=800bitx=800bit。答案选D。
17.【2019统考真题】对于滑动窗口协议,若分组序号采用3比特编号,发送窗口大小为5,则接收窗口最大是(). A.2 B.3 C.4 D.5 解析:从滑动窗口的概念来看,停止等待协议:发送窗口大小= 1,接收窗口大小=1;后退N协议:发送窗口大小>1,接收窗口大小=1;选择重传协议:发送窗口大小>1,接收窗口大小>1。在选择重传协议中,需要满足:发送窗口大小+接收窗口大小≤2 n 2^n2n;接收窗口大小不应超过发送窗口大小,因此接收窗口大小不应超过序号范围的-一半,即≤ 2 n − 1 ≤ 2^{n-1}≤2n−1。根据以上规则,采用3比特编号,发送窗口大小为5,接收窗口大小应≤3.
18.【2020统考真题】假设主机甲采用停–等协议向主机乙发送数据帧,数据帧长与确认帧长均为1000B,数据传输速率是10kb/s,单项传播延时是200ms。则甲的最大信道利用率为( )。 A.80% B.66.7% C.44.4% D.40% 解析:发送数据帧和确认帧的时间均为t = 1000 × 8 b / 10 k b / s = 800 m s t=1000×8b/10kb/s = 800mst=1000×8b/10kb/s=800ms.发送周期为T = 800 m s + 200 m s + 800 m s + 200 m s = 2000 m s T= 800ms + 200ms + 800ms + 200ms = 2000msT=800ms+200ms+800ms+200ms=2000ms.信道利用率为t / T × 100 % = 800 / 2000 = 40 % t/T×100\%=800/2000= 40\%t/T×100%=800/2000=40%。
应用题
1.在选择ARQ协议中,设编号用3bit,发送窗口W T = 6 W_T=6WT=6,接收窗口W T = 3 W_T=3WT=3。试找出一种情况,使得在此情况下协议不能正确工作。 解析: 对于选择重传协议,接收窗口和发送窗口的尺寸需满足:接 收 窗 口 尺 寸 W R + 发 送 窗 口 尺 寸 W T ≤ 2 n 接收窗口尺寸W_R+发送窗口尺寸W_T≤2^n接收窗口尺寸WR+发送窗口尺寸WT≤2n,而题目中给出的数据是W T + W R = 9 ≥ 2 3 W_T+W_R=9≥2^3WT+WR=9≥23,所以是无法正常工作的。 举例如下:
2.假设一个信道的数据传输速率为5kb/s,单向传输时延为30ms,那么帧长在什么范围内才能使用于差错控制的停止-等待协议的效率至少为50%? 解析: 设帧长为L。在停止-等待协议中,协议忙的时间为数据发送的时间L/B,协议空闲的时间为数据发送后等待确认返回的时间2R。要使协议的效率至少为50%,要求信道利用率u至少为50%而信道利用率=数据发送时延/(传播时延+数据发送时延),则L / B ( L / B + 2 R ) ≥ 50 % \frac{L/B}{(L/B+2R)}\ge50\%(L/B+2R)L/B≥50% 可得L ≥ 2 R B = 2 × 5000 × 0.03 b i t = 300 b i t L≥2RB= 2×5000×0.03bit= 300bitL≥2RB=2×5000×0.03bit=300bit。 因此,当帧长大于等于300bit时,停止-等待协议的效率至少为50%。
3.假定卫星信道的数据率为100kb/s,卫星信道的单程传播时延为250ms,每个数据帧的长度均为2000位,并且不考虑误码、确认帧长、头部和处理时间等开销,为达到传输的最大效率,试问帧的顺序号应为多少位?此时信道利用率是多少? 解析: R T T = 250 × 2 = 500 m s = 0.5 s RTT=250×2 = 500ms = 0.5sRTT=250×2=500ms=0.5s。 一个帧的发送时间等于2000 b i t / ( 100 k b / s ) = 20 × 1 0 − 3 s 2000bit/(100kb/s) = 20×10^{-3}s2000bit/(100kb/s)=20×10−3s. 一个帧发送完后经过一个单程时延到达接收方,再经过一个单程时延发送方收到应答,从而可以继续发送,因此要达到传输效率最大,就是不用等确认也可继续发送帧。设窗口值等于x,令 2000 b i t × x / ( 100 k b / s ) = 20 × 1 0 − 3 s + R T T = 20 × 1 0 − 3 s + 0.5 s = 0.52 s 2000bit×x/(100kb/s)= 20×10^{-3}s+ RTT= 20×10^{-3}s+0.5s = 0.52s2000bit×x/(100kb/s)=20×10−3s+RTT=20×10−3s+0.5s=0.52s得x = 26 x=26x=26。 要取得最大信道利用率,窗口值是26即可,因为在此条件下,可以不间断地发送帧,所以发送速率保持在100kb/s。 由于2 4 = 16 < 26 < 32 = 2 5 2^4=16<26<32=2^524=16<26<32=25,帧的顺序号应为5 55位。在使用后退N帧ARQ的情况下,最大窗口值是最 大 帧 长 − 1 = 32 − 1 = 31 , 大 于 26 最大帧长-1=32-1=31,大于26最大帧长−1=32−1=31,大于26,可以不间断地发送帧,此时信道利用率是100%。
5.对于下列给定的值,不考虑差错重传,非受限协议(无须等待应答)和停止-等待协议的有效数据率是多少?(即每秒传输了多少真正的数据,单位为b/s.) R=传输速率(16 M b / s 16Mb/s16Mb/s) S=信号传播速率(200 m / μ s 200m/\mu s200m/μs) D=接收主机和发送主机之间传播距离(200m) T=创建帧的时间(2 μ s 2\mu s2μs) F=每帧的长度(500bit) N=每帧中的数据长度(450bit) A一确认帧ACK的帧长(80bit) 解析: 1)非受限协议 有效数据率N T + F R = 450 b i t 2 μ s + 500 b i t 16 b i t s / μ s ≈ 13.53 M b / s \frac{N}{T+\frac{F}{R}}=\frac{450bit}{2\mu s+\frac{500bit}{16bits/\mu s}}\approx13.53Mb/sT+RFN=2μs+16bits/μs500bit450bit≈13.53Mb/s 2)停止等待协议 有效数据率N 2 × ( T + D / S ) + F + A R = 450 b i t 2 × ( 2 μ s + 200 m 200 m / μ s ) + 500 b i t 16 b i t s / μ s ≈ 10.65 b i t / μ s ≈ 10.65 M b / s \frac{N}{2×(T+D/S)+\frac{F+A}{R}}=\frac{450bit}{2×(2\mu s+\frac{200m}{200m/\mu s})+\frac{500bit}{16bits/\mu s}}\approx10.65bit/\mu s\approx10.65Mb/s2×(T+D/S)+RF+AN=2×(2μs+200m/μs200m)+16bits/μs500bit450bit≈10.65bit/μs≈10.65Mb/s
6.在某个卫星信道上,发送端从一个方向发送长度为512B的帧,且发送端的数据发送速率为64kb/s,接收端在另一端返回一个很短的确认帧。设卫星信道端到端的单向传播延时为270ms,对于发送窗口尺寸分别为1、7、17和117的情况,信道的吞吐率分别为多少? 解析: 这里要注意题目中的单位。数据帧的长度为512B,即512 × 8 b i t = 4.096 k b i t 512×8bit =4.096kbit512×8bit=4.096kbit,一个数据帧的发送时延为4.096 / 64 = 0.064 s 4.096/64=0.064s4.096/64=0.064s。因此-一个发送周期时间为0.064 + 2 × 0.27 = 0.604 s 0.064+2×0.27=0.604s0.064+2×0.27=0.604s。 因此当窗口尺寸为1时,信道的吞吐率为1 × 4.096 / 0.604 = 6.8 k b / s 1×4.096/0.604=6.8kb/s1×4.096/0.604=6.8kb/s;当窗口尺寸为7时,信道的吞吐率为7 × 4.096 / 0.604 = 47.5 k b / s 7×4.096/0.604= 47.5kb/s7×4.096/0.604=47.5kb/s。 由于一个发送周期为0.604 s 0.604s0.604s,发送一个帧的发送延时是0.064 s 0.064s0.064s,因此当发送窗口尺寸大于0.604 / 0.064 0.604/0.0640.604/0.064,即大于等于10时,发送窗口就能保证持续发送。因此当发送窗口大小为17和117时,信道的吞吐率达到完全速率,与发送端的数据发送速率相等,即64 k b / s 64kb/s64kb/s。
7.【2017统考真题】甲乙双方均采用后退N帧协议(GBN)进行持续的双向数据传输,且双方始终采用捎带确认,帧长均为1000B。S x , y S_{x,y}Sx,y和R x , y R_{x,y}Rx,y分别表示甲方和乙方发送的数据帧其中x是发送序号,y是确认序号(表示希望接收对方的下一帧序号),数据帧的发送序号和确认序号字段均为3比特。信道传输速率为100Mb/s,RTT=0.96ms。下图给出了甲方发送数据帧和接收数据帧的两种场景,其中t 0 t_0t0为初始时刻,此时甲方的发送和确认序号均为0,t 1 t_1t1时刻甲方有足够多的数据待发送.