802.11无线权威指南读书笔记(3)802.11MAC基础

前言

802.11规范关键在于MAC(媒介访问控制)。MAC位于各种物理层之上,负责核心成帧操作及与有线骨干网交互。802.11 MAC采用CSMA/CA(载波侦听多路访问/冲突避免)机制来控制对传输媒介的访问。而以太网是采用CSMA/CD(载波侦听多路访问/冲突检测)机制。但他们都是不具中枢控制功能的分布式访问机制,所以每个802.11工作站访问媒介方式都一样。

MAC面临的挑战

射频链路品质

相比有线,无线链路(radio link)更会受到各种噪声和干扰,特别是在不需授权的ISM频段,会后各种噪声,除了噪声问题,还有多径衰减(munltipath fading)造成的布线死区(dead spot)也可能造成帧无法传输。下面解释什么是多径衰减
在这里插入图片描述
802.11采用肯定确认机制(这点有点像tcp),所有传送的帧必须得到响应,否则认为丢失。如下图,这个步骤称作原子操作,意思是不可分割的单一事务单元。
在这里插入图片描述

隐藏节点的问题

对于无线,网络界限比较模糊,不是每个节点都可以与其它节点直接通讯,如下图,节点1和节点3互为隐藏节点。节点2可以和节点1和节点3直接通讯,但是由于某些原因,比如距离过远收不到对方电磁波,节点1和节点3互相”看不见“对方,那么节点1和节点3可能同时传输数据,造成节点2无从响应任何数据,而且节点1和节点3无法发成冲突,只有节点2才知道有冲突发生。所以在802.11中没有监听到载波,不代表可以传输
在这里插入图片描述
隐藏节点产生冲突问题的解决
802.11允许工作站使用Request To Send(请求发送,RTS)及Clear To Send(清除发生,CTS)信号来清空传送区域,现在把RTS帧、CTS帧、数据帧以及最后的响应帧看作一个原子操作,如下图
在这里插入图片描述
上图,节点1有帧待传,所以先发送RTS帧以启动整个过程,RTS帧有2个目的,预约无线链路的使用权并且要求接收到这一帧的其它工作站保持沉默。一旦接收到RTS,接收端会以CTS帧应答,和RTS帧一样,CTS帧也会使附件的工作站保持沉默。等待RTS/CTS完成交互过程后。节点1就可以传送之前待传的帧,这样就无需担心其他隐藏节点的干扰。
由于RTS/CTS传输过程会用到好几个帧,并且传数据之前的退避(backoff)会消耗一定带宽,所以只用在高用量的环境以及传输竞争显著的场合,对于低用量环境不必使用,因为还有不少闲置带宽可供重传使用。
如果802.11网卡驱动程序支持,用户还可以设置RTS阈值来控制RTS/CTS交换过程,只要帧大于阈值,就启动RTS/CTS交互,小于则直接传输帧。

MAC访问模式与时机

无线媒介的访问是由协调功能(coordination function)控制,由一下3种协调功能:
分布式协调功能(distributed coordination function,简称 DCF)
DCF是CSMA/CA基础,就是说这种功能是应用于竞争式服务

点协调功能(point coordination function,简称 PCF)
PCF是构建在DCF之上的无竞争服务,无竞争服务只于基础结构型网络提供,由接入点控制轮循各个工作站占用无线媒介的时间。PCF实现上并不常见。

混合协调功能(hybrid coordination function,简称 HCF)
这种是介于DCF和PCF之间的协调功能,用于需要比尽力交付更高一级的服务质量,但是又不需要PCF那么严格的时序控制。HCF维护多组服务队列,对需要更高服务质量的应用提供更多的无线媒介访问机会。
在这里插入图片描述

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

载波监听(carrier sensing)主要用来判定介质是否处于可用状态。 802.11 具备两种载波监听功能:物理载波监听虚拟载波监听。只要其中有一个监听功能显示介质处于忙碌状态, MAC 就会将此报告给高层的协议。

