Wlan——STA上线流程与802.11MAC帧讲解

目录

802.11MAC帧基本概念

802.11帧结构

802.11MAC帧的分类

管理帧

控制帧

数据帧

STA接入无线网络流程

信号扫描—管理帧

链路认证—管理帧

用户关联—管理帧

用户上线


802.11MAC帧基本概念

802.11协议在802家族中的角色位置

其中802.3标准属于以太网的一种帧格式(以太网还有一种帧格式为以太网帧)

而802.11标准为无线网卡发出的数据帧格式

802.11和802.3的LLC层都是一致的,只是对应的MAC层不一致

802.11物理层协议与MAC层协议的介绍

Wlan——802.11协议物理层关键技术和CSMA/CD机制的介绍_静下心来敲木鱼的博客-CSDN博客

数据链路层中,802.3标准使用CSMA/CD来协调不同设备对有线介质的竞争访问;802.11标准使用CSMA/CA来比实现无线的冲突避免

802.11帧结构

Frame Control 帧控制字段

Protocol

帧使用的MAC版本,只有一个802.11;编号为0

Type、Sub Type

一起确定帧类型(标识数据帧是控制帧、数据帧、管理帧)

具体帧类型后续讲解

To DS 、Frome DS

表示帧是否来自或去往一个分布式系统(DS—可以理解为就是AP)

TO为1表示此帧发往AP;Frome为1表示从AP发来的帧

More Frag

判断是否有更多的分片(0 表示是最后一个)

Retry

重传帧,表示帧是否重传

Pwr Mamt

表示SRA发完当前帧之后要进入的模式(也可以理解为省电开关是否开启);

1表示终端即将进入省电状态,0表示终端进入活动状态

More Data

表示AP上是否有缓存报文需要传递给省电状态的终端

Protected Frame

判断当前帧是否加密的(1 表示加密)

Order

表示帧是否按照顺序传输

Duration ID

实现CSMA/CA的网络分配矢量机制

表示STA占用多长时间的链路,避免冲突

Address

表示MAC地址;有4个Address字段,根据To/From DS不同的Address字段代表不同的意思

有线的MAC地址只有源目MAC地址,而无线有多个MAC地址(主要是多了无线信号的MAC地址,也就是BSSID) 

Seq Control

用于丢弃重复帧和重组分片

QoS Control

只存在于数据帧中,用来实现基于802.11e标准的Wlan QoS功能

Frame Body

帧主体,负责传输上层的有线在和,也成为数据字段

FEC

帧校验,用于检查接收帧的完整性


802.11MAC帧的分类

帧分类

802.11MAC帧主要分为管理帧、数据帧、控制帧

如果要抓取网卡发送的管理、控制帧,需要开启网卡的监听模式

管理帧

管理帧的主要作用

用于终端加入或退出无线网络,包含二层信息字段和信息元素

802.11MAC管理帧类型

控制帧

控制帧的主要作用

协助数据帧的交付,为其提供可靠性;只包含报文头部信息,没有帧主体

例如清除信道、请求信道、对单播帧的确认的操作都是通过控制帧完成的

802.11MAC控制帧类型

Wlan——802.11协议物理层关键技术和CSMA/CD机制的介绍_静下心来敲木鱼的博客-CSDN博客

ACK

ACK只对单播帧做回应,不回应组播帧和广播帧

数据帧

数据帧的作用

传输用户数据

如何调整终端的传输速率

可以在AC/胖AP上配置PowerLocal参数影响数据帧的传输速率

控制帧的传输速率为基本速率

数据帧的传输速率为协商速率(传输的实际速率一般为此数据的2/3)


STA接入无线网络流程

STA接入网络的流程主要有

1、STA关联无线信号(扫描、链路认证、关联)

2、对STA进行接入认证(WPA/WPA2-PSK、WPA/WPA2-802.1x、WEP认证)

3、通过加密算法对后续的数据报文进行加密(WEP、TKIP、CCMP算法)

4、STA通过DHCP获取地址,进行上网

5、STA进行认证下线

6、STA解除信号关联

其中STA关联无线信号通过管理帧来完成

用户的信号扫描请求是和AP进行交互的

用户的链路认证和关联对于瘦AP来说是STA和AC交互的,通过将STA的数据封装到CAPWAP隧道传输,不会重传(无论是本地转发还是隧道转发,都会通过CAPWAP隧道封装)

因此关联失败的情况需要考虑CAPWAP隧道的数据端口5247是否放通

后续的流程的关于STA和AP的报文都封装在802.11MAC数据帧中,并且使用802.11MAC控制帧来预约信道,避免数据发送冲突(具体交互流程如下)

Wlan安全——认证与加密方式(WPA/WPA2)_静下心来敲木鱼的博客-CSDN博客

