购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.3 MAC层访问控制方式

2.3.1 MAC层协议支持的访问控制方式

图2-17给出了IEEE 802.11的层次结构模型,其中物理层定义了红外线与微波频段的扩频通信标准。MAC层的主要功能是实现对多主机共享无线信道的访问控制,并且为无线通信提供安全与服务质量保证服务。

图2-17 IEEE 802.11的层次结构模型

IEEE 802.11的MAC层协议支持两种基本的访问控制方式。

1.无争用服务

无争用服务系统的中心是基站——无线AP。在点协调功能(Point Coordination Function,PCF)模式中,AP控制多个无线主机对共享的无线信道进行无冲突访问,形成以基站为中心的星形网络结构,因此PCF模式提供的是无争用服务。

2.争用服务

IEEE 802.11的MAC层可以采用载波侦听多路访问/冲突避免(Carrier Sense Multiple Access with Collision Avoidance,CSMA/CA)的介质访问控制方法。IEEE 802.11提供的争用服务能力被称为分布式协调功能(Distributed Coordination Function,DCF)。

IEEE 802.11规定MAC层必须支持DCF,而PCF是可选的。在默认状态下,IEEE 802.11的MAC层工作在DCF模式下,仅在有延时要求高的视频、音频会话类应用的场景下,才会启用PCF模式。

有些应用需要Wi-Fi提供比尽力而为的DCF更高一级的服务,但是又不需要PCF的集中控制服务,于是人们开始研究混合协调(Hybrid Coordination Function,HCF)模式。目前,HCF模式仍处于研究阶段,没有形成相应的协议标准。

2.3.2 CSMA/CA协议的实现方法

1.传统Ethernet与IEEE 802.11无线局域网的异同点

传统Ethernet与IEEE 802.11无线局域网的相同之处是都存在多个主机对共享的传输介质(双绞线、同轴电缆或无线信道)的争用问题,两者的MAC层都需要研究如何有效解决多个主机对于共享介质的访问控制方法。对于传统Ethernet的IEEE 802.3,其MAC层采用的是CSMA/CD方法;对于无线局域网的IEEE 802.11,其MAC层采用的是CSMA/CA方法。两者之间的相同之处是都采用分布式控制,即载波侦听多路访问(CSMA)方法。两者的区别在于:一个采用冲突检测(CD),另一个采用冲突避免(CA)。

IEEE 802.11无线局域网不能采用传统Ethernet的CSMA/CD方法的主要原因是无线信道与总线上的信号传输的差异性。IEEE 802.3设计CSMA/CD算法的前提是:在总线上,可以根据最小帧长度、最大总线长度来确定“冲突窗口”的长度值。IEEE 802.3确定的“冲突窗口”值为51.2μs。在“冲突窗口”时间内,无论构成总线的传输介质是双绞线还是同轴电缆,Ethernet网卡都是一边向总线发送数据信号,一边接收总线上的信号,通过对发送和接收信号进行比较,可以检测出是否发生冲突。只要节点在“冲突窗口”时间内没有检测出冲突,就可以确定为发送成功。这在无线局域网中很难做到。无线通信环境的复杂性首先表现在:无线网卡的发送功率与接收功率一般相差很大。要求无线网卡在发送信号的同时,处理微弱的接收信号并判断是否出现冲突,从电路实现的角度来说难度很大,即使可以实现成本也很高。同时,发送端的无线信号可能经过绕射、折射、反射的多路径到达接收端,不能简单地根据不同主机之间的直线距离来估算传输延时和“冲突窗口”的数值。

从以上讨论中可以归纳出,传统Ethernet与IEEE 802.11无线局域网在信道访问控制方法上有两个区别:

1)传统Ethernet节点在监测到总线空闲时,立即发送帧;而IEEE 802.11节点在监测到无线信道空闲时,不是立即发送帧,而是要求所有准备发送数据帧的主机执行退避算法,通过冲突避免来有效减小冲突发生的概率。

