802.11无线权威指南第三章学习笔记

目录

MAC所面临的挑战

MAC访问模式与时机

利用DCF进行基于竞争的访问

帧的分段与重组

帧格式

802.11对上层协议的封装

基于竞争的数据服务

帧的处理与桥接


MAC所面临的挑战

什么是MAC?

MAC是一组用以决定如何访问介质与传输数据的规则。(媒介访问控制)

无线链路传输时会受到干扰(噪声/多径衰落所造成的布线死区)  导致帧无法传送。

和其他链路层协议不同 802.11采用肯定确认机制。所有传送出去的帧都必须得到相应,只要有一个环节失败,该帧即被视为已经遗漏。下图3-1即数据传输的肯定确认。

此步骤称为原子操作,意值不可分割的单一事务单元。虽然整个事务过程包含好几个步骤,但还是被视为单一的不可分割的操作。从传送者的角度而言,数据在哪漏失并不重要,因为不论如何,数据帧还是得予重传。

 隐藏节点的问题

节点2可以直接和节点1及节点3通信 不过某些因素导致节点1与节点3无法通信(可能是距离,无法收到对方的无线电波)。那么从节点1的角度来看 节点3属于隐藏节点。

在无线网络中 由隐藏节点导致的冲突问题相当难以监测,因为无线收发器通常只有半双工工作模式,即无法同时收发数据。为了防止冲突发生,802.11允许工作站使用RTS(请求发送)。及CTS(清除发送)信号来清空传送区域。由于RTS与CTS帧均会延长帧交易过程,因此RTS帧,CTS帧,数据帧以及最后的响应帧均被视为相同原子操作的一部分。

RTS(请求发送)帧本身带有两个目的:预约无线链路的使用权要求接收到这一帧的其他工作站保持沉默。

一旦收到RTS帧,接收端会以CTS(清除发送)帧应答。和RTS帧一样,CTS帧也会令附近的工作站保持沉默。等到RTS/CTS完成交换过程,节点1即可传送之前待传送的帧,而无需担心来自其他隐藏节点的干扰。

 整个RTS/CTS传输过程会用到好几个帧,消耗一定的带宽。因此,它通常只用在高用量的环境下以及传输竞争比较显著的场合

如果802.11网卡的驱动程序支持,用户可通过调整RTS阈值来控制RTS/CTS交换过程,只要帧大于此阈值,RTS/CTS交换过程就会进行,小于此阈值则会直接传送帧。

MAC访问模式与时机

无线媒介的访问是由协调功能控制。Ethernet之类的CSMA/CA(载波侦听多路访问/冲突避免)访问是由分布式协调功能(DCF)控制。

如果需要用到无竞争服务,则可通过构建DCF之上的点协调功能(PCF)来控制。

在各取所需的DCF与精确控制的PCF之间,网络也可以介于两种极端之间采取中庸之道的混合协调功能(HCF)

DCF(分布式协调功能)
DCF是标准CSMA/CA访问机制的基础。和Ethernet一样,在传送数据之前,它会先检查无线链路是否处于清空状态。为了避免冲突的发生,当某个传送者占据信道时,工作站会随机为每个帧选定一段退避时间

PCF(点协调功能)
提供的是无竞争服务。称为点协调者的特殊工作站可以确保不必通过竞争就使用媒介
点协调者位于接入点,因为只有基础结构型网络才会使用PCF。
为了赋予比标准竞争式服务还高的优先级,PCF允许工作站经过一段较短的时间间隔后即可传送帧。

HCF(混合协调功能)
HCF允许工作站维护多组服务队列,针对需要更高服务质量的应用提供更多的无线媒介访问机会

载波监听功能与网络分配矢量

载波监听主要用来判断媒介是否处于可用状态    
802.11具备两种载波监听功能  :物理载波监听
                                                     虚拟载波监听

只要其中一个监听功能显示媒介处于忙碌状态,MAC就会将此状况汇报给较高层的协议。

物理载波监听功能是由物理层所提供,取决于所使用的媒介与调制方式。                                    (硬件贵,隐藏节点随处可见,物理载波监听并无法提供所有必要的信息)

虚拟载波监听网络分配矢量(NAV)所提供。
802.11的帧通常会包含一个Duration字段,用来预定一段媒介使用时间。
NAV本身其实就是一个定时器,用来指定预计要占用媒介多少时间,以微妙为单位。工作站会将NAV设定为预计使用媒介的时间,这包括完成整个操作必须用到的所有帧。

