水声通信网络协议主要划分为网络层、数据链路层和物理层

水声传感器网络特点
与水声传感器网络相比的通常是无线传感网络
水声通信具有传播延迟大,频带窄,能量有限,多径效应,多普勒效应,误码率高,低带宽,连通性差等问题
这些问题促使通信协议设计过程中,能够提升能力效率,延长网络的生存期
水声网络存在的问题
水声信道传输慢,速率低,在信道使用时需要同时考虑时间、位置、信道的征用及使用问题
可能发生冲突情况如下:
时空不确定性

水下传感器节点通常处于移动状态,即水声信道具有时空不确定性
由于水下环境复杂,节点难以更换,能量问题需要考虑
空间不确定性
水下网络具有空间不确定性,节点的位置对网络信道的接入影响大,在传统的电磁波通信中,传播时延很小,位置的影响对于接入时间的影响可以忽略

节点A先于节点B向节点C发送RTS(request to send)报文
节点B的报文先于节点B到达
导致通信节点之间的公平性
水声网络MAC算法

路由协议
路由协议主要负责建立源节点和目的节点之间的消息传输路径
功能:
- 寻找源节点到目的节点之间的最优路径
- 将数据分组沿该路径正确转发
路由算法:可扩展、节能、高容错和鲁棒性、快速收敛

基于能量的路由协议

LEACH
LEACH算法,引入轮的概念,每个轮次都从网络中重新选举部分节点成为簇首。
该算法保证了每个节点成为簇首的公平性,从而平衡了所有节点的能量消耗。
该算法分为簇首选取阶段和数据传输阶段。
在簇的建立阶段,每个节点通过比较产生的随机数与给定的阈值来决定自己是否成为簇头,
随后每个节点会收到簇头的广播消息来根据该信号的强弱来进行簇头的分配
在数据传输的阶段,簇内节点根据TDMA向簇头发送数据
基于位置的路由
VBF
引入虚拟管道和矢量的概念,
协议在源节点和目的节点之间定义一个虚拟管道,采用定向洪泛来发送消息

DBR
基于深度路由(DBR)是一种基于贪婪的路由协议,该路由协议每次都将信息尽可能发送到靠近水面的地方
这个算法容易受到路由空洞的影响
路由空调:在无线网络中,当某个节点在其传播到目标节点的路径上,有时候数据会被传输到一个没有比该节点更接近的目的点的节点,则该节点的前向区域被称为路由空洞
基于数据路由

AODV算法
AODV(Ad hoc On-Demand Distance Vector)是一种用于自组网的距离向量路由算法。它是一种基于需求的路由协议,仅在需要发送数据时才会触发路由发现过程。
AODV算法的基本原理是建立一个动态的路由表,以便在源节点和目标节点之间建立和维护一条最短路径。下面是AODV算法的核心步骤:
-
路由发现(Route Discovery):
- 源节点想要发送数据到目标节点时,它广播一个路由请求(RREQ)消息到网络中。
- RREQ消息包含源节点的地址和目标节点的地址。还包括一个序列号(Sequence Number),用于维护路径的新鲜度。
- 邻居节点接收到RREQ消息后,会判断是否可以为源节点提供路由支持。如果能提供路由支持,则继续广播RREQ消息;否则,节点可以选择向源节点发送一个路由响应(RREP)消息。
-
路由响应(Route Reply):
- 当目标节点或中间节点收到RREQ消息后,如果它有路由到目标节点的信息,它可以向源节点发送RREP消息。
- RREP消息携带源节点到目标节点的路径信息,包括序列号和跳数等信息。
- 如果多个RREP消息到达源节点,则源节点根据信息选择最短的路径作为路由。
-
路由维护(Route Maintenance):
- 一旦源节点接收到一个或多个RREP消息,就可以开始将数据发送到目标节点。
- 在数据传输过程中,源节点会定期发送路由维护(RREQ)消息来维护路径的有效性。
- 如果路径中的某个节点不再可达或失效,源节点将重新启动路由发现过程。
AODV算法具有以下特点:
- 省时省能:只有在需要发送数据时才会触发路由发现过程,减少了路由广播的开销。
- 支持自适应路由:能够适应节点的移动和网络拓扑的变化。
- 基于距离向量:使用距离向量路由算法,选择最短路径。
- 使用序列号:通过序列号来维护路径的新鲜度,并避免环路的产生。