Matrix coding and multi-hop link state awareness routing protocol method suitable for underwater acoustic communication
By adopting matrix encoding and multi-jump link state-aware routing protocols in water acoustic communication, nodes periodically send hop hierarchical encoding matrix messages, build topological views, monitor link status in real time, and dynamically select routing paths, solving the problems of high transmission delay and low bandwidth utilization in water acoustic network, and realizing low latency and high reliability data transmission.
Patent Information
- Application Number
- CN202510863601.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-26
- Publication Date
- 2025-08-19
- Estimated Expiration
- 2045-06-26
AI Technical Summary
The existing wireless network routing protocols have problems such as large overhead, complex computing, inability to perform multi-jump link awareness, and flooding of information packets in water acoustic communication, resulting in high transmission delay and low bandwidth utilization, which cannot meet the low latency and high reliability requirements of water acoustic network.
The routing protocol method adopts matrix encoding and multi-jump link state-awareness. Through the hop hierarchical adjacency matrix encoding method, nodes periodically send hop hierarchical encoding matrix messages, build a network topology view, monitor link status in real time, dynamically select routing paths, and update the routing table in real time during data transmission.
It reduces network energy consumption, improves bandwidth utilization, simplifies routing management, reduces potential errors, and realizes low-latency and high-reliability data transmission, adapts to the low-bandwidth and low-complexity environment of the water acoustic network.
Smart Images

