2.2AdHoc网络的MAC协议

2.2AdHoc⽹络的MAC协议
Ad Hoc 接⼊协议的分类
按照信道接⼊时握⼿协议的发起者可划分:
(1)发⽅主动的信道接⼊协议: 由发送节点主动发起信道预约,⼤多数的信道接⼊协议属于此类,如MACA、MACAW等。
(2)收⽅主动的信道接⼊协议: 由接收者发起信道预约,接收节点主动向发送节点发送RTR(ready to receive)控制报⽂,发送节点如果有数据就直接发送。这种协议试图通过减少控制报⽂的个数、降低握⼿开销来提⾼⽹络的吞吐量。如MACA-BI(MACA by Invitation)、RIMA(Receiver-initiated Mutiple-Access).
按照信道协议使⽤的信道数⽬,可划分为:
(1)基于单信道的信道接⼊协议:
所有的控制报⽂和数据报⽂在同⼀个信道上发送和接收。受传播时延、隐终端和节点移动性等因素的影响,单信道的ad hoc ⽹络有可能发⽣控制报⽂之间、控制报⽂和数据报⽂、数据报⽂之间的冲突。⼀般
来看,数据报⽂往往⽐控制报⽂长的多,数据报⽂的冲突会严重影响信道的利⽤率。所以单信道接⼊协议的主要⽬标之⼀就是通过使⽤控制报⽂尽量减少甚⾄消除数据报⽂的冲突,即设计合理的冲突避免策略。典型的有:MACA、MACAW、IEEE 802.11DCF、FAMA
(2)基于双信道的信道接⼊协议:
有两个共享信道:控制信道和数据信道。由于使⽤两个信道,控制报⽂就不会与数据报⽂产⽣冲突。双信道在解决隐藏终端和暴露终端问题上具有独特的优势,通过适当的控制机制,可以完全消除隐藏终端和暴露终端的影响。
典型的有:BAPU、DBTMA等。
(3)基于多信道的信道接⼊协议
在使⽤多信道的情况下,接⼊控制更加灵活。可以使⽤其中⼀个作为公共控制信道,也可以让控制报⽂和数据报⽂在⼀个信道上混合传送。多信道MAC协议主要关注的问题是:信道分配和接⼊控制。信道分配负责为不同的通信节点分配相应的信道,消除数据报⽂的冲突,使尽量多的节点可以同时通信。接⼊控制负责确定节点接⼊信道的时机、冲突的避免和解决等。
典型的有HRMA、mutiple-channel CSMA、DCA、MMAC。
Ad Hoc 单信道接⼊协议
❤ MACA(Mutiple Access Collision Avoidance)
MACA是第⼀个使⽤RTS-CTS控制报⽂握⼿来解决ad hoc⽹络隐藏终端和暴露终端问题的信道接⼊协议。
( 隐终端问题解决: 没有听到RTS能听到CTS的是隐终端。 隐终端的问题能解决,会延迟发送。
暴露终端问题解决: 听到RTS没听到CTS的是暴露终端。只要能收到CTS,此问题就能解决。)
源于CSMA/CA(载波监听/冲突避免)
在CSMA/CA接⼊协议中,发送者和接收者在发送数据前⾸先使⽤RTS-CTS控制报⽂握⼿,⽬的是通知接收者做好接收准备。
CSMA/CA在⽆线⾃组织⽹络ad hoc中是存在问题的:
隐藏终端的存在:节点检测不到载波并不意味着信道空闲可以发送数据;暴露终端的存在:节点检测到载波并不意味着信道忙⽽不能发送数据。即载波监听的结果不⼀定有⽤,在⽆线⽹络中不能发挥作⽤。所以MACA不使⽤载波监听,CSMA/CA去掉CS就成了MACA。
MACA思想:
发送者发送数据前先向接收者发送RTS控制报⽂,RTS帧中包含将要发送的分组的长度。接收者收到RTS后,回送CTS报⽂,并将长度消息捎回;收到CTS后,发送者开始发送数据。//收到RTS的其他节点在⼀段时间内不能发送任何消息,以保证发送者能够接收并相应CTS分组。听到CTS的节点,知道在它的通信范围内有站要接收每种长度的分组,通过实施退避算法延迟发送来避免冲突。//发送站只有在收到对⽅回送的CTS后才能发送数据,如果没有收到CTS,则认为RTS因为冲突被破坏,然后执⾏⼆进制指数退避算法BEB,延迟重发RTS。
关键在于利⽤RTS和CTS来阻塞邻居节点。
优点:
(1)提⾼了⽆线信道的利⽤率
普通的CSMA发⽣冲突时,各⽅都需要重传数据,会降低⽆线信道的利⽤率。如果数据本⾝很短,没必要发送RTS消息,可以在链路层设置RTS发送门限,只有数据长度⼤于该门限,才发送RTS帧。
(2)部分解决了暴露终端的问题。
缺点:
(1)不能解决控制分组之间(RTS-CTS)的冲突问题
(2)不具备链路层确认机制(没有ACK分组)。当冲突发⽣时需要上层超时重发,效率很低。
(3)由于采⽤⼆进制指数退避算法,如果某站的退避计数器值较⼤,那么在后续的竞争中失败的可能性也较⼤,从⽽使得退避值进⼀步增⼤,造成饿死现象(不公平)。
❤MACAW(MACA for Wireless LAN)
MACAW是第⼀个专门针对⽆线环境设计的MAC层协议,该⽅案采⽤了新的退避算法,以便更适合⽆线信道的环境。///在原来MACA的基础上,增加了确认数据包,⽤RTS-CTS-Ds-Data-ACK实现媒质的冲突检测。仿真证明MACAW将获得更⼤的吞吐量以及在⾼负荷下的资源分配更平均。
针对MACA的缺点,MACAW改进如下:
(1)退避计数器值拷贝实现公平。
在发送数据分组时,分组头部包含本站的退避计数器的值,收到分组的站可以将此值作为⾃⼰的退避
计数器的值继续使⽤。这种⽅法能够在⼀定程度上防⽌饿死现象,但不能充分了解⽹络的拥塞状态,从⽽增加了分组冲突。
(2)退避算法的改进。MILD乘性递增线性递减替代BEB
(3)消息交互的改进
由于在会话机制中增加了DS分组和ACK分组,所以逐跳传输的可靠性增加了,但传输⼀个分组所需要的附加业务量也增加了。
lng船
MACAW主要缺点:
⼀次通信控制信息交互次数太多,如果考虑⽆线设备发送和接收的转换时间,这种⽅法的效率就很低了。以增加协议开销为代价。
思想:
DS(Data Sending)报⽂⽤于邻居节点确认RTS-CTS握⼿成功。
发送节点和接收节点使⽤RTS-CTS握⼿成功后,发送节点先发送⼀个DS控制报⽂,然后向接收节点发送数据报⽂。///听到DS报⽂的节点就会确认⾃⼰要延迟发送数据。///如果节点听到RTS报⽂⽽没有听到DS报⽂,说明RTS-CTS发⽣冲突,握⼿没有成功,它就不需要再去延迟发送,从⽽提⾼吞吐量。
ACK报⽂⽤于实现报⽂数据的链路层确认。
❤ 802.11 DCF
802.11 MAC⽀持两种操作模式:单点协调功能(PCF)和分布协调功能(DCF)。IEEE 802.11 DCF采⽤CSMA/CA机制⼯作原理:准备传送分则数据的移动站包括AP⾸先检测信道是否繁忙,如果信道在DIFS时序间隔内为空闲状态,那么移动站将开始准备传送数据分组。否则,移动站将继续检测信道。具体步骤:如果信道在DIFS时序间隔内空闲,那么移动站:a)开始将信道时间分为多个时隙单元;b)⽣成以时隙为单位的随机退避间隔(random backoff interval) ;c)继续检测信道,在信道仍保持空闲的每个时隙中,退避间隔值减1.当间隔为0时,移动站将开始传送分组数据。
&&在介质上传送的帧与帧之间总会有⼀段空闲时间,DCF将其分为四种成为帧隙(InterFrame Space - IFS)的不同长度的时间槽。
退避机制的优点:
在退避期间,如果在⼀个时隙中检测到信道繁忙,那么退避间隔将保持不变(冻结),并且只当检测到在DIFS间隔及其下⼀时隙内信道持续空闲,才重新开始减少退避间隔值。当退避间隔为0时,将再次传送分组数据。退避机制有助于避免冲突。
医学检验技术是干嘛的了解内容:
(1)DCF的退避机制具有指数特征
(2)对于每个成功接收的分组数据,802.11规范要求向发送⽅发送ACK消息。
(3)CSMA/CA的基础是载波监听,802.11根据WLAN的特点提出了两种载波监听检测⽅法,以检测信道是否繁忙。⼀种是物理层的载波检测CS,从接收射频或天线信号检测信号能量或根基接收信号的质量来估计信道的忙闲状态;另⼀种是虚拟CS的⽅式,通过MAC报头或RTS/CTS的NAV来实现。(NAV的含义是⽹络分配向量,NAV基于MAC帧的时长字段,其值指出当前在信道中传输信息的站还需要继续占⽤信道的持续时间。当NAV的值为0时,由虚拟载波检测机制指⽰出信道为空闲状态。)
❤ FAMA(Floor acquisition mutiple access)
中⼼思想: 允许⼀次RTS-CTS成功握⼿可以连续发送多个数据报⽂“统治的CTS”,增加CTS的长度,任何在CTS的信号范围内,并同时发送RTS的节点,将⾄少监听到长CTS分组的⼀部分,这些节点将推迟对信道的争⽤,更好地消除隐终端的影响
❤ MACAW-BI陆虎自由人
是基于MACA的收⽅主动的信道接⼊协议,只有接到RTR邀请的节点才能发送数据。
设计思路:考虑到收发节点间的往返时间(包括收发转换时间、传播时延)对⽹络吞吐量的影响,往返时间成为信道设计的重要因素。
美利坚族
MACA-BI以RTR报⽂替代CTS报⽂,MACA-BI(RTR-Data)为双向握⼿,MACA(RTS-CTS-Data)为三向握
⼿,MACAW(RTS-CTS-DS-Data-ACK)为五向握⼿,减少了握⼿次数,从⽽在告诉、短距离的ad hoc⽹络中提⾼了吞吐量。
❤ MARCH(mutiple access with reduced handshake)母系氏族
减少握⼿次数的多址接⼊是⼀种旨在利⽤全向天线的⼴播性来减少握⼿次数的信道接⼊协议。它仅在路由的第⼀跳使⽤RTS-CTS握⼿,在其他路由段仅使⽤CTS报⽂实现握⼿。
ad hoc 双信道接⼊协议
❤ DBTMA(dual busy tone mutiple access)
背景:
以前的⼏种⽅法假设所有的相关节点都能听到RTS/CTS消息,但在⾼速移动的⼤型ad hoc⽹络中这种假设有时并不成⽴,当⽹络负载很⾼时CTS发⽣冲突的概率很⼤。为了解决这些问题,提出了双忙⾳多址接⼊协议DBTMA。
DBTMA是在CSMA和RTS/CTS会话机制的基础上,综合了两者的优点来提⾼系统性能。它除了使⽤控制信道上的RTS/CTS分组外,还使⽤了控制信道上的两个忙⾳来标识信道状态。
轻点CHINA学生CHINESEDBTMA算法:
⼀个发送站⾸先要监听信道上是否有BTr信号(冲突是在接收节点处产⽣的,所以先要看是否有节点在接收,如果有节点在接收的话再去发送是会产⽣冲突的)以确定是否有其他站在接收数据,如果没有听BTr信号,它可以发送RTS分组,并在发送RTS时继续监听BTr,如果在此期间听到BTr信号(⾃⼰是隐藏发送终端),即使收到了CTS信号也要延迟发送,从⽽解决了隐终端的问题。
当接收站收到RTS时,要监听BTt信号来看是否有节点在发送数据,如果没有听到BTt信号将响应CTS分组,并且发送BTr信号,否则它将保持沉默(⾃⼰是暴露接收终端),从⽽解决了暴露终端的问题。
关键:所有听到BTr信号的其他站必须延迟发送,所有收到BTt信号的站不能接收数据。
summary:
RTS/CTS报⽂交互只是⽤来探测接收节点能否接收报⽂,⽽不再担负着预约信道的作⽤。信道接⼊完全依赖于对两个忙⾳信号的检测。DBTMA实现了数据报⽂的⽆冲突,付出的代价是增加了两个外带忙⾳,忙⾳的发送和检测都需要额外硬件的⽀持。
双信道并不是没有解决报⽂冲突的能⼒,⽽是DBTMA没有发挥双信道的优势,没有充分利⽤RTS/CTS报⽂握⼿具备的能⼒。
内容体系
作业
ad hoc ⽹络单信道、双信道、以及多信道MAC协议关注的重点都是什么?
单信道:通过使⽤控制报⽂尽量减少甚⾄消除数据报⽂的冲突,即设计合理的冲突避免策略。
双信道:通过适当的控制机制,完全消除隐藏终端和暴露终端的影响。
多信道:信道分配和接⼊控制
MACA为什么去掉了载波监听(CS)?
隐藏终端的存在,节点检测不到载波并不意味着信道空闲可以发送数据;暴露终端的存在,节点检测到载波并不意味着信道忙⽽不能发送数据。即载波检测的结果不⼀定有⽤。
MACAW与MACA相⽐,有哪些改进?每种协议改进的⽬的是什么?
(1)退避计数器值拷贝实现公平
在发送数据分组时,分组头部包含本站的退避计数器的值,收到分组的站可以将此值作为⾃⼰的退避计数器的值继续使⽤。这种⽅法能够在⼀定程度上防⽌饿死现象,但不能充分了解⽹络的拥塞状态,
从⽽增加了分组冲突。
(2)退避算法的改进。MILD乘性递增线性递减替代BEB
(3)消息交互的改进
由于在会话机制中增加了DS分组和ACK分组,所以逐跳传输的可靠性增加了,但传输⼀个分组所需要的附加业务量也增加了。
简述DBTMA中两个忙⾳的作⽤(尤其注意暴露终端是如何解决的)
发送站: ⼀个发送站⾸先要监听信道上是否有BTr信号(冲突是在接收节点处产⽣的,所以先要看是否有节点在接收,如果有节点在接收的话再去发送是会产⽣冲突的)以确定是否有其他站在接收数据,如果没有听BTr信号,它可以发送RTS分组,并在发送RTS时继续监听BTr,如果在此期间听到BTr信号(⾃⼰是隐藏发送终端),即使收到了CTS信号也要延迟发送,从⽽解决了隐终端的问题。
接收站: 当接收站收到RTS时,要监听BTt信号来看是否有节点在发送数据,如果没有听到BTt信号将响应CTS分组,并且发送BTr信号,否则它将保持沉默(⾃⼰是暴露接收终端),从⽽解决了暴露终端的问题。
对于暴露终端B,发送时未检测BTr信号,所以可以正常发送RTS;A接收到RTS后,未检测到BTt信号,所以可以正常发送CTS及BTr信号(BTr信号持续到接收完毕数据);B接收到CTS信号后,发送BTt信号并开始传送数据(BTt信号持续到发送结束)。

本文发布于:2024-09-21 01:43:05,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/134580.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:信道   节点   发送   退避   终端
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议