【计算机网络】数据链路层习题

1. 下图有四个站ABCD。请问C站和D站哪个离AB更近?

在这里插入图片描述
答案:C站

解析:主要是要了解RTS/CTS机制

  • RTS:
    发送方A如果想给接受方B发送消息,那么首先要发送一个RTS控制帧。那么在发送方周围的主机,收到了这个RTS之后,就知道他周围有人要发送消息了,那么它会保持静默,不发送任何消息,直到接收到B给A发送消息确认,那么直到A给B发送消息这个过程完全结束了,这些周围的主机就可以发送了,周围主机这个沉默状态叫做NAV状态。
     
  • CTS:
    接收方接收到A给他发送的RTS之后,首先它先回复一个CTS确认控制消息。B周围的机子接收到这个CTS之后,那么就知道它周围有人要接受消息,所以也设定为NAV静默状态,防止干扰到接收方B,知道接收到B回给A的ACK,确定数据发送完毕,于是它们也可以收发消息了。
     
    协议解决主要问题:隐藏终端和暴露终端问题
    在这里插入图片描述

从图中可以看出,A要给B发送消息,先发送了RTS之后,A周围的C知道了A要发送消息,因此转为NAV状态;之后B收到了A发送的RTS控制帧,回复一个CTS确认控制消息,B周围的D知道了B要接收消息了,因此也设定为NAV静默状态。所以C离A更近。
 

 
2. 一个通过以太网传送的IP分组有60字节长,其中包含所有的头部,试问需要通过pad字段往以太网帧中需要填补多少字节?

  • 1440
  • 1458
  • 4
  • 0

答案:D

解析:

注意题目中所说的是IP分组有60字节长,仅占数据部分,除此之外,以太网帧还应包括目的地址(6字节)、源地址(6字节)、类型(2字节)、校验位(4字节),共18字节,因此该以太网总共78字节,大于64,因此不需填补。
 
或者从另一个角度讲,以太网帧的数据部分至少要46字节,而现在已经60字节了,因此无需填补。

 
 

3. 下列选项中,对正确接收到的数据帧进行确认的MAC协议是( )。

  • CDMA
  • CSMA
  • CSMA/CD
  • CSMA/CA

答案:D

解析: A. 码分多址(Code Division Multiple
Access),属于物理层,每一个用户可以在同样的时间使用同样的频带进行通信。由于各用户使用经过特殊挑选的不同码型,因此各用户之间不会造成干扰。和题目没什么关系,主要考的是拼写,别和下面几种混了。
 
B. CSMA,肯定不会是这项,要是选他的话,CD肯定也对了
 
C. CSMA/CD,没有使用确认
 
D. CSMA/CA,是无线局域网标准802.11中的协议。CSMA/CA利用ACK信号来避免冲突的发生,也就是说,只有当客户端收到网络上返回的ACK信号后才确认送出的数据已经正确到达目的地址。

 
 

4. 数据链路层协议使用了下面的字符编码:A:01000111 B:11100011 FLAG:01111110 ESC:11100000。为了传输一个包含4个字符的帧:A B ESC FLAG,试问使用下面哪种成帧方法时所发送的比特序列是什么(二进制表示)?
(1)字节计数
(2)字节填充的标志字节
(3)比特填充的标志字节

 
答案:
(1)00000101(5) 01000111(A)11100011(B) 11100000(ESC) 01111110(FLAG)
(2)01111110(FLAG) 01000111(A)11100011(B) 11100000(ESC) 11100000(ESC)11100000(ESC) 01111110(FLAG) 01111110(FLAG)
(3)01111110(FLAG) 01000111 11(0)100011 111(0)00000 011111(0)10 01111110(FLAG)

 

解析: (1)字节计数要算上计数字节本身,所以一共5个字节
 
(2)字节填充遇到FLAG就在他前面加上转义字符ESC,遇到ESC就在他前面也加上转义字符ESC,再加上首尾标志字节FLAG
 
