随机接入--CSMA/CA协议

一.什么是CSMA/CA协议


既然CS MA/CD协议已经成功地应用于使用广播信道的有线局域网,那么同样使用广播信道的无线局域网能不能也使用CSMA/CD协议呢?
 

 · 在无线局域网中,仍然可以使用载波监听多址接入CSMA,即在发送帧之前先对传输媒体进
行载波监听。若发现有其他站在发送帧,就推迟发送以免发生碰撞。
· 在无线局域网中,不能使用碰撞检测CD,原因如下:
   1.由于无线信道的传输条件特殊,其信号强度的动态范围非常大,无线网卡上接收到的信号强度往往会远远小于发送信号的强度(可能相差百万倍)。如果要在无线网卡上实现碰撞检测CD,对硬件的要求非常高。
   2.即使能够在硬件上实现无线局域网的碰撞检测功能,但由于无线电波传播的特殊性(存在
隐蔽站问题),进行碰撞检测的意义也不大。

(a)
· 在无线局域网中,不能使用碰撞检测CD,原因如下: 
   1.由于无线信道的传输条件特殊,其信号强度的动态范围非常大,无线网卡上接收到的信号
强度往往会远远小于发送信号的强度(可能相差百万倍)。如果要在无线网卡.上实现碰撞
检测CD,对硬件的要求非常高。
  2.即使能够在硬件上实现无线局域网的碰撞检测功能,但由于无线电波传播的特殊性(存在
隐蔽站问题),进行碰撞检测的意义也不大。

 

分析图(a)A和C互为隐蔽站。1.A和C都检测不到对方的无线信息;2.A和C都给B发送帧时,产生碰撞;3.A和C无法检测到碰撞。

· 802.11无线局域网使用CSMA/CA协议,在CSMA的基础上增加了-个碰撞避免CA功能, 而不再实现碰撞检测功能。

· 由于不可能避免所有的碰撞,并且无线信道误码率较高,802.11标准还使用了数据链路层确认机制(停止-等待协议)来保证数据被正确接收。

· 802.11的MAC层标准定义了两种不同的媒体接入控制方式:

   1.分布式协调功能DCF(Dstributed Coordination Function)。在DCF方式下,没有中心控制站点,每个站点使用CSMA/CA协议通过争用信道来获取发送权,这是802.11定义的默认方式。

   2.点协调功能PCF(Point Coordination Function)。PCF方式使用集中控制的接入算法(一般在接入点AP实现集中控制),是802.11定义的可选方式,在实际中较少使用。

· 802.11标准规定,所有的站点必须在持续检测到信道空闲一-段指定时间后才能发送帧,这段
时间称为帧间间隔IFS。
· 帧间间隔的长短取决于该站点要发送的帧的类型:
   1.高优先级帧需要等待的时间较短, 因此可优先获得发送权;
   2.低优先级帧需要等待的时间较长。若某个站的低优先级帧还没来得及发送,而其他站的高优先级帧已发送到信道上,则信道变为忙态,因而低优先级帧就只能再推迟发送了。这样就减少了发生碰撞的机会。
· 常用的两种帧间间隔如下:
   1.短帧间间隔SIFS(28μs),是最短的帧间间隔,用来分隔开属于一次对话的各帧。-个站点应当能够在这段时间内从发送方式切换到接收方式。使用SIFS的帧类型有ACK帧、CTS帧、 由过长的MAC帧分片后的数据帧、以及所有回答AP探询的帧和在PCF方式中接入点AP发送出的任何帧。
   2.DCF帧间间隔DIFS(128μs), 它比短帧间间隔SIFS要长得多,在DCF方式中用来发送数据帧和管理帧。

二.时间间隔DIFS的重要性

任图(b)中,站点A要向站点B发送数据。A监听信道。若信道在时间间隔DIFS内-直都是空闲的(理由下面就要讲到),A就可以在to时间发送数据帧DATA。B收到后立即发回确认ACK。B开始发送确认的时刻,实际上必然略滞后于B收完DATA的时间,滞后的时间是SIFS。这是因为B收到数据帧后,必须进行CRC检验。若检验无差错,再从接收状态转为发送状态,这些动作不可能在瞬间完成。SIFS 值在802.11 标准中均有规定。因此,从A发送数据帧DATA开始,到收到确认ACK为止的这段时间(DATA+ SIFS + ACK),必须不允许任何其他站发送数据,这样才不会发生碰撞。为此, 802.1 标准规定了每个站必须同时使用以下的两个方法。

          (b)A向B发送数据,B发回确认

这是我们会想A为什么会在检测到信道空闲还要等待一段时间DIFS呢?

就是考虑到可能有其他站有高优先级的帧要发送,若有,就让高优先级的帧先发送。

 解决了这个问题我们又会想为什么要等待一段时间SIFS才能发送ACK帧呢?

SIFS是最短的帧间间隔,用来分隔开属于一次对话的各帧。在这段时间里,一个站点应该能从发送方式转变为接收方式。