2)传统Ethernet的发送节点只要在“冲突窗口”时间内没有检测出冲突,就确定为发送成功,不需要接收节点发送确认帧;而IEEE 802.11无线局域网的发送节点需要等待接收节点发送回来的确认帧,才能判断此次发送是否成功。

2.帧间间隔的规定

IEEE 802.11协议规定所有无线网卡从检测到信道空闲到真正发送一帧,或者是从发送一帧之后到发送下一帧时,都需要间隔一段时间,这个时间间隔称为帧间间隔(Inter Frame Space,IFS)。IEEE 802.11规定了四种帧间间隔:

· 短帧间间隔(Short IFS,SIFS)。

· 点协调帧间间隔(Point coordination IFS,PIFS)。

· 分布式协调帧间间隔(Distributed coordination IFS,DIFS)。

· 扩展帧间间隔(Extended IFS,EIFS)。

帧间间隔的长短取决于发送帧的类型。高优先级的帧等待时间短,可以优先获得信道的发送权。低优先级的帧等待时间长,如果在低优先级的帧处于等待发送期间,空闲信道已经被优先级高的帧占用,信道就从空闲变成忙,低优先级的帧只能继续等待,延迟发送。

IEEE 802.11规定的SIFS长度为28μs。用到SIFS的主要有:对信道进行预约的ACK帧、CTS帧,以及属于一次对话的各个帧。

DIFS的长度为128μs。在DCF方式中,发送数据帧、管理帧需要使用DIFS。

3.CSMA/CA基本模式的工作原理

IEEE 802.11标准的DCF支持两种工作模式:基本模式与可选的RTS/CTS预约模式。CSMA/CA协议的设计目标是尽可能降低冲突发生的概率。图2-18给出了CSMA/CA的工作过程。

图2-18 CSMA/CA的工作过程

CSMA/CA的工作过程可以总结为:信道监听、推迟发送、冲突退避。

(1)信道监听

CSMA/CA要求物理层对无线信道进行载波侦听。根据接收到的信号强度判断是否已经有主机利用无线信道发送数据。当源主机确定信道空闲时,首先要等待1个DIFS;如果时间到并且信道仍然空闲,则发送第一个帧。帧发送结束后,源主机需要等待接收帧的目的主机发送回的ACK帧。

目的主机在正确接收到发送帧,并等待一个SIFS之后,向发送主机发出ACK帧。源主机在规定时间内接收到ACK帧,说明没有发生冲突,该帧发送成功。

(2)推迟发送

IEEE 802.11协议的MAC层还采用虚拟侦听(Virtual Carrier Sense,VCS)与网络分配向量(Network Allocation Vector,NAV)机制,从而达到主动避免冲突的发生、进一步减小冲突发生概率的目的。

IEEE 802.11帧头的第2个字段是“持续时间(Duration/ID)”。发送主机在发送一帧时,在该字段内填入以μs为单位的值(如100),表示在该帧发送结束之后,还要占用信道100μs。这个时间包括目的主机返回确认的时间。当其他主机接收到数据帧中的“持续时间”通知时,如果该值大于自己的NAV值,则根据接收的“持续时间”字段值来修改自己的NAV值。NAV值随着时间递减,只要NAV不为0,主机就认为信道忙,不发送数据帧。

(3)冲突退避

由于多个主机可能同时出现NAV=0,它们都认为信道空闲,这些主机就会同时发送数据帧导致出现冲突,因此IEEE 802.11规定:当所有主机NAV值为0,再等待一个DIFS之后,要执行二进制指数退避算法,以进一步减少出现冲突的概率。

二进制指数退避算法规定:第 i 次退避时间可以在2 2+ i 个时间片[2 2+ i -1]中随机选择一个。例如,第1次退避 i =1,2 2+1 =8,可以在[0,1,…,7]共8个时间片中随机选择一个退避时间,例如选择5个时间片。那么,在第一次出现冲突之后,主动延时5个时间片。第2次退避是2 2+2 =16个时间片,即[0, 1,…, 15],如果随机选择12个时间片,那么在第2次出现冲突之后主动延时12个时间片。当冲突出现到第6次,即 i =6时,即2 2+6 =256,可以在[0, 1, …, 255]的时间片中随机地选择一个退避时间片。IEEE 802.11协议将退避时间变量 i 定义为退避变量,退避变量的最大值 i max =6。