Wlan安全——STA如何通过802.1x接入网络_静下心来敲木鱼的博客-CSDN博客

后续的接入认证根据认证方式不同,认证的报文交互也不一样

信号扫描—管理帧

用户无线信号的扫描—通过AP发送的Beach或者STA发送的Probe Request实现

信号扫描为广播帧

被动扫描(Beacon)

AP主动定期发送Beacon(默认100ms),终端通过被动接收Beacon帧来发现无线信号(包含AP的SSID、BSSID、速率等信息)

Beacon在AP所支持的信道上都会发送;并且传播范围为AP无线覆盖范围

终端收到后不需要回复,直接发送链路认证请求

主动扫描(Probe)

终端主动发起探测请求(Probe Request),AP收到后回复探测响应(Probe Response)

AP回应的报文携带信号的SSID、BSSID等信息

Probe在STA所支持的信道上都会发送请求

扫描帧的一些关键字段

Capability

表示是哪种无线类型(802.11n、802.11ac等)

无线用户发现信号都会有对应的信号强度

Data Rate

此无线信号的基本速率(存在于Beacon和Probe Response帧)

报文帧中的基本速率要保证终端和AP可以互相识别到

此速率越低所传输距离越远

Signal dBm

信号强度

如何调整AP的信号强度

可以在AC/胖AP上配置Coverage参数来影响AP发射信号的强度

Coverage影响的就是扫描帧(Beacon和Probe Response)的Signal dBm字段

STA就是通过接收到的beacon 和 prob response等管理帧中包含的Signal dBm字段来了解信号的强度

链路认证—管理帧

STA链路认证主要有开放系统认证、WEP共享密钥认证;此认证的作用是用来证明设备是无线设备

一般链路认证为开放系统认证,然后通过接入认证对设备进行认证(Web认证、PSK认证、802.1x等);接入认证成功后终端获取IP地址访问网络

用户关联—管理帧

终端发送关联请求(Association Request)和AP协商参数, 参数协商成功AP发送关联响应报文(Assocation Response)

用户上线

用户认证成功后会接入无线网络,然后在AP/AC会有相应的日志信息

通过常见的日志信息判断终端关联不上是否存在认证关联阶段的问题

如果用户上线失败,可以通过常见的日志信息和或者AC上的Wlan diag信息来查看用户上线失败原因

常见日志属性

Code 8或者 Code3的日志代表STA下线(解认证或解关联)

查看日志信息

锐捷设备

logging on 开启日志

show logging 查看常见日志信息

show wlan diag  AC上查看wlan diag信息(记录用户的上下线信息)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/100095.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

冠达管理:定增获批后会大涨吗?

近年来,跟着我国资本商场的稳步发展,定向增发(定增)已成为不少上市公司的一种重要融资方法,其比较于揭露发行股票,更能够满足少量出资者的融资需求。然而,对于很多出资者来说,一个问…

【Linux操作系统】深入探索Linux系统编程中的信号集操作函数

在Linux系统编程中,信号集操作函数是非常重要的工具,它们允许我们对信号进行管理和控制。本篇博客将详细介绍Linux系统编程中的信号集操作函数,包括信号集的创建、添加和删除信号,以及对信号集进行操作的常用函数。通过深入了解这…

华为云Stack的学习(一)

一、华为云Stack架构 1.HCS 物理分散、逻辑统一、业务驱动、运管协同、业务感知 2.华为云Stack的特点 可靠性 包括整体可靠性、数据可靠性和单一设备可靠性。通过云平台的分布式架构,从整体系统上提高可靠性,降低系统对单设备可靠性的要求。 可用性…

android cocoscreator 检测模拟器还是真机

转载至 一行代码帮你检测Android模拟器 具体原理看原博主文章,这里只讲cocoscreator3.6的安卓工程怎么使用 1.新建一个com.lahm.library包,和com.cocos.game同目录,如图示 那四个文件的代码如下: EmulatorCheckUtil类&#…

OS 多进程图像

