A LoRa tree network communication system based on load balancing

By adopting load balancing algorithms and multiple link designs in the LoRa tree network, the problem of single and poor robustness of the existing LoRa tree network is solved, and higher robustness and more balanced working pressure sharing are achieved, reducing maintenance costs.

CN119767376APending Publication Date: 2025-04-04XIAMEN FOUR FAITH COMM TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411833269.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-13
Publication Date
2025-04-04

AI Technical Summary

Technical Problem

The existing LoRa tree network link is single, poor robustness, uneven working pressure between nodes, and difficult to expand.

Method used

The LoRa tree network communication system based on load balancing is adopted, and a tree network is formed through a gateway and multiple LoRa devices. Each node is connected to multiple next-layer nodes. The load balancing algorithm is used to balance the working pressure between nodes and expand capacity when necessary.

Benefits of technology

It realizes diversification of communication links, improves the robustness of the system, equalizes the working pressure between nodes, reduces maintenance costs, and reduces equipment investment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119767376A_ABST
    Figure CN119767376A_ABST
Patent Text Reader

Abstract

The present invention provides a LoRa tree network networking communication system based on load balancing, which relates to the field of communication technology. The present invention includes: a gateway and multiple LoRa devices that form a LoRa tree network with the gateway; wherein the gateway, as a root node, communicates with an external server through the Internet, and performs a two-way LoRa communication connection with multiple LoRa devices in the next layer; the LoRa device, as a child node, performs a two-way LoRa communication connection with multiple child nodes in the next layer respectively; each node of each level is connected to multiple child nodes in the next layer until the end node; the LoRa device includes a router or a terminal; if the current child node is a terminal, it is the end node of the current link, and performs receiving and reporting data operations; if the current child node is a router, it acts as a transfer device, performs forwarding data operations, or performs receiving and reporting data operations as a terminal. The present invention can realize the diversification of LoRa tree network links, greatly improving the robustness of the system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of network communication technology, and in particular to a LoRa tree network networking communication system based on load balancing. Background Art

[0002] In order to optimize the communication between devices in the communication network, the devices in the network are connected together according to a certain topology through network construction technology, and the tree network is a networking method that connects the devices in the network according to a tree topology.

[0003] LoRa is a low-power long-range wireless communication technology, where "LoRa" is the abbreviation of Long Range Radio. Under the same power consumption conditions, LoRa can transmit farther than other wireless methods, and 3-5 times longer than traditional wireless radio frequency communication distance, which can achieve the unity of low power consumption and long distance. Since LoRa communication distance is long, most scenarios only use simple and easy-to-use star networks. However, when there are obstructions in the environment or the nodes are relatively scattered, the star network will no longer be applicable, and a tree network must be used for networking.

[0004] The existing LoRa tree network has a single link between nodes. If some nodes are abnormal, their leaf nodes will lose connection with the gateway, and the robustness is poor. Moreover, since some routes have more leaf nodes and report more frequently, the route will continue to be in a high-load working state, resulting in a corresponding increase in the probability of collision and prone to abnormalities. When some routes in the system are under high pressure and need to share the pressure, a new path needs to be deployed from the gateway to reach the sharing point to share the route pressure, but this method requires large equipment investment and high maintenance costs.

[0005] In view of this, the applicant filed this application after studying the existing technology. Summary of the invention

[0006] The present invention aims to provide a LoRa tree network networking communication system based on load balancing to solve the problems of the traditional LoRa tree network in the existing method, such as single link, poor robustness, uneven working pressure between nodes, and great expansion difficulty.

[0007] In order to solve the above technical problems, the present invention is implemented through the following technical solutions:

[0008] A LoRa tree network communication system based on load balancing, comprising:

[0009] A gateway, and a plurality of LoRa devices forming a LoRa tree network with the gateway; wherein,

[0010] The gateway, as the root node of the LoRa tree network, communicates with an external server through the Internet, and performs a two-way LoRa communication connection with multiple LoRa devices in the next layer, so as to forward the reported data received from the lower layer nodes to the external server, and send the received commands from the external server to the nodes in the next layer;

[0011] The LoRa device, as a child node of the LoRa tree network, performs bidirectional LoRa communication connection with multiple child nodes of the next layer respectively; each node of each layer is connected with multiple child nodes of the next layer until the end node;

