WIFI协议详解

article/2025/10/3 14:07:14

本博客整理自网络,仅供学习参考,如有侵权,联系删除。邮箱:rom100@163.com。

802.11帧的三种类型:

管理帧:负责监督,主要用来加入或退出无线网络,以及处理基站之间连接的转移事宜。

控制帧:与数据帧搭配使用,负责区域的清空、信道的取得以及载波监听的维护,并于收到数据时予以正面的应答,借此促进工作站间数据传输的可靠性。

数据帧:好比  802.11 的驮马,负责在工作站之间传输数据。

 

 

1、管理帧

(Beacon(信标)帧)
(Probe Request(探测请求)帧)
(Probe Response(探测响应)帧)
(ATIM帧)
(Disassociation(解除关联)与Deauthentication(解除认证)帧)
(Association Request(关联请求)帧)
(Reassociation Request(重新关联请求)帧)
(Authentication(身份认证)帧)

1. 帧控制结构(Frame Control)
    1) Protocol Version: (协议版本)通常为0
    2) Type: 帧类型,管理帧: 00 
    3) Subtype: 进一步判断帧的子类型 
        3.1) Beacon(信标)帧
        3.2) Probe Request(探测请求)帧
        3.3) Probe Response(探测响应)帧
        3.4) ATIM帧
        3.5) Disassociation(解除关联)
        3.6) Deauthentication(解除认证)帧
        3.7) Association Request(关联请求)帧
        3.8) Reassociation Request(重新关联请求)帧
        3.9) Authentication(身份认证)帧
    4) To DS: 表明该帧是否是BSS向DS发送的帧 
    5) From DS: 表明该帧是否是DS向BSS发送的帧 
    6) More Fragment: 用于说明长帧被分段的情况,是否还有其它的帧,如果有则该值设置为1
    7) Retry(重传域): 表示该分段是先前传输分段的重发帧。 
    8) Power Management: 表示传输帧以后,站所采用的电源管理模式
        8.1) 为1: STA处于power_save模式
        8.2) 为0: STA处于active模式
    9) More Data: 表示有很多帧缓存到站中。即至少还有一个数据帧要发送给STA是设置为1。 
    10) Protected Frame: 表示根据WEP(Wired Equivalent Privacy)算法对帧主体进行加密。如果帧体部分包含被密钥套处理过的数据,则设置为1,否则设置为0 
    11) Order(序号域): 在长帧分段传送时,该域设置为1表示接受者应该严格按照顺序处理该帧,否则设置为0
2. Duration/ID(持续时间/标识)
表明该帧和它的确认帧将会占用信道多长时间,Duration 值用于网络分配向量(NAV)计算 
3. Address Fields(地址域): 
    1) Destination Address
    2) Source Address
    3) BSS ID 
4. Sequence Control(序列控制域): 用于过滤重复帧
    1) MSDU(MAC Server Data Unit), 12位序列号(Sequence Number)
    2) MMSDU(MAC Management Server Data Unit), 4位片段号(Fragment Number)组成 
5. Frame Body(Data): 发送或接收的信息。对于不同类型的数据帧来说,这个域的格式差别较大
    1) Beacon(信标)帧
        1.1) Timestamp(时戳)位: 可用来同步 BSS 中的工作站 BSS 的主计时器会定期发送目前已作用的微秒数。当计数器到达最大值时,便会从头开始计数
        1.2) Beacon interval位: AP点每隔一段时间就会发出的Beacon(信标)信号,用来宣布 802.11网络的存在。我们打开无线连接的时候之所以能看到很多Wi-Fi点就是因为它
        1.3) Capability information位: 发送Beacon信号的时候,它被用来通知各方,该网络具备哪种性能
        1.4) SSID服务集标识(Service Set Identity): 由字节所形成的字串,用来标示所属网络的BSSID,即我们在Wi-Fi连接前看到的接入点名称
        1.5) 跳频参数组合(PH Parameter Set): 包含了加入 802.11跳频(frequency-hopping)网络所需要的参数
        1.6) 直接序列参数集合(DS Parameter Set): 指明网络所使用的信道数
        1.7) 免竞争参数集合(CF Parameter Set): 出现在支持免竞争接入点所发送的 Beacon帧中,并非必须
        1.8) IBSS 参数集合(IBSS Parameter Set): 指明ATIM window (数据待传指示通知信息间隔期间)
        1.9) TIM数据待传信息(Traffic Indication Map): 指示有哪些工作站需要接收待传数据
        1.10) Country: 国家识别码
        1.11) 功率限制(Power Constraint): 让网络得以向工作站传达其所允许的最大传输功率
        1.12) 信道切换宣告(Channel Switch Announcement): 为了警告网络中的工作站即将变换信道
        1.13) 禁声(Quiet): 为了避免与特定的军事雷达技术彼此干扰
        1.14) 发射功率控制报告(TPC Report): 指明链路的衰减情况,可以帮助工作站了解该如何调整传输功率
        1.15) 扩展物理层(ERP)
        1.16) 支持速率(Supported Rates): 无线局域网络支持数种标准速率。当移动工作站试图加入网络,会先检视该网络所使用的数据速率。有些速率是强制性的,每部工作站都必须支持
     ,有些则是选择性的
        1.17) RSN强健安全网络(Robust Security Network)
    2) Probe Request(探测请求)帧
        2.1) SSID服务集标识(Service Set Identity): 由字节所形成的字串,用来标示所属网络的BSSID,即我们在Wi-Fi连接前看到的接入点名称
        2.2) Supported Rate(支持速率)
        2.3) 扩展支持速率(Extended Supported Rate)
    3) Probe Response(探测响应)帧
        3.1) Timestamp(时戳)位: 可用来同步 BSS 中的工作站 BSS 的主计时器会定期发送目前已作用的微秒数。当计数器到达最大值时,便会从头开始计数
        3.2) Beacon interval位: AP点每隔一段时间就会发出的Beacon(信标)信号,用来宣布 802.11网络的存在。我们打开无线连接的时候之所以能看到很多Wi-Fi点就是因为它
        3.3) Capability information位: 发送Beacon信号的时候,它被用来通知各方,该网络具备哪种性能
        3.4) SSID服务集标识(Service Set Identity): 由字节所形成的字串,用来标示所属网络的BSSID,即我们在Wi-Fi连接前看到的接入点名称
        3.5) 支持速率(Supported Rates): 无线局域网络支持数种标准速率。当移动工作站试图加入网络,会先检视该网络所使用的数据速率 
        3.6) 跳频参数组合(PH Parameter Set): 包含了加入 802.11跳频(frequency-hopping)网络所需要的参数
        3.7) 直接序列参数集合(DS Parameter Set): 指明网络所使用的信道数
        3.8) 免竞争参数集合(CF Parameter Set): 出现在支持免竞争接入点所发送的 Beacon帧中,并非必须
        3.9) IBSS 参数集合(IBSS Parameter Set): 指明ATIM window (数据待传指示通知信息间隔期间)
        3.10) Country: 国家识别码
        3.11) FH Hopping Parameters
        3.12) FH Pattern Table
        3.13) 功率限制(Power Constraint): 让网络得以向工作站传达其所允许的最大传输功率
        3.13) 信道切换宣告(Channel Switch Announcement): 为了警告网络中的工作站即将变换信道
        3.14) 禁声(Quiet): 为了避免与特定的军事雷达技术彼此干扰
        3.15) IBSS 动态选项(IBSS DFS):在 IBSS 中负责动态选频的工作站可以在管理帧中传递 IBSS DFS 信息元素
        3.16) 发射功率控制报告(TPC Report): 指明链路的衰减情况,可以帮助工作站了解该如何调整传输功率
        3.17) 扩展物理层(ERP)
        3.18) 扩展支持速率(Extended Supported Rate) 
        3.19) RSN强健安全网络(Robust Security Network)
    4) ATIM帧
    5) Disassociation(解除关联)
        5.1) Beacon Code
    6) Deauthentication(解除认证)帧
        6.1) Beacon Code
    7) Association Request(关联请求)帧
        7.1) Capability information位: 发送Beacon信号的时候,它被用来通知各方,该网络具备哪种性能
        7.2) Listen interval位: 为了节省电池的电力,工作站可以暂时关闭 802.11网络接口的天线。当工作站处于休眠状态,接入点必须为之暂存帧
        7.3) SSID服务集标识(Service Set Identity): 由字节所形成的字串,用来标示所属网络的BSSID,即我们在Wi-Fi连接前看到的接入点名称
        7.4) Supported Rate(支持速率)
    8) Reassociation Request(重新关联请求)帧
        8.1) Capability information位: 发送Beacon信号的时候,它被用来通知各方,该网络具备哪种性能
        8.2) Listen interval位: 为了节省电池的电力,工作站可以暂时关闭 802.11网络接口的天线。当工作站处于休眠状态,接入点必须为之暂存帧
        8.3) Current AP Address位: 使用Current AP Address(目前接入点的地址)位来表明目前所连接的接入点的 MAC地址
        8.4) SSID服务集标识(Service Set Identity): 由字节所形成的字串,用来标示所属网络的BSSID,即我们在Wi-Fi连接前看到的接入点名称
        8.5) Supported Rate(支持速率)
    9) Authentication(身份认证)帧
        9.1) Authentication Algorithm Number: 指明认证程序所使用的认证类型
        9.2) Authentication Transaction Sequence Number: 用以追踪身份认证的进度
        9.3) Status Code: 状态代码用来表示某项过程成功或失败
        9.4) 质询口令(Challenge Text): 802.11所定义的共享密钥身份认证系统。会要求移动工作站必须成功解码一段加密过的质询口令。这段质询口令的发送系通过 Challenge Text
    (质询口令)信息元素