(4)退避算法的执行过程

当无线局域网中的主机准备发送数据帧时,它必须执行退避算法,选择退避时间值,启动退避计时器(backoff timer)。当退避计时器的时间减小到0时,可能会出现两种情况:

1)信道“闲”,那么该主机可以发送一帧。

2)信道“忙”,那么该主机冻结退避计时器的数值,重新等待信道变为“闲”,再经过DIFS之后,继续启动退避计时器,从剩下的时间开始计时。等到退避计时器的时间为0时,信道“闲”,此时该主机可以发送一帧。

图2-19描述了一个无线局域网中5台主机的无线网卡执行退避算法的过程。为了简化问题讨论,我们在讨论帧发送过程时,忽略等待SIFS与回送ACK帧的时间。

假设5台主机分别在不同的时间准备发送数据帧。主机1在信道空闲的 t 1 时刻发送了帧1-1。主机2、主机3、主机4分别在 t 2 t 3 t 4 时刻有帧要发送。由于这个时候帧1正在发送,那么主机2、主机3、主机4分别选择各自的退避时间。

从图2-19中可以看出,主机1发送完帧1-1、经过1个DIFS之后,主机2、主机4的退避时间都没结束,主机3的退避时间已结束,主机3发送帧2-1。这时,如果主机2的退避时间还有70个时间片,则主机2“冻结”70个时间片(图2-19中用冻结2-1表示),在帧3发送结束、经过1个DIFS之后,主机2将“冻结2-1”的70个时间片作为退避时间。

图2-19 执行退避算法的过程

如果主机4在 t 4 时刻要发送帧,主机4将与主机3竞争无线信道。如果主机4在帧2-1发送结束之后,退避时间还有36个时间片,主机4“冻结”36个时间片(图2-19中用冻结4-1表示)。在帧3发送结束、经过1个DIFS之后,主机4将“冻结2-1”的36个时间片作为退避时间。

在下一个争用窗口中,主机4的退避时间是36个时间片,而主机2的退避时间是70个时间片,主机4在1个DIFS与36个时间片的退避时间结束之后可发送帧4-1。这时,主机2的退避时间仍然没有结束,必须再次“冻结”34(70-36=34)个时间片,图2-19中用“冻结2-2”表示。

主机5在 t 5 时刻要发送帧,主机5再次与主机2竞争无线信道。如果主机5在帧4-1发送时,退避时间还有18个时间片。主机4“冻结”18个时间片的退避时间(图2-19中用“冻结5-1”表示)。在帧4-1发送结束、经过1个DIFS之后,主机5将“冻结5-1”的18个时间片作为退避时间。

在下一个争用窗口中,主机5的退避时间是15个时间片,而主机2的退避时间是34个时间片,主机5在1个DIFS与15个时间片的退避时间结束之后可发送帧5-1。

在帧5-1发送时,主机2的退避时间仍然没有结束,必须再次“冻结”19(34-15=19)个时间片(图2-19中用“冻结2-3”表示)。那么,主机2将19个时间片作为下一个退避时间。在帧5-1发送结束,等待1个DIFS与19个时间片的退避时间之后,主机2可以发送帧2-1。

从上述讨论中可以看出:IEEE 802.11的CSMA/CA方法通过分布式控制算法,由无线主机网卡的MAC芯片自主、随机地选择退避时间,以便协调不同主机的帧发送时间,减小冲突发生的概率。

4.CSMA/CA的发送与接收流程

图2-20给出了CSMA/CA的发送流程。

图2-20 CSMA/CA的发送流程

CSMA/CA的发送流程包括以下步骤:

1)启动发送,组装帧;检查信道是否忙。如果信道空闲,等待一个帧间隔时间。

2)等待一个帧间间隔之后,再次检测信道是否空闲,如果信道空闲,执行二进制指数退避算法,随机产生一个退避时间。

3)等待退避时间之后,检测信道状态。如果信道忙,则返回重新检测信道状态;如果信道空闲,则发送数据帧。

4)发送帧之后,等待接收目的主机返回ACK确认帧;如果接收到ACK帧,表明此次数据帧发送成功。

5)如果没有收到ACK确认帧,将冲突次数 i +1,判断 i +1是否大于 i max 。如果大于 i max ,则表明冲突过多,发送失败;如果小于 i max ,则返回重新检测信道状态。

6)下一次进入执行退避算法随机产生退避时间时,使用的冲突次数是 i +1。

图2-21给出了CSMA/CA的接收流程。

图2-21 CSMA/CA的接收流程

对于接入IEEE 802.11无线网络中的节点,只要不发送数据,就要随时准备接收数据。CSMA/CA的接收流程包括以下步骤:

1)无线网卡随时检测信道上是否有数据传输。如果有数据传输,则接收数据,直到发送停止。

2)按照IEEE 802.11帧结构,判断接收的帧长度是否符合要求。如果帧太短,则丢弃帧并重新进入准备接收的状态。如果帧在规定的长度内,则判断帧目的地址是否为本节点的地址。如果地址不匹配,则丢弃该帧。

3)如果地址匹配,则需要判断FCS字段值是否正确。如果不正确,说明帧接收失败;如果正确,说明帧接收成功。

2.3.3 CSMA/CA与CSMA/CD的比较

1.CSMA/CA与CSMA/CD的共同点

IEEE 802.11的CSMA/CA与IEEE 802.3的CSMA/CD的共同点表现在以下三个方面:

1)有线的Ethernet与无线的IEEE 802.11局域网都采用分布式控制的思路,以解决多个节点共享信道的争用问题。

2)在有线的Ethernet与无线的IEEE 802.11局域网中,都不存在一个中心控制节点,而是由网卡根据共享信道的状况来判断最佳的帧传输时机。

3)无论是有线的Ethernet还是无线的IEEE 802.11局域网,它们的MAC层协议与物理层协议都是由网卡实现的。从计算机组成原理的角度,Ethernet网卡与IEEE 802.11网卡在网卡结构、计算机主板接口的实现方法,以及驱动程序的编程方法上都是相同的。

在IEEE 802.11协议的讨论中,“无线主机与AP通信”和“主机的无线网卡与AP通信”的含义相同。

2.CSMA/CA与CSMA/CD的区别

IEEE 802.11的CSMA/CA与IEEE 802.3的CSMA/CD的区别表现在以下四个方面:

1)IEEE 802.3的CSMA/CD算法要求发送主机在监听到总线空闲时,立即开始发送帧。IEEE 802.11的CSMA/CA在无线信道从“忙”转到“闲”时,无线网卡不是立即发送数据帧,而是要求所有准备发送帧的主机都执行退避算法。

2)IEEE 802.3采用截止二进制指数退避算法,而IEEE 802.11采用二进制指数退避算法。两种算法的计算公式不一样。IEEE 802.3规定一个帧的重发次数最多为16,而IEEE 802.11规定一个帧的重发次数最多为6。

3)IEEE 802.3依靠Ethernet网卡的载波侦听来判断共享总线的忙闲状态。IEEE 802.11设置了虚拟监听(VCS)与网络分配向量(NAV),发送主机通过发布NAV值通知其他主机预约无线信道的占用时间,接收主机根据接收到的发送主机的NAV值来随机调整各自的退避时间,进一步降低冲突发生的概率。

4)IEEE 802.3不要求目的主机在接收数据帧后发送ACK帧,Ethernet网卡在发送帧的过程中仅监测是否冲突。如果没有发现冲突,则认为该帧发送成功,并不保证发送帧被目的主机正确接收。如果该帧在发送过程中没有冲突,而是在其他环节丢失,那么这类问题只能靠高层协议解决。IEEE 802.11要求源主机等待目的主机返回ACK帧,从而判断该帧是否发送成功。实际上,IEEE 802.11的MAC协议属于“停止等待协议”。

