Skip to content

(三)介质访问控制

1. 信道划分

1.1. 信道复用

img_VD0ubM7Pjj

  • 频分复用(FDM):所用用户在同一时间占据信道的不同频带

  • 时分复用(TDM)

    img_ZPkHYGGUiD

    • 将时间分为等长的一些时分复用帧(称为 TDM 帧),TDM 帧又称等时信号

    • 每个用户占据一个 TDM 帧中固定的一部分,且相同用户占据的部分在 TDM 中位置不变

    • 所有用户使用相同的频带

    • 可能造成线路资源的浪费(方法:统计时分复用);

  • 波分复用(WDM)(了解):对光的波长的复用;

  • 码分复用(CDM):又称码分多址(CDMA),各用户采用经过挑选的特殊码型,彼此之间无干扰;

    • 在这种形式下,每一个 bit 又划分为 m 个 bit 来表示,更小的 bit 被称为码片

    • 每个基站被指派发送一个唯一特定的 m bit 码片序列,发送 1 时发送原码片序列,发送 0 时发送其反码;

      • 例如:基站 S 被指派一个 8 bit 码片序列 0001 1011,则其发送 1 时会发送 0001 1011,发送 0 时发送 1110 0100;

      • 实际的码片序列为归零编码,用 +1 表示 1,-1 表示 0;

    • 要求:各个基站分配的码片序列互不相同,且相互正交

      • 正交:码片序列构成的向量之间归一化内积为 0(归一化内积 = 内积 / 向量元素个数);

      • 性质:与自身的归一化内积为 1,与自身反码的归一化内积为 -1;

    • 实用系统中,常采取伪随机码序列;

    • S=S1+S2++Sn,为同一时刻收到来自 n 个基站的码片序列线性叠加,则:

      • 判断基站 i 发送的 bit 方法:计算 n=(SSi)/m,即叠加后序列和基站 i 码片序列的归一化内积;

        • n=1 说明 i 基站发送了 1;

        • n=1 则发送了 0;

        • n=0 则没有发送内容;

2. 随机访问介质控制

2.1. ALOHA 协议(了解)

  • 用户有帧即可发送,采用冲突监听和随机重发机制,为竞争系统(contention system)

  • 用户共享同一信道(总线),若多个用户同时发送导致帧冲突被破坏,则随机重发;

  • 效率不高;

2.2. 多路载波监听(CSMA)

  • 站点要发送数据前,先监听总线,若总线空闲,则发送;否则等待一段时间后再检查

2.3. 以太网广播

  • 广播方式:在数据帧首部写入目标地址。总线上每一台设备都能收到发送的数据,地址匹配的设备会接收,其他设备直接丢弃;

  • 以太网(局域网)的简化服务:

    • 采用无连接的工作方式,通信双方无需事先建立连接;

    • 发送数据帧不编号,不要求接收方发回确认

    • 接收方收到错误帧时直接丢弃,高层要求重传某帧时,以太网当作新的帧来发送;

    • 非可靠的连接服务

    • 原因:局域网通信质量通常较好,数据差错概率低;

2.4. 多路载波监听 + 碰撞检测(CSMA/CD)

  • CD:碰撞检测,计算机发送数据时,实时监测信道上电压大小;

    • 原因:信息在信道上传输需要时间,在当前时间点 t 测得信道空闲并不代表信道上没有信息在传输;

    • 多个基站同时发送数据时,总线信道上电压波动值将会增大;

    • 当基站检测到信道电压波动值超过某一阈值,则认为信道上至少有 2 个基站在同时发送,即发生碰撞(冲突)

  • 发送方检测到碰撞时,立即停止发送,等待一段时间后再继续;

  • 碰撞的结果是发生碰撞的所有帧失效

  • 传播时延对载波监测的影响

    img_9xRfL7FkdD

    • τ 为信息从 A 传输到 B 所需延时,A 在 t=0 开始发送信息,B 在 t=τδ 开始发送信息;

    • 则:B 在 t=τ 监测到冲突,从而停止继续发送,A 在 t=2τδ 检测到冲突;

    • 问题:若 A 在 t=0 时刻发送数据,B 在其后任一时刻开始发送,则 A 和 B 都已经检测到冲突的时间点范围是?

      • 最小值:A 和 B 同时在 t=0 时发送,则都在 t=τ 时检测到冲突;

      • 最大值:B 在趋近于 t=τ 时发送,则 t=2τ 时 A 和 B 都监测到冲突(δ0);

      • 争用期:若 A 发送数据后 2τ 时间内都没有检测到冲突,则发送成功。称 2τ 为争用期;

  • 特点

    • 不能进行全双工通信,只能半双工交替通信;

    • 每个基站发送数据后的一小段时间内,可能发生碰撞;

    • 实际平均通信速率远小于理论最高数据率;

    • 设以太网取 51.2us 为争用期长度,速率为 10Mbps;

      • 在争用期内可发送 512bit,即 64 字节,即若前 64 字节未发生冲突,则此次发送不会有冲突

      • 考试常用:100Mbps,5.12us,512bit,64B

  • 最短有效帧长(以太网)

    • 以太网规定 64 字节为最短有效的帧长度;

    • 长度小于 64 字节的帧都有可能是因为冲突而中断发送的帧

  • 一般网络协议计算方法:设距离 L,带宽 C,传播速率 D

    • 争用期:2τ=2×L/D

    • 最短有效帧长:2×C×L/D

    • 传播速率 D 一般取 2×106 km/s;

  • 二进制指数退避算法

    • 退避算法:计算发生碰撞的基站在再次发送数据前需要等待的时间

    • 等待时间:t=r×t0

      • 基本退避时间 t0:一般取争用期 t0=2τ

      • 重传指数 kk=min(,10)

      • 等待倍数 r:从集合 {0,1,,2k1} 中随机取出一个数记为 r

    • 重传 16 次仍未成功,则丢弃该帧并向上层报告

  • 总结:CSMA/CD 协议的要点

    • (1)准备发送:监测信道是否空闲;

    • 0,则等待并继续检测,直到信道空闲,并保证 96 bit 时间内信道都是空闲

      • 96bit 时间为帧间最小时间间隔;
    • (3)碰撞检测:发送数据期间,实时监测信道:

      • 若争用期内未检测到碰撞,则发送成功,回到(1);

      • 若争用期内检测到碰撞,则发送失败,此时立即停止发送并按规定追加一个人为干扰信号。按退避算法计算等待时间,进行重传。