[0012] The LoRa device includes a router or a terminal; if the current child node is a terminal, the current child node is the end node of the current link of the LoRa tree network, and performs receiving and reporting data operations; if the current child node is a router, the current child node acts as a transit device to perform forwarding data operations, or acts as a terminal of the end node of the current link to perform receiving and reporting data operations.

[0013] Preferably, the steps for a node to perform two-way LoRa communication are as follows:

[0014] For node i, which is currently the data initiating node, determine the current data type and record the number of times the current data is sent;

[0015] Node i detects and obtains all forwardable nodes in combination with the abnormal node set obtained in advance, and updates the abnormal node set; and obtains the next forwarding node j from all forwardable nodes through the load balancing algorithm, and sends the data to node j for forwarding until it reaches the target node; wherein the target node includes a gateway or a terminal;

[0016] If the current data type is not a confirmation packet, the process ends; if so, the target node sends a response data to node i;

[0017] Node i monitors whether it has received the response data forwarded by node j. If it has, the process ends; if not, node j is added to the abnormal node set, and it is determined whether the current number of transmissions has reached the set maximum number;

[0018] If the current number of transmissions reaches the set maximum number, node i will no longer send the current data; otherwise, the number of transmissions is increased by 1, and node i resends the current data.

[0019] Preferably, the abnormal node set is obtained by the following steps:

[0020] Node k sends a confirmation packet to other level nodes, and detects whether the node on each link is abnormal according to whether the response data of the confirmation packet sent by other level nodes is received; wherein the node k is any node in the gateway or the terminal;

[0021] Then, the abnormal node is stored in the abnormal node set until the data of the abnormal node is received again, and then the abnormal node is removed from the abnormal node set.

[0022] Preferably, when monitoring whether node i receives the response data forwarded by node j, a waiting time t is set. If node i still does not receive the response data after the time t, it is judged that the response data is not received.

[0023] Preferably, it also includes: when it is detected that the data forwarding amount of the current node exceeds the set threshold, the LoRa tree network is expanded, that is, a new route is added at the level where the current node is located as a new node to communicate to share the pressure.

[0024] Preferably, it also includes: if node i is not a data initiating node but receives LoRa air data, then determining whether node i belongs to the abnormal node set; if so, removing node i from the abnormal node set and enabling node i to communicate; if not, recording the current node position for subsequent inspection.

[0025] In summary, compared with the prior art, the present invention has the following beneficial effects:

[0026] The LoRa tree network communication system constructed by the present invention has not a single link between nodes, but multiple links, which can realize the diversification of communication links. The abnormality of some nodes in the LoRa tree network will not affect the normal communication of the link, which greatly improves the robustness of the communication system.

[0027] When a node needs to send data, the present invention first queries all forwardable nodes, and then obtains the next forwardable node through a load balancing algorithm. When a forwarding node is detected to be abnormal, the node will be stored in an abnormal node set, and other available nodes will be used for forwarding until the data of the abnormal node is received again, and then it will be removed from the abnormal node set.

[0028] The present invention adopts a load balancing algorithm when sending data, thereby effectively balancing the working pressure between node routes, avoiding system anomalies caused by continuous high load of some routes, and greatly reducing the probability of data collision, improving system performance. When the system needs to expand equipment capacity and share route pressure, new routes can be added nearby for expansion and pressure sharing. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0030] Figure 1 A schematic diagram of the LoRa tree network structure of the prior art provided in Example 1.

[0031] Figure 2 A schematic diagram of the structure of a LoRa tree network communication system based on load balancing provided in Example 1.

[0032] Figure 3 A flow chart of communication in a LoRa tree network communication system based on load balancing provided in Example 1.

[0033] Figure 4 A structural diagram of the capacity expansion of the LoRa tree network communication system based on load balancing provided in Example 1.

[0034] The present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. DETAILED DESCRIPTION

[0035] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention. Therefore, the following detailed description of the embodiments of the present invention provided in the drawings is not intended to limit the scope of the invention claimed for protection, but merely represents the selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.

[0036] Embodiment 1

[0037] There are three main types of devices in the tree network, namely gateways, routers, and terminals. The gateway communicates with the server through the Internet and communicates with the nodes through LoRa. All data needs to be transferred in the gateway, which plays a connecting role. The router is a terminal device with data forwarding function. The device can forward data to extend the communication distance of the system. The terminal is generally a low-power dormant device used for control and data collection. It can communicate with the gateway directly or through router forwarding.

