802.11协议概述

之前写了好长一篇文档再本地,结果换工作的时候丢了。。。先来点直观的吧。

802.11协议概述_第1张图片

数据发送过程:

  1. 数据从上到下, 在接入物理层之前. 原始数据(MSDU, 以太网标准帧)进入数据链路层
  2. A-MSDU聚合: 多个MSDU组成为A-MSDU一起发送. 类似tcp的Nagle算法.
  3. PS状态判断: 如果当前wifi功能处于power save状态. 将A-MSDU加入缓冲区
  4. Sequence Number: 添加报头中的数据计数(主要用于reordering和 retrieve)
  5. MSDU完整性校验和保护:此为可选操作(加密一般在MPDU处, 一般无须双层加密)
  6. 分片: 超过物理层最大传输阀值会被分片(802.11协议一般为1500)
  7. 数据加密构成MPDU: 802.11i中规定了CCMP和TKIP两类加密算法, 一般使用为CCMP.MPDU为802.11协议标准帧
  8. AMPDU汇聚:802.11n中规定, 可以将MDPU组合为A-MPDU. 与A-MSDU不同在于, A-MPDU由A-MSDU组成, 在802.11无线网络中, A-MSDU数据重传时必须重传整个A-MSDU, 而A-MPDU重传时, 仅仅需要重传损坏/丢失的MPDU即可.

数据接收过程: 这里不解释对应发送过程中的逆向操作

  1. 重复数据dup: 在无线传输过程中, 需要考虑接收的数据可能由于墙面反射等原因造成的重复数据.
  2. Block ACK: 在8011数据的传送过程中也是遵循发送/确认规则, 这一机制保证了无线介质也可以拥有健全的数据传送机制的同时, 也占用了大量的带宽. 801n中的block ack机制有效的缓解了这个问题. 详情
  3. 重放检测: 用于检测收到的其它STA的数据帧是否加密.(避免收到其它终端的数据影响)
  4. 速率限制: 用于针对整体接收速率的调整,用于强化资源利用率. 在EDCA规范中, 针对VO>VI>BE>BK四个不同优先级的数据队列中, 速率限制会根据优先级进行不同的判断.(简而言之, VO数据占满速率时, 可能会适度丢弃 VI BE BK数据)

补充:

建议参考802.11权威指南,和802.11最新协议

你可能感兴趣的:(802.11协议概述)