Wireless mesh network-based central node route discovery method and related device

By comparing the path validity of route discovery broadcasts in a wireless mesh network, and updating and forwarding route discovery broadcasts only on valid paths, the problem of repeated forwarding by routing nodes is solved, reducing network overhead and improving efficiency.

CN115714998BActive Publication Date: 2026-05-12SHENZHEN OURUIBO ELECTRONICS
View PDF 1 Cites 0 Cited by

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-05-12

AI Technical Summary

Technical Problem

In wireless mesh networks, routing nodes are prone to duplicate forwarding when forwarding route discovery broadcasts, leading to increased network overhead.

Method used

By obtaining the route discovery broadcast forwarded by the previous hop routing node, comparing whether the best path of the previous hop is duplicated with the current hop routing node, and only updating and forwarding the route discovery broadcast if there is a valid path, the duplicate forwarding is avoided.

Benefits of technology

It reduces network overhead during route discovery, improving the efficiency and accuracy of route discovery.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115714998B_ABST
    Figure CN115714998B_ABST
Patent Text Reader

Abstract

The application relates to a central node routing discovery method based on a wireless Mesh network and related equipment, and relates to the technical field of wireless networks. The method comprises the following steps: acquiring a routing discovery broadcast forwarded by a previous-hop routing node to a current-hop routing node; determining the validity of the best path of the previous hop by comparing each routing node passed through by the best path of the previous hop with the current-hop routing node; in the case that the best path of the previous hop is valid, determining the best path of the current hop according to the current-hop routing node and the best path of the previous hop, and updating the routing discovery broadcast according to the best path of the current hop; forwarding the updated routing discovery broadcast to a next-hop routing node, and taking the next-hop routing node as the current-hop routing node to continue the routing discovery until the best paths of all the routing nodes to the central node are determined. The method can reduce the network overhead of routing discovery.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of wireless network technology, and in particular to a central node routing discovery 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. These smart home devices require the use of wireless network technologies during use. Generally, in wireless network technology, when routing nodes need to communicate with each other but cannot reach the destination node (such as the central node) in a single hop, it is necessary to establish paths from each routing node to the destination node. This path establishment process is called route discovery.

[0003] In traditional route discovery methods, each routing node forwards the received route discovery broadcast to the next-hop routing node, which then forwards it again. However, in some cases, the route discovery broadcast forwarded by a routing node to the next-hop routing node may have already been forwarded by that node, resulting in duplicate forwarding and thus impacting the overhead of the wireless network. Summary of the Invention

[0004] Therefore, it is necessary to provide a central node routing discovery method and related equipment based on wireless mesh networks that can reduce the network overhead of routing discovery, in order to address the above-mentioned technical problems.

[0005] In a first aspect, this application provides a method for discovering routes at a central node in a wireless mesh network, the method comprising:

[0006] Obtain the route discovery broadcast forwarded by the previous hop routing node to the current hop routing node; wherein, the route discovery broadcast carries the best path of the previous hop, the best path of the previous hop is the best path from the previous hop routing node to the central node; the central node is the first hop routing node;

[0007] The validity of the optimal path of the previous hop is determined by comparing each routing node traversed by the optimal path of the previous hop with the routing node of the current hop.

[0008] If the best path of the previous hop is valid, the best path of the current hop is determined based on the current hop routing node and the best path of the previous hop, and the route discovery broadcast is updated based on the best path of the current hop;

[0009] The updated route discovery broadcast is forwarded to the next-hop route node, and the next-hop route node is used as the current hop route node to continue performing route discovery until the best path from each route node to the central node is determined.

[0010] Secondly, this application provides a central node routing discovery system based on a wireless mesh network, the system comprising: a central node and multiple routing nodes;

[0011] The current hop routing node among multiple routing nodes is used to obtain the route discovery broadcast forwarded to it by the previous hop routing node. This broadcast carries the best path from the previous hop, which is the optimal path from the previous hop routing node to the central node. The central node is the first-hop routing node. The validity of the previous hop's best path is determined by comparing it with each routing node along that path. If the previous hop's best path is valid, the current hop's best path is determined based on the current hop routing node and the previous hop's best path, and the route discovery broadcast is updated accordingly. The updated route discovery broadcast is forwarded to the next-hop routing node, which is then used as the current hop routing node to continue route discovery until the optimal path from each routing node to the central node is determined.

[0012] In some embodiments, the route discovery broadcast forwarded by the previous hop routing node also carries the identifier of this broadcast; the current hop routing node is further configured to: obtain a set of broadcast identifiers from previous broadcasts; the broadcast identifiers are the identifiers of historical route discovery broadcasts forwarded by the current hop routing node; if the current broadcast identifier is included in the set, determine that the current hop routing node does not perform route discovery.

[0013] In some embodiments, the current hop routing node is further configured to: when there are multiple previous hop routing nodes, generate multiple candidate paths for the current hop based on the best path of each previous hop and the current hop routing node; and perform path filtering on each candidate path for the current hop based on the number of candidate path hops and the quality of the candidate path corresponding to each candidate path for the current hop, so as to determine the best path for the current hop.

[0014] In some embodiments, the current hop routing node is further configured to: filter out the target candidate path of the current hop from the candidate paths of each current hop according to the number of candidate path hops corresponding to each candidate path of the current hop; and, if there are multiple target candidate paths of the current hop, determine the best path of the current hop from the target candidate paths of the current hop according to the quality of the candidate path corresponding to each target candidate path of the current hop.

[0015] In some embodiments, the alternative paths for each current hop are stored in the corresponding routing table; the current hop routing node is also used to: synchronously store the determined best path for the current hop in the routing table.

[0016] In some embodiments, the target routing node in each routing node is used to: select a target path from the alternative paths stored in the routing table corresponding to the target routing node when communication with the central node fails based on the corresponding best path; and communicate with the central node based on the target path.

