STA (工作站)启动初始化、开始正式使用、AP 传送数据幀之前,要经过三个阶段才能接入:
(1) 扫描(SCAN)(3) 关联(Association)
1) 若无线站点 STA 设成 Ad-hoc (无AP)模式:
STA先寻找是否已有 IBSS(与STA所属相同的SSID)存在,如有,则参加(join);若无, 则会自己创建一个IBSS,等其他站来 join。
2) 若无线站点 STA 设成 Infrastructure (有AP)模式:
--主动扫描方式 (特点:能迅速找到)
-- 被动扫描方式 (特点:找到时间较长,但STA节电)
1) Association
• Frame Control(帧控制域)
• Duration/ID(持续时间/标识)
• Address(地址域)
• Sequence Control(序列控制域)
• Protocol Version(协议版本):通常为0;
• Type(类型域)和Subtype(子类型域):共同指出帧的类型;
• 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:帧体部分包含被密钥套处理过的数据;否则:0;
• Order(序号域):1:长帧分段传送采用严格编号方式;否则:0。
表明该帧和它的确认帧将会占用信道多长时间;对于帧控制域子类型为:Power Save-Poll的帧,该域表示了STA的连接身份(AID, Association Indentification)。
Address(地址域):源地址(SA)、目的地址(DA)、传输工作站地址(TA)、接收工作站地址(RA),SA与DA必不可少,后两个只对跨BSS的通信有用,而目的地址可以为单播地址(Unicast address)、多播地址(Multicast address)、广播地址(Broadcast address)。
Sequence Control(序列控制域):由代表MSDU(MAC Server Data Unit)或者MMSDU(MAC Management Server Data Unit)的12位序列号(Sequence Number)和表示MSDU和MMSDU的每一个片段的编号的4位片段号组成(Fragment Number)。
包含信息根据帧的类型有所不同,主要封装的是上层的数据单元,长度为0~2312个字节,可以推出,802.11帧最大长度为:2346个字节;
包含32位循环冗余码。
1) 方案一:
A和B 在同一个IBSS,A->B (Ad hoc无线自组网中的数据帧的地址格式)。
2) 方案二:
从AP发出的无线数据帧中的地址格式。
3) 方案三:
发到AP的无线数据帧中的地址格式。
4) 方案四:
通过无线分布系统传输的无线数据帧中的地址格式。
WLAN有以下三种网络拓扑结构:
1) 独立基本服务集(Independent BSS, IBSS)网络(也叫ad-hoc网络);
2) 基本服务集(Basic Service Set, BSS)网络;
3) 扩展服务集(Extent Service Set, ESS)网络。
其各自的特点如下所示:
也叫Ad Hoc 网(无线自组网):IBSS (Independent BSS,独立基本服务集),无AP,站点间直接通信。
又名Infrastructured网(基础设施网):有AP(Access Point, 接入点),无线站点通信首先要经过AP。
ESS:属 Infrastructured 网 ( DS:分配系统,AP:接入点, SSID:ESS扩展服务集标识符。一个移动节点使用某 ESS 的 SSID 加入到该扩展服务集中,一旦加入ESS,移动节点便可实现从该ESS的一个BSS到另一个BSS的漫游)
针对帧的不同功能,可将802.11中的MAC帧细分为以下3类:
• 数据帧:用于在竞争期和非竞争期传输数据;
• 控制帧:用于竞争期间的握手通信和正向确认(RTS信道预约、CTS预约成功、ACK等)、结束非竞争期等,为数据帧的发送提供辅助功能;
• 管理帧:主要用于STA与AP之间协商、关系的控制,如关联、认证、同步等。
Frame Control(帧控制域)中的Type(类型域)和Subtype(子类型域)共同指出帧的类型,当Type的B3B2位为00时,该帧为管理帧;为01时,该帧为控制帧;为10时,该帧为数据帧。而Subtype进一步判断帧类型,如管理帧里头细分为关联和认证帧
Type | SubType | FrameType |
00 | 0000 |
Association request (连接请求) |
00 |
0001 | Association response (连接响应) |
00 |
0010 | Reassociation request(重连接请求) |
00 |
0011 | Reassociation response(重连接联响应) |
00 |
0100 | Probe request(探测请求) |
00 |
0101 | Probe response(探测响应) |
00 |
1000 |
Beacon(信标,被动扫描时AP 发出,notify) |
00 |
1001 | ATIM(通知传输指示消息) |
00 |
1010 | Disassociation(解除连接,notify) |
00 |
1011 | Authentication(身份验证) |
00 |
1100 | Deauthentication(解除认证,notify) |
00 |
1101~1111 |
Reserved(保留,未使用) |
ATIM:Announcement Traffic Indication Message,ATIM仅在ATIM窗口期间传送,ATIM没有负载。
Type | Subtype | Frametype |
01 | 1010 | Power Save(PS)- Poll(省电-轮询) |
01 |
1011 | RTS(请求发送,即: Request To Send ,预约信道,帧长20字节) |
01 |
1100 | CTS(清除发送,即:Clear To Send ,同意预约,帧长14字节) |
01 |
1101 | ACK(确认) |
01 |
1110 | CF-End(无竞争周期结束) |
01 |
1111 | CF-End(无竞争周期结束)+CF-ACK(无竞争周期确认) |
RTS和CTS用于信道预约,CF-End+CF_ACK和ACK用于确认正确接收到帧。
1) ACK帧
Type | Subtype | Frametype |
10 | 0000 | Data(数据) |
10 |
0001 | Data+CF-ACK |
10 |
0010 | Data+CF-Poll |
10 |
0011 | Data+CF-ACK+CF-Poll |
10 |
0100 | Null data(无数据:未传送数据) |
10 |
0101 | CF-ACK(未传送数据) |
10 |
0110 | CF-Poll(未传送数据) |
10 |
0111 | Data+CF-ACK+CF-Poll |
10 |
1000 | Qos Data |
10 |
1001 | Qos Data + CF-ACK |
10 |
1010 | Qos Data + CF-Poll |
10 |
1011 | Qos Data + CF-ACK+ CF-Poll |
10 |
1100 | QoS Null(未传送数据) |
10 |
1101 | QoS CF-ACK(未传送数据) |
10 |
1110 | QoS CF-Poll(未传送数据) |
10 |
1111 | QoS CF-ACK+ CF-Poll(未传送数据) |
|