Communication method and communication system
By adopting routing detection and reliability competition mechanisms, blocking response mechanisms and timeout retransmission mechanisms in wireless networks, the communication routing of the Mesh network is optimized, resource waste and energy consumption problems caused by flood routing protocols are solved, and efficient packet forwarding and reliable delivery are achieved.
Patent Information
- Application Number
- CN202510694597.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-27
- Publication Date
- 2025-07-18
AI Technical Summary
In complex wireless networks, flood routing protocols lead to waste of network resources and increased node energy consumption, and prior art is difficult to optimize communication routing to improve bandwidth utilization and communication efficiency.
The routing detection and reliability competition mechanism are used to confirm the best route when forwarding each hop relay, and the blocking response mechanism is combined to avoid redundant packet forwarding, and the timeout retransmission mechanism is used to ensure reliable delivery of data packets, and the real and available routing information is maintained through the routing table update mechanism.
The routing quality of each hop relay forwarding is improved, the network load is reduced, the communication efficiency and bandwidth utilization are improved, and the reliable delivery of data packets is ensured.
Smart Images

Figure CN120342941A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of communications, and in particular, to a communication method and a communication system. Background Art
[0002] Wireless networks (such as Mesh networks) have evolved into an effective solution applicable to various wireless access networks such as broadband home networks, community networks, enterprise networks, and metropolitan area networks by virtue of multi-hop interconnection and mesh topology characteristics. In wireless networks, especially in complex network topologies, how to optimize communication routing is an urgent problem to be solved currently. Summary of the Invention
[0003] Embodiments of the present disclosure provide a communication method and a communication system.
[0004] According to a first aspect of the present disclosure, a communication method is provided, which is applied to a wireless network. The method includes: at a source node in the wireless network: broadcasting a routing probe packet, where the routing probe packet includes a data packet type of routing discovery, a target address of a target node, and an address of a next-hop optimal node; at a first neighboring node: receiving the routing probe packet; confirming that itself is the next-hop optimal node; broadcasting a first competition packet, where the first competition packet includes a data packet type information of competing for the next-hop optimal node, the target address, an address of the first neighboring node, and first reliability data, and the first reliability data represents a reliability index from the first neighboring node to the target node; at a second neighboring node: receiving the routing probe packet and the first competition packet; determining that its second reliability data is better than the first reliability data, where the second reliability data represents a reliability index from the second neighboring node to the target node; sending a second competition packet to the source node, where the second competition packet includes a data packet type information of competing for the next-hop optimal node, the target address, an address of the second neighboring node, and the second reliability data; at the source node: receiving the first competition packet and the second competition packet; determining the next-hop optimal node based on the first reliability data and the second reliability data; and broadcasting a data packet, where the data packet includes an address of the determined next-hop optimal node.
[0005] Optionally, the method further includes: at the second neighboring node: in response to not receiving the first competition packet after a first duration, sending the second competition packet to the source node; and / or at the source node: in response to not receiving a competition packet corresponding to the routing probe packet after a second duration, broadcasting the routing probe packet again.
[0006] Optionally, at the source node: when only the first competition packet is received within the third time period, determining the first neighboring node as the next-hop optimal node; and / or when only the second competition packet is received within the third time period, determining the second neighboring node corresponding to the second competition packet with the optimal second reliability data as the next-hop optimal node, and changing the routing information corresponding to the destination address in the routing table information of the source node; and / or when the first competition packet and the second competition packet are received within the third time period, determining the node corresponding to the competition packet with the optimal reliability data as the next-hop optimal node, and when the determined next-hop optimal node is inconsistent with the next-hop optimal node in the routing probe packet, changing the routing information corresponding to the destination address in the routing table information of the source node.
[0007] Optionally, the first reliability data includes a first reliability and a first forwarding hop count, and the second reliability data includes a second reliability and a second forwarding hop count. At the second neighboring node: when the second reliability is higher than the first reliability, or when the second reliability is equal to the first reliability and the second forwarding hop count is lower than the first forwarding hop count, sending the second competition packet to the source node.
[0008] Optionally, the method further includes: at a third neighboring node: receiving the data packet; confirming that itself is the determined next-hop optimal node; broadcasting a blocking response packet, where the blocking response packet includes that the data packet type information is a blocking response, the source address of the source node, the destination address, and the address of the third neighboring node; at a fourth neighboring node: receiving the data packet and the blocking response packet; when the blocking response packet is received for the first time, clearing the cached data packet, the routing probe packet, and the first competition packet from the source address and destined for the destination address; and / or when the blocking response packet is not received for the first time, discarding the blocking response packet.
[0009] Optionally, the method further includes: at the fourth neighboring node: in response to not receiving the blocking response packet after exceeding a fourth time period, clearing the cached data packet, the routing probe packet, and the first competition packet from the source address and destined for the destination address; and / or at the source node: in response to not receiving the blocking response packet for the first time after exceeding a fifth time period, broadcasting the data packet again; and / or in response to not receiving the blocking response packet for a non-first time after exceeding the fifth time period, broadcasting the routing probe packet again.
[0010] Optionally, the method further includes: at any node in the wireless network: periodically broadcasting a heartbeat packet, where the heartbeat packet includes a routing update flag, the number of times the heartbeat packet is allowed to be forwarded, the attributes supported by the node, and the routing table information of the node; updating the routing table information of the node based on the single-hop heartbeat packet broadcast by the first-hop neighboring node of the node that receives the packet.
[0011] Optionally, the routing table information includes one or more routing information, and each piece of routing information includes a destination address, the next-hop optimal address corresponding to the destination address, reliability, and the number of forwarding hops; at any node in the wireless mesh network: when the single-hop heartbeat packet does not exist in the cache of the node, or when the single-hop heartbeat packet exists in the cache and the single-hop heartbeat packet has been updated, calculating the reliability from the node to the destination address based on the probability that the node successfully receives the single-hop heartbeat packet and the reliability corresponding to the destination address in the single-hop heartbeat packet, and calculating the number of forwarding hops from the node to the destination address based on the number of forwarding hops corresponding to the destination address in the single-hop heartbeat packet; when the destination address exists in the routing table information of the node and the calculated reliability data is better than the reliability data corresponding to the destination address in the routing table information of the node, updating the routing information corresponding to the destination address in the routing table information of the node based on the address of the first-hop neighboring node, the calculated reliability, and the calculated number of forwarding hops; and / or when the destination address does not exist in the routing table information of the node, adding routing information corresponding to the destination address to the routing table information of the node based on the address of the first-hop neighboring node, the calculated reliability, and the calculated number of forwarding hops.
[0012] Optionally, the method further includes: at any node in the wireless mesh network: in response to not receiving the single-hop heartbeat packet broadcast by the second-hop neighboring node for more than a sixth duration, deleting the routing information in the routing table information of the node with the address of the second-hop neighboring node as the destination address, and setting the routing update flag in the heartbeat packet of the node to an update flag; deleting the first routing information in the routing table information of the node, where the first routing information refers to the routing information with the next-hop optimal address being the address of the first-hop neighboring node and the destination address not appearing in the single-hop heartbeat packet broadcast by the first-hop neighboring node.
[0013] According to a second aspect of the present disclosure, a communication system is provided, including: multiple device nodes in a wireless network, wherein, among the multiple device nodes, a source node: broadcasts a routing probe packet, the routing probe packet including a data packet type of routing exploration, a target address of a target node, and an address of a next-hop optimal node; at a first neighboring node: receives the routing probe packet; confirms itself as the next-hop optimal node; broadcasts a first competition packet, the first competition packet including a data packet type information of competing for the next-hop optimal node, the target address, the address of the first neighboring node, and first reliability data, the first reliability data characterizing a reliability index from the first neighboring node to the target node; at a second neighboring node: receives the routing probe packet and the first competition packet; determines that its second reliability data is better than the first reliability data, the second reliability data characterizing a reliability index from the second neighboring node to the target node; sends a second competition packet to the source node, the second competition packet including a data packet type information of competing for the next-hop optimal node, the target address, the address of the second neighboring node, and the second reliability data; at the source node: receives the first competition packet and the second competition packet; determines the next-hop optimal node based on the first reliability data and the second reliability data; broadcasts a data packet, the data packet including the address of the determined next-hop optimal node. Description of the Drawings
[0014] By describing the exemplary embodiments of the present disclosure in more detail in conjunction with the drawings, the above and other objects, features, and advantages of the present disclosure will become more apparent. Among them, in the exemplary embodiments of the present disclosure, the same reference numerals generally represent the same components.
[0015] Figure 1 Shows a schematic flowchart of a communication method according to an embodiment of the present disclosure.
[0016] Figure 2 Shows a schematic diagram of the step process executed at a second neighboring node according to an embodiment of the present disclosure.
[0017] Figure 3 Shows a schematic flowchart of a communication method according to another embodiment of the present disclosure.
[0018] Figure 4 Shows a schematic diagram of the content design of routing table information according to an embodiment of the present disclosure.
[0019] Figure 5 Shows a schematic diagram of the content design of a heartbeat packet according to an embodiment of the present disclosure.
[0020] Figure 6 Shows a schematic diagram of a single-layer network topology structure.
[0021] Figure 7 Shows a schematic diagram of a multi-hop routing update process according to an embodiment of the present disclosure.
[0022] Figure 8 Shows a schematic diagram of a multi-layer network topology. Detailed implementation manners
[0023] The preferred embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the preferred embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to make the present disclosure more thorough and complete, and to fully convey the scope of the present disclosure to those skilled in the art.
[0024] Those skilled in the art should understand that the terms "first", "second", etc. in the specification, claims and drawings of the present disclosure are used to distinguish similar objects, rather than to describe a specific order or sequence, and have no additional limiting effect.
[0025] Currently, in Mesh networks, such as the SIG Mesh network based on Bluetooth 5.4, a flooding mechanism is generally adopted for communication. SIG Mesh is a Mesh network protocol defined by the Bluetooth SIG official organization.
[0026] The basic idea of the flooding routing protocol is that each node in the network forwards the data packet received by the node in a broadcast manner, and broadcasts it level by level in the form of node relay, and finally reaches the target node.
[0027] This broadcast flooding routing protocol is very effective for scenarios where nodes are dynamic and frequently enter and leave the network. However, the broadcast flooding will cause a large number of duplicate data packets to flood the network, occupying network resources, causing extremely high energy consumption of nodes, and affecting the life cycle of the entire network.
[0028] With the popularization of intelligent devices, the device nodes in the Mesh network usually have relay forwarding capabilities and computing capabilities. Therefore, it is very necessary to design a routing optimization strategy to avoid useless repeated forwarding, prevent data packet explosion in the Mesh network, improve the utilization rate of bandwidth, and make communication more efficient.
[0029] In view of this, the present disclosure proposes: confirming the optimal neighboring node of the best route during each-hop relay forwarding through a routing detection and reliability competition mechanism; enabling other neighboring nodes at the same level to discard the previously cached data packets to be forwarded through a blocking response mechanism, avoiding the forwarding quantity of redundant data packets, and reducing the routing load; ensuring the reliable delivery of data packets in the network through a timeout mechanism, and improving the communication effectiveness; and maintaining true and available routing information for nodes through a routing table update mechanism.
[0030] The following details various aspects of the present disclosure in conjunction with the accompanying drawings.
[0031] Figure 1 A schematic flowchart of a communication method according to an embodiment of the present disclosure is shown.
[0032] Figure 1 The method shown is applied to a wireless network (such as a Mesh network). Nodes in the wireless network may include, but are not limited to, device nodes such as smart phones, smart glasses, and smart homes. Among them, smart glasses may include, but are not limited to, Extended Reality (XR) glasses.
[0033] Refer to Figure 1 , in step S110, the source node broadcasts a routing detection packet.
[0034] The source node refers to a node with a data packet broadcasting requirement. The data packet to be broadcast by the source node may be a data packet broadcast by its upper-level node that it has received, or a data packet generated by itself.
[0035] When the next-level neighboring node of the source node is already the target device to which the data packet is finally to be delivered, there is no need to determine the next-hop optimal node through the Figure 1 shown routing detection and reliability competition mechanism, but the data packet can be directly broadcast. After receiving the data packet, the neighboring node can determine whether it is the target device according to the target address in the data packet. If it is the target device itself, it parses the data packet and processes the message carried therein. If it is not the target device itself, the data packet can be directly discarded.
[0036] When the next-level neighboring node of the source node is not the target device to which the data packet is finally to be delivered, a routing detection packet is broadcast before the data packet is broadcast, so as to determine the next-hop optimal node through the Figure 1 shown routing detection and reliability competition mechanism, and broadcast a data packet containing the address of the determined next-hop optimal node.
[0037] The routing detection packet includes a data packet type of routing exploration, a destination address of a target node, and an address of the optimal next-hop node. The target node refers to the node corresponding to the target device to which the data packet is ultimately to be delivered. The data packet type information of "routing exploration" can be exemplarily represented as 0x01. The optimal next-hop node refers to the node that can be reached by a one-hop broadcast packet in the broadcast route with the highest reliability from the current node to the target node on the premise of specifying the target device of the data packet communication. The optimal next-hop node in the routing detection packet can be the optimal next-hop node determined by the source node based on the routing table information currently maintained. For the routing table information, see the description below.
[0038] In some exemplary embodiments, the routing detection packet may further include reliability data. The reliability data in the routing detection packet characterizes the reliability index from the source node to the target node. For the reliability data, see the description below.
[0039] The routing detection packet broadcast by the source node can be received by the neighboring nodes at the next lower layer. The neighboring nodes refer to all node devices that can be reached by a one-hop broadcast of the data packet of the current node without the need for forwarding.
[0040] For the sake of easy distinction, the neighboring nodes at the next lower layer can be divided into the first neighboring nodes and the second neighboring nodes.
[0041] The first neighboring nodes are the optimal next-hop nodes recorded in the routing detection packet.
[0042] The second neighboring nodes are non-optimal next-hop nodes. The number of the second neighboring nodes can be one or more.
[0043] Steps S210 to S230 are executed at the first neighboring nodes.
[0044] In step S210, the routing detection packet is received.
[0045] In step S220, it is confirmed that itself is the optimal next-hop node.
[0046] The first neighboring nodes can determine whether itself is the optimal next-hop node according to the address of the optimal next-hop node in the routing detection packet. If it is confirmed that itself is the optimal next-hop node, then step S230 is executed to broadcast the first competition packet as a response.
[0047] The first competition packet includes data packet type information of competing for the optimal next-hop node, the destination address, the address of the first neighboring node, and the first reliability data. The data packet type information of "competing for the optimal next-hop node" can be exemplarily represented as 0x02. The destination address in the competition packet represents the routing destination for which the competition packet competes. The address of the first neighboring node, that is, the forwarding address, is used to determine whether the competition packet comes from the optimal next-hop node. The first reliability data characterizes the reliability index from the first neighboring node to the destination node. The first reliability data is used by the neighboring node (i.e., the second neighboring node mentioned below) that receives the routing probe packet and the first competition packet to calculate and determine whether it can compete for the optimal next-hop node.
[0048] The first competition packet broadcast by the first neighboring node can be received by the source node and the second neighboring node.
[0049] In the case where the second neighboring node receives the routing probe packet (step S310) and the first competition packet (step S320), it can determine whether its second reliability data is better than the first reliability data. The second reliability data characterizes the reliability index from the second neighboring node to the destination node.
[0050] In the case where the second neighboring node determines that its second reliability data is better than the first reliability data (step S330), it executes step S340 and sends (i.e., directionally sends) a second competition packet to the source node to compete for the identity of the optimal next-hop node. The second competition packet includes data packet type information of competing for the optimal next-hop node, the destination address, the address of the second neighboring node, and the second reliability data.
[0051] In the case where the second neighboring node determines that its second reliability data is not better than the first reliability data, it does not send the second competition packet to the source node and does not compete for the identity of the optimal next-hop node.
[0052] In some exemplary embodiments, if the second neighboring node sends the second competition packet by broadcasting. Then, after other second neighboring nodes receive the competition packet, they can also determine whether the forwarding address in the competition packet is the address of the optimal next-hop node in the routing probe packet. If not, it is determined that the competition packet is the second competition packet broadcast by the second neighboring node and no processing is performed.
[0053] Figure 2 Shows a schematic flowchart of steps executed at the second neighboring node according to an embodiment of the present disclosure.
[0054] In this embodiment, the first reliability data includes the first reliability and the first forwarding hop count. The second reliability data includes the second reliability and the second forwarding hop count. The first reliability represents the probability of successfully delivering a data packet from the first neighboring node to the target node. The second reliability represents the probability of successfully delivering a data packet from the second neighboring node to the target node. The first forwarding hop count represents the number of times the best route from the first neighboring node to the target node needs to forward. The second forwarding hop count represents the number of times the best route from the second neighboring node to the target node needs to forward.
[0055] After receiving the route discovery packet, the second neighboring node can first determine whether it has received the first competition packet.
[0056] If the first competition packet is not received after the second time period has elapsed since receiving the route discovery packet, it indicates that the reception of the first competition packet has failed. In this case, the second neighboring node may be a neighboring node that is better than the next-hop optimal node in the route discovery packet. Therefore, the second neighboring node can send a second competition packet to the source node for the source node to decide on the next-hop optimal node.
[0057] If the first competition packet is received after receiving the route discovery packet, the second reliability can be first compared with the first reliability. If the second reliability is higher than the first reliability, it indicates that itself is better than the next-hop optimal node in the route discovery packet in terms of reliability, and a second competition packet can be sent to the source node to compete for the next-hop optimal node.
[0058] If the second reliability is equal to the first reliability and the second forwarding hop count is lower than the first forwarding hop count, it indicates that although itself is on par with the next-hop optimal node in the route discovery packet in terms of reliability, it is better than the next-hop optimal node in terms of the forwarding hop count. Therefore, a second competition packet can also be sent to the source node to compete for the next-hop optimal node.
[0059] In addition, when the second neighboring node receives the first competition packet but does not receive the route discovery packet, the first competition packet can be considered invalid data and directly discarded.
[0060] Back to Figure 1 , Figure 1 shows the situation where the source node receives the first competition packet and the second competition packet (i.e., steps S120 and S130) after broadcasting the route discovery packet. When the source node receives the first competition packet and the second competition packet, step S140 can be executed to determine the next-hop optimal node based on the first reliability data and the second reliability data.
[0061] Exemplarily, when the source node receives the first competition packet and the second competition packet within the third time period, it may determine the node corresponding to the competition packet with the optimal reliability data as the next-hop optimal node, and in the case where the determined next-hop optimal node is inconsistent with the next-hop optimal node in the routing information corresponding to the target address in the routing table information of the source node, change the routing information corresponding to the target address in the routing table information of the source node. The third time period represents the effective reception time period of the competition packet corresponding to the routing detection packet. The specific value of the third time period can be flexibly set according to the actual situation.
[0062] It should be noted that the source node may also only receive one type of competition packet, or receive no competition packets at all.
[0063] In some embodiments, when the source node only receives the first competition packet within the third time period, it may determine the first neighboring node as the next-hop optimal node. The determined next-hop optimal node is the same as the next-hop optimal node in the routing information corresponding to the target address in the routing table information, so there is no need to change the routing information corresponding to the target address in the routing table information.
[0064] In some other embodiments, when the source node only receives the second competition packet within the third time period, it may determine the second neighboring node corresponding to the second competition packet with the second optimal reliability data as the next-hop optimal node, and change the routing information corresponding to the target address in the routing table information of the source node.
[0065] In some other embodiments, when the source node does not receive any competition packets (including the first competition packet and the second competition packet) corresponding to the routing detection packet after exceeding the second time period, it may broadcast the routing detection packet again to retransmit the routing detection packet.
[0066] After the source node determines the next-hop optimal node, it may execute step S150 to broadcast a data packet, and the data packet includes the address of the determined next-hop optimal node.
[0067] So far, in combination with Figure 1 、 Figure 2 An exemplary description has been made of the routing detection and reliability competition mechanism proposed in the present disclosure. Any node in the network can, when relaying at each hop, confirm the optimal neighboring node (i.e., the next-hop optimal node) of the best route based on the above routing detection and reliability competition mechanism, and broadcast a data packet containing the confirmed next-hop optimal node. In this way, the routing quality of each-hop relay forwarding can be improved.
[0068] Based on the above routing detection and reliability competition mechanism, the present disclosure also proposes a blocking response mechanism.
[0069] After the source node in the network confirms the optimal next-hop node of the best route based on the above routing detection and reliability competition mechanism and broadcasts a data packet containing the confirmed optimal next-hop node, the blocking response mechanism can cause the neighboring nodes of the non-optimal next-hop nodes at the same level to discard the previously cached data packets to be forwarded, avoiding redundant data packet forwarding and reducing the routing load. Figure 3 FIG. shows a schematic flowchart of a communication method according to another embodiment of the present disclosure. The following combines Figure 3 to make an exemplary description of the blocking response mechanism of the present disclosure.
[0070] See Figure 3 , the data packet broadcast by the source node can be received by the neighboring nodes in the next layer.
[0071] For the convenience of distinction, the neighboring nodes in the next layer can be divided into the third neighboring nodes and the fourth neighboring nodes.
[0072] The third neighboring node is the optimal next-hop node recorded in the data packet, that is, the optimal next-hop node determined based on the routing detection and reliability competition mechanism.
[0073] The fourth neighboring node is a non-optimal next-hop node. The number of the fourth neighboring nodes can be one or more.
[0074] Steps S410 to S430 are executed at the third neighboring node.
[0075] At step S410, the data packet is received.
[0076] At step S420, it is confirmed that itself is the determined optimal next-hop node.
[0077] The third neighboring node can determine whether itself is the determined optimal next-hop node according to the address of the optimal next-hop node included in the data packet. After confirming that itself is the determined optimal next-hop node, step S430 is executed to broadcast a blocking response packet.
[0078] It should be known that when the third neighboring node confirms that itself is the determined optimal next-hop node and the neighboring node in the next layer is not the target device (i.e., the target node) to which the data packet is finally to be delivered, it can also act as a source node to broadcast a routing detection packet to confirm the optimal neighboring node of the best route according to the routing detection and reliability competition mechanism described above, and broadcast a data packet containing the confirmed optimal next-hop node.
[0079] The blocking response packet broadcast by the third neighboring node can be received by the source node and other neighboring nodes (such as the fourth neighboring node). The blocking response packet includes that the data packet type is a blocking response, the source address of the source node, the destination address, and the address of the third neighboring node. The information of the data packet type "blocking response" can be exemplarily represented as 0x03. The data packet type, source address, and destination address in the blocking response packet can be used by other neighboring nodes to clear the relevant cached data. The address of the third neighboring node in the blocking response packet can be used by other neighboring nodes to determine whether they receive the blocking response packet for the first time. The address of the third neighboring node in the blocking response packet can also be used by the source node to determine whether it can receive the blocking response packet broadcast by the next-hop optimal node, so as to perform the next action (see the following description for details).
[0080] In the case where the fourth neighboring node receives a data packet (step S510) and receives a blocking response packet (step S520), it can execute step S530 to determine whether it receives the blocking response packet for the first time. For example, the fourth neighboring node can identify the blocking response packet according to the data packet type field in the blocking response packet, and determine whether it receives the blocking response packet for the first time according to the address of the third neighboring node in the blocking response packet.
[0081] In the case where the fourth neighboring node receives the blocking response packet for the first time, it can execute step S540 to clear the cached data packets, route detection packets, and first competition packets from the source address and destined for the destination address. Thus, the number of forwarded redundant data packets can be avoided, and the routing load can be reduced.
[0082] In the case where the fourth neighboring node receives the blocking response packet not for the first time, since it has cleared the relevant cache when it received the blocking response packet for the first time before. Therefore, it can execute step S550 to directly discard the blocking response packet.
[0083] In the case where the fourth neighboring node receives a data packet but does not receive the corresponding blocking response packet within the fourth time period, it can clear the cached data packets, route detection packets, and first competition packets from the source address and destined for the destination address.
[0084] In the case where the fourth neighboring node receives the blocking response packet but does not receive the corresponding data packet, it can directly discard the blocking response packet.
[0085] The blocking response packet broadcast by the third neighboring node can be received by the source node. The source node can determine whether it can receive the previously determined next-hop optimal node based on the routing detection and reliability competition mechanism according to the address of the third neighboring node in the blocking response packet. If the blocking response packet is not received for the first time after exceeding the fifth time duration, the data packet can be broadcast again, and whether it can communicate with the determined next-hop optimal node can be attempted by retransmitting the data packet. If it is not the first time that the blocking response packet is not received after exceeding the fifth time duration, it indicates that the previously determined next-hop optimal node based on the routing detection and reliability competition mechanism is currently unavailable, and the routing detection packet can be broadcast again. By retransmitting the routing detection packet, the routing detection and reliability competition process can be restarted. The next-hop optimal node in the retransmitted routing detection packet can be the previously determined next-hop optimal node based on the routing detection and reliability competition mechanism.
[0086] The present disclosure also proposes a timeout retransmission mechanism.
[0087] Both the neighboring node (i.e., the second neighboring node) and the source node have a timeout retransmission mechanism.
[0088] The timeout retransmission mechanism in the neighboring node refers to the neighboring node (i.e., the second neighboring node) that is not the next-hop optimal node and receives the routing detection packet. If it does not receive the competition packet (i.e., the first competition packet) broadcast by the next-hop optimal node within the specified timeout range (i.e., the first time duration mentioned above), it will send a competition packet (i.e., the second competition packet) carrying local routing information as a response to the source node for the source node to decide the next-hop optimal node.
[0089] An exemplary description of how to set the timeout time (i.e., the first time duration) of the neighboring node is given below.
[0090] Taking the transmission interval of the broadcast packet in the wireless network as 20 ms and the window and interval of the broadcast packet scanning as 10 ms as an example, the timeout time of the neighboring node can be set to twice the longest time for a data packet to complete one communication, that is, 60 ms.
[0091] There are two timeout retransmission mechanisms in the source node, namely the timeout retransmission when waiting for the competition packet (including the competition packet of the next-hop optimal node and the competition packets of other neighboring nodes), and the timeout retransmission when waiting for the blocking response packet.
[0092] The timeout retransmission when waiting for the competition packet means that if the source node does not receive any competition packets within the specified timeout range after sending the routing detection packet, it can retransmit the routing detection packet. As described above by way of example, since the competition packet of the neighboring node has a 60 ms timeout, the timeout mechanism of the source node should be set to 120 ms. If no competition packet from the next-hop best node or its own backup node is received within 120 ms, the routing detection packet is retransmitted.
[0093] Timeout retransmission when waiting for a blocking response packet means that after the source node sends a data packet containing the address of the determined next-hop optimal node, if it does not receive the blocking response packet broadcast by the determined next-hop optimal node within the specified timeout range (i.e., the fifth duration mentioned above), it will perform retransmission. Retransmission is divided into two types. The first timeout retransmits the data packet, and non-first timeout retransmits the route detection packet. Still taking the 60ms timeout duration as an example, if the blocking response packet from the next-hop best node is not received within the first 60ms, the data packet to be forwarded will be retransmitted. If the blocking response packet from the next-hop best node is not received within non-first 60ms, the route detection packet will be retransmitted.
[0094] The timeout retransmission strategy of the present disclosure minimizes the retransmission of data packets and improves the throughput per unit time. In addition, the timeout retransmission mechanism combines route detection with a reliability competition mechanism, which can ensure the reliable delivery of data packets in the network and improve communication effectiveness.
[0095] The present disclosure also proposes a routing table information update mechanism.
[0096] Any node in the wireless network can maintain a routing table information.
[0097] Figure 4 The content design diagram of the routing table information according to an embodiment of the present disclosure is shown.
[0098] As Figure 4 shown, the routing table information may include one or more routing information. Each routing information includes a destination address, the next-hop optimal address corresponding to the destination address, reliability, and reliable TTL.
[0099] Nodes joining the network will be assigned an address by the Provisioner. The Provisioner refers to the device in the network that configures newly joined network nodes and initializes them.
[0100] Each routing information can be regarded as a node reachable routing information. The destination node in the routing information refers to the address of the node to which the message needs to be sent. The next-hop optimal address refers to the address of the next-hop forwarding node in the optimal route from this node to the destination node. Reliability refers to the probability that the message is successfully delivered from the current node to the destination node. TTL is the abbreviation of Time To Live, which refers to the number of times the broadcast data packet in the network can be forwarded, and it decreases by one each time it is forwarded. The reliable TTL, also known as the forwarding hop count, refers to the number of forwarding hops required for the message to be successfully delivered from the current node to the destination node.
[0101] Any node in the wireless network can periodically broadcast a heartbeat packet. The heartbeat packet includes a routing update flag, the number of times the heartbeat packet is allowed to be forwarded, the attributes supported by the node, and the routing table information of the node.
[0102] Figure 5 FIG. shows a schematic diagram of the content design of a heartbeat packet according to an embodiment of the present disclosure.
[0103] The heartbeat packet defined in the network protocol Sig Mesh consists of 3 bytes. The 1st bit of the 1st byte is reserved and undefined. The present disclosure makes a new supplementary design on the data content of the traditional heartbeat packet. The 1st bit of the 1st byte is used to mark whether the routing has been updated. For example, "0" can be used to indicate no update, and "1" can be used to indicate an update. The 7 bits following the 1st byte are used to define the initial TTL (i.e., InitTTL), that is, the number of times the heartbeat packet sent by the node is allowed to be forwarded. Its value range can be from 0x00 to 0x7f, that is, the maximum number of forwarding times is 0 to 127 times. The specific value can be determined by the network status and the service requirements of the node device. In the present disclosure, the update and maintenance of the routing table information depend layer by layer on the heartbeat packet data of each adjacent node in each layer. Therefore, as long as the InitTTL value of the heartbeat packet is greater than or equal to 0.
[0104] The 2nd - 3rd bytes are used to mark the attributes supported by the node, that is, relay, proxy, friendly, low power consumption, etc. In some embodiments, for example, in a wireless network formed by XR glasses, the node device defaults to support relay and proxy attributes. The last field of the heartbeat packet is the routing table information of the node newly defined in the present disclosure (i.e., the node reachable routing information shown in the figure), and its length is the product of the unit routing information and the routing table length. This routing table information is used to assist adjacent nodes in calculating and updating the local routing table information.
[0105] After networking, the sending and receiving of the heartbeat packet can be configured through the subscription / publish model. The heartbeat packet can be configured to be broadcast periodically with a broadcast interval of once every 200 ms, that is, the number of heartbeat packets sent by the node per second is 5 times, and the number of heartbeat packets received by the corresponding node within 1 s is also 5 times. The InitTTL can be set to 0, that is, the heartbeat packet is not allowed to be forwarded and can only be received by adjacent nodes within the single - hop broadcast range.
[0106] Any node in the wireless network can update the routing table information of the node based on the single - hop heartbeat packet broadcast by the adjacent single - hop nodes of the node received.
[0107] The update of the routing table information can be divided into single - hop routing (i.e., direct routing) update and multi - hop routing update.
[0108] Single-hop route update refers to updating the single-hop route information in the node's own routing table, which has the neighboring single-hop node as the destination address and the next-hop optimal address also as the neighboring single-hop node's address, according to the reception of heartbeat packets from neighboring single-hop nodes when a neighboring single-hop node joins or exits.
[0109] Multi-hop route update refers to updating the routing information in the node's own routing table that has other multi-hop device nodes as the destination nodes according to the received heartbeat packets from neighboring single-hop nodes.
[0110] Single-hop routing is applicable to the case where the network topology has only one layer. That is, when nodes in the network communicate, there is no need for relay forwarding. Nodes in the network are neighboring nodes to each other, and data packets can reach directly. When networking, when a new node joins the wireless network, all nodes in the wireless network will add a routing table entry with the destination address and the next-hop optimal address both being the newly joined node. The reliability is the single-hop reliability to the destination node. The single-hop reliability is equal to the probability of successfully receiving the heartbeat packet from the newly joined node within a unit time. Taking the example that a node broadcasts 5 heartbeat packets within a unit time, single-hop reliability = the number of times of receiving the heartbeat packet from the corresponding node within a unit time / 5 times.
[0111] After the newly joined node completes the self-configuration process, it will listen to the heartbeat packet information in the network. Nodes with InitTTL being 0 in the heartbeat packet and heartbeat packets with InitTTL not being 0 but RxTTL having the same value as InitTTL will be added to the neighboring node set, and the next-hop best node in the routing table to the neighboring node will be updated to direct. RxTTL is officially defined by SIG Mesh to represent the number of times the heartbeat broadcast data packet can be forwarded after this reception, ranging from 0 to InitTTL times, which is specifically determined by the forwarding situation in the network. Each time the heartbeat packet is forwarded, RxTTL will be decremented by 1 based on InitTTL.
[0112] Figure 6 Fig. shows a schematic diagram of a single-layer network topology.
[0113] When there are already three node devices A, B, and C in the network, when device D newly joins the network, the network topology is as Figure 6 shown. In the routing table information of the three node devices A, B, and C, new routing information about device D will be added. Among them, since device D is a direct device, the destination address and the next-hop optimal address in the routing information are both the address of device D, and the reliability (i.e., single-hop reliability) is calculated according to the probability of receiving the heartbeat packet sent by device D by A, B, and C within a unit time.
[0114] The initial routing table of Device D needs to listen for heartbeat packets from A, B, and C in the network. To add the routing information of A, B, and C, it is necessary to filter out the heartbeat packets from single-hop neighboring node devices. The filtering method is to determine the heartbeat packets with InitTTL being 0, or the heartbeat packets with InitTTL not being 0 but RxTTL having the same value as InitTTL.
[0115] After filtering out the heartbeat packets from single-hop neighboring node devices, in the routing information of Device D, both the destination address and the optimal next-hop address are the addresses of the devices that sent the single-hop heartbeat packets. The reliability is the probability that Device D receives the corresponding single-hop heartbeat packet within a unit time. After Device D receives the heartbeat packets from A, B, and C and parses the routing table information of the corresponding devices, it can also update the routing information in the routing table of Device D with other multi-hop device nodes as the target nodes according to the routing information in the heartbeat packets.
[0116] Figure 7 The figure shows a schematic diagram of the multi-hop routing update process according to an embodiment of the present disclosure.
[0117] See Figure 7 , after any node in the wireless mesh network receives the single-hop heartbeat packet broadcast by the first neighboring single-hop node, it can first determine whether there is a heartbeat packet of this node (i.e., the first neighboring single-hop node) in the cache.
[0118] If there is no heartbeat packet of the first neighboring single-hop node in the cache, it indicates that this is the first time to receive it. Therefore, the routing information in the heartbeat packet can be parsed, and the subsequent multi-hop routing update process can be executed according to the parsing result.
[0119] If there is a heartbeat packet of the first neighboring single-hop node in the cache, it indicates that this is not the first time to receive it. It can be further determined whether the heartbeat packet has been updated. For example, it can be determined whether the routing has been updated according to the routing update flag in the heartbeat packet.
[0120] If the heartbeat packet has been updated, the routing information in the heartbeat packet can be parsed, and the subsequent multi-hop routing update process can be executed according to the parsing result. On the contrary, if there is a heartbeat packet of the first neighboring single-hop node in the cache and the currently received heartbeat packet has not been updated, the heartbeat packet can be discarded.
[0121] The subsequent multi-hop routing update process is executed according to the parsing result as follows.
[0122] Based on the probability that the node successfully receives the single-hop heartbeat packet and the reliability corresponding to the destination address in the single-hop heartbeat packet, the reliability from this node to the destination address (i.e., multi-hop reliability) can be calculated. The multi-hop reliability is equal to the probability that the node successfully receives the single-hop heartbeat packet multiplied by the reliability corresponding to the destination address in the single-hop heartbeat packet. That is, multi-hop reliability = neighboring node single-hop reliability * routing reliability in the heartbeat packet.
[0123] Based on the forwarding hop count corresponding to the destination address in the single-hop heartbeat packet, the forwarding hop count from this node to the destination address can be calculated. The forwarding hop count from this node to the destination address is equal to the forwarding hop count corresponding to the destination address in the single-hop heartbeat packet plus one.
[0124] After calculating the reliability and the forwarding hop count (i.e., the reliable TTL), it is possible to compare whether the calculated reliability data is better than the reliability data corresponding to the destination address in the routing table information of this node. The comparison principle can be that if the calculated reliability is higher than the reliability corresponding to the destination address in the routing table information of this node, or the calculated reliability is equal to the reliability corresponding to the destination address in the routing table information of this node and the calculated forwarding hop count is lower than the forwarding hop count corresponding to the destination address in the routing table information of this node, then it is determined that the calculated reliability data is better than the reliability data corresponding to the destination address in the routing table information of this node.
[0125] If the calculated reliability data is better, then based on the address of the first neighboring single-hop node, the calculated reliability, and the calculated forwarding hop count, the routing information corresponding to the destination address in the routing table information of this node can be updated. The next-hop optimal address in the routing information corresponding to the destination address in the updated routing table information is the address of the first neighboring single-hop node, the reliability in the routing information corresponding to the destination address is the calculated reliability, and the forwarding hop count in the routing information corresponding to the destination address is the calculated forwarding hop count.
[0126] If the calculated reliability data is not better than the reliability data corresponding to the destination address in the routing table information, then the routing information corresponding to the destination address in the routing table information may not be updated.
[0127] In addition, when the destination address does not exist in the routing table information of this node, a routing information corresponding to the destination address can be added to the routing table information of this node based on the address of the first neighboring single-hop node, the calculated reliability, and the calculated forwarding hop count.
[0128] Figure 8 Shows a schematic diagram of a multi-layer network topology.
[0129] See Figure 8, take the example of device D updating the routing information with device E as the target node in its own routing table. When device D first receives and parses the heartbeat packets from device A and device C successively, it calculates the reliability data of device D to device E based on the routing information of device A to device E. The reliability of device D to device E = the single-hop routing reliability of device A to device D * the routing reliability of device A to device E; the reliable TTL of device D to device E = the routing reliable TTL of device A to device E + 1.
[0130] Since there is no routing information to device E in the current routing table of device D, the routing information to device E is added to the routing table. The target address is device E, and the next-hop optimal address is device A. The calculation methods of reliability and reliable TTL value are as described above.
[0131] When device D parses the heartbeat packet from device C and finds that device C can also reach device E, it recalculates the relevant reliability data of reaching device E via device C. The calculation method is the same as that of the route via device A. If the routing reliability data via device C is better than that of device A, device D will update the routing information with device E as the target node in the routing table, and the next-hop optimal address is device C, and the reliability data is the reliability data via route C. If the routing reliability data via device C is not better than that of device A, the routing information to device E will remain unchanged.
[0132] Any node in the wireless network, in response to not receiving the single-hop heartbeat packet broadcast by the second adjacent single-hop node for more than the sixth duration, can consider that the second adjacent single-hop node has exited the network, delete the routing information with the address of the second adjacent single-hop node as the target address in the routing table information of this node, and set the routing update flag in the heartbeat packet of this node to the existence update flag. Other nodes can listen to the new heartbeat packets and update the routing.
[0133] The process of other nodes listening to the new heartbeat packets and updating the routing can be exemplarily described as follows. After any node in the wireless network receives the heartbeat packet with the existence update broadcast by the first adjacent single-hop node, it can delete the first routing information in the routing table information of this node. The first routing information refers to the routing information whose next-hop optimal address is the address of the first adjacent single-hop node and the target address does not appear in the single-hop heartbeat packet broadcast by the first adjacent single-hop node.
[0134] The present disclosure also provides a communication system. The communication system includes multiple device nodes in a wireless network. Among them, the device nodes may include, but are not limited to, device nodes such as smart phones, smart glasses, and smart homes. The device nodes in the wireless network may be one of the source node, the first neighboring node, the second neighboring node, the third neighboring node, the fourth neighboring node, and other neighboring nodes described above, and execute the corresponding method or operation of the corresponding embodiment described above according to the corresponding node role above. For the sake of brevity, it will not be repeated here.
[0135] In summary, the present disclosure provides an efficient routing protocol for a wireless network (such as a Mesh network), which uses the broadcast characteristic to reduce the load of each node in the network for forwarding data packets. The combination of a static routing table and dynamic routing updates is adopted to improve the flexibility and throughput performance of the network, while ensuring the reliability of data packet delivery. The dynamic routing update includes the routing detection and reliability competition mechanism, the blocking response mechanism, and the timeout retransmission mechanism described above.
[0136] The present disclosure inherits the time-to-live (TTL) and heartbeat mechanism of the SIG Mesh flooding routing, and redesigns the data content of the heartbeat packet. Each device will periodically broadcast its own heartbeat packet to surrounding devices after initial network access, and other devices will receive the broadcast and save the information of neighboring nodes locally. In addition to the standard content defined by SIG Mesh in the valid data of the heartbeat packet, the routing information of this node is added, which is used for the control of subsequent routing policies, such as updating the routing table. When forwarding data subsequently, first confirm the optimal neighboring node of the best route through the routing detection and reliability competition mechanism during each-hop relay forwarding, and broadcast a blocking response data packet when the neighboring node performs the next-hop relay forwarding. Other neighboring nodes at the same level can discard the data packets to be forwarded cached before, avoiding redundant data packet forwarding and reducing the routing load.
[0137] The communication method and communication system according to the present disclosure have been described in detail above with reference to the accompanying drawings.
[0138] In addition, the method according to the present disclosure can also be implemented as a computer program or a computer program product, which includes computer program code instructions for executing the above steps defined in the above method of the present disclosure.
[0139] Alternatively, the present disclosure can also be implemented as a non-transitory machine-readable storage medium (or computer-readable storage medium, or machine-readable storage medium), on which executable code (or computer program, or computer instruction code) is stored. When the executable code (or computer program, or computer instruction code) is executed by a processor of an electronic device (or computing device, server, etc.), the processor is caused to execute each step of the above method according to the present disclosure.
[0140] Those skilled in the art will also appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein can be implemented as electronic hardware, computer software, or combinations of both.
[0141] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems and methods according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of code, or a part thereof that contains one or more executable instructions for implementing the specified logical function. It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur in a different order than noted in the figures. For example, two consecutive blocks may in fact be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified function or operation, or by a combination of dedicated hardware and computer instructions.
[0142] The embodiments of the present disclosure have been described above. The above description is exemplary, not exhaustive, and is not limited to the disclosed embodiments. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The choice of terms used herein is intended to best explain the principles of the embodiments, the practical application, or improvements to the technology in the market, or to enable other ordinary skilled in the art to understand the embodiments disclosed herein.
Claims
1. A communication method, applied to a wireless network, the method comprising: At a source node in the wireless network: Broadcasting a routing probe packet, the routing probe packet including a data packet type of routing exploration, a target address of a target node, and an address of a next-hop optimal node; At a first neighboring node: Receiving the routing probe packet; Confirming itself as the next-hop optimal node; Broadcasting a first competition packet, the first competition packet including a data packet type information of competing for the next-hop optimal node, the target address, the address of the first neighboring node, and first reliability data, the first reliability data characterizing a reliability metric from the first neighboring node to the target node; At a second neighboring node: Receiving the routing probe packet and the first competition packet; Determining that its second reliability data is better than the first reliability data, the second reliability data characterizing a reliability metric from the second neighboring node to the target node; Sending a second competition packet to the source node, the second competition packet including a data packet type information of competing for the next-hop optimal node, the target address, the address of the second neighboring node, and the second reliability data; At the source node: Receiving the first competition packet and the second competition packet; Determining the next-hop optimal node based on the first reliability data and the second reliability data; Broadcasting a data packet, the data packet including the address of the determined next-hop optimal node.
2. The communication method according to claim 1, wherein, The method further comprises: At the second neighboring node: In response to not receiving the first competition packet after more than a first duration, sending the second competition packet to the source node; and / or At the source node: In response to not receiving a competition packet corresponding to the routing probe packet after more than a second duration, broadcasting the routing probe packet again.
3. The communication method according to claim 1, wherein, At the source node: In the case of only receiving the first competition packet within a third duration, determining the first neighboring node as the next-hop optimal node; and / or In the case of only receiving the second competition packet within a third duration, determining the second neighboring node corresponding to the second competition packet with the optimal second reliability data as the next-hop optimal node, and changing the routing information corresponding to the target address in the routing table information of the source node; And / or In the case of receiving the first competition packet and the second competition packet within a third duration, determining the node corresponding to the competition packet with the optimal reliability data as the next-hop optimal node, and in the case where the determined next-hop optimal node is inconsistent with the next-hop optimal node in the routing probe packet, changing the routing information corresponding to the target address in the routing table information of the source node.
4. The communication method according to claim 1, wherein, The first reliability data includes a first reliability and a first forwarding hop count, The second reliability data includes a second reliability and a second forwarding hop count, At the second neighboring node: When the second reliability is higher than the first reliability, or the second reliability is equal to the first reliability and the second forwarding hop count is lower than the first forwarding hop count, send the second competition packet to the source node.
5. The communication method according to claim 1, wherein, The method further includes: At a third neighboring node: Receive the data packet; Confirm that itself is the determined next-hop optimal node; Broadcast a blocking response packet, where the blocking response packet includes that the data packet type information is a blocking response, the source address of the source node, the target address, and the address of the third neighboring node; At a fourth neighboring node: Receive the data packet and the blocking response packet; In the case of receiving the blocking response packet for the first time, clear the cached data packet, the routing detection packet, and the first competition packet from the source address and destined for the target address; and / or In the case of receiving the blocking response packet not for the first time, discard the blocking response packet.
6. The communication method according to claim 5, wherein The method further includes: At the fourth neighboring node: In response to not receiving the blocking response packet for more than a fourth time period, clear the cached data packet, the routing detection packet, and the first competition packet from the source address and destined for the target address; and / or At the source node: In response to not receiving the blocking response packet for the first time for more than a fifth time period, broadcast the data packet again; and / or In response to not receiving the blocking response packet for more than the fifth time period not for the first time, broadcast the routing detection packet again.
7. The communication method according to claim 1, wherein The method further includes: At any node in the wireless network: Periodically broadcast a heartbeat packet, where the heartbeat packet includes a routing update flag, the number of times the heartbeat packet is allowed to be forwarded, the attributes supported by the node, and the routing table information of the node; Based on the single-hop heartbeat packet broadcast by the first neighboring single-hop node of this node, update the routing table information of this node.
8. The communication method according to claim 7, wherein, The routing table information includes one or more routing information, and each piece of routing information includes a target address, the next-hop optimal address corresponding to the target address, reliability, and forwarding hop count; At any node in the wireless mesh network: When the single-hop heartbeat packet does not exist in the cache of this node, or when the single-hop heartbeat packet exists in the cache and the single-hop heartbeat packet has an update, calculate the reliability from this node to the target address based on the probability that this node successfully receives the single-hop heartbeat packet and the reliability corresponding to the target address in the single-hop heartbeat packet, and calculate the forwarding hop count from this node to the target address based on the forwarding hop count corresponding to the target address in the single-hop heartbeat packet; When the target address exists in the routing table information of this node and the calculated reliability data is better than the reliability data corresponding to the target address in the routing table information of this node, update the routing information corresponding to the target address in the routing table information of this node based on the address of the first neighboring single-hop node, the calculated reliability, and the calculated forwarding hop count; And / or In the case that the target address does not exist in the routing table information of the node, based on the address of the first neighboring single-hop node, the calculated reliability, and the calculated forwarding hop count, add routing information corresponding to the target address to the routing table information of the node.
9. The communication method according to claim 8, wherein, The method further includes: At any node in the wireless mesh network: In response to not receiving the single-hop heartbeat packet broadcast by the second neighboring single-hop node for more than the sixth duration, delete the routing information with the address of the second neighboring single-hop node as the target address from the routing table information of the node, and set the routing update flag in the heartbeat packet of the node to the existence update flag; Delete the first routing information in the routing table information of the node, where the first routing information refers to the routing information with the next-hop optimal address being the address of the first neighboring single-hop node and the target address not appearing in the single-hop heartbeat packet broadcast by the first neighboring single-hop node.
10. A communication system, comprising: Multiple device nodes in a wireless network, where At a source node among the multiple device nodes: Broadcast a routing probe packet, where the routing probe packet includes a data packet type of routing discovery, a target address of a target node, and an address of a next-hop optimal node; At a first neighboring node: Receive the routing probe packet; Confirm that itself is the next-hop optimal node; Broadcast a first competition packet, where the first competition packet includes a data packet type information of competing for the next-hop optimal node, the target address, the address of the first neighboring node, and first reliability data, and the first reliability data represents the reliability index from the first neighboring node to the target node; At a second neighboring node: Receive the routing probe packet and the first competition packet; Judge that its second reliability data is better than the first reliability data, where the second reliability data represents the reliability index from the second neighboring node to the target node; Send a second competition packet to the source node, where the second competition packet includes a data packet type information of competing for the next-hop optimal node, the target address, the address of the second neighboring node, and the second reliability data; At the source node: Receive the first competition packet and the second competition packet; Determine the next-hop optimal node based on the first reliability data and the second reliability data; Broadcast a data packet, where the data packet includes the address of the determined next-hop optimal node.
Citation Information
Cited By
Low latency and deterministic node failure detection
US20250227045A1