首页> 中国专利> 一种基于MACA-U协议的水声网络多址接入方法

一种基于MACA-U协议的水声网络多址接入方法

摘要

本发明涉及一种基于MACA-U协议的水声网络多址接入方法,包括:在源节点与目的节点的RTS-CTS交换过程中,若源节点或目的节点收到另一节点所发送的RTS,则在保证与源节点或目的节点已有忙时间不冲突的前提下计算出源节点或目的节点适合接收另一节点所发送的数据帧的时间;然后向另一节点回复CTS,CTS中包括另一节点从收到CTS到发送数据帧之前应等待的时间和除另一节点外的其他节点收到此CTS后应静默的时间;另一节点收到CTS后根据CTS等待一段时间后发送数据帧。

著录项

  • 公开/公告号CN104349495A

    专利类型发明专利

  • 公开/公告日2015-02-11

    原文格式PDF

  • 申请/专利权人 中国科学院声学研究所;

    申请/专利号CN201310340479.9

  • 发明设计人 刘磊;李宇;张春华;黄海宁;

    申请日2013-08-07

  • 分类号H04W74/08(20090101);H04B13/02(20060101);

  • 代理机构11318 北京法思腾知识产权代理有限公司;

  • 代理人杨小蓉;杨青

  • 地址 100190 北京市海淀区北四环西路21号

  • 入库时间 2023-12-17 04:40:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-12-29

    授权

    授权

  • 2015-03-18

    实质审查的生效 IPC(主分类):H04W74/08 申请日:20130807

    实质审查的生效

  • 2015-02-11

    公开

    公开

说明书

技术领域

本发明涉及水声网络领域,具体涉及一种基于MACA-U协议的水声网络多址接 入(MAC)方法。

背景技术

海洋在经济、社会和军事等方面的地位越来越重要,人们迫切需要提高海洋信 息的获取和处理能力。水声网络作为一项新兴的海洋信息技术,在环境监测、灾害 预警、海洋工程、水下防御等领域有广阔的应用前景,因此被越来越多的研究者所 关注。声音在水下的传播速度平均为1500m/s,比电磁波在无线电信道中的传播速度 3x108m/s低5个数量级。相应的传播延迟为0.67s/km,而网络节点间通信距离往往 达到几公里甚至十几公里,如此高的传播延迟会严重降低水声网络信息交互的效率。

数据链路层协议是水声网络研究的重要内容。在随机接入协议中,ALOHA是最 简单的,当节点有数据要发送时,立即发送数据并等待ACK。由于ALOHA没有考 虑信道的状态,当负载较高时,ALOHA协议的性能急剧下降。载波侦听多址接入 (CSMA)协议通过侦听发送端附近的载波来避免碰撞,但却不能在接收端处避免碰 撞,因此,CSMA协议存在隐藏终端和暴露终端的问题。避免碰撞的多址接入 (MACA)协议通过交换RTS-CTS解决了CSMA协议存在的问题。MACAW协议 是在MACA协议的基础上提出的,该协议增强了网络的可靠性,但是每次通信成功 后,都要发送一个ACK分组,在传播延时高的水声网络会增加协议的开销,降低吞 吐量。

MACA-U协议是在MACA协议的基础上所提出的一种改进协议,如图1所示, MACA-U协议采用RTS-CTS-DATA三次握手机制。当源节点S有数据包需要发送时, 先发送RTS控制包,目的节点D接收到RTS后,立即回复CTS控制包。源节点S 接收到CTS后,立即发送DATA。目的节点D接收到DATA后,结束本次握手通信。 如果源节点S未接收到相应的CTS,则源节点S采用二进制指数退避算法(Binary  Exponential Backoff,BEB)退避并重发。其他邻居节点A、B监听到不是给自己的 数据包后,进入QUITE状态。MACA-U协议的RTS-CTS握手机制解决了隐藏终端 和暴露终端问题,减少了数据包的碰撞。但是,MACA-U协议中的坚持等待规则和 静默规则严格限制了邻节点数据的发送,不利于网络吞吐量的提高。同时,在 RTS-CTS-DATA交换过程中节点等待时间过长,占据了通信过程中的大部分时间。

发明内容

本发明的目的在于克服现有技术中的水声网络通信方法网络吞吐量不高,由于 水声传播延时大而使节点等待时间过长等缺陷,从而提供一种基于MACA-U协议的 水声网络多址接入方法。

