《802.11-2024》第06讲 · 介质接入:MAC 架构与 DCF(CSMA/CA)

本讲对应 IEEE Std 802.11-2024 的 10.1(Introduction)+ 10.2(MAC architecture)+ 10.3(DCF)+ 10.4/10.5(分片/去分片)+ 10.6(多速率支持)+ 10.7(MSDU 传输限制)+ 10.9(Control Wrapper 操作) 。

第 03--05 讲回答了"帧长什么样"(Clause 9 帧格式);从本讲开始进入"帧怎么发出去"------Clause 10(MAC 子层功能描述) 。Clause 10 是 MAC 接入机制的总纲:先看MAC 架构 (DCF/HCF/MCF/TUA 四个"协调功能"怎么分工),再重点拆 DCF(Distributed Coordination Function,分布式协调功能) ------它是一切接入的地基 :CSMA/CA 载波侦听、帧间间隔(IFS)、NAV 虚拟载波侦听、RTS/CTS、Ack、随机退避、接入过程与重传。最后收掉本讲配套的分片/去分片、多速率支持、MSDU 传输限制。

阅读目标:读完本讲,你能画出 MAC 架构图并说出 DCF/HCF/MCF/TUA 各自管什么;能讲清"物理载波侦听 + 虚拟载波侦听(NAV)"的双通道机制;能背出 SIFS/PIFS/DIFS/AIFS/EIFS 的用途与推导公式;能画出 DCF 下"空闲 DIFS → 退避 → 发送 → 等 Ack → 失败倍增 CW"的完整接入流程;知道 RTS/CTS 解决什么问题、dot11RTSThreshold 怎么起作用;能解释 CW 指数退避与短/长重试计数;知道分片为什么能提高可靠性、多速率选择的基本规则。


一、Clause 10 的地图(10.1 Introduction)------"接入机制的总纲"

Clause 9 定义"帧格式"(长什么样),Clause 10 定义"帧交换机制"(怎么发、怎么收、怎么确认、怎么重传)。Clause 10 的完整结构(2024 版):

小节 内容 规模 归属
10.1 Introduction 短 ← 本讲
10.2 MAC 架构(DCF/HCF/MCF/TUA 总览) 中 ← 本讲
10.3 DCF(CSMA/CA 全过程) 约 190 页,本章最大块 ← 本讲
10.4--10.5 MSDU/A-MSDU/MMPDU 分片与去分片 中 ← 本讲
10.6 多速率支持(Rate selection) 中 ← 本讲
10.7 MSDU 传输限制 短 ← 本讲
10.8 HT Control field 操作 短 第 07 讲
10.9 Control Wrapper 操作 短 ← 本讲
10.10--10.12 MSDU/A-MSDU/A-MPDU 处理 中 第 08 讲
10.20--10.22 S1G 动态 AID、Group ID、监管域 中 第 07 讲
10.23 HCF(EDCA + HCCA) 约 260 页 第 07 讲
10.24 MCF(Mesh 协调) 中 第 16 讲
10.25--10.29 块确认、No Ack、保护机制、帧处理、RD 协议 大 第 08 讲
10.30+ 各 PHY 专属 MAC 机制(HT/VHT/HE/S1G/DMG...) 大 第 09、17--21 讲

一句话:Clause 9 是"帧的语法",Clause 10 是"信道的语法"------本讲先立架构、再立 DCF 这个"地基"。


二、MAC 架构(10.2)------四个"协调功能"的分工

2.1 架构总览(Figure 10-1)

MAC 通过几个**协调功能(Coordination Function)**来管理介质接入。2024 版一共四个协调功能:

协调功能 全称 服务对象 机制 说明
DCF Distributed Coordination Function 所有 STA 必须实现 CSMA/CA 分布式竞争接入 一切接入的基础,其他功能都建立在它之上
HCF Hybrid Coordination Function QoS STA(非 mesh) EDCA (基于竞争)+ HCCA(受控/轮询) QoS 设施,见第 07 讲
MCF Mesh Coordination Function mesh STA EDCA + MCCA(受控) 网状网专用,见第 16 讲
TUA Triggered Uplink Access 非 AP HE STA AP 触发多用户上行 11ax 的 OFDMA 上行,见第 19 讲
复制代码
┌────────────────────────────────────────────────────────┐
│                MAC 层(介质访问控制)                      │
│                                                        │
│   ┌───────────┐   ┌───────────┐   ┌────────────────┐   │
│   │    HCF    │   │    MCF    │   │      TUA       │   │
│   │ EDCA+HCCA │   │ EDCA+MCCA │   │ (HE 触发上行)   │   │
│   └─────┬─────┘   └─────┬─────┘   └───────┬────────┘   │
│         └───────────────┼─────────────────┘            │
│                   ┌─────▼─────┐                        │
│                   │    DCF    │   ← 所有接入的地基       │
│                   └─────┬─────┘                        │
└─────────────────────────┼──────────────────────────────┘
                          ▼
                  PHY(DSSS/OFDM/HT/VHT/HE...)

(Figure 10-1------非 DMG/CMMG/S1G STA 的 MAC 架构)

  • DCF 在最底层:HCF、MCF、TUA 都"借用" DCF 的竞争机制;MAC 也允许直接使用 DCF 服务;
  • 各功能的存在条件 :HCF 在 QoS STA 中、MCF 在 mesh STA 中、TUA 在非 AP HE STA 中,其余 STA 只有 DCF。

2.2 各 STA 类型的架构差异

STA 类型 架构特点
S1G(亚 1 GHz) Figure 10-2:EDCA + RAW(受限接入窗口) + TWT(目标唤醒时间),都架在 DCF 上
DMG/CMMG(60 GHz/毫米波) Figure 10-3:按调度期 分时隙------A-BFT(波束训练)、ATI(公告)、CBAP(基于竞争的接入期,用 DCF)、SP(服务期,受控)
普通(2.4/5/6 GHz) Figure 10-1:HCF + MCF + TUA 叠加在 DCF 上

2.3 DCF 概述(10.2.2)------"所有接入的原型"

DCF 是 CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance,载波侦听多址/冲突避免):

  1. 要发帧先侦听介质,忙则等待(推迟);
  2. 介质空闲后,还要保持空闲一段最小间隔才允许发送;
  3. 忙完之后或成功发送后,进入随机退避,避免多个等待的 STA 同时抢发;
  4. 可选RTS/CTS 短帧交换,进一步避免冲突。

关键背景:无线是"半双工 + 传播不确定"的介质 ------发送方无法像有线 CSMA/CD 那样"边发边听、检测到冲突就停止"。所以 802.11 用 CSMA/CA :与其"检测冲突",不如尽量避免冲突(随机退避 + 预约信道)。


三、DCF 的总体设计(10.3.1)------"三个支柱"

10.3 DCF 是本章最大的块,其设计可以归纳为三个支柱:

支柱 对应小节 内容
载波侦听(CS) 10.3.2.1 物理(CCA)+ 虚拟(NAV)双通道判断介质忙/闲
帧间间隔(IFS) 10.3.2.3 用不同长短的间隙给不同类型的帧/功能分级
随机退避(Backoff) 10.3.3 + 10.3.4.3 竞争冲突的"仲裁器":谁退避完谁先发

再加上确认与重传(10.3.2.11、10.3.4.4)保证可靠交付。下面逐个拆。

3.1 为什么"介质刚忙完"是冲突最高发时刻?

CSMA/CA 要解决的核心问题:多个 STA 一直在等信道,一旦信道空闲,它们可能同时抢发 ------此时冲突概率最高。所以 802.11 规定:忙完之后,每个 STA 都要等一个随机退避时间,把"同时抢发"变成"随机先后",从根上降低冲突概率。

记忆:退避 = 给"同时苏醒的一群 STA" 随机排队的机制。


四、载波侦听机制(10.3.2.1)------"物理 + 虚拟"双通道

4.1 两种侦听

