介质访问控制MAC--medium access control

  • 传输数据使用的两种链路
    • 1、点对点链路:
      • 两个相邻结点通过一个链路相连,没有第三者。
      • 应用:PPP协议,常用于广域网
  • 2、广播式链路:
    • 所有主机共享通信介质
    • 应用:早期的总线以太网、无线局域网、常用于局域网
    • 典型拓扑结构:总线型、星型(逻辑总线型)
  • 介质访问控制的内容就是,采取一定的措施,使得两对节点之间的通信不会发生互相干扰的情况,分为
    • 静态划分信道--信道划分介质访问控制
    • 动态分配信道(特点:信道并非在用户通信时固定分配给用户)
      • 随机访问介质介质访问控制
      • 轮询访问介质访问控制

一、信道划分

  • 信道划分介质访问控制:将使用介质(即共享信道)的每个设备与来自同一信道的其他设备的通信隔离开,把时域和频域资源合理地分配给网络上的设备,如下图
  • 多路复用技术:把多个信号组合在一条物理信道上进行传输,使得多个计算机或终端设备共享信道资源,提高信道利用率,如下图
  • 解释:把一条广播信道(即上图共享信道),逻辑上分成几条用于两个结点之间通信的互不干扰的子信道,实际就是把广播信道转变为点对点信道

频分多路复用FDM--Frequency-Division Multiplexing

  • 概念:用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用发所有用户在同样的时间占用不同的带宽(频率带宽)资源
  • 特点:充分利用传输介质带宽,系统效率较高;由于技术比较成熟,实现也比较容易

时分多路复用TDM--Time-Division Multiplexing

  • 概念:将时间划分为一段等长的时分复用帧(TDM帧,不是数据链路层的帧)每一个时分复用的用户在每一个TDM帧中帧中占用固定序号的时隙,所有用户轮流占用信道
  • 特点
    • 频分复用--并行
    • 时分复用--并发
  • 改进的时分复用--统计时分复用STDM--Statistical Time Division Multiplexing
    • 传统的时分复用各个用户占用TDM帧的相等部分,但可能每个用户发送数据的时间和数据量都不一样, 这样不怎么发送数据的用户就浪费而经常发数据的用户有时间限制,假如线路传输速率为8000b/s,那么每个用户最多2000b/s
    • 每个STDM帧中的时隙数小于连接在集中器上的用户数。个用户有了数据就随时发往集中器的输入缓存,然后集中器按顺序依次扫描输入缓存,把缓存中的输入数据放入STDM帧中,一个STDM帧满了就发出。STDM帧不是固定分配时隙,而是按需动态分配时隙。单个用户最高传输速率可达8000b/s

波分多路复用WDM--Wavelength Division Multiplexing

  • 概念:波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长(频率)不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来

码分多路复用CDM--Code Division Multiplexing

  • **码分多址(CDMA--Code Division Multiplexing Address)**是码分复用的一种方式
  • 概念:一个比特分为多个码片/芯片(chip),每一个站点被指定一个唯一的m位的芯片序列发送1时发送芯片序列(计算通常把0写成-1)。发送0时发送芯片序列反码,如下图A,B两发送站点的芯片序列为S,T
  • 传输规则
    • 1、多个站点同时发送数据的时候,要求各个站点芯片序列相互正交规格化内积为0。
    • 2、两个向量到了公共信道上,线性相加(0 0 -2 2 0 -2 0 2)
    • 3、数据分离:合并的数据和源站规格化内积:A站点--B站点--等于1说明发送比特1,等于-1说明发送比特0

二、随即访问

  • 所有用户可随机发送信息
  • 发送信息时占用全部带宽
  • 不协调导致冲突

ALOHA 协议

  • ALOHA协议(ALOHA一种打招呼的语言),分为
    • 纯ALOHA协议:不监听信道,不按时间槽()发送,随机重发。想发就发,下图中代表发送一个帧到达接收方所需的时间,即传输时延加上传播时延
    • 时隙ALOHA协议:把时间分成若干个相同的时间片(即时隙),所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送。只能在一个的开始才能发数据,控制想发就发的随意性