2.5. CSMA/CA 协议

  • 主要用于无线局域网。无线局域网不能使用 CSMA/CD 协议的原因:

    • 无线局域网通信中,接收到的信号强度较弱,实现碰撞检测成本较大

    • 隐蔽站问题(Hidden Station Problem)

      img_IxPKCiCKQw

      • 每个基站的检测范围有限大,不能覆盖全链路

      • 若某一时刻,A 和 C 都监测到信道空闲,向 B 发送数据,则会发生碰撞;

    • 暴露站问题(Exposed Station Problem)

      img_YOud4jxGIW

      • 由于 B 的作用范围覆盖不到 D,因此 B 向 A 发送数据时,C 和 D 可以同时进行通信

      • 但由于 CSMA/CD 协议,导致 B 向 A 发送数据时,C 监测信道忙,不能向 D 发送数据,降低了通信效率

  • CSMA/CA 协议:在 CSMA 协议基础上,增加碰撞避免功能;

  • 实例分析:官方标准 802.11 协议,使用 CSMA/CA + 停止等待协议

    • 802.11 协议的 MAC 层

      img_H0v5gIRlnR

      • DCF 子层:使用 CSMA 协议的分布式接入算法,各基站通过争用来获取发送权

      • PCF 子层:集中控制式接入算法,将发送权轮流交予各个基站

    • CSMA/CA 协议

      img_u75orGflmlimg_B88noTlpmB

      • 引入帧间间隔 IFS 机制:高优先级的帧 IFS 较短,低优先级的较长

      • 通过区分 IFS,让高优先级的帧抢占信道,低优先级帧保持等待,减少碰撞机会;

      • 原理

        • 要发送数据的基站先监测信道

        • 检测到空闲时,根据要发送数据帧的类型,等待一个 SIFS 或 DIFS 时间再发送;

        • 接收基站收到数据帧后,等待一个 SIFS 时间,发回 ACK 确认帧;

        • 发送基站在规定时间内没收到 ACK 帧,则进行重传,直到收到 ACK 或超过重传次数限制;

        • 信道由忙变为空闲时,任一基站要发送数据帧,则不仅需要等待一个 DIFS,还需执行退避算法,等待一个退避时间,才能接入信道;

          • 目的:减少碰撞概率;

          • 改进的二进制指数退避算法:第 i 次退避时,从 {0,1,,2i+21} 中随机选择一个倍数 r

          • 退避计时器

            img_on6sifrxjQ

            • 基站在退避状态时,每经过一个基本退避时间 t0 监测一次信道;

            • 若信道为忙,则冻结退避倒计时

            • 若信道空闲,则经过一个 DIFS,恢复退避倒计时,若此时倒计时为 0,发送数据帧

    • 信道预约机制

      img_yZP7uB4F6A

      • NAV:网络分配向量,表示当前数据还需多长时间传输完成;

      • A 经过 DIFS 时间,发送 RTS 进行信道预约;

      • B 收到 RTS 后,经过 SIFS 时间,发回 CTS 帧;

      • A 收到 CTS 帧后,经过 SIFS 时间,开始传输数据帧;

      • NOTE:整个传输过程中只有最开始需要等待 DIFS 时间,其他都是等待 SIFS 短时间;

    • 用户可以自行选择:(1)不使用预约机制;(2)仅当数据帧长度超过一定值时使用预约机制;(3)总是使用预约机制;

    • 802.11 协议局域网的 MAC 帧类型(了解):控制帧,数据帧,管理帧;

      img_jBZpAr67qD

      • 控制帧 RTS,CTS,ACK

        img_5OJAnrlGSu

      • 数据帧:三大部分

        • MAC 首部:30 字节;

        • 帧首部:较为复杂的部分,帧的复杂度集中在帧首部;

        • 帧主体:存放数据的部分,不超过 2312 字节(通常不用),802.11 的帧长度通常都小于 1500 字节

        • 帧尾部:检验序列 FCS,4 字节;

      • 数据帧的地址字段:共 4 个(只讨论前 3 个)

        img_xFMYWTgFHy

        • AP(Access Point):为终端提供无线接入服务的无线接入点,例如手机热点

        • 注意去往 AP 和 来自 AP 标记为不同时,地址 1 到地址 3 的含义也不同

        • 实例分析

          img_9aPQ87Qf7h

          • A 向 B 发送数据帧,数据链路为:AAP1B,A 为源,B 为目的;

          • 数据报在路由器 R(接口 2) 和终端 C 之间传输

            img_1yuRleGQKI

3. 轮询介质访问控制

3.1. 令牌传递协议

  • 控制令牌:一种特殊的数据报(分组),在所有站点之间来回传输,有空闲和忙两个状态;

  • 发送端向令牌中写入源地址,目标地址和数据,使令牌变为忙状态;

  • 相匹配的接收端从令牌中取出数据,将令牌置空,令牌恢复为空闲;