802.11无线权威指南读书笔记(4)802.11成帧细节

2023-12-04 05:59

本文主要是介绍802.11无线权威指南读书笔记(4)802.11成帧细节,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据帧(data frame)

负责用户数据的传递,位于帧主体(frame body)中。

数据帧基本结构

在这里插入图片描述
下面是数据帧的各种分类方式,我们主要看基于竞争的服务,就只有2种,如下图。
在这里插入图片描述

Frame Control(控制帧)

各字段含义之前有写过,需要注意ToDS和FromDS,根据这2bit来判断数据方向。
Duration(持续时间)
用Duration来记载NAV的值。遵循以西4项规范
1.无竞争周期Duration必须为32768,适用于无竞争周期任何数据帧
2.目的地址为组播、广播的帧,Duration为0,因为不需要确认
3.对于Frame Control中More Fragment(更多片段)位为0的数据帧Duration只需设置为SIFS+ACK的长度,因为这是最后一段,没必要在继续锁定信道。
4.对于Frame Control中More Fragment(更多片段)位为1的数据帧Duration需设置为下一片段所需时间+3*SIFS+2*ACK的长度,因为这是不是最后一段,需要继续锁定信道。
在这里插入图片描述
在这里插入图片描述

ToDS与FromDS

下面是ToDS与FromDS这2bit决定Address字段代表意义
在这里插入图片描述

ToDS=0,FromDS=0

这种帧用于IBSS(独立基本服务集),那种没有接入点的网络
在这里插入图片描述

ToDS=1,FromDS=0,来自AP的帧

在这里插入图片描述
在这里插入图片描述

ToDS=0,FromDS=1,传送至AP的帧

在这里插入图片描述
在这里插入图片描述

ToDS=1,FromDS=1,从AP到AP

在这里插入图片描述
在这里插入图片描述

数据帧类型
Data

在基于竞争的周期访问这种帧用于传递用户数据

Null

这种帧由MAC头和FCS组成,工作站用Null帧通知接入点进入省电状态,同时Frame Control的Power Management位置1
在这里插入图片描述

控制帧

控制帧用于协助数据帧传递,管理无线媒介访问以及提供MAC层可靠性。

控制帧的Frame Control

所有控制帧使用相同的Frame Control,如下
在这里插入图片描述

RTS(请求发送)

RTS用于获得媒介控制权。
在这里插入图片描述
在这里插入图片描述

CTS(清除发送)

CTS用于回复RTS,在802.11g中,用来避免干扰较旧的工作站。
在这里插入图片描述
在这里插入图片描述

ACK(确认)

用于帧的确认,对于最终ACK帧的持续时间直接设置为0
在这里插入图片描述
在这里插入图片描述

PS-Poll(省电-轮询)

工作站从省电模式苏醒后,需要向AP发生PS-Poll帧来取AP缓存帧,其中AID作用为AP标识不同的工作站
在这里插入图片描述

管理帧

管理帧用于无线网络的建立,比如认证、关联等。

管理帧结构

所有管理帧MAC头一样,管理帧用帧主体中的固定字段(fixed field,长度固定的字段)信息元素(information element,长度不固定的数据块)与其他系统交换信息。
在这里插入图片描述

长度固定的管理帧组件

这种组件长度与次序固定,所以不需要字段标头界定

Authentication Algorithm Number 字段

Authentication Algorithm Number(身份认证算法编号)位占用两个字节,表示关联之前,802.11层认证使用的认证类型,目前2种
在这里插入图片描述

Authentication Transaction Sequence Number字段

认证过程有好几个步骤,此字段用来标号认证步骤,1~65535之间。

Beacon interval字段

占2个字节,标识Beacon的发生时间间隔,单位是1024us。

Capability information字段

占2个字节,Capability information(性能信息)字段,用来告知设备具备何种性能,工作站通过这些位判断自己能否支持该BSS所有的功能,未实现性能通告的工作站无法加入该BSS
在这里插入图片描述

  • ESS/IBSS(扩展服务集/独立基本服务集)
    此2位互斥,标识此网络是ESS还是IBSS
  • Privacy(保密性)
    设为1,标识需要使用WEP/WPA加密,否则不需要
  • short Preamble(短前导码)
    802.11b增加此字段为了支持高速直接序列扩频物理层(high-rate DSSS),为1,支持短前导码,否则不支持。
  • PBCC(封包二进制回旋码)
    802.11b增加此字段为了支持高速直接序列扩频物理层(high-rate DSSS),为1,支持封包二进制回旋码调制机制,否则不支持。
  • Channel Agility(机动信道转换)
    802.11b增加此字段为了支持高速直接序列扩频物理层(high-rate DSSS),为1,支持机动信道转换选项,否则不支持。
  • Short Slot Time(802.11g)
    为1,代表使用802.11g所支持的较短时隙
  • DSSS-OFDM(802.11g)
    为1,代表使用802.11g的DSSS-OFDM帧构造选项
Current AP Address字段

6个字节,STA用词字段表明当前要关联的AP的MAC地址。

Listen interval字段

2字节,以Beacon interval为单位计算STA会多长时间想AP取缓存帧

Association ID字段

2字节,1~2007可用

Timestamp字段

8字节,时间戳

Reason Code 字段

2字节,当对方不适合加入网络,STA会发出Disassociation(取消关联)或Deauthentication(解除身份验证)帧作为响应,包含原因代码。

Status Code 字段

2字节,标识某项操作成功或者失败

管理帧的信息元素

管理帧的信息元素是边长组件,由1个Element ID(元素标识符)、一个Length(长度)以及不定长字段组成。如下所示
在这里插入图片描述
这里太多,不在列举,参考书P105

管理帧的类型
Beacon帧