Figure CN120378353B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of wireless communications, and in particular to a matrix coding and multi-hop link state perception routing protocol method suitable for underwater acoustic communications. Background Art
[0002] Underwater acoustic communication networks have broad application prospects in ocean measurement, resource exploration, disaster forecasting, and military applications. Since underwater acoustic propagation loss increases with distance, underwater acoustic networks generally use multi-node relays for transmission, making the choice of routing protocol very important.
[0003] Underwater acoustic communication is a wireless communication network, so traditional computer network routing protocols are not suitable for underwater acoustic networks. Due to the propagation delay and narrow bandwidth of underwater acoustic networks, routing protocols used in terrestrial wireless networks cannot achieve good performance when directly applied to underwater acoustic networks.
[0004] Currently, wireless network routing protocols are mainly divided into two categories: a priori routing protocols and on-demand routing protocols. A priori routing protocols exchange routing information through broadcasts between nodes, ultimately achieving convergence to a consistent route for all nodes in the network. Each node has routing information to reach any node in the network. A priori routing protocols have low latency, but periodic routing updates increase routing overhead and occupy a large amount of bandwidth, making them ineffective in bandwidth-constrained underwater acoustic networks. On-demand routing protocols only query routes in the network when data is transmitted. They do not need to maintain routing tables for all nodes, saving routing overhead. However, the delay in establishing routes is too large. At the same time, on-demand routing protocols are more suitable for scenarios with rapid topology changes and fast information dissemination speeds, and cannot achieve good working performance in underwater acoustic communications. Summary of the Invention
[0005] To further reduce network energy consumption and adapt to the development of new situations, the present invention provides a routing protocol method with matrix coding and multi-hop link state perception suitable for underwater acoustic communication. The broadcast mechanism of the routing protocol is reformed, and the propagation delay is effectively reduced by hop-level layered adjacency matrix coding. The network is formed in a low-overhead, lightweight routing selection method. This method can solve the problems of high overhead, complex calculation, inability to perform multi-hop link perception, and information packet flooding in the current mainstream routing protocols, while also having the advantages of low latency and high reliability.
[0006] The present invention is achieved through the following technical solutions:
[0007] A routing protocol method for matrix coding and multi-hop link state perception suitable for underwater acoustic communication, comprising:
[0008] Initialize each node and collect basic information about each node;
[0009] Each node periodically sends information exchange messages in the form of a hop-level coding matrix to its neighboring nodes to preliminarily build a network topology view for each node;
[0010] Integrating and sensing the network topology view of each node to form a network topology database for each node;
[0011] When a source node needs to send data to a destination node, a routing table is formed based on the network topology database, and a routing path between the source node and the destination node is found according to preset rules for dynamic query;
[0012] Data is transmitted based on the queried routing path, and the link status and the status of the one-hop neighbor nodes of the node to be transmitted are monitored in real time during the data transmission process;
[0013] Determine whether the destination node for receiving data has received the data sent by the source node for sending data. If so, complete the data reception and send a confirmation message; otherwise, it is determined to be packet loss;
[0014] It is determined within a specified time whether the source node has received the confirmation message. If so, the data transmission is completed. Otherwise, it is determined as packet loss, and the routing path is re-determined according to the preset rules and the data is resent.
[0015] As an optimization, the basic information of the node itself includes node ID, MAC address, neighbor table, routing table, and initial energy.
[0016] As an optimization, each node periodically sends information exchange messages in the form of a hop-level coding matrix to its neighboring nodes to preliminarily construct the network topology view of each node. The specific process is as follows:
[0017] Construct and initialize a hop-count hierarchical coding matrix for each node respectively, wherein the hop-count hierarchical coding matrix includes three rows and M columns, the first row represents one-hop neighbor nodes directly adjacent to the node, the second row represents two-hop neighbor nodes indirectly adjacent to the node, and the third row represents routing symmetric links. The number of columns in the hop-count hierarchical coding matrix represents the node number, and each node has routing information of the node in the corresponding hop-count hierarchical coding matrix;
[0018] Each node periodically broadcasts its own hop count level coding matrix in binary information. When a receiving node for receiving the hop count level coding matrix receives the hop count level coding matrix of a one-hop neighbor node, it determines whether the routing information of the one-hop neighbor node is in the receiving node's own routing table. If not, the routing information of the one-hop neighbor node is added to the receiving node's own routing table and the receiving node's hop count level coding matrix, and then jumps to the next step. If yes, the receiving node directly jumps to the next step.
[0019] Determine whether there is routing information of nodes other than the one-hop neighbor node in the hop count hierarchical coding matrix of the one-hop neighbor node; if so, determine whether the node other than the one-hop neighbor node is a direct neighbor node or an indirect neighbor node of the one-hop neighbor node; if the node other than the one-hop neighbor node is a direct neighbor node of the one-hop neighbor node, set the node other than the one-hop neighbor node as a two-hop neighbor node of the receiving node, and then add the routing information of the two-hop neighbor node to the routing table of the receiving node itself and the hop count hierarchical coding matrix of the receiving node; if the node other than the one-hop neighbor node is an indirect neighbor node of the one-hop neighbor node, set the node other than the one-hop neighbor node as a three-hop neighbor node of the receiving node, and then add the routing information of the three-hop neighbor node to the routing table of the receiving node itself, and then jump to the next step; if not, jump directly to the next step;
[0020] Determine whether the routing information of the one-hop neighbor node and / or the two-hop neighbor node and / or the three-hop neighbor node in the hop-level coding matrix of the one-hop neighbor node received by the receiving node contains the routing information of the receiving node; if so, set the number of columns of the one-hop neighbor node and / or the two-hop neighbor node and / or the three-hop neighbor node corresponding to the routing symmetric link of the hop-level coding matrix of the receiving node to 1; otherwise, keep it unchanged;
[0021] The above steps are repeated until the hop count level coding matrix and routing table of each node do not change, and finally the hop count level coding matrix and routing table of each node are updated, thereby obtaining the network topology view of each node.
[0022] As an optimization, the specific method for updating the routing table according to the hop-level coding matrix is:
[0023] The new routing table is obtained by performing bit operations on the hop count level coding matrix of the binary information and the current routing table.
[0024] As an optimization, the specific process of integrating the network topology view of each node and performing perception is as follows:
[0025] When the number of columns of the symmetric routing link in the node's hop-level encoding matrix is set to 1, the heartbeat sensing mechanism is enabled for the corresponding link. In a fixed time window mode, the heartbeat stability of the destination node is counted.
[0026] When the value of the routing symmetric link of the node's hop-level coding matrix is set to 0, the heartbeat mechanism is not enabled, and when the hop-level coding matrix received by the receiving node does not contain routing information of a neighboring node, but the routing table in the receiving node stores the routing information of the neighboring node, the routing information of the neighboring node is cleared to update the routing table of the receiving node.
[0027] As an optimization, the preset rules are:
[0028] If the routing table of the source node records routing information of multiple next-hop nodes to the destination node, the next-hop node with the smallest number of hops to the destination node is given priority for data transmission;
[0029] If the number of hops corresponding to multiple next-hop nodes is the same, the routing path corresponding to the next-hop node with the largest comprehensive weight in the current fixed time window is used as the data transmission path, that is, the next-hop node corresponding to the routing path with the largest value in the current fixed time window is selected for data transmission.
[0030] As an optimization, when a source node needs to send data to a destination node, a routing table is formed based on the network topology database, and a routing path between the source node and the destination node is found according to preset rules for dynamic query. The specific process is as follows:
[0031] T1. At the current moment, all routing paths that the source node can use to transmit data to the destination node are found based on the latest network topology database;
[0032] T2: Determine whether there is one and only one routing path with the minimum number of hops between the source node and the destination node. If so, send the data to the next hop node of the routing path with the minimum number of hops, and then jump to T3. Otherwise, select the next hop node with the largest comprehensive weight in the current fixed time window from several routing paths with the minimum number of hops as the node of the transmission path, forward the data packet to the next hop node, and then jump to T4.
[0033] T3, through the heartbeat message of the destination node, determine whether the routing path with the smallest number of hops is a valid path and is still the only path in the current routing table. If so, continue to transmit data in the routing path with the smallest number of hops and return to this step until the destination node receives the message sent by the source node and has no other data to send. At this time, the destination node sends an "ACK" message to the source node. If not, return to T2;
[0034] T4, through the heartbeat message of the destination node, determine whether the routing path of the node where the data is received is all invalid in the next fixed time window. If so, delete the routing table with the next hop as the destination address and return to T1. Otherwise, jump to T5;
[0035] T5: Determine whether there is only one valid path between the data receiving node and the destination node. If so, select the next hop node of the valid path as the new data receiving node, and then jump to T6. Otherwise, select the next hop node with the largest comprehensive weight in the current fixed time window as the data receiving node, and then jump to T6.
[0036] T6. Determine whether the node receiving the data is the destination node. If so, the reception is completed and the destination node sends an "ACK" message to the source node. Otherwise, return to T4.
[0037] As an optimization, when monitoring the status of the routing path and the status of the neighboring nodes of the node to be transmitted data in real time during the data transmission process, if a link failure between nodes or failure of the neighboring node is found, the sending node to be transmitted data immediately sends a message message for information exchange to the neighboring node. The neighboring node that receives the message message for information exchange updates its own network topology database and routing table according to the message content, and reselects the route.
[0038] As an optimization, if there is only one link, it is also necessary to clear the link state sensed by the destination node, and after completing the routing table update, send the updated hop count level coding matrix in the next message period for information exchange.
[0039] As an optimization, the
[0040] The comprehensive weight is expressed as:
[0041] ;
[0042] Indicates the comprehensive weight of the fixed time window where the next hop node is the i-th node; 、 are the weight values of the corresponding variables, Indicates the stability of the heartbeat mechanism of the current underwater acoustic environment; Indicates the final score;
[0043] ;
[0044] ;
[0045] ;
[0046] represents the average number of nodes in a fixed time window, Indicates the window capacity of a fixed time window, Indicates the number of neighbor nodes of the next hop node of the node that has received data, Represents the average value of the degree of change within a fixed time window; Indicates the number of node changes within a message cycle for information exchange (a "Hello" message cycle);
[0047] ;
[0048] Indicates the number of successful heartbeat packets received within a fixed time window; Indicates the total number of heartbeats sent within a fixed time window.
[0049] Compared with the prior art, the present invention has the following advantages and beneficial effects:
[0050] 1. Extending network life, improving bandwidth utilization, and simplifying implementation and management: Since nodes are underwater, it is difficult to effectively maintain and replenish the power of node devices. At the same time, since many routing protocols insert character strings into fields, the information is very large. This invention reduces complex routing calculations and frequent topology updates. The low-overhead routing protocol is easier to implement and maintain, reducing the probability of potential errors. By reducing the time spent on maintaining routing tables and sending control messages, more bandwidth is allocated to actual data transmission, thereby improving payload throughput;
[0051] 2. Cost-effectiveness and reliability: Since the bit operations and binary operations are small, the demand for hardware resources is reduced, thus lowering the deployment cost;
[0052] 3. Rapid completion of routing table convergence: Using matrix-coded data transmission not only reduces computational complexity, but also enables obtaining link status information of all nodes in one step. This demonstrates the fast response speed of the present invention, and the easy real-time nature of the obtained links, indirectly proving a better path and indicating good routing performance.
[0053] 4. Adapt to network environments with transmission media such as sound waves: Based on the above conditions, it can conduct network communication in low-bandwidth, low-complexity, and low-power environments;
[0054] 5. Three-hop link awareness: Due to its lightweight encoding method, nodes carry multi-hop link status with less data, and its perception of the entire network structure is better than other routing protocols;
[0055] 6. High path selection efficiency: Because the path is determined by a sliding time window, the complexity of weight calculation for the entire path is reduced. Because the path quality is determined by the number of packets received in the window, the real-time performance of the path is also improved.
[0056] 7. Introduce a heartbeat mechanism to perform statistical analysis on the dynamic changes of link perception, which also plays a decisive role in path selection. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] The drawings described herein are used to provide a further understanding of the embodiments of the present invention, constitute a part of this application, and do not constitute a limitation of the embodiments of the present invention. In the drawings:
[0058] Figure 1 Schematic diagram showing the process of broadcasting the hop-level coding matrix as a "Hello" message packet;
[0059] Figure 2 Indicates the packet sending and running process of the routing protocol method.
[0060] Figure 3 Indicates the receiving packet operation process of the routing protocol method.
[0061] Figure 4 Represents the operation process of the routing protocol method using a sliding time window.
[0062] Figure 5 Represents the structure of a routing protocol method message packet.
[0063] Figure 6 Represents the routing protocol method hop count neighbor matrix definition.
[0064] Figure 7 Indicates the heartbeat mechanism description.
[0065] Figure 8 Indicates the location where the heartbeat is stored within the sliding time window. When the next hop to a certain node is reached, all the heartbeat information of the link should be recorded. The window is updated when the event is triggered. The value in the window records the status of each intermediate node link, and the corresponding calculation is performed when selecting the route. DETAILED DESCRIPTION
[0066] In order to make the objectives, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with examples and drawings. The exemplary embodiments of the present invention and their descriptions are only used to explain the present invention and are not intended to limit the present invention.
[0067] The traditional wireless network routing protocols in the background technology have the following shortcomings:
[0068] Protocol adaptation issues: Existing routing protocol technologies are mainly based on ground-based and air-based networking routing protocols. They all use electromagnetic waves as the transmission medium. Both routing overhead and the idea of maintaining network topology functions are designed with high routing overhead. However, when other media such as sound waves are used for transmission, previous protocol designs are not suitable for the current environment.
[0069] High bandwidth usage: Current mainstream routing protocols often require frequent exchange of large amounts of control information to maintain and update routing tables, which consumes too much valuable network bandwidth, especially in low-bandwidth environments such as satellite and underwater communications.
[0070] Long convergence time: When the network topology changes, high-overhead routing protocols may take a long time to complete routing table updates and stabilization, resulting in increased packet transmission latency and impacting real-time application performance.
[0071] Algorithm complexity: Routing path optimization often relies on complex algorithms, which not only increases development and maintenance costs but also may introduce more errors and vulnerabilities.
[0072] Link awareness: Currently, nodes can only perceive neighbor information within a one-hop range, or gradually obtain the global topology map, which is costly or takes too long to establish a path.
[0073] Link weight calculation: Most routing protocols do not calculate link weights in real time, or they calculate the weight of the entire path before returning it to the source node, which is slow and requires high computing power.
[0074] Therefore, in the process of information transmission, the traditional routing protocol broadcast mechanism has the problem of propagation delay due to factors such as complex data packet structure and extensive propagation method.
[0075] This invention utilizes an innovative design for the broadcast flooding mechanism, using a row dimension to represent the hop count hierarchy, a column dimension to map the network-wide node representation, and a matrix element to label the hop count relationship between the node and the local node. This allows for precise and efficient transmission of routing information. Furthermore, this method combines a link stability assessment method with a dynamic heartbeat weighted score, using a sliding window to count the number of successful and total heartbeats to determine the optimal high-frequency stable link.
[0076] At the same time, a sliding window mechanism is introduced into the routing mechanism to more efficiently select optimal routing paths. This mechanism abandons traditional complex computational methods to compare optimal paths. Instead, it uses a dynamically adjusted sliding window framework to evaluate and screen available routing paths within the window's coverage based on real-time network status information. The sliding window is triggered by event-driven updates, triggering window updates only when a node receives a data packet, an "ACK" message (acknowledgement message), or a "Hello" message (message message used for information exchange), thus avoiding periodic flooding. When a sliding window update is triggered, the next-hop path in the routing table is updated, and the path counter is incremented. This is continuously updated within the sliding window. If a timeout occurs and no confirmation is received, the path counter is decremented (no more than three consecutive timeouts).
[0077] To address the issue of protocol adaptation, this invention further reduces protocol overhead. Current routing protocols that use electromagnetic waves for transmission often support very large data volumes, which would be prohibitive if carried underwater due to the low bandwidth. By reducing the bandwidth used to maintain routing tables and send control messages, more bandwidth is allocated to actual data transmission, thereby improving payload throughput.
[0078] To address the problem of high bandwidth occupancy, the present invention transmits smaller data and does not require each node to maintain the entire topology of the entire link, thereby improving the bandwidth occupancy problem.
[0079] To address the problem of long convergence time, each node of the present invention can quickly converge by sending a hello message packet.
[0080] To address the problem of algorithm complexity, the present invention uses a binary and bit operation transmission method, which is more efficient in data transmission and faster than the transmission of character strings in existing routing protocols. In addition, the process of parsing binary and bit operations is faster than parsing character strings.
[0081] With respect to the link perception problem, the present invention has a faster perception speed and takes less time.
[0082] To address the problem of link weight calculation, the present invention uses some weight link calculation formulas in S5 and S6 to ensure partial real-time performance.
[0083] Next, the technical content of the present invention is introduced in detail.
[0084] This embodiment 1 provides a matrix coding and multi-hop link state perception routing protocol method suitable for underwater acoustic communication, such as Figure 1 Shown, including:
[0085] 1. Initialize each node and collect basic information of each node;
[0086] In some embodiments, the step is specifically:
[0087] S1. The node is initialized and starts to collect its basic information, including node ID, MAC address, neighbor table, routing table, initial energy, etc.
[0088] Second, each node periodically sends information exchange messages in the form of a hop-level coding matrix to its neighboring nodes to preliminarily construct a network topology view for each node.
[0089] In some embodiments, this step includes two sub-steps, specifically:
[0090] S2: The node periodically sends "Hello" messages (i.e., messages used for information exchange) in the form of a hop-level coding matrix directly to its neighboring nodes, announcing its own existence and establishing a neighbor relationship with the neighboring nodes. The neighboring nodes in the neighbor relationship established here refer to the neighboring nodes directly adjacent to the local node, that is, direct neighboring nodes. For example, there are three nodes, A, B, and C. B is directly adjacent to A and C, and C is indirectly adjacent to A through B. In this case, node B is a direct neighbor node of node A and node C, while node A and node C are not direct neighbor nodes.
[0091] After establishing neighbor relationships, update the node's own neighbor table.
[0092] S3: Obtain neighbor information of neighbor nodes to gradually build a preliminary network topology view;
[0093] In some embodiments, the specific process is:
[0094] A1. Construct and initialize a hop-count hierarchical coding matrix for each node. The hop-count hierarchical coding matrix includes three rows and M columns. The first row represents one-hop neighbor nodes directly adjacent to the node, the second row represents two-hop neighbor nodes indirectly adjacent to the node, and the third row represents routing-symmetric links. The number of columns in the hop-count hierarchical coding matrix represents the node number. Each node has routing information in the corresponding hop-count hierarchical coding matrix.
[0095] A2. Each node periodically broadcasts its own hop count hierarchical coding matrix in binary form. When a receiving node for receiving the hop count hierarchical coding matrix receives the hop count hierarchical coding matrix of a one-hop neighbor node, it determines whether the routing information of the one-hop neighbor node is in the receiving node's own routing table. If not, the routing information of the one-hop neighbor node is added to the receiving node's own routing table and the receiving node's hop count hierarchical coding matrix, and then jumps to the next step. If the routing information of the one-hop neighbor node is in the receiving node's own routing table, the process directly jumps to the next step.
[0096] A3. Determine whether there is routing information of nodes other than the one-hop neighbor node in the hop count hierarchical coding matrix of the one-hop neighbor node. If yes, determine whether the node other than the one-hop neighbor node is a direct neighbor node or an indirect neighbor node of the one-hop neighbor node. If the node other than the one-hop neighbor node is a direct neighbor node of the one-hop neighbor node, make the node other than the one-hop neighbor node a two-hop neighbor node of the receiving node, and then add the routing information of the two-hop neighbor node to the routing table of the receiving node itself and the hop count hierarchical coding matrix of the receiving node. If the node other than the one-hop neighbor node is an indirect neighbor node of the one-hop neighbor node, make the node other than the one-hop neighbor node a three-hop neighbor node of the receiving node, and then add the routing information of the three-hop neighbor node to the routing table of the receiving node itself, and then jump to the next step. If no, jump directly to the next step.
[0097] A4. Determine whether the routing information of the one-hop neighbor node and / or the two-hop neighbor node and / or the three-hop neighbor node in the hop-level coding matrix of the one-hop neighbor node received by the receiving node contains the routing information of the receiving node; if so, set the number of columns of the one-hop neighbor node and / or the two-hop neighbor node and / or the three-hop neighbor node corresponding to the routing symmetric link of the hop-level coding matrix of the receiving node to 1; otherwise, keep it unchanged;
[0098] A5. Repeat the above steps until the hop count level coding matrix and routing table of each node do not change. Finally, the hop count level coding matrix and routing table of each node are updated to obtain the network topology view of each node.
[0099] Routing nodes exchange information by periodically broadcasting "Hello" messages in the form of a hop-count hierarchical coding matrix. Information exchange is transmitted through binary bit information. The rows of the information table (hop-count hierarchical coding matrix) represent one-hop neighbors, two-hop neighbors, and symmetric routing links; the columns of the information table (hop-count hierarchical coding matrix) represent node numbers. The maximum number of nodes in the current network operation is the number of columns in the table. Figure 1 shown.
[0100] When a node receives a "Hello" message packet with its own node's hop count set to 1, it assumes that the other party has received the "Hello" message packet provided by its own node and sets the symmetric link in its routing matrix to 1. If the node receives a message from another node that sets its own node to 1, it also sets the symmetric link to 1. Only when the symmetric link is 1 can it be used as an alternative path for sending data packets.
[0101] For example, node A (local node) receives a "Hello" message from node B. Node B sets the value of node A to 1 in its "Hello" message, indicating that node B considers the link between node B and node A to be a symmetric link. If node A finds that its own routing table does not set it to 1, it must set it to 1.
[0102] Specifically, for example, at time T1, when node C first receives a "Hello" message from neighbor node D, it determines whether its routing table contains D's routing information. If not, it adds D's routing information to its own routing table and places it in the "Hello" message (hop-level encoding matrix) for subsequent transmission. As shown in Figure 1, node C updates its routing table after receiving neighbor messages from nodes B and C. At time T3, after receiving C's routing information, node B discovers that in addition to C's routing information, it also contains D's routing information. However, node B itself has not received D's routing information. Therefore, node B sets D as a two-hop neighbor and stores D's routing information in its own "Hello" message for subsequent transmission. If a node subsequently receives a "Hello" message from a two-hop neighbor, it will modify its routing information to that of a one-hop neighbor until it no longer changes. (That is, if node M has already designated node N as a two-hop node and then receives a "Hello" message from node N, M will reconfigure N as a one-hop node.) This protocol algorithm transmits at most two-hop routing information to other nodes. If it receives two-hop node information, it will record it in the routing table and no longer broadcast it as a "Hello" message.
[0103] like Figure 1 As shown in the figure, for node A, node D is the third hop node of node A. The "Hello" message transmitted by node B to node A can contain at most two-hop routing information, that is, the routing information of nodes C and D. Therefore, transmitting two-hop routing information to other nodes means that node B can transmit the routing information of nodes C and D to node A. When node A receives the routing information of nodes C and D, the routing information of node D is only recorded in the routing table of node A. Node C is the second hop node of node A, and the second row in the hop count hierarchical coding matrix of node A stores the routing information of node C.
[0104] like Figure 6As shown in the figure, the neighbor information of up to three hops is obtained. Because after the third hop is calculated, for example, if a node with a distance of two hops is received in the HELLO message of other node (node B), and this node information (node C) is not in my (node A) routing table, it will be considered as a node three hops away from me (node A). I will record it in my routing table, but not send it as a HELLO message to other nodes, so I only need to provide 2-hop routing information; it is worth noting that it is difficult for three-hop nodes to obtain symmetric link status, so it is required that I (node A) and node (B) are symmetric links, and node (B) and node (C) are also symmetric links. I will trust this three-hop route, which is equivalent to setting the link to 1.
[0105] The routing table is updated through the "Hello" message packets from neighboring nodes. By transmitting routing messages of binary information and performing bitwise operations (AND operations) with the current routing table, changes in routing information can be obtained more quickly and sensitively without the need for complex and tedious calculations to update routing information.
[0106] For example, suppose there are four nodes in the network. The binary code of the hop count level coding matrix received by the current node from the neighboring node is 0b0110. The routing table of the current node is 0b0000. An OR operation is required to absorb the matrix-coded data and turn it into 0b0110, for example. This operation is convenient and fast.
[0107] When a local node's neighbor node already carries the local node's own information, and the local node receives a "Hello" message from the neighbor node, it means that the links between the local node and the neighbor node are symmetrical (sending and receiving each other), and they can receive each other's "Hello" messages. The local node will also set the routing symmetric link to 1 at a later time, and the neighbor node will also set it to 1 after receiving the "Hello" message sent by the local node. Figure 1 For example, within 10 cycles, all nodes (4 nodes) will complete the convergence work.
[0108] 3. Integrate and perceive the network topology view of each node, thereby forming a network topology database for each node.
[0109] In some embodiments, the step is specifically:
[0110] S4: The node integrates and stores the collected network topology information to form a network topology database, which can perceive the status of up to three hop links and provide a basis for subsequent routing path selection.
[0111] The more specific process is:
[0112] B1. When the number of columns of the routing symmetric link in the node's hop count level coding matrix is set to 1, the heartbeat sensing mechanism is enabled for the corresponding link. In the fixed time window mode, the heartbeat stability of the destination node is counted.
[0113] During the transmission of the lightweight matrix-encoded "Hello" message, the symmetric link flag is gradually set to 1. When set to 1, the heartbeat mechanism, also known as link heartbeat perception, is enabled. In the perception state, the fixed time window mode is enabled to measure the stability of the heartbeat, that is, the link stability.
[0114] B2. When the number of columns of the routing symmetric link of the node's hop-level coding matrix is set to 0, the heartbeat mechanism is not enabled, and when the hop-level coding matrix received by the receiving node does not contain routing information of a certain neighboring node, but the routing table in the receiving node stores the routing information of the neighboring node, the routing information of the neighboring node is cleared to update the routing table of the receiving node.
[0115] When the symmetric link flag is 0, the heartbeat mechanism is not enabled. When the corresponding transmitted information matrix indicates that a node does not have corresponding hop count information, the relevant information should be cleared from the routing table of this node.
[0116] The heartbeat mechanism is another effective mechanism generated by the "Hello" message. Link awareness not only indicates the number of hops but also the stability of the link. If the symmetric link field is set to 1, the link is considered reliable. When the signal quality of a link segment in a transmitted Hello message is unstable, intermittently connecting, the heartbeat statistics phase begins. Within a fixed time window, the number of stable and unstable times is calculated, also known as the heartbeat mechanism. If the symmetric link field is not set to 1, if the link in the Hello message is unstable, indicating the lack of corresponding link awareness (the matrix information is set to 0), the corresponding link hop count will also be cleared.
[0117] 4. When the source node needs to send data to the destination node, based on the network topology database, the routing path between the source node and the destination node is found according to preset rules and dynamically queried.
[0118] In the present invention, data is routed while being sent.
[0119] The specific data transmission process is as follows: Figure 2 As shown, the data receiving process is as follows Figure 3 shown.
[0120] In some embodiments, the steps are: S5: Routing selection phase, the path is selected according to the weight of the heartbeat mechanism, the minimum number of routing hops, etc. in the sliding fixed time window mechanism. The principle of the sliding fixed time window mechanism is as follows: Figure 4 shown.
[0121] Here, the sliding fixed time window means that the window size is fixed, but the window slides according to the structure header.
[0122] In some embodiments, the node that sends data is referred to as a sending node, and the node that receives data is referred to as a receiving node. The preset rule is:
[0123] If the routing table of the source node records routing information of multiple next-hop nodes to the destination node, the next-hop node with the smallest number of hops to the destination node is given priority for data transmission;
[0124] If the number of hops corresponding to multiple next-hop nodes is the same, the routing path corresponding to the next-hop node with the largest comprehensive weight in the current fixed time window is used as the data transmission path, that is, the next-hop node corresponding to the routing path with the largest value in the current fixed time window is selected for data transmission.
[0125] In some embodiments, when a source node needs to send data to a destination node, the specific process of dynamically querying the routing path between the source node and the destination node based on the network topology database and according to preset rules is as follows:
[0126] T1. At the current moment, find all routing paths that the source node can use to transmit data to the destination node based on the latest network topology database;
[0127] T2: Determine whether there is one and only one routing path with the minimum number of hops between the source node and the destination node. If so, send the data to the next hop node of the routing path with the minimum number of hops, and then jump to T3. Otherwise, select the next hop node with the largest comprehensive weight in the current fixed time window from several routing paths with the minimum number of hops as the node of the data transmission path, forward the data packet to the next hop node, and then jump to T4.
[0128] T3, through the heartbeat message of the destination node, determine whether the routing path with the smallest number of hops is a valid path and is still the only path in the current routing table. If so, continue to transmit data in the routing path with the smallest number of hops and return to this step until the destination node receives the message sent by the source node and has no other data to send. At this time, the destination node sends an "ACK" message to the source node. If not, return to T2;
[0129] T4, through the heartbeat message of the destination node, determine whether the routing path of the node where the data is received is all invalid in the next fixed time window. If so, delete the routing table with the next hop as the destination address and return to T1. Otherwise, jump to T5;
[0130] T5: Determine whether there is only one valid path between the data receiving node and the destination node. If so, select the next hop node of the valid path as the new data receiving node, and then jump to T6. Otherwise, select the next hop node with the largest comprehensive weight in the current fixed time window as the data receiving node, and then jump to T6.
[0131] T6. Determine whether the node receiving the data is the destination node. If so, the reception is completed and the destination node sends an "ACK" message to the source node. Otherwise, return to T4.
[0132] Each node's routing table contains routing information for other nodes and also records the next hop information (the entire routing path only records the next hop; if there are multiple alternative paths, there are multiple different next hops). Data is forwarded based on the next hop address. If multiple next hops are available, the next hop with the smallest number of hops is prioritized for data transmission. If two routing paths have the same number of hops, the next hop is determined based on the node's robustness, the sliding time window, and the heartbeat value within the time window.
[0133] For example, the routing table of node A contains routing information for nodes B, C, and D. It also records that the next hop node is node B. This can be determined from the elements in the first row of the matrix. The node corresponding to the element in the first row is the next hop node for that node.
[0134] The sliding fixed-time window mechanism assesses link quality by counting the number of "ACK" messages (acknowledgement messages) received by the source node and the number of heartbeat messages from the destination node. Recording the number of successfully received data packets is one of the criteria for detecting link quality. During network transmission, an "ACK" message may time out and not be received. If this happens, the ACK message is considered unreceived and the value is set to 0. The window is continuously updated, clearing the old window value and maintaining a dynamically updated set of values. ACKs and heartbeats are updated in coordination. During periods of heavy traffic, the heartbeat packet interval is automatically extended (replaced by ACKs). During periods of low traffic, the heartbeat mechanism primarily functions.
[0135] Here, the sliding fixed time window means that the size of the time window is fixed, but the time window slides as time passes.
[0136] When the symmetric link is set to 1, it is considered a valid link. A valid link represents bidirectional and stable. When the destination node is used as the destination address of the valid link (routing information set to 1), the heartbeat value of the valid link is worth noting. In a valid link, the next hop of the source node in a path that the source node can reach the destination node is used as the structure head (that is, the next hop to the destination node is used as the structure head), and the window queue structure in which the heartbeat of the destination node is recorded is added. , Indicates the symmetric link between the i-th node and the source node in the window queue structure Q is set; each time an element is added hour, .pass Evaluate high-frequency and stable links; Indicates the number of successful heartbeat packets received within a fixed time window; Indicates the total number of heartbeats sent within a fixed time window. This means suppressing the marginal benefits of high-frequency heartbeats to avoid excessive preference for high-frequency, low-success-rate links. The number of fixed time windows is the window capacity. When the window capacity is exceeded, it will automatically slide. If all values in are 0, it is considered that a node in the path has completely lost contact (lost heartbeat), and the next hop path of the destination address is deleted and no longer participates in the collection of heartbeat information. If there is only one next hop address, it means that the destination address is unreachable, and the symmetric link will be set to 0 in the next beacon frame (Hello message). Figure 7 、 Figure 8 You can see that the neighbor's next-hop node can record all heartbeat information.
[0137] The robustness of the next-hop node will also be an important criterion for path selection. In the heartbeat mechanism, not only the reliability of the destination node is evaluated, but also the robustness of the neighboring nodes. The periodic heartbeat of the neighboring node carries the number of 1s in its own routing table and the changes. The more other nodes the node neighbors reach and the more stable they are, the better the node's robustness can be judged. The current number of neighbors of the next hop is recorded. , store it in the node quantity queue, and count the number of nodes changed in this cycle QUOTE , and store it in the change degree queue. If the queue length exceeds N, remove the first data, and the value of N is the same as the previous window capacity.
[0138] Calculate the average number of nodes in the window:
[0139] ;
[0140] Compute the average of the variance within the window:
[0141] ;
[0142] Final score:
[0143] 。 If the number of route hops is the same, the comprehensive weight judgment is made based on the "Hello" message packets in the sliding fixed time window.
[0144] ;
[0145] Where, Indicates the node address (node) that receives the "Hello" message; The comprehensive weight of the sliding fixed time window that represents the next hop node as the i-th node; Indicates the stability of the heartbeat mechanism of the current underwater acoustic environment; Indicates the robustness of the next hop node; They represent the weight values of the two variables respectively, which are used to select the routing path to send data information.
[0146] Whenever the source node (the node that initially sends data) receives an "ACK" message, it dynamically updates the success value for the currently selected path. If it does not receive one, the value is not updated. This value is cleared within a fixed time window, indicating that the node has successfully selected the current path as the data transmission path. Simply put, if the "ACK" message is not received, it means a timeout has occurred, and the value in the fixed time window is set to 0.
[0147] In summary, the triggering condition of the sliding time window is that the updating of the sliding time window is triggered only when the node receives a data packet or a confirmation message or a message packet for information exchange.
[0148] That is to say, for example, nodes A, B, C, D, E, F, G, node A is the source node, node E is the destination node, there are multiple routing paths, namely A→B→C→D→E (valid link), A→B→C→G→E (valid link), A→F→C→D→E (only F is disconnected, so the path is an invalid link) and A→F→C→G→E (F is disconnected, so the path is an invalid link). The current fixed time window queue structure has four, namely , 、 、 , at this time, the next hop node that can be selected is node B, followed by node C, and then after the fixed time window slides, at this time, only node G is disconnected, so the fixed time window becomes , 、 、 ,Since the node has reached node C, the next hop node is node D, and finally reaches node E (destination node).
[0149] The location where the heartbeat is stored within the sliding fixed time window is as follows Figure 8 As shown in the figure, when you have the next hop to reach certain nodes, you should record all the heartbeat information of the link and update the window when the event is triggered. The value in the window records the status of each intermediate node link, and then perform corresponding calculations when selecting the route.
[0150] 5. Data is transmitted based on the queried routing path, and the link status and the status of the one-hop neighbor node of the node to be transmitted data are monitored in real time during the data transmission process.
[0151] In some embodiments, the step is: S6, routing transmission phase, when the node has data to send, the data is grouped according to a certain format, and the destination node ID, source node ID, next hop node ID and other information are added to the packet header. The routing protocol method message format is as follows Figure 5 shown.
[0152] Because of the existence of the next-hop address, data transmission will be a one-way, non-repetitive process according to the corresponding next-hop address and the TTL=3 restriction. Therefore, there is no need to make special explanations about the data transmission process.
[0153] Because broadcast transmission has the broadcast feature of the next-hop address, it can lead to problems such as flooding and network storms. Therefore, TTL=3 and a unique broadcast message identifier are added to the broadcast message, so that each broadcast message sent is unique at the current moment. The broadcast message identifier assignment is required to increase as the number of broadcasts sent increases, and is reset to 0 when the maximum limit is reached. The time difference between the two is long enough to prevent the generation of broadcast identifiers with the same repetition period.
[0154] During data transmission, nodes monitor the link status and neighbor node status in real time. Due to the mobility and uncertainty of routing nodes, timers are updated based on time during route maintenance. If no information from a neighbor node is received within three cycles, the routing information for that neighbor node is deleted. A second-hop neighbor node is also deleted if its first-hop neighbor node fails to transmit the corresponding second-hop node information.
[0155] If a link failure or neighbor node failure is detected, a message message (i.e., "Hello" message) for information exchange will be immediately sent to the neighbor node. The node that receives the message message for information exchange will update its own network topology database and routing table according to the message content and reselect the route.
[0156] There are usually more than one neighboring node. If a neighboring node fails, the node itself needs to update this important information to other nodes so that they can obtain the latest link status when selecting a path.
[0157] If the link (next hop) between the nodes is already the only path, the destination address (destination node) perception link status also needs to be cleared. After completing the routing table update, the updated hop count level encoding matrix is sent to the neighboring node in the next "Hello" message cycle.
[0158] Clearing the link state for the destination address means assuming that the node has link awareness for the destination address: the link state is set to 1, and the node will send data only when the next hop exists. Now the node clears the link awareness and sets the link awareness state to 0 during the next information exchange.
[0159] For example, node A has link perception of node D. The next hop node is, for example, node C. Now node D cannot be reached, so the link perception of node D needs to be cleared, and the data set to 1 becomes 0. Node A's own routing table also needs to be cleared accordingly.
[0160] Rerouting means reselecting the next hop node, ultimately re-forming a complete link consisting of multiple next hop nodes.
[0161] 6. Determine whether the destination node for receiving data has received the data sent by the source node for sending data. If so, complete the data reception and send a confirmation message; otherwise, determine that the packet is lost;
[0162] In some embodiments, the step is: S7, the destination node receives the data sent by the source node, and the routing function completes the closed loop. If the data is not received, it is determined to be packet loss.
[0163] 7. Determine whether the source node has received the confirmation message within a specified time. If so, complete the data transmission. Otherwise, determine that the packet is lost, re-determine the routing path according to the preset rules, and resend the data.
[0164] It should be noted that only the destination node will reply with a confirmation message, and the intermediate nodes (nodes between the source node and the destination node other than the source node and the destination node) will not reply once for each hop.
[0165] In some embodiments, the step is: S8, if the source node times out and does not receive the "ACK" message, it will initiate retransmission (no more than 3 times). If it exceeds 3 times, the link is considered unreliable and cleared.
[0166] If no ACK message is received within the time limit, it is determined to be packet loss, and the information will be retransmitted. The successful reception count in the time window will be decremented, and the routing path will be reselected using the preset rules.
[0167] If the path with successful reception count times out (more than 3 times in a row), other backup paths will be immediately enabled. If there are no other backup paths, the current path will still be used as the data transmission path.
[0168] A timeout doesn't necessarily mean a path is blocked. Node topology movement is theoretically random, influenced by factors such as the current channel state. A current blockage doesn't necessarily mean it will be blocked next time. This often happens in mobile communications with poor channel conditions. If no other path exists, the path is still selected.
[0169] In summary, the present invention has the following effects:
[0170] Lightweight matrix coded message transmission method: Because the lightweight matrix coded "Hello" message uses binary information bits for transmission, bit operations reduce computational complexity. This means that the bandwidth occupied during the transmission process is less than that of traditional "Hello" message information.
[0171] "Hello" message maintenance method: Since the "Hello" message has changed its transmission method, there are corresponding significant changes in the parsing, maintenance, and modification steps. It can be parsed at one time to the link status (unidirectional, bidirectional) and (existence, non-existence) within a three-hop range.
[0172] Routing selection process: The routing path is searched by using the next-hop relay node forwarding method (there can be multiple next-hops, indicating alternative paths) instead of using the global path or topology method.
[0173] Routing update: Through the combined effect of sequence numbers, TTL lifetime, timers, and lightweight matrix coding, relay nodes will not receive too many duplicate packets, there is no complex calculation, and the routing table is kept fresh.
[0174] Sliding mechanism: Due to the influence of the sliding mechanism, the more nodes that receive messages, the more reliable the nodes are. For frequently changing network scenarios, the protocol can achieve more reliable robustness.
[0175] Heartbeat mechanism: Due to three-hop routing awareness, obtaining link heartbeat quality is relatively easy and has low overhead. Compared with calculating the entire link weight value and then transmitting it back, it has higher real-time, stability, and accuracy in judging the actual link status.
[0176] The specific implementation methods described above further illustrate the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above description is only a specific implementation method of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A matrix coding and multi-hop link state awareness routing protocol method suitable for underwater acoustic communication, characterized in that: include: Initialize each node and collect basic information about each node; Each node periodically sends information exchange messages in the form of a hop-level coding matrix to its neighboring nodes to preliminarily build a network topology view for each node; Integrating and sensing the network topology view of each node to form a network topology database for each node; When a source node needs to send data to a destination node, a routing table is formed based on the network topology database, and a routing path between the source node and the destination node is found according to preset rules for dynamic query; The preset rules are: If the routing table of the source node records routing information of multiple next-hop nodes to the destination node, the next-hop node with the smallest number of hops to the destination node is given priority for data transmission; If the number of hops corresponding to multiple next-hop nodes is the same, the routing path corresponding to the next-hop node with the largest comprehensive weight in the current fixed time window is used as the data transmission path, that is, the next-hop node corresponding to the routing path with the largest value in the current fixed time window is selected for data transmission; The comprehensive weight is expressed as: ; Indicates the comprehensive weight of the fixed time window where the next hop node is the i-th node; 、 are the weight values of the corresponding variables, Indicates the stability of the heartbeat mechanism of the current underwater acoustic environment; Indicates the final score; ; ; ; represents the average number of nodes in a fixed time window, N represents the window capacity of the fixed time window, Indicates the number of neighbor nodes of the next hop node of the node that has received data, Represents the average value of the degree of change within a fixed time window; Indicates the number of node changes within a message period for information exchange; ; Indicates the number of successful heartbeat packets received within a fixed time window; Indicates the total number of heartbeats sent within a fixed time window; Data is transmitted based on the queried routing path, and the link status and the status of the one-hop neighbor nodes of the node to be transmitted are monitored in real time during the data transmission process; Determine whether the destination node for receiving data has received the data sent by the source node for sending data. If so, complete the data reception and send a confirmation message; otherwise, it is determined to be packet loss; It is determined within a specified time whether the source node has received the confirmation message. If so, the data transmission is completed. Otherwise, it is determined as packet loss, and the routing path is re-determined according to the preset rules and the data is resent.
2. A routing protocol method for matrix coding and multi-hop link state awareness suitable for underwater acoustic communication according to claim 1, characterized in that: The basic information of the node itself includes node ID, MAC address, neighbor table, routing table, and initial energy.
3. The matrix coding and multi-hop link state awareness routing protocol method suitable for underwater acoustic communication according to claim 1, characterized in that: Each node periodically sends messages in the form of a hop-level coding matrix to its neighboring nodes for information exchange. The specific process of preliminarily constructing the network topology view of each node is as follows: Construct and initialize a hop-count hierarchical coding matrix for each node respectively, wherein the hop-count hierarchical coding matrix includes three rows and M columns, the first row represents one-hop neighbor nodes directly adjacent to the node, the second row represents two-hop neighbor nodes indirectly adjacent to the node, and the third row represents routing symmetric links. The number of columns in the hop-count hierarchical coding matrix represents the node number, and each node has routing information of the node in the corresponding hop-count hierarchical coding matrix; Each node periodically broadcasts its own hop count level coding matrix in binary information. When a receiving node for receiving the hop count level coding matrix receives the hop count level coding matrix of a one-hop neighbor node, it determines whether the routing information of the one-hop neighbor node is in the receiving node's own routing table. If not, the routing information of the one-hop neighbor node is added to the receiving node's own routing table and the receiving node's hop count level coding matrix, and then jumps to the next step. If yes, the receiving node directly jumps to the next step. Determine whether there is routing information of nodes other than the one-hop neighbor node in the hop count hierarchical coding matrix of the one-hop neighbor node; if so, determine whether the node other than the one-hop neighbor node is a direct neighbor node or an indirect neighbor node of the one-hop neighbor node; if the node other than the one-hop neighbor node is a direct neighbor node of the one-hop neighbor node, set the node other than the one-hop neighbor node as a two-hop neighbor node of the receiving node, and then add the routing information of the two-hop neighbor node to the routing table of the receiving node itself and the hop count hierarchical coding matrix of the receiving node; if the node other than the one-hop neighbor node is an indirect neighbor node of the one-hop neighbor node, set the node other than the one-hop neighbor node as a three-hop neighbor node of the receiving node, and then add the routing information of the three-hop neighbor node to the routing table of the receiving node itself, and then jump to the next step; if not, jump directly to the next step; Determine whether the routing information of the one-hop neighbor node and / or the two-hop neighbor node and / or the three-hop neighbor node in the hop-level coding matrix of the one-hop neighbor node received by the receiving node contains the routing information of the receiving node; if so, set the number of columns of the one-hop neighbor node and / or the two-hop neighbor node and / or the three-hop neighbor node corresponding to the routing symmetric link of the hop-level coding matrix of the receiving node to 1; otherwise, keep it unchanged; The above steps are repeated until the hop count level coding matrix and routing table of each node do not change, and finally the hop count level coding matrix and routing table of each node are updated, thereby obtaining the network topology view of each node.
4. A routing protocol method for matrix coding and multi-hop link state awareness suitable for underwater acoustic communication according to claim 3, characterized in that: The specific method for updating the routing table according to the hop-level coding matrix is: The new routing table is obtained by performing bitwise operations on the hop count level coding matrix of the binary information and the current routing table.
5. The matrix coding and multi-hop link state awareness routing protocol method suitable for underwater acoustic communication according to claim 4, characterized in that: The specific process of integrating the network topology view of each node and performing perception is as follows: When the number of columns of the symmetric routing link in the node's hop-level encoding matrix is set to 1, the heartbeat sensing mechanism is enabled for the corresponding link. In a fixed time window mode, the heartbeat stability of the destination node is counted. When the value of the routing symmetric link of the node's hop-level coding matrix is set to 0, the heartbeat mechanism is not enabled, and when the hop-level coding matrix received by the receiving node does not contain routing information of a neighboring node, but the routing table in the receiving node stores the routing information of the neighboring node, the routing information of the neighboring node is cleared to update the routing table of the receiving node.
6. A routing protocol method for matrix coding and multi-hop link state awareness suitable for underwater acoustic communication according to claim 1, characterized in that: When a source node needs to send data to a destination node, a routing table is formed based on the network topology database, and a routing path between the source node and the destination node is found according to preset rules for dynamic query. The specific process is as follows: T1. At the current moment, find all routing paths that the source node can use to transmit data to the destination node based on the latest network topology database; T2: Determine whether there is one and only one routing path with the minimum number of hops between the source node and the destination node. If so, send the data to the next hop node of the routing path with the minimum number of hops, and then jump to T3. Otherwise, select the next hop node with the largest comprehensive weight in the current fixed time window from several routing paths with the minimum number of hops as the node of the data transmission path, forward the data packet to the next hop node, and then jump to T4. T3. Determine whether the routing path with the smallest number of hops is a valid path and the only path in the current routing table through the heartbeat message of the destination node. If so, continue to transmit data on the routing path with the smallest number of hops and return to this step until the destination node receives the message sent by the source node and has no other data to send. At this time, the destination node sends an "ACK" message to the source node. If not, return to T2. T4, through the heartbeat message of the destination node, determine whether the routing path of the node where the data is received is all invalid in the next fixed time window. If so, delete the routing table with the next hop as the destination address and return to T1. Otherwise, jump to T5; T5: Determine whether there is only one valid path between the data receiving node and the destination node. If so, select the next hop node of the valid path as the new data receiving node, and then jump to T6. Otherwise, select the next hop node with the largest comprehensive weight in the current fixed time window as the data receiving node, and then jump to T6. T6. Determine whether the node receiving the data is the destination node. If so, the reception is completed and the destination node sends an "ACK" message to the source node. Otherwise, return to T4.
7. The matrix coding and multi-hop link state awareness routing protocol method suitable for underwater acoustic communication according to claim 1, characterized in that: When monitoring the status of the routing path and the status of the neighboring nodes of the node to be transmitted data in real time during the data transmission process, if a link failure between nodes or a neighboring node failure is found, the sending node to be transmitted data immediately sends a message message for information exchange to the neighboring node. The neighboring node that receives the message message for information exchange updates its own network topology database and routing table according to the message content, and reselects the route.
8. A routing protocol method for matrix coding and multi-hop link state awareness suitable for underwater acoustic communication according to claim 7, characterized in that: If there is only one link, the link state sensed by the destination node also needs to be cleared, and after completing the routing table update, the updated hop count level coding matrix is sent in the next message period for information exchange.
Citation Information
Patent Citations
Acoustic sensor network route protocol construction method based on asymmetric links
CN106060886A
Underwater acoustic sensor network routing method based on fuzzy logic decision
CN119449696A