发送方

更新时间:2022-08-25 18:21

发送方是指信息交流中,一方处于信息输出,另一方是信息接收。信息输出方就是发送方。如在电子邮箱中我在写邮件,我处于的就是发送方。手机的短信交流中发送方是是可以设置多人的,群组发送,或选定发送,可以大大节约发送方的时间,精力。

简介

无线传感器网络因其低功耗、低成本、分布式和自组织的特点,越来越受到人们的重视,其应用涵盖了军事反恐、交通能源、抢险救灾、环境监测、医疗保健、家居生活、工业商业等各个不同领域,有着十分广阔的应用前景。由于节点能量受限,无线传感器网络要尽可能高效地利用能量,作为协议栈基础的媒体接入控制(Medium Access Control,MAC)协议就显得尤为重要。如何设计一个高能效的MAC协议来协调竞争节点的信道接入一直以来就是人们关注的热点问题。

异步的由接收方发起的MAC协议由于其低复杂性、低占空比、高吞吐量等特点,得到越来越广泛的应用。在异步协议设计中,提升协议性能的一个关键问题就是如何协调发送方与接收方之间的唤醒调度,使之能够更好地进行数据收发之间的衔接与配合,从而提升系统容量,降低传输时延。对传统的异步的由接收方发起的MAC协议而言,发送节点需要根据接收节点的唤醒调度调整自己的唤醒时间,从而使自己的数据发送能够与接收节点的数据接收相匹配。从这个意义上讲,接收节点在传输过程中占据主导地位,数据的传输时延主要由接收节点的休眠调度决定。正是由于处于支配地位,接收节点不会主动调整自己的唤醒策略来迎合发送节点的数据传输;而发送节点则希望能尽快将数据发送出去,减少传输延迟,提高传输效率,但其数据传输却不取决于自己,而是由接收节点来决定,由此导致了矛盾。究其原因,关键在于接收节点在数据传输过程中占据主导地位。从唤醒调度上看,发送节点是受接收节点支配的,即发送节点的数据发送取决于接收节点选择何时接收数据。这一点如果不改进,很难从根本上提高协议的传输效率。

相关工作

出现了许多基于占空比(Duty Cycle)的无线传感器网络MAC协议,通过在节点活动状态与休眠状态之间的切换降低能量消耗。基于占空比的MAC协议可以分成两类,即同步(Synchronous)协议和异步(Asynchronous)协议。同步协议通过同步的手段统一调度节点的休眠与活跃时间,使得节点能够在共同的活跃期内唤醒进行数据传输。该方法能减少节点的空闲侦听时间,但需要引入同步机制,增加了复杂性,带来了开销;同时,采用固定唤醒周期的方式不能适应网络流量的频繁变化。异步协议则无需节点间同步,降低了系统的复杂性。每个节点独立决定自己的唤醒调度,能够获得较低的占比空。

异步MAC协议可以分成两类,即发送方发起(Sender-Initiated)的MAC 协议(如B-MAC,X-MAC,WiseMAC等)和接收方发起(Receiver-Initiated)的MAC 协议(如RIMAC,PW-MAC等)。

在发送方发起的MAC协议中,通信往往由发送方主动发起。B-MAC在发送数据前先发送一段固定长度的前导(Preamble)信号,其长度要大于接收方的睡眠时长,从而确保接收方在唤醒后会收到该信号,同时抑制其他节点的发送。

WiseMAC允许接收节点在其确认帧中捎带下次唤醒时间,使发送方了解每个下游节点的采样调度,进而缩短前导长度。X-MAC则通过定义频闪前导(Strobed Preamble)进一步缩短前导长度,避免过度侦听,同时,发送方将目的地址放入频闪前导中,非目的节点尽早丢弃分组并进入睡眠,目的节点则利用前导之间的间隙向源节点发送早期确认从而节省时间。