其他工作站的帧会将NAV的值倒数至零。只要NAV的值不为零,就代表媒介处于忙碌状态
NAV为零时,虚拟载波监听功能会显示媒介处于闲置状态

利用NAV网络分配矢量可保证工作站的原子操作不被中断

图3-5说明了NAV如何保障整个过程不受干扰(用以说明多个工作站之间的互动,每个工作站各自有相应的定时器)

工作站对媒介的访问可加上阴影的条状图来表示,均会被标上帧类型,没任何操作之处会标上帧间间隔。

3-5图底部  NAV线上出现NAV条状图 工作站就必须延迟访问媒介

                  因为虚拟载波监听机制将会指出媒介正处于忙碌状态

contention window                      //竞争窗口

access to medium deferred        //对介质的访问延迟

网络上的每一个工作站不见得都会收到这些RTS帧,因此接收端会以CTS帧加以相应,其中也包含NAV,不过为时较短。此NAV可防止其他工作站在传输过程中访问媒介,直到传输过程结束,一旦完成整个过程,经过一段分布式帧间间隔之后,任何工作站均可对媒介进行访问,此时便进入竞争窗口。

帧间间隔

帧间间隔在协调媒介的访问上扮演着重要的角色

802.11会用到四中不同的帧间间隔,其中三种用来决定媒介的访问,关系如图3-6所示

MAC内置了避免冲突的功能(NVA),所以工作站会延迟媒介的访问,直到媒介再度闲置,不同的帧间间隔会为不同类型的传输产生不同的优先次序。(高优先级的数据所等待的时间较短)

短帧间间隔(SIFS)

PCF帧间间隔(PIFS)

DCF帧间间隔(DIFS) 

扩展帧帧间间隔(EIFS) 

利用分布式协调功能DCF(当某个传送者占据信道时,工作站会随机为每个帧选定一段退避时间)进行基于竞争的访问,大部分的传输操作均会采用DCF(分布式协调功能)

可从802.11 MAC的规则中归纳出一组经常使用的基本规则
在所有使用DCF(分布式协调功能)的传输中将会运用到两项基本规则

在特定情况下会运用到一些额外的规则。其中有一些规则取决于“线上”的特殊情况且与之前传送的结果有关。(此处不做赘述) 

DCF(分布式协调功能)与错误恢复

每个帧或帧片段会分别对应到一个重试计数器
工作站本身有两个重试计数器:短帧重试计数器与长帧重试计数器
                                                  长度小于RTS阈值的帧被视为短帧
                                                  长度大于RTS阈值的帧被视为长帧
帧重试计数器由零起算,只要帧传送失败即累加。 

除了相应的重试计数器,MAC会赋予每个帧片段一个最长的”生存时间”。

传送出第一个帧片段之后,生存时间计数器随即启动一旦超过生存时间,该帧便会被丢弃,因此不会重试其余的帧片段。

 使用重试计数器

和大部分其他的网络协议一样,802.11是通过重传机制来提供可靠性。

 为什么要分短帧重试计数器和长帧重试计数器?

是为了让网络管理人员利用不同长度的帧来调整网络的稳定性
长帧需要较多的缓存空间,所以两种不同重传限制的一个潜在应用即是放宽长帧的重传限制,以减少所需的缓存空间。

DCF的退避算法

ps:分布式协调功能DCF(当某个传送者占据信道时,工作站会随机为每个帧选定一段退避时间)

当帧传送完成且经过一段DIFS(DCF帧间间隔),工作站便会试图传送之前拥堵的数据。DIFS之后紧接的一段时间称为竞争窗口或退避窗口

此窗口可进一步分割为时隙,时隙长度因媒介而已,速度较高的物理层会使用较短的时隙。工作站会随即挑选某个时隙,等候该时隙到来以便访问媒介。

当多个工作站试图同时传送数据时,挑到第一个时隙的工作站可以有限传送。所有这些时隙编号不应有差异。

图3-7以DSSS(直接序列扩频)物理层为例,显示当传送次数增加,竞争窗口随之增长的情况。不同物理层会使用不同大小的退避时间,不过原则是相同的。

竞争窗口的大小通常是2的指数倍数减1(例如61,63,127,255)每当重试计数器累增,竞争窗口即移至下一个2的指数倍数。竞争窗口的大小受物理层的限制。                                                 例如:DS物理层限制竞争窗口最多为1023个传送时隙。

