802.11协议精读(二)

入职后用半个月的时间略读过一次《802.11无线网络》,现在打算精读一次,所以,做好笔记。
此前读过的一些章节依然会迅速过掉。
这次依然打算只关注连接、验证的细节,对安全相关不做精读。
希望有特殊的感悟。

Chapter 4


数据帧,负责在工作站之间搬运数据,可能会因为所处的网络不同而有差异
控制帧,负责区域的清空(area clearing)、信道的取得(channel acquisition)以及载波监听的维护(carrier-sensing maintenance),并于收到数据时予以肯定确认(positive acknowledgement)
管理帧,负责监督,主要用来加入或者退出无线网络以及处理接入点之间关联的转移事宜

数据帧

Subtype 0000 Data; 0010 Null

Data(数据)

只有在基于竞争的访问周期才会被传送
这种帧只有一个目的,即在工作站间传送帧主体

Null(空)

由MAC标头与FCS标尾组成
在802.11网络中,工作站利用Null帧来通知接入点改变省电状态(将Null帧Frame Control字段的Power Management位设定为1)

控制帧

控制帧的Frame Control字段
Type位为01,ToDS和FromDS为0(控制帧只能由无线工作站产生)
More Fragment位为0,Retry位为0,More Data位为0(此位只用于管理帧和数据帧)
Protected Frame位为0(控制帧不会经过加密)

RTS
CTS

起初,CTS仅用于恢复RTS帧,如果之前没有RTS,就不会产生CTS
后来,CTS帧被802.11g保护机制用来避免干扰较旧的工作站

ACK

服务质量扩展功能放宽了对于数据帧的单一确认的要求
之后会看到响应机制对净吞吐量所造成的影响

PS-Poll

之后会细看省电模式的运作方式

CF-End
CF-End + CF-Ack
管理帧

使用omnipeek时发现其描述一共有11种管理帧:

beacon
probe request
probe response
authentication
deauthentication
association request
association response
reassociation request
reassociation response
disassociation
announcement traffic indication message

管理帧的主体(frame body)的大部分数据使用固定字段(fixed field),当然也有长度不定的字段,称为信息元素(information element)

长度固定的管理帧组件

不是指一定会出现在Beacon帧的字段,之前就理解错了,很低级的理解错误

Authentication Algorithm Number字段

身份验证算法编号,代表关联发生之前,802.11层的最初认证过程所使用的认证类型

目前只有两种值:0 开放系统身份验证 和 1 共享密钥身份验证

Authentication Transaction Sequence Number字段

身份验证处理序列号,用于追踪身份验证的进度

Beacon interval字段

移动式工作站必须仔细聆听Beacon信号
该字段长度16位,用来设定Beacon信号之间相隔多少时间单位,单位为TU,代表1024微妙

Capability Information字段

性能信息,长度16位,用来通告网络具备何种性能
这个字段也可以使用在Probe Request与Probe Response帧中
未实现性能通告中所有功能的工作站就无法加入该BSS

1 && 2.ESS/IBSS
3.Privacy 设定为1,代表需要使用WEP维持机密性
4.Short Preamble 短前导码
5.PBCC 封包二进制回旋码
6.Channel Agility 机动信道转换
7.Short Slot Time 802.11g,设定为1,说明支持较短的时隙
8.DSSS-OFDM frame construction相关
9.Contention-free pollable && Contention-free request

Current AP Address字段

便于关联与重新关联的进行
当工作站打算与不同的接入点建立关联时,此字段可用来转换关联以及取回所有缓存的帧

Listen interval字段

工作站与接入点关联时,会将listen interval记录下来
listen interval允许工作站指出接入点必须为它缓存帧多长时间 此段存疑
此段已理解,见ASS REQ Listen Interval字段

Association ID字段
Timestamp字段

用来同步BSS中的工作站

Reason Code字段

当对方不适合加入网络时,工作站会送出Disassociation(取消关联)或Deauthentication(解除身份验证)帧作为响应,这些帧包含Reason Code字段,表示对方做法有误

Status Code

用来表示某项操作成功或失败

管理帧的信息元素

通常包含一个Element ID字段、一个Length字段以及一个长度不定的字段

SSID

长度介于0~32字节

Supported Rates

最多包括8种速率,至少有一个是强制性速率
目前已将Extended Supported Rates(扩展支持速率)元素标准化,以便处理8种以上的速率

FH Parameter Set

调频参数集,FH,即frequency hopping,调频

在FH Parameter Set中有4个特别针对802.11调频式网络的字段

Dwell Time 驻留时间
802.11 FH网络会在信道之间跳跃,驻留时间即为在每个信道上的时间,单位TU

Hop Set 调频组合

Hop Pattern 调频模式

Hop Index 调频索引

DS Parameter Set

直接序列参数集。802.11 DS网络只有一个参数,网络所使用的信道数

TIM

即Traffic Indication Map,传输指示映射

将TIM信息元素传送到网络来指示有哪些工作站需要接收待传数据是此操作的一部分

TIM的内容是虚拟映射(virtual bitmap),这是由2008个位组成的逻辑结构。每个位分别绑定到一个关联标识符,当某个关联标识符有数据缓存时,相应的位会被设定为1

DTIM Count DTIM 计数
代表下一个DTIM(Delivery Traffic Indication Map,延迟传输指示映射)帧前即将传送的Beacon帧数
DTIM帧用来表示所缓存的广播与组播帧即将被传送
并非所有Beacon帧都为DTIM帧

