Router repair methods and related equipment based on wireless mesh networks
By utilizing the routing table of the source node in a wireless mesh network to select alternative paths to directly repair communication interruptions, the inefficiency of traditional methods is solved, achieving rapid route repair.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHENZHEN OURUIBO ELECTRONICS
- Filing Date
- 2022-10-25
- Publication Date
- 2026-06-30
AI Technical Summary
In wireless mesh networks, traditional route repair methods require establishing route discovery across the entire network, resulting in low efficiency in route communication recovery and an inability to quickly restore communication interruptions caused by unstable wireless signals or device movement.
By selecting alternative paths from the source node's routing table that do not overlap with the initial communication path, communication between nodes that cannot communicate is directly repaired, avoiding network-wide route discovery, and message transmission is carried out using alternative paths.
It improves route repair speed, reduces network overhead and latency, and enables rapid communication recovery.
Smart Images

Figure CN115884304B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of wireless network technology, and in particular to a route repair method and related equipment based on a wireless mesh network. Background Technology
[0002] With the development of smart homes, more and more smart home devices have network connectivity, requiring the use of wireless network technologies. Generally, in wireless network technology, communication between routing nodes is necessary. In some cases, due to reasons such as unstable wireless signals, relocation of wireless network devices, or the addition of obstructions, previously working communication paths between routing nodes may suddenly become unusable. However, traditional methods typically require establishing a network-wide route discovery mechanism to restore communication between the unrecoverable nodes, resulting in low efficiency. Summary of the Invention
[0003] Therefore, it is necessary to provide a route repair method and related equipment based on a wireless mesh network that can improve the speed of route repair, addressing the aforementioned technical problems.
[0004] Firstly, this application provides a route repair method based on a wireless mesh network, the method comprising:
[0005] According to the initial communication path from the source node to the destination node, transmission messages are sent sequentially from the source node to the next hop routing node, and in the case of failure to send transmission messages, the first and second nodes that cannot communicate with each other are determined.
[0006] Select the first target communication path from the first node to the destination node from the alternative paths stored in the routing table of the first node; the stored alternative paths are routing paths that do not repeat the initial communication path; in the first target communication path, the routing nodes adjacent to the first node do not include the second node;
[0007] Starting from the first node, the transmission message is sequentially transmitted to each routing node of the first target communication path until the transmission message is transmitted to the destination node.
[0008] Secondly, this application provides a route repair system based on a wireless mesh network, the system comprising: multiple routing nodes; the multiple routing nodes include a source node, a destination node, and a first node; the first node is a routing node that cannot communicate with the second node of the next hop during the transmission of a message according to the initial communication path; the initial communication path is the initial communication path from the source node to the destination node;
[0009] The first node is used to select a first target communication path from the alternative paths stored in the routing table of the first node in the event that the transmission message fails to be sent to the second node in the next hop. The stored alternative paths are routing paths that do not overlap with the initial communication path. In the first target communication path, the routing nodes adjacent to the first node do not include the second node.
[0010] Starting from the first node, the transmission message is sequentially transmitted to each routing node of the first target communication path until the transmission message is transmitted to the destination node.
[0011] In some embodiments, the first node is used to determine a first target communication path from the first node to the destination node from each of the candidate paths, based on the quality of each candidate path, when there are multiple candidate paths.
[0012] In some embodiments, the first node is further configured to initiate a network-wide broadcast to each routing node in the entire network, starting from the first node, if the first node's routing table does not store alternative paths. The network-wide broadcast carries routing discovery information for performing route discovery and the destination node. After receiving the network-wide broadcast, the destination node performs route discovery based on the routing discovery information in the network-wide broadcast to determine a second target communication path between the source node and the destination node.
[0013] In some embodiments, the destination node is used to establish a node network structure based on routing discovery information after receiving a network-wide broadcast. The node network structure has the destination node as the root node and routing nodes other than the destination node as non-root nodes. Starting from the destination node, the destination node forwards the directed routing discovery broadcasts to the neighboring nodes in the node network structure, pointing to the source node, until the broadcasts reach the source node. Each routing node carries the best path determined by the routing node in the directed routing discovery broadcasts it forwards to its neighboring nodes. The best path determined by the routing node is the best path from the routing node to the destination node. The source node is used to determine a second target communication path between the source node and the destination node based on the best path carried in the received directed routing discovery broadcasts, so that the destination node and the source node can communicate according to the second target communication path.
[0014] In some embodiments, if no alternative path is stored in the routing table of the first node, the first node broadcasts a notification to each neighboring node; the broadcast notification is used to enable each neighboring node to confirm whether it can communicate with the destination node; for each neighboring node, if the neighboring node receives the broadcast notification and confirms that it can communicate with the destination node, the neighboring node is determined as the target neighboring node; the target neighboring node unicasts the third target communication path from the target neighboring node to the first node; the first node sends a transmission message to the target neighboring node, and from the target neighboring node, sequentially transmits the transmission message to each routing node in the third target communication path until the transmission message is transmitted to the destination node.
[0015] In some embodiments, the broadcast notification carries the destination node; for each neighboring node, upon receiving the broadcast notification, if the neighboring node finds the destination node in its neighboring node table or in its unique routing table, it determines that it can communicate with the destination node.
[0016] In some embodiments, the first node is used to determine a fourth target communication path from the source node to the destination node based on the third target communication path, and synchronously forward the fourth target communication path to the source node.
[0017] Thirdly, this application provides a computing device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the above-described routing repair method based on a wireless mesh network.
[0018] Fourthly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the above-described routing repair method based on a wireless mesh network.
[0019] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, implements the steps in the aforementioned route repair method based on a wireless mesh network.
[0020] The aforementioned route repair method, system, computer equipment, storage medium, and computer program product based on a wireless mesh network, according to the initial communication path from the source node to the destination node, sequentially sends transmission messages to the next-hop routing node starting from the source node. In the event of transmission message failure, it determines the first and second nodes that cannot communicate with each other. When it is determined that the first and second nodes cannot communicate, this application does not directly establish a route across the entire network. Instead, it first determines whether there is a backup first target path and selects the first target communication path from the alternative paths stored in the routing table of the first node. By directly obtaining the first target communication path, the communication between the first and second nodes is directly repaired, without needing to initiate route discovery across the entire network, thus improving the repair speed. The stored alternative paths are routing paths that do not overlap with the initial communication path. In the first target communication path, the routing nodes adjacent to the first node do not include the second node. Starting from the first node, transmission messages are sequentially transmitted to each routing node of the first target communication path until the transmission message is transmitted to the destination node, thereby completing the normal communication process from the source node to the destination node and effectively improving the route repair speed. Attached Figure Description
[0021] Figure 1 A flowchart illustrating a route repair method based on a wireless mesh network provided in this application embodiment;
[0022] Figure 2 This application provides a schematic diagram illustrating the positional relationship between routing nodes in an embodiment.
[0023] Figure 3 A schematic diagram of a routing table provided for an embodiment of this application;
[0024] Figure 4 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;
[0025] Figure 5 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;
[0026] Figure 6 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;
[0027] Figure 7 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;
[0028] Figure 8 A schematic diagram of the structure of a route repair system based on a wireless mesh network provided in an embodiment of this application;
[0029] Figure 9This is an internal structural diagram of a computer device provided in an embodiment of this application. Detailed Implementation
[0030] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0031] In some embodiments, such as Figure 1 As shown, a route repair method based on a wireless mesh network is provided. This method is illustrated using the interaction between routing nodes as an example, and includes the following steps:
[0032] Step 102: Following the initial communication path from the source node to the destination node, send transmission messages sequentially from the source node to the next-hop routing node, and in the event of a transmission message failure, determine the first and second nodes that cannot communicate with each other.
[0033] In this context, the source node refers to the routing node that initiates wireless communication with another routing node in the wireless network, and the destination node refers to the routing node that the source node wants to communicate with in the wireless network. Initial communication refers to the pre-determined communication path from the source node to the destination node, and message transmission refers to the message that the source node wants to send to the destination node.
[0034] It should be noted that the source node and destination node can be either the central node or a non-central node in the routing network; this application does not impose specific restrictions on this. The central node is the initiator of the wireless network, typically integrated within a gateway or central control unit, while non-central nodes are routing nodes in the wireless network other than the central node.
[0035] In some embodiments, the central node can be a home gateway, central control unit, or smart device, such as a multi-functional speaker. Other routing nodes, i.e., non-central nodes, can be various smart devices. The central node is the central point for the vast majority of information within the wireless network, and it also handles the largest amount of data and the most frequent communication. For example, when a user controls a non-central node via voice commands or software, commands must be issued through the central node. Similarly, most information reported by non-central nodes must also be reported to the central node for centralized processing.
[0036] For example, such as Figure 2The diagram illustrates the positional relationships between routing nodes in a wireless network, including a central node and non-central nodes. This wireless network has a total of 8 routing nodes: Node 1, Node 2, Node 3, Node 4, Node 5, Node 6, Node 7, and Node 8. Node 1 is the initiator of the wireless network and its central node. The other routing nodes besides the central node are non-central nodes, such as Nodes 2, 3, 4, 5, 6, 7, and 8. Figure 2 The wireless network shown represents a non-central node. This can be understood as... Figure 2 In the wireless network shown, the first and second nodes can be determined from nodes 2, 3, 4, 5, 6, 7, and 8.
[0037] It should be noted that, Figure 2 In a diagram, two routing nodes connected by a dashed line represent that they can communicate directly with each other and are adjacent nodes. The numbers on the dashed line represent the signal values between the two connected routing nodes, for example... Figure 2 A dashed line connects nodes 1 and 4, indicating that nodes 1 and 4 can communicate directly with each other, and the signal value between nodes 1 and 4 is 1. The signal strength reflected by the signal value can be divided into multiple levels, such as a signal value of 1 being the first level, a signal value of 2 being the second level, and so on. The smaller the signal value, the stronger the signal, and the larger the signal value, the weaker the signal.
[0038] In other cases, the absence of a direct dashed line connecting routing nodes indicates that they cannot communicate directly and that these two routing nodes are not adjacent. If these two routing nodes need to communicate, they must relay the information through other routing nodes. For example, if nodes 4 and 6 are not connected by a dashed line, it means that nodes 4 and 6 cannot communicate directly. If node 4 needs to communicate with node 6, it must do so through other routing nodes, such as node 5.
[0039] It's understandable that in a wireless network with multiple routing nodes, communication between these nodes is necessary, but a single hop to the destination node is not always possible. Therefore, it's crucial to establish communication paths from each routing node to the destination node, such as the central node. This path establishment process is called route discovery. During the central node's route discovery process, each non-central node stores its own communication path to the central node. Furthermore, in addition to route discovery at the central node, communication paths between the central node and non-central nodes also need to be established to enable bidirectional communication between them. In other cases, non-central nodes may also need to communicate with each other. Therefore, bidirectional communication between two non-central nodes can be achieved through non-central node route discovery, building upon the central node's route discovery. Through these methods, each routing node can establish communication paths from itself to other nodes and synchronously save them to its routing table.
[0040] Specifically, the source node sends transmission messages sequentially to the next-hop routing node according to the initial communication path from the source node to the destination node. If the transmission message fails to be sent, the routing node that cannot successfully send the transmission message to the next-hop routing node is identified as the first node, and the next-hop routing node of the first node is identified as the second node.
[0041] In practical applications, if the wireless signal is unstable, the location of the wireless device is moved, or obstructions are added, the initial communication path that was originally able to communicate may become unusable.
[0042] In some embodiments, such as Figure 3 The routing table shown stores the communication paths from each non-central node to the central node. Specifically, the routing table includes all paths from nodes 2, 3, 4, 5, 6, 7, and 8 to node 1. LQ represents the link quality of the corresponding path, and LIST represents the corresponding path. It should be noted that the routing table for each central node (nodes 2 through 8) is stored in the memory of that routing node itself and will not be updated until the next time the central node initiates route discovery. It can be understood that the initial communication path determined by the source node can be the first path from the source node to the destination node in the routing table.
[0043] For example, suppose Figure 2 The source node is node 8, and the destination node is node 1. Figure 3 The routing table shown shows the first and second paths from node 8 to node 1. Therefore, the first path (LIST: 1-5-7-8) is selected as the initial communication path from node 8 to node 1. For example... Figure 4As shown, after determining the initial communication path, node 8 first sends the transmission message to node 7. Then, node 7 tries to send the transmission message to the next hop routing node, that is, when node 7 sends the transmission message to node 5, it finds that the transmission message cannot be sent. For example, if node 5 does not receive or respond after resending the transmission message N times, then node 7 can be determined as the first node and node 5 can be determined as the second node.
[0044] Step 104: Select the first target communication path from the first node to the destination node from the alternative paths stored in the routing table of the first node.
[0045] The routing table of the first node stores the communication paths from the first node to other routing nodes in the wireless network. This communication path can include only one optimal path, or it can include at least one alternative communication path in addition to the optimal path. The stored alternative paths are routing paths that do not overlap with the initial communication path.
[0046] Specifically, if the routing table stores alternative paths from the first node to the destination node, and there is only one alternative path, this alternative path can be directly used as the first target communication path from the first node to the destination node. Alternatively, if multiple alternative paths are determined from the routing table, one of the alternative paths can be selected as the first target communication path. It is understandable that, since the first node and the second node cannot communicate normally, the routing nodes adjacent to the first node in the determined first target communication path cannot include the second node.
[0047] For example, according to such Figure 3 The routing table shown determines the initial communication path from node 8 to node 1, i.e., LIST: 1-5-7-8. During message transmission along this path, if node 7 fails to send a message to node 5, then node 7 is identified as the first node and node 5 as the second node. This can be achieved through... Figure 2 The first path list (LIST: 1-5-7) and the second path list (LIST: 1-5-6-7) for node 7 are used to determine alternative paths. Since the first path of node 7 overlaps with the initial communication path from node 8 to node 1, this path cannot be used as an alternative path for node 7. Since the second path of node 7 does not overlap with the initial communication path from node 8 to node 1, this path can be used as an alternative path for node 7. Furthermore, since node 7 has only one alternative path, the second path of node 7 can be directly used as the first target communication path from the first node to the destination node.
[0048] Step 106: Starting from the first node, transmit the transmission message sequentially to each routing node of the first target communication path until the transmission message is transmitted to the destination node.
[0049] Specifically, starting from the first node, the transmission message is transmitted to each routing node in the first target communication path in the order of the routing nodes in the first target communication path, until the transmission message is transmitted to the destination node.
[0050] For example, according to Figure 3 The routing table shown can determine the first target communication path from node 7 to node 1, i.e., LIST: 1-5-6-7. Therefore, if node 7 cannot send the transmission message to node 5, it can send the transmission message to node 6. After receiving the transmission message, node 6 can forward it to node 5, and then node 5 can send the received transmission message to node 1, thereby completing the rapid repair of the route.
[0051] The aforementioned route repair method based on a wireless mesh network, following the initial communication path from the source node to the destination node, sequentially sends transmission messages to the next-hop routing node starting from the source node. In the event of transmission message failure, it identifies the first and second nodes that cannot communicate with each other. Instead of directly establishing a route across the entire network when the first and second nodes are determined to be unable to communicate, this application first determines if there is an alternative first target path. It then selects the first target communication path from the alternative paths stored in the routing table of the first node. By directly obtaining the first target communication path, communication between the first and second nodes is directly repaired, eliminating the need for a network-wide route discovery and improving repair speed. The stored alternative paths are routing paths that do not overlap with the initial communication path. In the first target communication path, the routing nodes adjacent to the first node do not include the second node. Starting from the first node, transmission messages are sequentially transmitted to each routing node along the first target communication path until the transmission message reaches the destination node, thus completing the normal communication process from the source node to the destination node and effectively improving route repair speed.
[0052] In some embodiments, step 104 specifically includes, but is not limited to, the step of: when there are multiple alternative paths, determining a first target communication path from the first node to the destination node from each alternative path based on the alternative path quality of each alternative path.
[0053] Specifically, when there are multiple candidate paths for the first node, not only can one path be randomly selected as the first target communication path, but the quality of the candidate paths can also be considered. For example, the link quality, which reflects the signal strength between two routing nodes, can be used to select the first target communication path from the first node with the best quality among all candidate paths. This application improves the communication quality based on the first target communication path by selecting the best path from the candidate paths.
[0054] In some embodiments, the routing repair method based on a wireless mesh network of this application further includes, but is not limited to, the following steps: if the routing table of the first node does not store alternative paths, starting from the first node, gradually initiate a network-wide broadcast to each routing node in the entire network; after receiving the network-wide broadcast, the destination node performs route discovery based on the routing discovery information in the network-wide broadcast to determine the second target communication path between the source node and the destination node.
[0055] The second target communication path refers to the higher-quality path among the reachable paths between the source and destination nodes. This can be understood as the path with the fewest hops or links among the reachable paths between the source and destination nodes. The second target communication path is broadcast across the network carrying routing discovery information and the destination node, used to perform route discovery. The routing discovery information refers to the information used to empower the destination node to perform route discovery.
[0056] It should be noted that network-wide broadcasts are different from route discovery broadcasts. Network-wide broadcasts are received and forwarded immediately by each routing node, and all routing nodes will only forward them once. There is no random delay like with route discovery broadcasts, which ensures that all routing nodes in the wireless network will receive the broadcast within a short period of time.
[0057] Specifically, if no alternative path is stored in the routing table of the first node, the first node can trigger a network-wide broadcast. That is, starting from the first node, the first node can send a network-wide broadcast to its neighboring nodes, and the neighboring nodes in turn send network-wide broadcasts to their neighboring nodes, thus gradually initiating a network-wide broadcast from the first node to all routing nodes in the network. After the destination node receives the network-wide broadcast from its neighboring nodes, the destination node performs route discovery based on the route discovery information carried in the network-wide broadcast to determine the second target communication path between the source node and the destination node. It can be understood that the route discovery process of the destination node is similar to that of the central node, with the aim of establishing communication paths from routing nodes other than the destination node to the destination node, including the communication path from the source node to the destination node. Even when no alternative path is available for the first node, this application can still enable the destination node to establish route discovery by triggering a network-wide broadcast, ensuring normal route repair.
[0058] For example, such as Figure 5 As shown, assuming node 5 is the source node and node 8 is the destination node, and according to... Figure 3The routing table in the database determines the initial communication path from node 5 to node 8 as LIST: 5-7-8. Since node 5 and node 7 cannot communicate, node 5 can trigger a network-wide broadcast. All routing nodes will immediately forward the broadcast upon receiving it. It's understandable that node 8 might receive a network-wide broadcast from node 7 or node 6. After discovering that the destination address in the broadcast matches its own, node 8 will immediately initiate route discovery, establishing a path like... Figure 6 The tree-like network structure shown has node 8 as the root node. The second target communication path between node 5 and node 8 is obtained, i.e., LIST: 5-6-8. Node 5 can then send the transmission message to node 6 according to this path, and node 6 will forward it to node 8, thus repairing the path. It can be understood that after removing... Figure 6 After an unreachable link in the middle, we can get the following: Figure 7 The network structure shown.
[0059] In some embodiments, the step "after receiving the network-wide broadcast, the destination node performs route discovery based on the route discovery information in the network-wide broadcast to determine the second target communication path between the source node and the destination node" specifically includes, but is not limited to, the following: after receiving the network-wide broadcast, the destination node establishes a node network structure based on the route discovery information; starting from the destination node, it progressively forwards the directed route discovery broadcast pointing to the source node to the neighboring nodes in the node network structure until it is forwarded to the source node; the source node determines the second target communication path between the source node and the destination node according to the best path carried in the received directed route discovery broadcast, so that the destination node and the source node communicate according to the second target communication path.
[0060] In this node network structure, the destination node is the root node, and the routing nodes other than the destination node are non-root nodes.
[0061] A route discovery broadcast is a broadcast initiated by the destination node in a wireless network and forwarded by all routing nodes in the network except the destination node to achieve route discovery for the destination node. By forwarding the route discovery broadcast in the wireless network, the communication paths from each routing node to the destination node can be obtained.
[0062] Directed route discovery broadcasts, compared to regular route discovery broadcasts, carry the address of the source node. This allows the source node to automatically return the best path from the source node to the destination node after receiving a directed route discovery broadcast initiated by the destination node, enabling the destination node to synchronize and save the path.
[0063] In addition, each routing node forwards a directed route discovery broadcast to its neighboring nodes, carrying the best path determined by the routing node. This best path is the optimal path from the routing node to the destination node. It can be understood that the best path determined by the routing node is the path with the fewest hops or links among the reachable paths from the routing node to the destination node.
[0064] Specifically, the destination node establishes a node network structure with itself as the root node and all other routing nodes as non-root nodes based on the routing discovery information in the received path forwarding message. The destination node generates a directed routing discovery broadcast pointing to the source node based on the routing discovery identifier. Starting from the destination node, each routing node forwards the optimal path determined by each routing node carried in the directed routing discovery broadcast to its adjacent nodes in the network structure. The source node selects a target path from the optimal paths carried in the received directed routing discovery broadcast. Adding the source node to the selected target path yields the second target communication path from the source node to the destination node. After the source node determines the second target communication path, it sequentially returns the first target communication path to the destination node through each routing node traversed by the second target communication path, starting from the source node. This allows the destination node to determine the second target communication path from the destination node to the source node, thus achieving bidirectional communication between the source and destination nodes and ensuring real-time communication between non-central nodes without routing information.
[0065] To facilitate understanding, let's illustrate with an example. Assume the source node is node 8, the destination node is node 3, and the routing node hop of the source node is node 6. After receiving a directed route discovery broadcast from node 6, node 8 determines the optimal path as: Node 3 -> Node 6. If node 8 only receives the directed route discovery broadcast from node 6, it directly adds itself to the optimal path determined by node 6, resulting in the second target communication path from node 8 to node 3: Node 3 -> Node 6 -> Node 8. If node 8 receives not only the directed route discovery broadcast from node 6 but also broadcasts from other routing nodes, such as node 7, then node 8 first selects one of the two optimal paths determined by nodes 6 and 7 as the target path and adds itself to that path, also resulting in the second target communication path from node 8 to node 3. After determining the second target communication path, node 8 can then return it to node 3. If the second target communication path determined by node 8 is: node 3->node 6->node 8, then node 8 sends the second target communication path to node 6, and node 6 then forwards the second target communication path to node 3 to obtain the communication path from node 3 to node 6, which is the second target communication path.
[0066] In some embodiments, the routing repair method based on a wireless mesh network of this application further includes, but is not limited to, the following steps: when no alternative path is stored in the routing table of the first node, the first node initiates a broadcast notification to each neighboring node; for each neighboring node, if the neighboring node receives the broadcast notification and confirms that it can communicate with the destination node, the neighboring node is determined as the target neighboring node; the target neighboring node unicasts the third target communication path from the target neighboring node to the first node; the first node sends a transmission message to the target neighboring node, and from the target neighboring node, sequentially transmits the transmission message to each routing node in the third target communication path until the transmission message is transmitted to the destination node.
[0067] The broadcast notification is sent to the neighboring nodes of the first node and is used to confirm with each neighboring node whether communication with the destination node is possible. It should be noted that this broadcast notification differs from a regular route discovery broadcast; it is not forwarded, significantly reducing network overhead and latency.
[0068] Specifically, if no alternative path is stored in the routing table of the first node, the first node can broadcast a notification to each neighboring node. For each neighboring node, if it receives the broadcast notification and confirms that it can communicate directly with the destination node, or confirms that a communication path exists with the destination node, it determines the neighboring node as the target neighboring node. The target neighboring node can then unicast the third target communication path from the target neighboring node to the first node according to its stored neighboring node table or unique path table. After receiving the third target communication path sent by the target neighboring node, the first node sends the transmission message to the target neighboring node, and from the target neighboring node, sequentially transmits the transmission message to each routing node in the third target communication path according to the order of the routing nodes in the third target communication path, until the transmission message is transmitted to the destination node. This application, by setting a third route repair mechanism, namely the neighboring node-assisted discovery mechanism, can use neighboring nodes to find a third target communication path that can be repaired, thereby reducing the overhead caused by route discovery and improving the speed of route repair.
[0069] In some embodiments, the broadcast notification carries the destination node. The routing repair method based on the wireless mesh network in this application further includes, but is not limited to, the following steps: for each neighboring node, after the neighboring node receives the broadcast notification, if the destination node is found in the neighboring node table stored by the neighboring node, or the unique path from the neighboring node to the destination node is found in the unique routing table stored by the neighboring node, then it is determined that the neighboring node can communicate with the destination node.
[0070] The neighbor node table refers to a storage table that stores the routing nodes adjacent to a given routing node. In some embodiments, the neighbor node table includes not only the neighboring nodes of a given routing node, but also the signal quality and communication status of the routing node and its neighboring nodes.
[0071] To facilitate understanding, let's illustrate with an example. Suppose node 3 wants to send data to node 6, or node 6 wants to send data to node 3. If nodes 3 and 6 are neighbors, node 3 can communicate directly with node 6. During the routing discovery process at the central node, a neighbor table can be established for each routing node. Each routing node, upon receiving a routing discovery broadcast from another routing node, will add that other routing node to its own neighbor table and simultaneously record the signal quality of this communication in its neighbor table, updating it during the next routing discovery process at the central node. If a routing node has not received a routing discovery broadcast from a neighbor node for more than N periods (e.g., 3 periods), then that routing node considers that neighbor node invalid and removes it from its own neighbor table. A period is defined as each data packet received by a routing node from its neighbor node.
[0072] It should be noted that if a routing node considers its neighbor to be invalid, and does not remove the neighbor, the non-existent neighbor may still be included in the subsequent communication path discovery process, resulting in unnecessary retransmission overhead. At the same time, removing the neighbor can free up memory resources for other neighbor nodes, thus saving memory resources.
[0073] A unique routing path refers to a unique communication path from one routing node to another. A unique routing table is a storage table that stores at least one unique routing path from one routing node to other routing nodes.
[0074] Specifically, for each neighboring node of the first node, after receiving the broadcast notification, if the neighboring node finds the destination node in the neighboring node table stored in the neighboring node, or finds the unique communication path from the neighboring node to the destination node in the unique path table stored in the neighboring node, then it is determined that the neighboring node can communicate with the destination node.
[0075] In some embodiments, after the step "the target neighbor node unicasts the third target communication path from the target neighbor node to the destination node to the first node", the routing repair method based on the wireless Mesh network of this application further includes, but is not limited to, the step of: the first node determines the fourth target communication path from the source node to the destination node according to the third target communication path, and synchronously forwards the fourth target communication path to the source node.
[0076] Specifically, the first node can combine the third target communication path with the path from the source node to the first node to determine the communication path from the source node to the destination node, i.e., the fourth target communication path, and then forward the fourth target communication path to the source node synchronously.
[0077] To make it easier to understand, let's take an example: the source node is node 5, and the destination node is node 8. Figure 3 The routing table in the system determines the communication path from node 5 to node 8 as: Node 5 -> Node 7 -> Node 8. If node 5 and node 7 disconnect at this point, and node 7 fails to retransmit after multiple attempts, node 7 will send a broadcast notification to its neighbors, informing all of node 5's neighbors which nodes can directly reach node 8. Assuming only node 6 can directly reach node 8, node 6 can unicast a reply to node 7 indicating that node 6 can reach node 8. Next, node 7 can forward the data that failed to reach node 8 to node 6, and node 6 will then forward it to node 8, completing the route repair from node 5 to node 8. Then, node 7 can return the determined new path to node 5, allowing node 5 to update its path. Simultaneously, the routes along the path will also update their unique routing tables according to the new path.
[0078] In some embodiments, the route repair method based on a wireless mesh network of this application further includes, but is not limited to, the following steps:
[0079] According to the initial communication path from the source node to the destination node, transmission messages are sent sequentially from the source node to the next hop routing node, and in the event of a transmission message failure, the first and second nodes that cannot communicate with each other are determined.
[0080] If the routing table of the first node stores multiple alternative paths, a first target communication path from the first node to the destination node is determined based on the quality of each alternative path. Starting from the first node, transmission messages are sequentially transmitted to each routing node along the first target communication path until the transmission message is delivered to the destination node. If the routing table of the first node does not store any alternative paths, the second target communication path determination step is executed, or the neighbor node assisted discovery step and the path synchronization step are executed.
[0081] Starting from the first node, a network-wide broadcast is initiated progressively to all routing nodes in the network. This broadcast carries routing discovery information for route discovery and the destination node. Upon receiving the broadcast, the destination node establishes a node network structure based on the routing discovery information. From the destination node, directed routing discovery broadcasts pointing to the source node are forwarded progressively to neighboring nodes in the node network structure until they reach the source node. The source node determines a second target communication path between itself and the destination node based on the optimal path carried in the received directed routing discovery broadcast, enabling communication between the two nodes—this is the second target communication path determination step.
[0082] The source node broadcasts a notification to all neighboring nodes. For each neighboring node, upon receiving the broadcast notification, if it finds the destination node in its neighbor table or a unique path from the neighboring node to the destination node in its unique routing table, then it determines that the neighboring node can communicate with the destination node. If a neighboring node receives the broadcast notification and confirms its ability to communicate with the destination node, it designates that neighboring node as the target neighboring node. The target neighboring node unicasts the third target communication path from itself to the first node. The first node sends a transmission message to the target neighboring node, and from the target neighboring node onwards, sequentially transmits the transmission message to each routing node in the third target communication path until the transmission message is delivered to the destination node; this is the neighboring node assisted discovery step.
[0083] The first node determines the fourth target communication path from the source node to the destination node based on the third target communication path, and synchronously forwards the fourth target communication path to the source node, which is the path synchronization step.
[0084] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0085] Based on the same inventive concept, this application also provides a wireless mesh network-based routing repair system for implementing the aforementioned routing repair method. The solution provided by this system is similar to the implementation described in the above method. Therefore, the specific limitations of one or more embodiments of the wireless mesh network-based routing repair system provided below can be found in the limitations of the wireless mesh network-based routing repair method described above, and will not be repeated here.
[0086] refer to Figure 8 This is a schematic diagram illustrating the structure of a route repair system based on a wireless mesh network, provided in an embodiment of this application. In some embodiments, such as... Figure 8 As shown, a route repair system based on a wireless mesh network is provided, including multiple routing nodes; the multiple routing nodes include a source node 802, a destination node 804, and a first node 806; the first node 806 is a routing node that cannot communicate with the second node of the next hop during the transmission of a message according to the initial communication path; the initial communication path is the initial communication path from the source node 802 to the destination node 804.
[0087] First node 806 is used to select a first target communication path from the alternative paths stored in the routing table of first node 806 to destination node 804 in the event that the transmission message fails to be sent to the second node in the next hop. The stored alternative paths are routing paths that do not repeat the initial communication path. In the first target communication path, the routing nodes adjacent to first node 806 do not include the second node.
[0088] Starting from the first node 806, the transmission message is sequentially transmitted to each routing node of the first target communication path until the transmission message is transmitted to the destination node 804.
[0089] The aforementioned route repair system based on a wireless mesh network, following the initial communication path from source node 802 to destination node 804, sequentially sends transmission messages to the next-hop routing node starting from source node 802. In the event of a transmission message failure, it determines that the first node 806 and the second node cannot communicate with each other. When this application determines that the first node 806 and the second node cannot communicate with each other, it does not directly establish a route across the entire network. Instead, it first determines whether there is an alternative first target path and selects the first target communication path from the alternative paths stored in the routing table of the first node 806 to the destination node 804. The communication between the first node 806 and the second node is directly repaired by directly obtaining the first target communication path, without needing to initiate route discovery across the entire network, thus improving the repair speed. The stored alternative paths are routing paths that do not overlap with the initial communication path. In the first target communication path, the routing nodes adjacent to the first node 806 do not include the second node. Starting from the first node 806, transmission messages are sequentially transmitted to each routing node in the first target communication path until the transmission message is transmitted to the destination node 804, thereby completing the normal communication process from the source node 802 to the destination node 804 and effectively improving the route repair speed.
[0090] In some embodiments, the first node 806 is used to determine a first target communication path from the first node 806 to the destination node 804 from each candidate path based on the candidate path quality when there are multiple candidate paths.
[0091] In some embodiments, the first node 806 is further configured to, when the routing table of the first node 806 does not store alternative paths, initiate a network-wide broadcast from the first node 806 to each routing node in the entire network step by step. The network-wide broadcast carries routing discovery information for performing route discovery and the destination node 804. After receiving the network-wide broadcast, the destination node 804 performs route discovery based on the routing discovery information in the network-wide broadcast to determine the second target communication path between the source node 802 and the destination node 804.
[0092] In some embodiments, after receiving a network-wide broadcast, the destination node 804 establishes a node network structure based on routing discovery information. The node network structure has the destination node 804 as the root node and the routing nodes other than the destination node 804 as non-root nodes. Starting from the destination node 804, the directional routing discovery broadcasts pointing to the source node 802 are forwarded step by step to the neighboring nodes in the node network structure until they reach the source node 802. Each routing node carries the best path determined by the routing node in the directional routing discovery broadcasts forwarded to its neighboring nodes. The best path determined by the routing node is the best path from the routing node to the destination node 804. The source node 802 determines a second target communication path between the source node 802 and the destination node 804 according to the best path carried in the received directional routing discovery broadcasts, so that the destination node 804 and the source node 802 communicate according to the second target communication path.
[0093] In some embodiments, if no alternative path is stored in the routing table of the first node 806, the first node 806 broadcasts a notification to each neighboring node; the broadcast notification is used to enable each neighboring node to confirm whether it can communicate with the destination node 804; for each neighboring node, if the neighboring node receives the broadcast notification and confirms that it can communicate with the destination node 804, the neighboring node is determined as the target neighboring node; the target neighboring node unicasts the third target communication path from the target neighboring node to the destination node 804 to the first node 806; the first node 806 sends the transmission message to the target neighboring node, and from the target neighboring node, sequentially transmits the transmission message to each routing node in the third target communication path until the transmission message is transmitted to the destination node 804.
[0094] In some embodiments, the broadcast notification carries the destination node 804; for each neighboring node, after receiving the broadcast notification, if the neighboring node finds the destination node 804 in its neighboring node table or in its unique routing table, it determines that the neighboring node can communicate with the destination node 804.
[0095] In some embodiments, the first node 806 is used to determine a fourth target communication path from the source node 802 to the destination node 804 based on the third target communication path, and synchronously forward the fourth target communication path to the source node 802.
[0096] In some embodiments, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 9As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When executed by the processor, the computer program implements a route repair method based on a wireless mesh network. The display unit is used to form a visually visible image and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0097] Those skilled in the art will understand that Figure 9 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0098] In some embodiments, a computer device is also provided, the computer device including a memory and a processor, the memory storing a computer program, the processor executing the computer program to implement the steps in the above method embodiments.
[0099] In some embodiments, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.
[0100] In some embodiments, a computer program product is provided, which includes a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0101] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0102] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0103] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A route repair method based on a wireless mesh network, characterized in that, The method includes: According to the initial communication path from the source node to the destination node, transmission messages are sent sequentially from the source node to the next-hop routing node. If the transmission message fails to be sent, a first node and a second node that cannot communicate with each other are determined. The first node is the routing node that cannot successfully send the transmission message to the next-hop routing node, and the second node is the next-hop routing node of the first node. If alternative paths are stored in the routing table of the first node, a first target communication path from the first node to the destination node is selected from the alternative paths stored in the routing table of the first node; the routing table of the first node stores communication paths from the first node to other routing nodes in the wireless network, and the stored alternative paths are routing paths that do not overlap with the initial communication path; in the first target communication path, the routing nodes adjacent to the first node do not include the second node; Starting from the first node, the transmission message is sequentially transmitted to each routing node of the first target communication path until the transmission message is transmitted to the destination node.
2. The method according to claim 1, characterized in that, The step of selecting a first target communication path from the first node to the destination node from the candidate paths stored in the routing table of the first node includes: When there are multiple alternative paths, the first target communication path from the first node to the destination node is determined from the alternative paths based on the quality of each alternative path.
3. The method according to claim 1, characterized in that, The method further includes: If the routing table of the first node does not store alternative paths, starting from the first node, a network-wide broadcast is initiated step by step to all routing nodes in the entire network. The network-wide broadcast carries routing discovery information for performing route discovery and the destination node. After receiving the network-wide broadcast, the destination node performs route discovery based on the route discovery information in the network-wide broadcast to determine the second target communication path between the source node and the destination node.
4. The method according to claim 3, characterized in that, After receiving the network-wide broadcast, the destination node performs route discovery based on the route discovery information in the network-wide broadcast to determine a second target communication path between the source node and the destination node, including: After receiving the network-wide broadcast, the destination node establishes a node network structure based on the routing discovery information; the node network structure has the destination node as the root node and the routing nodes other than the destination node as non-root nodes; Starting from the destination node, the directed route discovery broadcasts pointing to the source node are forwarded step by step to the neighboring nodes in the node network structure until they are forwarded to the source node; each route discovery broadcast forwarded to the neighboring nodes carries the best path determined by the route node; the best path determined by the route node is the best path from the route node to the destination node; The source node discovers the best path carried in the broadcast based on the received directional route, determines the second target communication path between the source node and the destination node, and enables the destination node and the source node to communicate according to the second target communication path.
5. The method according to any one of claims 1 to 4, characterized in that, The method further includes: If no alternative path is stored in the routing table of the first node, the first node sends a broadcast notification to each neighboring node; the broadcast notification is used to enable each neighboring node to confirm whether it can communicate with the destination node. For each neighboring node, if the neighboring node receives the broadcast notification and confirms that it can communicate with the destination node, the neighboring node is determined as the target neighboring node; The target neighbor node unicasts the third target communication path from the target neighbor node to the destination node to the first node; The first node sends the transmission message to the target neighbor node, and from the target neighbor node, sequentially transmits the transmission message to each routing node in the third target communication path until the transmission message is transmitted to the destination node.
6. The method according to claim 5, characterized in that, The broadcast notification carries the destination node; the method further includes: For each neighboring node, after receiving the broadcast notification, if the neighboring node finds the destination node in its neighboring node table or in its unique routing table, then it is determined that the neighboring node can communicate with the destination node.
7. The method according to claim 5, characterized in that, After the target neighbor node unicasts the third target communication path from the target neighbor node to the destination node to the first node, the method further includes: The first node determines a fourth target communication path from the source node to the destination node based on the third target communication path, and synchronously forwards the fourth target communication path to the source node.
8. A route repair system based on a wireless mesh network, characterized in that, The system includes: multiple routing nodes; the multiple routing nodes include a source node, a destination node, and a first node; the first node is a routing node that cannot communicate with the second node of the next hop during the transmission of a message according to the initial communication path; the initial communication path is the initial communication path from the source node to the destination node; The first node is configured to select a first target communication path from the alternative paths stored in the routing table of the first node, in the case that the transmission message fails to be sent to the second node at the next hop, and the routing table of the first node stores alternative paths; the routing table of the first node stores communication paths from the first node to other routing nodes in the wireless network, and the stored alternative paths are routing paths that do not overlap with the initial communication path; in the first target communication path, the routing nodes adjacent to the first node do not include the second node; Starting from the first node, the transmission message is sequentially transmitted to each routing node of the first target communication path until the transmission message is transmitted to the destination node.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.