当帧传送成功,竞争窗口即被重设为最小值;如果到达重试计数器的上限,该帧随即被丢弃

帧的分段与重组

来自上层的封包以及某些较大型的管理帧可能必须经过分段,无线信道才有办法加以传送。

当上层封包的大小超过网络管理人员所设定的分段阈值时,就会进行帧的分段。                          每个帧片段都有相同的帧序号以及一个递增的帧片段编号便于重组。 

ps:NAV 网络分配失量(定时器,用来指定预计要占用媒介多少时间)

帧格式 

并非帧都会用到所有的地址字段,这些地址字段的值也会因为MAC帧类型的不同而有所差异。

图3-9 展示了一般的802.11 MAC帧,字段的传送顺序由左至右,最高有效位将会最后出现。

 Frame Control字段  (帧控制)

 所有帧的开头均是长为两个字节的Frame Control字段,该字段包括以下子字段
                         Protocol字段
                         Protocol(协议版本)字段由两位构成,用以现在该帧所使用的MAC版本。                                                                        目前,802.11 MAC只有一个版本,它的协议编号为0。

Type 与 subtype字段:用来指定使用的帧类型

To DS 与from DS位
用来指示帧的目的地是否为分布式系统。在基础结构型网络里,每个帧都会设定其中一个DS位。

more  fragments位

 Retry位

有时候可能需要重传帧。任何重传的帧会将此位设定为1,以协助接收端剔除重复的帧

Power management位

用来指出发送端在完成当前的原子帧交换之后是否进入省电模式。

1代表工作站即将进入省电模式。0代表工作站会一直保持在清醒状态。

接入点必须行使一系列重要的管理功能,所以不允许进入省电模式,因此接入点所传送的帧中此位必然为0。

More data位

为了服务处于省电模式中的工作站,接入点会将这些从分布式系统接收来的帧加以缓存

接入点如果设定此位,即代表至少有一个帧待传给休眠中的工作站

Protected Frame位

如果帧受到链路层安全协议的保护,则此位会被设定为1

Duration / ID 字段

 

Duration:设定NAV

当第15个位被设定为0时,Duration/id字段就会被用来设定NAV
数值代表当前所进行的传送预计使用媒介多少微妙。工作站必须监视所收到的任何帧头并据此更新NAV。任何超出预计媒介时间的数值均会更新NAV,同时阻止其他工作访问媒介。

无竞争周期所传送的帧

 PS-Poll帧

ADDRESS字段

一个802.11 MAC帧最多可以包含4个地址(Address)字段