发送方发送的前导序列会抑制非目的节点间的通信,造成吞吐量下降,于是出现了由接收方发起的MAC协议。在接收方发起的MAC协议中,一旦有数据需要传输,发送节点就保持唤醒状态,等待接收方发来的信号。接收节点按照自己的调度进行休眠唤醒,唤醒后主动发送一个信令Beacon,用以通知发送节点发送数据。由于该信令较前导信号更短,可以减少传输延迟,且由于发送方在数据发送前不会发送其他信号,因此不会抑制其他节点间的数据传输。RI-MAC就是一个典型的由接收方发起的MAC协议。在RI-MAC中,接收节点唤醒后就在信道上广播一个Beacon信令,通知发送方发送数据。由于发送节点会一直保持活跃,一旦收到来自接收方的信号后就立刻开始数据传输。倘若在规定时间内没有收到发送方发来的数据,接收节点会再次进入睡眠状态。采用该方式可以保证接收节点在开始接收数据前信道是空闲的。PW-MAC在RI-MAC 的基础上增加了预测机制,使发送节点可以预测接收节点的唤醒时间,从而在接收节点唤醒前提前唤醒,开始数据传输,避免能量过度消耗。

唤醒方式

接收方发起的MAC协议要求发送节点在接收节点之前唤醒,这样才能捕捉到由接收节点发出的数据传输开始的信号。发送节点提前唤醒的方式一般有两种,即接收方主导唤醒方式(Receiver-Dominated Wakeup)和发送方主导唤醒方式(Sender-Dominated Wakeup)。

接收方主导唤醒方式是指接收节点作为数据的接收方,在数据传输过程中自主设定自身的唤醒调度;而作为数据的发送方,发送节点应该根据接收节点的调度周期来调整自己的唤醒时刻,从而能够在接收方唤醒前提前唤醒,做好数据传输准备。现有的接收方发起的MAC协议主要采用这种唤醒方式。

发送方主导唤醒方式是指发送节点的唤醒调度由其自主设置,接收节点需要根据发送节点的唤醒周期动态调整自己的唤醒调度,以便能够在发送节点唤醒后立刻唤醒,发送Beacon信令,接收来自于发送节点的数据传输。RISD-MAC协议即采用该唤醒方式。

与接收方主导唤醒方式相比,发送方主导唤醒方式确立了发送节点在数据传输过程中的支配地位,明确数据传输应以发送方为主,接收方的唤醒时间需要根据其上游发送节点的周期调度进行自适应调整,以配合发送节点的数据发送,从而减少传输时延,提高传输效率。

协议设计

在RISD-MAC协议中,节点有3种不同的调度模式,即主动调度模式(Active Schedule Mode)、被动调度模式(Reactive Schedule Model)以及唤醒加速模式(Wakeup Acceleration Model)。系统初始化时,节点处于主动调度模式,按照自身的调度策略进行休眠唤醒。当收到上游节点发来的数据,并且从其捎带(Piggyback)的信息中得知发送节点随后的唤醒调度后,下游节点切换至被动调度模式,主动调整自己的预设唤醒时间以与其上游节点相匹配。在随后的数据传输过程中,一旦出现了接收方提前唤醒的情况(即接收节点发送Beacon后没有收到预期的Data),接收节点立刻进入唤醒加速模式,重设自己下次唤醒的时间,以期能快速与发送节点相匹配。通信结束后,发送节点会在发送的最后一帧中捎带结束标志。收到该信息后,接收节点重新进入主动调度模式。

从通信方式看,RISD-MAC协议依然采用接收方发起的形式,即发送节点一旦有数据需要发送,立刻唤醒,随时准备接收来自于接收方的信令。接收节点首先按照自身的调度进行休眠唤醒,唤醒后会主动发送一个信令通知发送方发送数据。倘若在规定时间内没有收到任何数据,接收节点重新进入休眠状态,等待下次唤醒。发送节点在收到来自接收节点的信令后,立刻开始数据传输,同时将自己下次唤醒的时间捎带在数据帧中一并发送给对方。接收节点收到该信息后,切换至被动调度模式,根据发送方下次的唤醒时间动态调整自己的唤醒调度,从而能够在发送节点唤醒后立刻唤醒,发送Beacon信令,开始数据传输。由于存在时钟漂移及缺乏全局同步机制等问题,节点间会存在一定的时间误差,可能导致接收节点按照重新设定的时间唤醒后却没有收到预期的来自发送方的数据,则接收节点进入唤醒加速模式,主动将自己下次唤醒的时间压缩为当前时间值的一半,从而缩短睡眠时间以快速匹配发送节点的数据传输。

在RISD-MAC协议调度下,接收方能以较短的时间响应发送方的数据传输,在缩短自己睡眠时间的同时也减少了发送节点持续侦听信道的时间,降低了能耗。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}