Beacon帧是用于声明某个网络的存在,要加入该网络的必须参数,在基础结构型网络中,AP负责传送Beacon帧,下面是Beacon帧的结构,不一定所有字段都会使用到。
在这里插入图片描述

Probe Request帧

STA会用Probe Request(探测请求)帧主动扫描附件有哪些802.11网络,格式如下,SSID和Supported Rates字段必须,如果是兼容任何网络的SSID则使用broadcast SSID(广播形式的服务及标识符)。
在这里插入图片描述

Probe Response帧

如果Probe Request帧所探测的网络与之兼容,则该网络会以Probe Response帧响应。如下
在这里插入图片描述

Disassociation帧与Deauthentication帧

Disassociation(取消关联)帧用来终结一段关联关系,而Deauthentication(接触身份验证)帧用来终结一段认证关系,均包含Reason Code(原因代码)。
在这里插入图片描述

Association Request(关联请求)帧

Capability Information(性能信息)位用来指出移动工作站所欲加入的网络类型。在接受连接要求之前,基站会验证 Capability Information、 SSID 以及(Extended)Supported Rated等位是否符合网络参数。此外,基站也会记录工作站所使用的 Listen Interval(聆听间隔;即移动工作站每隔多久聆听一次 Beacon 帧,以监视 TIM 信息)。
在这里插入图片描述

Reassociation Request(重关联请求)帧

当在不同基本服务区域之间游走的STA若要再次加入分布式系统或者STA暂时离开接入点所覆盖范围,之后重新加入时也必须重新关联。
association Request与 Reassociation Request之间的差别在于,后者包含移动工作站目前所连接之基站的地址(Current AP Address)。拥有这项信息可让新旧基站彼此联系,以及交接连接数据。交接项目包括先前连接之基站所暂存的帧。
在这里插入图片描述

Association Response 与 Reassociation Response帧

分别用于回应Association Request 与 Reassociation Request帧,区别只是Frame Control字段的subtype字段而已,响应过程中会给STA分配一个AID(关联标识符)
在这里插入图片描述

Authentication帧

802.11早期使用共享密钥和Authentication帧进行身份验证,到了802.11i有新的身份验证算法,且与共享密钥身份验证不兼容,所以Authentication Algorithm Number(身份认证演算法编号)位用于选择演算法。Authentication Transaction Seq.No用于记录认证郭晨中每个帧序号,应为整个过程可能包含好几个步骤,这与算法有关,Status Code与Challenge Text因验证算法而异。
在这里插入图片描述

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

工作站STA有如下3种状态
1.初始状态,未经认证且未关联
2.已经认证且尚未关联
3.已经认证且已经关联
如下图
在这里插入图片描述
上图把帧划分成了3种等级,在状态 1 可以传递第 1 级帧;在状态 2 可以传递第 1 与 2 级帧;在状态 3 则可以传递第 1、 2 与第3级帧。

第1级帧

第 1 级帧可以在任何状态中传递,它让 802.11 的工作站得以进行基本作业。 在 IBSS 当中,控制帧主要用来依循 CSMA/CA 规则,以及传送帧。工作站也会使用第 1 级帧来寻找基础结构型网络,并与之进行身份认证。表 4-11 列出了属于第 1 级的各种帧。
在这里插入图片描述
在这里插入图片描述

第2级帧

工作站只有在经过身份认证之后才能够发送第 2 级帧,而且第 2 级帧只能使用于状态 2与状态 3。第 2 级帧主要用来管理关联。关联或重新连接成功后,工作站就会进入状态 3;如果连接失败,则工作站依然处于状态 2。工作站收到未经认证的作站所传来的第 2 级帧时,就会应答一个 Deauthentication(解除身份认证)帧,将对方推回状态 1。表 4-12 列出了所有的第 2 级帧。
在这里插入图片描述

第3级帧

第 3 级帧的使用时机是在工作站认证成功并与AP关联之后。一旦工作站进入状态 3,就标识连接上AP。在状态 3,工作站还可以利用PS-Poll 帧享受AP所提供的省电服务。表4-13列出了不同类型的第 3 级帧。
如果收到的帧来自一个已经验证但尚未关联的工作站,AP就会响应Disassociation(解除关联)帧,迫使工作站回到状态 2。如果发出帧的工作站尚未经过认证,则AP会响应Deauthentication(解除认证)帧,迫使工作站回到状态 1。
在这里插入图片描述

这篇关于802.11无线权威指南读书笔记(4)802.11成帧细节的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/452384

相关文章

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

SpringMVC高效获取JavaBean对象指南

《SpringMVC高效获取JavaBean对象指南》SpringMVC通过数据绑定自动将请求参数映射到JavaBean,支持表单、URL及JSON数据,需用@ModelAttribute、@Requ... 目录Spring MVC 获取 JavaBean 对象指南核心机制:数据绑定实现步骤1. 定义 Ja

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

SQLite3命令行工具最佳实践指南

《SQLite3命令行工具最佳实践指南》SQLite3是轻量级嵌入式数据库,无需服务器支持,具备ACID事务与跨平台特性,适用于小型项目和学习,sqlite3.exe作为命令行工具,支持SQL执行、数... 目录1. SQLite3简介和特点2. sqlite3.exe使用概述2.1 sqlite3.exe

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

全屋WiFi 7无死角! 华硕 RP-BE58无线信号放大器体验测评

《全屋WiFi7无死角!华硕RP-BE58无线信号放大器体验测评》家里网络总是有很多死角没有网,我决定入手一台支持Mesh组网的WiFi7路由系统以彻底解决网络覆盖问题,最终选择了一款功能非常... 自2023年WiFi 7技术标准(IEEE 802.11be)正式落地以来,这项第七代无线网络技术就以超高速

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot