# MAC 帧格式与类型 ## 802.11 MAC 帧基本结构 ``` ┌─────────────────────────────────────────────────────────────────────┐ │ MAC Header (最小 24 字节) │ ├──────────┬────────┬──────┬──────┬──────┬─────┬──────┬──────────────┤ │ Frame Ctrl│Duration│ Addr1│ Addr2│ Addr3│ SEQ │Addr4(opt)│ QCtrl │ │ 2 bytes│ 2 │ 6 │ 6 │ 6 │ 4 │ 6 │ 2(bytes) │ ├──────────┴────────┴──────┴──────┴──────┴─────┴──────┴──────────────┤ │ MAC Payload (0-2346 字节) │ ├─────────────────────────────────────────────────────────────────────┤ │ FCS (4 字节) │ └─────────────────────────────────────────────────────────────────────┘ ``` ## Frame Control 字段详解 ``` Bits: 0-1 2-3 4-5 6 7 8 9-10 11 12 13 14 15 │ │ │ │ │ │ │ │ │ │ │ │ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ Protocol Type Subtype ToDS FromDS MoreFR Power ECMoreData RDFC Version Mgmt/ Save Req SeqCtrl Data/ Pwr- Ctrl Poll Subfield breakdown: - Order (1 bit): QoS 帧中控制字段顺序 - Retry (1 bit): 重传标记 - More Data (1 bit): AP 有为该 STA 缓存的数据 - Power Mgmt (1 bit): 发送方将进入/处于省电模式 - From DS (1 bit): 帧来自分布系统 - To DS (1 bit): 帧发往分布系统 ``` ## 帧类型与子类型 ### 三大帧类型 | Type | 值 | 说明 | |------|-----|------| | Management | 00 | 管理帧:扫描、认证、关联等 | | Control | 01 | 控制帧:RTS/CTS/ACK 等 | | Data | 10 | 数据帧:承载上层数据 | ### 常用管理帧(Management) | Subtype | 帧名称 | 方向 | 用途 | |---------|--------|------|------| | 0000 | Association Request | STA→AP | 请求关联 | | 0001 | Association Response | AP→STA | 响应关联 | | 0010 | Reassociation Request | STA→AP | 重新关联(漫游) | | 0011 | Reassociation Response | AP→STA | 响应重关联 | | 0011 | Probe Request | STA→AP | 主动扫描请求 | | 0011 | Probe Response | AP→STA | 扫描响应 | | 1000 | Beacon | AP→All | 周期性广播网络信息 | | 1001 | ATIM | STA→STA | Ad-hoc 数据传输指示 | | 1010 | Authentication | ↔ | 认证交换 | | 1011 | Deauthentication | → | 解除认证 | | 1100 | Disassociation | → | 解除关联 | ### 常用控制帧(Control) | Subtype | 帧名称 | 用途 | |---------|--------|------| | 1010 | ACK | 确认接收 | | 1100 | RTS | 请求发送 | | 1101 | CTS | 允许发送 | | 1110 | CTS-to-self | 自保护(TXOP 保护) | | 1000 | Block Ack Request | 批量确认请求 | | 1001 | Block Ack | 批量确认 | ## 地址字段 802.11 帧最多支持 4 个地址字段,具体使用取决于网络拓扑: ### Infrastructure BSS(基础设施模式) | 方向 | Addr1 (RA) | Addr2 (TA) | Addr3 | |------|-----------|-----------|-------| | AP → STA | STA MAC | AP BSSID | AP BSSID | | STA → AP | AP BSSID | STA MAC | STA MAC | ### WDS / Mesh 模式(需要 Addr4) | 方向 | Addr1 | Addr2 | Addr3 | Addr4 | |------|-------|-------|-------|-------| | AP1→AP2→STA | AP2 BSSID | AP1 MAC | STA MAC | AP1 BSSID | ## Sequence Control 字段 ``` │ Fragment Number (4 bits) │ Sequence Number (12 bits) │ ``` - **Sequence Number**:每个新帧递增,用于去重(接收方丢弃重复帧) - **Fragment Number**:分片编号(现代 WiFi 很少使用分片) ## Beacon 帧信息元素(IE) Beacon 帧包含丰富的网络信息: | IE ID | 名称 | 说明 | |-------|------|------| | 0 | SSID | 网络名称 | | 3 | Supported Rates | 支持的速率集 | | 6 | TIM | 传呼指示图(省电用) | | 22 | RSN | 罗布安全关联(WPA/WPA2) | | 48 | Power Capability | 功率能力 | | 50 | ERP Information | 扩展速率 PHY | | 51 | HT Capabilities | 802.11n 能力 | | 54 | QoS Capability | WMM 能力 | | 61 | RSN Extensions | RSN 扩展 | | 79 | HT Operation | 802.11n 操作参数 | | 132 | VHT Capabilities | 802.11ac 能力 | | 150 | HE Capabilities | 802.11ax 能力 | | 192 | EHT Capabilities | 802.11be 能力 |