[0017] In some embodiments, the current hop routing node is further configured to: determine the time point at which the current hop routing node receives the route discovery broadcast, and the forwarding window of the current hop routing node; the forwarding window is used to control the current hop routing node to forward the updated route discovery broadcast within the time range of the forwarding window; the forwarding window of the current hop routing node is determined by the layer to which the current hop routing node is located; determine the forwarding time range of the updated route discovery broadcast based on the time point of receipt and the forwarding window; and forward the updated route discovery broadcast to the next hop routing node based on a random time point within the forwarding time range.

[0018] Thirdly, this application provides a computing device, including a memory and a processor. The memory stores a computer program, and when the processor executes the computer program, it implements the steps of the above-described central node routing discovery method based on a wireless mesh network.

[0019] 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 central node routing discovery method based on a wireless mesh network.

[0020] 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 central node route discovery method based on a wireless mesh network.

[0021] The aforementioned routing discovery method, system, computer device, storage medium, and computer program product for the central node in a wireless mesh network acquires a routing discovery broadcast forwarded by the previous-hop routing node to the current-hop routing node. This broadcast carries the best path from the previous hop, which is the optimal path from the previous-hop routing node to the central node. The central node is the first-hop routing node. The validity of the best path is determined by comparing each routing node traversed by the best path with the current-hop routing node. If the best path is valid, alternative paths for the current hop are obtained based on the current-hop routing node and the best path from the previous hop. If the best path is invalid, the process of determining the best path for the current hop, updating, and forwarding the routing discovery broadcast is not performed to avoid the additional overhead caused by redundant path filtering and broadcast forwarding. This application only considers determining the best path for the current hop if the best path of the previous hop is valid, and updates the route discovery broadcast according to the best path of the current hop. The updated route discovery broadcast is forwarded to the next-hop routing node, which can avoid repeated forwarding of the same path. Then, the next-hop routing node is used as the current hop routing node to continue the route discovery process until the best path from each routing node to the central node is determined, thereby reducing the network overhead of route discovery. Attached Figure Description

[0022] Figure 1 A flowchart illustrating a central node routing discovery method based on a wireless mesh network, provided in an embodiment of this application;

[0023] Figure 2 This application provides a schematic diagram illustrating the positional relationship between routing nodes in an embodiment.

[0024] Figure 3 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;

[0025] Figure 4 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;

[0026] Figure 5 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;

[0027] Figure 6 A schematic diagram of a routing table provided for an embodiment of this application;

[0028] Figure 7 This is a schematic diagram illustrating another positional relationship between routing nodes provided in an embodiment of this application;

[0029] Figure 8A schematic diagram of the structure of a central node routing discovery system based on a wireless mesh network provided in this application embodiment;

[0030] Figure 9 This is an internal structural diagram of a computer device provided in an embodiment of this application. Detailed Implementation

[0031] 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.

[0032] In some embodiments, such as Figure 1 As shown, a method for discovering routes at the central node in a wireless mesh network is provided. This method is illustrated using the interaction between the central node and other routing nodes as an example, and includes the following steps:

[0033] Step 102: Obtain the route discovery broadcast forwarded by the previous hop routing node to the current hop routing node.

[0034] It is understandable that in a wireless network, there are multiple different routing nodes. When these routing nodes need to communicate with each other but cannot reach the destination node in a single hop, it is necessary to establish communication paths from each routing node to the destination node, such as the central node. The above path establishment process is called route discovery.

[0035] In this context, the destination node can be understood as the communication target that one or more routing nodes want to communicate with. The central node, on the other hand, is the initiator of the wireless network and is typically integrated into a gateway or central control unit.

[0036] In some embodiments, the central node can be a home gateway, central control unit, or smart device, such as a multi-functional speaker, while other routing nodes besides the central node can be various smart devices. It can be understood that the central node is the central point for the vast majority of information within the wireless network, and it is also the routing node with the largest data volume and the most frequent communication. For example, when a user controls other routing nodes via voice commands or software, commands need to be issued through the central node, and most information reported by other routing nodes also needs to be reported to the central node for centralized processing.

[0037] For example, such as Figure 2The diagram illustrates the positional relationships between routing nodes in a wireless network. This wireless network has eight routing nodes: Node 1, Node 2, Node 3, Node 4, Node 5, Node 6, Node 7, and Node 8. Node 1 is the initiator and central node of the wireless network. The other routing nodes are ordinary routing nodes, such as Nodes 2, 3, 4, 5, 6, 7, and 8. Figure 2 The wireless network shown consists of ordinary routing nodes.

[0038] It should be noted that, Figure 2 In a diagram, two routing nodes connected by a dashed line represent nodes that can communicate directly with each other. 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.

[0039] In other cases, if routing nodes are not directly connected by a dashed line, it means they cannot communicate directly. 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 they cannot communicate directly. If node 4 needs to communicate with node 6, it must relay the information through other routing nodes, such as node 5.

[0040] It is understandable that, since the central node cannot communicate directly with all the routing nodes, it is necessary to establish communication paths between each routing node and the central node through the routing discovery of the central node. Each routing node can then communicate with the central node based on the established communication paths.

[0041] In this embodiment, route discovery broadcast is initiated by the central node of the wireless network and forwarded by all other routing nodes in the network to achieve route discovery for the central node. It can be understood that other ordinary routing nodes can also initiate route discovery broadcasts, but their broadcasts are not part of the central node's route discovery process.

[0042] By forwarding route discovery broadcasts in the wireless network, the communication paths between each route node and the central node can be obtained. In practical applications, central node 1 can send route discovery broadcasts cyclically according to a period T0, for example, a period of 60 seconds.

[0043] In this context, the central node is the first routing node to send a route discovery broadcast; therefore, the central node can be the first-hop routing node. The route discovery broadcast carries the best path from the previous hop, that is, the best path from the previous hop routing node to the central node, as determined by the previous hop routing node. The best path can refer to the path with the fewest number of routing nodes or the strongest signal strength from a given routing node to the central node, etc. Those skilled in the art can also formulate other standards for measuring the best path according to actual needs; this application does not specifically limit this.