侦听 由谁提供 机制
物理载波侦听 PHY CCA(Clear Channel Assessment,空闲信道评估):检测射频能量/前导,把忙/闲结果上报 MAC
虚拟载波侦听 MAC NAV(Network Allocation Vector,网络分配向量)(所有 MAC)+ RID(S1G 专用)

判定规则:只要物理或虚拟任一指示"忙",介质就视为忙;两者都空闲才视为闲。

  • NAV 是一个倒计时的计数器,"预测"未来介质会被占用多久;
  • 它从帧里的 Duration 字段获得数值(RTS/CTS、MU-RTS Trigger 帧、各数据/管理帧的 Duration 都会广播"我要占用多久");
  • 介质忙/闲:NAV 不为 0 → 虚拟忙;NAV 为 0 → 虚拟闲。

一句话:物理侦听"现在"忙不忙,NAV 侦听"将来"忙多久------听到别人的预约信息,即使自己听不到对方的数据帧,也知道别抢(这就是解决隐藏节点的关键,见第七节)。

  • NAV 只增不减:收到 Duration 比当前 NAV 大才更新(取 max);
  • 例外 :收的帧 RA 是自己的 MAC 地址时不更新 NAV(那是发给自己的,不影响自己接入);
  • 帧在 RTS/CTS 交换后,若在 NAVTimeout 内没等到后续信号,可以重置 NAV(预约失效);
  • HE STA 用双 NAV(分别对应 BSS 内/外的帧,见 26.2.4);DMG 支持多 NAV(S1G 还有 RID 计数器)。

五、帧间间隔 IFS(10.3.2.3)------"信道的时间分级"

5.1 什么是 IFS

IFS(Interframe Space,帧间间隔) = 两个相邻 PPDU 之间必须保持的空闲时间。间隔越短,优先级越高------因为想接入的 STA 要等够相应的间隔才敢发,等得短的先抢到。

5.2 十种 IFS(2024 版)

IFS 全称 用途 状态
SIFS Short IFS 帧交换序列内部(数据→Ack、RTS→CTS 等),最短、最高优先级 现行
PIFS PCF IFS 优先级接入(Beacon、信道切换通告等),= SIFS + 1 slot 现行
DIFS DCF IFS DCF 下传数据/管理帧,= SIFS + 2 slot 现行
AIFSAC Arbitration IFS EDCA 每个 AC 的仲裁间隔,= SIFS + AIFSNAC × slot 第 07 讲
EIFS Extended IFS 收到错误帧后要等的更长间隔 现行
RIFS Reduced IFS 11n 时代减少开销,已废弃(obsolete) 废弃
SBIFS / BRPIFS / MBIFS / LBIFS 各种波束成形 IFS DMG/EDMG(60 GHz)波束成形专用 第 21 讲

5.3 关键公式(10.3.7)

复制代码
aSIFSTime = aRxPHYDelay + aMACProcessingDelay + aRxTxTurnaroundTime
aSlotTime = aCCATime + aMACProcessingDelay + aRxTxTurnaroundTime + aAirPropagationTime
aRxTxTurnaroundTime = aTxPHYDelay + aRxTxSwitchTime + aTxRampOnTime
PIFS = aSIFSTime + aSlotTime
DIFS = aSIFSTime + 2 × aSlotTime
EIFS = aSIFSTime + AckTxTime + DIFS
  • aSIFSTime / aSlotTime 由各 PHY 特性表(PLME characteristics)给出;
  • aSlotTime 包含传播时间(aAirPropagationTime),这就是"时隙"里要考虑最远 STA 传播延迟的原因;
  • EIFS 比 DIFS 多一个 Ack 传输时间:收到坏帧时,给"真正的接收方"留出回复 Ack 的时间,避免自己抢先打断对方的确认。

5.4 常见 PHY 的典型值(以各 PHY 条款为准)

参数 DSSS/HR-DSSS(2.4 GHz 传统) OFDM/ERP-OFDM/HT/VHT/HE
aSIFSTime 10 µs 16 µs
aSlotTime 20 µs(短时隙 9 µs) 9 µs
PIFS 30 µs 25 µs
DIFS 50 µs 34 µs
aCWmin 31 15
aCWmax 1023 1023