DTIM Period DTIM 周期
代表两个DTIM帧之间的Beacon间隔数。DTIM会由此周期倒数至0

Bitmap Control(位映射控制) 与 Partial Virtual Bitmap (部分虚拟位映射)
Bitmap Control字段可进一步划分2个子字段,位0用来表示关联标识符0的待传状态,主要是保留给组播使用,其他7个位则是保留给Bitmap Offset(位映射偏移)子字段使用

为了节省带宽,可以通过Bitmap Offset子字段,只传送一部分"虚拟位映射"
Bitmap Offset是与虚拟位映射的开头处相关联

CF Parameter Set

无竞争参数集

IBSS Parameter Set
Country
Hopping Pattern Parameter 与 Hopping Pattern Table

调频模式参数 调频模式表

Request
Chanllenge Text

质询文本

Power Constraint

功率限制,允许网络向工作站描述所允许的最大传送功率
记录的整数是规定上的最大值减去实际使用的时的最大值,以dBm为单位

Power Capability

工作站以电池供电,在无线电波的性能上无法与接入点相提并论
并且,移动式工作站通常不需要像接入点那样以高功率传送
该信息元素让工作站能够报告本身最低与最高的功率,以dBm为单位

TPC Request

Transmit Power Control,传送功率控制
用来请求无线链路管理信息

TPC Request

知道整个链路的衰减情况可以帮助工作站了解如何调整传送功率
TPC Report信息元素散见于各种管理帧中
第一个字段表示传送功率,即包含此信息元素的帧的传送功率
第二个字段代表链路界限(link margin),即工作站所提出的安全界限值

工作站会根据这两个值来调整自身的传送功率

Supported Channel

用来记载所支持的子频段

Channel Switch Announcement

802.11h为网络加入了动态切换信道的能力
这个信息元素用来警告网络中的工作站即将变化信道

Channel Switch Mode 信道切换模式
当操作信道改变时,通信会突然中断。此字段被设定为1,已关联的工作站就会停止传送帧,直到信道切换完成;如果设定为0,则帧的传送不受限制

New Channel Number 新信道编号
切换后的新信道编号,不需要超过255

Channel Switch Count 信道切换计时
信道切换可以被预先安排时间
此字段记载了再过多少Beacon帧间间隔后进行信道切换
信道切换会在传送Beacon帧之前进行
0表示信道切换立即进行,无需多作警告

Measurement Request 与 Measurement Report
Quiet

开发动态选频的理由之一,是为了避免与特定的军用雷达技术彼此干扰
要找出是否有雷达或其他干扰源存在,接入点可以使用Quiet来暂时关闭该信道,以改善测量的质量

ERP

802.11g定义了增强速率物理层 extended rate PHY

RSN

Robust Security Network,即强健安全网络
802.11i大幅改善了安全性,所以有必要开发一种方式,让工作站之间能够彼此交换安全性信息

Extended Supported Rates
Wi-Fi Protected Access

Wi-Fi保护访问

管理帧的类型
Beacon
Probe Request
Probe Response
ATIM

即Announcement Traffic Indication Map
IBSS中没有接入点,因此无法依赖接入点来缓存帧
IBSS中的工作站如果为处于休眠状态的接收者缓存帧,就会在传递期间送出一个ATIM帧来通知对方有信息待传

Disassociation 与 Deauthentication

前者取消关联,后者解除身份验证
两者均包含一个固定字段,即Reason Code

Association Request

Capability Information(性能信息)用来指出工作站所要加入的网络类型
在接收关联请求之前,接入点会验证Capability Information、SSID以及Supported Rates等字段是否匹配网络参数
此外,接入点会记录工作站所使用的Listen Interval

Reassociation Request

与前者的差别在于,后者包含工作站当前所关联的接入点的地址
拥有这项信息可以让新旧接入点彼此联系以及转移接入点数据
转移项目包括先前连接的基站所缓存的帧

Association Response 与 Reassociation Response

响应过程,接入点会指定一个Association ID,指定方式因实现而异

Authentication

Authentication Algorithm Number用于选择算法
整个认证过程可能包含好几个步骤(与所使用的算法有关),因此认证过程中每个帧都有其序号

Action

802.11h加入了对Action帧的支持,用于触发测量动作

帧传送、关联和身份验证状态

这部分和状态机有关,aosp的代码里对应地也用到了,这部分细看

802.11的网络发展层次:

  1. 初始状态:未经认证且尚未关联

  2. 已经认证但尚未关联

  3. 已经认证且已经关联

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1nwnMKuJ-1622604949763)(状态图.PNG)]

除了在这本书上,没见过帧等级的说法

第1级帧

可以在任何状态中传递,它让802.11的工作站能够进行基本操作。
控制帧:RTS、CTS、ACK、CF-End、CF-End+CF-ACK
管理帧:Probe Request、Probe Response、Beacon、Authentication、Deauthentication、ATIM
数据帧:ToDS和FromDS都设为0的帧

第2级帧
身份验证之后的状态。这一级别的帧主要用来管理关联。
管理帧:Association Request/Response、Reassociation Request/Response、Disassociation

第3级帧
进入状态3,就可以使用分布式系统服务,也可以和接入点范围以外的对象进行通信
工作站还可以利用PS-Poll帧享受接入点所提供的省电服务
控制帧:PS-Poll
管理帧:Deauthentication
数据帧:任何帧

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值