跟着王道考研学计算机网络笔记(五):数据链路层的访问控制
传输数据使用的两种链路:
- 点对点链路:两个相邻结点通过一个链路相连,没有第三者。常用于广域网
- 广播式链路:所有共享通信介质。常用于局域网。(总线型、星型)
介质访问控制
采取一定的措施,使得两对结点之间的通不会发生互相干扰的情况。
静态划分信道
信道划分介质访问控制:将使用介质的每个设备与来自同一信道上的其他设备通信隔离开来,把时域和频域资源合理地分配给网络上地设备。
- 频分多路复用FDM
用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源。
充分利用传输介质带宽,系统效率较高;由于技术比较成熟,实现也比较容易。
- 时分多路复用TDM
TDM帧是在物理层传送的比特流所划分的帧,标志一个周期。
将时间划分为一- 段段等长的时分复用帧(TDM帧)。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。
- 统计时分复用STDM
- 波分多路复用WDM
波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长( 频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。
- 码分多路复用CDM
1比特氛围多个码片/芯片(chip)每一个站点被指定一个唯一的m位芯片序列。
发送1时站点发送芯片序列,发送0时发送芯片序列反码(通常把0写成-1)
如何不打架:多个站点同时发送数据,要求各个站点芯片序列相互正交
如何合并:各路数据在信道中被线性相加
如何分离:合并的数据和源站规格化内积
可以参考上一章节最后的解释:https://blog.csdn.net/weixin_51276056/article/details/124076086
动态分配信道
动态媒体接入控制/多点接入
特点:信道并非在用户通信的时候固定分配给用户。
轮询访问介质访问控制
- 轮询协议
主结点轮流“邀请”从属结点发生数据。
问题:1.轮询开销 2. 等待延迟 3. 单点故障
- 令牌传递协议
令牌:一个特殊格式的MAC控制帧,不包含任何信息。控制信道的作用,确保同一时刻只有一个结点独占信道。(令牌环网无碰撞)
每个结点都可以在一定的时间内(令牌持有时间)获得发送数据的权利,并不是无限制地持有令牌。
问题:
1.令牌开销 2.等待延迟 3.单点故障
应用于令牌环网(物理星型拓扑,逻辑环形拓扑)。
采用令牌传送方式的网络常用于负载较重、通信量较大的网络中。
随机访问介质访问控制
- ALOHA协议
纯ALOHA协议思想:不监听信道,不按时间槽发送,随机重发。想发就发
冲突如何检测?
如果发生冲突,接收方在就会检测出差错,然后不予确认,发送方在一定时间内收不到就判断发生冲突。
冲突如何解决?
超时后等-随机时间再重传。
**时隙ALOHA协议的思想:**把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。
- CSMA协议
CS:载波侦听/监听,每一一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。当几个站同时在总线上发送数据时,总线 上的信号电压摆动值将会增大( 互相叠加)。当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突。
MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。
协议思想:发送帧之前,监听信道。
1-坚持CSMA:指的时对于监听信道忙之后的坚持。
思想:如果一个主机要发送消息,那么它先监听信道。
空闲则直接传输,不必等待。忙则一直监听,直到空闲马上传输。如果有冲突(一段时间内未收到肯定回复),则等待一个随机长的时间再监听,重复上述过程。
优点:只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。
缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免。
非坚持CSMA:指的是对于监听信道忙之后就不继续监听。
思想:如果一个主机要发送消息,那么它先监听信道。空闲则直接运输,不必等待。忙则等待1一个随机的时间之后再进行监听。
P-坚持CSMA:指的是对于监听信道空闲的处理
思想:如果一个主机要发送消息,那么它先监听信道。空闲则以p概率直接传输,不必等待;概率1-p等待到下一个时间槽再传输。
优点:既能像非坚持算法那样减少冲突,又能像1-坚持算法那样减少媒体空闲时间的这种方案。
缺点:发生冲突后还是坚持把数据帧发生完,造成浪费。
- CSMA/CD协议(先听再说,边听边说)
载波监听多点接入/碰撞检测CASMA/CD
CS:载波侦听/监听,每一个站在发送数据之前以及发送数据时都要检测一下总线上是否有其他计算机在发送数据。
MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。总线型网络
CD:碰撞检测(冲突检测),“边发送边监听” ,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。 半双工网络
如何确定碰撞后地重传时机?(截断那二进制指数规避算法)
1.确定基本退避(推迟)时间为争用期2τ。
2.定义参数k,它等于重传次数,但k不超过10,即k=min[重传次数, 10]。 当重传次数不超过10时,k等于重传次数;当重传次数大于10时,k就不再增大而一直等于10。
3.从离散的整数集合[0, 1, 2k-1]中随机取出一一个数r,重传所需要退避的时间就是r倍的基本退避时间,即2rτ。
4.当重传达16次仍不能成功时,说明网络太拥挤,认为此帧永远无法正确发出,抛弃此帧并向高层报告出错。
最小帧长:帧的传输时延至少要两倍于信号在总线中的传播时延。
- CSMA/CA协议
载波监听多点接入/碰撞避免CASMA/CA
为什么要有CSMA/CA?–>无线局域网
工作原理:
- 发送数据之前,先检测信道是否空闲
- 空闲则发出RTS (request to send),RTS包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息;信道忙则等待。
- 接收端收到RTS后,将响应CTS (clear to send)。
- 发送端收到CTS后,开始发送数据帧(同时预约信道:发送方告知其他站点自己要传多久数据)。
- 接收端收到数据帧后,将用CRC来检验数据是否正确,正确则响应ACK帧。
- 发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)。
CSMA/CD协议和CSMA/CA协议对比
同时预约信道:发送方告知其他站点自己要传多久数据)。
5. 接收端收到数据帧后,将用CRC来检验数据是否正确,正确则响应ACK帧。
6. 发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)。
CSMA/CD协议和CSMA/CA协议对比