802.11n最主要的添加了Block Ack这个技术,但是在实际应用中对于BA还是知之甚少,转贴一个讲述BA基本原理的文章,但是我通过wireshark进行抓报并没有在BAR(Block Ack Requst)里面找到文中所说的相关信息,但是找到了一个CACE Technlologies 发布的一个用wireshark进行分析11n的文章,其内容请参见我的博客中另一篇有关文章。

以下为转贴。

=============================================

摘要

介绍了BlockAck的建立、传输、拆除的过程。

引言

通过将一帧一确认的普通传输方式修改为连续传输多个帧然后一次确认多个帧的方式,来提高MAC层的传输效率。N个包的传输可节省N*DIFS的时间,在牺牲一定可靠性的基础上达到了提高传输带宽的能力。

BlockAck的建立

通过ADDBA Request/ADDBA Response可以建立BlockAck的过程。有以下几点需要注意:

ADDBA 帧以Action帧为载体,后者在DFS功能引入。

数据传输与确认

一般需要在发送之前使用CTS清理隐藏节点,来提高传输可靠性。连续的数据帧以SIFS为间隔连续发送,注意:接收端并不需要确认。

对于BlockAck的确认分即时确认与延时确认两种。对于即时确认一般由硬件完成,对硬件收到的包映射到确认位图中,然后进行响应。而延时响应可以由协议栈完成,可以完成进一步的数据检查。对于流行的路由器一般只实现即时确认这种方式。

下图可以形象地描述数据传输及确认的过程:

拆除

当上层完成数据包传输,或MLME层内的定时器超时时会对过程进行拆除。

ADDBA Request/Response帧格式

转存失败重新上传取消

物理层的改进:

1、MIMO,传说中的空分复用,频点相同。AP和client成对出现。


利用多天线传输,将串行映射为并行

各天线独立处理,自主运行

各天线用各自的调制方式发送电波

各天线用各自的解调方式接收电波

MIMO变态版:

1)、diversity(分集)

天线数量多于空间流数量,使用两根天线的输出组合来接收一个空间流,获得更远的传输距离。

2)、Beam-forming(聚束)

通过调整发送信号的相位来实现,提高了接收端的灵敏度。

2、OFDM(正交频分复用)

传说中的在频域串转并的方法,不同的频点,一个频点叫一个信道。

3、带宽

Channelbonding(40MHz)

4、基频

中国规定2.4GHz 频段范围是2.4~2.4835GHz, 1-13信道(1信道为2.412GHz,每两个相邻信道间隔为5MHz);5GHz频段范围是5.725~5.825GHz, 149/153/157/161/165信道(149信道为5.745GHz)

5、速率和吞吐量

DateRate

DataRate指物理层传输速率,是传输信号的速度,不管这是数据帧还是其他的控制帧。11N提供最高达600M的物理层传输速率
吞吐量
吞吐量指的是真正的数据载荷部分传输的速率。一般测试结果大致为总传输速率的一半左右它是不计算诸如:TCP负载,MAC头负载,和PHY负载,以及控制帧管理帧,和空闲时间,冲突造成的负载等

速率的计算方法:

举例如MCS5,20MHz,精简帧间间隔,1空间流时:DataRate=52*(2/3)*6bit*1*(10/9)/4us=57.8Mbit/s

MAC层改进:

1、TXOP(对称的传输机会)

当站点需要传输MSDU时,并不会在获得接入机会的同时接入信道,而是等待一段时间后再进行发送。一个节点从其获取接入信道的机会到其开始传输的时间叫做一个TXOP。通过轮询或者竞争的机制可以调整不同站点TXOP的大小,使得信道可以得到更好的应用。

2、BlockACK(块确认)

1)通过ADDBA Request/Response报文协商建立Block ACK协定。

2)协商完成后,发送方可以发送有限多个QoS数据报文,接收方会保留这些数据报文的接收状态,待收到发送方的BlockAckReq报文后,接收方则回应以BlockAck报文来对之前接收到的多个数据报文做一次性回复。

3)通过DELBA Request报文来撤消一个已经建立的Block Ack协定。

3、帧格式改变

传统的802.11帧格式:

802.11n帧格式:

4、Frame Aggregation

802.11n 引入聚合帧的概念,当然不是所有的帧都能聚合,广播帧和多播帧不会被聚合,只有单播帧且接收地址相同和优先级相同的帧才会被聚合。聚合之后的帧减少了帧非数据负载,使MAC层传输数据的有效率有了一定的提高。

传统的帧结构:

PPDU的形成:


说明:

1)、上图的MAC头是传统的802.11的协议头

2)、在单播帧的情况下,当MSDU或MPDU的长度超过门限值时(2346字节),被要求分段,并且每个分段要求单独进行ACK响应。

802.11n聚合帧结构:

1)、由A-MSDU来组成MPDU

2)、多个MPDU组成A-MPDU,加上PLCP Preamble 和 PLCP Header 之后行成PPDU(物理层)

3)、由此我们也能看出A-MSDU的区别