6. FCS(CRC): 包括32位的循环冗余校验(CRC),用于检错,注意是检错不是纠错

 

2、控制帧

(RTS帧,控制帧的一种)
(CTS帧,控制帧的一种)
(ACK帧,控制帧的一种)
(PS-Poll帧)

1. 帧控制结构(Frame Control)
    1) Protocol Version: (协议版本)通常为0
    2) Type: 帧类型,控制帧: 01 
    3) Subtype: 进一步判断帧的子类型:   
        控制帧
        3.1) 请求发送(Request To Send,RTS)数据包
        3.2) 清除发送(Clear To Send,CTS)数据包
        数据帧
        3.3) ACK确认(RTS/CTS) 
        3.4) PS-Poll: 当一部移动工作站从省电模式中苏醒,便会发送一个 PS-Poll 帧给基站,以取得任何暂存帧 
    4) To DS: 表明该帧是BSS向DS发送的帧时,该值设置为1
    5) From DS: 表明该帧是DS向BSS发送的帧时,该值设置为1
    控制帧负责处理无线介质的访问,因此只能够由无线工作站产生。传输系统并不会收送控制帧,因此这两个Bit必然为0 
    6) More Fragment: 用于说明长帧被分段的情况,是否还有其它的帧,如果有则该值设置为1。
    控制帧不可能被切割,这个Bit必然为0 
    7) Retry(重传域): 表示该分段是先前传输分段的重发帧。
    控制帧不像管理或数据帧那样,必须在序列中等候重送,因此这个 Bit必然为0 
    8) Power Management: 表示传输帧以后,站所采用的电源管理模式
        8.1) 为1: STA处于power_save模式
        8.2) 为0: STA处于active模式
    9) More Data: 表示有很多帧缓存到站中。即至少还有一个数据帧要发送给STA是设置为1。
    More Data bit只用于管理数据帧,在控制帧中此Bit必然为0
    10) Protected Frame: 表示根据WEP(Wired Equivalent Privacy)算法对帧主体进行加密。如果帧体部分包含被密钥套处理过的数据,则设置为1,否则设置为0。
    控制帧不会经过加密。因此对控制帧而言,Protected Frame bit必然为0。
    11) Order(序号域): 在长帧分段传送时,该域设置为1表示接受者应该严格按照顺序处理该帧,否则设置为0。
    控制帧是基本帧交换程序(atomic frame exchange operation)的组成要件,因此必须依序发送。所以这个Bit必然为0
