第三章802.11MAC基础(1)
第一 802.11规范的关键在于MAC(媒介访问控制层)。MAC位于各式物理层之上,控制数据的传输。它负责核心成帧操作(core framing operation)以及与有线骨干网络之间的交互。不同的物理层可能提供不同的传输速度,不过物理层之间必须彼此互用(interoperate)。
第二 和ethernet一样,802.11采用载波监听多路访问(carrier sense multiple access,简称CSMA)机制来控制对传输媒介的访问。不同的是,802.11使用冲突避免(CSMA/CA)机制,而非使用ethernet所实行的冲突检测(CSMA/CD)机制。
第三 802.11与Ethernet之间的主要差异在于所使用的底层媒介不同。
第四 MAC所面临的挑战
▲射频链路品质
● 除了噪声问题,多径衰落(multiplepath fading)所造成的布线死区(dead sopt)也可能导致帧无法传送。
● 和其他链路层协议不同,802.11采用肯定确认(positive acknowledge)机制。所有传送出去的帧都必须得到相应,只要有任何一个环节失败,该帧即被视为已经漏失。
● 工作站必须具备某种机制,可以判断何时该变更数据传递速度以适应环境的改变。
● 网络中所有工作站必须能够以不同的速度进行数据的传输。
▲隐藏节点的问题
● 为了防止冲突发生,802.11允许工作站使用Request to send(请求发送,简称RTS)及Clear to Send(清楚发送,简称CTS)信号来清空传送区域。由于RTS和CTS帧均会延长帧交易过程,因此RTS帧、CTS帧、数据帧以及最后的响应帧均被视为相同原子操作的一部分。
● RTS帧本身带有两个目的:预约无线链路的使用权与要求接收到这一帧的其他工作站保持沉默。一旦收到RTS帧,接收端会以CTS帧应答。和RTS帧一样,CTS帧也会令附近的工作站保持沉默。等到RTS/CTS完成交换过程,发送方即可传送之前等待的帧,而无需担心来自其他隐藏节点的干扰。
● 如果802.11网卡的驱动程序支持,用户可以通过调整RTS阈值(threshold)来控制RTS/CTS交换过程。只要帧大于此阈值,RTS/CTS交换过程就会进行,小于此阈值则会直接传送帧。
第五 MAC访问模式与时机
▲ DCF(分布式协调功能)、
DCF是标准CSMA/CA访问机制的基础。和Ethernet一样,在传送数据之前,它会先检查无线链路是否处于清空状态。为了避免冲突的发生,当某个传送者占据信道时,工作站会随机为每个帧选定一段退避(backoff)时间。在某些情况下,DCF可利用RTS/CTS清空技术进一步减少发生冲突的可能性。
▲ PCF(点协调功能)
点协调功能提供的是无竞争服务。称为点协调者(point coordinator)的特殊工作站可以确保不必通过竞争即可使用媒介。点协调者位于接入点,因此只有基础结构型网络才会使用PCF。
▲ HCF(混合协调功能)
HCF允许工作站维护多组服务队列,针对需要更高服务质量的应用提供更过的无线媒介访问机会。
▲ 载波监听功能与网络分配矢量
载波监听(carrier sensing)主要用来判断媒介是否处于可用状态。802.11具备两种载波监听功能:物理载波监听(physical carrier-sensing)与虚拟载波监听(Virtual carrier-sensing)。只要其中有一个监听功能显示媒介处于忙碌功能状态,MAC就会将此状况汇报给较高层的协议。
▲ 物理载波监听功能是由物理层提供,取决于所使用的媒介与调制方式。要为基于射频的媒介打造物理载波监听硬件相当不易(更确切的说法是十分昂贵),原因是除非采用昂贵的电子零件,否则收发器无法同时进行收发的动作。
▲ 虚拟载波监听是由网络分配矢量(Network Allocation Vector,简称NAV)所
提供。802.11的帧通常会包含一个Duration字段,用来预订一段媒介使用时间。NAV本省其实就是一个定时器(timer),用来指定预计要占用多少时间,以微妙为单位。利用NAV可保证工作站的原则操作不被中断。
▲ 帧间间隔
● 和传统Ethernet一样,帧间间隔(interframe spacing)在协调媒介的访问上扮演着重要的角色。802.11会用到四种不同的帧间间隔,其中三种用来决定媒介的访问。
● 不同的帧间间隔会为不同类型的传输产生不同的优先次序。其后的决策逻辑十分简单:当媒介闲下来的时候,高优先级的数据所等待的时间较短。
● 为了维持不同数据传输率的互用性,帧间间隔的时间值都是固定的,与传输率无关。
● 不同的物理层可以指定不同的帧间间隔时间。
● 帧间间隔分类:
○ 短帧间间隔(Short interframe space,简称SIFS)
SIFS用于高优先级的传输场合,例如RTS/CTS以及肯定确认帧。
○ PCF帧间间隔(PCF interframe space,简称PIFS)
PIFS主要被PCF使用在无竞争操作中,有时被误称为优先级帧间间隔(priority interframe space)。在无竞争时期,有数据带传的工作站可以等待PIFS后再加以传送,其优先级高于任何竞争式传输。
○ DCF帧间间隔(DCF interframe space,简称DIFS)
DIFS是竞争式服务中最短的媒介闲置时间。如果媒介闲置时间长于DIFS则工作站可以立即对媒介进行访问。
○ 扩展帧间间隔(Extended interframe space,简称EIFS)
因为EIFS并非固定的时间间隔。只有在帧传输出现错误时才会用到EIFS
● 帧间间隔与优先级
○ 由于SIFS短于其他帧间间隔,一项原子操作的第二个(以及之后的)步骤
会在其他类型的帧被传送之前将媒介占为已用。
○ 利用SIFS与NAV,工作站可以视需要掌控一段时间。
○ 当传送端取得媒介访问权时,接收端会在SIFS之后响应CTS。
○ 任何试图在RTS结束之后访问媒介的工作站至少必须等候一段DIFS。若在DIFS进行时SIFS已先行结束,则会开始传送 CTS。
○ 一般来讲,DIFS > PIFS > SIFS