物理载波监听功能是由物理层所提供,取决于所使用的介质与调制方式,但是要为射频介质打造物理载波成本很高,而且对于隐藏节点,物理载波监听无法提供有效信息。
虚拟载波监听是由网络分配矢量(Network Allocation Vector,简称 NAV)所提供。802.11的帧通常会包含一个 Duration 位,用来预定一段介质使用时间。 NAV 本身就是一个计时器,来指定预计要占用介质多少时间, 以微秒为单位。 工作站会将 NAV 设定为预计使用介质的时间,这包括完成整个处理必须用到的所有帧。其他工作站会由NAV 值倒数至零。只要 NAV 的值不为零,代表介质处于忙的状态,此即虚拟载波监听功能。当 NAV 为零时,虚拟载波监听功能会显示介质处于闲置状态。
下图说明了NAV怎么保证整个过程不被中断,工作站对媒介的访问用阴影表示,还会标上帧类型,没有操作之处会标上帧间间隔,最后一条线NAV表示只要这条NAV上出现NAV条状图,工作站就必须延迟访问媒介(保持静默),上面是sender周围的工作站,下面是Receiver周围工作站。直到 NAV 消失,再经过分式帧间间隔(DIFS)、竞争窗口后,任何工作站均可对媒介进行访问。
在这里插入图片描述
上图可以看到,Sender发送RTS帧的Duration包含的时间是SIFS+CTS+SIFS+Frame+SIFS+ACK,这些动作预计需要的时间,也就是占用信道的时间,其他节点在收到这个RTS后就会在原来的基础上退避这段时间再发送帧,同样Recever的CTS也是这样。

帧间间隔

802.11用到4种帧间间隔(interframe space),3种用来决定对媒介的访问,帧间间隔目的一是为了在设计上达到冲突避免的目的,二是为了不同的帧间间隔会为不同类型的传输产生不同的优先级,高优先级等待时间短。帧间间隔的时间值是固定的,与传输率无关,帧间间隔4种如下图

  • 短帧间间隔(Short interframe space ,简称 SIFS)
    用于高优先级场合,比如RTS/CTS以及ACK确认帧
  • PCF帧间间隔(PCF interframe space ,简称 PIFS)
    用于PCF无竞争操作中
  • DCF帧间隔(DCF interframe space ,简称 DIFS)
    DIFS是竞争式服务DCF中最短的媒介闲置时间,DIFS后再经过退避时间就可以访问媒介
  • 扩展的帧间隔(Extended interframe space ,简称 EIFS)
    帧传输出错就要经过EIFS才能再次访问媒介
    在这里插入图片描述
    在监听到信道忙之后,首先等待一个帧间间隔(SIFS,PIFS或者DIFS,视想发送什么消息而定),之后进入随机后退过程(back off),如果信道还是空闲,那么就发送。

利用DCF进行竞争式访问

DCF无需中心控制点,类似有线以太网,DCF可以用于IBSS网络或基础结构型网络,下面是DCF传输中运用到的2项基本规则
1.如果媒介闲置时间长于DIFS,可以立即传输,载波监听同时使用物理与虚拟(NAV)2种方式
a.如果之前的帧接收无误,则媒介必须至少空出一段DIFS
b.如果之前的传输出现错误,则媒介必须至少空出一段EIFS
2.如果媒介处于忙碌,则必须要等到信道再度空闲,802.11称做访问延迟(access deferral).一旦访问延迟,还需等到一段DIFS,再等待指数退避
还有以下其他规则:
1.错误恢复是发送端责任,传送端预期每个帧均应收到应答信息,而且必须负责重传,直到传送成功为止。
a.采用肯定确认(positive ack),如果没收到确认则认为丢失,会重传
b.所有单播必须被确认,广播则不予确认(虽然无线链路本质上是广播媒介)
c.只要发送失败,重传计数器(retry counter)就会累加,然后重发,重传之前会等待一段时间(叫退避时间)
2.对帧序列可以在传输每个步骤更新NAV。
3.以下帧在SIFS后传输,ack确认帧、RTS/CTS以及片段序列中的帧片段
a.一旦传送出第一个帧,工作站就会取得频道的控制权。以后帧及其确认均可用 SIFS进行传送,以锁定频道不被其他工作站使用。
b.传输操作中后续帧将更新该媒介预计使用时间。
4.如果较高层的包大小超过设定阈值,则必须使用扩展帧序列
a.包大小超过RTS阈值,必须使用RTS/CTS交换
b.长度超过分段阈值,则必须加以分段

DCF与错误恢复

一旦检测到帧丢失,则重传计数器会累加,每个帧或帧片段都会有重传计数器,并且还有短帧重传计数器和长帧重传计数器,长度小于RTS阈值的被视作短帧,超过RTS阈值的被视作长帧。
短帧重传计数器以下情况清0

  • 之前传送的RTS得到CTS响应
  • 之前传送的未分段帧得到MAC层响应
  • 收到广播或组播帧
    长帧重传计数器以下情况清0
  • 之前传送的帧大于RTS阈值并得到MAC响应
  • 收到广播或组播帧
    之所以分短长帧重传计数器是为了减小所需缓存空间。
    处了重传计数器,每个帧片段还有生存时间,当超过这个时间还没收到确认帧,该帧被丢失,且不会重试后续帧片段。

DCF退避算法