[0038] like Figure 1 The four-layer LoRa tree network shown in the figure, the existing LoRa tree network, the types in the network include gateway, router, terminal, gateway as the root node, router as the child node, terminal as the end node, and the link between nodes is single. For example, terminal 7 needs to report data to gateway 0, then the communication path is: terminal 7->router 4->router 1->gateway 0. If gateway 0 needs to send data to terminal 7, the path is: gateway 0->router 1->router 4->terminal 7. When a route is abnormal, the leaf nodes of the path where the route is located will be abnormal.

[0039] In this embodiment, a LoRa tree network networking communication system based on load balancing is adopted, which includes: a gateway, and a plurality of LoRa devices forming a LoRa tree network with the gateway; wherein,

[0040] The gateway, as the root node of the LoRa tree network, communicates with an external server through the Internet, and performs a two-way LoRa communication connection with multiple LoRa devices in the next layer, so as to forward the reported data received from the lower layer nodes to the external server, and send the received commands from the external server to the nodes in the next layer;

[0041] The LoRa device, as a child node of the LoRa tree network, performs bidirectional LoRa communication connection with multiple child nodes of the next layer respectively; each node of each layer is connected with multiple child nodes of the next layer until the end node;

[0042] The LoRa device includes a router or a terminal; if the current child node is a terminal, the current child node is the end node of the current link of the LoRa tree network, and performs receiving and reporting data operations; if the current child node is a router, the current child node acts as a transit device to perform forwarding data operations, or acts as a terminal of the end node of the current link to perform receiving and reporting data operations.

[0043] In this embodiment, the transit node is only responsible for data forwarding, and the gateway or terminal (ie, the root node or the end node) is responsible for receiving and reporting data operations, and can determine whether a packet is lost or respond to a confirmation packet.

[0044] like Figure 2 There are multiple links between nodes in the network shown. Compared with the traditional LoRa tree network, the biggest difference is that the links between nodes are no longer single, but there are multiple links to choose from. For example, if terminal 7 needs to report data to gateway 0, the path is: terminal 7->[route 4 / route 5 / route 6]->[route 1 / route 2 / route 3]->gateway 0. When gateway 0 needs to send data to terminal 7, the path is: gateway 0->[route 1 / route 2 / route 3]->[route 4 / route 5 / route 6]->terminal 7.

[0045] When a node needs to send data, it first queries all forwardable nodes, and then obtains the next forwarding node through a load balancing algorithm. The present invention can realize link diversification, and the abnormality of some nodes does not affect the normal communication of the link, which greatly improves the robustness of the system.

[0046] Specifically, Figure 3 As shown, the steps for nodes to perform two-way LoRa communication are as follows:

[0047] Step 101, assuming that node i has data to be sent, record the current data sending times;

[0048] Step 102: Node i detects and obtains all forwardable nodes in combination with the abnormal node set obtained in advance, and updates the abnormal node set; and obtains the next forwarding node j from all forwardable nodes through a load balancing algorithm;

[0049] Step 103, node i sends the data to the next forwarding node j for forwarding until the gateway or terminal, i.e., the target node;

[0050] Step 104, node i determines whether the data type to be sent is a confirmation packet; if not, the process ends;

[0051] Step 105: If yes, then confirm whether node i has received the response data of the target node forwarded by node j according to the preset waiting time t; if yes, the process ends;

[0052] Step 106: If not received, node j is added to the abnormal node set, and node i determines whether the current number of transmissions reaches the set maximum number;

[0053] Step 107, if the current number of transmissions reaches the set maximum number, node i will no longer transmit the current data and prompt that the transmission has failed; otherwise, the number of transmissions is increased by 1, and the process goes to step 101, where node i retransmits the current data.

[0054] Further, in step 108, if node i is not a data initiating node and receives LoRa air data;

[0055] Step 109, determining whether node i belongs to the abnormal node set; if not, recording the current node position for subsequent inspection;

[0056] Step 110: If yes, remove node i from the abnormal node set and enable node i to forward data.

[0057] Furthermore, the abnormal node set is obtained by the following steps:

[0058] A node in the gateway or terminal sends a confirmation packet to nodes at other levels;

