我是靠谱客的博主 开放刺猬,最近开发中收集的这篇文章主要介绍无线帧聚合MPDU和MSDU,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

802.11n提供两种帧聚合的方法:MAC服务数据单元(MSDU—MAC Service Data Unit)和信息协议数据单元(MPDU—Message Protocol Date Unit)
A-MSDU:
主要是对MSDU或者MSDU的分块进行聚合,MSDU是Ethernet报文,经过添加完整性校验MIC、加密、序列号赋值、CRC校验、MAC头部之后形成一个较长的MAC帧MPDU。
A-MPDU:
主要是对MPDU进行聚合,形成一个较长的物理层服务帧PSDU。

两者不同:

对于A-MSDU,如果整帧中有一部分子帧出错,则整帧需要重新传。而A-MPDU则只需要重传出错的那部分子帧。

:不是所有的帧都能被聚合,广播和多播帧不能被聚合,只有单播帧且接收地址相同和优先级相同的帧才能被聚合。

在进入MAC处理之前,所有的报文都以MSDU形式存在,经过MAC处理之后转换成MPDU.。A-MSDU在进入MAC层之前完成聚合,而A-MPDU在MAC层之后完成聚合。

在这里插入图片描述

A-MSDU

要求所聚合子帧的SA和DA所映射的TA和RA相同,即聚合的帧是由同一个无线端发送,且同一个无线端接收,并且只能具备一种QoS属性,不允许将不同QoS属性的帧聚合。
局限性:A-MSDU只适用于较小的MSDU聚合,聚合帧较长时只会有一个FCS,所以A-MSDU传输可靠性较差,如果其中一个MSDU传输出错,则整个A-MSDU将会被重传。
A-MSDU:主要是对MSDU或者MSDU的分块进行聚合,802.11协议栈收集一定数量的上层MSDU报文,先将其聚合在转换为802.11MAC帧.
A-MSDU帧格式如下

在这里插入图片描述

在这里插入图片描述

MPDU

MPDU每一个成分帧都会有一个802.11帧头。这一点不如MSDU高效,如果适用加密将会变得更加明显,因为MPDU在每一个成分帧上都加上了开销,而MSDU仅对一个汇聚帧加密,仅有单个开销。
如图一个A-MPDU由多个A-MPDU子帧所构成。每个A-MPDU子帧由MPDU Delimiter(MPDU分界符)和MPDU实体组成。对于一个A-MPDU,除了最后一个子帧外,其余子帧都会有0-3个字节的填充字段,使子帧长度变为4字节的整数倍。
MPDU是更低层次的聚合,协议栈收集一定数量的802.11MAC帧,将其聚合后打上PHY标头进行传输,MPDU聚合帧中的每个子帧均有完整的802.11MAC帧头。与MSDU相同,MPDU要求所有帧具有一样的QoS等级。

在这里插入图片描述
为保证数据传输的可靠性,802.11协议规定每收到一个单播数据帧都必须立即回应ACK。A-MPDU的接收端在收到A-MPDU后,需要对每一个MPDU进行处理,发送应答。Block ACK通过使用一个ACK来完成对多个MPDU的应答,从而减少信道竞争所消耗的时间, 提高了系统吞吐量。
在这里插入图片描述

  • 通过ADDBA Request/Response报文协商建立Block ACK协定。
  • 协商完成后,发送方可以发送有限多个QoS数据报文,接收方会保留这些数据报文 的接收状态,待收到发送方的BlockAckReq报文后,接收方则回应BlockAck报文来对之前接收到的多个报文一次性回复。
  • 通过DELBA Request报文来删除一个已经建立的Block Ack协定。
    对于Bock Ack的确认氛围即时确认和延时确认。即时确认一般由硬件完成,延时确认一般由协议栈完成,通过Block Ack的确认配合帧聚合的使用何以大大提高802.11n无线传输中的吞吐量。
    在这里插入图片描述

总结

802.11在物理层和MAC做了许多改进,极大的提高了物理层传输速率。聚合机制的提出,减少了协议开销,有效的提高了帧效率,改善WLAN链路的带宽利用率低的特点,为高带宽业务提供了可能。

最后

以上就是开放刺猬为你收集整理的无线帧聚合MPDU和MSDU的全部内容,希望文章能够帮你解决无线帧聚合MPDU和MSDU所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部