基本上 Address1  代表接收端
            Address2  代表发送端
            Address3  字段被接收端拿过来过滤地址(例:在基础结构型网络里,第三个地址字段会被接收端用来判断该帧是否属于其所关联的网络

802.11所使用的寻址模式乃依据其他IEEE 802网络所使用的格式,包括Ethernet。地址本身的长度有48位

如果传送给实际媒介的第一个位为0,则该地址代表单一工作站(单播
如果传送给实际媒介的第一个位为1,则该地址代表一组实体工作站,称为组播地址
如果所有位均为1,该帧即属广播,因此会传送给所有连接无线媒介的工作站

这些长为48的地址有各自不同的用途

目的地地址(destination address):长为48位的IEEE MAC标识符,代表最后的接收即负责将帧交付上层协议处理的工作站

来源地址(source address):长为48位的IEEE MAC标识符,代表传送的来源

接收端地址(receiver address):长为48位的IEEE MAC标识符,代表负责处理该帧的无线工作站

发送端地址(transmitter address):长为48位的IEEE MAC标识符,代表将帧传送至无线媒介的无线接口

基本服务集标识符(BSSID)

在基础结构型网络里,BSSID即是接入点无线接口所使用的MAC地址

而独立型网络,则会产生一个随机的BSSID并将Unibersal/Local位设定为1,以防止与其他官方指定的MAC地址产生冲突

要使用多少地址字段取决于帧类型。大部分的数据帧会用到3个字段:来源地址,目的地址以及BSSID

顺序控制字段(Sequence Control)

此字段的长度为16位,用来重组帧片段以及丢弃重复帧

由4位的片段编号(fragment number)字段以及12位的顺序编号(sequence number)字段组成。

此字段的作用相当于已传帧的计数器取4096的模数。此计数器从0起算,MAC每处理一个上层封包它就会累加1。如果上层封包被分段处理,则所有帧片段都会具有相同的顺序编号。如果是重传帧,则顺序编号不会有任何改变

帧片段之间的差异在于片段编号。第一个片段的编号为0,其后每个片段的编号依序累加1。重传的片段编号会保持原始的顺序编号以协助重组

帧主体(frame body)

 帧主体也称为数据字段,负责在工作站之间传递上层有限载荷

最初制定的规范中,802.11帧最多可以传送2304个字节的有限载荷

802.2 LLC标头有8个字节,最多可以传送2296个字节的网络协议有限载荷

帧校验序列(FCS)

和Ethernet一样,802.11帧也是以帧校验序列结束

FCS通常被视为循环冗(rong)余校验(CRC)码,因为底层的数学运算相同

FCS让工作站能够检查所收到的帧的完整性

802.11对上层协议的封装

802.11是以802.2的逻辑链路控制(LLC)封装来携带上层协议

下图显示了如何以802.2 LLC封装来携带IP封包

802.1h与RFC 1042所使用的MAC标头长度为12个字节,其内容为Ethernet上的来源MAC地址与目的MAC地址

传送时,用来封装LLC数据的方式有两种

一种是RFC 1024所描述的方式,另外一种则是802.1H所规范的方式

两种标准各有其别名,RFC 1024有时候被称为IETF封装,而802.1 H有时候则被称为隧道封装

REC 1042与802.1H均衍生自802.2的子网访问协议(SNAP)。MAC地址会被复制到封装帧的开头,然后插入SNAP标头。SNAP标头以目的地服务接入点(DSAP)与源服务接入点(SSAP)开始。在地址之后,SNAP包含了一个控制(control)字段。和高层数据链路协议(HDLC)及其衍生协议一样,此控制字段会被设定为0X03,代表未编号信息(UI),是映射到IP datagram所谓的尽力传递的范畴。SNAP所置入的最后一个字段是组织唯一标识符(OUI)

ps:802.1H与RFC 1042之间的唯一差异在于其所使用的OUI。

基于竞争的数据服务

本节目的:厘清802.11局域网中负责转运数据的原子交换过程。
802.11定义了两组截然不同的原子交换过程

其一为DCF(分布式协调功能),用于基于竞争的服务

PS:DCF(当某个传送者占据信道时,工作站会随机为每个帧选定一段退避时间)

第二种交换方式为PCF,用于无竞争服务(很少使用,不做赘述)

DCF使用的帧交换方式在802.11 MAC中占有决定性的地位。根据DCF的规定,所有的产品都必须提供尽力传递的功能。为了实现基于竞争的MAC,处于作用状态的工作站必须处理每个帧的MAC标头。整个帧交换过程从某个工作站在DIFS之后取得闲置媒介的使用权时开始。

广播与组播数据或管理帧

广播与组播的交换过程最为简单,因为这些帧无需响应。

这两种帧也可以视为组帧,因为其接收对象不限于单一工作站。

成帧与寻址在802.11中较为复杂,适用此规则的帧的类型如下所示

                                广播数据帧会在Address1字段中填入广播地址

                                组播数据帧会在Address1字段中填入组播地址

                                广播管理帧会在Address1字段中填入广播地址

 

单播帧:在802.11标准中,针对个别工作站所传送的帧称为直接数据(单播)

单播帧必须得到确认以确保可靠性,也意味着可借助各种机制来改善传送效率。 

基本的肯定确认(最后一个片段)

 

帧分段 

  

RTS/CTS

RTS/CTS可用在所有的帧交换,非帧交换或介于两者之间。和帧分段一样,RTS/CTS是由驱动程序中的阈值来控制的超过该阈值的帧由RTS/CTS先进行清空媒介,而较小的帧则被直接传送

帧的处理与桥接

无线接入点的核心其实就是桥接器,负责在无线与有线媒介之间转换帧

大多数接入点在设计上就是扮演802.11与以太网之间的桥梁。因此了解帧在两种媒介之间的传送方式就相当重要了

无线媒介至有线媒介(802.11至Ethernet)

当接入点的无线接口接收到准备传送至有线网络的帧时

接入点必须在两种媒介之间桥接帧,以下是接入点必须进行的一系列操作

 有线媒介至无线媒介(ethernet至802.11)

将帧从接入点有线端桥接至无线媒介的过程刚好相反

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值