为了实现上述目的,本发明提供了一种基于MACA-U协议的水声网络多址接入 方法,包括:

在源节点与目的节点的RTS-CTS交换过程中,若所述源节点或目的节点收到另 一节点所发送的RTS,则在保证与所述源节点或目的节点已有忙时间不冲突的前提 下计算出所述源节点或目的节点适合接收所述另一节点所发送的数据帧的时间;然 后向所述另一节点回复CTS,所述CTS中包括所述另一节点从收到CTS到发送数据 帧之前应等待的时间和除所述另一节点外的其他节点收到此CTS后应静默的时间; 所述另一节点收到CTS后根据CTS等待一段时间后发送数据帧。

上述技术方案中,该方法在源节点上的实现包括以下步骤:

步骤101)、源节点S在向目的节点D发送数据前,首先发送RTS,计算源节点 的忙时间TS1,并将TS1存入本地忙时间表中,并进入WFCTS状态;

其中,源节点S的忙时间TS1是指从源节点S开始接收CTS的时刻t1到源节点发 送完数据帧的时刻t2这一时间段,其计算公式如下面的公式(1)所示:

t1=ts_1+TRTS+τSD×2t2=t1+TCTS+TDATATS1=[t1,t2]---(1)

其中,ts_1是源节点S准备发送RTS的时刻,TRTS、TCTS、TDATA分别为RTS、 CTS和数据帧的持续时间,τSD为源节点S到目的节点D的传播延时,[]表示区间;

步骤102)、当源节点S处于WFCTS状态时,若收到某一节点A所发送的RTS, 在保证与本节点已有忙时间不冲突的前提下,计算出源节点S适合接收节点A所发 送数据帧的时间,即节点A向源节点S预约节点A发送数据包的时间,进而计算出 节点A从收到CTS到发送数据帧之间的延迟τA;其中,

τSA为源节点S到节点A的传播延时,ts_2为源节点S收到节点A发送的RTS 的时刻;

步骤103)、源节点S向节点A回复CTS,所述CTS包括:节点A收到CTS后 到该节点发送数据帧之前应延迟的时间τA,以及其他节点收到此CTS后应静默的时 间QUIET_CTS;其中,

QUIET_CTS=TCTS+TDATASA×2+τA          (5)

步骤104)、节点A收到CTS后延迟τA再发送数据帧;

步骤105)、源节点S周围除节点A外的其他邻居节点收到CTS后,静默 QUIET_CTS时间,以保证不干扰源节点S接收节点A的数据帧;

该方法在目的节点上的实现包括以下步骤:

步骤201)、当目的节点D处于IDLE状态时,当该节点收到RTS后,计算本节 点的忙时间TD1,并将TD1存入本地忙时间表中,回复CTS,并进入WFDATA状态;

其中,TD1是指从目的节点D开始接收数据帧的时刻t5到接收完数据帧的时刻t6之间的时间段,其计算公式如下:

t5=td_1+TCTS+τSD×2t6=t3+TDATATD1=[t5,t6]---(6)

其中,td_1是目的节点D收到RTS的时刻,τSD为源节点S到目的节点D的传 播延时;t3=ts_2+TCTSSA×2+τA

步骤202)、当目的节点D处于WFDATA状态时,如果收到节点B发给目的节 点D的RTS,在保证与本节点已有忙时间不冲突的前提下,计算出目的节点D适合 接收节点B所发送数据帧的时间,即节点B向目的节点D预约节点B发送数据包的 时间,进而计算出节点B从收到CTS到发送数据帧之间的延迟τB;其中,

τDB为目的节点D到节点B的传播延时;

步骤203)、目的节点D向节点B回复CTS,所述CTS包括:节点B收到CTS 后到发送数据帧之前应等待的时间τB和其他节点收到此CTS后应静默的时间 QUIET_CTS;

QUIET_CTS=TCTS+TDATADB×2+τB        (10)

步骤204)、节点B收到CTS后延迟τB再发送数据帧;

步骤205)、目的节点D周围除节点B外的其他邻居节点收到CTS后,静默 QUIET_CTS时间,以保证不干扰目的节点D接收节点B的数据帧。

上述技术方案中,在所述的步骤104)中,若节点A之前处于静默状态,在收 到发送给自己的CTS后,结束静默,延迟τA再发送数据帧。

上述技术方案中,在所述的步骤204)中,若节点B之前处于静默状态,在收 到发送给自己的CTS后,结束静默,延迟τB再发送数据帧。