需要注意的是:停止等待类协议的优点是传输可靠性较高,缺点是工作效率较低。如果IEEE 802.11设备上标有300Mbit/s字样,则该设备的最大传输速率为300Mbit/s。但是,由于IEEE 802.11的无线信道同时仅能被一个无线主机占用,CSMA/CA算法、帧分片、帧加密与解密都会产生额外开销,因此实际的最大传输速率不会超过设备标出值的50%。例如,IEEE 802.11设备的最大传输速率为300Mbit/s,而用户能够使用的可能仅有120Mbit/s。

2.3.4 管理帧与漫游管理

传统的IEEE 802.3仅定义了一种数据帧结构,而IEEE 802.11定义了3种帧:管理帧、控制帧与数据帧。

IEEE 802.11定义了14种管理帧,包括信标(Beacon)帧、探测(Probe)帧、关联(Association)帧、认证(Authentication)帧等。它们用于在无线主机与AP之间建立关联。

1.信标帧

信标帧是无线局域网的“心跳”。在BSS模式中,AP以0.01~0.1s的时间间隔周期性地广播信标帧。信标帧在无线主机与AP建立关联的过程中有如下作用:

· 无线主机通过接收到的信标帧发现可用的AP。

· 信标帧为无线主机接入AP提供必要的配置信息。

· 无线主机从接收信标帧的时间戳中提取AP的时钟,使得无线主机与AP保持时钟同步。

图2-22给出了一个信标帧的例子。信标帧中包含AP的相关信息:SSID为“NK-netlab”,BSSID为“00:02:6A:60:B2:85”,模式为BSS的“Master”,使用2.4GHz频段的信道6(2.437GHz),主机接收的AP信号强度为-28dBm,信噪比为-256dBm,加密数据采用WPA协议,数据传输速率为1~54Mbit/s。

图2-22 一个信标帧的示例(bps即bit/s)

在BSS模式中,AP发送信标帧。只有在Ad hoc模式中,无线主机发送信标帧。IEEE 802.11协议允许管理员改变信标帧的广播周期,但是不能禁用信标帧。

2.被动扫描与主动扫描

无线主机在接入AP之前,可以通过被动扫描或主动扫描方式来发现AP。

(1)被动扫描

无线主机通过扫描信道与监听信标帧来发现AP称为被动扫描(Passive Scanning)。图2-23给出了被动扫描的工作过程:①AP1与AP2都向覆盖范围内的主机A发送信标帧;②主机A接收到信标帧之后选择AP2,并向AP2发送关联请求帧;③AP2接收到关联请求帧之后,向主机A发送关联响应帧。

图2-23 被动扫描的工作过程

(2)主动扫描

无线主机通过在覆盖范围内广播探测帧来发现AP称为主动扫描(Active Scanning)。图2-24给出了主动扫描的工作过程:①主机A向覆盖范围内的所有AP广播信标帧;②AP1与AP2都接收到信标帧并向主机A发送探测响应帧;③主机A接收到探测响应帧之后选择AP2,并向AP2发送关联请求帧;④AP2接收到关联请求帧之后,向主机A发送关联响应帧。

图2-24 主动扫描的工作过程

3.无线主机与AP之间的关联过程

由于无线信道的开放性,AP发送的信号可以被覆盖范围内的所有无线主机接收。从提高安全性的角度出发,无线主机只有通过链路认证才能够加入基本服务集S,只有接入BSS才能够发送数据帧。图2-25给出了无线主机与AP之间的关联过程。

图2-25 无线主机与AP之间的关联过程

IEEE 802.11协议支持两种级别的链路认证:开放系统认证与共享密钥认证。

