Wi-Fi 技术学习:802.11ax BSS 着色原理与性能优化解析

802.11ax 通过 OFDMA 等技术提升了频谱利用率,同时也借助 BSS 着色等机制提升了空间复用效率。而本文将聚焦于 BSS 着色,尝试用更易懂的方式进行讲解。

Wi-Fi 是半双工通信

我们都知道,802.11 通信是半双工的,这意味着同一时间一个站点只能处于发送或接收状态,无法同时收发,因此被称为 "半双工"。

CSMA/CA(带冲突避免的载波侦听多路访问)

由于 802.11 的通信机制,每个站点必须等待其他站点完成通信后才能开始发送数据,这一过程由 CSMA/CA 机制实现。

CSMA/CA 也存在一些自身的挑战,例如:

  • 竞争开销(Contention overhead)
  • 信道时间利用率低(Airtime utilization),会消耗大量带宽

我们不深入讲解 CSMA/CA 的工作细节,而是聚焦于 802.11ax 中的 BSS 着色技术。BSS 着色并非替代 CSMA/CA,而是对它的优化,使其效率更高。

OBSS(重叠基本服务集)

重叠基本服务集(OBSS)指的是下图中可见的服务集,即附近其他接入点,或连接到这些接入点的客户端设备,都可以被彼此感知到。

如果两个基本服务集(BSS)工作在同一信道上,CSMA/CA 机制会同时影响这两个重叠的 BSS。客户端和接入点都需要竞争信道资源,等待信道空闲,而 BSS 着色技术正是为了解决这个问题,从而提升整体性能。

BSS 内帧与 BSS 间帧

BSS 着色并非全新概念,它在 802.11ah 标准中就已出现。802.11ax 标准整合了多种技术,BSS 着色便是其中之一。

BSS 着色让设备能够通过帧 MAC 头识别出自身所属的 BSS,以区分重叠的 BSS(OBSS)。这里的 "着色" 并非指实际的颜色(如蓝色或白色),而是一个 6 比特的字段,取值范围为 0 到 63。

(BSS colour information field)

BSS 内帧(Intra-BSS frame)

在传统的 CSMA/CA 机制下,设备需要持续侦听信道,只有当所有设备都处于静默状态时才能发送数据。

BSS 着色让站点能够判断发送帧的站点是来自自身 BSS 还是重叠 BSS(OBSS)。如果帧的着色比特与自身 BSS 的着色比特相同,该帧就会被判定为 BSS 内帧,站点仍需像传统流程一样竞争信道。

BSS 间帧(Inter-BSS frame)

如果帧的着色与接收站点的 BSS 着色不同,该帧会被判定为 BSS 间帧。

这正是 802.11ax 与传统标准的核心区别:在传统标准中,无论帧来自同 - BSS 还是 OBSS,站点都必须竞争信道;而在 802.11ax 中,当站点识别出帧来自 OBSS 时,会直接忽略它,不再竞争信道,而是继续自身的发送过程。

这种机制允许两个位于不同 BSS 的站点,在同一信道上同时进行通信。

(BSS 间帧 vs BSS 内帧)

BSS 着色决策流程:

  1. 站点检测到射频能量(RF energy)
  2. 进行空闲信道评估(CCA):判断能量是否高于 - 82 dBm 或低于该阈值。
  3. 如果 RSSI 大于 - 82 dBm,站点会检查自身是否能解调出该流量。
  • 如果可以,它会读取帧头以获取该帧的着色信息。
  • 如果着色与自身 BSS 相同 → 判定为BSS 内帧,并执行常规的 CSMA/CA 流程。
  • 如果着色与自身 BSS 不同 → 判定为BSS 间帧
  1. 对 BSS 间帧进行二次阈值检查:判断其信号强度是否高于 - 62 dBm 或低于该阈值。
  • 如果信号强度大于 - 62 dBm → 表示该重叠 BSS 距离过近,信道将被视为 "忙" 状态。
  • 如果信号强度小于 - 62 dBm → 站点不会为这次传输竞争信道,而是继续自身的发送过程。

(BSS 着色决策流程)

BSS 着色(或空间复用)的优势:

  • 提升网络容量
  • 自适应空闲信道评估(CCA):可以动态调整信号强度阈值
  • 减少信道竞争问题
  • 同 BSS 信号:使用较低的 RSSI 阈值来触发退避,从而减少同 BSS 内的碰撞
  • 重叠 BSS(OBSS)信号:使用较高的 RSSI 阈值来触发退避,从而支持更多并发连接
  • 提供一定程度的公平性
相关推荐
玩具猴_wjh2 小时前
多维度筛选 + 分页优化
笔记·学习
Trouvaille ~2 小时前
【Linux】网络进阶:内网穿透、DNS与ICMP实战
linux·运维·服务器·网络·dns·nat·icmp
开开心心就好2 小时前
实用PDF批量加马赛克,抹除敏感信息绿色版
java·linux·开发语言·网络·人工智能·pdf·word2vec
im_AMBER2 小时前
Leetcode 123 二叉树的层平均值 | 二叉树的右视图 | 二叉树的层序遍历
数据结构·学习·算法·leetcode·二叉树
礼拜天没时间.2 小时前
Docker Compose 实战:从单容器命令到多服务编排
运维·网络·docker·云原生·容器·centos
乾元2 小时前
模型提取:黑盒环境下如何窃取对手的 AI 模型参数
网络·人工智能·安全·web安全·机器学习·架构·系统架构
冰西瓜6002 小时前
深度学习的数学原理(九)—— 神经网络为什么能学习特征?
深度学习·神经网络·学习
志栋智能2 小时前
AI驱动的带内自动化巡检:编织IT生态的“智慧神经网络”
大数据·运维·网络·人工智能·神经网络·自动化
键盘鼓手苏苏2 小时前
Flutter for OpenHarmony:injector 轻量级依赖注入库(比 GetIt 更简单的选择) 深度解析与鸿蒙适配指南
css·网络·flutter·华为·rust·harmonyos