本发明的优点在于:

在源节点和目的节点的RTS-CTS交换过程中,其他节点利用源节点和目的节点 的RTS-CTS的传播延时完成了与源节点或目的节点的RTS-CTS交换,并向源节点 或目的节点预约了发送DATA的时间。在同一时间段同时完成了多个节点间的数据 通信,这不仅充分利用信道的空闲时间,也抑制了正在通信节点的其他邻居节点的 干扰,避免了数据包的冲突。

附图说明

图1是现有技术中的MACA-U协议的时序图;

图2是本发明方法所涉及的时序图;

图3是仿真时所涉及的网络拓扑结构的示意图;

图4是本发明的方法与现有技术中的MACA-U协议在数据包长度为512bits、 1024bits和2048bits下的负载-吞吐量的比较示意图;

图5是本发明的方法与现有技术中的MACA-U协议在数据包长度为512bits、 1024bits和2048bits下的负载-平均延时的比较示意图;

图6是本发明的方法与现有技术中的MACA-U协议在数据包长度为512bits、 1024bits和2048bits下的负载-协议开销的比较示意图;

图7是本发明方法与现有技术中的MACA-U协议在通信速率为1024bps、 2048bps和4096bps下的负载-吞吐量的比较示意图;

图8是本发明方法与现有技术中的MACA-U协议在通信速率为1024bps、 2048bps和4096bps下的负载-平均延时的比较示意图;

图9是本发明方法与现有技术中的MACA-U协议在通信速率为1024bps、 2048bps和4096bps下的负载-协议开销的比较示意图;

图10是本发明方法与现有技术中的MACA-U协议在平均网格间距为1000m、 2000m和4000m下的负载-吞吐量的比较示意图;

图11是本发明方法与现有技术中的MACA-U协议在平均网格间距为1000m、 2000m和4000m下的负载-平均延时的比较示意图;

图12是本发明方法与现有技术中的MACA-U协议在平均网格间距为1000m、 2000m和4000m下的负载-协议开销的比较示意图。

具体实施方式

现结合附图对本发明作进一步的描述。

参考图2,在水声网络的一次通信过程中,包括有源节点S、目的节点D以及其 他节点A和B。水声网络中的每个节点保存有一本地忙时间表,该表中存储着本节 点的忙时间,即忙开始时刻和忙结束时刻,所述忙时间是指节点准备发送或接收数 据包时的时间,将各个节点的忙时间提前存储在本地忙时间表内能够预防同时接收 不同节点的多个数据包,从而导致数据包冲突。所述本地忙时间表的数据格式如表1 所示:

表1  本地忙时间表

忙开始时刻 忙结束时刻

以水声网络中的这些节点为例,对本发明的方法做详细说明。

本发明的方法既能用于源节点与其他节点之间的通信,也能用于目的节点与其 他节点之间的通信。

本发明的方法在源节点上的实现包括以下步骤:

步骤101)、源节点S在向目的节点D发送数据前,首先发送RTS,计算源节点 的忙时间TS1,并将TS1存入本地忙时间表中,并进入WFCTS状态。

其中,源节点S的忙时间TS1是指从源节点S开始接收CTS的时刻t1到源节点发 送完DATA的时刻t2这一时间段,其计算公式如下面的公式1所示:

t1=ts_1+TRTS+τSD×2t2=t1+TCTS+TDATATS1=[t1,t2]---(1)

其中,ts_1是源节点S准备发送RTS的时刻,TRTS、TCTS、TDATA分别为RTS、 CTS和DATA的持续时间,τSD为源节点S到目的节点D的传播延时,[]表示区间。

步骤102)、当源节点S处于WFCTS状态时,若收到某一节点A所发送的RTS, 在保证与本节点已有忙时间不冲突的前提下,计算出源节点S适合接收节点A所发 送数据帧的时间,即节点A向源节点S预约节点A发送数据包的时间,进而计算出 节点A从收到CTS到发送DATA之间的延迟τA

源节点S在WFCTS状态时,如果在ts_2时刻收到节点A发给源节点S的RTS, 则源节点S用于接收节点A所发送的数据帧的忙时间TA1可按照如下公式计算:

t3=ts_2+TCTS+τSA×2+τAt4=t3+TDATATA1=[t3,t4]---(2)

其中,τSA为源节点S到节点A的传播延时,τA为节点A收到CTS后到发送 DATA之间的延迟。