(3)比特填充遇到连续5个0就加一个1,再加上首尾标志字节FLAG

 
 

5. 假设使用海明码来传输16位的报文。请问,需要多少个检查位才能确保接收方可以检测并纠正单个位错误?

  • 4
  • 5
  • 6
  • 7

答案:B

解析:考查最小校验位公式 ( m + r + 1 ) < 2 r (m+r+1)<2^{r} (m+r+1)<2r m是数据位数量,为16,则 r=5

 
 

6. 如图所示,若主机H2向主机H4发送1个数据帧,主机H4向主机H2立即发送一个确认帧,则除H4外,从物理层上能够收到该确认帧的主机还有 ()。
在这里插入图片描述

  • A. 仅H2
  • B. 仅H3
  • C. 仅H1、H2
  • D. 仅H2、H3
  • E. H1、H2、H3

答案:D

解析:考察集线器和交换机的特点
 
H2发送数据帧的路径:H2->Switch->Hub->H3,H4(此处假设交换机中已经记录了H2的MAC地址,因此不会对该帧进行广播)
 
H4发回确认帧,经过集线器,集线器对其进行广播,因此H3会收到该确认帧,再经过交换机,交换机根据该帧目的地址,将其转发给H2

 
 
7. 站点A、B、C通过CDMA共享链路,A、B、C的码片序列分别是(1,1,1,1)、(1,-1,1,-1)和(1,1,-1,-1)。若C从链路上收到的序列是(2,0,2,0,0,-2,0,-2,0,2,0,2),则C收到A发送的数据是 ()。

  • 110
  • 101
  • 000
  • 111

答案:B

解析:
用A的码片与链路上序列做规格化内积,具体做法是每次拿出4位序列与A做内积,然后除以位数,得到发送数据中的一位,计算结果1,该位得1,结果-1,该位得0,结果0,表示没发送数据
( 2 , 0 , 2 , 0 ) ∗ ( 1 , 1 , 1 , 1 ) / 4 = 1 (2,0,2,0)*(1,1,1,1)/ 4 =1 2,0,2,01,1,1,1/4=1 ( 0 , − 2 , 0 , − 2 ) ∗ ( 1 , 1 , 1 , 1 ) / 4 = − 1 (0,-2,0,-2)*(1,1,1,1)/ 4 =-1 0,2,0,21,1,1,1/4=1 ( 0 , 2 , 0 , 2 ) ∗ ( 1 , 1 , 1 , 1 ) / 4 = 1 (0,2,0,2)*(1,1,1,1)/ 4 =1 0,2,0,21,1,1,1/4=1 因此结果为101

 
 
8. 使用标准CRC方法传输比特流1011101,生成多项式为 x 3 + 1 x^3+1 x3+1,那么实际传输的二进制位串是多少?

答案:1011101111

解析:
1)构造被除数:生成多项式最高次项为3,因此在比特流1011101后加3个0
 
2)构造除数:根据生成多项式,除数为1001
 
3)做模2除法:商为1010111,余数为111
 
4)最后将余数(冗余码)加到传输比特流末尾,结果为1011101111

 
 
9. 考虑一个具有4kbps速率和20ms传输延迟的信道,忽略确认帧大小。试问帧的大小在什么范围内,停-等式协议才能获得至少50%的效率。

  • 10 bytes
  • 20 bytes
  • 30 bytes
  • 40 bytes

答案:B

解析:
所谓效率,即信道利用率

用公式(忽略确认帧大小)

U = T d / ( T d + R T T ) U = Td / ( Td +RTT ) U=Td/(Td+RTT)
L 4 × 1 0 3 L 4 × 1 0 3 + 2 × 20 × 1 0 − 3 = 0.5 \frac{\frac{L}{4\times 10^3}}{\frac{L}{4\times 10^3}+2\times 20\times 10^{-3}}=0.5 4×103L+2×20×1034×103L=0.5
解得 L=160 bits=20 bytes

 
 
10. A向B以停-等式协议以3kbps的速度发送数据,单向传播延迟是200ms,忽略确认帧的传输延迟。当信道利用率为40%时,数据帧的长度为()

  • 30 bytes
  • 50 bytes
  • 60 bytes
  • 100 bytes

答案:D

 
11. 主机甲与主机乙之间使用后退N帧协议(GBN)传输数据,甲的发送窗口尺寸为1000,数据帧长为1000字节,信道带宽为100Mbps,乙每收到一个数据帧立即利用一个短帧(忽略其传输延迟)进行确认,若甲、乙之间的单向传播延迟是50ms,则甲可以达到的最大平均数据传输速率约为()。

  • A. 10Mbps
  • B. 20Mbps
  • C. 80Mbps
  • D. 100Mbps

答案:C

解析:信道利用率
U = T d / ( T d + R T T ) U = Td / ( Td +RTT ) U=Td/(Td+RTT)
1帧的传输延迟 Td=数据帧长/信道带宽 = ( 1000 ∗ 8 ) / 100 ∗ 1 0 6 = 8 ∗ 1 0 − 5 s =(1000*8) /100*10^{6}=8*10^{-5}s =(10008)/100106=8105s
 
往返时延 RTT= 50 ∗ 2 = 100 m s 50*2 = 100 ms 502=100ms
 
速率最大的情况:在确认帧到来之前甲1000帧就已经发完了
在这里插入图片描述
一共要发的数据量为 1000 ∗ ( 1000 ∗ 8 ) = 8 ∗ 1 0 6 1000*(1000 * 8)=8*10^6 1000(10008)=8106
 
所以,最大速率=数据量 / (Td+RTT) = 8 ∗ 1 0 6 / ( 100 + 80 ∗ 1 0 − 3 ) ∗ 1 0 − 3 = 8 ∗ 1 0 6 / 0.1008 = 80 M b p s 8*10^6 / (100+80*10^{-3})*10^{-3}=8*10^6 /0.1008=80Mbps 8106/(100+80103)103=8106/0.1008=80Mbps

 

12. 地球到一个遥远行星的距离大约为 9 ∗ 1 0 10 9*10^{10} 91010米。如果采用滑动窗口协议在一条64Mbps的点到点链路上传输帧,试问信道的利用率是多少?请问需要多大的发送窗口才能使得链路利用率为100%?假设帧的大小为32000B,光的速度为 3 ∗ 1 0 8 3*10^{8} 3108m/s。发送方和接收方的协议处理时间可以忽略不计。

  • A、7500
  • B、7501
  • C、15000
  • D、15001

答案:D

解析:信道利用率
U = T d / ( T d + R T T ) U = Td / ( Td +RTT ) U=Td/(Td+RTT)
(1)

传输延迟 Td=32000*8/64000000=0.004
往返时延 RTT= ( 9 ∗ 1 0 10 (9*10^{10} (91010/ 3 ∗ 1 0 8 ) 3*10^{8}) 3108)*2 = 600s
U = 0.004 / ( 0.004 + 600 ) = 6.67 ∗ 1 0 − 6 U = 0.004 / ( 0.004 +600 ) =6.67*10^{-6} U=0.004/(0.004+600)=6.67106
(2)
要使信道利用率达到100%,就要让信道变为下图这种状态,即窗口内的其他帧(黄色帧)将往返延迟时间RTT占满
在这里插入图片描述
U = w ∗ 0.004 / ( 0.004 + 600 ) = 1 U = w * 0.004 / ( 0.004 +600 ) =1 U=w0.004/(0.004+600)=1
解得w=15000.1,如果取15000,图中会缺少最后一个黄色的帧,信道利用率达不到100%,因此要向上取正,得w=15001

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值