[0044] In essence, the current hop routing node refers to the routing node that has received a route discovery broadcast from the previous hop routing node but has not yet forwarded it. The previous hop routing node is the routing node that sent the route discovery broadcast to the current hop routing node. The next hop routing node is the communication target to which the current hop routing node needs to forward the received route discovery broadcast. The current hop routing node is adjacent to both the previous and next hop routing nodes. In other words, the current hop routing node is a neighbor of both the previous and next hop routing nodes.

[0045] Neighboring nodes refer to communication nodes around a routing node that can communicate directly without needing relaying through other routing nodes. For example, Figure 2 The neighboring nodes of node 1 are node 2, node 4, and node 5.

[0046] In some embodiments, the central node, acting as the first routing node to initiate a route discovery broadcast, initially sends the broadcast to all its neighboring nodes. At this point, the central node can be designated as the current hop routing node, and its neighboring nodes as the next-hop routing nodes. When a neighboring node receives a route discovery broadcast from the central node, it can designate that neighboring node as the current hop routing node and the central node, which forwarded the broadcast to that neighboring node, as the previous hop routing node. Upon receiving the broadcast, the neighboring node, acting as the current hop routing node, can determine the optimal path from itself to the central node from the various route discovery broadcasts, add the determined optimal path to the broadcast, and forward it to its neighboring node, i.e., the next-hop node. The next-hop node then continues the process of determining the optimal path and forwarding the broadcast.

[0047] For example, such as Figure 3As shown, Node 1 initiates a route discovery broadcast. Since Node 1's neighbors include Node 2, Node 4, and Node 5, these nodes can directly receive the first-hop route discovery broadcast sent by Node 1. This route discovery broadcast may only carry the address of the broadcast initiator, such as Node 1's address, or it may also carry an identifier for this route discovery. The initiator address indicates the initiator's identity, while the identifier distinguishes route discovery broadcasts initiated by the same initiator at different times. It should be noted that every routing node can be the initiator of a route discovery broadcast; it is not limited to the central node.

[0048] Specifically, the current hop routing node obtains one or more route discovery broadcasts forwarded by one or more previous hop routing nodes.

[0049] Step 104: The validity of the previous hop's optimal path is determined by comparing each routing node traversed by the previous hop's optimal path with the current hop's routing node.

[0050] Specifically, the current hop routing node obtains the best path of the previous hop carried in the route discovery broadcast forwarded by one or more previous hop routing nodes, and compares the routing nodes traversed by this one or more previous hop best paths with the current hop routing node to determine whether there is any overlap between the routing nodes traversed by the one or more previous hop best paths and the current hop routing node. If there is no overlap, it means that the previous hop best path is valid, and the current hop routing node can continue to perform the route discovery process; if there is overlap, it means that the previous hop best path is invalid, and the current hop routing node does not continue to perform the route discovery process, for example, by directly ignoring the previous hop best path.

[0051] To facilitate understanding, let's illustrate with an example. Suppose node 5 receives route discovery broadcasts forwarded by nodes 6 and 7, with the optimal paths accompanying these broadcasts being: Node 1->Node 5->Node 6 and Node 1->Node 5->Node 7, respectively. After receiving these two optimal paths, node 5 will check whether either of these paths explicitly includes itself, i.e., whether it includes node 5. Since both Node 1->Node 5->Node 6 and Node 1->Node 5->Node 7 include node 5, these two optimal paths are deemed invalid. For example, if node 5 receives a route discovery broadcast forwarded by node 4, and the optimal path accompanying this broadcast is: Node 1->Node 4, since this optimal path does not include node 5 itself, it can be determined that this optimal path is valid.

[0052] Step 106: If the best path of the previous hop is valid, determine the best path of the current hop based on the current hop routing node and the best path of the previous hop, and update the route discovery broadcast based on the best path of the current hop.

[0053] Specifically, if the current hop routing node determines that the best path of the previous hop is valid, the current hop routing node adds itself to the best path of the previous hop to obtain the best path of the current hop, and replaces the best path of the previous hop in the route discovery broadcast with the best path of the current hop to update the route discovery broadcast.

[0054] For example, if the current hop routing node is node 7, and node 7 determines that the best path of the previous hop, node 1->node 5, is valid, then node 7 is added to the best path of the previous hop, resulting in the best path of the current hop being node 1->node 5->node 7. The best path of the current hop, node 1->node 5, is then replaced in the route discovery broadcast with the best path of the previous hop, node 1->node 5, to update the route discovery broadcast.

[0055] Step 108: Forward the updated route discovery broadcast to the next-hop route node, and use the next-hop route node as the current hop route node to continue performing route discovery until the best path from each route node to the central node is determined.

[0056] Specifically, the current hop node forwards the updated route discovery broadcast to its neighboring node, i.e., the next-hop node, and uses the next-hop node as the current hop node to continue the route discovery process. That is, the next-hop node, as the current hop node, continues to compare the validity of the best path in the route discovery broadcast it receives, and continues to perform the process of determining the best path and forwarding the route discovery broadcast, until the best path from each hop node to the central node is determined, thus completing the route discovery process of the central node.

[0057] For example, such as Figure 4 As shown, according to the neighboring node relationships, after node 1 sends its first-hop route discovery broadcast to nodes 2, 4, and 5, nodes 2, 4, and 5 will act as the current-hop routing nodes. After determining the best path for the current hop, they will each send a route discovery broadcast containing the best path to their next-hop node. For example, after node 2 determines its best path and updates its route discovery broadcast, it can send the updated route discovery broadcast to nodes 1, 3, and 6. After node 4 determines its best path and updates its route discovery broadcast, it can send the updated route discovery broadcast to nodes 1 and 5. After node 5 determines its best path and updates its route discovery broadcast, it can send the updated route discovery broadcast to nodes 1, 4, 6, and 7.