2. Duration/ID(持续时间/标识)
表明该帧和它的确认帧将会占用信道多长时间,Duration 值用于网络分配向量(NAV)计算。
注意: 在PS-Poll帧中不包含Duration/ID这个字段
3. Address Fields(地址域): 
这个域的具体格式和控制帧的子类型有关,不同的子类型会有一些微小的差别
    3.1) RTS(请求发送帧)
        3.1.1) Receiver Address(接收端地址)
        接收大型帧的工作站的地址
        3.1.2) Transmitter Address(发送端地址)
        RTS帧的发送端的地址
    3.2) CTS(允许发送)
        3.2.1) Receiver Address(接收端地址)
    3.3) ACK(应答)
        3.3.1) Receiver Address(接收端地址)
    3.4) PS-Poll(省电模式一轮询) 
        3.4.1) AID(连接识别码 association ID)    
        连接识别码是接入点所指定的一个数值,用以区别各个连接。将此识别码置入帧,可让接入点找出为其(移动工作站)所暂存的帧
        3.4.2) BSSID
        此位包含发送端目前所在 BSS(AP)的BSSID ,此BSS 建立自目前所连接的AP
        3.4.3) Transmitter Address(发送端地址)
        此为PS-Poll帧之发送端的 MAC地址
4. FCS(CRC): 包括32位的循环冗余校验(CRC),用于检错,注意是检错不是纠错

 

3.数据帧

(IBSS 数据帧的一种)
(接入点发送(From AP)的帧,数据帧的一种)
(发送至接入点(To AP)的帧,数据帧的一种)
(WDS帧,数据帧的一种)

1. 帧控制结构(Frame Control)
    1) Protocol Version: (协议版本)通常为0
    2) Type: 帧类型,数据帧: 10 
    3) Subtype: 进一步判断帧的子类型,不同类型的数据帧这个字段的格式是不同的
        3.1) IBSS帧
            3.1.1) 0000: Data
            3.1.2) 0010: Null
        3.2) From AP帧
            3.2.1) 0000: Data
            3.2.2) 1000: Data+CF+ASK
            3.2.3) 0100: Data+CF+Poll
            3.2.4) 1100: Data+CF+ACK+CF+Poll
            3.2.5) 1010: CF+ACK
            3.2.6) 0110: CF+Poll
            3.2.7) 1110: ACK+CF+Poll 
        3.3) To AP帧
            3.3.1) 0000: Data
            3.3.2) 1000: Data+CF+ACK
            3.3.3) 0010: Null
            3.3.4) 1010: CF+ACK(no data)
        3.4) WDS帧
            null
    4) To DS: 表明该帧是否是BSS向DS发送的帧时
        4.1) IBSS: 设置为0
        4.2) To AP: 设置为1
        4.3) From AP: 设置为0
        4.4) WDS: 设置为1
    5) From DS: 表明该帧是否是DS向BSS发送的帧时  
        5.1) IBSS: 设置为0
        5.2) To AP: 设置为0
        5.3) From AP: 设置为1
        5.4) WDS: 设置为1
    6) More Fragment: 用于说明长帧被分段的情况,是否还有其它的帧,如果有则该值设置为1
    7) Retry(重传域): 表示该分段是先前传输分段的重发帧。 
    8) Power Management: 表示传输帧以后,站所采用的电源管理模式
        8.1) 为1: STA处于power_save模式
        8.2) 为0: STA处于active模式
    9) More Data: 表示有很多帧缓存到站中。即至少还有一个数据帧要发送给STA是设置为1。 
    10) Protected Frame: 表示根据WEP(Wired Equivalent Privacy)算法对帧主体进行加密。如果帧体部分包含被密钥套处理过的数据,则设置为1,否则设置为0 
    11) Order(序号域): 在长帧分段传送时,该域设置为1表示接受者应该严格按照顺序处理该帧,否则设置为0