5.5 SIFS 为什么"无敌"

SIFS 用于帧交换序列内部 (如收 Data 后 SIFS 回 Ack、收 RTS 后 SIFS 回 CTS)。因为 SIFS 比 DIFS/PIFS 短,正在进行的帧交换序列总是能优先完成,不会被外部的竞争接入打断------这就是"一个序列内不能插队"的保证。


六、NAV 的设置与重置(10.3.2.4)------"虚拟预约"

6.1 Duration 字段怎么定

帧类型 Duration 含义
RTS 后续 Data + CTS + Ack + 3×SIFS 的总时间(预约整个交换)
CTS RTS 的 Duration 减去 CTS 与 SIFS 的传输时间(NAV 接力)
单播数据帧 到紧随其后的 Ack 结束(或分片序列到下一个 Ack)
CF-End 0(清除 NAV)
复制代码
源 STA ──RTS──▶ 目的 STA
     ◀──CTS─────
     ──Data────▶
     ◀──Ack─────
邻居 A(听到 RTS)      : NAV 从 RTS 的 Duration 设置(覆盖 Data+Ack)
邻居 B(只听到 CTS)     : NAV 从 CTS 的 Duration 设置(比 A 短,但已够)
邻居 C(听到 Data)      : NAV 从 Data 的 Duration 设置
  • 关键:RTS 让"源周围的邻居"预约,CTS 让"目的周围的邻居"预约,两边的隐藏节点都被覆盖;
  • 收 RTS 但没有 收到 CTS 时,源 STA 在 NAVTimeout 后可以重置 NAV。

七、RTS/CTS 机制(10.3.2.6/9 + 10.3.5)------"信道预约 + 快速冲突推断"

7.1 为什么用 RTS/CTS

  1. 解决隐藏节点:A 和 C 都连 B 但互相听不到;A 发 RTS→B,B 回 CTS,让 C 也听到预约而让路;
  2. 快速冲突推断:RTS 很短,若 CTS 没回来,损失小、重试快(比直接发长数据失败再重试划算);
  3. 跨 BSS 保护:预约信息能跨越重叠 BSS 边界;
  4. 带宽探测(VHT/HE):RTS/CTS 还能帮助判断可用带宽(动态带宽)。

7.2 什么时候用------dot11RTSThreshold

  • dot11RTSThreshold :帧长度阈值。PSDU 长度大于该阈值时,单播数据/管理帧前先用 RTS/CTS(10.3.5);
  • 阈值设为 0 则每帧都用;设为很大(如 1023)则基本不用;
  • 2024 版还有 dot11TXOPDurationRTSThreshold(非 AP HE STA 用 RTS/CTS 发起 TXOP 的场景,26.2.1);
  • RTS/CTS 带来额外开销,所以短帧不值得用------"不是每帧都 RTS"。

7.3 CTS 的响应条件(10.3.2.9)

收到指向自己的 RTS 后,NAV 空闲才回 CTS(NAV 忙说明介质已被别人预约,不回);回 CTS 前先等 SIFS。

  • CTSTimeout(RTS 发出后等 CTS 的超时)= aSIFSTime + aSlotTime + aRxPHYStartDelay;
  • 超时未收到 CTS → 判定 RTS 失败 → 进退避、SRC+1;
  • CTS 的 RA = 来自 RTS 的 TA;CTS 的 Duration = RTS 的 Duration − CTS 时间 − SIFS。

7.4 组播不能用 RTS/CTS

组播帧(To DS=0)不用 RTS/CTS、也不收 Ack(10.3.6)------因为接收方不止一个,无法统一确认;可靠性因此低于单播(除 GATS/GCR 等特殊服务)。


八、确认过程(10.3.2.11)------"立即正向确认"

8.1 哪些帧要确认