[0059] Whether the node on each link is abnormal is detected based on whether the node receives the response data from the nodes at other levels;

[0060] The abnormal node is stored in the abnormal node set until the data of the abnormal node is received again, and then the abnormal node is removed from the abnormal node set.

[0061] In another preferred embodiment, if the router or terminal forwards the confirmation packet information through the route 5 but does not receive the forwarding data information of the route 5, the route 5 is set as abnormal and stored in the abnormal node set, and the route 5 is no longer used as the forwarding node in the subsequent forwarding, until any data of the route 5 is received again, it will be removed from the abnormal node set and enabled again.

[0062] In this embodiment, load balancing is a technology widely used in computer networks and system architectures. Its core idea is to distribute workloads (such as network traffic, data requests, computing tasks, etc.) to multiple computing resources (such as servers, virtual machines, containers, etc.) for processing. The load balancing algorithm is the core of load balancing technology and determines how to distribute requests to each server.

[0063] The existing load balancing algorithms are mainly divided into two categories: static load balancing algorithms and dynamic load balancing algorithms. Static load balancing algorithms include polling, weighted polling, random, weighted random, etc.; dynamic load balancing algorithms include minimum connection number method, mapping allocation method, etc.

[0064] Since a load balancing algorithm is used when sending data, the working pressure between routes is effectively balanced, avoiding abnormalities caused by continuous high load on some routes, and greatly reducing the probability of data collision, thereby improving system performance.

[0065] Furthermore, in another preferred embodiment, when it is detected that the forwarding volume of the current node exceeds a set threshold, the LoRa tree network is expanded, and a new routing device is added at the level of the current node as a new node to communicate to share the pressure.

[0066] like Figure 4 As shown, when it is detected that the amount of data forwarded by Router 4, Router 5, and Router 6 is large or the next level needs to be expanded, the load is shared by adding Router 10. After Router 10 is deployed at a suitable location, the connection configuration information of the corresponding node is modified. Router 10 will participate in the load balancing algorithm for data forwarding, thereby sharing the work pressure of Router 4, Router 5, and Router 6.

[0067] In summary, compared with the prior art, the present invention has the following beneficial effects:

[0068] The existing network topology node links are single and have poor robustness. When a certain route is abnormal, all its leaf nodes will be abnormal. These leaf nodes need to find a new path to reach the gateway. Before finding the new path, the data of these nodes will not be able to reach the gateway in time. The node links of the present invention are not single and have good robustness. When a certain route is abnormal, the data will avoid the route and select another route for forwarding when forwarding, which will not affect the system. After the route is restored, it will be enabled again, and the networking is flexible.

[0069] In the prior art, due to the single link, if a route has many leaf nodes and reports frequently, the probability of data collision will be aggravated, and the route will be under high load for a long time, the power consumption will be greater, resulting in frequent battery replacement of low-power battery-powered devices, and the probability of equipment problems will also increase. Once an abnormality occurs, the system will be unavailable. In the present invention, since there are multiple links between nodes, a load balancing algorithm is added during forwarding, which can effectively share and reduce the pressure of each node, thereby increasing the power consumption of the route and greatly reducing the maintenance cost.

[0070] Due to the single link of the prior art, if it is found that some routes are under great pressure or equipment expansion is needed, a new path needs to be deployed from the gateway, which requires a large number of devices and a large workload. If the present invention finds that some routes are under great pressure or need to be expanded, it only needs to deploy a new route at the specified location. After the parameters are successfully configured, the node will share the data to the new route through the load balancing algorithm, thereby reducing the pressure of the previous route or achieving the purpose of expansion, greatly reducing the number of equipment investment and maintenance costs.

[0071] In several embodiments provided in the embodiments of the present invention, it should be understood that the disclosed apparatus and method can also be implemented in other ways. The apparatus and method embodiments described above are merely schematic. For example, the flowcharts in the accompanying drawings show the possible architecture, functions and operations of the apparatus, method and computer program product according to multiple embodiments of the present invention. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, program segment or a part of the code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.

[0072] In addition, the functional modules in the various embodiments of the present invention may be integrated together to form an independent part, or each module may exist independently, or two or more modules may be integrated to form an independent part.