2. Duration/ID(持续时间/标识)
表明该帧和它的确认帧将会占用信道多长时间,Duration 值用于网络分配向量(NAV)计算 
3. Address Fields(地址域): 
这个域的具体格式和控制帧的子类型有关,不同的子类型会有一些微小的差别
    1) IBSS
        1.1) Destination Address
        1.2) Source Address
        1.3) BSSID 
        每个BSS都会被赋予一个BSSID,它是一个长度为48个bit的二进制识别码,用来辨识不同的BSS
    2) From AP
        2.1) Destination Address 
        2.2) BSSID
        2.3) Source Address
    3) To AP
        3.1) BSSID
        3.2) Source Address
        3.3) Destination Address  
    4) WDS 
        4.1) BSSID
        4.2) Source Address
        4.3) Destination Address
4. Sequence Control(序列控制域): 用于过滤重复帧
    1) MSDU(MAC Server Data Unit), 12位序列号(Sequence Number)
    2) MMSDU(MAC Management Server Data Unit), 4位片段号(Fragment Number)组成
[SA,只有WDS中的帧有这个字段]
5. Frame Body(Data): 发送或接收的信息。
6. FCS(CRC): 包括32位的循环冗余校验(CRC),用于检错,注意是检错不是纠错

扩展:

WIFI认证过程

可使用wireshark进行抓包

1. AP发送Beacon广播管理帧

2. 客户端向承载指定SSID的AP发送Probe Request(探测请求)帧

3. AP接入点对客户端的SSID连接请求进行应答

4. 客户端对目标AP请求进行身份认证(Authentication)

5. AP对客户端的身份认证(Authentication)请求作出回应

6. 客户端向AP发送连接(Association)请求

7. AP对连接(Association)请求进行回应

8. 客户端向AP请求断开连接(Disassociation)

 


http://chatgpt.dhexx.cn/article/i0Sv21kR.shtml

相关文章

802.11协议:wifi

802.11协议 博客链接:https://www.blog.23day.site/articles/71 一、协议简介 IEEE 802协议簇是指IEEE标准中关于局域网(LAN)和城域网(MAN)的一系列标准。IEEE 802中定义的服务和协议限定在OSI七层网络模型的最低两层…

WiFi/802.11协议简介

什么是WLAN 让我们先了解局域网。LAN表示局域网。它是使用某种媒介连接多台计算机。对于LAN的情况,这种介质将是有线的,包括以太网电缆,光纤等。如左图所示,LAN可以使用以太网交换机或集线器或路由器形成。所有计算机都与此交换机…

Wi-Fi技术

1、Wi-Fi简介 Wi-Fi技术: Wi-Fi是一个创建于IEEE 802.11标准的无线局域网技术。IEEE 802.11是无线局域网通用的标准,它是由电气和电子工程师协会(IEEE)所定义的无线网络通信的标准。虽然经常将Wi-Fi与802.11混为一谈&#xff0…

计算机网络第八版——第一章课后题答案(超详细)

第一章 该答案为博主在网络上整理,排版不易,希望大家多多点赞支持。后续将会持续更新(可以给博主点个关注~ 第二章 答案 【1-01】计算机网络可以向用户提供哪些服务? 解答:这道题没有现成的标准答案,因…

【计算机网络】计算机网络(第八版)谢希仁著 ----你要的答案都在这里

计算机网络:知识点总结(带问号是考题,不带的是知识点) 文章目录 计算机网络:知识点总结(带问号是考题,不带的是知识点)1.互联网的产生?2.三网融合?3.互连网和…

计算机网络试题

一、 TCP/IP协议是一种开放的协议标准,下面哪个不是它的特点 A.独立于特定计算机硬件和操作系统 B.统一编址方案 C.政府标准 D.标准化的高层协议 C [解析] TCP/IP具有以下特点: 1)开放的协议标准&#x…

计算机网络(第七版)部分课后习题含答案

计算机网络(第七版)部分课后习题含答案 第一章 概述 1-02 试简述分组交换的要点。 分组交换最主要的特点就是采用存储转发技术。 我们把要发送的整块数据称为一个报文。在发送报文之前,先把较长的报文划分成为一个个更小的等长数据段&#…

001计算机网络基础习题+答案+解析

一、填空题(每空2分,共20分) _数据链路 层的主要任务是在相邻结点间的线路上无差错地传送以帧为单位的数据。 解析:应用层的任务是:通过应用进程间的交互来完成特定网络应用。 运输层的任务是:负责向两台…

计算机网络原理 谢希仁(第8版)第三章习题答案

3-01 数据链路(即逻辑链路)与链路(即物理链路)有何区别? “链路接通了”与”数据链路接通了”的区别何在? 链路: 是一个结点到相邻节点的物理线路。 数据链路: 数据在线路上传输时,需要协议控制数据的传输,实现协议的硬件和软件…

计算机网络(1~3)课后题答案(全)

4-8章课后题答案 https://blog.csdn.net/weixin_39332529/article/details/104854566 https://blog.csdn.net/weixin_39332529/article/details/105034024 第一章 1.什么是计算机网络? 计算机网络是互联、自治的计算机集合 自治:计算机系统彼此独立…

计算机网络-试题库(含答案)

1单项选择题 以下属于物理层的设备是(A) A. 中继器 B. 以太网交换机 C. 桥 D. 网关 在以太网中是根据_B_地址来区分不同的设备的. A. LLC地址 B. MAC地址 C. IP地址 D. IPX地址 IEEE802.3u标准是指(B) A. 以太网 …

计算机网络谢希仁第八版 课后答案第七版课后答案

谢希仁计算机网络第八版课后答案第七版 第一章 概述 1-01 计算机网络向用户可以提供那些服务?答: 连通性和共享 1-02 简述分组交换的要点。答:(1)报文分组,加首部(2)经路由器储存转…

计算机网络部分习题答案

一、概念辨析题(简答、名词解释)5小题, 共25分 二、理论分析题(计算题)5小题,共25分 三、协议分析题3小题, 共20分 四、综合应用题3小题, 共30分 一、第一章 1.(简答题)简述P2P技术。P2P与传统的C/S通信方式最大区别是什么? P2P即对等连接,是指两个…

计算机网络 谢希仁(第8版)第五章习题答案

5-01 试说明运输层在协议栈中的地位和作用,运输层的通信和网络层的通信有什么重要区别?为什么运输层是必不可少的? 地位:属于面向通信部分的最高层,同时也是用户功能中的最底层。 功能:向应用层提供通信服务…

计算机网络——网络层课后习题答案

一、 (1)假设一个主机 IP 地址为 192.55.12.120,子网掩码为 255.255.255.240,试求其子网号、主机号以及广播地址。(2)如果子网掩码改为 255.255.192.0,那么下列哪些主机:&#xff08…

遍历——迭代器模式

迭代器模式 ​ Iterator Pattern:迭代器模式,是GoF23种设计模式中属于行为型模式的一种。 ​ 迭代器的模式已经是很多高级编程语言中常用的设计模式了,体现的位置也是方方面面都可以,比如最常用的for循环就是如此。 ​ 在JAVA中…

迭代器模式:理解与实践

本文收录于JavaStarter ,里面有我完整的Java系列文章,学习或面试都可以看看 (一)什么是迭代器模式 迭代器模式应该是23种设计模式中,程序员最容易理解的设计模式了,因为迭代器模式在日常的开发过程中经常使…

C#设计模式之迭代器模式

迭代器模式 文章目录 迭代器模式模式分类模式产生的原因模式的灵感来源模式类图代码实现迭代器模式总结迭代器模式的优点:迭代器模式的缺点: 本篇博客将介绍迭代器模式,迭代器模式将一个聚合对象保存数据的职责,和它遍历数据的职责…

迭代器模式实例与代码分析

目录 前言 一、🌍迭代器(Iterator)模式是什么?🌍 二、🌍迭代器(Iterator)模式的优缺点🌍 三、🌍迭代器(Iterator)模式的结构&…

设计模式作业 之迭代器模式

设计一个逐页迭代器,每次可返回指定个数(一页)元素,并将该迭代器用手对数据进行分页处理。绘制对应的类图并编程模拟实现。 (1)绘制类图 (2)代码实现 AbstractAggregate类: package lib6.iterator;public interface…