CSMA 协议

  • 载波监听多路访问协议CSMA(carrier sense multiple access)
    • CS:载波监听,每个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据
    • MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上
    • 当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(因为互相叠加)。当一个站检测到的信号电压摆动值超过一定门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突
    • 协议思想监听信道,监听结果有
      • 信道空闲:发送完整帧有三种方法
        • 1-坚持CSMA
          • 1、思想:如果一个主机要发送消息,那么它先监听信道。如果信道空闲则直接传输,不必等待忙则一直监听,直到空闲马上传输,如果有冲突(指的是在监听信道的多个主机发现信道空闲后都传输数据导致的冲突,从而收不到ACK),则等待一个随机长的时间再监听,重复上述过程
          • 2、坚持指的是对于监听信道之后的坚持
          • 3、优点:只要媒体空闲,站点就马上发送,避免了媒体利用率的损失
          • 4、缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免
        • 非坚持CSMA
          • 1、思想:如果一个主机要发送消息,那么它先监听信道。空闲则直接传输,不必等待。忙则等待一个随机的时间之后再进行监听。
          • 非坚持指的是对于监听信道忙之后就不继续监听
          • 优点:采用随机的重发延迟时间可以减少冲突发生的可能性
          • 缺点:可能存在大家都在延迟等待的过程中,使得媒体可能处于空闲状态,媒体使用率降低
        • p-坚持CSMA
          • 1、思想:如果一个主机要发送消息,那么它先监听信道。空闲则以p概率直接传输,不必等待;概率1-p等待到下一个时间槽再传输。忙则持续监听直到信道空闲再以p概率发送。若冲突则等待到下一个时间槽再监听并重复上述过程
          • 2、p-坚持指的是对于监听信道空闲的处理
          • 3、优点:既然像非检查算法那样减少冲突,又能像1-坚持算法那样减少媒体空间时间。
          • 4、缺点:发生冲突后还是要坚持把数据帧发送完,造成了浪费
      • 信道忙:推迟发送

CSMA/CD 协议

  • 载波监听多点接入/碰撞检测CSMA/CD(carrier sense multiple access with collision detection)
    • 1、CS:载波监听,每个站在发送数据之前以及发送数据时要检测一下总线上是否有其他计算机在发送数据
    • 2、MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上(总线型网络)
    • 3、CD:碰撞检测(冲突检测),“边发送边监听”,适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。(半双工网络)
  • 4、为什么监听信道空闲也会发生冲突?这是因为电磁波在总线上总是以有限的速率传播的。假如B站向A站发送数据要5s,那么B站发送数据后5秒内A站监听信道是空闲的,A站也发数据则发生冲突
  • 5、传播时延对载波监听的影响
  • 6、如何确定碰撞后的重传时机--截断二进制指数规避算法
  • 7、最小帧长问题
    • A站发了一个很短的帧,但发生了碰撞,不过在帧发送完后才检测到碰撞,没法停止发送,因为发完了哈哈。。
    • 解决办法:帧的传输时延至少要两倍于信号在总线中的传播时延。
    • 以太网规定最短帧长为64B,凡是小于64B的都是由于冲突而异常终止的无效帧

CSMA/CA 协议

  • 载波监听多点接入/碰撞避免CSMA/CA(carrier sense multiple access with collision avoidance)
  • 为什么要有CSMA/CA?
    • 因为无线区域网
      • ①无法做到360°全面检测碰撞
      • ②隐蔽站:当A和C都检测不到信号,认为信道空闲时,同时向终端B发送数据帧,就会导致冲突,假如A在和B发送数据,C不知道,C也要向B发送数据,于是C就是一个隐蔽站
  • CSMA/CA协议工作原理:
    • 1、发送数据前,先检测信道是否空闲
    • 2(可不要)、空闲则发出RTS(request yo send),RTS包括发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息,信道忙则等待
    • 3(可不要)、接收端收到RTS后,将响应CTS(clear to send)
    • 4、发送端收到CTS后,开始发送数据,同时预约信道(发送方告知其他站点自己要传多久数据)
    • 5、接收方收到数据帧后,将用CRC来检验数据是否正确,正确则响应ACK帧
    • 6、发送方收到ACK就可以进行下一个数据帧的发送,若没有则一直重传至规定重发次数为止(采用二进制指数退避算法来确定随机的推迟时间)
  • CSMA/CD与CSMA/CA
    • 相同点:CSMA/CD与CSMA/CA机制都从属于CSMA的思路,其核心是先听再说。换言之,使用两者在接入信道之前都必须要进行监听。当发现信道空闲后,才能接入
    • 不同点
      • **1、传输介质不同:**CSMA/CD用于总线式以太网(有线),而CSMA/CA用于无线局域网(无线)
      • **2、载波检测方式不同:**因传输介质不同,CSMA/CD与CSMA/CA的检测方式也不同。CSMA/CD通过电缆中电压的变化来检测,当数据发生碰撞时,电缆中的电压就会发生变化;而CSMA/CA采用能量检测(ED)、载波检测和能量载波混合检测三种检测信道的方式
      • 3、CSMA/CD检测冲突,CSMA/CS避免冲突,二者出现冲突后会进行有上限的重传

三、轮询访问

令牌传递协议--Token Passing protocol

  • 1、令牌:一个特殊格式的MAC(medium access control)控制帧,不含任何信息。控制信道的使用,确保同一时刻只有一个结点独占信道
  • 2、令牌环网无碰撞,因为一个时刻只有一个主机能持有令牌
  • 3、每个结点都可以在一定时间内(令牌持有时间)获得发送数据的权力,并不是无限制地持有令牌
  • 4、问题:令牌有开销,有等待延迟,有单点故障
  • 5、应用于令牌环网(物理星型拓扑、逻辑环形拓扑)
  • 6、采用令牌传送方式的网络常用于负载较重、通信量较大的网络中

本文章使用limfx的vscode插件快速发布