[0058] The aforementioned routing discovery method for the central node in a wireless mesh network involves obtaining the routing discovery broadcast forwarded by the previous-hop routing node to the current-hop routing node. This broadcast carries the best path from the previous hop, which is the optimal path from the previous-hop routing node to the central node. The central node is the first-hop routing node. The validity of the best path is determined by comparing it with the current-hop routing node. If the best path is valid, alternative paths for the current hop are obtained based on the current-hop routing node and the best path from the previous hop. If the best path is invalid, the process of determining the best path for the current hop, updating, and forwarding the routing discovery broadcast is not performed to avoid the additional overhead caused by redundant path filtering and broadcast forwarding. This application only considers determining the best path for the current hop if the best path of the previous hop is valid, and updates the route discovery broadcast according to the best path of the current hop. The updated route discovery broadcast is forwarded to the next-hop routing node, which can avoid repeated forwarding of the same path. Then, the next-hop routing node is used as the current hop routing node to continue the route discovery process until the best path from each routing node to the central node is determined, thereby reducing the network overhead of route discovery.

[0059] In some embodiments, the route discovery broadcast forwarded by the previous hop routing node also carries the identifier of this broadcast. After step 102, the central node route discovery method based on the wireless mesh network of this application further includes, but is not limited to, the steps of: obtaining a set of broadcast identifiers from previous broadcasts; and determining that the current hop routing node does not perform route discovery if the current broadcast identifier is included in the set.

[0060] The "previous broadcast identifier" refers to the identifier of any historical route discovery broadcast forwarded by the current hop node. In other words, during a route discovery process, if a route node has already sent or forwarded the current route discovery broadcast, it will simultaneously record the identifier of that broadcast as an identifier for historical route discovery broadcasts.

[0061] In some embodiments, the identifier for a historical route discovery broadcast can be a unique ID of the historical route discovery, used to distinguish route discovery broadcasts sent by the same routing node at different times. In practical applications, the unique ID of a given routing node can be incremented. For example, if node 1 initiates a route discovery broadcast at time A, its unique ID can be set to 1. If node 1 initiates another route discovery broadcast at time B, its unique ID can be set to 2. It should be noted that when node 2 forwards a route discovery broadcast initiated by node 1, it needs to keep the unique ID set by node 1 unchanged. If node 2 initiates a route discovery broadcast itself, its unique ID can also increment from 1. Since the addresses of node 1 and node 2 are different, the unique ID of node 2 does not conflict with the unique ID of node 1. Even if other routing nodes may receive two identical unique IDs, they can identify the specific initiator by recognizing the address of the routing node.

[0062] Specifically, after receiving a route discovery broadcast forwarded by the previous hop node, the current hop node can obtain a set of identifiers from historical route discovery broadcasts forwarded by the current hop node, i.e., a set of identifiers from all previous broadcasts. Furthermore, the current hop node can also obtain the identifier from the route discovery broadcast forwarded by the previous hop node, i.e., the identifier of the current broadcast. If the current hop node determines that the identifier of the current broadcast is included in the set of identifiers from all previous broadcasts, it means that the route discovery broadcast received by the current hop node is one it has previously forwarded. To reduce network overhead, the current hop node does not perform route discovery; that is, the current hop node no longer performs the process of determining the best path and forwarding the route discovery broadcast. In other words, this application avoids the problem of duplicate forwarding of route discovery broadcasts by carrying identifiers in the route discovery broadcast and comparing the identifiers after the current hop node receives the route discovery broadcast sent by the previous hop node, thereby effectively reducing network overhead.

[0063] In some embodiments, if the current hop node determines that the broadcast identifier is included in the set of all previous broadcast identifiers, it can clear the broadcast identifier after a certain period of time. This is because the broadcast detected by the hop node is likely to disappear from the entire wireless network after the timeout period, and in this case, there is no need to store meaningless broadcast identifiers. Therefore, the above operation can release the memory resources occupied by broadcast identifiers. The specific timeout period can be determined based on the maximum routing level in the wireless network, and generally needs to be greater than the routing level. For example, if the maximum routing level is 10, the timeout period can be set to be greater than 10.

[0064] For example, such as Figure 4As shown, according to the neighboring node relationships, after nodes 2, 4, and 5 convert their updated route discovery broadcasts, nodes 1, 3, 4, 5, 6, and 7 will all receive the corresponding route discovery broadcasts. Node 1 will receive route discovery broadcasts forwarded by nodes 2, 4, and 5. However, Node 1, by comparing the identifiers of each route discovery broadcast and finding that it has previously forwarded such broadcasts, will not perform the process of determining the best path or forwarding the route discovery broadcasts.

[0065] In some embodiments, step 106 specifically includes, but is not limited to, the following steps: when there are multiple previous hop routing nodes, generate multiple candidate paths for the current hop routing node based on the best path of each previous hop and the current hop routing node; and perform path filtering on each candidate path for the current hop based on the number of candidate path hops and the quality of the candidate path corresponding to each candidate path for the current hop, so as to determine the best path for the current hop.

[0066] Here, the alternative path for the current hop refers to the path from the current hop routing node to the central node. It can be understood that there can be multiple alternative paths for the current hop, and the alternative path for the current hop is not necessarily the best path from the current hop routing node to the central node.

[0067] Alternative path hop count refers to the number of routing nodes traversed by an alternative path. Alternative path quality refers to the link quality determined based on the signal strength between the routing nodes in the alternative path.

[0068] In some embodiments, the quality of the alternative path can be determined by averaging the signal values ​​of all alternative paths, or by selecting the signal value with the weakest signal strength on one of the links. For example, as Figure 4 As shown, assuming one of the alternative paths for a routing node is Node 1 -> Node 5 -> Node 7, then this path has two links: Node 1 -> Node 5 and Node 5 -> Node 7. Figure 4 It can be seen that the signal value of node 1->node 5 is 4, and the signal value of node 5->node 7 is 3. Since the larger the signal value, the smaller the corresponding signal strength, the link with the worst signal strength can be determined as node 1->node 5, and the signal value of 4 can be determined as the quality of the entire alternative path.

