竞争类MAC协议 |
您所在的位置:网站首页 › TRAMA协议中的状态 › 竞争类MAC协议 |
竞争类MAC协议
ALOHA协议多信道CSMA协议MACA协议MACAW协议ACKDSRRTS
FAMA协议IEEE 802.11 MAC协议MACA-BI协议DBTMA协议
ALOHA协议
这个比较简单,基本来说就是谁有消息要发就立刻发出去,因此碰撞问题十分严重,之后有了各种改进版本。 多信道CSMA协议通常来说多信道使用FDMA技术分割为N个不重叠的信道。 载波监听,想发送信息包的节点要确保没有其他节点在使用共享介质,所以该节点首先要监听信道上的动静如果信道在一定时段内寂静无声(长帧间间隔时间,避免信道衰落等干扰),则该节点就开始传输,通常情况下,为了避免多个节点产生碰撞,传输前需要等待一段随机时间。节点偏好选择自己以前成功发送过信息的信道,如果该信道被占用,则随机选择一个剩下的信道。分为持续和非持续,对于持续CSMA协议,每个节点连续不断的监听信道,一旦经过一段时间的空闲,就立刻发送信息。对于非持续CSMA协议,每次检测到信道忙,就随机等待一段时间以后传输出去。 MACA协议个人认为延迟算法巧妙的规避了隐终端和暴露终端的问题。 假设A给B发消息,A首先给B发送RTS请求,B听到以后回送给ACTS请求,之后两个节点再收发消息。 旁听到RTS的节点推迟至CTS分组发送完为止,旁听到CTS的节点推迟至数据包(长度在CTS中)发送完为止。这样能有效减少隐终端和暴露终端的问题。举个栗子,对于隐终端来说 在MACA协议的基础上增加了三个检验分组。 ACKACK分组用来核对数据包信息。接收节点接收数据包后给发送节点回送ACK信息,如果发送节点没有收到ACK则安排分组重传。如果接收节点正确收到数据包但是发送的ACK丢失,那么当发送节点进行数据重传时发送RTS分组,接收节点回答ACK分组而不是CTS分组。 DS
选自《计算机网络——自顶而下方法》,第三张图用于解释退避算法。 将MACA协议反过来。接收节点发送RTR分组(含有发送节点的ID)示意可以接受信息,之后发送节点直接发送数据分组。接收节点需要有流量预测算法,用来确定何时向发送节点发送RTR分组,因此可以用数据分组携带有关发送节点的流量信息。当发送节点缓存溢出时,发送节点直接发送RTS分组,此时MACA-BI协议退化为MACA协议。 MACA-BI协议不能防止分组碰撞。下图中C点会炸。 在RTS-DATA的基础上增加两个忙音,其中 B T t BT_t BTt为发送方设置,保护RTS分组, B T r BT_r BTr为接收方设置,保护RTS和DATA分组。在发送节点A将要发送RTS之前,先监听信道,检测 B T t BT_t BTt和 B T r BT_r BTr信号,如果检测到,进入竞争状态,当竞争状态结束以后再检测一遍,如果仍然检测到忙音进入空闲状态。如果A没有检测到忙音,自身设置 B T t BT_t BTt忙音,发送RTS分组,发送完以后关闭忙音。当接收节点B接收到A的RTS分组,自身设置 B T r BT_r BTr忙音,接收RTS分组。如果此时A侦听到了 B T r BT_r BTr忙音,说明自己发送成功,因此等待最大传输时延的两倍(用于使B点附近的节点全部听到B发出的 B T r BT_r BTr忙音,因而停止发信息干扰信道),之后发送DATA。B点接收DATA分组以后关闭 B T r BT_r BTr忙音。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |