802.11 入门主干:从发现网络到安全建链

一、引言

IEEE 802.11架构由若干组成部分构成,这些部分相互协作以提供无线连接能力。这些组成部分还能够支持站点(Station)的移动性,并且这种移动性对于上层协议是透明的。

1.1 基本服务集(Basic Service,BSS)

基本服务集(BSS)是建立在IEEE 802.11局域网之上的基本结构单元,下图除了接入点(AP)之外,还有三个属于该BSS的站点。BSS覆盖一个射频区域,随着站点距离AP越来越远,其数据速率会下降,当它移出BSS覆盖范围后,不能再与该BSS中的其它成员通信。

采用 基础设施模式(Infrastructure mode) 的BSS需要一个AP。所有站点都通过AP进行通信,而不是彼此直接通信。 一个BSS具有一个服务集标识符(SSID)。

1.2 独立基本服务集(Independent BSS,IBSS)

独立基本服务集(IBSS)是IEEE 802.11局域网中最基本的一种类型。一个最小的IEEE 802.11局域网只由两个站点组成。在这种工作模式下,IEEE 802.11站点直接通信。 由于这种IEEE 802.11局域网通常无需预先规划、仅在需要WLAN时临时建立,因此通常被称为自组网(ad hoc network)。

由于IBSS由直接互联的站点组成,它也被称为点对点网络(peer-to-peer network)。按照定义,它只包含一个BSS,并且没有分布系统(DS)。IBSS中的成员数量可以是任意的,若要与IBSS外部通信,其中一个站点必须充当网关或者路由器。

1.3 分布系统(Distribution System,DS)

物理限制决定了站点之间能够支持的通信距离。对于某些网络,这个距离已经足够;而对于其他网络,则需要更大的覆盖范围。为此,可以将已有的独立BSS通过一个公共DS连接起来,形成扩展服务集(ESS),而不是继续使用单独的独立BSS。DS可以是有线的,也可以是无线的、LAN或者WAN。IEEE 802.11局域网架构的定义独立于DS的物理特性。

DS通过提供必要服务,使移动设备支持地址到目的地址的映射,以及多个BSS之间的无缝集成。数据通过AP在BSS与DS之间传输,需要注意的是AP本身也是站点(STA),因此也是可寻址实体。

1.1.4 扩展服务集(Extended Service Set,ESS)

扩展服务集(ESS)被定义为:两个或者更多的BSS通过一个公共DS连接在一起,这使得能够构建一个覆盖范围和复杂度都可任意扩展的无线网络。与BSS一样,在ESS中,所有分组必须经过某个AP。

对于LLC层而言,ESS网络看起来与BSS或者单一BSS网格相同。ESS中的站点可以直接通信,移动站点也可以在同一个ESS内从一个BSS移动到另一个BSS,而这一过程对LLC是透明的。

1.1.5 漫游(Roaming)

漫游是指无限客户端在不同小区或不同BSS之间移动时,仍能保持于网络连接的过程。接入点会将客户端从一个AP切换到另一个AP,而客户端对此是无感的。IEEE 802.11 标准并没有规定漫游具体应如何实现,但它定义了基本组成模块,其中包括主动扫描、被动扫描以及重新关联(re-association)过程。当 STA 从一个 AP 漫游到另一个 AP 时,必须与新的 AP 完成重新关联。

二、STA从"未接入"到"已接入AP"经历什么

接入点(AP)本质上是一个桥接设备,用来在移动站点(STA)和网络中的其他设备之间转发流量。一个移动站点在能够通过AP发送数据之前,必须进入正确的连接状态。

802.11连接状态分为三种:

(1)未认证,未关联;

(2)已认证,未关联;

(3)已认证,已关联;

并且只有当移动站点同时处于"已认证、已关联"状态时,AP裁回真正开始为它桥接数据流量。为了进入这个状态,移动站点和AP之间会交换一系列802.11管理帧,其过程如下图所示:

(1)STA向AP发送Probe Request(探测请求)

移动站点一开始既没有认证,也没有和任何AP建立关联。STA首先向AP发送Probe request(探测请求),用来发现自己附近有哪些802.11网络。这个请求里会带上该终端支持的数据速率,例如802.11n。由于 Probe Request(探测请求)是由移动站点发送,并且其二层目的地址和 BSSID 都被设置为 ff:ff:ff:ff:ff:ff,因此所有接收到该请求的 AP 都会进行响应。

(2)AP向STA回复Probe Response(探测响应)

接收到Probe Request(探测请求)的各个AP,会先检查移动站是否与自己至少存在一种共同支持的数据速率。如果双方的数据速率兼容,AP就会发送Probe Response(探测响应),在响应中通告自己的SSID(无线网络名称)、支持的数据速率、所需的加密类型以及AP的其它802.11能力信息。

移动站点会根据收到的Probe Response来选择与自己兼容的网络。这里的兼容可能取决于加密类型等因素。当发现兼容网络之后,移动站点就会尝试与这些兼容的AP进行底层的802.11认证。

需要注意的是,802.11 认证并不等同于 WPA2 或 802.1X 认证机制。后两者发生在移动站点已经完成 802.11 认证并建立关联之后。最初,802.11 认证帧是为 WEP 加密设计的;但由于这种安全机制后来被证明并不安全,因此已经被废弃。正因为如此,现在的 802.11 认证通常采用开放式(open)方式,并且几乎总是能够成功。

(3)STA向AP发送Authentication Open Seq:1

移动站点向AP发送一个底层为802.11认证帧,其中认证方式被设置为open(开放式),序列号被设置为0x0001。

(4)AP向STA回复Authentication Open Seq:2

AP接收到该认证帧后,会向移动站回复一个认证帧,其中认证方式同样设置为open(开放式),并指明序列号为0x0002。

如果AP从一个尚未完成认证的移动站那里收到的帧,不是认证帧或者探测请求帧(Probe Request),那么AP就会回复一个去认证帧(DeAuthentication Frame),将该移动站置于未认证、未关联状态。这样一来,该站点就必须从底层认证这一步重新开始整个关联过程。

在这个时刻,移动站点已经完成认证,但尚未完成关联。某些802.11能力允许移动站点同时与多个AP完成这种底层认证,这样在不同AP之间移动时,可以加快后续的关联过程。也就是说,一个移动站点可以同时对多个AP处于802.11已认证状态,但是在任意时刻,它只能通过一个AP保持活动关联并进行数据传输。

(5)STA向AP发送Association Request

一旦移动站点确定了自己想要关联的AP,它就会向该AP发送一个关联请求帧(Association Request)。这个关联请求中会包含所选择的加密类型,以及其它与AP兼容的802.11能力信息。

如果AP收到一个来自移动站的帧,而该移动站此时已经完成认证但尚未完成关联,那么AP会回复一个解除关联帧(DisAssociation Frame),使该移动站处于已认证但未关联状态。(AP告诉STA现在是这个级别,不要越级)

(6)AP向STA回复Association Response

如果关联请求中的各项信息与AP的能力相匹配,AP就会为该移动站创建一个关联标识(Association ID,AID),并返回一个带有成功信息的关联响应帧(Association Response),从而允许该移动站接入网络。此时该STA状态为已认证、已关联。

(7)联接建立

移动站已经成功与 AP 完成关联,可以开始进行数据传输了。

相关推荐
Vect__2 小时前
muduo网络服务器项目篇:服务器模块设计
运维·服务器·网络
wuxuand2 小时前
2026论文阅读——零日攻击无处遁形:一种用于网络入侵检测的新型对比损失函数
网络·人工智能·深度学习
a***71632 小时前
IDEA连接SQL server数据库(保姆级详细且必坑,包括防火墙、 SQL Server 网络配置等问题解决)
网络·数据库·intellij-idea
加农炮手Jinx2 小时前
Flutter for OpenHarmony:postgres 直连 PostgreSQL 数据库,实现 Dart 原生的高效读写(数据库驱动) 深度解析与鸿蒙适配指南
网络·数据库·flutter·华为·postgresql·harmonyos·鸿蒙
橙子也要努力变强2 小时前
共享内存通信
网络·c++·操作系统
橘子132 小时前
网络层IP协议
网络·tcp/ip·智能路由器
WX:ywyy67983 小时前
短剧付费转化系统:试看、卡点、解锁、会员全链路商业化设计
网络·短剧·短剧app·短剧系统·短剧系统开发·短剧app开发·短剧系统搭建
tritone3 小时前
最近在学习网络配置中的Port Forwarding(端口转发)技术,为了有个稳定的实验环境,我试用了阿贝云的免费虚拟主机和免费云服务器
服务器·网络·学习
橘子133 小时前
NAT,代理服务,内网穿透
网络·智能路由器