[0069] Specifically, when there are multiple preceding hop routing nodes for the current hop routing node, the current hop routing node adds itself to the optimal path determined by each of the preceding hop routing nodes, resulting in multiple candidate paths for the current hop routing node. The current hop routing node can filter the candidate paths based solely on the hop count, solely on the quality of the candidate paths, or a combination of both, to determine the optimal path for the current hop. This embodiment of the application selects candidate paths using both hop count and quality dimensions, resulting in a higher quality optimal path.

[0070] In some embodiments, the step "to determine the best path for the current jump by filtering the candidate paths of each current jump according to the number of candidate path hops and the quality of the candidate path corresponding to each candidate path" specifically includes, but is not limited to, the steps of: filtering the target candidate path for the current jump from the candidate paths of each current jump according to the number of candidate path hops corresponding to each candidate path of each current jump; and, if there are multiple target candidate paths for the current jump, determining the best path for the current jump from the target candidate paths of the current jump according to the quality of the candidate path corresponding to each target candidate path of the current jump.

[0071] Specifically, the current hop routing node can determine the optimal path for the current hop from among the candidate paths, based on the order of hop count and quality. That is, the current hop routing node can first select the path with the fewest hops from among the candidate paths for each candidate path as the target candidate path. If there are multiple target candidate paths for the current hop, the path with the best quality among the target candidate paths for the current hop is determined as the optimal path for the current hop.

[0072] In some embodiments, if there is only one path with the smallest number of hops among the candidate paths for the current hop, then that path is directly taken as the best path for the current hop.

[0073] In some embodiments, if there are more than one candidate path with the same quality among the target candidate paths, the current hop routing node will consider the first target candidate path received as the best path for the current hop, or it can randomly select a target candidate path as the best path for the current hop.

[0074] In some embodiments, if the current hop routing node only receives a path forwarded by the previous hop routing node, then adding the current hop routing node to that path will result in the best path for the current hop.

[0075] It should be noted that a high hop count for alternative paths means that the message to be transmitted needs to be forwarded through multiple routing nodes. Since each routing node takes time to forward messages, this leads to a decrease in message real-time performance. Therefore, this embodiment prioritizes comparing the hop count of alternative paths. Only when a unique optimal path cannot be selected based on the hop count will the quality of the alternative paths be considered for selection. The reason why the quality of alternative paths is lower than the hop count is that the weakest signal strength among each routing node is still above the usable level, and the underlying retransmission interval is short, consuming few resources and resulting in short overall latency. Therefore, using the hop count as the first priority and the hop count as the second priority for selecting the optimal path can effectively reduce network overhead and communication latency.

[0076] For example, such as Figure 4 As shown, node 5 will receive route discovery broadcasts from node 4 and node 1 respectively, and generate alternative paths for node 5 based on the paths carried in the route discovery broadcasts, namely: node 1->node 4->node 5 and node 1->node 5. According to the principle of optimal path selection, node 5 will prioritize the target alternative path with the smallest number of hops, that is, node 1->node 5. Since there is only one target alternative path, the target alternative path is directly determined as the optimal path for node 5.

[0077] For example, such as Figure 5 As shown, Node 7 receives a route discovery broadcast forwarded by Node 5, and based on the path carried in the broadcast, generates a candidate path for Node 7: Node 1 --> Node 5 --> Node 7, with a quality of 4. Node 3 receives a route discovery broadcast forwarded by Node 2, and based on the path carried in the broadcast, generates a candidate path for Node 3: Node 1 --> Node 2 --> Node 3, with a quality of 3. Since Node 7 and Node 3 receive only one path, the candidate path determined by Node 7 and Node 5 can be directly selected as the optimal path.

[0078] For example, such as Figure 5As shown, Node 6 received two route discovery broadcasts. Node 6 added itself to the paths corresponding to the two broadcasts, resulting in two different candidate paths. The first path is Node 1 -> Node 2 -> Node 6, with a quality of 5. The second path is Node 1 -> Node 5 -> Node 6, with a quality of 4. Node 6 then filters the first and second paths according to the priority order in the optimal path selection principle. Since the hop counts of these two candidate paths are the same, they are further filtered based on their quality, resulting in the second path being the optimal path for Node 6.

[0079] In some embodiments, the alternative paths for each current hop are stored in the corresponding routing table. After the step of "determining the best path for the current hop from the target alternative paths for the current hop", the central node route discovery method based on the wireless mesh network of this application further includes, but is not limited to, the step of: synchronously storing the determined best path for the current hop in the routing table.

[0080] The routing table stores alternative paths from each current hop node to the central node. These alternative paths can be any of the paths from the current hop node to the central node, or they can be N paths selected from all paths from the current hop node to the central node based on the principle of selecting the best path.

[0081] Specifically, after determining its optimal path, the current hop node needs to synchronously store this optimal path in the routing table and prioritize it as the first path for communication with the central node. Furthermore, by storing the optimal path and multiple alternative paths in the routing table, this embodiment of the application can quickly select a better alternative path for route repair even if the current hop node cannot communicate with the central node via the optimal path, without needing to re-initiate route discovery, thus significantly reducing network overhead.

[0082] In some embodiments, step 108, "forwarding the updated route discovery broadcast to the next-hop routing node", specifically includes, but is not limited to, the following steps: determining the reception time of the route discovery broadcast received by the current hop routing node, and the forwarding window of the current hop routing node; determining the forwarding time range of the updated route discovery broadcast based on the reception time and the forwarding window; and forwarding the updated route discovery broadcast to the next-hop routing node based on a random time point within the forwarding time range.

[0083] The forwarding window is used to control the current hop node to forward the updated route discovery broadcast within the time range of the forwarding window. The forwarding window of the current hop node is determined by the layer to which the current hop node belongs.

