IEEE 802.11目前出了几个合集:
- IEEE 802.11-1999
- IEEE 802.11-2007
- IEEE 802.11-2012
- IEEE 802.11-2016
- IEEE 802.11-2020
我之前曾提及,随着IEEE802.11协议的不断更新,其内容愈发复杂且庞大,已超过4000页,直接阅读变得异常艰难。因此,更推荐在遇到具体问题时再进行有针对性的查阅。相比之下,IEEE 802.11-2007版本则显得较为简洁明了,仅有1200多页,非常适合初学者入门。
我之所以对IEEE 802.11-2007版本情有独钟,一方面是因为我在2006年刚踏入WiFi行业时,恰逢该版本发布,那时WiFi正处于蓬勃发展的前夜;另一方面,该版本为WiFi技术的发展奠定了坚实的基础。
今天,我想与大家一同深入精读IEEE802.11协议,并分享一些关键要点,以期帮助大家更好地理解和应用这一协议。让我们一同探索WiFi技术的奥秘吧!
1,overview 介绍802.11的范围和目的
范围:medium access control (MAC) and several physical layer (PHY)
目的:wireless connectivity,移动设备等。
2,Normative references 规范性引用
3,Definitions 定义
4,Abbreviations and acronyms缩写
5,General description 综合描述
**5.1.1.2 介质对设计和性能的影响**
IEEE Std 802.11 中使用的物理层(PHY)与有线介质存在根本性差异。因此,IEEE 802.11 物理层具有以下特性:
a) **介质的无边界性**
无线介质没有绝对或易观测的边界,无法确保符合规范的物理层收发器(STA)在边界外完全无法接收网络帧。
b) **信号干扰的易受性**
无法避免与其他共享介质的信号(如非 Wi-Fi 设备或环境噪声)产生干扰。
c) **介质的低可靠性**
相比有线物理层,无线介质的通信可靠性显著降低(例如易受多径衰落、衰减等问题影响)。
d) **动态拓扑结构**
网络拓扑可能因设备移动或环境变化而动态调整(如 STA 加入/离开网络)。
e) **非全连接性**
无法假设所有 STA 之间均能直接通信(即可能存在“隐藏节点”问题),因此传统有线网络中“所有节点可互听”的假设不成立。
f) **传播特性的时变与非对称性**
无线信号传播特性随时间变化且可能呈现非对称性(例如路径损耗、干扰在不同方向或时间存在差异)。
g) **逻辑隔离网络的潜在干扰**
在重叠区域内,不同逻辑架构的 IEEE 802.11 网络(如独立 BSS 或 ESS)可能互相干扰。
---
**关键总结**
无线介质的开放性和不确定性导致 IEEE 802.11 在协议设计中需额外解决以下问题:
- 冲突避免(如 CSMA/CA)
- 隐藏节点检测(如 RTS/CTS 机制)
- 动态速率适配(根据信道质量调整调制编码方案)
- 干扰管理(如信道绑定、DFS 动态选频)
- 拓扑维护(如信标帧、关联/重关联流程)。
IEEE Std 802.11标准要求其对于更高层(逻辑链路控制层,LLC)而言,应表现得如同一个有线IEEE 802局域网。这就要求IEEE 802.11网络在MAC子层内处理站点的移动性。为了满足可靠性假设(LLC对底层所做的假设),IEEE Std 802.11必须纳入对于MAC子层而言非传统的功能。
在强健安全网络关联(RSNA)中,IEEE Std 802.11提供数据帧保护功能,IEEE Std 802.1X-2004提供认证和控制端口功能,而IEEE Std 802.11与IEEE Std 802.1X-2004协同工作以提供密钥管理。RSNA中的所有站点都有一个相应的IEEE 802.1X实体来处理这些服务。本标准定义了RSNA如何利用IEEE Std 802.1X-2004来访问这些服务。
当用于支持具有QoS(服务质量)要求的应用程序时,每个IEEE 802.11局域网都会在一个端到端QoS环境中提供一个链路,该链路可以在更高层实体之间建立并由其管理。为了以与其他IEEE 802局域网相媲美的方式处理QoS流量,IEEE 802.11的QoS设施要求IEEE 802.11的MAC子层纳入对于MAC子层而言非传统的功能。此外,某些更高层管理实体可能需要至少“了解无线局域网(WLAN)”,即了解WLAN的可用带宽和其他QoS特性会因除流量负载以外的其他原因而频繁且有时显著地动态变化,并且这些变化超出了网络管理实体的直接控制范围。
5.2 IEEE 802.11架构的组成部分
IEEE 802.11架构由多个相互作用的组件构成,共同为上层提供透明支持STA移动性的WLAN。
基本服务集(BSS)是IEEE 802.11局域网的基本构建块。图5-1展示了两个BSS,每个BSS都有两个作为其成员的STA。
将用于描绘BSS的椭圆视为BSS成员STA可保持通信的覆盖区域是有用的。(虽然“区域”的概念并不精确,但通常已经足够。)这个区域被称为基本服务区(BSA)。如果STA移出其BSA,它将无法再与BSA中存在的其他STA直接通信。
5.2.1 The independent BSS (IBSS) as an ad hoc network WFA已废弃
5.2.2 BSS中的STA成员身份是动态的
一个STA在BSS中的成员身份是动态的(STA开启、关闭、进入范围内或离开范围)。为了成为BSS的成员,STA使用11.1.3.4节中描述的同步过程加入BSS。为了访问基础设施BSS的所有服务,STA需要“关联”。这些关联是动态的,并且涉及使用5.3.2节中描述的分发系统服务(DSS)。
5.2.3 分发系统(DS)概念
物理层(PHY)的限制决定了可能支持的直接站点到站点距离。对于某些网络来说,这个距离足够了;而对于其他网络来说,则需要更大的覆盖范围。
除了独立存在之外,一个基本服务集(BSS)还可以构成由多个BSS构建的网络扩展形式的一个组成部分。用于互连BSS的架构组件是分发系统(DS)。
IEEE Std 802.11在逻辑上将无线介质(WM)与分发系统介质(DSM)分开。每种逻辑介质都由架构的不同组件用于不同的目的。IEEE 802.11的定义既不排除也不要求多种介质必须相同或不同。
认识到多种介质在逻辑上是不同的,这是理解架构灵活性的关键。IEEE 802.11局域网架构的指定独立于任何特定实现的物理特性。
分发系统通过提供处理地址到目的地映射和多个BSS无缝集成的必要逻辑服务,来支持移动设备。
图5-2在IEEE 802.11架构图中添加了分发系统(DS)、分发系统介质(DSM)和接入点(AP)组件。
数据通过接入点(AP)在基本服务集(BSS)和分发系统(DS)之间传输。请注意,所有接入点也都是STA,因此它们都是可寻址的实体。接入点在无线介质和分发系统介质上通信时使用的地址不一定相同。
与接入点关联的STA之一发送给接入点的STA地址的数据始终在不受控端口接收,并由IEEE 802.1X端口访问实体进行处理。此外,如果受控端口已授权,这些帧在概念上会通过分发系统传输。

