芯片开发阶段的帧聚合迥异于商用AP,前者更偏向实现过程,后者偏向结果。也就是说用户在使用商用设备时不会管你特性是如何实现的,他们只关心效果,开启这个功能能否实实在在的提高AP的吞吐量。

  网上搜索了众多教程,大同小异,个别讲的别叫有深度的,妈的又要收费,操蛋。

  好吧,扯远了,貌似每次写学习笔记之前都要先啰嗦几句。妹的,天气热的心情狂躁。


1,概述

  帧聚合是针对802.11n高吞吐量的特性设计的新功能,也就是说早期的a/b/g是不支持的。有些AP在设置界面会让用户选择是否开启聚合(一般AMPUD和AMSDU是分开的),而这个选项一般只在打开11n only或b/g/n mixed模式才显示为激活,但某些AP即使在b/g模式下也可以勾选,但要记住,即使勾选了,也不会生效的。

  聚合,顾名思义就是把把零散的数据包聚合在一块,形成一个大的数据包。由于无线比有线更大的协议开销,如果不加限制的来一个包发送一个,如果是大包还行,特别是上网产生的小包,会生成很大的协议开销。聚合功能就是根据这个需要而诞生。

  聚合是一个MAC的功能,众所周知的网络七层协议,开启聚合后,数据从上往下传输,在MAC会被聚合起来。聚合也分先后,从LLC下发到MAC会先聚合为MSDU,经过MAC加工后形成MSDU,然后下发到PHY的PLCP层,此时可以聚合为PSDU。(待确认,貌似我文字能力太差了,一个概述都写的乱七八糟。还是简单点吧。)

2,帧结构

A-MPDU帧聚合

 重点:1,每两个MPDU帧中有一个Delimiter,作用一,分隔MPDU以方便解析;作用二,某个MPDU解析错误时跳到下一个以Delimiter结尾的MPDU继续解析。

      Delimiter帧结构:

      

        MAC Header后面就是A-MPDU subframe,而A-MPDU subframe帧以Delimiter开头,意思是说,A-MPDU以Delimiter开始,以delimiter结束?至于结束时有没有Delimiter,还待定。

      各个字段的含义:

      

    2,11n协议规定,MPDU报文必须为四个字节的整数倍,所以MPDU结尾都有一个Pading来补足这个限制。

    3,11n协议规定,A-MPDU报文长度不能大于65535字节。芯片中,A-MPDU传输是分片的,Fragment长度为2346个字节。

    4,小报文发送频繁,为避免响应不及时,协议规定A-MPDU只能封装一个小于256字节的数据就必须发送。

    5,每个MPDU都有对应的序列号,接收方根据MPDU的序列号发送BA。

    6,A-MPDU既支持单播数据,也支持组播和多播。