[0084] Route discovery broadcasts also carry forwarding delay, which refers to the time from when the current hop node receives the route discovery broadcast from the previous hop node to when it actually begins forwarding the route discovery broadcast to the next hop node. It should be noted that the updated route discovery broadcast sent by the current hop node and received by the next hop node also carries delay information.

[0085] This is understandable; the forwarding delay is to ensure that the time it takes for the current hop node to forward the message to the next hop node is synchronized. Randomly staggering the time would result in some routes detecting and forwarding the broadcast earlier than others. Without the forwarding delay, the current hop node wouldn't know how long the previous hop node's forwarding occurred, which would cause the time interval for the current hop node to forward the message to the next hop node to potentially fall outside the predetermined range.

[0086] In some embodiments, this application can also classify the routing nodes in the wireless network into hierarchical levels. For example, a certain routing node can be designated as the destination node, such as the central node, and the central node can be determined as a level 0 routing node. Then, other routing nodes can be classified into hierarchical levels according to the shortest hop count to the destination node.

[0087] For example, such as Figure 3 As shown, assuming the central node, i.e., node 1, is a level 0 routing node, and the shortest hop count from nodes 4, 5, and 2 to node 1 is 1, then nodes 4, 5, and 2 can be determined as level 1 routing nodes. Furthermore, since the shortest hop count from nodes 3, 6, and 7 to node 1 is 2, or in other words, nodes 3, 6, and 7 can directly receive route discovery broadcasts sent by level 1 routing nodes, they can be determined as level 2 routing nodes. Similarly, node 8 can be determined as a level 3 routing node.

[0088] It's understandable that combining the hierarchical division of routing nodes in a wireless network with the forwarding delay mechanism allows routing nodes at each level to receive and forward route discovery broadcasts within a defined time window, preventing overlapping forwarding by routing nodes at different levels. Otherwise, the route discovery process might misclassify non-shortest paths as shortest paths. Figure 3As shown, after receiving the route discovery broadcast sent by node 1, nodes 2, 4, and 5 will forward it to their corresponding neighboring nodes at random times. At this time, it is possible that node 2 is the first to forward the broadcast among the level 1 routing nodes, then node 3 is the first to forward the broadcast among the level 2 routing nodes, and then node 6 starts forwarding the broadcast. If node 5 has not forwarded the route discovery broadcast by this time, the optimal path for node 8 will become: node 8->node 6->node 3->node 2->node 1, instead of the actual optimal path, i.e., node 8->node 7->node 5->node 1.

[0089] It should be noted that the introduction of forwarding delay causes routing nodes at different levels to forward messages within different time windows. For example, starting from the time node 1 forwards the route discovery broadcast, since nodes 2, 4, and 5 are all level 1 routing nodes, they can forward the route discovery broadcast within 0 to 1 second. Since nodes 3, 6, and 7 are level 2 routing nodes, they can forward the route discovery broadcast within 1 to 2 seconds. Since node 8 is a level 3 routing node, it can forward the route discovery broadcast within 2 to 3 seconds.

[0090] In some cases, if node 6 receives a route discovery broadcast forwarded by node 2 at 0.2 seconds, since node 6's time window for monitoring forwarding time is 1 to 2 seconds, and 0.2 seconds is outside this time window, node 6 cannot forward the route discovery broadcast to its neighboring nodes and needs to continue waiting. If, during this waiting period, node 6 receives a route discovery broadcast forwarded by node 5 at 0.8 seconds, since 0.8 seconds is still outside the time window, node 6 needs to continue waiting and stores the received valid path in its routing table. When node 6 finishes waiting, for example, after waiting for 1 second, it can add a random time point based on its time window range, such as 0.3 seconds, and wait for 0.3 seconds based on this added random time point. After the wait ends, node 6 forwards the determined best path to its neighboring nodes. It should be noted that the specific range of the time window can be dynamically adjusted according to the network size and structure; this application does not impose specific limitations on it.

[0091] Specifically, the current hop node determines the time it received the route discovery broadcast from the previous hop node and its forwarding window. If the reception time falls within the forwarding window's time range, the time range between the reception time and the end time of the forwarding window can be used to determine the forwarding time range of the updated route discovery broadcast. If the reception time is earlier than or equal to the start time of the forwarding window, the forwarding window's time range can be directly used as the forwarding time range of the updated route discovery broadcast. The current hop node then forwards the updated route discovery broadcast to the next hop node based on a random time point within this forwarding time range.

[0092] To facilitate understanding, let's illustrate with an example. Suppose the forwarding delay carried in the route discovery broadcast sent by the previous-hop routing node is t1. Then, the current-hop routing node starts timing after a delay of T-t1 after receiving the route discovery broadcast sent by the previous-hop routing node, and forwards the route discovery broadcast with its own delay information at random times within time T. It should be noted that T is a fixed value agreed upon by all routing nodes, while t1 is specifically determined in each broadcast forwarding process and may be different for each routing node in each forwarding of the route discovery broadcast.

[0093] In some embodiments, the routing discovery steps described above can be used to derive all paths from each routing node to the central node. After deriving all paths from each routing node to the central node, a system can be established as follows: Figure 6 The routing table shown is stored synchronously. It 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 in each column from nodes 2 to 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.

[0094] In some embodiments, according to Figure 6 The best path in the routing table, i.e., according to Figure 6 The first path of each routing node in the network can be plotted as follows: Figure 7 The diagram shows the network structure from the central node to all other routing nodes. Solid lines represent the optimal path, while dashed lines represent alternative paths. The solid lines and the routing nodes form a tree structure, with node 1 being the root node.

[0095] In some embodiments, after step 108, the central node routing discovery method based on a wireless mesh network of this application further includes, but is not limited to, the following steps: when a target routing node in each routing node fails to communicate with the central node according to the corresponding best path, a target path is selected from the alternative paths stored in the routing table corresponding to the target routing node; and the target routing node is controlled to communicate with the central node based on the target path.