分发系统(DS)和基本服务集(BSS)使IEEE Std 802.11能够创建任意规模和复杂度的无线网络。
IEEE Std 802.11将这种类型的网络称为扩展服务集(ESS)网络。ESS是通过DS连接的多个BSS的集合。ESS不包括DS本身。
关键概念是,对于逻辑链路控制(LLC)层而言,ESS网络与独立基本服务集(IBSS)网络看起来是一样的。ESS内的STA可以相互通信,并且移动STA可以在ESS内的不同BSS之间透明地移动(对LLC层而言)。
IEEE Std 802.11对图5-3中BSS的相对物理位置不做任何假设。
以下所有情况都是可能的:
a) BSS可能部分重叠。这通常用于在物理空间内安排连续的覆盖范围。
b) BSS可能在物理上是不相交的。逻辑上,BSS之间的距离没有限制。
c) BSS可能在物理上位于同一位置。这可能是为了提供冗余。
d) 一个(或多个)IBSS或ESS网络可能与一个(或多个)ESS网络在物理上存在于同一空间。这种情况可能由多种原因引起。一些例子包括:在已有ESS网络的位置运行自组织网络、不同组织设置了物理上重叠的IEEE 802.11网络,以及在同一位置需要两种或多种不同的访问和安全策略。
健壮安全网络关联(RSNA)在有线等效保密(WEP)和IEEE 802.11认证之外,还定义了一系列安全特性。这些特性包括:
— 增强的站点(STA)认证机制
— 密钥管理算法
— 加密密钥建立
— 一种增强的数据加密封装机制,称为计数器模式与密码分组链接消息认证码协议(CCMP),以及可选的临时密钥完整性协议(TKIP)。
RSNA依赖于IEEE 802.11架构外部的多个组件。
第一个组件是IEEE 802.1X端口访问实体(PAE)。在RSNA中的所有STA上都存在PAE,它们控制数据向/从中介访问控制(MAC)的转发。接入点(AP)总是实现认证器PAE和可扩展认证协议(EAP)认证器角色,而非AP的STA总是实现请求者PAE和EAP对等体角色。在独立基本服务集(IBSS)中,每个STA都实现认证器PAE和请求者PAE角色,以及EAP认证器和EAP对等体角色。
第二个组件是认证服务器(AS)。AS可以对RSNA本身的元素(即非AP的STA)进行认证;AP可以提供RSNA元素用于相互认证的材料。AS通过IEEE 802.1X认证器与每个STA上的IEEE 802.1X请求者进行通信,从而使STA能够被AS认证,反之亦然。RSNA依赖于使用支持AS和STA相互认证的EAP方法,如满足IETF RFC 4017要求的那些方法。在某些应用中,AS可以集成到与AP相同的物理设备中,或者集成到IBSS中的STA中。