以下帧收到后要在 SIFS 后回 Ack/BlockAck(不考虑介质忙闲):

  • 单播管理帧(Action No Ack 除外);
  • 单播非 QoS 数据帧;
  • 单播 QoS 数据帧(Normal Ack / Implicit BAR 策略);
  • BlockAckReq 、非立即响应的 BlockAck;
  • PS-Poll(可以用 Data 帧代替 Ack 作为确认,省电场景)。

组播帧不回 Ack ;Action No Ack 不回 Ack。

8.2 AckTimeout

  • 发帧方发出需确认的帧后,等 AckTimeout = aSIFSTime + aSlotTime + aRxPHYStartDelay;
  • 超时没等到任何 PHY 起始指示 → 判定失败 → 退避、计数+1;
  • 等到的是错误帧/其他帧 → 同样按失败处理(收的帧可另行处理);
  • 收到指向自己的 Ack → 成功。

记忆:"成功 = 收到对的确认;其余都是失败" 。注意:数据帧可能已正确到达,只是 Ack 丢了------所以重传可能产生重复帧,靠接收方的去重机制(Sequence Control)过滤。


九、随机退避过程(10.3.3 + 10.3.4.3)------"冲突仲裁器"

9.1 退避计数

复制代码
Backoff Count = Random()  ∈  [0, CW]
  • 从 0, CW 均匀随机取一个整数作为退避计数;
  • 每个 aSlotTime 递减 1 :介质空闲一个时隙就减 1;介质忙则冻结(不减,等再次空闲 DIFS + 1 slot 后继续);
  • 退避计数减到 0 就发送。

9.2 CW(竞争窗口)的指数变化

  • 初值 CW = aCWmin;
  • 每次发送失败 :CW 翻倍(CW = 2×CW + 1,即 2^k − 1 序列)直到 aCWmax;
  • 成功发送后:CW 复位回 aCWmin;
  • 这一"失败倍增、成功复位"就是指数退避(Exponential Backoff),让负载重时大家把退避拉开,保持协议稳定(Figure 10-21)。

记忆:CW 先小后大------轻轻失败轻轻让,屡屡失败狠狠让。高负载下 CW 趋近 aCWmax,冲突概率被压住。

9.3 重试计数(短/长)

计数 对应场景 复位时机
SRC / SSRC(短重试) 长度 ≤ dot11RTSThreshold 的帧、RTS 帧失败 收到 CTS/Ack/BlockAck 成功时
LRC / SLRC(长重试) 长度 > dot11RTSThreshold 的帧失败 收到 Ack 成功时
组播帧 发出即复位 ---

9.4 什么时候必须退避(10.3.4.3)

  1. 想发帧但介质忙;
  2. 推断发送失败(没等到 Ack/CTS);
  3. 每次成功传输(More Fragments=0)之后也要退避------即使没有更多帧要发。

这一条保证:相邻的两次传输之间至少隔一个 DIFS,并且让所有 STA 都"排队"轮转,谁都不能霸占信道。


十、DCF 接入过程(10.3.4)------"完整流程"

10.1 基本接入(Basic Access,10.3.4.2)

复制代码
有帧要发
  │
  ├─ 介质空闲 且 保持空闲 DIFS(或 EIFS)且退避计数=0 ──▶ 立即发送
  │
  └─ 否则 ──▶ 执行随机退避(等 DIFS/EIFS 后逐 slot 递减)
                 │
                 └─ 退避到 0 ──▶ 发送

(Figure 10-22 / 10-23)

10.2 分片突发与"控制信道"(10.3.4.5)

  • 竞争到信道后,发送方可以连续发送一个 MSDU 的多个分片 ,分片之间用 SIFS 间隔(不重新竞争);
  • 每片单独确认;收到 Ack 且还有分片 → SIFS 后继续 ;没收到 Ack → 停止突发,回到竞争流程,从最后一个未确认的分片开始重传;
  • 这种"抢占信道后连续发分片"的序列叫 fragment burst。

10.3 恢复与重传限制(10.3.4.4)

  • 错误恢复是发起方(源 STA)的责任;失败就重传;
  • 重传直到成功,或达到重试上限 dot11ShortRetryLimit 、或超过 dot11MaxTransmitMSDULifetime(MSDU 存活时间);
  • 重传帧的 Retry 位 = 1(接收方据此去重);
  • 单播传输在帧长超阈值时用 RTS/CTS 保护(10.3.5);组播传输用基本接入、无确认(10.3.6)。