[0096] The target routing node is the routing node that needs to communicate with the central node.

[0097] Specifically, the target routing node in each routing node communicates with the central node based on the optimal path stored in its routing table. If communication fails, the target routing node selects a path from the alternative paths stored in its routing table as the target path. The target routing node then communicates with the central node based on the selected target path. This embodiment of the application, by storing alternative paths for each routing node in the routing table, can quickly select a better alternative path for route repair even when a routing node cannot communicate with the central node through the optimal path, without needing to re-initiate route discovery, thus greatly reducing network overhead.

[0098] In some embodiments, the proposed central node route discovery method based on a wireless mesh network further includes, but is not limited to, the following steps:

[0099] The current hop node obtains the route discovery broadcast forwarded to it by the previous hop node.

[0100] The current hop node obtains a set of broadcast identifiers from previous broadcasts. If the current broadcast identifier is included in the set, the current hop node determines that it will not perform route discovery. If the current broadcast identifier is included in the set, it proceeds to the next step.

[0101] The current hop routing node determines the validity of the previous hop's best path by comparing it with each routing node traversed by the previous hop's best path. If the previous hop's best path is determined to be invalid, the current hop routing node does not perform route discovery; otherwise, it proceeds to the next step.

[0102] When there is only one previous hop routing node, the best path for the current hop is generated directly based on the best path of each previous hop and the current hop routing node. When there are multiple previous hop routing nodes, multiple candidate paths for the current hop are generated based on the best path of each previous hop and the current hop routing node; based on the number of hops for each candidate path, the target candidate path for the current hop is selected from the candidate paths.

[0103] If there is only one alternative path for the current jump, that alternative path is directly determined as the optimal path for the current jump. If there are multiple alternative paths for the current jump, the optimal path for the current jump is determined from among the alternative paths based on the quality of each alternative path.

[0104] The optimal path for the current hop is synchronously stored in the routing table.

[0105] The route discovery broadcast is updated based on the best path of the current hop, and the reception time of the route discovery broadcast received by the current hop routing node and the forwarding window of the current hop routing node are determined. The forwarding time range of the updated route discovery broadcast is determined based on the reception time and the forwarding window. Based on a random time point within the forwarding time range, the updated route discovery broadcast is forwarded to the next hop routing node.

[0106] The updated route discovery broadcast is forwarded to the next-hop route node, and the next-hop route node is used as the current hop route node to continue performing route discovery until the best path from each route node to the central node is determined.

[0107] If the target routing node fails to communicate with the central node based on the corresponding best path, the target path is selected from the alternative paths stored in the routing table corresponding to the target routing node, and the target routing node is controlled to communicate with the central node based on the target path.

[0108] 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.

[0109] Based on the same inventive concept, this application also provides a wireless mesh network-based central node routing discovery system for implementing the aforementioned wireless mesh network-based central node routing discovery 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 central node routing discovery system provided below can be found in the limitations of the wireless mesh network-based central node routing discovery method described above, and will not be repeated here.

[0110] refer to Figure 8 This is a schematic diagram illustrating the structure of a central node routing discovery system based on a wireless mesh network, provided in an embodiment of this application. In some embodiments, such as Figure 8 As shown, a central node routing discovery system based on a wireless mesh network is provided, including a central node 802 and multiple routing nodes 804, wherein:

[0111] The current hop routing node among multiple routing nodes 804 is used to obtain the route discovery broadcast forwarded by the previous hop routing node to the current hop routing node. The route discovery broadcast carries the best path of the previous hop, which is the best path from the previous hop routing node to the central node 802. The central node 802 is the first hop routing node. The validity of the previous hop's best path is determined by comparing each routing node traversed by the previous hop's best path with the current hop routing node. If the previous hop's best path is valid, the current hop's best path is determined based on the current hop routing node and the previous hop's best path, and the route discovery broadcast is updated based on the current hop's best path. The updated route discovery broadcast is forwarded to the next hop routing node, and the next hop routing node is used as the current hop routing node to continue route discovery until the best path from each routing node to the central node 802 is determined.

[0112] The aforementioned routing discovery system based on a wireless mesh network's central node obtains the routing discovery broadcast forwarded by the previous-hop routing node to the current-hop routing node. This broadcast carries the best path from the previous hop, which is the optimal path from the previous-hop routing node to the central node 802. The central node 802 is the first-hop routing node. The system determines the validity of the previous-hop's best path by comparing it with the current-hop routing node. If the previous-hop's best path is valid, alternative paths for the current hop are obtained based on the current-hop routing node and the previous-hop's best path. If the previous-hop's best path is invalid, the process of determining the best path for the current hop, updating, and forwarding the routing discovery broadcast is not performed to avoid the additional overhead caused by redundant path filtering and broadcast forwarding. This application only considers determining the best path for the current hop if the best path of the previous hop is valid, and updates the route discovery broadcast according to the best path of the current hop. The updated route discovery broadcast is forwarded to the next-hop routing node, which can avoid repeated forwarding of the same path. Then, the next-hop routing node is used as the current hop routing node to continue the route discovery process until the best path from each routing node to the central node 802 is determined, thereby reducing the network overhead of route discovery.

[0113] In some embodiments, the route discovery broadcast forwarded by the previous hop routing node also carries the identifier of this broadcast; the current hop routing node is further configured to: obtain a set of broadcast identifiers from previous broadcasts; the broadcast identifiers are the identifiers of historical route discovery broadcasts forwarded by the current hop routing node; if the current broadcast identifier is included in the set, determine that the current hop routing node does not perform route discovery.

[0114] In some embodiments, the current hop routing node is further configured to: when there are multiple previous hop routing nodes, generate multiple candidate paths for the current hop based on the best path of each previous hop and the current hop routing node; and perform path filtering on each candidate path for the current hop based on the number of candidate path hops and the quality of the candidate path corresponding to each candidate path for the current hop, so as to determine the best path for the current hop.