为避免节点A发送的数据帧(DATA)与源节点S的忙时间冲突,必须满足公式 (3)的条件:

TS1∩TS2∩......∩TA1=φ              (3)

其中,TS1、TS2......为源节点S已有的忙时间。

由上述公式(2)和(3)可以计算出τA,如公式(4)所示,

步骤103)、源节点S向节点A回复CTS,所述CTS包括:节点A收到CTS后 到该节点发送DATA之前应延迟的时间τA,以及其他节点收到此CTS后应静默的时 间QUIET_CTS。

QUIET_CTS=TCTS+TDATASA×2+τA         (5)

步骤104)、节点A收到CTS后延迟τA再发送DATA。

若节点A在静默状态收到发送给自己的CTS,结束静默,延迟τA再发送DATA。

步骤105)、源节点S周围除节点A外的其他邻居节点收到CTS后,静默 QUIET_CTS时间,以保证不干扰源节点S接收节点A的DATA。

从上述描述可以看出,在源节点S和目的节点D的RTS-CTS交换过程中,节点 A利用源节点S和目的节点D的RTS-CTS的传播延时完成了与源节点S的RTS-CTS 交换,并向源节点S预约了节点A发送DATA的时间。源节点S在同一时间段同时 完成了与目的节点D和节点A的数据通信,这不仅充分利用信道的空闲时间,也抑 制了源节点S的其他邻居节点干扰源节点S接收节点A的数据包,避免了数据包的 冲突。

本发明的方法在目的节点上的实现包括以下步骤:

步骤201)、当目的节点D处于IDLE状态时,当该节点收到RTS后,计算本节 点的忙时间TD1,并将TD1存入本地忙时间表中,回复CTS,并进入WFDATA状态。

其中,TD1是指从目的节点D开始接收DATA的时刻t5到接收完DATA的时刻t6之间的时间段,其计算公式如下:

t5=td_1+TCTS+τSD×2t6=t3+TDATATD1=[t5,t6]---(6)

其中,td_1是目的节点D收到RTS的时刻,τSD为源节点S到目的节点D的传 播延时。

步骤202)、当目的节点D处于WFDATA状态时,如果收到节点B发给目的节 点D的RTS,在保证与本节点已有忙时间不冲突的前提下,计算出目的节点D适合 接收节点B所发送数据帧的时间,即节点B向目的节点D预约节点B发送数据包的 时间,进而计算出节点B从收到CTS到发送DATA之间的延迟τB

目的节点D处于WFDATA状态时,如果在td_1时刻收到节点B发给目的节点D 的RTS,则目的节点D用于接收节点B所发送的数据帧的忙时间TB1可按照如下公式 计算:

t7=td_1+TCTS+τDB×2+τBt8=t7+TDATATB1=[t7,t8]---(7)

其中,τDB为目的节点D到节点B的传播延时,τB为节点B收到CTS后到发 送DATA之间的延迟。

为避免节点B发送的数据帧(DATA)与目的节点D的忙时间冲突,必须满足 公式(8)的条件:

TD1∩TD2∩......∩TB1=φ              (8)

其中,TD1、TD2......为节点D已有的忙时间。

由此可以计算出τB,如公式(9)所示,

步骤203)、目的节点D向节点B回复CTS,所述CTS包括:节点B收到CTS 后到发送DATA之前应等待的时间τB和其他节点收到此CTS后应静默的时间 QUIET_CTS。

QUIET_CTS=TCTS+TDATADB×2+τB        (10)

步骤204)、节点B收到CTS后延迟τB再发送DATA(图2中的τB为0)。

若节点B处于静默状态,在收到发送给自己的CTS后,结束静默,延迟τB再发 送DATA。

步骤205)、目的节点D周围除节点B外的其他邻居节点收到CTS后,静默 QUIET_CTS时间,以保证不干扰目的节点D接收节点B的DATA。

从上述描述可以看出,在源节点S和目的节点D的RTS-CTS交换过程中,节点 B利用源节点S和目的节点D的RTS-CTS的传播延时完成了与目的节点D的 RTS-CTS交换,并向目的节点D预约了节点B发送DATA的时间。目的节点D在 同一时间段同时完成了与源节点S和节点B的数据通信,这不仅充分利用信道的空 闲时间,也抑制了目的节点D的其他邻居节点干扰目的节点D接收节点B的数据包, 避免了数据包的冲突。

在现有技术的MACA-U协议中,目的节点D在WFCTS状态如果收到xCTS则 进入静默,不再响应发给自己的RTS或CTS。而在本发明中,处于静默状态的节点 收到发给自己的CTS后,结束静默,延迟τB再发送DATA。这有利于提高通信效率, 减少通信时间。

为了体现本发明方法的优点,下面采用NS2进行仿真分析。仿真采用的网络拓 扑结构如图3所示,36个静态节点(黑色节点)形成6x6的正方形分布。节点并非 精确的位于网格的交叉点上,而是在水平方向和竖直方向均引入10%网格间距的随 机偏移。节点的最大通信距离为网格间距的1.75倍,这样,每个节点均有8个一跳 邻节点和16个两跳邻节点。仿真中,36个节点均按泊松分布产生数据包,且产生数 据包的速率相同。节点产生的每个数据包均发往其任一两跳邻节点,且每个数据包 发往16个两跳邻节点的概率相同。为了使边界上的节点也有16个两跳邻节点,需 要对边界进行扩展,即在四个方向上都扩展两层节点(灰色节点),但是这些额外的 节点不会产生数据流,仅作为边界节点的目标节点和转发节点存在。仿真采用静态 路由,图中只表示出一个节点(圆形节点)的静态路由,其余节点的路由与之类似。

声速取1500m/s。控制帧RTS和CTS的长度均取72bits。退避窗口最小值和最 大值分别取2和64。本文分别对不同数据包长度、不同通信速率和不同网格间距下 的DR-MACA和MACA_U的负载-吞吐量、负载-平均延时和负载-协议开销进行仿 真比较。全网负载、吞吐量、平均延时和协议开销的定义如下所示,

对本发明方法与现有技术中的MACA-U协议在数据包长度为512bits、1024bits 和2048bits下的吞吐量、平均延时和协议开销进行了仿真,结果分别如图4、图5和 图6所示。仿真中通信速率为2048bps,平均网格间距为2000m。从图中可以看出, 随着数据包长度增加,协议在握手成功后的单次通信效率增加,两种方法的吞吐量 都得到提高。在负载较低时,随着数据包长度增加,两种方法的平均延时和协议开 销都减小。在负载较高时,信道的竞争比较激烈,随着数据包长度增加,冲突的概 率提高,两种方法的平均延时和协议开销都增大。同时,在相同数据包长度下,本 发明方法的吞吐量高于现有技术中的MACA-U协议,而本发明方法的平均延时和协 议开销均低于现有技术中的MACA-U协议。

对本发明方法与现有技术中的MACA-U协议在通信速率为1024bps、2048bps 和4096bps下的吞吐量、平均延时和协议开销进行了仿真,结果分别如图7、图8和 图9所示。仿真中数据包长度为1024bits,平均网格间距为2000m。从图中可以看出, 随着通信速率增加,数据包的发送时间降低,而传播延迟未相应地减小,通信效率 降低,两种方法的吞吐量都会降低。在负载较低时,随着通信速率增加,两种方法 的平均延时和协议开销都增大。在负载较高时,信道的竞争比较激烈,随着通信速 率增加,控制帧和数据包的持续时间减小,冲突的概率降低,两种方法的平均延时 和协议开销都减小。同时,在相同通信速率下,本发明方法的吞吐量高于现有技术 中的MACA-U协议,本发明方法的平均延时和协议开销均低于现有技术中的 MACA-U协议。

对本发明方法与现有技术中的MACA-U协议在平均网格间距为1000m、2000m 和4000m下的吞吐量、平均延时和协议开销进行了仿真,结果分别如图10、图11 和图12所示。仿真中数据包长度为1024bits,通信速率为2048bps。从图中可以看出, 随着平均网格间距增大,传播延迟增大,RTS-CTS握手时间延长,通信效率降低, 两种方法的吞吐量都会降低,且两种方法的平均延时都会增大。在负载较低时,随 着平均网格间距增大,传播延迟增大,冲突的概率增大,两种方法的协议开销都增 大。在负载较高时,随着平均网格间距增大,吞吐量降低,两种方法的协议开销都 减小。同时,在相同平均网格间距下,本发明方法的吞吐量高于现有技术中的 MACA-U协议,本发明方法的平均延时和协议开销均低于现有技术中的MACA-U 协议。

最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管 参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明 的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均 应涵盖在本发明的权利要求范围当中。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号