转http://blog.csdn.net/sudochen/article/details/8888892
一,无线网络导论
1,ISM频带
ISM频带,工业(industrial),科学(scientific),医疗(medical),ISM频带是保留给工业,科学,医疗使用的频带,在这些频带之内,只要功率符合要求,不需要申请许可证就可以使用。802.11
2,802.11b/g概述使用2.4GHz ISM频带,802.11a使用5GHz,
二,802.11网络概述,
1,IEEE 802.11是一个协议簇,主要包含以下规范(技术族谱):
1)物理层规范:802.11b,802.11a,802.11g;
2)增强型MAC层规范:802.11i,802.11r,802.11h等;
3)高层协议规范:802.11f,802.11n,802.11p,802.11s等。
2,802.11和OSI模型的关系
IEEE802规范将重心放在OSI模型的最下面两层
2,网络类型
WLAN有以下三种网络拓扑结构:
1)独立基本服务集(Independent BSS, IBSS)网络(也叫ad-hoc网络);
2)基础架构型基本服务集(Infrastructure Basic Service Set, BSS)网络;
3)扩展服务集(Extent Service Set, ESS)网络。
以上为WLAN的三种拓扑架构
3,网络服务
STA服务:
1),身份认证(Authentication),建立关联之前用来进行身份验证、
2),解除身份认证(Deauthentication),副作用是终止当前关联
3),加密(Privacy)、用来防止窃听
4),MSDU传递(MSDU delivery),用来传送数据至接收端
5),传输功率控制和动态频率选择
DS(分布式系统,AP)服务:
1),分布式,一旦接入点收到数据,就是使用分布式服务将帧送至目的地,
2),整合,整合由分布式系统提供服务,它让分布式系统得以连接至非802.11网络
3),关联(Association)、用来建立AP(作为网关使用)和移动特定工作站之间的关联,
4),解除关联(Deassociation)、
5),重新关联(Ressociation)。用来变更AP(作为网关使用)和移动特定工作站之间的关联,
4,移动性的支持
移动性是采用802.11网络的主要动机所在,在工作站移动时传送数据,就好比在移动时用手机通话。
802.11所提供的移动性存在于链路层的基本服务区域之间,就802.11而言,接入点之间可以出现3种转换
1,不转换;2,BSS转换;3,ESS转化。
三,802.11MAC基础
1,MAC所面临的挑战
1)射频链路品质
无线链路(radio link)的数据传输会受到噪声于干扰的影响。多径衰落造成的布线死区(dead line)也可能导致帧无法传送,因此采用肯定确认机制(positive acknowledgment),所有传出去的帧必须得到相应。
上图所列的步骤为一个原子操作,所谓原子操作,即不可分割的,非成即败,即完成所有的动作-成功,否则就失败,不存在第三种情况,和linux内核片成的原子变量一个解释
2)隐藏节点的问题
为了防止冲突发生,802.11允许工作站使用Request to send(RTS)请求发送以及Clear to Send(CTS)清除发送,由于RTS,CTS帧会延长帧交易的过程,因此RTS,CTS,数据帧,以及最后的相应帧均会被视为原子操作的一部分。
2,MAC访问模式与时机
1),ethernet之类的CSMA\CA访问是由分布式协调功能(distributed,coordination function,DCF)控制,
2),如果需要用到无竞争服务(contention-free service),可通过构建有DCF之上的(point coordination function,PCF)点协调功能,
3),介于两者之间的混合型协调功能(hybrid coordination function – HCF)
3,载波监听与网络分配矢量
载波监听功能(carrier sensing)主要用于来判断媒体是否处于可用的状态(物理载波监听,虚拟载波监听)
1),物理载波监听:有时不能提供所有必要的信息,价格昂贵,
2),虚拟载波是由网络分配矢量(network allocation vector,NAV)来实现的,802.11帧通常会包括一个duration字段,用来预定一段媒介的使用时间,NAV本身就是一个定时器,以微秒为单位,工作站将NAV设定为预计使用媒介的时间,只要NAV的值不为零,就代表媒介处于忙碌状态,反之,虚拟载波监听功能会显示媒介处于闲置状态。
4,帧间间隔
a,短帧间间隔(short interframe space,SIFS),用于高优先级的传输场合(RTS/CTS)
b,PCF帧间间隔(PCF interframe space,PIFS),用于无竞争式服务中
c,DCF帧间间隔(DCF interframe space,DIFS),用于竞争式服务中最短的媒介闲置时间
d,扩展帧间间隔(extended interframe space,EIFS),用于帧传输出错时才会用到
5,DCF的退避算法
6,帧的分段与重组
当上层封包的大小超过网络管理人算所设定的阈值时,就会进行帧的分段,每个帧片段(fragment)都有相同的帧序号(frame sequence number)以及一个递增的帧片段号(fragment number)以便于重组,帧控制信息(frame control information)用来指示是否还有其他帧片段等待接收,构成整个帧的所有帧片段会在所谓的片段突发期进行传送,
7,帧的格式
| frame control | duiration/ID | addr1 | addr2 | addr3 | seq-ctl | addr4 | frame-body | FCS |
802.11帧分为三个部分:帧头(Mac header)、帧实体(body)、FCS域。分为MAC header、Frame Body和FCS。
MAC header由4个字段构成,分别为:Frame Control、Duration ID、Address、Seq-ctl,
1),帧控制字段
| a | b(1) | b(2) | c(1) | c(2) | d | e | f | g | h | i |
a,version字段:
b,type和subtype字段详解
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=0 | To DS=1 | |
From DS=0 | 所有管理与控制帧。IBSS里的数据帧(非基础结构型数据帧) | 基础结构型网络里无线工作站所传送的数据帧 |
From DS=1 | 基础结构型网络里无线工作站所收到的数据帧 | 无线桥接器上的数据帧 |
为了服务处于省电模式中的工作站,接入点会将这些从分布式系统接收来的帧加以缓存。接入点如果设定此位,即代表至少有一个帧等待给休眠中的工作站
相对于固定式网络,无线传送本质上就比较容易被拦截。如果帧受到链路层安全协议的保护,则此位会被设定为1,而且该帧会略有不同。之前的Protected Frame位被称为WEP位
帧与帧片段可依次传送,不过发送端与接收端的MAC必须付出额外的代价。一旦进行严格依序(strict ordering)传送,则此位会被设定为1,否则这个位必然为0。