前面的退避时间是由从竞争窗口(contention window)选取随机数在乘以时隙(slot)得到退避时间时长,时隙长度因媒介而异,而竞争窗口的范围是由重传次数决定的,通常是2的指数倍减一(比如31、63、127、255),每当重传次数加1,则竞争窗口移到下一个2的指数倍,竞争窗口的大小收到物理层限制,比如DSSS的竞争串口最多为1023个slot
在这里插入图片描述

帧格式

下面是一般的802.11 MAC帧格式,有4个地址段,但并非每个帧都会用到所有地址字段。位的传送顺序由左至右,最高效 bit 将会最后出现
在这里插入图片描述

  • Frame Control字段
    在这里插入图片描述
    Protocol字段
    协议版本位由两个 bit 构成,用以显示该帧所使用的 MAC 版本。目前, 802.11 MAC 只有一个版本;它的协议编号为 0。未来 IEEE 如果推出不同于原始规格的 MAC 版本,才会出现其他版本的编号。到目前为止, 802.11 改版尚不需用到新的协议编号。
    Type 与 Subtype字段
    类型与次类型位用来指定所使用的帧类型。为了抵抗噪声与提升可靠性, 802.11 MAC 内建了一些管理功能, 有些功能之前已经提过, 如 RTS/CTS 与应答。表 3-1 显示了 type 与 subtype位跟帧类型的对应关系。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

802.11对上层协议的封装

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

基于竞争的数据服务

广播与组播数据或管理帧
  • 广播数据帧在Address1中填入广播地址
  • 组播数据帧在Address1中填入组播地址
  • 广播管理帧在Address1中填入广播地址(Beacon、Probe Request以及IBSS ATIM帧)
    组播帧无法分段、也不需确认,因为整个过程只有一个帧,所以NAV被设置为0,传输该帧后,所有工作站等待一段DIFS,然后通过竞争窗口就可以开始下一次帧交换,如下图。
    在这里插入图片描述
单播帧

单播帧必须有确认,如下图,Data的NAV设置为ACK+SIFS的时长,ACK的NAV被设置为0。
在这里插入图片描述

帧分段

帧分段与单播帧交换过程没有区别,不过,倒数第二个以及之前的所有帧均会使用NAV来为下一个帧来锁定媒介,比如,第一个数据帧NAV=SIFS+ACK1+Data2+SIFS+ACK2,并且More Fragments被设为1,只有最后一个数据帧More Fragments被设为0,入下图。
帧是否分段是由MAC的分段阈值(fragmentation threshold)决定,调大分段阈值意味着帧传送负担小,但是帧丢失与损坏概率就高了,调小分段阈值意味着帧传送负担较重,但是可以提供较好的稳定性。
在这里插入图片描述

RTS/CTS

RTS/CTS交换与帧分段没有本质区别,只是RTS没有携带数据,MAC的RTS阈值来决定是否启动RTS/CTS来清空信道,如下图。
在这里插入图片描述

省电程序(powersaving sequence)

RF中,最耗电的是放大器,它负责将送出的信号放大并将收到的信号放大到可以处理的水平,802.11工作站可以关闭无线电波收发器并定期进入休眠以节省电量。工作站休眠期间,接入点会为每个处于休眠的工作站缓存单播帧,如果有缓存帧,接入点会在后续Beacon帧告知工作站,从省电模式个工作站使用PS-Poll帧来告知接入点取这些缓存帧。
接收到PS-Poll帧的接入点可以立即响应,也可以等到环境允许、比较空闲时再响应,采用哪种方式由接入点IC决定,有的2种都支持。

立即响应

接入点可以对PS-Poll帧立即做出响应,PS-Poll帧隐含的NAV(我认为这里意思是一个固定的NAV)PS-Poll帧隐中的Duration/ID字段包含的Association ID(关联标识符),用这个Association ID(关联标识符)来判断哪些帧是为该工作站缓存的。MAC规范说明所有收到PS-Poll的工作站必须更新NAV,NAV的值是一个SIFS+一个ACK,虽然这个NAV很短,但是接入点会取得媒介使用权,其他工作站会延迟访问媒介,当数据帧传输结束时,再用数据帧的NAV来更新其他工作站。
在这里插入图片描述
在这里插入图片描述

延迟响应

延迟响应是接入点先回复一个简单响应,然后在之后某个时刻发送数据帧。这样做的好处是软件比较容易实现,因为接入点可以缓存数据帧等待时机发送。通过PS-Poll请求帧的工作站必须处于工作模式,等待数据帧的到来并接受完,并且不能反悔省电模式,直到收到一个Beacon帧,其中的TIM为被清除。
在这里插入图片描述

帧的处理与桥接

无线接入点核心是桥接器,负责在无线与有线媒介之间转换帧,下面是802.11与以太网之间的转换。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值