1.MAC头部

解释:

① Version 版本号  目前为止802.11只有一个版本,所以协议编号为0

② Type 00表示管理帧,01表示控制帧,10表示数据帧

③ Subtype 和Type一起表示不同的帧,

Management frame(管理帧:Type=00)a

0000

Association request(关联请求)

0001

Association response(关联响应)

0010

Reassociation request(重新关联请求)

0011

Reassociation response(重新关联响应)

0100

Probe request(探测请求)

0101

Probe response(探测响应)

1000

Beacon(信标)

1001

ATIM(通知传输指示消息)

1010

Disassociation(取消关联)

1011

Authentication(身份验证)

1100

Deauthentication(解除身份验证)

1101~1111

Reserved(保留,未使用)

Control frame(控制帧:Type=01)b

1010

Power Save(PS)- Poll(省电-轮询)

1011

RTS(请求发送)

1100

CTS(清除发送)

1101

ACK(确认)

1110

CF-End(无竞争周期结束)

1111

CF-End(无竞争周期结束)+CF-ACK(无竞争周期确认)

Data frame(数据帧:Type=10)c

0000

Data(数据)

0001

Data+CF-ACK

0010

Data+CF-Poll

0011

Data+CF-ACK+CF-Poll

0100

Null data(无数据:未传送数据)

0101

CF-ACK(未传送数据)

0110

CF-Poll(未传送数据)

0111

Data+CF-ACK+CF-Poll

1000

Qos Data c

1000~1111

Reserved(保留,未使用)

1001

Qos Data + CF-ACK c

1010

Qos Data + CF-Poll c

1011

Qos Data + CF-ACK+ CF-Poll  c

1100

QoS Null(未传送数据)c

1101

QoS CF-ACK(未传送数据)c

1110

QoS CF-Poll(未传送数据)c

1111

QoS CF-ACK+ CF-Poll(未传送数据)c

④ To DS:表明该帧是BSS向DS发送的帧; From DS:表明该帧是DS向BSS发送的帧;  More Frag:用于说明长帧被分段的情况,是否还有其它的帧;   Retry(重传域):用于帧的重传,接收STA利用该域消除重传帧;  Pwr Mgt(能量管理域):为1:STA处于power_save模式,0:处于active模式;   More Data(更多数据域):为1:至少还有一个数据帧要发送给STA ;  Protected Frame:为1:帧体部分包含被密钥套处理过的数据; Order(序号域):为1:长帧分段传送采用严格编号方式;

⑤ Duration 表明该帧和它的确认帧将会占用信道多长时间;

⑥ 目的地址

⑦ 源地址

⑧ Bssid

⑨ Sequence Control(序列控制域):由代表MSDU(MAC Server Data Unit)或者MMSDU(MAC Management Server Data Unit)的12位序列号(Sequence Number)和表示MSDU和MMSDU的每一个片段的编号的4位片段号组成(Fragment Number)

⑩ 表示MSDU和MMSDU的每一个片段的编号的4位片段号组成

2、帧主体

管理帧十分灵活。帧主体(frame body)中的大部分数据如果使用长度固定的字段,就称为固定字段(fixed field);如果字段长度不定,就称为信息元素(information element)。所谓信息元素,是指长度不定的数据块(data block)。每个数据块均会标注类型编号和大小,各信息元素的数据字段元素都有特定的解释方式。

所显示的Timestamp(时戳)位,可用来同步BSS 中的工作站BSS 的主计时器会