十一、DCF 时序关系(10.3.7)------"时间账"

  • 所有时序都以 PHY 原语为参照(PHY-TXEND.confirm、PHY-RXSTART.indication 等);

  • IFS 时长与 STA 的比特率无关(由 PHY 特性固定);

  • aSlotTime 可以动态变化:它含 aAirPropagationTime(传播时间),而传播时间随监管域/覆盖等级变化(10.22.5);

  • 帧交换序列的典型时序:

    ...... 数据帧 ......│ SIFS │ Ack ......│ DIFS │ 退避slot... │ 下一帧
    └── 序列内部,不可插队 ──┘ └─ 新一轮竞争 ─┘


十二、分片与去分片(10.4--10.5)------"短帧更可靠"

12.1 为什么分片(10.2.7 / 10.4)

  • 把长 MSDU/A-MSDU/MMPDU 拆成多个较小的 MPDU(分片),逐个传输、逐个确认;
  • 帧越短,出错概率越低------分片牺牲头部开销,换取低误码率信道下的可靠传输;
  • 每片独立重传(坏一片只重传一片,不必重传整个 MSDU)。

12.2 分片规则(10.4)

  • 触发:长度超过 dot11FragmentationThreshold 的单播 MSDU/MMPDU;
  • 每片长度相等 (最后一片可短),且为偶数字节(末片可奇);
  • 同一 MSDU 的所有分片序列号相同 ,分片号(Fragment Number)从 0 递增;
  • More Fragments 位:不是末片则置 1,末片置 0;
  • 生命周期:发送方维护 MSDU 定时器(dot11MaxTransmitMSDULifetime),超时丢弃未完成分片;
  • 例外 :块确认(HT-immediate BA)下的 MSDU、A-MPDU 内的 MPDU(S-MPDU 除外)、组播帧------不分片。

12.3 去分片(10.5)

  • 接收方按 (源地址, 目的地址, 序列号) 把分片归组,按分片号重组;
  • 维护 接收定时器(dot11MaxReceiveLifetime),超时丢弃已收分片;
  • 重复分片丢弃(但单播重复分片仍要回 Ack);
  • 加密分片必须先解密再去分片;不同密钥/加密与非加密混合的分片不能重组。

记忆:分片 = 发送方"化整为零 + 逐片确认";去分片 = 接收方"按号归组 + 超时清理"。它与 A-MPDU 聚合方向相反------一个为了抗错,一个为了省头(第 08 讲)。


十三、多速率支持(10.6)------"用多快的速率发?"

13.1 思想

PHY 支持多种速率(如 1--11 Mb/s、6--54 Mb/s、MCS0--11...)。"什么时候用什么速率"的算法标准不管 (留给实现),但为了共存与互通,标准规定了速率选择的硬性规则。

13.2 核心规则(10.6.5 / 10.6.6)

帧类型 速率规则
Beacon / 组播数据与管理帧 用 BSSBasicRateSet(基本速率集) 里的速率(非 HT PPDU)------保证 BSS 内所有 STA 都能收到
单播数据/管理帧 可以用任何接收方支持的速率/MCS,但不得用接收方不支持的速率(以其声明的能力元素为准),也不能超过其带宽/空间流能力
控制响应帧(Ack/CTS/BlockAck) 用等于或低于引发帧的速率,且必须在操作速率集中------保证控制帧最容易被收到
未知接收方能力时 回退到基本速率集/强制速率

记忆:组播与 Beacon 求"谁都听得懂"(基本速率);单播求"对方听得懂"(对方声明能力);控制帧求"稳"(不高于引发帧)。速率选择算法(如自动速率控制)是厂商实现,标准只管"边界规则"。


十四、MSDU 传输限制(10.7)与 Control Wrapper(10.9)

14.1 MSDU 传输限制(10.7)------"别把顺序搞乱"