1)开放系统认证是默认的。无线主机与AP交换一次“链路认证请求帧”与“链路认证响应帧”。无线主机将自己的MAC地址通报给AP。AP与无线主机之间不进行任何身份信息的识别,所有请求的无线主机都可以通过认证。因此,只有在“Wi-Fi Free”的公开、免费使用状态下,才使用开放系统认证。如果用户对无线主机有任何控制需求,都不能使用开放系统认证。

2)共享密钥认证采用有线等效协议(Wired Equivalent Privacy,WEP)或无线保护访问(WPA)协议。实践证明,WEP协议的安全性较差,IEEE 802.11i工作组用安全性高的WPA协议取代了WEP。

无线主机要接入无线局域网,必须与特定的AP建立关联。当无线主机通过指定的SSID选择网络,并通过链路认证之后,就要向指定的AP发送关联请求帧。关联请求帧包含无线主机的传输速率、侦听间隔、SSID等。AP根据关联请求帧携带的信息,决定是否接受关联。如果AP接受关联,则发送关联响应帧。

在讨论管理帧功能时,需要注意以下几个问题:

1)关联只能由无线主机发起,并且在一个时刻一台无线主机只能与一个AP关联。关联属于一种记录保持的过程,它帮助分布式系统记录每台主机的位置,以保证将帧传送到目的主机。当无线主机从原AP的覆盖范围移动到新AP的覆盖范围时,需要执行“重关联”的过程。

AP与无线主机都可以发送解除关联帧来断开当前关联的AP。无线主机离开一个无线网络时,应该主动执行解除关联的操作。如果AP发现关联的无线主机信号消失,AP将采取超时机制来解除与该无线主机的关联。

IEEE 802.11中的“解除关联”和“解除认证”是一种通告,而不是请求。如果关联的无线主机与AP中的一方发送“解除关联帧”与“解除认证帧”,另一方不能拒绝,除非启用了管理帧保护功能。

2)IEEE 802.11协议并没有对主机选择AP进行关联的条件进行规范,而是由AP设备的生产商决定。常用的方法是考虑两个主要因素。一是通过“关联请求帧”了解无线主机是否具有以基本传输速率与AP通信的能力。例如,AP可以要求无线主机既能以1Mbit/s、2Mbit/s的低传输速率通信,也能以较高的4.5Mbit/s、11Mbit/s传输速率通信。二是AP能否为申请关联的无线主机提供所需的缓冲空间。当一个主机成功关联一个AP时,主机向AP通告它选择了一直可以接收和发送数据的主动模式,还是选择了节电模式。当选择节电模式的主机处于休眠状态时,所有发往该主机的数据帧先缓存在AP上。侦听间隔(Listen Interval)是AP为关联的无线主机缓冲数据的最短时间。因此,AP在关联时需要根据“关联请求帧”中的“侦听间隔”时间的长短来预测无线主机需要的缓冲空间大小。如果AP能提供足够的缓存空间,则接受;如果不能提供足够的缓存空间,则拒绝。如果AP同意与这个无线主机建立关联,AP回送一个“关联响应帧”。

4.漫游与重关联

(1)漫游与重关联的概念

漫游(Roaming)是指无线主机在不中断通信的前提下,在不同AP的覆盖范围之间移动的过程。ESS结构对于支持无线主机的漫游至关重要。

IEEE 802.11标准中并没有用到“漫游”这个术语。人们对这种现象的解释是:“无论何时何地,是否漫游都是客户端的自由(Roaming is always and everywhere a client phenomenon)。”从MAC层来看,漫游是无线主机转换AP的过程。从网络层及以上层次来看,漫游是在转换接入点的同时仍维持原有网络连接的过程。IEEE 802.11将是否支持漫游交给Wi-Fi软硬件厂商自行决定。当然,在设计无线网络拓扑时,一定要考虑无线主机的无缝漫游问题。无线网卡和AP有两种基本设计思路:一种是关联到一个AP之后就一直坚持,直到信号质量很差时才考虑转换AP;另一种是当找到新的信号强的AP时立即转换。无线主机通过发送“重关联请求帧”来启动漫游的过程。