定期发送目前已作用的微秒数。当计数器到达最大值时,便会从头开始计数。(对一个长度64bit、可计数超过580,000 年的计数器而言,很难会遇到有从头开始计数的一天。

Beacon interval字段

每隔一段时间就会发出一个Beacon(信标)信号用来宣布802.11网络的存在。Beacon帧中除了包含BSS参数的信息,也包含接入点缓存帧的信息,因此移动式工作站要仔细聆听Beacon信号。此帧长度为16位,用来设定Beacon信号之间相隔多少时间单位。时间单位通常缩写为TU,代表1024微秒(microsecond),相当于1毫秒(millisecond)。Beacon通常会被设定为100个时间单位,相当于每100毫秒,也就是0.1秒传送一次Beacon信号。

Capability Info(性能信息)字段,传送Beacon信号的时候,它被用来通告网络具备何种性能。此字段应用于Beacon帧、Probe Response帧,Probe Request帧,每个bit代表一个旗标,对应于网络所具备的特殊功能,工作站会使用这些公告数据来判断自己是否支持该BSS 所有的功能。没有实现性能公告中所有功能的工作站,就无法加入该BSS。

1,2--ESS/IBSS   这两个bit 旗标彼此互斥(mutually exclusive)。基站会将ESS 位设定为1,而将IBSS 布位设定为0,表示基站属于基础网络的一部分。IBSS 中的工作站则会将ESS 位设定为0,而将IBSS 位设定为1。

3--4--:

0 0 基站并不支持中枢协调功能(point coordinationfunction)

0 1 基站使用PCF 来传递,但并不支持轮询

1 0 基站使用PCF 来传递与轮询

1 1 保留,未使用

5--将Privacy bit 设定认1,代表需要使用WEP 以维持机密性。在基础网络中,发送端为基站。在IBSS 里,Beacon 信号必须由IBSS 当中某部工作站负责。

6--短同步信号,802.11g 规定使用短同步信号,因此在依循802.11g 标准所建置的网络中,此位必然设定为1。

7--分组二进制卷积编码

8--机动信道转换,

9--是否支持802.11h协议

10--

11--此bit 若设定为1,代表使用802.11 所支持的较短的时槽。

12--

13--

14--此bit 若设定为1,代表使用802.11g 的DSSS-OFDM 帧构建(frame construction)选项

15--

16--

Ssid信息

Ap发送帧所支持的速率

出现在实体层采用直接顺序技术中

数据待传信息,基站会为处于休睡状态的工作站暂存帧。每隔一段时间,基站就会尝试传递这些暂存帧给休眠中的工作站。如此安排的理由是,启动发送器比启动接收器所耗费的电力还要多。802.11的设计者预见未来将会有以电池供电的移动工作站;定期发送暂存帧给工作站的这个决定,主要是为了延长设备的电池使用时间。将TIM(数据待传指示信息)信息元素送到网络上,指示有哪些工作站需要接收待传数据,只是此过程的一部分。

DTIM Count:此位的长度为一个字节,代表下一个DTIM(数据待传指示传递信息)帧发送前,即将发送的Beacon 帧数。

DTIM Period:此位的长度为一个字节,代表两个DTIM 帧之间的Beacon interval 数。0 值目前保留未用。DTIM 会由此期间倒数至0。

Bitmap Control:位可进一步划分为两个次位。Bit 0 用来表示连接识别码0 的待传状态,主要是保留给组播使用。其他七个bit 则是保留给Bitmap Offset(bit对映偏移)次位使用。为了节省频宽,可以通过Bitmap Offset 次位,只发送一部分的虚拟bit 对映。BitmapOffset 是相对于虚拟bit 对映的开头处。利用Bitmap Offset 次位及Length 位,802.11工作站可以推断虚拟bit 对映有哪些部分包括在内。

Starting Chaannel:第一信道编号即是符合功率限制的最低信道

Number of Channels:符合功率限制的频段大小,是由信道数来指定。信道大小随PHY 而有所不同。

Max Tx Power:最大传输功率,以dBm 为单位

扩展物理层:802.11g 定义了扩展速率物理层(extended rate PHY,简称ERP)。为了兼容早期产品,另外定义了ERP 信息元素

Extended Supported Rates 信息元素的作用和的Supported Rates 元素没有两样,不过它允许信息元素的内容超过25 多个字节

802.11n标准中采用A-MPDU聚合帧格式,即将多个MPDU聚合为一个A-MPDU,只保留一个PHY头,删除其余MPDU的PHY头,减少了传输每个MPDU的PHY头的附加信息,同时也减少了ACK帧的数目,从而降低了协议的负荷,有效的提高网络吞吐量,A-MPDU聚合的是经过802.11报文封装后的MPDU,这里的MPDU是指经过802.11封装过的数据帧。通过一次性发送若干个MPDU,减少了发送每个802.11报文所需的PLCPPreamble、PLCPHeader,从而提高系统吞吐量。

A-MSDU技术是指把多个MSDU通过一定的方式聚合成一个较大的载荷。这里的MSDU可以认为是Ethernet报文。通常,当AP或无线客户端从协议栈收到报文(MSDU)时,会打上Ethernet报文头,这里我们称之为A-MSDUSubframe;而在通过射频口发送出去前,需要逐一将其转换成802.11报文格式。而A-MSDU技术旨在将若干个A-MSDUSubframe聚合到一起,并封装为一个802.11报文进行发送。从而减少802.11MAC头的开销,同时减少了应答帧的数量,提高了报文发送的效率。

无线客户端支持MCS集:

MCS(Modulation and Coding Scheme,调制与编码策略):

用户对MCS的配置分为三类,配置基本MCS、支持MCS和组播MCS。配置输入的MCS索引是一个范围,即指0~配置值,如输入5,即指定了所要输入的MCS范围为0~5。

基本MCS:基本MCS是指AP正常工作所必须支持的MCS速率集,客户端必须满足AP所配置的基本MCS速率才能够与AP进行连接。

支持MCS:支持MCS速率集是在AP的基本MCS速率集基础上AP所能够支持的更高的速率集合,用户可以配置支持MCS速率集让客户端在满足基本MCS的前提下选择更高的速率与AP进行连接。

MCS调制编码表是802.11n为表征WLAN的通讯速率而提出的一种表示形式。MCS将所关注的影响通讯速率的因素作为表的列,将MCS索引作为行,形成一张速率表。所以,每一个MCS索引其实对应了一组参数下的物理传输速率。

MCS索引

空间流数量

调制方式

速率(Mb/s)

800ns GI

400ns GI

0

1

BPSK

6.5

7.2

1

1

QPSK

13.0

14.4

2

1

QPSK

19.5

21.7

3

1

16-QAM

26.0

28.9

4

1

16-QAM

39.0

43.3

5

1

64-QAM

52.0

57.8

6

1

64-QAM

58.5

65.0

7

1

64-QAM

65.0

72.2

8

2

BPSK

13.0

14.4

9

2

QPSK

26.0

28.9

10

2

QPSK

39.0

43.3

11

2

16-QAM

52.0

57.8

12

2

16-QAM

78.0

86.7

13

2

64-QAM

104.0

115.6

14

2

64-QAM

117.0

130.0

15

2

64-QAM

130.0

144.4

可以这样记:空间流量2是1的两倍。

表1-5 MCS对应速率表(40MHz)

MCS索引

空间流数量

调制方式

速率(Mb/s)

800ns GI

400ns GI

0

1

BPSK

13.5

15.0

1

1

QPSK

27.0

30.0

2

1

QPSK

40.5

45.0

3

1

16-QAM

54.0

60.0

4

1

16-QAM

81.0

90.0

5

1

64-QAM

108.0

120.0

6

1

64-QAM

121.5

135.0

7

1

64-QAM

135.0

150.0

8

2

BPSK

27.0

30.0

9

2

QPSK

54.0

60.0

10

2

QPSK

81.0

90.0

11

2

16-QAM

108.0

120.0

12

2

16-QAM

162.0

180.0

13

2

64-QAM

216.0

240.0

14

2

64-QAM

243.0

270.0

15

2

64-QAM

270.0

300.0

1.      HT20:HT Capability Info字段里会明确注明”Only 20MHz Operation is Supported”,且没有HT Information字段;

2.      HT40:HT Capability Info字段里会明确注明”Both 20MHz and 40MHzOperation is Supported”,且HT Information Element 1字段里会包含有2nd Channel Offset的信息;

3.      HT20/40-20MHz:HT Capability Info字段里会明确注明”Both 20MHz and 40MHzOperation is Supported”,且HT Information Element 1字段里会注明”No Secondary ChannelPresent”;

4.      HT20/40-40MHz:HT Capability Info字段里会明确注明”Both 20MHz and 40MHzOperation is Supported”,且HT Information Element 1字段里会包含有2nd Channel Offset的信息;

重叠 BSS 扫描 参数:

beacon帧的更多相关文章

  1. hostapd修改beacon帧和probe response帧

    在AP模式下,热点会不断定期地发送Beacon帧来宣告自己存在,告知设备可以加入网络: Probe Response帧是用于应答Probe Request帧,Probe Request帧是移动工作站用 ...

  2. 构造并发送Beacon帧以伪造任意WiFi热点

    请想象一下这样的情景:你可以任意伪造很多个WiFi热点, 这个技术只能在linux上使用,而且对无线网卡也有一定的挑剔,具体的下面会讲- 阶段一:基本原理 首先需要搞清楚的是,手机.电脑等支持WiFi ...

  3. 802.11 ------ Beacon帧、Beacon Interval、TBTT、Listen Interval、TIM、DTIM

    Beacon帧:Beacon的实际发送一般都是采用最低速率的,其包含两个原因,1)beacon帧是一个广播帧,其没有ACK反馈,所以无法设置重传机制,2)beacon帧目的是广播AP的基本信息,所以希 ...

  4. beacon帧字段结构最全总结(三)——VHT字段总结

    VHT Capabilities 802.11ac作为IEEE 无线技术的新标准,它借鉴了802.11n的各种优点并进一步优化,除了最明显的高吞吐特点外,不仅可以很好地兼容802.11a/n的设备,同 ...

  5. beacon帧字段结构最全总结(二)——HT字段总结

    一.HT Capabilities HT Capabilities:802.11n的mac层给802.11的mac层加入了高吞吐量单元.所有新加的802.11n功能都是通过管理帧中的HT单元才得以实现 ...

  6. beacon帧字段结构最全总结(一)——beacon基本结构

    一.beacon帧主要结构 二.MAC  header 1.Version:版本号,目前为止802.11只有一个版本,所以协议编号为0 2.Type:定义802.11帧类型,802.11帧分为管理帧( ...

  7. 室内定位系列(一)——WiFi位置指纹(译)

    原文:<Advanced Location-Based Technologies and Services>--chapter 2 WiFi Location Fingerprint 作者 ...

  8. 【转】WiFi基础知识

    http://blog.csdn.net/myarrow/article/details/7930131 1. IE802.11简介 标准号 IEEE 802.11b IEEE 802.11a IEE ...

  9. WIFI基本知识整理

    这里对wifi的802.11协议中比较常见的知识做一个基本的总结和整理,便于后续的学习.因为无线网络中涉及术语很多,并且许多协议都是用英文描述,所以有些地方翻译出来会有歧义,这种情况就直接英文来描述了 ...

随机推荐

  1. javascript 字符串总结

    match():查找字符串中特定的字符,如果找到这个字符,则返回这个字符: indexOf():定位这个字符串中某一个指定的字符首次出现的位置: sub():把字符串显示为下标: sup():把字符串 ...

  2. angularjs自定义过滤器

    实现一个按输入框中的数据筛选的功能,筛选可按电影的名称.年份.评分检索框: <input type="text" placeholder="可检索名字评分和年份&q ...

  3. Python’s SQLAlchemy vs Other ORMs[转发 6]SQLAlchemy

    SQLAlchemy SQLAlchemy is an open source SQL toolkit and ORM for the Python programming language rele ...

  4. rem

    "em"是相对于其父元素来设置字体大小的,这样就会存在一个问题,进行任何元素设置,都有可能需要知道他父元素的大小,在我们多次使用时,就会带来无法预知的错误风险.而rem是相对于根元 ...

  5. 坑备忘error: expected class-name before '{' token

    今日重构之前的代码,修改了命名空间,然后一处派生的子类定义处总是总是报error: expected class-name before '{' token,网上查了查原因,出现这种情况大致有两种情况 ...

  6. .net中的序列化

    常见的序列化格式和方法 在.net中,常见的序列化格式主要有json,二进制和xml,总结如下表格. 注意事项 关于实体特性标注规则: 1,.net中所有用于序列化的实体的class上应该加上[Ser ...

  7. 关于/usr/local/lib/libz.a(zutil.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC解决办法

    具体报错截图如下: 解决方法: 题外话,我对makefill cmake也是一窍不通因此本人也是不想去积极的解决这个问题,但是当你求助无缘的时候你才会静心去思考.读到这句话的时候也许你已经发现了问题所 ...

  8. Ubuntu 下 kazam 录屏 没声音解决方案

    以下内容参考https://www.youtube.com/watch?v=5NZ0qwp2L04,我做了些修改,让它好懂些. 在应用商店里搜索 PulseAudio Volume Control 在 ...

  9. 个人c语言编程风格总结

    总结一下我个人的编程风格及这样做的原因吧,其实是为了给实验室写一个统一的C语言编程规范才写的.首先声明,我下面提到的编程规范,是自己给自己定的,不是c语言里面规定的. 一件事情,做成和做好中间可能隔了 ...

  10. bzoj 3196: Tyvj 1730 二逼平衡树

    #include<cstdio> #include<ctime> #include<cstdlib> #include<iostream> #defin ...