[0115] In some embodiments, the current hop routing node is further configured to: filter out the target candidate path of the current hop from the candidate paths of each current hop according to the number of candidate path hops corresponding to each candidate path of the current hop; and, if there are multiple target candidate paths of the current hop, determine the best path of the current hop from the target candidate paths of the current hop according to the quality of the candidate path corresponding to each target candidate path of the current hop.

[0116] In some embodiments, the alternative paths for each current hop are stored in the corresponding routing table; the current hop routing node is also used to: synchronously store the determined best path for the current hop in the routing table.

[0117] In some embodiments, the target routing node in each routing node is used to: select a target path from the alternative paths stored in the routing table corresponding to the target routing node when communication with the central node 802 fails based on the corresponding best path; and communicate with the central node 802 based on the target path.

[0118] In some embodiments, the current hop routing node is further configured to: determine the time point at which the current hop routing node receives the route discovery broadcast, and the forwarding window of the current hop routing node; the forwarding window is used to control the current hop routing node to forward the updated route discovery broadcast within the time range of the forwarding window; the forwarding window of the current hop routing node is determined by the layer to which the current hop routing node is located; determine the forwarding time range of the updated route discovery broadcast based on the time point of receipt and the forwarding window; and forward the updated route discovery broadcast to the next hop routing node based on a random time point within the forwarding time range.

[0119] In some embodiments, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 9 As 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 central node routing discovery 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.

[0120] 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.

[0121] 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.

[0122] 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.

[0123] In some embodiments, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0124] 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.

[0125] 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.

[0126] 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 method for discovering routes at a central node in a wireless mesh network, characterized in that, The method includes: Obtain the route discovery broadcast forwarded by the previous hop routing node to the current hop routing node; wherein, the route discovery broadcast carries the best path of the previous hop, the best path of the previous hop is the best path from the previous hop routing node to the central node; the central node is the first hop routing node; The validity of the optimal path of the previous hop is determined by comparing each routing node traversed by the optimal path of the previous hop with the routing node of the current hop. If the best path of the previous hop is valid, the best path of the current hop is determined based on the current hop routing node and the best path of the previous hop, and the route discovery broadcast is updated based on the best path of the current hop; The receiving time point when the current hop routing node receives the route discovery broadcast, and the forwarding window of the current hop routing node are determined; the forwarding window is used to control the current hop routing node to forward the updated route discovery broadcast within the time range of the forwarding window; the forwarding window of the current hop routing node is determined by the layer to which the current hop routing node belongs; The updated forwarding time range of the route discovery broadcast is determined based on the receiving time point and the forwarding window. Based on random time points within the forwarding time range, the updated route discovery is broadcast and forwarded to the next-hop route node, and the next-hop route node is used as the current hop route node to continue performing route discovery until the best path from each route node to the central node is determined.

2. The method according to claim 1, characterized in that, The route discovery broadcast forwarded by the previous hop routing node also carries the identifier of this broadcast; After obtaining the route discovery broadcast forwarded by the previous hop routing node to the current hop routing node, the method further includes: Obtain the set of broadcast identifiers from all previous broadcasts; the broadcast identifiers are the identifiers of historical route discovery broadcasts forwarded by the current hop node. If the broadcast identifier is included in the set, it is determined that the current hop node does not perform route discovery.

3. The method according to claim 1, characterized in that, Determining the optimal path for the current hop based on the current hop routing node and the optimal path for the previous hop includes: When there are multiple previous hop routing nodes, multiple alternative paths for the current hop are generated based on the best path of each previous hop and the current hop routing node. Based on the number of hops and the quality of each candidate path for the current hop, the candidate paths for each current hop are filtered to determine the optimal path for the current hop.

4. The method according to claim 3, characterized in that, The step of filtering the candidate paths for each current hop based on the number of hops and the quality of each candidate path to determine the optimal path for the current hop includes: Based on the number of hops of each candidate path corresponding to the current hop, the target candidate path for the current hop is selected from the candidate paths of each current hop. If there are multiple candidate paths for the current jump, the optimal path for the current jump is determined from the candidate paths based on the quality of each candidate path.

5. The method according to claim 4, characterized in that, The alternative paths for each current hop are stored in the corresponding routing table; After determining the optimal path for the current jump from the target candidate paths for the current jump, the method further includes: The optimal path for the current hop is synchronously stored in the routing table.

6. The method according to claim 5, characterized in that, After determining the optimal path from each routing node to the central node, the method further includes: If the target routing node in each routing node fails to communicate with the central node according to the corresponding optimal path, the target path is selected from the alternative paths stored in the routing table corresponding to the target routing node. The target routing node is controlled to communicate with the central node based on the target path.

7. A central node routing discovery system based on a wireless mesh network, characterized in that, The system includes: a central node and multiple routing nodes; The current hop routing node is used to obtain the route discovery broadcast forwarded to it by the previous hop routing node. The route discovery broadcast carries the best path of the previous hop, which is the best path from the previous hop routing node to the central node. The central node is the first hop routing node. The validity of the best path of the previous hop is determined by comparing each routing node traversed by the best path of the previous hop with the current hop routing node. If the best path of the previous hop is valid, the best path of the current hop is determined based on the current hop routing node and the best path of the previous hop, and the route discovery broadcast is updated based on the best path of the current hop. The current hop routing node is then determined. The system receives the reception time of the route discovery broadcast and the forwarding window of the current hop routing node. The forwarding window controls the current hop routing node to forward the updated route discovery broadcast within the time range of the forwarding window. The forwarding window of the current hop routing node is determined by the layer to which the current hop routing node is located. The forwarding time range of the updated route discovery broadcast is determined based on the reception time and the forwarding window. Based on a random time point within the forwarding time range, the updated route discovery broadcast is forwarded to the next hop routing node, and the next hop routing node is used as the current hop routing node to continue performing route discovery until the optimal path from each routing node to the central node is determined.

8. 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 6.

9. 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 6.