tomorrow.cyz@gmail.com

1. OSI模型

2. wlan

2.1 基本概念

wlan

wlan是wireless local area networt的简称,是在有限区域内通过无线通信将两台或者多台设备连接在一起的无线计算机网络。

关键特性 1)局域网 2)无线(可以移动)

WiFi

大部分wlan都是基于IEEE 802.11实现,这种基于802.11的无线局域网技术称为WiFi。

无线频谱

无线设备被限定在某个特定频段(frequency band)上操作。每个频段都有相应的频宽 (bandwidth),亦即该频段可供使用的频率空间总和。频宽是评价链路(link)数据传输能力的基准。较大的频宽可以传输更多的信息。

无线频谱(radio spectrum)的使用受到主管当局严格控管。

WiFi目前主要工作在2.4GHZ和5GHZ

STA 和AP

STA是Station的简写,指的是有能力使用802.11协议的设备,比如手机、电脑等。

AP是access point的简称,是用来帮助Wi-Fi设备接入有线的网络硬件。

BSS

BSS是basic service set的简称,是802.11网络的基本原件(building block),由一组彼此通信的工作站构成。BSS有两种形式

Independant BSS简称IBSS,它一般是少数几个工作站针对特定目的而组成的临时网络,有时也叫ad hoc network。它是一种去中心化的网络。

Infrastructure BSS,任何设备之间的通信,都需要通过AP。

BSSID

BSSID是每个BSS的唯一标识(48位),Infrastructure BSS的BSSID一般是AP的Mac地址,不可配置。ad hoc的BSSID会随机产生。

ESS

ESS是Extended service sets的简称,它是指通过骨干网将几个BSS连接在一起。

SSID

所有位于同一个ESS的AP将会使用同一个服务组合识别码,这个识别码就是SSID(Set Identifier)。

2.2 wlan的类型

2.2.1 infrastructure

infrastructure是大部分WiFi网络的部署方式,在infrastructure方式中,所有的STA必须通过AP才能通信。这是一种典型的星型拓扑。

2.2.2 Peer-to-Peer(ad hoc)

在这种方式下,无线设备可以直接通信,不需要通过AP。这种能够在不便利用现有网络措施的情况下,提供终端之间的相互通信。

在ad hoc中,每个设备都具有路由和转发功能。

这是一种自治的,去中心化的网络。任何节点的故障都不会影响网络的运行。

因为要求任何节点的故障不影响网络的运行,多节点ad hoc对网络管理的要求较高。比如说ad hoc中,dhcp就比较难以实施。

ad hoc目前主要应用于军事通信,移动会议,紧急服务和灾难恢复和无线传感器网络。

ad hoc并没有固定的拓扑结构。

2.2.3 wlan mesh

顾名思义,wlan mesh是一种wlan的网状实现。在Infrastructure wlan中,每个STA均通过AP来访问网络,而AP又必须与有线网络相连接,这样就极大地制约了wlan的覆盖范围。

wlan mesh去掉了节点之间的布线需求。

wlan mesh中,一个节点可以连接至少两个其它的节点,

常见应用,大型场所的wifi覆盖,如google wifi 和Eero无线路由器。

2.3 802.11协议

2.3.1 802.11协议在osi模型中的位置

2.3.2 802.11协议族

2.3.3 安全

  • WEP OpenSystem

SharedKey

  • WPA/WPA2

AP/STA在4-wayshake前各自都知道密码(也就是用户连接某SSID输入的密码) 1)AP(Authenticator)在1/4的时候把自己的随机数(ANonce)传给STA,STA在收到ANonce后,已经可以生成PTK

2)2/4的时候把自己的随机数(SNonce)传给AP,同时加了MIC(对应于PTK中的KCK,也就是秘钥确认秘钥)。AP收到SNonce以后,就可以生成PTK了,将收到的MIC和自己生成的MIC比较进行完整性校验,如果校验失败,握手失败。校验成功,AP生成PTK和GTK(GroupTransient Key,用来加密组播和广播)

3)3/4中将GTK和MIC一起发给STA,因为此时双方都已经知道PTK,所以会对
GTK进行KEK加密。 4)STA发送ACK进行确认

参考文档

802.11无线网络权威指南

华为-WLAN-MESH技术白皮书


dlmu2001

stay foolish, stay hungry!