Chapter8 WLAN

概述

802.11网络有两种使用模式

image-20250601171613015

  • 基础设施模式/有架构模式

    • 每个客户端与一个接入点(AP—Access Point)连接,接入点与其他网络连接
    • 几个接入点可通过有线网络连接形成扩展的802.11网络
    • 基本服务集BSS=一个基站(即AP) + 若干个移动站
    • BSS内的站之间可通信,与BSS外的通信需通过基站进行
    • 服务集标识符SSID:每个AP分配一个≤32 字节的SSID和一个信道
    • 关联:移动站与AP建立连接,加入该基本服务集
      • 被动扫描
        • 移动站等待接收AP周期性发出的信标帧
        • 信标帧中包含有若干系统参数(如服务集标识符 SSID 以及支持的速率等)
      • 主动扫描
        • 移动站主动发出探测请求帧,等待 AP 发回的探测响应帧
    • 重新关联:移动站改变其首选AP,即加入另一BSS
      • 移动站从一个BSS漫游至另一个BSS时

    image-20250601190305823

  • 自组织网络模式

    • 多台计算机相互连接形成网络,相互间发送帧
    • 无接入点

Wi-Fi(Wireless fidelity)

  • 改善基于IEEE 802.11的无线网络产品之间的互通性
  • 使用IEEE 802.11系列协议的局域网就称为Wi-Fi
  • 热点:在公共场所提供Wi-Fi接入Internet服务的地点

802.11协议栈

  • 客户端和AP的协议相同
  • MAC子层决定如何分配信道
  • LLC子层屏蔽IEEE802协议之间的差异,同时承上启下

IEEE 802.11 物理层

  • 无线频段
    • 多数无线频段由政府管理和分配,需license才可使用
    • 预留了无需许可即可免费使用的频段
      • ISM频段:ISM—-Industrial, Scientific, Medical
      • 限制:发射功率 < 1Watt

802.11物理层的几种实现方法

  • 红外IR 早期,已很少使用
  • 2.4GHz跳频扩频FHSS 早期,已很少使用
  • 直序扩频DSSS
  • 正交频分复用(OFDM)
  • 多入多出(MIMO)

IEEE 802.11 MAC层

Carrier Sense Multiple Access / Collision Avoidance

WLAN使用CSMA/CA协议

  • 无线网络适配器的接收信号强度远小于发送信号强度,像CSMA/CD协议那样进行碰撞检测(边发送边听)比较困难
  • 隐蔽站问题:无线信号覆盖范围有限,即使能够进行碰撞检测,也可能检测不到碰撞

802.11的MAC层提供两种服务

  • 分布协调功能 DCF
    • 竞争式服务
    • 各站按照CSMA/CA协议竞争使用信道
  • 点协调功能 PCF
    • 非竞争式服务
    • 集中控制方法,由AP逐个轮询各站发送数据,避免了碰撞的产生

CSMA/CA主要特性

  • 发送前退避 → 同时检测到信道空闲的站退避时间长度不同
  • 发送站/接收站之间RTS/CTS握手 → 使隐藏站得知数据传输
  • 虚拟载波监听与NAV配合使用 → 等待站无须持续监听信道
  • 接收站正确接收数据帧后,需返回ACK帧 → 使发送站知道是否发生冲突
  • 不同类型的帧设置不同的帧间间隔 → 控制帧等高优先级帧能更快地发送出去

帧间间隔IFS

  • 所有站完成发送后,需要等待一段时间,任何站才可以发送帧
  • 要发送的帧类型不同,等待的时间间隔也不同
    • SIFS: Short IFS,短帧间间隔,长度28μs
      • 用于CTS、ACK等帧
    • DIFS: DCF IFS,DCF帧间间隔,长度128μs
      • 用于DCF模式下数据帧
  • 高优先级帧的等待时间较短,可以抢先发送
  • 低优先级帧的等待时间较长,等待完毕后如信道忙,则重新等待

虚拟载波监听

“虚拟载波监听”的意思是:其他站并没有监听信道,而是在收到发送站的通知后才不发送 数据

发送站将它要占用信道的时间放在MAC帧 “持续时间(Duration)”字段

本帧结束后还要占用信道多少时间(单位: μs),包括确认帧所需时间

网络分配向量 NAV

  • 当一个站检测到正在信道中传送的 MAC 帧首部的“持续时间”字段时,就调整自己的网络分配向量 NAV
  • NAV 指出了必须经过多少时间才能完成数据帧的这次传输,才能使信道转入到空闲状态

发送前退避机制

  • 站点要发送数据帧,不仅要等待DIFS帧间间隔,还进入争用窗口,退避 一段时间后再次检测信道,信道空闲才发送
  • 目的:避免多个站点同时检测到信道空闲后发送导致碰撞
  • 仅当站点检测到信道空闲且发送第一个数据帧时,才不退避