5.2.5 与有线局域网的集成
为了将IEEE 802.11架构与传统有线局域网集成,引入了最后一个逻辑架构组件——门户portal。
门户是集成非IEEE 802.11局域网中的MSDU进入IEEE 802.11分布系统(DS)的逻辑点。例如,图5-6中显示了一个门户连接到有线IEEE 802局域网。
所有来自非IEEE 802.11局域网的数据都通过门户进入IEEE 802.11架构。门户是提供集成服务的逻辑点。集成服务负责处理当帧在分布系统和集成局域网之间传递时可能需要的任何地址或帧格式更改。一个设备可以同时提供接入点(AP)和门户的功能。

5.2.6 QoS BSS:QoS网络
IEEE 802.11 QoS功能提供了MAC增强,以支持具有QoS要求的LAN应用。在QoS BSS中,与QoS接入点关联的QoS STA可以使用QoS增强功能。对于属于同一QoS IBSS的STA之间,可以使用QoS增强功能的一个子集。由于QoS STA实现了本标准定义的STA功能的超集,因此当没有可关联的QoS BSS时,该STA可以与非QoS BSS中的非QoS接入点关联,以提供非QoS MAC数据服务。
将QoS STA与非QoS STA以及QoS AP与非QoS AP区分开来的增强功能统称为QoS功能。在QoS实现之间,以及在QoS STA和QoS AP之间,某些特定于QoS的机制的数量可能会有所不同,具体范围将在后续条款中指定。除块确认(Block Ack)功能、直接链路设置(DLS)和自动节能传输(APSD)外,所有服务原语、帧格式、协调功能和帧交换规则以及管理接口功能都是核心QoS功能的一部分。QoS STA或QoS AP必须实现其QoS功能所需的核心QoS功能,以便与BSS中的其他STA互操作。块确认、DLS和APSD等功能与核心QoS功能分开;并且这些功能的存在由STA单独于核心QoS功能进行指示。关于强制性和可选功能的全面说明见附件A。
本标准提供了两种机制来支持具有QoS要求的应用。
第一种机制称为增强分布式信道接入(EDCA),它根据用户优先级(UP)的差异来传输流量。这种差异通过针对不同UP值改变以下方面来实现:
- STA在退避或传输前感知信道为空闲的时间长度,或
- 用于退避的争用窗口的长度,或
- STA在获取信道后可传输的持续时间。
这些传输还可能受到以接入控制形式存在的某些信道接入限制。该机制的详细信息见9.9.1节。
第二种机制称为混合协调功能(HCF)控制的信道接入(HCCA),它允许与混合协调器(HC)预约传输机会(TXOP)。非接入点(非AP)STA根据其需求向HC请求TXOP,既包括其自身的传输,也包括从AP到其自身的传输。13该请求由非AP STA的站管理实体(SME)发起。位于AP处的HC根据接入控制策略接受或拒绝该请求。如果请求被接受,HC会为AP和非AP STA调度TXOP。对于来自非AP STA的传输,HC会根据非AP STA在请求时提供的参数对其进行轮询。对于到非AP STA的传输,AP直接从共置的HC获取TXOP,并根据非AP STA提供的参数将排队的帧交付给非AP STA。该机制的详细信息见9.9.2节和11.4节。该机制可用于如语音和视频等应用,这些应用可能需要HC提供的周期性服务。如果应用约束要求使用该机制,则应用通过使用管理服务原语来启动该机制。
如果AP允许,非QoS STA可以在QoS BSS中关联。AP发送给非QoS STA的所有定向帧不应使用与QoS功能相关的帧格式。
在非QoS BSS中关联的QoS STA应作为非QoS STA运行。
5.3 逻辑服务接口
分布式系统(DS)可由多种不同技术创建,包括当前的IEEE 802有线局域网。IEEE Std 802.11标准并不限制DS必须基于数据链路层或网络层。同样,IEEE Std 802.11标准也不限制DS的性质是集中式还是分布式。
IEEE Std 802.11标准明确不规定DS实现的具体细节。相反,它规定了服务。这些服务与体系结构的不同组件相关联。IEEE 802.11服务分为两类:站服务(SS)和分布系统服务(DSS)。这两类服务均由IEEE 802.11媒体访问控制(MAC)子层使用。
services | SS | DSS |
a) Authentication | yes | |
b) Association | yes | |
c) Deauthentication | yes | |
d) Disassociation | yes | |
e) Distribution | yes | |
f) Integration | yes | |
g) Data confidentiality | yes | |
h) Reassociation | yes | |
i) MSDU delivery | yes | |
j) DFS | yes | |
k) TPC | yes | |
l) Higher layer timer synchronization (QoS facility only) | yes | |
m) QoS traffic scheduling (QoS facility only) | yes | yes |
5.4 Overview of the services
在分布系统(DS)中传递消息时,分布服务需要知道对于给定的IEEE 802.11站点(STA)应访问哪个接入点(AP)。这一信息通过关联的概念提供给DS。关联对于支持基本服务集(BSS)间的移动性是必要的,但仅凭关联还不足以实现。关联足以支持无转换的移动性。关联是分布系统服务(DSS)中的一项服务。
在允许STA通过AP发送数据消息之前,它必须先与AP关联。关联的行为会调用关联服务,该服务为DS提供STA到AP的映射。DS使用此信息来完成其消息分布服务。本标准未规定关联服务提供的信息在DS内部如何存储和管理。
在健壮安全网络(RSN)中,关联的处理方式有所不同。在RSN认证架构(RSNA)中,IEEE 802.1X端口决定何时允许通过IEEE 802.11链路传输数据流量。一个IEEE 802.1X端口对应一个关联,且每个关联也对应一个IEEE 802.1X端口。IEEE 802.1X端口由一个IEEE 802.1X受控端口和一个IEEE 802.1X非受控端口组成。在IEEE 802.1X非受控端口上成功完成IEEE 802.1X认证过程之前,IEEE 802.1X受控端口会阻止两个STA之间的一般数据流量通过。一旦认证密钥管理(AKM)成功完成,就会启用数据保护以防止未经授权的访问,并且IEEE 802.1X受控端口会解除阻塞以允许受保护的数据流量通过。IEEE 802.1X请求者(Supplicant)和认证器(Authenticator)通过IEEE 802.1X非受控端口交换协议信息。预计大多数其他协议交换将使用IEEE 802.1X受控端口。然而,某些协议可能需要绕过授权功能并使用IEEE 802.1X非受控端口。
注:有关受控端口和非受控端口的讨论,请参阅IEEE Std 802.1X-2004。
5.4.3.1 认证
IEEE 802.11认证在IEEE 802.11站点(STA)之间的链路层运行。IEEE Std 802.11不提供端到端(从消息来源到消息目的地)或用户到用户的认证。
IEEE Std 802.11试图通过认证服务来控制局域网访问。IEEE 802.11认证是一种安全服务(SS)。此服务可由所有STA使用,以在与其通信的STA中建立其身份,无论是在扩展服务集(ESS)还是独立基本服务集(IBSS)网络中。如果两个STA之间未建立相互可接受的认证级别,则不应建立关联。
IEEE Std 802.11定义了两种认证方法:开放系统认证和共享密钥认证。开放系统认证允许任何STA进入分布式系统(DS)。共享密钥认证依赖于有线等效保密(WEP)来证明对WEP加密密钥的了解。IEEE 802.11认证机制还允许定义新的认证方法。
鲁棒安全网络关联(RSNA)还支持基于IEEE Std 802.1X-2004或预共享密钥(PSK)的认证。IEEE 802.1X认证利用可扩展认证协议(EAP)来相互认证STA和认证服务器(AS)。本标准未指定必须实现的EAP方法。有关IEEE 802.11 IBSS中IEEE 802.1X认证和PSK使用的描述,请参见8.4.4。
在RSNA中,IEEE 802.1X请求者和认证器通过IEEE 802.1X非受控端口交换协议信息。在IEEE 802.1X认证程序通过IEEE 802.1X非受控端口成功完成之前,IEEE 802.1X受控端口被阻止在两个STA之间传递一般数据流量。
基于基础设施基本服务集(BSS)和IBSS的鲁棒安全网络(RSN)使用开放系统认证算法,尽管在基于IBSS的RSN中,开放系统认证是可选的。RSNA不允许使用共享密钥认证。
附件D中提供了管理信息库(MIB)功能,以支持标准化的认证方案。
在任何给定时刻,一个STA可以与许多其他STA进行认证。
5.4.3.1.1 预先认证
由于认证过程可能比较耗时(这取决于所使用的认证协议),因此认证服务可以独立于关联服务被调用。
预先认证通常由已经与接入点(AP)(即之前已经与之进行过认证的AP)关联的站点(STA)执行。IEEE Std 802.11并不要求STA必须与AP进行预先认证。然而,在建立关联之前,必须进行认证。
如果将认证留到重新关联时才进行,这可能会影响STA在AP之间重新关联的速度,从而限制基本服务集(BSS)转换的移动性能。使用预先认证可以将认证服务的开销从时间关键的重新关联过程中移除。
预先认证的好处在于,它允许STA在需要快速重新关联到另一个AP时,能够迅速完成认证过程,因为认证信息已经事先与当前的AP或网络进行了交换和验证。这样,当STA移动到另一个AP的覆盖范围内并需要重新关联时,它就可以跳过认证步骤,直接进行关联,从而加快了整个切换过程。这对于需要高移动性和快速切换的网络环境来说尤为重要。
5.4.3.3 数据保密性
在有线局域网(LAN)中,只有物理连接到线缆的站点(STA)才能发送或接收局域网流量。然而,在无线共享介质中,不存在物理连接,局域网内或附近的所有STA以及某些其他射频(RF)设备都可能能够发送、接收和/或干扰局域网流量。任何符合IEEE 802.11标准的STA都能接收到其范围内的所有相同物理层(PHY)的IEEE 802.11流量,并能向范围内的任何其他IEEE 802.11 STA发送流量。因此,将单个无线链路(没有数据保密性)连接到现有的有线局域网可能会严重降低有线局域网的安全级别。
为了使无线局域网(WLAN)的安全性达到有线局域网设计中的隐含水平,IEEE Std 802.11提供了保护消息内容的能力。这一功能由数据保密性服务提供。数据保密性是一种安全服务(SS)。
IEEE Std 802.11提供了三种加密算法来保护数据流量:有线等效保密(WEP)、临时密钥完整性协议(TKIP)和计数器模式密码块链消息认证码协议(CCMP)。WEP和TKIP基于ARC4算法,而CCMP基于高级加密标准(AES)。为STA提供了一种手段来选择用于给定关联的算法。
所有IEEE 802.11 STA的默认数据保密性状态为“明文”。如果未调用数据保密性服务,则所有消息将以未受保护的形式发送。如果发送方认为这种策略不可接受,则不应发送数据帧;如果接收方认为这种策略不可接受,则应丢弃收到的任何数据帧。对于配置为强制数据保密性的STA接收到的未受保护的数据帧,以及使用接收STA上不可用的密钥进行保护的数据帧,将在不向逻辑链路控制(LLC)指示(或在AP接收到的“到DS”帧的情况下,不向分发服务指示)的情况下被丢弃。为了避免在重试被丢弃的帧上浪费无线介质(WM)带宽,如果接收到这些帧时没有帧检查序列(FCS)错误,则应对其进行确认。
5.4.3.4 密钥管理
增强的数据保密性、数据认证和重放保护机制需要新的加密密钥。本标准中定义的程序通过称为4路握手和组密钥握手的协议来提供新密钥。
5.4.3.5 数据源真实性
数据源真实性机制定义了一种手段,通过该手段,接收数据帧的站点(STA)可以确定是哪个STA传输了MAC协议数据单元(MPDU)。在健壮安全网络关联(RSNA)中,此功能是必需的,以防止一个STA伪装成另一个STA。此机制适用于使用计数器模式密码块链消息认证码协议(CCMP)或临时密钥完整性协议(TKIP)的STA。
数据源真实性仅适用于单播数据帧。这些协议不保证广播/多播数据帧的数据源真实性,因为使用对称密钥无法实现这一点,而公钥方法计算成本太高。
5.4.3.6 重放检测
重放检测机制定义了一种手段,通过该手段,一个站点(STA)在接收到来自另一个STA的数据帧时,可以检测该数据帧是否是未经授权的重传。此机制为使用计数器模式密码块链消息认证码协议(CCMP)或临时密钥完整性协议(TKIP)的STA提供保护。
5.7 Reference model

5.8 IEEE Std 802.11 and IEEE Std 802.1X-2004
当使用IEEE 802.1X认证服务器(AS)时,执行以下认证密钥管理(AKM)操作:
a) 在使用IEEE Std 802.1X-2004之前,IEEE Std 802.11假设认证器和认证服务器之间已经建立了安全通道。认证器与认证服务器之间的通道安全性不在本标准的范围内。
在关联之前,必须将认证凭据分发给请求者和认证服务器。
b) 站点(STA)通过被动监控信标帧或主动探测(如图5-11所示)来发现接入点(AP)的安全策略。如果使用IEEE 802.1X认证,则当AP的认证器发送EAP请求(如图5-12所示)或STA的请求者发送EAPOL-Start消息时,EAP认证过程开始。EAP认证帧通过认证器和请求者的非受控端口在请求者和认证服务器之间传递。这如图5-12所示。
c) 请求者和认证服务器相互认证并生成成对主密钥(PMK)。PMK通过安全通道从认证服务器发送到认证器。见图5-12。
利用EAPOL-Key帧的4路握手由认证器发起,用于完成以下任务:
— 确认一个活跃的对等方持有成对主密钥(PMK)。
— 确认PMK是当前的(即未过期)。
— 从PMK派生出一个新的成对临时密钥(PTK)。
— 在IEEE Std 802.11中安装成对加密和完整性密钥。
— 将组临时密钥(GTK)和GTK序列号从认证器传输到请求者,并在站点(STA)中安装GTK和GTK序列号,如果尚未安装,则在接入点(AP)中也进行安装。
— 确认加密套件的选择。
5.8.2.2 使用预共享密钥(PSK)的操作
当成对主密钥(PMK)为预共享密钥时,执行以下认证密钥管理(AKM)操作:
— 站点(STA)通过被动监控信标帧或主动探测(如图5-11所示)来发现接入点(AP)的安全策略。STA与AP关联并协商安全策略。此时,PMK即为预共享密钥。
— 当存在认证服务器(AS)时,使用EAPOL-Key帧的4路握手,这与IEEE 802.1X认证的过程相同。见图5-13。
— 组临时密钥(GTK)和GTK序列号从认证器发送到请求者,这与存在认证服务器的情况相同。见图5-13和图5-14。
5.8.5 PMKSA缓存
认证器和请求者可以缓存PMK安全关联(PMKSA),其中包括IEEE 802.1X状态。PMKSA可以因任何原因在任何时候从缓存中删除。
站点(STA)可以在(重新)关联请求帧中提供PMK或预共享密钥(PSK)标识符的列表。每个密钥标识符命名一个PMKSA;PMKSA可能包含一个单独的PMK。认证器在4路握手的消息1中指定所选的PMK或PSK密钥标识符。关于(重新)关联请求帧和4路握手消息1中要包含的密钥标识符的选择,不在本标准的范围内。