2013-7-28 802.11n帧聚合的更多相关文章

  1. 自学Aruba1.3-WLAN一些基本常识802.11n速率计算方式、802.11n及802.11AC速率表

    点击返回:自学Aruba之路 自学Aruba1.3-WLAN一些基本常识802.11n速率计算 1. 802.11n速率计算方式1.1 802.11n使用的主要技术 802.11n采用MIMO多天线技 ...

  2. 802.11n 连接的建议设置是什么?

    这些是用于支持 802.11N 的英特尔无线适配器的默认设置. 这些建议采用的设置可以在英特尔® PROSet/ 无线软件的 高级菜单上找到. 属性 值 频带 2.4 的 802.11n 通道宽度 自 ...

  3. 自学Aruba1.2-WLAN一些基本常识802.11n速率计算方式、802.11n及802.11AC速率表

    点击返回:自学Aruba之路 自学Aruba1.2-WLAN一些基本常识802.11n速率计算方式.802.11n及802.11AC速率表 1. 802.11n速率计算方式 以802.11g的54M最 ...

  4. 网络工程知识(二)VLAN的基础和配置:802.1q帧;Access、Trunk、Hybrid接口工作模式过程与配置;VLANIF的小实验

    介绍-VLAN VLAN(Virtual Local Area Network)即虚拟局域网,工作在数据链路层. 交换机将通过:接口.MAC.基于子网.协议划分(IPv4和IPv6).基于策略的方式划 ...

  5. 用802.11n 加速,将android手机屏幕投影到win7电脑上

    在做Android应用开发的时候,经常需要将已经完成的应用展示给一同开发的小伙伴,然而一直感觉没有找到一种十分方便的办法.特别是看到了开发IOS的小伙伴在做展示的时候的方便.因为Apple既做PC,也 ...

  6. 2013/8/28 JS+HTML 三级省市区联动

    var mp = ["安徽","北京","福建","甘肃","广东","广西", ...

  7. http://www.cnblogs.com/Joyes1989/archive/2013/06/28/3161739.html centos 输入法安装切换

    昨天装了一个centos  安装输入法的时候  让我有点纠结  全英文的 读不懂

  8. vs远程调试 转http://www.cnblogs.com/magicchaiy/archive/2013/05/28/3088274.html

    远程调试应用场景 部署环境:ASP.NET(C#)+IIS+Win7 64 bit 很多公司的开发模式都是将开发机器和服务器分开,也就是开发一台机,服务器一台机.而测试人员会在服务器上录入测试数据,此 ...

  9. <2013 12 28> AOI PCB设计

    主要设计指标: “3.多块拼板最大尺寸:60*50(CM)4. 检测速度:(230-250)片/小时 5.检测通过率:98%6.最窄线宽:设两种精度 A.最窄线宽:0.2mm, 识别精度 0.1mm  ...

随机推荐

  1. SpingBoot一——demo及阿里云部署

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:https://www.cnblogs.com/by-dream/p/9957624.html 双11买了阿里云的服务器,后续计划 ...

  2. DevExpress WPF入门指南:如何自动或手动添加DXSplashScreen控件

    <DevExpress v17.2 版本更新公开课>点击报名 DevExpress WPF 的 DXSplashScreen 控件在应用加载的时候显示一个启动界面.添加DXSplashSc ...

  3. 《C++ Primer》笔记-inline内联函数

    inline 函数避免函数调用的开销 // find longer of two strings const string &shorterString(const string &s ...

  4. cocos2d-x 2.0.2升级后某些函数变化(转)

    最近看cocos2d-x 2.0.2发布后升级了一下,升级后发现又出现了很多错误,原来有一些地方的代码用法改变了.在修改代码的过程中,简单做了一些记录,当做是一个备忘录. 1.CCScene和CCLa ...

  5. mysql 的 java 连接库

    mysql 的 java 连接库 解压缩mysql-connector-java-5.1.30.zip 将要使用的是mysql-connector-java-5.1.30-bin-g.jar和mysq ...

  6. iOS 工程自动化 - OCLint

    前言 最近一直在做 iOS 工程自动化方向的事情,所以把自己研究和实践的内容进行记录并分享,希望能给大家一些帮助. 为什么要使用 OCLint 做为一个静态代码分析工具,我们引入 OCLint 的目的 ...

  7. HDU 1589 Stars Couple(计算几何求二维平面的最近点对和最远点对)

    Time Limit: 1000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...

  8. [leetcode] 94. Binary Tree Inorder Traversal 二叉树的中序遍历

    题目大意 https://leetcode.com/problems/binary-tree-inorder-traversal/description/ 94. Binary Tree Inorde ...

  9. shell 脚本实战笔记(4)--linux磁盘分区重新挂载

    背景: Hadoop的HDFS文件系统的挂载, 默认指定的文件目录是/mnt/disk{N}. 当运维人员, 不小心把磁盘挂载于其他目录, 比如/mnt/data, /mnt/disk01, /mnt ...

  10. leetcode-3-LongestSubstringWithoutRepeatingCharacters

    problem:Longest Substring Without Repeating Characters to be continue