CSMA/CA的退避算法

  • 使用二进制指数退避算法

    第i次退避:在2^(2+i)个时隙中随机选择,即:{0, 1, …, 2^(2+i) -1}

    第1次退避:退避时间0—7个时隙

    第2次退避:退避时间0—15个时隙

  • 站点每过一个时隙就检测一次信道

    若检测到信道空闲,退避计时器就继续倒计时

    若检测到信道忙,就冻结退避计时器的剩余时间,重新等待信道变为空闲并再经过时间DIFS后,从剩余时间开始继续倒计时

站点发送数据帧的流程:

① 若站点最初有数据要发送(而不是发送不成功再进行重传),且检测到信道空 闲,在等待时间 DIFS 后,就发送整个数据帧。

② 否则,执行 CSMA/CA退避算法。一旦检测到信道忙,就冻结退避计时器。 只要信道空闲,退避计时器就进行倒计时。

③ 当退避计时器时间减少到零时(这时信道只可能是空闲的),站点就发送整个的帧并等待ACK

④ 若收到ACK,就知道帧被目的站正确收到了。

这时如果要发送第二帧,就要从上面的步骤②开始,先行退避。 若在规定时间内没有收到ACK,就要重传此帧(重新执行发送流程),直到收到确认为止,或者经过若干次的重传失败后放弃发送

image-20250601194207643

发送站可对信道进行预约

  • 目的:减少隐蔽站带来的碰撞
  • RTS:Ready to send,发送站发送的请求发送帧
  • CTS:Clear to send,目的站返回的允许发送帧
  • RTS/CTS帧很短,虽增加了开销,但与直接发送较长数据帧导致碰撞相比,开销较小

image-20250601194309330

IEEE 802.11 帧结构

802.11的帧分为三种类型:数据帧、控制帧、管理帧

  • 管理帧格式与数据帧相同,数据内容依管理帧类型而不同
  • 控制帧较短,只有一个地址,没有数据

数据帧:

image-20250601194755019

  • 帧控制(Frame control)

    • Version: 协议版本

    • Type和Subtype: 帧类型(数据、控制、管理)和子类型(如RTS、CTS等)

    • To DS和From DS: 该帧是发送到或是来自于AP连接的网络

    • More Fragment: 分片传输用

    • Retry: 是否是重传帧

    • Power management: 指明发送方进入节能模式

    • More data: 发送方还有更多的帧需要发送

    • Protected: 该帧数据部分是否被加密

    • Order: 告诉接收方高层是否按顺序处理帧序列

  • 持续时间(Duration)

    • 本帧及ACK帧将占用信道时间(单位:us)

    • 其它站根据该字段调整NAV,进行虚拟载波监听

  • 地址(Address)

    • 连续3个字段,802标准地址(即MAC地址)

    • 网内两个站之间通信需通过AP,涉及三个地址

      PC———>AP——>Internet

      ​ ToDS FromDS

      | To DS | From DS | Address1 | Address2 | Address3 | | ——- | ———- | ———— | ———— | ———— | | 0 | 1 | 目的IP | AP IP | 源IP | | 1 | 0 | AP IP | 源IP | 目的IP |

  • 帧序号(Sequence):2字节,用于重复帧的检测

  • 数据(Data):帧的有效载荷
    • 帧中数据最多2312字节
    • 一般小于1500字节
  • 帧校验(Frame check sequence):32位CRC校验

IEEE 802.11 安全性

第一代安全协议:WEP

  • 各方面安全性都存在缺陷
  • 通过异或操作加密数据,密钥分配较弱导致输出经常重复
  • 通过32位CRC实现完整性保护,防攻击能力很弱

WPA2(正式标准)

移动站在通过AP发送帧之前须进行认证

  • 如果802.11网络是开放(open)的 可直接通信,无需认证
  • 否则必须进行认证

WPA2认证方式

  • 有认证服务器
    • 配置认证服务器,存有用户名和口令数据库
    • 适用于企业
  • 无认证服务器
    • 移动站和AP间使用预共享密钥进行认证
    • 适用于家庭和小型应用场合

认证握手过程:4次握手

① AP发出一个随机数(nonce)用于识别(nonce: 仅使用一次的临时值)

② 客户端选取自己的临时值nonce,并用其nonce、MAC地址、AP的MAC地址、主密钥作为参数计算会话密钥KS ,客户端将自己的临时值和消息完整性检查值(MIC)发送给AP

③ AP分发一个组密钥KG,用于后续的广播和组播

④ 客户端确认组密钥

后续的通信使用AES算法加密,密钥为会话密钥KS

image-20250601200252741