(2)无线主机启动“重关联”的过程

当无线主机在ESS中移动,并从A点逐渐远离已关联的AP1到达B点时,假设信道1的信号强度为-85dBm,已低于信号阈值。当它继续移动到C点时,无线主机接收到AP2信道6的信号强度为-65dBm,那么它将尝试与AP2关联。这时,无线主机需要向AP2启动重关联(如图2-26所示)。

图2-26 无线主机向AP2启动重关联

无线主机的重关联过程包括6个步骤:

1)无线主机通过信道6向AP2发送重关联请求帧。重关联请求帧包含原AP1的MAC地址。

2)AP2接收到重关联请求帧之后,通过信道6向无线主机发送“ACK帧”(ACK是一种控制帧)。

3)AP2通过分布式系统DS向AP1发送重关联确认帧,通知AP1“主机正在漫游”,将缓存在AP1的主机数据发送给AP2。

4)AP1通过分布式系统DS将缓存数据发送给AP2。

5)AP2通过信道6向无线主机发送重关联响应帧,表示主机已经关联到新的BSS。

6)无线主机接收到通过无线信道6向AP2发送的“ACK帧”。

至此,无线主机的重关联过程结束,AP2通过信道6将缓存数据发送给无线主机。图2-27给出了无线主机的重关联过程。

理解重关联的过程时,需要注意以下几个问题:

1)漫游的决定权由无线主机掌握,IEEE 802.11协议并没有对主机在什么情况下要启动漫游做出明确的规定。无线主机漫游的规则是由无线网卡制造商制定的。无线网卡一般是根据信号质量来决定是否启动漫游和重关联的过程。这里的信号质量主要是指信号强度、信噪比与信号传输的误码率。

2)无线网卡在通信过程中每隔几秒就在其他信道上发送探询帧。通过持续的主动扫描,无线主机可以维护和更新已知的AP列表,以便在无线主机漫游时使用。无线主机可以与多个AP认证,但是仅和一个AP关联。

图2-27 无线主机的重关联过程

3)通过重关联过程的讨论可以看出,由于原AP与新AP通过连接它们的分布式系统交换了漫游主机的信息,因此不需要发送“解除关联帧”。

4)由于无线主机在ESS中从一个AP漫游到另一个AP的过程仅涉及第二层MAC地址的寻址问题,因此它又叫作“二层漫游”。跨网络(涉及IP地址寻址)的无线主机漫游叫作“三层漫游”。

2.3.5 控制帧与预约模式

IEEE 802.11协议允许无线主机通过RTS/CTS对信道的使用进行预约。控制帧主要用于预约信道,以及对单播的数据帧进行确认。IEEE 802.11的MAC协议定义了9种控制帧,包括RTS(Request To Send)、CTS(Clear To Send)、ACK等。图2-28给出了RTS/CTS预约模式的工作过程。

RTS/CTS预约模式的工作过程包括4个步骤:

1)源主机检测到信道空闲,退避一个DIFS之后,发送一个短的“请求发送(RTS)帧”。RT S帧包括源主机地址、目的主机地址,以及这次通信占用的持续时间。

2)当目的主机接收到RTS帧,并且信道空闲,退避一个SIFS之后,发送一个短的“允许发送(CTS)帧”。CTS帧复制RTS帧中“这次通信占用的持续时间”的数值。源主机之外的其他主机接收到CTS帧之后,根据RTS帧中“这次通信占用的持续时间”的数值,设置本主机的NAV值。

图2-28 RTS/CTS预约模式的工作过程

3)源主机接收到CTS帧,退避一个SIFS之后,发送数据帧。

4)目的主机接收到数据帧,退避一个SIFS之后,向源主机发送ACK帧。

RTS/CTS对信道的预约可以有效地解决隐藏主机带来的冲突问题。 5d03XOfLtcEiNcxOIXXWRYR69746x9a4RtzAGlLStXAzmDQ/+HAd64hRWG3BrdQs

点击中间区域
呼出菜单
上一章
目录
下一章
×