为避免 MSDU 乱序和丢弃,同时有多个 MSDU 在传时:

STA 类型 同一 RA 下最多 outstanding 的 MSDU
非 QoS STA 同一 SA 最多 1 个;且最多 1 个 MMPDU
QoS STA(非块确认下) 每个 TID 最多 1 个
  • "outstanding" = 已开始发送、还没收到最终确认的 MSDU/MMPDU;
  • 块确认(第 08 讲)允许更多在途帧------这是它吞吐高的原因之一。

14.2 Control Wrapper(10.9)------"给控制帧穿件 HT Control 外套"

  • Control Wrapper 帧 = 传统控制帧 + HT Control 字段,让控制帧也能携带带内控制信息(第 04 讲提过);
  • 收端收到 Control Wrapper,按被包装帧的子类型处理(如同直接收到该帧);
  • HE STA 之间不再使用 Control Wrapper(HE 有自己的 A-Control 机制)。

十五、小结

主题 核心要点
MAC 架构(10.2) DCF 是所有接入的地基;HCF(EDCA/HCCA)、MCF、TUA 分层叠加
载波侦听(10.3.2.1) 物理 CCA + 虚拟 NAV 双通道;任一忙则忙
帧间间隔(10.3.2.3) SIFS 最短最高优先;PIFS=DIFS+1slot;DIFS=SIFS+2slot;EIFS 用于坏帧后
NAV(10.3.2.4) 从 Duration 预约;只增不减;RA 是自己不更新
RTS/CTS(10.3.2.6/9) 解决隐藏节点、快速冲突推断、跨 BSS 保护;dot11RTSThreshold 控制
确认(10.3.2.11) 单播立即正向确认;AckTimeout 判定失败
退避(10.3.3) CW 从 aCWmin 指数倍增到 aCWmax,成功复位;每次传输后都退避
接入与重传(10.3.4) 空闲 DIFS + 退避到 0 → 发送;失败重传到上限/寿命
时序(10.3.7) IFS 由 PHY 特性决定,与速率无关
分片(10.4--10.5) 短帧更可靠;逐片确认;序列号+分片号重组
多速率(10.6) 组播/Beacon 用基本速率;单播用对方支持速率;控制响应帧不高于引发帧
其他(10.7/10.9) 每 TID/SA 限制在途 MSDU 数防乱序;Control Wrapper 携带 HT Control

整节一句话回顾 :Clause 10 回答"帧怎么发出去"------DCF 用 CSMA/CA 把"谁先用信道"用"侦听 + 间隔 + 随机退避"排出来,再用确认与重传保证可靠;HCF/MCF/TUA 都在这套地基上加装各自的 QoS/多用户机制。DCF 是理解 802.11 一切接入行为(包括后面 EDCA、块确认、HE 触发上行)的钥匙。

相关推荐
cpolar技术支持44 分钟前
磁盘明明没满,服务却写不进去?做个 inode 与分区占用只读报表页,cpolar 给异地同事看
linux·内网穿透·cpolar·inode·运维排障
Lsetea1 小时前
curl访问HTTPS返回304却没有正文:条件请求、缓存与证书验收排查
linux·http·https·ssl证书·curl
QYR-分析1 小时前
2.80 亿增至 4.12 亿美元,CAGR5.6%:肌电诱发电位仪稳健扩容,神经电生理检测设备加速走向便携与数字化
大数据·网络·人工智能
NEAI_N1 小时前
嵌入式Linux调试:microcom 串口工具
linux
伯恩bourne1 小时前
Reactive Streams 出现的原因
服务器·网络
叼烟扛炮2 小时前
Linux 学习笔记(九):自动化构建神器 Make 与 Makefile
linux·运维·服务器
lisanmengmeng2 小时前
监控Kubernetes集群的GPU资源(三)
linux·容器·kubernetes
蜡笔羊驼2 小时前
ModuleNotFoundError: No module named ‘torchvision.transforms.functional_tensor‘
linux·人工智能·python
箓维2 小时前
线程池&&线程安全与可重入
linux·网络·安全