一种水声网络MAC接入方法与流程

文档序号:11253657阅读:740来源:国知局
一种水声网络MAC接入方法与流程

本发明涉及水下传感器网络中mac协议设计方法。



背景技术:

近年来,水下声学传感器网络(underwateracousticsensornetworks,uasns)成为新的研究热点之一。uasns的应用推进了对海洋环境的研究,对经济、科研、军事等领域都具有重大意义。然而,目前海水中只能使用传播速度较慢的声波进行有效通信,所以水声通信具有长时延、低带宽的特性。由于长时延的存在,距离目的节点较远的节点发送的数据包总是较晚到达,若此时已有其他数据包到达目的节点,目的节点会推迟转发较晚到达的数据包,甚至不转发。这一特性严重降低了水声通信的公平性。此外,由于洋流、温度等原因,水下环境复杂多变。距离较远的两节点在通信的过程中,可能会由于信道环境突变而造成丢包,这使得水声通信成功率较低,即可靠性较低。所以,如何提高通信的可靠性,同时又能保证公平性成为亟待解决的问题。

已有的水声通信mac接入方法中,节点均为全向通信——节点通信范围为球体,这使得节点在与一个邻居节点通信时,会对多个其他邻居节点造成干扰,使其无法正常通信。由于水下节点部署稀疏且可用的声谱资源有限,这种通信方式严重降低了网络吞吐量。若为节点部署指向性换能器,节点则可以进行指向性通信,即声能主要集中在角度为α的球冠区域内,α称为波速宽度,则可有效降低节点间干扰,提高吞吐量。



技术实现要素:

本发明克服现有技术的上述不足,提供一种高可靠性水声网络mac接入方法,技术方案如下:

一种水声网络mac接入方法,包括下列步骤:

1)源节点有数据包需要发送时,以最大功率全向发送预约请求控制包rts,包含波束宽度α和自身发射功率,源节点辐射范围内的所有节点收到rts后,计算自身相对于源节点的信噪比,同时由信号到达角aoa计算源节点相对于自身的方位角和仰角θ。

2)收到第一个rts后,目的节点等待时长w,在此期间,当网络状态较好时,目的节点只收到一个rts控制包,此时目的节点继续向下一跳转发;当网络负载较大时,目的节点会收到来自多个节点的rts控制包,此时目的节点为每个源节点定义优先级δ,信噪比越高、同一个数据包请求发送的次数越多,优先级δ越大,目的节点选取δ值最大的节点作为通信节点,并全向广播预约确认数据包cts,其中包括被选中的节点信息。收到cts的节点计算目的节点相对于自身的方位和信噪比后,建立信道状态矩阵h和邻居节点方位矩阵l:矩阵h中元素为信噪比,矩阵l中元素为节点的方位角和仰角θ。

3)未被选中的源节点和目的节点全向通信范围的重叠区域称为中继选择区域,中继选择区域内的节点通过rts和cts得知某一源节点发出请求但未被目的节点同意后,计算自身相对于该源节点和目的节点信噪比的平均值,大于某一门限值时,该节点担任中继节点,向相应源节点发送指向性请求dr。

4)收到dr的源节点,在不干扰其他节点通信的前提下,将请求发送给目的节点的数据包指向性地发送到中继节点,中继节点在目的节点当前通信结束后,将数据包发送给目的节点。

5)目的节点在接收成功后全向广播确认数据包ack,源节点收到ack后,通信结束。

附图说明

图1是本发明网络拓扑图

图2是本发明流程图

具体实施方式

本发明提出一种高可靠性水声网络mac接入方法:节点有全向通信和指向性通信两种工作模式。其中指向性通信可通过使用部署指向性水声换能器来实现。指向性换能器的发射声能主要集中于空间某一方向,其余方向上则仅有少量声能。当网络负载较大时,目的节点会收到来自多个节点的rts。此时目的节点通过计算各节点的优先级,综合考虑信道状态和公平性,选择通信节点并回复cts。未被选择的节点将数据包发送给信道状态更好的中继节点,由中继节点转发至目的节点,以提高网络工作效率。本发明中通信时间被划分成时隙,节点产生的数据包在下一个时隙开始时发送。以图1的网络拓扑为例,六个节点均在彼此全向辐射范围之内。

主要步骤如下:

1.节点a、b均需要与节点d通信时,全向广播rts,其中包含波束宽度α和自身发射功率,源节点和目的节点id以及数据包请求发送的次数:nad、nbd,此时nad=1,nbd=1。图中的其他节点收到rts后,分别计算自身相对于节点a、b的信噪比snrs,同时由信号到达角aoa计算节点a、b相对于自身的方位角和仰角θ。

2.收到第一个rts后,目的节点等待时长w,w=r/v,其中r为节点最大通信范围,v为声波传播速度。等待时长w保证目的节点可以接受到范围内全部请求通信节点的rts。在等待期间,目的节点d会收到来自节点a、b的两个rts控制包。节点d为两节点定义优先级δ,如下:

δ=en*snrs(db)(1)

其中n为该数据包请求发送的次数。

3.由式1可知,节点到目的节点的信噪比越高、同一个数据包请求发送的次数越多,优先级δ越大。目的节点选取δ值最大的节点作为通信节点。由于节点a到节点d的距离更远,信号衰减更严重,snrsad<snrsbd,且nad=nbd,所以δa<δb,即节点d选择节点b作为通信节点并广播cts,其中包括被选中的节点b的信息。收到cts后,节点b开始与d指向性通信,而其他节点则计算目的节点相对于自身的方位和信噪比snrd后,建立信道状态矩阵h和邻居节点方位矩阵l:矩阵h中元素为信噪比,矩阵l中元素为节点的方位角和仰角。

4.中继选择区域内的节点c、e、f通过rts和cts得知源节点a发出请求但未被目的节点d同意,于是开始计算自身相对于a和d的信噪比的平均值:

snr=(snrsac+snrdcd)/2(2)

由于节点e和f距a较远,信号衰减严重,求得的信噪比远小于c,此时只有c的平均信噪比满足snr>snrth,所以节点c担任中继节点。c进一步判断节点b、d是否在c指向性通信范围内,以二维平面为例,当∠bca>α/2且∠dca>α/2时,c可以指向性地与a通信而不对节点b、d的通信造成干扰。当b、d不在c指向性通信范围内时,c向a发送dr。

5.收到dr的源节点a,以类似于节点c的方式判断与c的指向性通信是否会对节点b、d的通信造成干扰。在不干扰其通信的前提下,将请求发送给d的数据包指向性地发送到中继节点。中继节点将数据包请求发送次数nad改为2,并在d当前通信结束后,向d发送rts。如果此时有其他节点第一次向d发送rts,根据式1,nad=2,节点c的优先级更大,节点d选择与c通信的可能性更高,通信的公平性得以保证。

6.目的节点在接收成功后全向广播确认数据包(ack),源节点收到ack后,通信结束。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1