首页 > 技术文章 > 考研计算机网络之链路层(中)

hacnix 2019-11-29 16:21 原文

一、传输数据采用的两种链路

(一)点对点链路

两个相邻接节点通过一个链路相连,没有第三者。

应用:PPP协议,常用于广域网。

(二)广播式链路

所有主机共享一条链路。

应用:早期的总线型以太网、无线局域网、常用于局域网。

典型拓扑结构:总线型、星型。

二、介质访问控制

多路复用技术概述:把多个信号组合在一条物理信道上传输,使得多个计算机共享信道资源,提高信道利用率。实质就是把广播信道转化为点对点通信。

 

 

(一)静态划分信道

1.频分复用FDM

2.时分复用TDM

3.波分复用WDM

4.码分复用CDM

(二)动态划分信道

1.随机访问介质控制

(1)ALOHA协议

(2)CSMA协议

(3)CSMA/CD协议

(4)CSMA/CA协议

2.轮询访问介质控制——令牌传递协议

三、静态划分信道

(一)频分复用

多路基带信号调制到不同频率的载波上,再进行叠加形成一个复合信号(总带宽分割成若干与传输单个信号带宽相同(或略宽,保护频带)的子信道,每个子信道传输一种信号)。

充分利用传输介质带宽,系统效率较高,技术比较成熟,易于实现。

 

(二)时分复用

物理信道按时间片分成若干个时间片,轮流分配给多个信号使用(每一时间片由复用的一个信号占用)。STDM 异步时分多路复用,按需分配时隙。

总结:频分复用——并行,时分复用——并发。

1.TDM

 

 

 

2.STDM——改进的SDM

 

 

 

 

(三)波分复用

利用光的频分多路复用,在一跟光纤中传输多种不同波长(频率)的光信号。由于波长不同,各路光信号互不干扰。最后再用波长分解复用器将各路波长分解出来。

 

 

 

(四)码分复用

码分多址(CDMA)时码分复用的一种方式。

将1比特分为多个“码片”,每一个站点指定一个唯一的m位芯片序列。当发送1时直接发送芯片序列,发送0时直接发送芯片序列的反码。(通常把0写作-1)

如发送比特 1,则发送自己的 m bit 码片(芯片)序列。

如发送比特 0,则发送该码片(芯片)序列的二进制反码。

例如,S 站的 8 bit 码片序列是 00011011。(0是低电平用-1表示,1是高电平用+1表示)

发送比特 1 时,就发送序列 00011011,

发送比特 0 时,就发送序列 11100100。

站的码片序列:(–1 –1 –1  +1  +1 –1  +1  +1)

如何保证不冲突:要求各个站点芯片序列相互正交,即对应位相乘后再相加等于0就是合法的。

如何合并发送:各路数据在信道中线性叠加,即对应位相加得到的一个序列。

如何分离:合并后的数据序列和原站芯片序列规格化内积,即每一位乘对应的芯片序列,得到的序列就是原数据。

参考链接:https://www.jianshu.com/p/a5a564be67a9

四、动态划分信道

(一)ALOHA协议

(1)纯ALOHA协议

特点:不监听信道,不按照时间槽发送。想发就发,冲突后随机重发。

如何检测冲突:发生冲突后接收方收不到正确的帧,校验不通过,不发送回复信号予以确认。

冲突如何解决:定时器超时后仍未收到确认信号,随机等待一定时间重传。

 

 

(2)时隙ALOHA协议

协议思想:将时间分成若干个时间片,所有用户在时间片开始时刻同时接入网络信道。

若发生冲突,则必须等下一个时间片开始时刻再发送。简而言之,就是控制纯ALOHA协议想发就发的随意性。

 

两种ALOHA协议比较:时隙ALOHA协议吞吐量更高,纯ALOHA协议效率更低。

(二)CSMA 协议

载波侦听多路访问协议。比 ALOHA 多了载波侦听装置。(先听再说)

每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。

 

 

三种协议比较:

 

(1)1-坚持CSMA

协议思想:如果一个主机要发送消息,那么他就得先监听信道。空闲则直接传输,不必等待。

忙则一直监听,直到空闲马上发送。若发生冲突,随机等待一个时间再监听信道。重复上述过程。

优点就是避免了媒体利用率的损失

(2)非坚持CSMA

非坚持指的是信道忙之后就不再监听。信道忙的话随即等待一个时间再次监听。空闲则直接发送。

 

(3)P-坚持CSMA

 

(三)CSMA/CD协议(有线局域网络)

载波侦听多路访问/碰撞检测协议(适用于总线型网络,半双工)。

 

1.协议思想:先听后发,边听边发(不同于 CSMA 之处),冲突停发,随机重发。

 

 

2.用截断二进制指数退避算法,等待一段随机时间(检测到信道忙)。

 

3.最小帧长问题:假设某个工作站检测到冲突发生,就发送碰撞信号,使冲突更加明显,使得所有工作站都能检测到总线发生冲突。然后每个想要发送数据的工作站,检测到总线为空,在发送数据之前,先发送一个数据帧(探测帧)。探测帧的长度既要求最快速的到达目的地(尽量小),又要保证探测帧的传递时间足够(发送时间大于所有工作站监测到冲突并发送碰撞的时间)使得其他工作站能够监听到。这个探测帧的长度就是以太网规定的最小帧长。结果就是,如果没有工作站发出碰撞信号打断探测帧的传输,那么就代表总线确实为空,并且没有工作站和“我”争抢总线资源。然后就可以正式发送数据。

考虑如下极限的情况,主机发送的帧很小,而两台冲突主机相距很远。 在主机 A 发送的帧传输到 B 的前一刻,B 开始发送帧。这样,当 A 的帧到达 B 时,B 检测到冲突,于是发送冲突信号。假如在 B 的冲突信号传输到 A 之前,A 的帧已经发送完毕,那么 A 将检测不到冲突而误认为已发送成功。由于信号传播是有时延的,因此检测冲突也需要一定的时间。这也是为什么必须有个最小帧长的限制。

小结:最小帧长度在 10Mbps 中为 64B,即发送时间至少为 51.2μs(争用期即 RTT),即 512 bit 时间。发送方必须在发送结束前收到对方的冲突信号。所以发送时间长度至少为 RTT。

 

4.总结

 

(四)CSMA/CA协议(无线局域网络)

1.CSMA/CA协议工作原理

发送数据前,先检测信道是否空闲。

空闲则发出RTS(request to send),RTS包含发射端的地址、接收端的地址、下一份数据持续发送的时间长度等。

信道忙则持续等待。

接收端收到RTS后,响应CTS(clear to send)。

发送端收到RTS后开始发送数据,同时预约信道:告诉其他主机要发多久数据。接收端收到后用CRC校验数据,正确则响应ACK帧。

发送端若收到ACK则继续发送,若没有收到响应的ACK则一直重传至规定的次数位置。采用截断二进制指数退避算法来确定等待一段随机时间。

2.和CSMA/CD对比

 

(五)令牌传递协议

1.轮询协议

主节点轮流邀请从属节点发送数据。

 

 

 2.令牌传递协议

令牌(一组特殊比特组成的帧)在各个结点间按某个固定次序交换,传递通路逻辑上必须是环。有令牌才可发数据。

帧在环上传送,每个站点都进行转发,目的站点(会维持一个副本)会在尾部设置响应比特,直到再传到发送站点将此帧撤掉。

轮询介质访问控制适合负载很高的广播信道(多点同时发送数据概率很大的信道)。

 

 

最后总结:

 

 

 

推荐阅读