MPDU和MSDU区别


Difference in implementation:
If we see the packet being handed from the IP layer to the MAC layer the following sequence of processing is seen. The packet goes from the IP layer to the MAC-llc (logical link control layer) or the upper MAC. This is also called as the MAC service access point (MAC-SAP). 


MSDU: Is the MAC service data unit. This is the unit of transmission used at the MAC layer which is received from the upper layer.
MSDU是个以太网帧,由IP层下发到MAC层,MAC层加入MAC header后,再作为MPDU下发到PHY层。MPDU=(MAC header + MSDU)
AMSDU: Aggregation of the  MSDUs directly performed at the MAC layer is called an AMSDU. Such AMSDU's are now passed to the lower PHY layer, where they are dealt with as MPDUs. Multiple MSDUs are aggregated at the MAC layer and pushed into a single MPDU (which is pushed to the PHY). They have a single frame header with multiple frames, and they are destined for the same client and the same service class. (Basically they all have the same TiD).
MSDU聚合:将多个MSDUs聚合在一起形成AMSDU,AMSDU+MAC headr之后形成MPDU发送到PHY层。
* The main motivation for aggregation at the MSDU layer is that: (1) Ethernet is the native frame format for most clients, (2) since the ethernet header is much smaller than the 802.11 header, we can combine multiple ethernet frames to form a single A-MSDU.
AMSDU目的:1、对于大多数client来说原始帧格式是以太网帧,2、以太网帧头比802.11帧头小很多,可以将多个以太网帧结合在一起使用一个802.11帧头封装成一个MPDU。
MPDU: MAC protocol data units are the frames passed from the MAC layers into the PHY layer.
MAC协议数据单元:从MAC层传给PHY层,MPDU=(MAC header + MSDU/AMSDU)
AMPDU: These are are the aggregated MPDU units which are pushed into a single PPDU (physical protocol data unit).  All frames will have a single PLCP header and preamble.
多个MPDU聚合成一个AMPDU,AMPDU=(MPDU1+...+MPDUn)
PPDU=(PLCP header preamble + MPDU/AMPDU)
** The 802.11n system was designed so that either AMPDU, AMSDU or both aggregation algorithms could be used.
AMSDU和AMPDU可以同时使用


When do we want to use an A-MPDU and when do we want to use an A-MSDU:
Rather , the topic of this discussion should be why is AMPDU aggregation preferred over AMSDU aggregation most of the time. Or why most systems use AMPDU aggregation and not AMSDU aggregation.
相反,这个讨论的主题应该是为什么大多数时候AMPDU聚合优先于AMSDU聚合。 或者为什么大多数系统使用AMPDU聚合而不是AMSDU聚合
A-MSDU increases the maximum frame transmission size from 2,304 bytes to almost 8k bytes (7935 to be exact) while A-MPDU allows up to 64k bytes.
A-MSDU将最大帧传输大小从2,304字节增加到几乎8K字节(准确地说是7935),而A-MPDU允许最多64k字节


However, the main problem with AMSDUs is that the entire blob becomes one MAC frame (or protocol data unit - PDU) and hence has only one CRC check. So as the frame size increase the probability of error increases. Since we have a single CRC check, we cannot retransmit a part of the AMSDU and in most cases this leads to re-transmission at lower rates which nullifies the benefit of aggregation. An AMPDU on the other hand consists of multiple PDUs each with their own CRCs. Hence, in the event of a failure, part of these can be retransmitted resulting in higher efficiency. However, this performance gain comes at a cost since now with every aggregate AMPDU we are sending MAC headers for all of the subframes.
然而,AMSDU的主要问题是整个块成为一个MAC帧(或协议数据单元-PDU),因此只有一个CRC校验。 所以随着帧大小的增加错误的概率增加。 由于我们有一个CRC检查,所以我们不能重传AMSDU的一部分,并且在大多数情况下这会导致以较低的速率进行重传,从而使聚合的好处无效。 另一方面,AMPDU由多个PDU组成,每个PDU都有自己的CRC。 因此,如果出现故障,部分可以重新传输,从而提高效率。 然而,从现在开始,对于所有的子帧,我们正在发送MAC报头,因此这种性能增益是以每个聚合的AMPDU为代价的。


Hence decision of using AMSDU versus AMPDU is a tradeoff between probability of error and retransmission costs in an AMSDU versus MAC frame header overheads in an aggregate with AMPDU. In most real world systems, the later wins, and hence most systems implement AMPDUs.
因此,使用AMSDU与AMPDU的决定是AMSDU中的错误概率与重传成本与具有AMPDU的聚合中的MAC帧头开销之间的折衷。 在大多数现实世界的系统中,后来获胜,因此大多数系统实现AMPDU。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值