[802.11]802.11MAC简介(三)

Filename:[802.11]802.11MAC简介(三)

Version:V1.0

Date:7/07/2010

Author:S.C.Leon

=====================================================================

802.11MAC简介(三)

本文主要讨论DCF分布协调模式下的技术细节。

以下为本文内容提纲。

Distributed Coordination Function (DCF)

l CS mechanism(载波监听)

l MAC-Level acknowledgments &ACK procedure(确认机制)

l IFS(帧间间隔) & DCF timing relations

l Random backoff time(随机退避时间)

l NAV(网络分配向量) and its distribution

 

1、CS mechanism(载波监听)

1.1Physical CS functions(PHY

无线调制解调器无法同时收发无线信号,从而只有工作在单双工模式下,监听到载波信号超过某一阈值,这表明信道忙碌。

1.2、Virtual CS functions(MAC

虚拟载波监听室一种基于MAC层的机制。虚拟载波监听(Virtual Carrier Sense)的机制是让源站将它要占用信道的时间(包括目的站发回确认帧所需的时间)通知给所有其他站,以便使其他所有站在这一段时间都停止发送数据,这样就大大减少了碰撞的机会。

“虚拟载波监听”是表示其他站并没有监听信道,而是由于其他站收到了“源站的通知”才不发送数据

 

2、MAC-Level acknowledgments &ACK procedure(确认机制)

标准DATA-ACK流程

MAC层是通过发送ACK帧的方式进行确认的,如果目的节点收到DATA帧,且FCS校验无误的话,即向源节点发送ACK帧。

如果源节点没有收到ACK帧,可能是发送DATA帧时出现错误,也可能是在目的节点回送ACK时发生错误,MAC层对此不做区分。

 

3、IFS(帧间间隔) & DCF timing relations

[802.11]802.11MAC简介(三)_第1张图片

帧间间隔示意图

a) SIFS short interframe space

SIFS,即短(Short)帧间间隔,是最短的帧间间隔,用来分隔开属于一次对话的各帧。一个站应当能够在这段时间内从发送方式切换到接收方式。

使用 SIFS 的帧类型有:ACK 帧、CTS 帧、由过长的 MAC 帧分片后的数据帧,以及所有回答 AP 探询的帧和在 PCF 方式中接入点 AP 发送出的任何帧。

b) PIFS PCF interframe space

PIFS,即点协调功能帧间间隔,它比 SIFS 长,是为了在开始使用 PCF 方式时(在 PCF 方式下使用,没有争用)优先获得接入到媒体中。PIFS 的长度是 SIFS 加一个时隙(slot)长度。

c) DIFS DCF interframe space

DIFS,即分布协调功能帧间间隔(最长的 IFS),在 DCF 方式中用来发送数据帧和管理帧。DIFS 的长度比 PIFS 再增加一个时隙长度。

d) AIFS arbitration interframe space (used by the QoS facility)

e) EIFS extended interframe space

所有的站在完成发送后,必须再等待一段很短的时间(继续监听)才能发送下一帧。这段时间的通称是帧间间隔 IFS (InterFrame Space)。

帧间间隔长度取决于该站欲发送的帧的类型。高优先级帧需要等待的时间较短,因此可优先获得发送权。

若低优先级帧还没来得及发送而其他站的高优先级帧已发送到媒体,则媒体变为忙态因而低优先级帧就只能再推迟发送了。这样就减少了发生碰撞的机会。

 

4、Contention window & Random backoff time

(争用窗口和退避时间)

[802.11]802.11MAC简介(三)_第2张图片

帧间间隔示意图

 

4.1、争用窗口(contention window)

[802.11]802.11MAC简介(三)_第3张图片

争用窗口示意图

信道从忙态变为空闲时,任何一个站要发送数据帧时,不仅都必须等待一个 DIFS 的间隔,而且还要进入争用窗口,并计算随机退避时间以便再次重新试图接入到信道。

在信道从忙态转为空闲时,各站就要执行退避算法。这样做就减少了发生碰撞的概率。

802.11 使用二进制指数退避算法。

 

4.2、退避算法


4.2.1、退避过程

仅在下面的情况下才不使用退避算法:检测到信道是空闲的,并且这个数据帧是要发送的第一个数据帧。

除此以外的所有情况,都必须使用退避算法。即:

l 在发送第一个帧之前检测到信道处于忙态。

l 在每一次的重传后。

l 在每一次的成功发送后。

 

4.2.2、二进制指数退避算法

Backoff Time = Random() × aSlotTime

i 次退避就在22+i个时隙中随机地选择一个,即:

l 第 I 次退避是在时隙 {0, 1, …, 22 + i – 1} 中随机地选择一个。

l 第 1 次退避是在 8 个时隙(而不是 2 个)中随机选择一个。

l 第 2 次退避是在 16 个时隙(而不是 4 个)中随机选择一个

 

5、NAV (网络分配向量)

当一个站检测到正在信道中传送的 MAC 帧首部的“持续时间”字段时,就调整自己的网络分配向量 NAV (Network Allocation Vector)。

NAV 指出了必须经过多少时间才能完成数据帧的这次传输,才能使信道转入到空闲状态。

[802.11]802.11MAC简介(三)_第4张图片

MAC发送包中带有NAV消息,节点随着收到的包后,根据NAV设置静默时间,且此计数器值随新到包中的NAV信息更新。

 

参考资料

1、 谢希仁,计算机网络

2、 IEEE 802.11 2007

你可能感兴趣的:(算法,vector,网络,Random,NetWork,Allocation)