schedule()函数为切换进程函数,pCur.state被置为阻塞态,放入磁盘等待队列 pCur和pNew都为对应pcb(为了使参与并发执行的每个程序,包含数据都能独立地运行,在操作系统中必须为之配置一个专门的数据结构,称为…

解决`java.lang.NoClassDefFoundError`在Nacos和Spring Boot集成中的问题

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

函数栈帧的创建与销毁

目录 引言 基础知识 内存模型 ​ 寄存器的种类与功能 常用的汇编指令 函数栈帧创建与销毁 main()函数栈帧的创建 NO1. NO2. NO3. NO4. NO5. NO6. main()函数栈帧变量的创建 调用Add()函数栈帧的预备工作——传参 NO1. NO2. NO3. Add()函数栈帧的创建 …

机器学习:什么是分类/回归/聚类/降维/决策

目录 学习模式分为三大类:监督,无监督,强化学习 监督学习基本问题 分类问题 回归问题 无监督学习基本问题 聚类问题 降维问题 强化学习基本问题 决策问题 如何选择合适的算法 我们将涵盖目前「五大」最常见机器学习任务&#xff1a…

Python Opencv实践 - 图像中值滤波

import cv2 as cv import numpy as np import matplotlib.pyplot as pltimg cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR) print(img.shape) pixel_count img.shape[0] * img.shape[1] print(pixel_count)#为图像添加椒盐噪声 #参考资料&#xf…

如何通过振动判断设备健康度?以PreMaint设备数字化平台为例

在工业生产过程中,设备的健康状况直接关系到生产效率和安全。而振动分析作为一种重要的设备健康监测手段,可以通过监测设备的振动情况来判断其健康状况。本文将以PreMaint设备数字化平台为例,探讨如何通过振动分析来判断设备的健康度&#xf…

电商系统架构设计系列(九):如何规划和设计分库分表?

上篇文章中,我给你留了一个思考题:分库分表该如何设计? 今天这篇文章,我们来聊一下如何规划和设计分库分表,以及要考虑哪些问题。 引言 当要解决海量数据的问题,就必须要用到分布式的存储集群了&#xff…

ROS2 中的分布式系统

一、说明 当您运行 ROS2 应用程序时,通常需要在不同机器的不同位置运行 ROS2 节点。由于 ROS2 在抽象的 DDS 层中使用节点之间的通信,因此我们可以非常轻松地安排通信。 为了充分理解 ROS2 的架构,我建议您熟悉本文。 出于本文的目的&#xf…

江西南昌电气机械三维测量仪机械零件3d扫描-CASAIM中科广电

精密机械零部件是指机械设备中起到特定功能的零件,其制造精度要求非常高。这些零部件通常由金属、塑料或陶瓷等材料制成,常见的精密机械零部件包括齿轮、轴承、螺丝、活塞、阀门等。精密机械零部件的制造需要高精度的加工设备和工艺,以确保其…

微信小程序使用npm引入三方包详解

目录 1 前言2 微信小程序npm环境搭建2.1 创建package.json文件2.2 修改 project.config.json2.3 修改project.private.config.json配置2.4 构建 npm 包2.5 typescript 支持2.6 安装组件2.7 引入使用组件 1 前言 从小程序基础库版本 2.2.1 或以上、及开发者工具 1.02.1808300 或…

Mac常见恶意软件再现,办公应用程序潜藏风险如何防范?

Mac电脑正受到臭名昭著的XLoader恶意软件的新变种的攻击,该恶意软件已被重写为在最好的MacBook上本地运行。 虽然XLoader至少从2015年开始出现,但在2021年发现macOS变体之前,它主要用于针对Windows PC。然而,该版本是作为Java程序…

【Redis从头学-7】Redis中的Set数据类型实战场景之用户画像去重、共同关注、专属粉丝

🧑‍💻作者名称:DaenCode 🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。 😎人生感悟:尝尽人生百味,方知世间冷暖。 📖所属专栏:Re…

【leetcode 力扣刷题】移除链表元素 多种解法

移除链表元素的多种解法 203. 移除链表元素解法①:头节点单独判断解法②:虚拟头节点解法③:递归 203. 移除链表元素 题目链接:203.移除链表元素 题目内容: 理解题意:就是单纯的删除链表中所有值等于给定的…

0基础学习VR全景平台篇 第88篇:智慧眼-成员管理

一、功能说明 成员管理,是指管理智慧眼项目的成员,拥有相关权限的人可以进行添加成员、分配成员角色、设置成员分类、修改成员以及删除成员五项操作。但是仅限于管理自己的下级成员,上级成员无权管理。 二、前台操作页面 登录智慧眼后台操…

公文校对的艺术:如何确保你的正式文件零错误?

公文是政府和企业中最重要的正式文件之一。一个小小的错误,不仅会影响公文的专业性,甚至可能带来法律和经济后果。因此,如何进行精准的公文校对成为了一门必不可少的技能。接下来,我们将分享一些专业的公文校对技巧,并…

Docker容器与虚拟化技术:容器运行时说明与比较

目录 一、理论 1.容器运行时 2.容器运行时接口 3.容器运行时层级 4.容器运行时比较 5.强隔离容器 二、问题 1.K8S为何难以实现真正的多租户 三、总结 一、理论 1.容器运行时 (1)概念 Container Runtime 是运行于 k8s 集群每个节点中&#xff…