A-MSDU只有一个802.11n的头,而组成A-MPDU每个MPDU都有一个802.11n的头

Block Ack (BA) contains bitmap size of 64*16 bits. These 16 bits accounts the fragment number of the MPDUs to be acknowledged. Each bit of this bitmap represent the status (success/failure) of a MPDU.

正常的BA的size是64*16bits=128bytes。每个bit表示MPDU是否发射成功

  • Normal Block Ack--->64*16bits=128bytes.标准BA
  • Compressed Block Ack-->8bytes。压缩的BA

    • It is an enhanced version of BA defined in 802.11n. In compressed BA, Fragmented MSDUs cannot be transmitted and hence the bitmap size is reduced from 1024 (64*16) bits to 64 (64*1) bits.
  • Multi TID Block Ack

    • This scheme is applicable only with power save operation. Previously described BA variants are capable of acknowledging a single TID (traffic identifier).

The confirmation from the recipient station, stating which frames have been received, this is explicitly mentioned in a matrix (part of the BAR) call the "bit map".

802.11N blockACK相关推荐

  1. 802.11n 原理解析

    1.1  802.11n标准发展历程 IEEE 802.11工作组意识到支持高吞吐将是WLAN技术发展历程的关键点,基于IEEE HTSG (High Throughput Study Group)前 ...

  2. 802.11n关键技术

    原文地址:http://baike.soso.com/v3635395.htm           技术概述 802.11n主要是结合物理层和MAC层的优化来充分提高WLAN技术的吞吐.主要的物理层技 ...

  3. wlan之802.11n原理解析

    1.1  802.11n标准发展历程 IEEE 802.11工作组意识到支持高吞吐将是WLAN技术发展历程的关键点,基于IEEE HTSG (High Throughput Study Group)前 ...

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

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

  5. 802.11n协议帧格式详解

    一. 802.11n扩展了802.11mac帧,增加了4个字节的HT Control域,其余域的意义与802.11主标准相同. 各个字段含义如下: TRQ(Sounding Request) :探测请 ...

  6. 802.11n 中HT20 HT40的区别和信道划分

    802.11n有两种频宽模式:HT(High Throughput)20和HT40. HT20是出于兼容性考虑:比如,一个区域内存在802.11b/g信号,那么为了尽量减少对它们的干扰,需要设定为HT ...

  7. 802.11n标准简介

    802.11n标准特点: 802.11n采用2.4G和5G作为载波频率,相对应802.11b和802.11a,802.11n主要结合物理层和MAC层优化来充分提高WLAN的吞吐量.物理层采用MIMO. ...

  8. 802.11n兼容a/b/g问题(Legacy mode,Mixed mode,Greenfield mode)

    中文的没看到有什么人去解释,大致翻下查到的英语的. For interoperability, 802.11n supports three modes, explains Hung: 对于兼容性,8 ...

  9. 802.11 n wlan linux驱动下载,802.11n无线网卡驱动

    802.11n无线网卡驱动万能包是专门针对802.11n无线网卡整理的无线万能驱动包,适用天Win7/Winxp/win8/Win10,包括64位和32位系统.主要是结合物理层和MAC层的优化来充分提 ...

最新文章

  1. 用python+tornado+mongodb写的一个博客系统
  2. Java -----JVM运行时数据区
  3. aws dynamodb_AWS Lambda将数据保存在DynamoDB中
  4. MyBatis源码阅读指南
  5. 人工智能AI编程基础(一)
  6. st7789 旋转_ST7789V彩屏驱动及显示代码
  7. 应用层故事难讲 公链集体押注DeFi背后 是黔驴技穷的无奈之举?
  8. 用Python简单代码实现炫酷动态条形图
  9. 中国移动通信互联网短信网关接口协议CMPP2.0(普通文本短信、二进制数据短信)
  10. 商务通打开对话窗口容错代码
  11. Zinc 全文搜索引擎Elasticsearch轻量级替代品
  12. PHP trait 特性
  13. 怎么把m4a转换成mp3,分享几个方法给大家!
  14. 我不允许还有人不会截图
  15. 网络七层模型和TCP/IP分层模型
  16. 网站seo优化到底该怎么做呢
  17. Windows7光盘制作: 向脱机映像添加补丁
  18. word2vec 中的数学原理详解(一)目录和前言
  19. 使用VisualVM、JMC远程监控JVM
  20. css动画+滚动的+飞舞的小球

热门文章

  1. 3 saltstack高可用
  2. SQL Server 安装好后 Always On群组配置
  3. 广告基本知识-广告的目的和效果
  4. 【伯乐在线】程序员常有,优秀程序员不常有
  5. eclipse 和myEclipse 项目导入
  6. jquery UI 后台图
  7. 横空出世,席卷Csdn [评微软等公司数据结构+算法面试100题]
  8. pythonprint()_python基础1 print()函数
  9. java 协程_你真的了解kotlin的协程么?
  10. aida64 extreme 序列号_基于SN序列号管理 轮胎行业仓储管理解决方案