Network congestion control method and apparatus based on hardware, and storage medium
By adopting a hardware-based network congestion control method in industrial Internet of Things scenarios, and using priority rules and scheduling rules to classify and schedule data, the problems of network congestion and data loss are solved, and the flexibility and stability of the network are realized. Ensures the reliability of data transmission.
Patent Information
- Application Number
- PCT/CN2023/104161
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-29
- Publication Date
- 2025-01-02
AI Technical Summary
In industrial IoT scenarios, especially in smart factories and smart mines, the network conditions between working equipment and control points are poor, resulting in network congestion and data loss, and high-priority traffic is forced to wait for low-priority traffic, resulting in poor network conditions between working equipment and control points, resulting in network congestion and data loss. Important data is lost and redeveloping applications to optimize network connections is expensive and unfeasible.
Using hardware-based network congestion control method, by acquiring and saving the sending data of the device, applying predefined priority rules and scheduling rules to classify and schedule the data to ensure the real-time transmission of high-priority data and non-instant data in the network. Cache during discontinuation to avoid network congestion and data loss.
It realizes effective scheduling of network data, avoids network congestion, ensures the flexibility and stability of the network, ensures the reliability of data transmission and the timely transmission of important data.
Smart Images

Figure CN2023104161_02012025_PF_FP_ABST
Abstract
Description
Hardware-based network congestion control method, device and storage medium Technical Field
[0001] The present invention relates to the fields of edge computing and distributed control, and in particular to a hardware-based network congestion control method, device, and storage medium. Background Art
[0002] With the development of the Industrial Internet of Things (IIoT) and the convergence of IT and Operational Technology (OT), numerous hierarchical distributed systems have been developed and deployed in production sites such as smart factories, smart buildings, and smart mines to provide scalable, upgradeable, and manageable low-latency, reliable industrial applications and services. These hierarchical systems typically consist of one or more control points located within the central IT infrastructure of a factory or building, distributed to distributed equipment located on production lines, in rooms, and at the bottom of mines. Equipment receives instructions and commands from the control points and reports its status and data based on the application's requirements. Consequently, significant data traffic occurs between the various equipment and the control points. In scenarios like smart factories and buildings with relatively good network conditions, such as 10 Mbps or higher per device, this data traffic does not pose a significant problem. However, many hierarchical distributed systems are not specifically designed for scenarios such as water plants and mines, which experience poor network conditions between equipment and control points, with bandwidth per device typically below 100 Kbps. When equipment updates applications or executes instructions, control points often encounter network errors. If the equipment doesn't receive the information it needs, they retry the connection, which only exacerbates the situation and disrupts the control point. If there are many working devices—for example, over 100—the situation becomes even worse, as the working devices also compete for network resources. Consequently, there is a large amount of data traffic between different working devices and the control point. Furthermore, connections to the application network are initiated by different applications developed by different developers. Redeveloping all applications requires a significant amount of work and is sometimes infeasible. Finally, traffic priority is not considered. In some cases, high-priority traffic, such as error reports and status changes, must wait for low-priority traffic, such as software updates, to complete, resulting in the loss of important data.
[0003] Summary of the Invention
[0004] To solve the above problems, the present invention proposes a hardware-based network congestion control method, device and storage medium to control and schedule data in the network and cache data when the network is blocked, thereby avoiding the occurrence of network congestion and ensuring the flexibility and stability of the network.
[0005] A device anomaly location method proposed in an embodiment of the present invention includes: obtaining transmission data, obtaining and saving transmission data of at least one application in the current device and / or transmission data of at least one child device of the current device; scheduling transmission data, including: obtaining the priority rules and scheduling rules sent by the parent device of the current device or predefined priority rules and scheduling rules; prioritizing the saved transmission data based on the priority rules, and pushing the transmission data according to the priority classification order and the scheduling rules; transmitting transmission data, transmitting the pushed transmission data to the parent device. This achieves the control and scheduling of data in the network, avoids network congestion, and ensures the flexibility and stability of the network.
[0006] In one embodiment, the method of pushing the transmission data according to the priority classification order and predefined scheduling rules further includes: the priority classification includes immediate transmission data and non-immediate transmission data; the immediate transmission data is pushed first, and the non-immediate transmission data is pushed later; the scheduling rules include the network retention time and network blocking status of the transmission data; and the transmission data is pushed within the network retention time and when the network blocking status is not blocked. This achieves data transmission according to the priority importance of the data and caches the data when the network is blocked, further avoiding the occurrence of network congestion and ensuring the flexibility and stability of the network.
[0007] In one embodiment, the method further includes: scheduling data reception, receiving data received from the parent device, and determining whether current communication is blocked; if so, transmitting the received data to the corresponding application or child device after the blockage is over; if not, directly transmitting the received data to the corresponding application or child device. This achieves a temporary halt to data reception when a network blockage occurs, avoids data loss, and ensures system reliability.
[0008] A hardware-based network congestion control device proposed in an embodiment of the present invention includes: a sending data acquisition module, configured to acquire and save the sending data of at least one application in the current device and / or the sending data of at least one child device of the current device; a sending data scheduling module, configured to: acquire the priority rules and scheduling rules sent by the parent device of the current device or the priority rules and scheduling rules set by the current device; prioritize the saved sending data based on the priority rules, and push the sending data according to the priority classification order and the scheduling rules; and a sending data transmission module, configured to transmit the pushed sending data to the parent device. This realizes the control and scheduling of data in the network, avoids the occurrence of network congestion, and ensures the flexibility and stability of the network.
[0009] In one embodiment, the method of pushing the transmission data according to the priority classification order and predefined scheduling rules further includes: the priority classification includes immediate transmission data and non-immediate transmission data; the immediate transmission data is pushed first, and the non-immediate transmission data is pushed later; the scheduling rules include the network retention time and network blocking status of the transmission data; and the transmission data is pushed within the network retention time and when the network blocking status is not blocked. This achieves data transmission according to the priority importance of the data and caches the data when the network is blocked, further avoiding the occurrence of network congestion and ensuring the flexibility and stability of the network.
[0010] In one embodiment, the apparatus further includes a received data scheduling module configured to: receive received data from the parent device, determine whether current communication is blocked, and if so, transmit the received data to the corresponding application and / or child device after the blockage is resolved; if not, directly transmit the received data to the corresponding application and / or child device. This allows for a temporary halt in data reception when a network blockage occurs, preventing data loss and ensuring system reliability.
[0011] An electronic device proposed in an embodiment of the present invention includes: at least one processor; and a memory coupled to the at least one processor, wherein the memory is used to store instructions, and when the instructions are executed by the at least one processor, the processor executes the method described above.
[0012] An embodiment of the present invention provides a computer-readable storage medium on which computer instructions are stored. When the computer instructions are executed, the method described in any of the above embodiments is executed.
[0013] A computer program product provided in an embodiment of the present invention includes a computer program. When the computer program is executed by a processor, the method described in any one of the above embodiments is implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] The following drawings are only intended to illustrate and explain the present invention, and do not limit the scope of the present invention.
[0015] FIG1 is a flow chart of a hardware network congestion control method according to an embodiment of the present invention.
[0016] FIG2 is a schematic structural diagram of a hardware network congestion control device according to an embodiment of the present invention.
[0017] FIG3 is a schematic diagram of an electronic device according to an embodiment of the present invention.
[0018] The following are the descriptions of the reference numerals: DETAILED DESCRIPTION
[0019] In order to have a clearer understanding of the technical features, purposes and effects of the present invention, specific embodiments of the present invention are now described with reference to the accompanying drawings.
[0020] In the following description, many specific details are set forth to facilitate a full understanding of the present invention. However, the present invention may also be implemented in other ways different from those described herein. Therefore, the present invention is not limited to the specific embodiments disclosed below.
[0021] As used in this application and the claims, unless the context clearly indicates otherwise, the words "a," "an," "an," and / or "the" are not intended to refer to the singular but may include the plural. Generally speaking, the terms "comprises" and "include" only indicate the inclusion of the steps and elements specifically identified, and these steps and elements do not constitute an exclusive list. A method or apparatus may also include other steps or elements.
[0022] A typical distributed control system can be deployed in physical locations such as factories, buildings, mines, and water plants. Centralized IT infrastructure manages and controls edge devices (operating equipment) at the field level. These operating equipment is responsible for low-latency business applications such as monitoring and controlling field equipment. For example, in a building, edge devices run a set of applications that monitor sensor readings such as smoke detectors and temperature, and control fire extinguishers and air conditioners accordingly.
[0023] Several applications may be running on edge devices. These applications may need to upload data to or receive instructions from the central IT infrastructure. More specifically, these applications are not limited to business applications. System applications, such as system and application updates and configuration tools, also communicate with the central IT infrastructure. All applications independently initiate connections to the central IT infrastructure through the system's network stack, including routing tables. If network conditions are suboptimal, the lack of coordination between different applications can degrade application performance. For example, a working device may miss important instructions from the central IT infrastructure. The central IT infrastructure may also miss important notifications from working devices, such as emergencies and functional failures. Furthermore, constantly establishing too many connections can overwhelm the central IT infrastructure.
[0024] A typical distributed network may have a multi-level network topology. Edge devices may have a parent node and multiple child nodes. Edge devices not only need to upload their own internal data, but also need to relay the data of child nodes, and further need to forward instructions from parent nodes or control nodes to child nodes.
[0025] Therefore, the embodiment of the present invention provides a more optimized hardware-based network congestion control method, device and storage medium. The method includes: obtaining and saving the sending data of at least one application in the current device and / or the sending data of at least one child device of the current device; obtaining the priority rules and scheduling rules or pre-defined priority rules and scheduling rules sent by the parent device of the current device; prioritizing the saved sending data, and pushing the sending data according to the priority classification order and scheduling rules; and transmitting the pushed sending data to the parent device. The technical solution in the embodiment of the present invention can control and schedule the data in the network, and cache data when the network is blocked, thereby avoiding the occurrence of network congestion and ensuring the flexibility and stability of the network.
[0026] FIG1 is a flow chart of a hardware-based network congestion control method 100 according to an embodiment of the present invention. As shown in FIG1 , the method 100 may include:
[0027] Step S101: Acquire sending data, obtain and save sending data of at least one application in the current device and / or sending data of at least one sub-device of the current device.
[0028] Specifically, from the perspective of applications and sub-nodes, applications and sub-nodes do not need any improvement and still maintain regular ports for data transmission. They only need to continuously monitor ports to obtain data sent by different applications for subsequent control.
[0029] Step S102, schedule the sending data, obtain the priority rules and scheduling rules sent by the parent device of the current device or the pre-defined priority rules and scheduling rules; prioritize the saved sending data based on the priority rules, and push the sending data according to the priority classification order and the scheduling rules.
[0030] In one embodiment, pushing the sending data according to the priority classification order and predefined scheduling rules further includes: the priority classification includes immediately sending data and non-instant sending data; the immediately sending data is pushed first, and the non-instant sending data is waited for subsequent push; the scheduling rules include the network retention time and network blocking status of pushing the sending data; the transmission data is pushed within the network retention time and when the network blocking status is not blocked.
[0031] Specifically, data can be categorized into two types: instant messages and non-instant messages. Instant messages are immediately pushed to the control point connector and delivered to the control point. Other non-instant messages are pushed later. For more complex implementations, data can be tagged with a numerical priority. Furthermore, communications can be retained by time and date. Furthermore, whether or not the communication is interruptible can be specified. All data tags are traversed, and data is pushed according to the tag requirements.
[0032] Step S103: Transmit the pushed sending data to the parent device.
[0033] Step S104, schedule receiving data, receive the receiving data of the parent device, and determine whether the current communication is blocked; if so, transmit the receiving data to the corresponding application or child device after the blocking ends; if not, directly transmit the receiving data to the corresponding application or child device.
[0034] Specifically, the receiving data of the parent device can be scheduled, and the data of the parent device is received only when the normal port of the network is not occupied, thereby avoiding data loss.
[0035] FIG2 is a schematic diagram of the structure of a hardware-based network congestion control device 200 according to an embodiment of the present invention. As shown in FIG2 , the device 200 may include:
[0036] The sending data acquisition module 201 is configured to acquire and save the sending data of at least one application in the current device and / or the sending data of at least one sub-device of the current device.
[0037] Specifically, from the perspective of applications and sub-devices, applications and sub-devices do not need any improvements and still maintain regular ports for data transmission. They only need to continuously monitor the ports to obtain data sent by different applications for subsequent control.
[0038] The sending data scheduling module 202 is configured to: obtain the priority rules and scheduling rules sent by the parent device of the current device or the priority rules and scheduling rules set at the current device; prioritize the saved sending data based on the priority rules, and push the sending data according to the priority classification order and the scheduling rules.
[0039] In one embodiment, pushing the sending data according to the priority classification order and predefined scheduling rules further includes: the priority classification includes immediately sending data and non-instant sending data; the immediately sending data is pushed first, and the non-instant sending data is waited for subsequent push; the scheduling rules include the network retention time and network blocking status of pushing the sending data; the transmission data is pushed within the network retention time and when the network blocking status is not blocked.
[0040] Specifically, data can be categorized into two types: instant messages and non-instant messages. Instant messages are immediately pushed to the control point connector and delivered to the control point. Other non-instant messages are pushed later. For more complex implementations, data can be tagged with a numerical priority. Furthermore, communications can be retained by time and date. Furthermore, whether or not the communication is interruptible can be specified. All data tags are traversed, and data is pushed according to the tag requirements.
[0041] The data transmission module 203 is configured to transmit the pushed data to the parent device.
[0042] The receiving data scheduling module 204 is configured to: receive the receiving data of the parent device and determine whether the current communication is blocked; if so, transmit the receiving data to the corresponding application and / or child device after the blocking is over; if not, directly transmit the receiving data to the corresponding application and / or child device.
[0043] Specifically, the receiving data of the parent device can be scheduled, and the data of the parent device is received only when the normal port of the network is not occupied, thereby avoiding data loss.
[0044] The present invention also provides an electronic device 300. FIG3 is a schematic diagram of an electronic device 300 according to an embodiment of the present invention. As shown in FIG3 , the electronic device 300 includes a processor 310 and a memory 320. The memory 320 stores instructions, wherein the instructions, when executed by the processor 310, implement the method 100 described above.
[0045] The present invention further provides a computer-readable storage medium having computer instructions stored thereon. When the computer instructions are executed, the method described above is executed.
[0046] The present invention also provides a computer program product, comprising a computer program, which implements the above-mentioned method when executed by a processor.
[0047] Some aspects of the methods and apparatus of the present invention may be performed entirely by hardware, entirely by software (including firmware, resident software, microcode, etc.), or by a combination of hardware and software. The above hardware or software may be referred to as "data blocks," "modules," "engines," "units," "components," or "systems." The processor may be one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DAPDs), programmable logic devices (PLCs), field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, or combinations thereof. In addition, various aspects of the present invention may be embodied as computer products in one or more computer-readable media, the product including computer-readable program code. For example, computer-readable media may include, but are not limited to, magnetic storage devices (e.g., hard disks, floppy disks, tapes, etc.), optical disks (e.g., compact disks (CDs), digital versatile disks (DVDs), etc.), smart cards, and flash memory devices (e.g., cards, sticks, key drives, etc.).
[0048] Flowcharts are used herein to illustrate the operations performed by the methods according to the embodiments of the present application. It should be understood that the preceding operations are not necessarily performed in exact order. Instead, the various steps may be performed in reverse order or simultaneously. Furthermore, other operations may be added to these processes, or one or more operations may be removed from these processes.
[0049] It should be understood that although this specification is described according to various embodiments, not every embodiment contains only one independent technical solution. This narrative method of the specification is only for the sake of clarity. Those skilled in the art should regard the specification as a whole. The technical solutions in each embodiment can also be appropriately combined to form other implementation methods that can be understood by those skilled in the art.
[0050] The above description is only an illustrative embodiment of the present invention and is not intended to limit the scope of the present invention. Any equivalent changes, modifications and combinations made by those skilled in the art without departing from the concept and principle of the present invention shall fall within the scope of protection of the present invention.
Claims
1. A hardware-based network congestion control method (100), characterized in that: The method comprises: Acquiring sending data (S101), acquiring and saving sending data of at least one application in the current device and / or sending data of at least one sub-device of the current device; Scheduling the sending of data (S102), including: obtaining the priority rule and scheduling rule sent by the parent device of the current device or the predefined priority rule and scheduling rule; prioritizing the stored sending data based on the priority rule, and pushing the sending data according to the priority classification order and the scheduling rule; Transmitting the sending data (S103), transmitting the pushed sending data to the parent device.
2. The method according to claim 1, characterized in that The pushing of the transmission data according to the priority classification order and the predefined scheduling rules further comprises: The priority classification includes instant sending data and non-instant sending data; the instant sending data is pushed first, and the non-instant sending data waits for subsequent pushing; The scheduling rule includes pushing the communication retention time and the communication blocking state of the sending data; and pushing the transmission data within the communication retention time and when the communication blocking state is not blocked.
3. The method according to claim 1, characterized in that The method further comprises: Scheduling receiving data (S104), receiving receiving data of the parent device, and determining whether the current communication is blocked; If so, the received data is transmitted to the corresponding application or sub-device after the blocking is completed; If not, the received data is directly transmitted to the corresponding application or sub-device.
4. A hardware-based network congestion control device (200), characterized in that: include: A sending data acquisition module (201) is configured to acquire and save sending data of at least one application in the current device and / or sending data of at least one sub-device of the current device; The sending data scheduling module (202) is configured to: obtain the priority rule and scheduling rule sent by the parent device of the current device or the priority rule and scheduling rule set at the current device; classify the stored sending data according to the priority rule, and push the sending data according to the priority classification order and the scheduling rule; The sending data transmission module (203) is configured to transmit the pushed sending data to the parent device.
5. The device according to claim 4, characterized in that The pushing of the transmission data according to the priority classification order and the predefined scheduling rules further comprises: The priority classification includes instant sending data and non-instant sending data; the instant sending data is pushed first, and the non-instant sending data waits for subsequent pushing; The scheduling rules include the communication retention time and communication blocking state of the push data; The transmission data is pushed within the retention time and when the communication blocking state is not blocked.
6. The device according to claim 4, characterized in that The device further comprises: The receiving data scheduling module (204) is configured to: receive the receiving data of the parent device and determine whether the current communication is blocked; If so, the received data is transmitted to the corresponding application and / or sub-device after the blocking is completed; If not, the received data is directly transmitted to the corresponding application and / or sub-device.
7. An electronic device (300), comprising: at least one processor (310); as well as A memory (320) coupled to the at least one processor (310), the memory (320) being used to store instructions, which, when executed by the at least one processor (310), causes the processor (310) to perform the method according to any one of claims 1 to 3.
8. A computer-readable storage medium having computer instructions stored thereon, wherein the computer instructions, when executed, execute the method according to any one of claims 1 to 3.
9. A computer program product, characterized in that The invention comprises a computer program, which implements the method according to any one of claims 1 to 3 when being executed by a processor.
Citation Information
Patent Citations
NB-IoT data reporting method, device, system and computer readable storage medium
CN110445824A
Data processing method and device and computer equipment
CN115269225A
Data forwarding method, VPP network element equipment and readable storage medium
CN115499386A
Method for controlling data flow associated with a communications node
US6501733B1
