CN112398806B - 一种基于状态着色的水声网络mac协议生成方法 - Google Patents
一种基于状态着色的水声网络mac协议生成方法 Download PDFInfo
- Publication number
- CN112398806B CN112398806B CN202011017735.7A CN202011017735A CN112398806B CN 112398806 B CN112398806 B CN 112398806B CN 202011017735 A CN202011017735 A CN 202011017735A CN 112398806 B CN112398806 B CN 112398806B
- Authority
- CN
- China
- Prior art keywords
- node
- local
- hierarchy
- nodes
- control information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004040 coloring Methods 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 29
- 108700026140 MAC combination Proteins 0.000 title claims abstract description 27
- 230000005540 biological transmission Effects 0.000 claims abstract description 72
- 239000003086 colorant Substances 0.000 claims abstract description 5
- 238000012544 monitoring process Methods 0.000 claims abstract description 5
- 230000032683 aging Effects 0.000 claims description 22
- 238000004891 communication Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 4
- 238000005265 energy consumption Methods 0.000 abstract description 18
- 238000010586 diagram Methods 0.000 abstract description 13
- 230000007246 mechanism Effects 0.000 abstract description 7
- 238000004088 simulation Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 14
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 7
- 230000008859 change Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 230000007423 decrease Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/03—Protocol definition or specification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B11/00—Transmission systems employing sonic, ultrasonic or infrasonic waves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B13/00—Transmission systems characterised by the medium used for transmission, not provided for in groups H04B3/00 - H04B11/00
- H04B13/02—Transmission systems in which the medium consists of the earth or a large mass of water thereon, e.g. earth telegraphy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/26—Special purpose or proprietary protocols or architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W74/00—Wireless channel access
- H04W74/08—Non-scheduled access, e.g. ALOHA
- H04W74/0808—Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA]
- H04W74/0816—Non-scheduled access, e.g. ALOHA using carrier sensing, e.g. carrier sense multiple access [CSMA] with collision avoidance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明涉及一种基于状态着色的水声网络MAC协议生成方法,其包括构建本地分层图:根据节点到sink的跳数为UANs中的每个节点指定一个层级得到分层拓扑图,并且根据节点收到的控制信息为每个传感器节点构建本地一跳邻居表,通过每个传感器节点的本地一跳邻居表为每个传感器节点构建本地分层图;构建本地分层着色图:通过侦听到信道中数据包或者ACK帧头信息判断节点状态给本地分层图中的节点分为多种颜色着色,得到每个节点的本地分层着色图;根据每个节点的本地分层着色图在满足数据发送条件下进行数据传输。本发明通过本地分层着色图避免冲突的产生,而不需要RTS/CTS握手机制就能有效的避免冲突,减少控制包减少了能量消耗,提高了信道利用率。
Description
技术领域
本发明涉及水声网络传感技术领域,尤其涉及一种基于状态着色的水声网络MAC协议生成方法。
背景技术
近年来,水声网络(Underwater Acoustic Networks,UANs)在海洋学数据收集、水下救援、环境监测、战术监视和资源发现等研究领域都有广阔的应用前景。在UANs中,电波只有在极低的频率(30~300Hz)的范围内,才能进行长距离传输,并且需要超级天线和很高的发射功率;同时电波在水中有较大的散射。因此,由于水下环境的特殊性,UANs大多是使用声波进行通信。然而声波在水下的传播速度只有1500m/s左右,比无线电通信中电波3×108m/s的传播速度低5个数量级,因此,水声信道具有高延迟、低带宽和高误码率的特点。此外,水下传感器节点还存在着移动性和更换电池困难的问题,因此设计一种适用于UANs的MAC协议将面临极大地挑战。
随着UANs的关注度日益增大,越来越多适用于UANs的Mac协议被国内外学者相继提出。Mac协议一般分为基于竞争Mac协议和基于无竞争的MAC协议。基于无竞争的MAC协议包括频分多址(FDMA)、时分多址(TDMA)和码分多址(CDMA)。FDMA将频带分成若干个子频带,然而水下信道带宽很窄,会造成很低的吞吐量因此不适用于UANs。CDMA由于多路径引起频率选择衰落的鲁棒性,这反过来又减少了数据包重传,提高了信道利用率。然而,CDMA难以解决近距离问题,因此并不适用于UANs。TDMA允许将时间信道分为离散的时隙,但在UANs中时钟同步难以实现,TDMA在水下并不能很好的应用。
基于竞争的MAC协议分为随机访问的MAC协议与冲突避免的MAC协议。现有技术中有提出的ALOHA-AN是ALOHA协议的修改版本,利用短控制包来减少冲突,然而无法解决隐藏终端的问题,不能应用在多跳的UANs中。也有提出的Slotted-FAMA协议引入时隙技术,只有在一个时隙的开始才能发送报文,因此短的控制包也可以避免冲突。但是时钟同步在UANs中是一个难以解决的难题,较长的时隙划分对于有限的水下带宽造成了极大地浪费。每次数据传输之前都需要经过一系列的握手,且同一时间内只有一组数据进行传输,节点之间的握手不仅增大了能量消耗,同时也延长了数据传输的平均时延。另有提出的R-MAC是一种基于预约的Mac协议,不需要RTS/CTS握手机制就可以避免冲突,然而也是需要ND、ACK-ND和SYN等控制包来避免冲突,并且使用了复杂的调度算法避免冲突,若在移动的UANs中,传播延时估算误差很大,因此只适用于静态网络或者移动性不大的网络中。
发明内容
本发明的目的在于克服现有技术的缺点,提供了一种基于状态着色的水声网络MAC协议生成方法,与基于竞争的MAC协议相比,该协议不需要RTS/CTS握手机制就可以避免冲突产生,减少控制包可以减少能耗,提高信道利用率。
本发明的目的通过以下技术方案来实现:一种基于状态着色的水声网络MAC协议生成方法,所述MAC协议方法包括调度运行阶段,所述调度运行阶段包括:
构建本地分层图:根据节点到sink的跳数为UANs中的每个节点指定一个层级得到分层拓扑图,并且根据节点收到的控制信息为每个传感器节点构建本地一跳邻居表,通过每个传感器节点的本地一跳邻居表为每个传感器节点构建本地分层图;
构建本地分层着色图:通过侦听到信道中数据包或者ACK帧头信息判断节点状态给本地分层图中的节点分为多种颜色着色,得到每个节点的本地分层着色图;
根据每个节点的本地分层着色图在满足数据发送条件下进行数据传输。
进一步地,所述本地分层着色图由三种颜色为节点着色;第一种颜色表示邻居节点处于未知状态或发送避免状态,发送节点可以尝试个该邻居节点发送数据包;第二种颜色表示邻居节点处于发送状态,若给正处于发送状态的邻居节点传输报文,则会在该邻居节点处产生收-发冲突;第三种颜色表示邻居节点正在接收来自其他节点的报文,此时若当前节点给该邻居节点发送报文会在该邻居节点处产生收-收冲突。
进一步地,所述数据发送条件包括:数据发送节点的本地分层着色图中没有第三种颜色的邻居节点;数据接收节点的颜色为第一种颜色。
进一步地,所述MAC协议方法还包括在数据传输过程中节点基于公平性的退避选择步骤;所述节点基于公平性的退避选择步骤包括:
进一步地,所述MAC协议方法还包括在进行所述调度运行阶段之前对网络进行初始化阶段的步骤;所述网络初始化阶段包括:
sink节点向网络中广播一个控制信息,并设定sink节点固有的层级为0,未获取到层级信息的水下节点的层级为255;
当某个水下节点第一次接收到控制信息时,则从自身所接收的控制信息中读取上一跳发送节点的控制信息插入到一跳邻居表中;
根据发送节点的层级信息L_Snd设置自身层级L_Rec=L_Snd+1,并且开启该节点的层级老化时间定期器;
接收节点更新控制信息中的层级字段为自身层级L_Rec,更新节点ID为当前节点ID,继续广播更新后的控制信息;
重复上述步骤直到所有节点完成自身层级的设置为止。
进一步地,所述控制信息包括发送节点ID、层级、层级老化时间、状态和位置。
进一步地,所述网络初始化阶段还包括:当一个已经获取自身层级并且该层级信息层级老化时间未到期的水下节点接收到一个控制信息时,该节点将接收的控制信息插入到一跳邻居表中,并且比较自身层级L_Rec和控制信息中层级L_Snd的大小,根据比较结果进行相应处理。
进一步地,所述根据比较结果进行相应处理包括:
若L_Rec>L_Snd+1时,则更新自身层级为L_Rec=L_Snd+1,用节点自身层级信息和节点ID来替换控制信息中的层级字段和发送节点ID后,继续广播新的控制信息,否则获取发送节点的节点ID、层级、层级老化时间、状态信息,更新邻居表后丢弃该控制信息;
当一个已经获取自身层级,但该层级信息层级老化时间己到期的水下节点接收到一个控制信息时,将直接更新自身层级为L_Rec=L_Snd+1,重新建立该节点的连通性,并将控制信息中节点ID、层级、层级老化时间、状态和位置信息插入到一跳邻居表。
本发明具有以下优点:
1、通过本地分层着色图避免冲突的产生,而不需要RTS/CTS握手机制就能有效的避免冲突,减少控制包减少了能量消耗,提高了信道利用率。
2、为了提高协议的公平性,提出了基于公平性的退避方案,给不容易抢占信道的节点较小的退避时间,一个节点结束发送数据后或者一个节点传输数据包数达到最大值,开启退避时间,退避时间结束后重新抢占信道,提高了信道资源的分配效益。
附图说明
图1为本发明方法的流程示意图;
图2为本发明的分层拓扑图;
图3为示例节点8的本地分层图;
图4为节点B与节点C的通信示意图;
图5为数据包传输示意图;
图6为函数图像示意图;
图7为网络布局图;
图8为节点个数对交付率的影响示意图;
图9为传输范围对邻居节点影响示意图;
图10为传输范围对端到端延时的影响示意图;
图11为数据包间隔对吞吐量的影响示意图;
图12为数据包间隔对平均能耗的影响示意图;
图13为并行传输与非并行传输对吞吐量的影响示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的保护范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。下面结合附图对本发明做进一步的描述。
实施例1
对于三维水下无线传感器网络模型由水面上的sink节点和分布在水下的传感器节点构成,其中由于水下的传感器节点距离sink节点的跳数不同而被分成多个层级。水下的数据传输具有方向性自下而上,也就是说,从水下传感器节点(简称水下节点)感知环境参数等信息一直传输给水面上的sink节点。sink节点是收集水下节点采集的水下数据,并通过无线射频信号发送到岸上的基站;水下节点采集水中环境数据后,并以一跳或多跳的方式将采集到的环境数据转发给水面上的sink节点。
设定模型中除了sink节点,其他水下节点具有相同的功能和参数(比如初始能量、固定的发射功率、传输半径等);所有传感器节点随机均匀地部署在规定范围的三维区域内。下表表示本发明中的参数定义。
表1、SC-MAC协议中的符号定义表
如图1所示,本发明涉及一种基于状态着色的水声网络MAC协议(SC-MAC)生成方法,其具体包括以下内容:
S1、网络初始化阶段;
在网络初始化阶段,水下节点通过接收的控制信息获取一跳邻居表和层级信息。在UANs中,每个传感器节点维护一个邻居表,记录一跳邻居节点的信息,如节点ID、层、层级老化时间、状态和位置等。邻居的信息可以从初始化阶段sink节点广播的控制信息中获取,也可以根据之后听到的数据包或者ACK来更新邻居表信息。
网络初始化阶段,sink节点会向网络中广播一个控制信息(控制信息包含发送节点控制信息包含发送节点ID、层、层级老化时间、状态和位置等字段),并且sink节点有固定的层级为0,未获取到层级信息的水下节点的层级为255。当一个水下节点第一次接收到控制信息时,则从自己所接收的控制信息中读取上一跳发送节点的ID、层、层级老化时间、状态和位置等信息插入到一跳邻居表中。根据发送节点的层级信息L_Snd设置自己的L_Rec=L_Snd+1,并且开启该节点的层级老化时间定期器。接收节点更新控制信息中的层级字段为自身层L_Rec,更新节点ID为当前节点ID,继续广播更新后的控制信息。完成此过程后,层级的数值将是静态的,直到sink节点在特定时间间隔之后再次广播控制信息包,接收节点来判断自身是否需要更新层级。
当一个已经获取自身层级并且该层级信息层级老化时间未到期的水下节点接收到一个控制信息时,该节点将接收的控制信息中ID、层、层级老化时间、状态和位置等信息插入到一跳邻居表中。并且比较自身层级L_Rec和控制信息中层级L_Snd的大小。若L_Rec>L_Snd+1时,则更新自身层级为L_Rec=L_Snd+1。用节点自身层级信息和节点ID来替换控制信息中的层级字段和发送节点ID后,继续广播新的控制信息;否则获取发送节点的节点ID、层、层级老化时间、状态等信息,更新邻居表后,丢弃该控制信息,不会转发该控制信息。当一个已经获取自身层级,但该层级信息层级老化时间己到期的水下节点接收到一个控制信息时,将直接更新自身层级为L_Rec=L_Snd+1,重新建立该节点的连通性,并将控制信息中节点ID、层、层级老化时间、状态和位置等信息插入到一跳邻居表。
S2、调度运行阶段;
调度运行阶段包括构建本地分层拓扑图、基于节点状态构建本地分层着色图和数据传输三个阶段。
如图2所示,本地分层拓扑图:在网络初始化阶段,根据节点到sink的跳数,为UANs中的每个节点指定一个层级。于是将拓扑图中节点附带层级后,得到分层拓扑图。并且根据节点收到的控制信息,为每一个传感器节点构建本地一跳邻居表,如下表所示:
表2、节点8邻居信息表
节点ID | 层级 | 层级老化时间 | 状态 | 颜色 | 位置 |
ID4 | 1 | … | sending | yellow | {x<sub>4</sub>,y<sub>4</sub>,z<sub>4</sub>} |
ID7 | 2 | … | sending avoidance | green | {x<sub>7</sub>,y<sub>7</sub>,z<sub>7</sub>} |
ID13 | 3 | … | receiving | red | {x<sub>13</sub>,y<sub>13</sub>,z<sub>13</sub>} |
ID14 | 3 | … | unknown | green | {x<sub>14</sub>,y<sub>14</sub>,z<sub>14</sub>} |
如图3所示,在SC-MAC协议中,通过每个传感器节点的本地一跳邻居表,为每个传感器节点的构建本地分层图。根据节点8的一跳邻居表(表2)为节点8构建本地分层图,其中节点8的本地分层图中节点集为:4,7,8,13,14,即:V8={4,7,8,13,14};如果这两个节点是一跳邻居则两个节点共享同一条边,则E8={e(V4,V8),e(V7,V8),e(V13,V8),e(V14,V8)}。由于每个节点只会和本层或者上下层的节点成为一跳邻居,因此sink节点和最底层的传感器节点的本地分层拓扑图中n为2(n=2),其余节点的本地分层拓扑图中n都为3(n=3)。则节点8的本地分层图可表示为G8=(V8,E8,n8)。
基于节点状态构建本地分层着色图:如图4所示,节点B是发送节点,节点C是接收节点,节点A、节点D分别为节点B与节点C的一跳邻居节点,节点B抢占信道后,节点B开始发送第一个数据包,数据包里有一个标识告诉节点C是否还有多个数据包传输。当节点C收到第一个数据包时,向节点B发送ACK,表示传输顺利无冲突。节点B收到ACK后,开始传输包链中其他的数据包,当节点C收到最后一个数据包,回复一个ACK,确认除第一个数据包以外其他的数据包。
在半双工通信的UANs网络,需要一种机制来避免给处于接收状态的传感器节点发送数据而产生的干扰问题。为了解决这种干扰,我们通过侦听到信道中数据包或ACK帧头信息判断节点状态给本地分层图Gi中的节点分为以下3个颜色着色。
(1)绿色表示邻居节点处于未知状态或发送避免状态,发送节点可以尝试给该邻居节点发送数据包。当接收节点接收到来自发送节点的包链中第一个数据包时,回复一个ACK,接收节点进入接收状态,接收节点邻居也听到了来自接收节点的xACK(不是发给自己的ACK),认为接收节点处于接收(其他节点)状态。网络初始化完成后,我们默认所有的节点都是未知状态;为了保证节点使用信道的公平性,一个节点传输数据包达到最大值或者节点刚刚发送完数据包链后,节点按照协议规则进入发送避免状态。
(2)黄色表示邻居节点处于发送状态,若给正处于发送状态的邻居节点传输报文,则会在该邻居节点处产生收-发冲突。当发送节点发送包链中的非最后一帧时,发送节点的邻居节点也侦听到来自发送节点的xData(不是发给自己的Data),因此发送节点的邻居节点认为发送节点是处于发送状态。
(3)红色表示邻居节点正在接收来自其他节点的报文,此时若当前节点给该邻居节点发送报文会在该邻居节点处产生收-收冲突。
网络初始化完成后,默认所有的传感器节点都是未知状态,因此节点8的本地分层图G8中所有的节点的颜色都为绿色;若节点4有数据包发送,节点4发送第一个数据包后,节点8侦听到来自节点4的xData,将本地分层着色图中的节点4的颜色由绿色变为黄色;若节点13接收到一个数据包后,会回复一个ACK,节点8会听到来自节点13的xACK,将本地分层着色图中的节点13的颜色由绿色变为红色;节点8通过不断的侦听信道中的数据包和ACK来确定邻居节点的的状态,进而实时的给节点的本地的分层图G8着色,最后得到节点8的本地分层着色图G8=(V8,E8,n8)。
数据传输:所有节点都有一个本地分层着色图,由于每个节点的状态是改变的,因此本地分层着色图是根据传感器节点侦听到的数据包或者ACK实时改变的。若节点B向节点C发送数据包,要满足两个条件:节点B没有红色的邻居节点;以及节点C的颜色为绿色。
如图5所示,满足这两个条件后,节点B向节点C发送第一个数据包DATA1,节点B的邻居节点也会听到xDATA1,此时节点B的邻居节点认为节点B处于发送状态并将本地分层着色图中节点B的颜色变为黄色;节点C收到DATA1,给节点B回复ACK,节点C的邻居节点也可以听到xACK,此时节点C的邻居节点认为节点C处于接收状态并将本地分层着色图中节点C的颜色变为红色;节点C收到最后一个数据包后,向节点B回复一个ACK,ACK控制包会告诉节点B除DATA1以外的其它数据包是否成功传输,若成功传输节点C的邻居节点听到xACK认为节点C是发送避免状态,将本地分层着色图中节点C的颜色变为绿色,否则节点C需要立即重新传输出错的数据包,节点C的颜色不变直到数据包完全成功传输并听到新的xACK,节点C颜色变化为绿色;节点B的邻居节点(节点A)在侦听到节点B传输的最后一个数据包后等待T1=TACK+Tdata+2Tmax,没有听到节点B重新传输,节点B的邻居节点认为节点B已经处于发送避免状态并将本地分层着色图中节点B的颜色变为绿色。
ACK发生丢包存在以下三种情况:(1)节点B发送的第一个数据包后,等待T2=TACK+2Tmax,没有接收到所发送内容的预期ACK,则节点B将重新传输第一个数据包,直到接收到ACK,或者重传的次数超过了预定义的次数。(2)节点B发送最后一个数据包后,等待T3=TACK+2Tmax,仍然没有收到来自节点C的ACK,节点B将立刻重新传输最后一个数据包,然后继续等待新的ACK。(3)节点C收到来自节点B的最后一个数据包后,给节点B回复的ACK,节点C的邻居节点(节点D)没有听到来自节点C的xACK,节点C的邻居节点从将本地分层着色图中的节点C的颜色变为红色起,等待T4=2TACK+NTdata+MTdata+3T max(N:数据包数,M:重传数据包数),没有听到xACK,则节点C的邻居节点将本地分层着色图中的节点C的颜色变为绿色。
在数据传输过程中基于公平性的退避选择:发送节点X通过计算自己的优先级函数来评估自己接入信道的可能性。优先级函数对尚未接入信道的发送节点并不会产生影响。优先级函数是基于发送节点与接收节点的通信次数和发送节点的请求数据传输的次数。通信次数越大时,优先级函数值越小,发送节点接入信道的可能性越小;请求数据传输的次数越大时,优先级函数的值越大,发送节点接入信道的可能性越大。发送节点X的优先级函数f的计算公式如下式所示:
式中,权重系数α+β=1,Naccess为发送节点与接收节点的通信次数,Nrequ为发送节点的请求数据传输的次数。权重系数α和β可以平衡通信次数和请求次数的影响。根据上述公式,当Naccess增大,优先级函数值变小;Nrequ增大,优先级函数值变小。通信次数越小,请求数据传输次数越大,优先级性函数值越大,节点接入信道的可能性越大。函数和函数的图像如图6所示。
所有发送节点结束一次数据传输或者数据包的传输达到最大值后,都会开启一个退避计时器。发送节点的优先级函数值越大,越早结束退避计时器。由于水声网络时空不确定性,信道可能会被一个有距离优势的节点一直占用,造成信道分配不公平的现象。因此,我们给距离接收节点较远的节点较高的优先级。DSR为接收节点与发送节点X之间的距离。DSR与退避时间成反比,f与退避时间成正比。因此,DSR较低和f较高的发送节点会优先结束发送退避状态去抢占信道。退避计时器由下式表示:
吞吐量分析:假设网络布局如图7所示,在图中,节点ω的邻居节点的个数为N(N=6),每一个邻居节点都有Q个节点对节点ω隐藏,称为节点ω的隐藏节点(图中,节点1的灰色的邻居节点是节点ω的隐藏节点,Q=3)。每个节点每秒平均发送λ个数据包(以参数为λ的泊松源发送数据);产生的数据包均匀的指向每一个邻居节点,即以λN的数据量向每一个邻居节点发送数据。
吞吐量有很多种定义,通常定义为单位时间内成功传输的数据量。吞吐量越大,证明单位时间内传输的数据量越多,网络的性能越好。假设数据包长度为L比特,T秒内成功传输数据包数m,吞吐量Λ计算方式如下:
Td表示成功传输一个数据包所需要的时间,包含传输一个数据包的传输时延(Tdata)和最大传播时延(Tmax),即:
Td=Tdata+Tmax
Ps表示成功传输(无冲突)的概率。无冲突的概率是在Td时间内没有邻居节点给节点ω发送DATA数据包;第二种情况是在2Td时间内节点ω的隐藏节点没有给邻居节点发送数据包(Td时间内ω的邻居节点没有给节点ω的隐藏节点回复ACK确认包)。因为节点ω的隐藏节点向节点ω的邻居节点发送数据包的数据率为λN,那么节点ω传输不会发生冲突的概率为:
一个节点在时间T内能够产生M个数据包,那么:M=λT;T时间内成功传输数据包数m,也就是数据包传输过程中没有发生冲突的数据包,那么:
m=MPs=λTPs
仿真参数设置:本发明使用NS-3平台进行仿真来评估所提出SC-MAC协议的性能。仿真网络模型采用与图一相同的网络模型,即在10km×10km×10km的部署72-102个节点,仿真参数设置如表3所示:
表3、SC-MAC协议仿真参数表
参数 | 取值 | 单位 |
数据包大小 | 200 | bytes |
ACK包大小 | 56 | bit |
数据包间隔 | 1-200 | s |
仿真时间 | 500 | s |
传输范围 | 3000 | m |
带宽 | 10 | kbps |
路由协议 | LB-AGR |
性能评估指标有端到端延时、吞吐量、交付率和能耗。其中,端到端的延时是指数据包从源节点到sink节点所需要的时间。交付率是指sink节点成功接收的数据包数与源节点发送的总包数的比值。
平均能耗(Average Energy Consumption,AEC)指一次仿真实验中总的能耗Et与sink成功接收的包数Nsuccess的比值,公式如下所示:
仿真结果和分析:在一个三维空间内,若节点数太少,网络连通型差,在数据包传输过程中存在找不到下一跳节点的情况,数据包不能从源节点成功的传输到sink节点,若节点数太多,节点密度太大,节点之间冲突的可能性增大,因此选择一个适用于此仿真环境的最优节点是非常必要的;如图8所示,节点数为82时,SC-MAC协议的交付率最高。
传输范围改变将改变整个网络的性能。当传输范围较小时,竞争信道的节点比较少,但是数据包从源节点到sink节点的跳数会增大。网络连通性较差,可能出现孤立的节点。当传输范围较大时,数据包从源节点到sink节点的跳数会变小,网络有较好的连通性,但是竞争节点的信道也会增加,会增加冲突的可能性;如图9所示,显示了传输范围与sink节点的邻居节点数之间的关系。
图10表示的是在不同传输范围下SC-MAC协议、R-MAC协议和slotted-FAMA协议的端到端延迟的比较。随着传输范围的增加,SC-MAC协议、R-MAC协议和slotted-FAMA协议的端到端延迟都呈减少的趋势。这是因为随着传输范围的增加,数据包从sink节点到源节点的跳数减少,对应端到端延迟逐渐减少。仿真结果表明,与R-MAC协议和slotted-FAMA协议相比,SC-MAC协议的平均端到端延迟性能表现更优。
图11表示的是在不同包间隔下SC-MAC协议、R-MAC协议和slotted-FAMA协议的吞吐量的比较。随着数据包间隔的增大,网络负载会相应的减少。随着网络负载的增加,三个MAC协议的吞吐量都在逐渐增加。当网络负载逐渐达到饱和时,由于SC-MAC协议和R-MAC协议都能有效的避免冲突,因此的吞吐量都逐渐趋于稳定,但是R-MAC协议的吞吐量仍小于SC-MAC协议的吞吐量。slotted-FAMA协议由于不能有效的避免冲突而导致吞吐量急剧下降。仿真结果表明,与R-MAC协议和slotted-FAMA协议相比,SC-MAC协议的吞吐量性能表现更优。
图12表示的是在不同包间隔下SC-MAC协议、R-MAC协议和slotted-FAMA协议的平均能耗的比较。随着数据包间隔的增大,网络负载以及冲突都会相应的减少。SC-MAC协议、R-MAC协议和slotted-FAMA协议的平均能耗都相对较小,但是由于slotted-FAMA协议使用RTS/CTS握手机制,网络负载越大,使得冲突越大,平均能耗也急剧增加。R-MAC协议使用了复杂的调度算法来避免冲突,但也一定程度上增加了平均能耗。因此R-MAC协议和slotted-FAMA协议的平均能耗均大于SC-MAC协议的平均能耗。随着网络负载的增加,SC-MAC协议平均能耗没有明显变化,然而R-MAC协议和slotted-FAMA协议由于竞争信道产生冲突而提高了能耗。由于R-MAC协议使用调度算法来避免冲突,因此R-MAC协议没有slotted-FAMA协议能耗增加的多。仿真结果表明,与R-MAC协议和slotted-FAMA协议相比,SC-MAC协议的平均能耗性能表现更优。
并行传输与非并行传输仿真分析:引入ARQ协议就引入暴露终端的问题,我们对是否应该以暴露终端为代价进行并发传输做仿真实验并分析。在本发明中,当发送节点有数据传输时,判断其本地着色图,若接收节点为绿色,其它邻居节点没有红色,发送节点可以发送数据包,那么发送节点的数据包和邻居节点接收的ACK可能会在邻居节点处发生冲突,但是实现了大量的并行传输,降低了端到端平均延时,提高了吞吐量,解决UANs中信道利用率低的问题。然而,并发传输可能会带来冲突,若接收节点与邻居节点都为绿色时才能发送数据包,这样就没有并发传输的可能性,会减少冲突的发生,提高交付率。对于带宽有限的UANs,非并行传输会造成极大地带宽资源的浪费,使得UANs中信道利用率低。
图13所示,表示SC-MAC协议中并行传输与非并行传输的吞吐量的比较。当网络负载较大时,在网络中有大量的数据包传输,并行传输不会抑制数据包的传输,因此,并行传输比非并行传输吞吐量大。当网络负载较小时,网络中数据包传输较少,非并行传输会严格控制可能发生冲突的数据包传输,因此,并行传输比非并行传输吞吐量小。仿真结果表明,并行传输适用于网络负载较大的UANs中,而非并行传输适用于网络负载较小的UANs中。
本发明针对水声信道的特性提出了适用于UANs的基于状态着色的水声网络MAC协议(SC-MAC)。SC-MAC协议通过本地分层着色图避免冲突的产生,而不需要RTS/CTS握手机制就能有效的避免冲突,减少控制包减少了能量消耗,提高了信道利用率。为了提高协议的公平性,提出了基于公平性的退避方案。仿真实验表明,SC-MAC协议的吞吐量、端到端延迟和能耗这三项的性能都要优于R-MAC协议和slotted-FAMA协议。在本文中,针对水声信道的特性提出了适用于UANs的基于状态着色的水声网络MAC协议(SC-MAC)。SC-MAC协议通过本地分层着色图避免冲突的产生,而不需要RTS/CTS握手机制就能有效的避免冲突,减少控制包减少了能量消耗,提高了信道利用率。为了提高协议的公平性,提出了基于公平性的退避方案。仿真实验表明,SC-MAC协议的吞吐量、端到端延迟和能耗这三项的性能都要优于R-MAC协议和slotted-FAMA协议。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (7)
1.一种基于状态着色的水声网络UANs MAC协议生成方法,其特征在于:所述MAC协议生成方法包括调度运行阶段,所述调度运行阶段包括:
构建本地分层图:根据节点到sink的跳数为UANs中的每个节点指定一个层级得到分层拓扑图,并且根据节点收到的控制信息为每个传感器节点构建本地一跳邻居表,通过每个传感器节点的本地一跳邻居表为每个传感器节点构建本地分层图;
构建本地分层着色图:通过侦听到信道中数据包或者ACK帧头信息判断节点状态给本地分层图中的节点分为多种颜色着色,得到每个节点的本地分层着色图;根据每个节点的本地分层着色图在满足数据发送条件下进行数据传输;
当水声网络中流量负载重时,水下节点根据本地分层着色图,在避免冲突的前提下进行并行传输,提高水声信道的利用率和水声网络吞吐量;
当水声网络中流量负载轻时,水下节点根据本地分层着色图进行非并行传输,较好地避免了报文的冲突,提高了包交付率;
采用并行传输,只有当接收节点的状态为未知或发送避免状态,且所有其他邻居节点都不在接收来自其它节点的状态时,当前节点才开始给接收节点发送数据包;
采用非并行传输,只有当包括接收节点在内的所有邻居节点的状态为未知或发送避免状态时,当前节点才开始给接收节点发送数据包;
所述本地分层着色图由三种颜色为节点着色;第一种颜色表示邻居节点处于未知状态或发送避免状态,发送节点可以尝试给该邻居节点发送数据包;第二种颜色表示邻居节点处于发送状态,若给正处于发送状态的邻居节点传输报文,则会在该邻居节点处产生收-发冲突;第三种颜色表示邻居节点正在接收来自其他节点的报文,此时若当前节点给该邻居节点发送报文会在该邻居节点处产生收-收冲突。
2.根据权利要求1所述的一种基于状态着色的水声网络UANs MAC协议生成方法,其特征在于:所述数据发送条件包括:数据发送节点的本地分层着色图中没有第三种颜色的邻居节点;数据接收节点的颜色为第一种颜色。
3.根据权利要求1所述的一种基于状态着色的水声网络UANs MAC协议生成方法,其特征在于:所述MAC协议生成方法还包括在数据传输过程中节点基于公平性的退避选择步骤;所述节点基于公平性的退避选择步骤包括:
发送节点通过优先级函数计算公式来评估自身接入信道的可能性,并设置优先级函数值与接入信道的可能性成正比,其中,权重系数α+β=1,Naccess为发送节点与接收节点的通信次数,Nrequ为发送节点的请求数据传输的次数;
4.根据权利要求1-3中任意一项所述的一种基于状态着色的水声网络UANs MAC协议生成方法,其特征在于:所述MAC协议生成方法还包括在进行所述调度运行阶段之前对网络进行初始化阶段的步骤;所述网络初始化阶段包括:
sink节点向网络中广播一个控制信息,并设定sink节点固有的层级为0,未获取到层级信息的水下节点的层级为255;
当某个水下节点第一次接收到控制信息时,则从自身所接收的控制信息中读取上一跳发送节点的控制信息插入到一跳邻居表中;
根据发送节点的层级信息L_Snd设置自身层级L_Rec=L_Snd+1,并且开启该节点的层级老化时间定期器;
接收节点更新控制信息中的层级字段为自身层级L_Rec,更新节点ID为当前节点ID,继续广播更新后的控制信息;
重复上述步骤直到所有节点完成自身层级的设置为止。
5.根据权利要求4所述的一种基于状态着色的水声网络UANs MAC协议生成方法,其特征在于:所述控制信息包括发送节点ID、层级、层级老化时间、状态和位置。
6.根据权利要求5所述的一种基于状态着色的水声网络UANs MAC协议生成方法,其特征在于:所述网络初始化阶段还包括:当一个已经获取自身层级并且该层级信息层级老化时间未到期的水下节点接收到一个控制信息时,该节点将接收的控制信息插入到一跳邻居表中,并且比较自身层级L_Rec和控制信息中层级L_Snd的大小,根据比较结果进行相应处理。
7.根据权利要求6所述的一种基于状态着色的水声网络UANs MAC协议生成方法,其特征在于:所述根据比较结果进行相应处理包括:
若L_Rec>L_Snd+1时,则更新自身层级为L_Rec=L_Snd+1,用节点自身层级信息和节点ID来替换控制信息中的层级字段和发送节点ID后,继续广播新的控制信息,否则获取发送节点的节点ID、层级、层级老化时间、状态信息,更新邻居表后丢弃该控制信息;
当一个已经获取自身层级,但该层级信息层级老化时间己到期的水下节点接收到一个控制信息时,将直接更新自身层级为L_Rec=L_Snd+1,重新建立该节点的连通性,并将控制信息中节点ID、层级、层级老化时间、状态和位置信息插入到一跳邻居表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011017735.7A CN112398806B (zh) | 2020-09-24 | 2020-09-24 | 一种基于状态着色的水声网络mac协议生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011017735.7A CN112398806B (zh) | 2020-09-24 | 2020-09-24 | 一种基于状态着色的水声网络mac协议生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112398806A CN112398806A (zh) | 2021-02-23 |
CN112398806B true CN112398806B (zh) | 2022-02-18 |
Family
ID=74596203
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011017735.7A Active CN112398806B (zh) | 2020-09-24 | 2020-09-24 | 一种基于状态着色的水声网络mac协议生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112398806B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113099392B (zh) * | 2021-03-12 | 2021-10-26 | 青海师范大学 | 基于层级与状态的水下广播传输方法 |
CN113079108B (zh) * | 2021-03-18 | 2023-05-02 | 中电科航空电子有限公司 | 一种提高网络架构通信效率的方法及系统 |
CN114125069B (zh) * | 2021-10-27 | 2023-01-24 | 青海师范大学 | 一种水声网络多对一并行传输mac协议的实现方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107919950A (zh) * | 2017-10-10 | 2018-04-17 | 华南理工大学 | 一种无冲突的竞争信道水声网络并行通信方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101881495B1 (ko) * | 2012-01-25 | 2018-08-24 | 삼성전자주식회사 | Csma/ca 방식을 기반으로 통신하는 네트워크들 간의 충돌을 방지하는 방법 및 대상 노드 |
CN102612091B (zh) * | 2012-03-01 | 2014-07-16 | 天津大学 | 水下传感器网络中基于空间公平的介质访问控制方法 |
CN103298137B (zh) * | 2013-06-14 | 2016-03-16 | 青海师范大学 | 一种基于状态的水下传感器网络媒体访问控制方法 |
CN110691371B (zh) * | 2019-09-10 | 2021-05-14 | 华南理工大学 | 一种网状水声网络的mac调度方法 |
-
2020
- 2020-09-24 CN CN202011017735.7A patent/CN112398806B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107919950A (zh) * | 2017-10-10 | 2018-04-17 | 华南理工大学 | 一种无冲突的竞争信道水声网络并行通信方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112398806A (zh) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112398806B (zh) | 一种基于状态着色的水声网络mac协议生成方法 | |
KR100801183B1 (ko) | Ieee 802.11 무선랜에서 다중 사용자 다이버시티이득을 위한 분산적/기회적 스케줄링 방법 | |
Choi et al. | Multi-channel MAC protocol for mobile ad hoc networks | |
KR100630192B1 (ko) | 모바일 애드 혹 네트워크에서 이동 단말기의 매체 액세스제어 프로토콜 계층 모듈 및 매체 액세스 제어 프로토콜계층 모듈의 프레임 송수신 방법 | |
US8027331B2 (en) | Data transmission method and communication system using the same | |
JP2004533158A (ja) | Rts/ctsを基本にしたチャネルアクセスについての瞬間的統合送信電力制御とリンク適合 | |
Chang et al. | A general model and analysis of physical layer capture in 802.11 networks | |
CN111328052B (zh) | 一种高密度无线网络中信道资源分配方法 | |
Salem et al. | An adaptive EDCA selfishness-aware scheme for dense WLANs in 5G networks | |
Wang et al. | Modeling of collision avoidance protocols in single-channel multihop wireless networks | |
Li et al. | MAC-SCC: Medium access control with a separate control channel for multihop wireless networks | |
Kim et al. | Uplink channel access enhancement for cellular communication in unlicensed spectrum | |
Abinader et al. | Performance evaluation of IEEE 802.11 n WLAN in dense deployment scenarios | |
Shrestha et al. | Hidden node collision mitigated CSMA/CA-based multihop wireless sensor networks | |
Nithya et al. | Simulation and performance analysis of various IEEE 802.11 backoff algorithms | |
Hassan et al. | Enhancement techniques of IEEE 802.11 wireless local area network distributed coordination function: A review | |
Sánchez et al. | Beacon-less geographic routing in real wireless sensor networks | |
Karabulut et al. | Performance of the CR-MAC with channel fading and capture effect under practical traffic scenarios for VANETs | |
Wu et al. | Load-based route discovery through searching range adaptation for MANET throughput improvement | |
Zhao | Throughput fairness in infrastructure-based IEEE 802.11 mesh networks | |
Li et al. | MAC-SCC: a medium access control protocol with separate control channel for reconfigurable multi-hop wireless networks | |
Van den Heuvel-Romaszko et al. | A survey of MAC protocols for ad hoc networks and IEEE 802.11 | |
Lyakhov et al. | Starvation effect study in IEEE 802.11 mesh networks | |
Bruno et al. | A novel fair medium access control for 802.11-based multi-hop ad hoc networks | |
Nasipuri et al. | Performance of multichannel wireless ad hoc networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |