802.11 MAC基础

MAC(媒介访问控制层)位于各式物理层之上,控制数据的传输。它负责核心成帧操做以及与有线骨干网络之间的交互。
802.11采用载波监听多路访问/冲突避免(CSMA/CA)机制来控制对传输媒介的访问。
802.11与Ethernet之间的主要差别在于所使用的底层媒介不一样,无线网络环境与传统有线网络环境的差别性为网络协议设计人员带来了种种挑战。缓存

MAC所面临的挑战

  • 射频链路品质
    无线信号的传输会受到微波炉及其余射频(RF)来源的影响,多徑衰落(multipath fading)所形成的布线死区(dead spot)也可能致使帧没法传送。
    802.11采用确定确认(positive acknowledgment)机制,全部传送出去的帧都必须获得相应,以下图所示。
    数据传输的确定确认

无线链路的质量也会影响网络操做的速度。信号质量较佳,就能够用较高的速度来传送数据。工做站必须具有某种机制,能够判断什么时候该变动数据传输速率
以适应环境的改变。安全

  • 隐藏节点的问题
    无线网络的界限比较模糊,有时候并非每一个节点均可以跟其余节点通讯,以下图所示。
    节点1与节点3互为隐藏节点
    节点1和节点3互为隐藏节点,若是使用简单的传输祈求(transmit-and-pray)协议,节点1和节点3可能在同一时间传送数据,这会形成节点2无从相应数据,
    并且,节点1和节点3无从得知发生了错误,由于只有节点2才知道有冲突发生。

为了防止冲突发生,802.11容许工做站使用Request to Send(请求发送,简称RTS)及Clear to Send(清除发送,简称CTS)信号来清空传送区域。
以下图所示。
以RTS/CTS进行清空
RTS帧自己带有两个目的:预定无线链路的使用权与要求接收到这一帧的其余工做站保持沉默,一旦受到RTS帧,接收端会以CTS帧应答,CTS帧也会令附近
的工做站保持沉默。
RTS/CTS一般用在高用量的环境下以及传输竞争比较显著的场合。网络

MAC访问模式与时机

无线媒介的访问是由协调(coordination function)功能控制。分布式

  • DCF(distributed coordination function,分布式协调功能)
    在传送数据以前,先检查无线链路是否处于清空状态。为了不冲突的发生,当某个传送者占据信道时,,工做站会随机为每一个帧选定一段退避(backoff)时间,
    在某些状况下,DCF可利用CTS/RTS清空技术进一步减小发生冲突的可能性。spa

  • PCF(point coordination function,点协调功能)
    点协调者位于接入点,能够确保工做站没必要经过竞争便可使用媒介,PCF在实现上并不常见。设计

  • HCF(hybrid coordination function,混合协调功能)
    HCF容许工做站维护多组服务队列,针对须要更高服务质量的应用提供更多的无线媒介访问机会。3d

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

载波监听(carrier sensing)主要用来判断媒介是否处于可用状态。
802.11具有两种载波监听功能:物理载波监听(physical carrier-sensing)与虚拟载波监听(virtual carrier-sensing)。
只要其中有一个监听功能显示媒介处于忙碌状态,MAC就会将此情况汇报给较高层的协议。
物理载波监听功能是由物理层所提供,取决于所使用的媒介与调制方式;虚拟载波监听是由网络分配矢量(Network Allocation Vector, NAV)提供。
802.11的帧一般会包含一个Durition字段,用来预约一段媒介时间。NAV是一个定时器,用来指定要占用媒介多少时间,以微秒为单位。下图说明了NAV
如何保障整个过程不受干扰。
利用NAV进行虚拟载波监听blog

帧间间隔

