802.11n PHY-MAC层帧结构解析
最近因为业务问题学习了一下802.11n帧结构的有关知识,尽管随着802.11ac、ax时代的到来,802.11n已经走向了终结,但作为史上使用时间最长的WiFi协议,其仍然具有重大的意义。
数据转换过程
- 802.11协议对数据链路层和物理层进行定义。
- 数据链路层分为:逻辑链路控制层(Logical Link Control,LLC)和媒介访问控制层(Media Access Control,MAC)
- 当来自Layer3(网络层)的数据进入数据链路层时,首先会经过LLC,添加一些信息形成MSDU(MAC Service Data Unit),这是一种802.3格式的帧。(注意:所有来自上层的数据包都会被封装为802.11数据帧,因此由MSDU转化的都是数据帧类型)
- MSDU进入MAC层,会被添加上MAC头部信息和尾部FCS校验信息,并被无限网卡驱动转化成MAC协议数据单元MPDU(MAC Protocol Data Unit),这就是平常我们抓包抓到得MAC帧。
- 而除了数据帧之外的控制帧和管理帧,是直接在MAC子层生产为MSDU的?
- 物理层也分为两层:物理层汇聚过程层(Physical Layer Convergence Procedure,PLCP)和物理介质依赖层(Physical Medium Dependent,PMD)
- 当MPDU进入到物理层后,名字会变成PSDU(PLCP Service Data Unit),和MPDU是同一个东西。
- PLCP收到PSDU后,会在PSDU前加一个前导同步码和PHY头部形成PHY层协议数据单元(PPDU)。
- 然后,PPDU会被移交给PMD层,根据不同的算法调制成一串比特流进行发送。
- 所有过程如下图所示。
MPDU(MAC帧)结构
如图,一个完整的MPDU包括以下字段:帧控制、持续时间、地址域(Address1、2、3、4)、序列控制、帧主体(MSDU)、循环冗余校验。以上单位为字节(8bit)。
1. 帧控制结构(Frame Control):
1)协议版本(Protocol Version):通常为0,没有新版本。
2)帧类型(Type):管理帧00(用于STA、AP协商)、控制帧01(用于信道控制)、数据帧10(数据的载体&#x