无线局域网CSMA/CA协议

CSMA/CA协议

  • 工作原理

    • 发送站点首先帧听无线信道(载波帧听)
    • 如果空闲,等待DIFS(帧间隔)时间,然后帧听信道,仍空闲,发送第一个数据帧,并开启重发定时器,发送时不再进行冲突检测
    • 如果信道忙,继续帧听,直到信道空闲
    • 当信道由忙变为空闲状态时,站点继续等待一个帧间间隔时间,然后按照指数退避算法随机等待时间(争用窗口),如果信道仍然空闲,发送数据帧,发送时不进行冲突检测。
    • 目的站如果正确收到数据帧(没有冲突),经过时间间隔SIFS后,向源站发送ACK确认
    • 所有其他站需要设置网络分配向量NAV,表明这段时间内信道忙,不能发送数据帧,处于睡眠状态。

    无线局域网CSMA/CA协议_第1张图片
    几个问题:

CSMA/CA协议中,发送出去数据帧出现冲突、比特差错、丢失和延迟等问题,可靠性如何解决?

  • 在WLAN发送数据帧后,启动重发定时器,收到对方ACK确认后,才可以发送下一帧,重发定时器超时,需要重发。
  • 采用差错检测的停止-等待协议(序号+确认+超时重发)

为什么信道空闲还要再等待IFS

  • 考虑到可能其他移动站由高优先帧(控制帧)要发送。
  • 如果有,等待IFS时间内,高优先级帧先发送
  • 如果没有高优先级帧发送,则发送自己数据帧
    • 如果没有冲突,目的站正确收到该帧,经过时间间隔SIFS后,向源站发送确认帧ACK
    • 如果出现 冲突,比特差错,目的站丢弃,不发送ACK应答
      如果源站在规定时间没收到ACK,重传此帧,直到收到ACK,若多次失败,放弃通信
  • CSMA/CA必须结合差错控制停止-等待协议

指数退避算法
第i次退避就在22+i个时隙中随机选择一个。
第 I 次退避是在时隙 {0, 1, …, 2^2 + I^ -1} 中随机
地选择一个。
当时隙编号达到255时(对应第6次退避)就不再增加了。

退避算法的使用

不使用:站点发送第一个数据帧,并检测信道是空闲的。
除此以外,都必须使用退避算法(忙——空闲)

修订
802.11MAC协议对基本DCF模式改进,引入RTS/CTS机制
工作原理:

  • 发送站发送数据帧前,先向目的方发送一个发送请求帧(RTS:request to send),并给出持续时间
    • 持续时间:成功发送数据帧和ACK帧需要的时间
  • 目的方接收到RTS后,发送一个允许发送帧(CTS)以回应
  • 在此过程中,其他各站如果收到RTS或CTS帧后就知道有站点要发送数据帧,自动进入睡眠期,都将各自数据帧发送推迟到相应的“持续时间”之后。

无线局域网CSMA/CA协议_第2张图片
信道预约DCF

  • 单信道:只有一个信道既发送(或接收)数据帧,又发送(或接收)控制帧.
    • 可以解决隐藏发送终端问题;
    • 无法解决隐藏接收终端问题;
    • 无法解决暴露终端问题(如暴露发送终端与暴露接收终端
      问题).
  • 双信道:一个信道传输数据帧,另一个信道传输控制帧。
    • 理论上可以解决单信道遗留的问题, 如隐藏接收端与暴露终端问题(如暴露发送端与暴露接收端);
    • 目前实际解决的也不是很好!

你可能感兴趣的:(计网,网络,服务器,运维)