[0073] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on such an understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions to enable a computer device (which can be a personal computer, an electronic device, or a network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk. It should be noted that, in this article, the terms "include", "comprise" or any other variant thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements that are not explicitly listed, or also includes elements inherent to such a process, method, article or device. Without more constraints, an element defined by the phrase "comprising a..." does not exclude the existence of other identical elements in the process, method, article or apparatus comprising the element.

[0074] The terms used in the embodiments of the present invention are only for the purpose of describing specific embodiments, and are not intended to limit the present invention. The singular forms "a", "said" and "the" used in the embodiments of the present invention and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings.

[0075] It should be understood that the term "and / or" used in this article is only a description of the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship.

[0076] The word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrases "if it is determined" or "if (stated condition or event) is detected" may be interpreted as "when it is determined" or "in response to determining" or "when detecting (stated condition or event)" or "in response to detecting (stated condition or event)", depending on the context.

[0077] The "first\second" mentioned in the embodiments is only to distinguish similar objects, and does not represent a specific order for the objects. It is understandable that the "first\second" can be interchanged with the specific order or sequence where permitted. It should be understood that the objects distinguished by "first\second" can be interchanged where appropriate, so that the embodiments described herein can be implemented in an order other than those illustrated or described herein.

[0078] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included in the protection scope of the present invention.

Claims

1. A LoRa tree network communication system based on load balancing, characterized in that: include: A gateway, and a plurality of LoRa devices forming a LoRa tree network with the gateway; wherein, The gateway, as the root node of the LoRa tree network, communicates with an external server through the Internet, and performs a two-way LoRa communication connection with multiple LoRa devices in the next layer, so as to forward the reported data received from the lower layer nodes to the external server, and send the received commands from the external server to the nodes in the next layer; The LoRa device, as a child node of the LoRa tree network, performs bidirectional LoRa communication connection with multiple child nodes of the next layer respectively; each node of each layer is connected with multiple child nodes of the next layer until the end node; The LoRa device includes a router or a terminal; if the current child node is a terminal, the current child node is the end node of the current link of the LoRa tree network, and performs receiving and reporting data operations; if the current child node is a router, the current child node acts as a transit device to perform forwarding data operations, or acts as a terminal of the end node of the current link to perform receiving and reporting data operations.

2. A LoRa tree network networking communication system based on load balancing according to claim 1, characterized in that ,The steps for nodes to perform two-way LoRa communication are as follows: For node i, which is currently the data initiating node, determine the current data type and record the number of times the current data is sent; Node i detects and obtains all forwardable nodes in combination with the abnormal node set obtained in advance, and updates the abnormal node set; and obtains the next forwarding node j from all forwardable nodes through the load balancing algorithm, and sends the data to node j for forwarding until it reaches the target node; wherein the target node includes a gateway or a terminal; If the current data type is not a confirmation packet, the process ends; if so, the target node sends a response data to node i; Node i monitors whether it has received the response data forwarded by node j. If it has, the process ends; if not, node j is added to the abnormal node set, and it is determined whether the current number of transmissions has reached the set maximum number; If the current number of transmissions reaches the set maximum number, node i will no longer send the current data; otherwise, the number of transmissions is increased by 1, and node i resends the current data.

3. A LoRa tree network networking communication system based on load balancing according to claim 2, characterized in that ,The abnormal node set is obtained through the following steps: Node k sends a confirmation packet to other level nodes, and detects whether the node on each link is abnormal according to whether the response data of the confirmation packet sent by other level nodes is received; wherein the node k is any node in the gateway or the terminal; Then, the abnormal node is stored in the abnormal node set until the data of the abnormal node is received again, and then the abnormal node is removed from the abnormal node set.

4. A LoRa tree network networking communication system based on load balancing according to claim 2, characterized in that ,When monitoring whether node i receives the response data forwarded by node j, a waiting time t is set. If node i still does not receive the data after the time t, it is judged as not received.

5. A LoRa tree network networking communication system based on load balancing according to claim 1, characterized in that , also includes: when it is detected that the data forwarding amount of the current node exceeds the set threshold, the LoRa tree network is expanded, that is, a new route is added at the level where the current node is located as a new node to communicate to share the pressure.

6. A LoRa tree network networking communication system based on load balancing according to claim 2, characterized in that , also includes: if node i is not a data initiating node but receives LoRa air data, then determine whether node i belongs to the abnormal node set; if so, remove node i from the abnormal node set and enable node i to communicate; if not, record the current node position for subsequent inspection.