详细请参阅802.11 协议!
WiFi是Wireless-Fidelity(无线仿真)的缩写。它是基于802.11 协议,可分为MAC层(媒体访问控制层)和PHY层(物理层)。802.11 的频道主要定义在2.4GHZ、5.8GHZ。
1,802.11协议
IEEE802.11,1997年,原始标准(2Mbit/s,播在2.4GHz)。
IEEE802.11a,1999年,物理层补充(54Mbit/s,播在5GHz)。
IEEE802.11b,1999年,物理层补充(11Mbit/s,播在2.4GHz)。
IEEE802.11c,符合802.1D的媒体接入控制层桥接(MAC Layer Bridging)。
IEEE802.11d,根据各国无线电规定做的调整。
IEEE802.11e,对服务等级(Quality of Service, QoS)的支持。
IEEE802.11f,基站的互连性(IAPP,Inter-Access Point Protocol),2006年2月被IEEE批准撤销。
IEEE802.11g,2003年,物理层补充(54Mbit/s,播在2.4GHz)。
IEEE802.11h,2004年,无线覆盖半径的调整,室内(indoor)和室外(outdoor)信道(5GHz频段)。
IEEE802.11i,2004年,无线网络的安全方面的补充。
IEEE802.11j,2004年,根据日本规定做的升级。
IEEE802.11k,该协议规范规定了无线局域网络频谱测量规范。该规范的制订体现了无线局域网络对频谱资源智能化使用的需求。
IEEE802.11l,预留及准备不使用。
IEEE802.11m,维护标准;互斥及极限。
IEEE802.11n,更高传输速率的改善,基础速率提升到72.2Mbit/s,可以使用双倍带宽40MHz,此时速率提升到150Mbit/s。支持多输入多输出技术(Multi-Input Multi-Output,MIMO)。
IEEE802.11o,针对VOWLAN(Voice over WLAN)而制订,更快速的无限跨区切换,以及读取语音(voice)比数据(Data)有更高的传输优先权。
IEEE802.11p,这个通信协议主要用在车用电子的无线通信上。它设置上是从IEEE 802.11来扩充延伸,来符合智能型运输系统(Intelligent Transportation Systems,ITS)的相关应用。
IEEE802.11q:
IEEE802.11r:快速 BSS切换 (FT) (2008)
IEEE802.11s: Mesh Networking, Extended Service Set (ESS) (July 2011)
IEEE802.11t: Wireless Performance Prediction (WPP)—test methods and metricsRecommendation cancelled
IEEE802.11u: Improvements related to HotSpots and 3rd party authorization ofclients, e.g. cellular network offload (February 2011)
IEEE802.11v: Wireless network management (February 2011)
IEEE802.11w: Protected Management Frames (September 2009)
IEEE802.11x:
IEEE802.11y: 3650–3700 MHz Operation in the U.S. (2008)
IEEE802.11z: Extensions to Direct Link Setup (DLS) (September 2010)
IEEE802.11-2012: A new release of the standard that includes amendments k, n, p, r,s, u, v, w, y and z (March 2012)
IEEE802.11aa: Robust streaming of Audio Video Transport Streams (June 2012)
IEEE802.11ab:
IEEE802.11ac,802.11n的潜在继承者,更高传输速率的改善,当使用多基站时将无线速率提高到至少1Gbps,将单信道速率提高到至少500Mbps。使用更高的无线带宽(80MHz-160MHz)(802.11n只有40MHz),更多的MIMO流(最多8条流),更好的调制方式(QAM256)。。
IEEE802.11ad: Very High Throughput 60 GHz (December 2012) - see WiGig
IEEE802.11ae: Prioritization of Management Frames (2012年3月)
2,802.11 phy调制技术总结
The802.11 2.4 GHz frequency hopping PHY(跳频)
The 802.11 2.4 GHz direct sequencing PHY(直接序列)
The 802.11b 2.4 GHz direct sequencing PHY
The 802.11a 5 GHz Orthogonal Frequency Division Multiplexing (OFDM) PHY
The 802.11g 2.4 GHz extended rate physical (ERP) laye
802.11中定义了三种物理层规范(主要负责编码与调制),分别是:频率跳变扩展频谱(FHSS)PHY规范、直接序列扩展频谱(DSSS)PHY规范和红外线(IR)PHY规范;
OFDM(正交频分多路复用Orthogonal Frequency Division Multiplexing)是一种多载波发射技术,它将可用频谱划分为许多载波,每一个载波都用低速率数据流进行调制。它获取高数据传输率的诀窍就是,把高速数据信息分开为几个交替的、并行的Bit流,分别调制到多个分离的子载频上,从而使信道频谱被分到几个独立的、非选择的频率子信道上,在AP与无线网卡之间进行传送,实现高频谱利用率。
3.802.11 phy接口层浅析
PHY的上层是MAC,各个版本的PHY需要向MAC提供统一的调用接口,就是原语。原语包括以下几类:
3.1 基本特性。包括:MIB管理(PLME-GET、PLME-SET)、复位(PLME-RESET)、特性参数查询(PLME-CHARACTERISTICS)、DSSS进入测试模式(PLME-DSSSTESTMODE)、发送时间估计(PLME-TXTIME)
3.2 数据首发。包括:数据传输(PHY-DATA)、发送控制(PHY-TXSTART、PHY-TXEND)、信道空闲检测(PHY-CCARESET、PHY-CCA)、接收控制(PHY-RXSTART、PHY-RXEND)
PHY内部结构:
最下层叫PMD(物理介质依赖),与实际的物理介质打交道
中间层叫PLCP(物理层聚合),把MAC层传下来要发送的数据变成对应的实际物理层PHY要发送的数据(经过调制和编码,肯定和MAC层原来的不同了),送给PMD
最上层叫PHY SAP,就是上段定义的对MAC的服务接口。是MAC可以直接调用的稳定接口,不论具体的PHY是什么,这些接口都是可用的,而且只可以调用这些接口。
4.802.11 MAC
802.11MAC主要分为数据、管理部分;
数据部分:数据包的收发接口
管理部分:媒介访问控制、扫描、认证与保密、关联、电源管理、定时器同步等。
数据部分 |
|
数据 |
MA-UNITDATA |
管理部分 |
|
电源管理 |
MLME-POWERMGT |
信道扫描 |
MLME-SCAN |
时间同步 |
MLME-JOIN |
认证 |
MLME-AUTHENTICATE |
断开认证 |
MLME-DEAUTHENTICATE |
建立连接 |
MLME-ASSOCIATE |
重新连接 |
MLME-REASSOCIATE |
断开连接 |
MLME-DISASSOCIATE |
复位 |
MLME-RESET |
网络开始 |
MLME-START |
测量 |
MLME-MREQUEST |
信道测量 |
MLME-MEASURE |
测量报告 |
MLME-MREPORT |
信道切换 |
MLME-CHANNELSWITCH |
发送功率通知 |
MLME-TPCADAPT |
设置密钥 |
MLME-SETKEYS |
删除密钥 |
MLME-DELETEKEYS |
迈克尔失败事件 |
MLME-MICHAELMICFAILURE |
可扩展局域网认证协议帧 |
MLME-EAPOL |
点对点连接请求 |
MLME-PeerKeySTART |
设置发送或接收的安全保护 |
MLME-SETPROTECTION |
帧密钥错误丢弃通知 |
MLME-PROTECTEDFRAMEDROPPED |
交通流(TS)管理接口 |
MLME-ADDTS/ MLME-DELTS |
直接连接管理 |
MLME-DLS/ MLME-DLSTearDown |
高层同步支持 |
MLME-HL-SYNC |
合并ACK帧管理 |
MLME-ADDBA /MLME-DELBA |
Qos调度变更通知 |
MLME-SCHEDULE |
发行商特有 |
MLME-VSPECIFIC |
MIB管理 |
MLME-SET/MLME-GET |
5.媒介访问机制
1),DCF:分布式协调功能(Distibuted Coordination Function),它主要用于载波侦听多路访问及冲突避免(CSMA/CA)技术;
2),PCF :点协调功能(Point Coordination Function)
帧间隔:主要协调介质的访问
ShortInterframe Space(SIFS):在802.11系列无线局域网中SIFS是固定值,SIFS是最小的帧间间隔,因此采用SIFS的节点具有访问无线链路的最高优先级。它等于节点从发送状态切换到接收状态并能正确解码所需要的时间,或者从接收状态转为发送状态所需要的时间,在SIFS过期后可能发送的数据包包括ACK、CTS帧,不同标准中规定的SIFS值不同。
Standard |
SIFS(μs) |
IEEE 802.11b |
10 |
IEEE 802.11a |
16 |
IEEE 802.11g |
10 |
DCF Interframe Space(DIFS):在DCF协议中,节点在开始发送数据之前需要监测信道是否空闲。如果信道已经空闲,则节点仍需等待DIFS段时间才开始发送数据;而如果在DIFS时间段内任一时刻信道被监测为忙,则节点不得不推迟它的数据发送。DIFS和SIFS间的计算关系如下:
DIFS =SIFS + (2 * Slot time)
Standard |
Slot Time(µs) |
DIFS(µs) |
IEEE 802.11b |
20 |
50 |
IEEE 802.11a |
9 |
34 |
IEEE 802.11g |
9 or 20 |
28 or 50 |
PCF Interframe Space(PIFS):PCF使得AP等待PIFS而不是DIFS时间以访问信道,由于DIFS > PIFS >SIFS,因此AP总比普通节点具有更高的访问信道的优先级。
PIFS =SIFS + Slot time
Standard |
Slot time(µs) |
PIFS(µs) |
IEEE 802.11b |
20 |
30 |
IEEE 802.11a |
9 |
25 |
IEEE 802.11g |
9 or 20 |
19 or 30 |
Extended Interframe Space(EIFS):在前一帧出错的情况下,发送节点不得不延迟EIFS而不是DIFS时间段后再发送下一帧。
EIFS =Transmission time of Ack frame at lowest basic rate + SIFS + DIFS
6.影响wifi性能速率主要有以下三个因素:
信道带宽
调制模式
空间流的个数
802.11 性能提升的主要技术如下:
802.11n之MIMO-OFDM
OFDM调制技术是将高速率的数据流调制成多个较低速率的子数据流,再通过已划分为多个子载体的物理信道进行通讯,从而减少ISI(码间干扰)机会。
MIMO(多入多出)技术是在链路的发送端和接收端都采用多副天线,将多径传播变为有利因素,从而在不增加信道带宽的情况下,成倍地提高通信系统的容量和频谱利用率,以达到WLAN系统速率的提升。
将MIMO与OFDM技术相结合,就产生了MIMO OFDM技术,它通过在OFDM传输系统中采用阵列天线实现空间分集,提高了信号质量,并增加了多径的容限,使无线网络的有效传输速率有质的提升。
802.11 之双频段(20-MHz和40-MHz带宽)
IEEE 802.11n通过将两个相邻的20MHz带宽捆绑在一起组成一个40MHz通讯带宽,在实际工作时可以作为两个20MHz的带宽使用(一个为主带宽,一个为次带宽,收发数据时既可以40MHz的带宽工作,也可以单个20MHz带宽工作),这样可将速率提高一倍。同时,对于IEEE 802.11a/b/g,为了防止相邻信道干扰,20MHz带宽的信道在其两侧预留了一小部分的带宽边界。而通过频带绑定技术,这些预留的带宽也可以用来通讯,从而进一步提高了吞吐量。
802.11之ShortGuard Interval
Short GI(Guard Interval)是802.11n针对802.11a/g所做的改进。射频芯片在使用OFDM调制方式发送数据时,整个帧是被划分成不同的数据块进行发送的,为了数据传输的可靠性,数据块之间会有GI,用以保证接收侧能够正确的解析出各个数据块。无线信号在空间传输会因多径等因素在接收侧形成时延,如果后续数据块发送过快,会和前一个数据块形成干扰,而GI就是用来规避这个干扰的。11a/g的GI时长为800us,而Short GI时长为400us,在使用Short GI的情况下,可提高10%的速率。另外,Short GI与带宽无关,支持20MHz、40MHz带宽。
在信道的竞争中所产生的冲突,以及为解决冲突而引入的退避机制都大大降低了系统的吞吐量。802.11n为了解决MAC层的这两个问题,采用了帧聚合(Frame Aggregation)技术和Block Acknowledgement机制。
802.11之帧聚合技术(MSDU的聚合(A-MSDU)和针对MPDU的聚合(A-MPDU)
A-MSDU技术是指把多个MSDU通过一定的方式聚合成一个较大的载荷。这里的MSDU可以认为是Ethernet报文。通常,当AP或无线客户端从协议栈收到报文(MSDU)时,会打上Ethernet报文头,这里我们称之为A-MSDU Subframe;而在通过射频口发送出去前,需要逐一将其转换成802.11报文格式。而A-MSDU技术旨在将若干个A-MSDU Subframe聚合到一起,并封装为一个802.11报文进行发送。从而减少了发送每一个802.11报文所需的PLCP Preamble、PLCP Header和802.11MAC头的开销,同时减少了应答帧的数量,提高了报文发送的效率。
A-MPDU聚合的是经过802.11报文封装后的MPDU,这里的MPDU是指经过802.11封装过的数据帧。通过一次性发送若干个MPDU,减少了发送每个802.11报文所需的PLCP Preamble、PLCP Header,从而提高系统吞吐量。
802.11之BlockAcknowledgement
为保证数据传输的可靠性,802.11协议规定每收到一个单播数据帧,都必须立即回应ACK帧。接收端在收到A-MPDU后,需要对其中的每一个MPDU进行处理,并针对每一个MPDU发送应答帧。
而Block Acknowledgement通过使用一个ACK帧来完成对多个MPDU的应答,以降低这种情况下ACK帧的数量。
802.11之SpatialMultiplexing Power Save
因此802.11n协议在节省电源处理上做了改进,采用了 Spatial Multiplexing(SM) Power Save技术,其技术原理在于当无数据转发时,STA只有一个天线处于工作状态,其余天线均处于休眠状态,从而达到节省电源的目的。SM Power Save定义了两种电源管理方式:动态SM Power Save和静态SM Power Save。
7.802.11MAC帧格式
它在Frame Control(帧控制域)中的Type(类型域)和Subtype(子类型域)共同指出帧的类型,当Type的B3B2位为00时,该帧为管理帧;为01时,该帧为控制帧;为10时,该帧为数据帧。而Subtype进一步判断帧类型,如管理帧里头细分为关联和认证帧。如下为常用帧类型:
针对帧的不同功能,可将802.11中的MAC帧细分为以下3类:
控制帧:用来协助数据帧的发送,负责无线区域的清空,信道的获取以及接受数据的确认;
RTS/CTS :负责无线信道的清空,取得媒介的控制权。
PS-Poll:sta从省电模式醒来,可发送PS-Poll帧,从AP获取缓存帧。
ACK:接收端收到报文后,需要回应ACK帧向发送端确认收到报文。
Block AckRequest/Block ACK:802.11n中,为提升MAC层效率,使用Block ACK机制对一批数据帧一次性的确认。
CF END
CF ACK
数据帧:主要负责传输数据报文。主要定义了两种数据帧:
Data:真正的数据报文,所有802.11数据报文的载体。
NULL:只有802.11 MAC header和FCS 尾;
Data+CF-ACK
Data+CF-POLL
Data+CF-ACK+CF-POLL
CF-ACK无竞争周期的确认,如果没有数据待传,工作站以此帧确认之前所收到的帧;
CF-POLL无竞争周期轮询,CF-Poll帧是由接入点发送给移动式工作站的,用来赋予移动式工作站传送一个缓存帧的权利。只有当接入点没有数据要传给移动式工作站时才会使用这个帧。
CF-ACK+CF-Poll(nodata)
管理帧:主要用于STA与AP之间协商、关系的控制,如关联、认证、同步,beacon等;
1),认证帧(Authentication Frame)
2),解除认证帧(Deauthentication Frame)
3),连接请求帧(Association Request Frame)
4),连接响应帧(Association Response Frame)
5),重新连接请求帧(Reassociation Request Frame)
6),重新连接响应帧(Reassociation Response Frame)
7),解除连接帧(Disassociation Frame)
8),信标帧(Beacon Frame)
9),Probe帧(Probe Frame)
10),Probe请求帧(Probe Request Frame)
11),Probe响应帧(Probe Response Frame)
在802.11中,比较重要的管理帧有:
Beacon (notify):周期性宣告802.11网络存在,以及支持的各类无线参数,如ssid、速率、认证类型、缓存帧的STA列表等。
Probe (requestand response):STA可以发送Probe Request来主动探测周围有哪些802.11网络,接收到AP需回应Probe Response(包含beacon封包的各种参数)
Authenticate(request and response):认证
Associate(request and response):关联请求/应答,sta尝试关联每个AP。
Reassociate(request and response)
Dissassociate(notify)
Deauthenticate(notify):解除认证
Action帧:802.11h标准中添加的帧,用来要求802.11设备进行频谱管理,如空间中的信道、传输功率控制情况进行测量,或进行信道切换通告。Action帧可细分为5种子类型:measurement Request/Report(测量请求/报告)、TPC request、report(传输功率控制请求/报告)、
Channel Switch Announcement(信道切换报告)。
8.WiFi Station连接流程
无线扫描阶段 ------> 选择要连接的ap ------> 认证阶段 -----> 关联阶段(STA通过Association和一个AP建立关联,后续的数据报文的收发只能和建立Association关系的AP进行) -----> 四次握手阶段 ----->发送数据阶段
等后续用omnipeek 抓取封包,在指定详细的步骤!
9.wifi p2p 之miracast 应用
miracast框架,如下图(参考miracast协议栈):
HIDC: Human Interface Device Class
UIBC: User Input Back Channel
PES: Packetized Elementary Stream
HDCP: High-bandwidth Digital Content Protection
MPEG2-TS: Moving Picture Experts Group 2 TransportStream
RTSP: Real-Time Streaming Protocol
RTP: Real-time Transport Protocol
Wi-Fi P2P: Wi-Fi Direct
TDLS: Tunneled Direct Link Setup
后续将RF相关概念!
WPA_SUPPLICANT机制整理出来!
上述为本人学习wifi,整理出来的一些理论知识点!如有疑问或者错误,还请大家指出!