当我们看到第二个DIFS是会问,既然信道已经由忙转化为空闲,那为什么还要退避一段时间才能使用信道呢? 

防止多个站点同时发送数据而产生碰撞。

三.争用信道

 当站点检测到信道是空闲的, 并且所发送的数据帧不是成功发送完上一个数据帧之后立即连续发送的数据帧则不使用退避算法。

以下情况必须使用退避算法:

    1.在发送数据帧之前检测到信道处于忙状态时; 

    2.在每一次成功发送后要连续发送下一个帧时(这是为了避免-一个站点长时间占用信道)。

    3.在每一次重传一个数据时。

(c)

■在执行退避算法时, 站点为退避计时器设置一个随机的退避时间:

口当退避计时器的时间减小到零时, 就开始发送数据;

口当退避计时器的时间还未减小到零时而信道又转变为忙状态, 这时就冻结退避计时器的数值,重新等待信道变为空闲,再经过时间DIFS后,继续启动退避计时器。

■在进行第i次退避时, 退避时间在时隙编号{0, 1, ... 2^2+i -1}中随机选择一个,然后乘以基本退避时间(也就是一个时隙的长度)就可以得到随机的退避时间。这样做是为了使不同站点选择相同退避时间的概率减少。当时隙编号达到255时(对应于第6次退避)就不再增加了。

四.对信道进行预约

· 为了尽可能减少碰撞的概率和降低碰撞的影响,802.1 1标准允许要发送数据的站点对信道进行预约。

(1)源站在发送数据帧之前先发送一个短的控制帧,称为请求发送RTS(Request To Send),它包括源地址、目的地址以及这次通信(包括相应的确认帧)所需的持续时间。

(2)若目的站正确收到源站发来的RTS帧,且媒体空闲,就发送一个响应控制帧,称为允许发送CTS(Clear To Send),它也包括这次通信所需的持续时间(从RTS帧中将此持续时间复制到CTS帧中)。

(3)源站收到CTS帧后,再等待-段时间SIFS后,就可发送其数据帧。

(4)若目的站正确收到了源站发来的数据帧,在等待时间SIFS后,就向源站发送确认帧ACK。

■除源站和目的站以外的其他各站, 在收到CTS帧(或数据帧)后就推迟接入到无线局域网中。这样就保证了源站和目的站之间的通信不会受到其他站的干扰。

■如果RTS帧发生碰撞,源站就收不到CTS帧,需执行退避算法重传RTS帧。

■由于RTS帧和CTS帧很短,发送碰撞的概率、碰撞产生的开销及本身的开销都很小。而对于一般的数据帧,其发送时延往往大于传播时延(因为是局域网),碰撞的概率很大,且一旦发生碰撞而导致数据帧重发,则浪费的时间就很多,因此用很小的代价对信道进行预约往往是值得的。

802.11标准规定了3种情况供用户选择: 
口使用RTS帧和CTS帧
口不使用RTS帧和CTS帧
口只有当数据帧的长度超过某-数值时才使用RTS帧和CTS帧

 (d)

■除RTS帧和CTS帧会携带通信需要持续的时间,数据帧也能携带通信需要持续的时间,这称为802.11的虚拟载波监听机制。

■由于利用虚拟载波监听机制,站点只要监听到RTS帧、CTS帧或数据帧中的任何一个,就能知道信道被占用的持续时间,而不需要真正监听到信道上的信号,因此虚拟载波监听机制能减少隐蔽站带来的碰撞问题。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
CSMA/CACarrier Sense Multiple Access with Collision Avoidance)是一种在无线网络中常用的介质访问控制(MAC协议,主要用于无线局域网(WLAN)和蓝牙等通信技术中。以下是CSMA/CA协议的一些关键要点: 1. **载波监听(Carrier Sense)**:设备在发送数据之前,首先会监听无线信道是否空闲。如果检测到信道繁忙(即其他设备正在传输),则会等待直到信道空闲。 2. **碰撞检测(Collision Detection)**:当两个或多个设备同时发送数据,由于无线信号的同步问题,接收端可能会同时接收到多个信号,造成数据包冲突。CSMA/CA协议通过检测冲突的电信号强度变化来判断是否有碰撞发生。 3. **退避机制(Backoff Mechanism)**:当发生碰撞后,设备会进入一个随机的退避时间(通常是一个指数分布的时间段),然后再次尝试发送。这个过程可以减少网络中的碰撞概率。 4. **优先级和带宽分配**:一些CSMA/CA变种可能包含优先级机制,根据设备的优先级调整发送机会,或者采用时间分片(如802.11 DCF的CSMA/CA)来分配信道使用权。 5. **冲突避免(Collision Avoidance)**:通过随机化退避时间和冲突窗口大小,CSMA/CA协议试图最小化碰撞发生的可能性。例如,DCF(分布式协调功能)通过随机接入前等待一段随机时间来增加成功发送的概率。 6. **确认和重传**:大多数CSMA/CA协议支持数据帧的确认,发送方通常会在发送后等待接收确认。如果未收到确认,发送方可能会重新发送丢失的数据。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

向前进.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值