802.11会用到四种不一样的帧间间隔,其中三种用来决定媒介的访问。队列

  • 短帧间间隔(Short interframe space, SIFS)
    SIFS用于高优先级的传输场合
  • PCF帧间间隔(PCF interframe space,PIFS)
    PIFS主要被PCF使用在无竞争操做中
  • DCF帧间间隔(DCF interframe space,DIFS)
    DIFS是竞争式服务中最短的媒介空闲时间。若是媒介空闲时间长于DIFS,则工做站能够当即对媒介进行访问
  • 扩张帧间间隔(Extended interframe space,EIFS)
    只有在帧传输出现错误时才会用到EIFS,EIFS并不是固定的时间间隔
    各类帧间间隔的关系

帧的分段与重组

来自较上层的封包以及某些较大型的管理帧可能必须通过分段,无线信道才有办法加以传送。当干扰存在时,利用帧的分段,无线局域网工做站可以让干扰
只影响较小的帧片断。每一个帧片断都有相同的帧序号以及一个递增的帧片断编号以便于重组。
片断突发期
上图RTS与CTS会将NAV设定成从预约时间到第一个帧片断结束,每一个帧片断都会设定NAV,继续掌握媒介的控制全,直到下一个帧的确认结束。ip

帧格式

为迎接无线数据链路所带来的挑战,802.11 MAC帧格式的制定通过了深思熟虑的考量。下图展现了通常的802.11 MAC帧。字段的传输顺序从左至右,
最高有效位将在最后出现。
通常的802.11 MAC帧

Frame Control字段

全部帧的开头均是长为两个字节的Frame Control字段,以下图所示。
Frame Control字段

  • Protocol字段
    显示帧所使用的MAC版本,目前802.11 MAC只有一个版本,它的协议编号为0
  • Type与Subtype字段
    Type与Subtype字段用来指定使用的帧类型
  • To DS与From DS位
    指示帧的目的地是否为分布式系统
  • More fragments位
    若较上层的封包通过MAC分段处理,除了最后一个片断,其余片断均会将此位设定为1
  • Retry位
    任何重传的帧都会将此位设定为1以协助接收端剔除重复的帧
  • Power management位
    此位用来支持发送端在完成当前的原子帧交换以后是否进入省电模式
  • More data位
    接入点若是设定此位,即表明至少有一个帧待传给休眠中的工做站
  • Protected Frame位
    若是帧受到链路层安全协议的保护,则此位会被设定为1
  • Order位
    若帧按照严格依次传送,则此位会被设定为1

Duration/ID字段

Duration/ID字段有三种可能的形式,以下图所示。
Duration/ID

  • 设定NAV
    当第15位被设定为0时,Durition/ID字段就会被用来设定NAV
  • 无竞争周期所传送的帧
    在无竞争周期,该字段只有第15位为1,其他位为0。Duration/ID字段的值为32768,这个数值被解读位NAV。
    因此其余工做站就将本身的NAV定时器设定为32768,当前工做站就能够实现无竞争传输?我是这么理解的
  • PS-Poll帧
    在PS-Poll(省电-轮询)帧中,第14位和15位会被同时设定为1,其他位表示关联标识符(association ID,AID),以显示工做站隶属的BSS。
    为确保不遗漏任何帧,从休眠状态醒来的工做站必须送出一个PS-Poll帧,以便从接入点取得以前缓存的任何帧。

Address字段

随着帧类型的不一样,地址字段的做用也不一样,大部分数据帧会用到3个字段,Address 1表明接收端、Address 2表明发送端、Address 3表明接入点的BSSID。

顺序控制(Sequence Control)字段

该字段长度为16位,由4位的片断编号(fragment number)字段以及12位的顺序编号(sequence number)字段组成,用来重组帧片断以及丢弃重复帧。
Sequence Control字段

帧主体

帧校验序列(FCS)

802.11对上层协议的封装

802.11里的IP封装

多种速率支持

802.11支持收发端协商出一种彼此都可接受的数据传送速率,工做站能够常常变换速度,以适应无线电波环境的变化。

帧的处理与桥接

在无线与有线媒介之间转换帧

相关文章
相关标签/搜索