Data transmission method and device, storage medium and electronic equipment

By caching, merging and congestion prediction of data packets of multiple nodes in the Internet of Things network, the problem of excessive network resource and energy consumption caused by traditional sensor nodes sending data independently is solved, and more efficient data transmission and network stability are achieved .

CN119232660AActive Publication Date: 2024-12-31CHINA TELECOM CORP LTD TECHNOLOGY INNOVATION CENTER +1

Patent Information

Application Number
CN202411322862.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-20
Publication Date
2024-12-31
Estimated Expiration
2044-09-20

AI Technical Summary

Technical Problem

Traditional sensor nodes in the Internet of Things network send data independently, resulting in excessive network resources and energy consumption, and the topology needs to be reconfigured in case of network failure, resulting in instability and unreliability.

Method used

By caching and merging data packets of multiple nodes, the congestion status of the transmission path is predicted, and based on the prediction results, whether to switch to the backup path to send data is decided.

Benefits of technology

Significantly reduce the number of data packets in the network, improve transmission efficiency, reduce energy consumption, reduce network topology reconfiguration time, and ensure the continuity of message transmission and network stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119232660A_ABST
    Figure CN119232660A_ABST
Patent Text Reader

Abstract

The invention provides a data transmission method and device, a storage medium and electronic equipment, and relates to the technical field of Internet of Things. The method comprises the following steps: caching and merging data packets of a plurality of nodes, and determining a transmission message; sending the transmission message to a target receiving end through a first transmission path, and predicting a congestion state of the first transmission path; and according to the predicted congestion state of the first transmission path, determining whether to send the transmission message to the target receiving end through a second transmission path. The data packets of a plurality of nodes are cached and merged to generate a single transmission message, so that the number of the data packets transmitted in a network can be remarkably reduced, and the data transmission efficiency is improved; the congestion prediction is performed on the first transmission path, the second transmission path is planned in advance before the first transmission path is congested, and when the first transmission path is congested, the second transmission path is switched, so that the time required for reconfiguring the network topology after the congestion occurs is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0002] In the Internet of Things (IoT), there are a large number of sensors as nodes that collect and exchange data with other devices through the network. In the traditional IoT, each sensor node independently sends data to its parent node, which will result in a large number of small data packets being transmitted in the network. This decentralized transmission will cause a large amount of network resources and energy consumption; when a fault occurs in the network, it will take a certain amount of time to reconfigure the network topology, causing network transmission interruption, making the IoT network unstable and unreliable.

[0003] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0004] The present disclosure provides a data transmission method and device, a storage medium and an electronic device, which can overcome the problem of unstable and unreliable Internet of Things networks at least to a certain extent.

[0005] Other features and advantages of the present disclosure will become apparent from the following detailed description, or may be learned in part by the practice of the present disclosure.

[0006] According to one aspect of the present disclosure, there is provided a data transmission method, comprising:

[0007] Cache and merge data packets from multiple nodes to determine the transmission message;

[0008] Sending the transmission message to a target receiving end via a first transmission path, and predicting a congestion state of the first transmission path;

[0009] According to the predicted congestion state of the first transmission path, it is determined whether to send the transmission message to the target receiving end through the second transmission path.

[0010] In some embodiments, caching and merging data packets of multiple nodes to determine a transmission message includes:

[0011] Get data packets from multiple nodes belonging to the same device;

[0012] The data packets of the multiple nodes are cached, and when the number of cached data packets reaches a merging threshold, the currently cached data packets are merged and compressed to determine a transmission message.

[0013] In some embodiments, sending the transmission message to a target receiving end through a first transmission path and predicting a congestion state of the first transmission path includes:

[0014] Performing anomaly detection on the transmission message;

[0015] sending the transmission message that passes the anomaly detection to the target receiving end through the first transmission path;

[0016] The state data of the first transmission path in transmitting the transmission message is obtained, and the congestion state of the first transmission path is predicted.

[0017] In some embodiments, performing anomaly detection on the transmission message includes:

[0018] Inputting the transmission message into the anomaly detection model to determine an anomaly detection value of the transmission message;

[0019] If the transmission message abnormality detection value is less than the abnormality judgment threshold, the transmission message passes the abnormality detection;

[0020] If the transmission message abnormality detection value is greater than or equal to the abnormality judgment threshold, the transmission message fails the abnormality detection.

[0021] In some embodiments, the process of determining the anomaly detection model includes:

[0022] Get historical transmission information of multiple devices collected during a set continuous time period;

[0023] Performing data cleaning on the historical transmission information and normalizing the numerical features to determine normalized historical transmission data;

[0024] A normal distribution probability model is established, parameters of the normal distribution probability model are set according to the normalized historical transmission data, and an anomaly detection model is determined.

[0025] In some embodiments, sending a transmission message that passes anomaly detection to a target receiving end through a first transmission path includes:

[0026] The first node receives a directed acyclic graph information object message determined based on the transmission message detected by anomaly;

[0027] If the directed acyclic graph information object message is the first directed acyclic graph information object message received by the first node, adding the sender of the directed acyclic graph information object message as a parent node of the first node;

[0028] Determining an ordering of the first node relative to its parent node in the directed acyclic graph;

[0029] The first node sends a destination announcement object message to its parent node and multicasts a directed acyclic graph information object message to adjacent nodes based on the ordering in the directed acyclic graph to determine a first transmission path;

[0030] The transmission message that passes the abnormality detection is sent to a target receiving end through the first transmission path.

[0031] In some embodiments, determining the order of the first node relative to its parent node in the directed acyclic graph includes:

[0032] Obtaining the queue occupancy rate of the first node and its parent node, the passing node data and the node expected remaining energy information;

[0033] The queue occupancy rate, the passing node data and the node expected remaining energy information are input into the congestion and energy minimization function to determine the order of the first node relative to its parent node in the directed acyclic graph.

[0034] In some embodiments, it also includes:

[0035] If the directed acyclic graph information object message is not the first directed acyclic graph information object message received by the first node, determining whether the directed acyclic graph information object message is sent by a child node; the first node is a child node;

[0036] If the directed acyclic graph information object message is sent by a child node, the child node count in the node data will be incremented.

[0037] In some embodiments, it also includes:

[0038] If the directed acyclic graph information object message is not sent by a child node, determining whether the directed acyclic graph information object message comes from the current parent node;

[0039] If the directed acyclic graph information object message does not come from the current parent node, determining the source of the directed acyclic graph information object message as the new parent node;

[0040] Add the new parent node to the parent node list where the current parent node is located;

[0041] Obtaining queue occupancy, passing node data, and node expected remaining energy information between the new parent node and the first node;

[0042] Input the queue occupancy rate, the passing node data and the node expected remaining energy information into the congestion and energy minimization function to determine the order of the new parent node in the directed acyclic graph;

[0043] If the ranking of the new parent node in the directed acyclic graph is smaller than the ranking of the current parent node in the directed acyclic graph, determining the new parent node as the parent node of the first node;

[0044] Updating the new parent node to the position of the current parent node in the directed acyclic graph, discarding the current parent node, and determining an updated directed acyclic graph;

[0045] The first node sends a destination announcement object message to the new parent node, and multicasts a directed acyclic graph information object message to adjacent nodes based on the updated directed acyclic graph.

[0046] In some embodiments, it also includes: if the order of the new parent node in the directed acyclic graph is greater than or equal to the order of the current parent node in the directed acyclic graph, then maintaining the order of the current parent node in the directed acyclic graph.

[0047] In some embodiments, obtaining state data of the first transmission path in transmitting the transmission message and predicting a congestion state of the first transmission path includes:

[0048] Acquire state data of the first transmission path in transmitting the transmission message;

[0049] Determine, according to the state data, a queue occupancy of the first transmission path for a future set time period using a trained congestion prediction model;

[0050] If the queue occupancy of the first transmission path for the future set time length is less than the congestion judgment threshold, the congestion state of the first transmission path is non-congested;

[0051] If the queue occupancy of the first transmission path for the future set time length is greater than or equal to the congestion determination threshold, the congestion state of the first transmission path is congestion.

[0052] In some embodiments, the training process of the congestion prediction model includes:

[0053] Acquire status data of the transmission data; wherein the status data includes: any one or more combinations of sending time, receiving time, packet loss rate and / or delay;

[0054] determining data characteristics of the status data;

[0055] Establishing a long short-term memory network model and inputting data features of the state data;

[0056] The weights and bias items of the long short-term memory network model are adjusted by back propagation and optimization algorithms, and the long short-term memory network is trained with the goal of minimizing the difference between the predicted output queue occupancy and the actual occupancy;

[0057] When the long short-term memory network model reaches the training target, the long short-term memory network model that reaches the training target is determined as a congestion prediction model.

[0058] In some embodiments, the predicted congestion state of the first transmission path includes: congested or not congested;

[0059] Determining whether to send the transmission message to the target receiving end through the second transmission path according to the predicted congestion state of the first transmission path includes:

[0060] When the predicted congestion state of the first transmission path is congestion, caching the transmission message;

[0061] Determine a second transmission path according to the queue occupancy rate, the passing node data and the expected remaining energy information of the node;

[0062] The buffered transmission message is sent to the target receiving end through the second transmission path.

[0063] In some embodiments, determining the second transmission path according to the queue occupancy, the path passing node data and the node expected remaining energy information includes:

[0064] Calculate the best replacement parent node according to the queue occupancy of the first node and its parent node, the node data passed by the path and the node expected remaining energy information;

[0065] According to the best alternative parent node, multi-path routing is performed to determine multiple alternative transmission paths;

[0066] The congestion status of the plurality of candidate transmission paths is predicted using a trained congestion prediction model, and the candidate transmission path with the smallest congestion status is determined as the second transmission path.

[0067] In some embodiments, it also includes:

[0068] Obtaining the queue occupancy rate of the second transmission path, the node data passing through the path, and the expected remaining energy information of the node;

[0069] Input the queue occupancy rate, path node data and node expected remaining energy information of the second transmission path into the congestion and energy minimization function, and determine the order of the best replacement parent node in the second transmission path in the directed acyclic graph;

[0070] If the ranking of the best alternative parent node in the directed acyclic graph is smaller than the ranking of the current parent node of the first transmission path in the directed acyclic graph, the ranking of the best alternative parent node in the directed acyclic graph is updated.

[0071] According to another aspect of the present disclosure, there is also provided a data transmission device, including:

[0072] A transmission message determination module, used to cache and merge data packets of multiple nodes and determine the transmission message;

[0073] A congestion prediction module, configured to send the transmission message to a target receiving end via a first transmission path, and predict a congestion state of the first transmission path;

[0074] The transmission path switching module is used to determine whether to send the transmission message to the target receiving end through the second transmission path according to the predicted congestion state of the first transmission path.

[0075] According to another aspect of the present disclosure, an electronic device is also provided, which includes: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute any one of the above-mentioned data transmission methods by executing the executable instructions.

[0076] According to another aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, any one of the above-mentioned data transmission methods is implemented.

[0077] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, any one of the above data transmission methods is implemented.

[0078] The data transmission method and device, storage medium and electronic device provided in the embodiments of the present disclosure include: caching and merging data packets of multiple nodes to determine a transmission message; sending the transmission message to the target receiving end through a first transmission path to predict the congestion state of the first transmission path; and determining whether to send the transmission message to the target receiving end through a second transmission path according to the predicted congestion state of the first transmission path. The embodiment of the present disclosure generates a single transmission message by caching and merging data packets of multiple nodes, which can significantly reduce the number of data packets transmitted in the network, improve data transmission efficiency, and reduce the energy consumed by frequent data transmission, thereby improving energy efficiency. The merged transmission message is sent to the target receiving end through the first transmission path, and congestion prediction is performed on the first transmission path. The second transmission path is planned in advance before the first transmission path is congested. When the first transmission path is congested due to a fault or bottleneck, the transmission message can be directly switched to the second transmission path to send the transmission message to the target receiving end, which reduces the time required to reconfigure the network topology after congestion occurs, realizes the continuity of message transmission, increases throughput and network and equipment life, and ensures the stability and reliability of the Internet of Things.

[0079] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0080] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0081] Figure 1 A schematic diagram showing the system structure of a data transmission method in an embodiment of the present disclosure.

[0082] Figure 2 A schematic diagram of a data transmission method in an embodiment of the present disclosure is shown.

[0083] Figure 3 A schematic diagram of a transmission message determination process of a data transmission method in an embodiment of the present disclosure is shown.

[0084] Figure 4 A schematic diagram of a process of predicting a congestion state of a first transmission path in a data transmission method according to an embodiment of the present disclosure is shown.

[0085] Figure 5 A schematic diagram of a process of performing anomaly detection on a transmission message in a data transmission method according to an embodiment of the present disclosure is shown.

[0086] Figure 6 A schematic diagram of a data transmission method according to an embodiment of the present disclosure is shown in which a transmission message that passes anomaly detection is sent to a target receiving end via a first transmission path.

[0087] Figure 7 A schematic diagram of a parent node updating process of a data transmission method in an embodiment of the present disclosure is shown.

[0088] Figure 8 A schematic diagram showing a detailed process of predicting the congestion state of a first transmission path in a data transmission method according to an embodiment of the present disclosure is shown.

[0089] Fig. 9 A schematic diagram showing the training process of a congestion prediction model of a data transmission method in an embodiment of the present disclosure is shown.

[0090] Fig.10 A schematic diagram showing a process of determining whether to send a transmission message to a target receiving end through a second transmission path in a data transmission method according to an embodiment of the present disclosure.

[0091] Fig.11 A schematic diagram of a process of determining a second transmission path in a data transmission method according to an embodiment of the present disclosure is shown.

[0092] Fig.12A schematic diagram of a sorting process of updating the best replacement parent node in a directed acyclic graph in a data transmission method according to an embodiment of the present disclosure is shown.

[0093] Fig.13 A flow chart of a data transmission method in an embodiment of the present disclosure is shown.

[0094] Fig.14 A flowchart of anomaly detection and congestion prediction of a data transmission method in an embodiment of the present disclosure is shown.

[0095] Fig.15 A dynamic parent node multi-path selection flow chart of a data transmission method in an embodiment of the present disclosure is shown.

[0096] Fig.16 A schematic diagram of a data transmission device in an embodiment of the present disclosure is shown.

[0097] Fig.17 A structural block diagram of a computer device showing a data transmission method in an embodiment of the present disclosure. DETAILED DESCRIPTION

[0098] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that the disclosure will be more comprehensive and complete and to fully convey the concepts of the example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

[0099] In addition, the accompanying drawings are only schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0100] The specific implementation of the embodiment of the present disclosure is described in detail below with reference to the accompanying drawings.

[0101] Figure 1 FIG. 1 shows an exemplary application system architecture diagram to which the data transmission method in the embodiment of the present disclosure can be applied. Figure 1 As shown, the system architecture may include a terminal device 101 , a network 102 and a server 103 .

[0102] The network 102 is a medium for providing a communication link between the terminal device 101 and the server 103, and can be a wired network or a wireless network.

[0103] Optionally, the wireless network or wired network described above uses standard communication technology and / or protocol. The network is usually the Internet, but it can also be any network, including but not limited to a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), a mobile, wired or wireless network, a dedicated network or any combination of a virtual private network). In some embodiments, technologies and / or formats including Hyper Text Mark-up Language (HTML), Extensible Markup Language (XML), etc. are used to represent data exchanged through the network. In addition, conventional encryption technologies such as Secure Socket Layer (SSL), Transport Layer Security (TLS), Virtual Private Network (VPN), Internet Protocol Security (IPsec) can also be used to encrypt all or some links. In other embodiments, customized and / or dedicated data communication technologies can also be used to replace or supplement the above data communication technologies.

[0104] The terminal device 101 can be various electronic devices, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, wearable devices, augmented reality devices, virtual reality devices, etc.

[0105] Optionally, the client of the application installed in different terminal devices 101 is the same, or the client of the same type of application based on different operating systems. Based on the different terminal platforms, the specific form of the client of the application can also be different, for example, the application client can be a mobile client, a PC client, etc.

[0106] The server 103 may be a server that provides various services, such as a background management server that provides support for the device operated by the user using the terminal device 101. The background management server may analyze and process the received request and other data, and feed back the processing results to the terminal device.

[0107] Optionally, the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. The terminal can be a smart phone, tablet computer, laptop computer, desktop computer, smart speaker, smart watch, etc., but is not limited to this. The terminal and the server can be directly or indirectly connected via wired or wireless communication, which is not limited in this application.

[0108] Those skilled in the art will know that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration, and any number of terminal devices, networks and servers may be provided according to actual needs, and the embodiments of the present disclosure do not limit this.

[0109] Under the above system architecture, a data transmission method is provided in an embodiment of the present disclosure, and the method can be executed by any electronic device with computing and processing capabilities.

[0110] In some embodiments, the data transmission method provided in the embodiments of the present disclosure can be executed by a terminal device of the above-mentioned system architecture; in other embodiments, the data transmission method provided in the embodiments of the present disclosure can be executed by a server in the above-mentioned system architecture; in other embodiments, the data transmission method provided in the embodiments of the present disclosure can be implemented by the terminal device and the server in the above-mentioned system architecture through interaction.

[0111] Figure 2 A schematic diagram of a data transmission method in an embodiment of the present disclosure is shown. Figure 2 As shown, the data transmission method provided in the embodiment of the present disclosure includes the following steps:

[0112] Step S202: caching and merging data packets of multiple nodes to determine transmission messages;

[0113] Step S204: sending a transmission message to a target receiving end via a first transmission path, and predicting a congestion state of the first transmission path;

[0114] Step S206: Determine whether to send the transmission message to the target receiving end through the second transmission path according to the predicted congestion state of the first transmission path.

[0115] This embodiment can significantly reduce the number of data packets transmitted in the network by caching and merging data packets of multiple nodes to generate a single transmission message, improve data transmission efficiency, and reduce the energy consumed by frequent data transmission, thereby improving energy efficiency. The merged transmission message is sent to the target receiving end through the first transmission path, and congestion prediction is performed on the first transmission path. The second transmission path is planned in advance before the first transmission path is congested. When the first transmission path is congested due to failures or bottlenecks, it can be directly switched to the second transmission path to send the transmission message to the target receiving end, reducing the time required to reconfigure the network topology after congestion occurs, achieving continuous message transmission, increasing throughput and network and equipment life, and ensuring the stability and reliability of the Internet of Things.

[0116] Figure 3 A schematic diagram of a transmission message determination process of a data transmission method in an embodiment of the present disclosure is shown. Figure 3 As shown, in the embodiment, caching and merging data packets of multiple nodes to determine a transmission message includes:

[0117] Step S302: Acquire data packets of multiple nodes belonging to the same device;

[0118] Step S304: caching data packets of multiple nodes, and when the number of cached data packets reaches a merging threshold, merging and compressing the currently cached data packets to determine the transmission message.

[0119] In the Internet of Things, each sensor that collects data is regarded as a node. When there are multiple nodes, the prior art sends data to the parent node to which it belongs, resulting in the transmission of a large number of small data packets. This embodiment adds a proxy sensor with a cache as a proxy node to aggregate data packets of multiple nodes of the same device. The proxy node communicates and connects multiple nodes of the same device. After each node uses the sensor to collect corresponding data, a data packet of each node is formed. The proxy node obtains data packets belonging to multiple nodes of the same device. The proxy node has a cache, caches the obtained data packets of multiple nodes, and counts the number and capacity of the cached data packets. When the number of cached data packets reaches a merging threshold, the currently cached data packets are merged and compressed to determine the transmission message. Furthermore, when the size of the cached data packets reaches a cache capacity threshold, the currently cached data packets are merged and compressed to determine the transmission message.

[0120] This embodiment adds a proxy sensor with a cache to cache, merge and compress multiple data of the same device before transmission, thereby reducing the transmission of scattered data. This can significantly reduce the number of data packets transmitted in the network, improve data transmission efficiency, and at the same time reduce the energy consumed by frequent data transmission, thereby improving energy efficiency.

[0121] Figure 4 A schematic diagram of a process of predicting a congestion state of a first transmission path in a data transmission method according to an embodiment of the present disclosure is shown. Figure 4 As shown, in the embodiment, sending a transmission message to a target receiving end through a first transmission path and predicting a congestion state of the first transmission path include:

[0122] Step S402: performing abnormality detection on the transmission message;

[0123] Step S404: sending the transmission message that passes the abnormality detection to the target receiving end through the first transmission path;

[0124] Step S406: Acquire state data of the first transmission path in transmitting the transmission message, and predict the congestion state of the first transmission path.

[0125] In the Internet of Things network, abnormal messages are generated when a device, sensor or part of the network does not conform to normal operation. For example, human errors, network attacks and data tampering may generate abnormal messages. These abnormal messages need to be identified and filtered out during transmission, leaving only the transmission messages that pass the abnormal detection. The transmission message that passes the abnormal detection is sent to the target receiving end through the first transmission path; the transmission message is transmitted between the sending end and the target receiving end. When the first transmission path transmits the transmission message, the state message of the first transmission path is obtained, and the congestion state of the first transmission path is predicted through the state message.

[0126] By predicting the congestion state of the first transmission path, the second transmission path can be prepared and planned before congestion occurs. When the first transmission path is congested, it can be switched to the second transmission path in time to send the transmission message to the target receiving end, thereby achieving uninterrupted transmission of the transmission message, achieving continuous message transmission, and reducing the time required to reconfigure the network topology after congestion occurs.

[0127] When performing anomaly detection on transmission messages, an anomaly detection model is used. The process of determining the anomaly detection model includes: obtaining historical transmission information of multiple devices collected in a set continuous time period; performing data cleaning on the historical transmission information and normalizing the numerical features to determine the normalized historical transmission data; establishing a normal distribution probability model, setting the parameters of the normal distribution probability model according to the normalized historical transmission data, and determining the anomaly detection model.

[0128] In the embodiment, the historical transmission information (data i =(data 1 , data 2 , data 3 ,...,dataN ) as an example, the historical transmission information is cleaned to remove duplicate, erroneous and irrelevant information to obtain the cleaned historical transmission data; the numerical features in the cleaned historical transmission data are normalized to obtain the normalized historical transmission data. A normal distribution probability model is established. For each sample in the normalized historical transmission data, the expected value parameters (u1,...,u n ) and variance parameter

[0129] The expected value parameter is expressed as

[0130] u j is the expected value parameter of the jth sample; m is the number of samples; For data i The corresponding j samples.

[0131] The variance parameter is expressed as

[0132] is the variance parameter of the jth sample; m is the number of samples.

[0133] The expected value parameter and variance parameter are parameters of the normal distribution probability model.

[0134] After setting the expected value parameters and variance parameters, the anomaly detection model is obtained:

[0135]

[0136] Among them, P(data) is the anomaly detection value of the transmission message after calculation by the anomaly detection model; exp() is the exponential function; ∏ is the multiplication operation.

[0137] Figure 5 A schematic diagram of a process of detecting anomalies in a transmission message in a data transmission method according to an embodiment of the present disclosure is shown. Figure 5 As shown, anomaly detection is performed on the transmission message, including:

[0138] Step S502: input the transmission message into the anomaly detection model to determine the transmission message anomaly detection value;

[0139] Step S504: If the transmission message anomaly detection value is less than the anomaly judgment threshold, the transmission message passes the anomaly detection;

[0140] Step S506: If the transmission message anomaly detection value is greater than or equal to the anomaly judgment threshold, the transmission message fails the anomaly detection.

[0141] In the embodiment, the transmission message is input into the anomaly detection model for calculation, and the transmission message anomaly detection value P(data) is output. The anomaly judgment threshold ε is preset; the size between the transmission message anomaly detection value P(data) and the anomaly judgment threshold ε is judged. If the transmission message anomaly detection value is greater than or equal to the anomaly judgment threshold, that is, P(data)≥ε, the transmission message is judged to be an abnormal message, the current transmission message is discarded, and no longer transmitted, and the transmission message fails the anomaly detection. If the transmission message anomaly detection value is less than the anomaly judgment threshold, that is, P(data)<ε, the transmission message is judged to be a normal message, the transmission message passes the anomaly detection, and subsequent processing can be performed.

[0142] Figure 6 A schematic diagram of a data transmission method according to an embodiment of the present disclosure is shown in which a transmission message that passes anomaly detection is sent to a target receiving end through a first transmission path, such as Figure 6 As shown, sending the transmission message that passes the anomaly detection to the target receiving end through the first transmission path includes:

[0143] Step S602: The first node receives a directed acyclic graph information object message determined based on a transmission message detected through anomaly detection;

[0144] Step S604: if the directed acyclic graph information object message is the first directed acyclic graph information object message received by the first node, adding the sender of the directed acyclic graph information object message as a parent node of the first node;

[0145] Step S606: Determine the order of the first node relative to its parent node in the directed acyclic graph;

[0146] Step S608: The first node sends a destination announcement object message to its parent node, and multicasts a directed acyclic graph information object message to adjacent nodes based on the order in the directed acyclic graph to determine a first transmission path;

[0147] Step S6010: Send the transmission message that passes the anomaly detection to the target receiving end through the first transmission path.

[0148] After passing the anomaly detection, the transmission message will be sent to the target receiving end. In the IoT network, there is a complex network topology composed of multiple nodes. There are multiple transmission paths between the sender and the target receiving end. To send a transmission message, it is necessary to select the corresponding transmission path from multiple transmission paths to achieve efficient transmission of the transmission message.

[0149] In the embodiment, the Internet of Things network adopts an RPL network constructed by the RPL protocol (Routing Protocol for Low-power and Lossy networks). A directed acyclic graph (DAG) is constructed in the RPL network, and a path from each node to the target node in the network is established. Specifically, this embodiment adopts DoDAG (Destination-Oriented Directed Acyclic Graph); wherein, DoDAG is a special DAG for optimizing data routing from multiple nodes in the network to the target node. Each node can select one or more optimal paths to the target node, which can ensure that data packets can be efficiently and reliably transmitted to the destination, while avoiding circular routing. When constructing DODAG in the RPL network, the child count metric ChildCount(N) is used to maintain the child node status of the specified parent node, and the parent node will put the child node information into the cache area.

[0150] Taking a new node as the first node as an example, first a first transmission path needs to be established. The first node receives a directed acyclic graph information object message (DAG Information Object, DIO message), which is determined based on the transmission message detected by anomaly. In this embodiment, the proxy node determines the corresponding DIO message based on the transmission message detected by anomaly, and sends the corresponding DIO message to the first node.

[0151] DIO messages are control messages in RPL networks, and contain information about DAG, such as DAG identifiers, node ranks, preferences, etc. The main functions of DIO messages include: DAG discovery, which helps nodes discover surrounding DAGs and understand the basic properties of DAGs; parent node selection, where nodes can select the best parent node based on the information in the received DIO message to build a path to the DAG root node; DAG maintenance, which is used to maintain the integrity of DAG and respond to network changes by regularly updating information.

[0152] Determine whether the DIO message received by the first node is the first DIO message. If the DIO message is the first DIO message received by the first node, then add the sender of the DIO message as the parent node of the first node. In this embodiment, the proxy node is added as the parent node of the first node. There is an inheritance relationship between the first node and the parent node, that is, there is a directed edge between the first node and the parent node, so that the order of the first node relative to its parent node in the directed acyclic graph can be determined. After determining the order, the first node sends a destination announcement object message (Destination Advertisement Object, DAO message) to its parent node, and the first node multicasts DIO messages to adjacent nodes based on the order in the directed acyclic graph, thereby determining the first transmission path.

[0153] DAO messages are control messages in the RPL network, which are used to establish and maintain routes in the downstream direction. When a node wants to report to the DAG root node the destination it can reach, it sends a DAO message. The main functions of DAO messages include: downstream route construction, DAO messages help establish a downstream path from the DAG root node to the leaf node. Route announcement, the node announces the destination it can reach to its parent node through a DAO message. Route maintenance, used to maintain the connectivity of these downstream paths. In one instance, the multicast DIO message also includes the rank of the DAO message. Based on the determined first transmission path, the transmission message that passes the anomaly detection is sent to the target receiving end.

[0154] In an embodiment, determining the order of a first node relative to its parent node in a directed acyclic graph includes: obtaining queue occupancy, passing node data, and node expected remaining energy information of the first node and its parent node; inputting the queue occupancy, passing node data, and node expected remaining energy information into a congestion and energy minimization function to determine the order of the first node relative to its parent node in the directed acyclic graph.

[0155] In a directed acyclic graph, if there is a directed edge between the first node and its parent node, then there is a data transmission queue between the first node and the parent node, and the queue occupancy P of the first node and its parent node can be obtained. k , passing node data and node expected remaining energy information E N , where the node data includes the child node count ChildCount(N). Node expected remaining energy information E NRefers to the current remaining capacity of the node. For example, when the node uses a battery as its energy source, when the remaining battery power is 50%, the node's expected remaining energy information is calculated based on the remaining battery power. In addition to batteries, the node's energy source can be of various types, such as fuel, solar energy, and wind energy. The queue occupancy, passing node data, and node expected remaining energy information are input into the congestion and energy minimization function to calculate the order of the first node relative to its parent node in the directed acyclic graph.

[0156] In the Internet of Things network, the remaining energy information of each node is the basis for supporting the node to collect and transmit data. The energy of the node is usually supplied by limited energy. When determining the first transmission path, the present application takes the queue occupancy rate P as the k Based on the node data, the node expected remaining energy information E is also considered. N , achieving continuous and reliable data transmission, while also achieving load balancing and secure communication.

[0157] Node expected remaining energy information E N , is based on the node’s current remaining energy E res (N) and the energy E required by the node to transmit the current data trans (N) ratio is determined; specifically, the node expected remaining energy information E N , calculated using the following formula:

[0158]

[0159] Among them, E N is the expected remaining energy information of the node; E res (N) is the current remaining energy of the node; E trans (N) is the energy required by the node to transmit the current data.

[0160] Among them, the node’s current remaining energy E res (N) is used to measure how much energy the current node has left. The node’s current remaining energy E res (N) is determined based on the initial energy of the node and the current energy of the node; specifically, the current remaining energy of the node E res (N) is calculated using the following formula:

[0161]

[0162] Among them, E res (N) is the current remaining energy of the node; E init (N) is the initial energy of the node; E cur (N) is the current energy of the node.

[0163] The congestion and energy minimization functions are used to calculate the objective function value, which is based on deep learning training with the goal of minimizing the queue occupancy and the number of nodes passing through, and maximizing the expected remaining energy information of the nodes; the congestion and energy minimization functions realize the selection of the transmission path in the process of obtaining the objective function value.

[0164] The congestion and energy minimization function is expressed as follows:

[0165]

[0166] Among them, F is the objective function value; P k is the queue occupancy; ChildCount(N) is the count of child nodes passed; E N is the expected remaining energy information of the node; * is multiplication; a, b, c are calculation parameters, which change with different nodes.

[0167] In an embodiment, when determining whether the DIO message received by the first node is the first DIO message, it also includes: if the directed acyclic graph information object message is not the first directed acyclic graph information object message received by the first node, determining whether the directed acyclic graph information object message is issued by a child node; the first node belongs to a child node; if the directed acyclic graph information object message is issued by a child node, the child node count in the node data is incremented.

[0168] When determining whether the DIO message is the first time, if the DIO message is not the first DIO message received by the first node, the next step is to perform anomaly detection on the DIO message, and the anomaly detection model established above is also used; the DIO message is input into the anomaly detection model to determine the DIO message anomaly detection value. If the DIO message anomaly detection value is greater than or equal to the anomaly judgment threshold, the DIO message is determined to be an abnormal message, and the DIO message is discarded, and no subsequent processing steps are performed; if the DIO message anomaly detection value is less than the anomaly judgment threshold, the DIO message passes the anomaly detection; the DIO message that passes the anomaly detection is determined whether it is sent by a child node. If the DIO message is sent by a child node, the child node count in the node data is incremented.

[0169] When building a directed acyclic graph, as part of the parent selection process, it uses the child count metric to maintain the children of a given parent node, keeps a buffer for each DIO message it gets from the child, increments the child count value, and keeps track of the child count.

[0170] Figure 7 A schematic diagram of the process of updating the parent node in the embodiment of the present disclosure is shown as follows: Figure 7 As shown, in the embodiment, when determining whether a DIO message that passes the abnormality detection is sent by a child node, it also includes:

[0171] Step S702: if the directed acyclic graph information object message is not sent by a child node, determine whether the directed acyclic graph information object message comes from the current parent node;

[0172] Step S704: if the directed acyclic graph information object message does not come from the current parent node, the source of the directed acyclic graph information object message is determined to be the new parent node;

[0173] Step S706: adding the new parent node to the parent node list where the current parent node is located;

[0174] Step S708: Obtain the queue occupancy rate, passing node data and node expected remaining energy information between the new parent node and the first node;

[0175] Step S7010: Input the queue occupancy rate, the passing node data and the node expected remaining energy information into the congestion and energy minimization function to determine the order of the new parent node in the directed acyclic graph;

[0176] Step S7012: If the ranking of the new parent node in the directed acyclic graph is smaller than the ranking of the current parent node in the directed acyclic graph, the new parent node is determined as the parent node of the first node;

[0177] Step S7014: updating the new parent node to the position of the current parent node in the directed acyclic graph, discarding the current parent node, and determining the updated directed acyclic graph;

[0178] Step S7016: The first node sends a destination announcement object message to the new parent node, and multicasts a directed acyclic graph information object message to adjacent nodes based on the updated directed acyclic graph.

[0179] A child node will be connected to multiple child nodes, and a child node will also be connected to multiple parent nodes. In the process of transmitting a transmission message, when it is determined that the DIO message is not sent by a child node, it is necessary to decide whether to update the parent node of the current child node to implement path reselection to achieve load balancing.

[0180] Determine whether the DIO message comes from the current parent node. If the DIO message deployment comes from the current parent node, then determine the source of the DIO message as the new parent node; add the new parent node to the parent node list where the current parent node is located. At this time, the parent node list includes two parent nodes: the new parent node and the current parent node, and one needs to be used when transmitting the path. Next, calculate which parent node to use. Obtain the queue occupancy, node data and node expected remaining energy information between the new parent node and the first node, input the queue occupancy, node data and node expected remaining energy information between the new parent node and the first node into the congestion and energy minimization function, and determine the order of the new parent node in the directed acyclic graph; compare the order of the new parent node in the directed acyclic graph with the order of the current parent node in the directed acyclic graph. The order is the ranking in the acyclic graph. The smaller the ranking, the smaller the order, and the closer to the root node, which means that the corresponding path is a better path. If the new parent node is ranked smaller than the current parent node in the directed acyclic graph, the new parent node is determined as the parent node of the first node; the new parent node is updated to the position of the current parent node in the directed acyclic graph, and the current parent node is discarded to determine the updated directed acyclic graph; the first node sends a DAO to the new parent node, and multicasts a DIO message to adjacent nodes based on the updated directed acyclic graph, thereby updating the transmission path.

[0181] Different from the defects of fixed and inflexible transmission paths caused by the static single-parent node selection mechanism usually adopted in the prior art, this embodiment can dynamically adjust according to the queue occupancy of the node network, the node count, and the expected remaining energy information of the node, including the ranking of the node and the selection of the parent node. This dynamic adjustment mechanism enhances the flexibility and adaptability of the algorithm. Load balancing based on the energy status of the node and the network congestion situation helps to extend the life of the IoT device and improve the performance of the network.

[0182] In an embodiment, when comparing the order of the new parent node in the directed acyclic graph with the order of the current parent node in the directed acyclic graph, it also includes: if the order of the new parent node in the directed acyclic graph is greater than or equal to the order of the current parent node in the directed acyclic graph, then the order of the current parent node in the directed acyclic graph is maintained, and the first node multicasts the DIO message based on the currently unupdated directed acyclic graph, does not update the transmission path, and still uses the first transmission path.

[0183] Figure 8 A schematic diagram showing a detailed process of predicting the congestion state of the first transmission path in an embodiment of the present disclosure is shown as follows: Figure 8 As shown, obtaining state data of a first transmission path in transmitting a transmission message and predicting a congestion state of the first transmission path includes:

[0184] Step S802: Acquire the state data of the first transmission path in transmitting the transmission message;

[0185] Step S804: Determine the queue occupancy of the first transmission path for a future set time period using a trained congestion prediction model according to the state data;

[0186] Step S806: If the queue occupancy of the future set time length of the first transmission path is less than the congestion judgment threshold, the congestion state of the first transmission path is non-congested;

[0187] Step S808: If the queue occupancy of the first transmission path for the future set time period is greater than or equal to the congestion determination threshold, the congestion state of the first transmission path is congested.

[0188] The first transmission path will have status data when transmitting the transmission message. The status data is obtained and input into the trained congestion prediction model for prediction to obtain the queue occupancy of the first transmission path for a future set time period. The queue occupancy is expressed by the following formula:

[0189]

[0190] Among them, P k is the queue occupancy, NQ k is the message size of the current K queue, QS k is the total length of the K queue.

[0191] Compare the queue occupancy of the future set time length of the first transmission path with the congestion judgment threshold δ. If the queue occupancy of the future set time length of the first transmission path is less than the congestion judgment threshold, that is, P k <δ, the congestion state of the first transmission path will be uncongested after the future set time length; if the queue occupancy of the first transmission path for the future set time length is greater than or equal to the congestion judgment threshold, that is, P k ≥δ, the congestion state of the first transmission path will be congested after a set time in the future.

[0192] Fig. 9 A schematic diagram of the training process of the congestion prediction model in the embodiment of the present disclosure is shown as follows: Fig. 9 As shown in Figure 1, the training process of the congestion prediction model includes:

[0193] Step S902: Acquire status data of the transmission data; wherein the status data includes: any one or more combinations of sending time, receiving time, packet loss rate and / or delay;

[0194] Step S904: determining data characteristics of the status data;

[0195] Step S906: Establish a long short-term memory network model and input the data features of the state data;

[0196] Step S908: adjusting the weights and bias items of the LSTM network model through back propagation and optimization algorithms, and training the LSTM network with the goal of minimizing the difference between the predicted output queue occupancy and the actual occupancy;

[0197] Step S9010: When the long short-term memory network model reaches the training target, the long short-term memory network model that reaches the training target is determined as a congestion prediction model.

[0198] Acquire the state data of the transmission data, which is collected when the historical transmission data is transmitted. The state data includes: any one or more combinations of the sending time, receiving time, packet loss rate and / or delay; extract features from the state data to determine the data features of the state data; establish a long short-term memory network model LSTM, input the data features of the state data into the LSTM for training, adjust the weights and bias items of the long short-term memory network model through back propagation and optimization algorithms, and train the long short-term memory network with the training goal of minimizing the difference between the predicted output queue occupancy and the actual occupancy; monitor the difference between the output queue occupancy and the actual occupancy during the training process, and when the difference between the minimized predicted output queue occupancy and the actual occupancy reaches the set value, the long short-term memory network model reaches the training goal, and the long short-term memory network model that reaches the training goal at this time is determined as the congestion prediction model.

[0199] Fig.10 FIG. 1 is a schematic diagram showing a process of determining whether to send a transmission message to a target receiving end through a second transmission path in an embodiment of the present disclosure. Fig.10 As shown, the predicted congestion state of the first transmission path includes: congestion or non-congestion;

[0200] Determining whether to send a transmission message to a target receiving end through a second transmission path according to a predicted congestion state of the first transmission path includes:

[0201] Step S1002: When the predicted congestion state of the first transmission path is congested, the transmission message is cached;

[0202] Step S1004: determining a second transmission path according to the queue occupancy rate, the passing node data and the node expected remaining energy information;

[0203] Step S1006: Send the cached transmission message to the target receiving end through the second transmission path.

[0204] When the predicted congestion state of the first transmission path is congested, the transmission message is cached and transmission from the first transmission path is suspended. Next, according to the deep learning algorithm, the second transmission path is determined using the queue occupancy, the node data passed, and the node's expected remaining energy information, and the cached transmission message is sent to the target receiving end through the second transmission path.

[0205] Fig.11 A schematic diagram of the process of determining the second transmission path in an embodiment of the present disclosure is shown. Fig.11 As shown, determining the second transmission path according to the queue occupancy, the path passing node data and the node expected remaining energy information includes:

[0206] Step S1102: Calculate the best replacement parent node according to the queue occupancy of the first node and its parent node, the node data passed by the path, and the node expected remaining energy information;

[0207] Step S1104: performing multi-path routing according to the best alternative parent node to determine multiple candidate transmission paths;

[0208] Step S1106: using the trained congestion prediction model to predict the congestion status of multiple candidate transmission paths, and determining the candidate transmission path with the smallest congestion status as the second transmission path.

[0209] The calculation of the second transmission path is carried out step by step from the root node to the child node. When it is predicted that congestion will occur after a set period of time in the future, it is necessary to re-plan and design the transmission path starting from the parent node. The best alternative parent node is calculated based on the queue occupancy of the first node and its parent node, the node data passing through the path, and the expected remaining energy information of the node. The queue occupancy of the best alternative parent node is low and the expected remaining energy is large. According to the best alternative parent node, multi-path routing is performed on multiple child nodes inherited from the best alternative parent node and the child nodes of the child nodes to determine multiple alternative transmission paths; the congestion status of multiple alternative transmission paths is predicted using a trained congestion prediction model, and the alternative transmission path with the smallest congestion status is determined as the second transmission path. In one embodiment, the trained congestion prediction model includes congestion and energy minimization functions.

[0210] Fig.12 A schematic diagram of the sorting process of updating the best replacement parent node in a directed acyclic graph in an embodiment of the present disclosure is shown as follows: Fig.12 As shown, it also includes:

[0211] Step S1202: Obtaining the queue occupancy rate of the second transmission path, the node data passing through the path, and the node expected remaining energy information;

[0212] Step S1204: input the queue occupancy rate of the second transmission path, the node data passing through the path and the expected remaining energy information of the nodes into the congestion and energy minimization function, and determine the order of the best replacement parent node in the second transmission path in the directed acyclic graph;

[0213] Step S1206: If the ranking of the best alternative parent node in the directed acyclic graph is smaller than the ranking of the current parent node of the first transmission path in the directed acyclic graph, the ranking of the best alternative parent node in the directed acyclic graph is updated.

[0214] After determining the second transmission path, further obtain the queue occupancy rate, path node data and node expected remaining energy information of the second transmission path, input the queue occupancy rate, path node data and node expected remaining energy information of the second transmission path into the congestion and energy minimization function, and determine the order of the best alternative parent node in the directed acyclic graph in the second transmission path; compare the order of the best alternative parent node in the directed acyclic graph with the order of the current parent node in the directed acyclic graph of the first transmission path. If the order of the best alternative parent node in the directed acyclic graph is smaller than the order of the current parent node in the directed acyclic graph of the first transmission path, then update the position of the best alternative parent node in the directed acyclic graph and determine the updated directed acyclic graph; the first node sends a DAO message to the best alternative parent node, and multicasts the DIO message to the adjacent nodes based on the updated directed acyclic graph. If the order of the best alternative parent node in the directed acyclic graph is greater than or equal to the order of the current parent node in the directed acyclic graph of the first transmission path, then recalculate and select the best alternative parent node.

[0215] The disclosed embodiment can significantly reduce the number of data packets transmitted in the network and improve data transmission efficiency by merging different sensor information from the same device through proxy nodes, while reducing the energy consumed by frequent data transmission and improving energy efficiency. At the same time, when a fault or bottleneck occurs in the network, the proxy node cache is used to start energy-aware multi-path scheduling at the same time, and other paths are used to transmit data packets, thereby reducing the time required to reconfigure the network topology, increasing throughput and network life, and avoiding taking low-energy links. By adding IoT proxy cache nodes, data merging is performed to reduce the transmission of scattered data, and abnormal information detection, congestion prediction and energy-aware models are combined to cache messages before predicting that the node is about to be congested, and then the path is selected according to the energy-aware dynamic parent node to balance the load, thereby reducing the time required to reconfigure the network topology and increasing throughput and network and device life.

[0216] Fig.13 The flowchart of the data transmission method in the embodiment of the present disclosure is shown as follows: Fig.13As shown, the data transmission method provided in this embodiment is applied between a transmitting end A and a receiving end B; wherein there are multiple transfer devices between the transmitting end A and the receiving end B, and the process of this embodiment includes:

[0217] Multiple IoT nodes collect data through sensors and network monitoring tools, monitor data through proxy nodes, obtain data packets from multiple nodes for cache merging, generate transmission messages and cache them in proxy nodes, and the proxy nodes output a merged transmission message for anomaly detection. If an abnormal message is detected, it is discarded; if no abnormal message is detected, the transmission message passes the anomaly detection and congestion prediction is performed using a trained congestion prediction model. If congestion is predicted, the transmission message is cached in the proxy node, and energy-aware multi-path selection is started to determine the second transmission path, and the cached transmission message is sent to the receiving end B through the second transmission path;

[0218] By adding a proxy sensor with cache as a proxy node, multiple data of the same device are cached, merged and compressed before transmission, reducing the transmission of scattered data. By training an abnormal information recognition model, abnormal information is filtered. By training a congestion prediction model, congestion information in the link is detected in anticipation, and when congestion is predicted, energy-aware multi-path selection is initiated to take the path with the smallest queue occupancy, the number of nodes passed through, and the maximum expected remaining energy.

[0219] Fig.14 FIG. 4 shows a flowchart of anomaly detection and congestion prediction in an embodiment of the present disclosure. Fig.14 As shown, the historical transmission information of multiple devices collected during a set continuous time period is obtained (data i =(data 1 , data 2 , data 3 ,...,data N ); perform data cleaning on historical transmission information, normalize numerical features, and determine normalized historical transmission data; establish a normal distribution probability model, and set the expected value parameters (u1,...,u n ) and variance parameter Determine the anomaly detection model. Input the transmission message into the anomaly detection model to determine the anomaly detection value of the transmission message; if P(data)≥ε, the transmission message fails the anomaly detection and is discarded. If P(data)<ε, the transmission message passes the anomaly detection and congestion prediction is performed next.

[0220] Acquire the state data of the transmission data; wherein the state data includes: any one or more combinations of the sending time, the receiving time, the packet loss rate and / or the delay; determine the data features of the state data; establish a long short-term memory network model, and input the data features of the state data; adjust the weights and bias items of the long short-term memory network model through back propagation and optimization algorithms, and train the long short-term memory network with the training goal of minimizing the difference between the predicted output queue occupancy rate and the actual occupancy rate; when the long short-term memory network model reaches the training goal, determine the long short-term memory network model that reaches the training goal as a congestion prediction model; acquire the state data of the first transmission path in transmitting the transmission message; determine the queue occupancy rate of the first transmission path for a future set time length according to the state data using the trained congestion prediction model; if P k <δ, the congestion state of the first transmission path is not congested; if P k ≥δ, the congestion state of the first transmission path is congested.

[0221] Fig.15 The flowchart of dynamic parent node multi-path selection in the embodiment of the present disclosure is shown as follows: Fig.15 As shown in FIG. 1 , the energy-aware dynamic parent node multi-path selection process includes:

[0222] 1. The first node receives the DIO message;

[0223] 2. Determine whether the received DIO message is the first DIO message. If yes, jump to 3; if no, jump to 8;

[0224] 3. Add the node that sends the DIO message as the parent node of the first node;

[0225] 4. Obtain queue occupancy, passing node data and node expected remaining energy information;

[0226] 5. Calculate the order of parent nodes through congestion and energy minimization functions;

[0227] 6. The first node sends a DAO message to the parent node;

[0228] 7. The first node multicasts the DIO message to the neighboring nodes;

[0229] 8. Perform an abnormality detection on the DIO message. If it is detected as an abnormal message, the DIO message is discarded; if it is detected as a normal message, jump to 9;

[0230] 9. Determine whether the DIO message is sent from a child node. If so, increment the child node count; if not, jump to 10;

[0231] 10. Determine whether the DIO message comes from the current parent node. If not, jump to 11; if yes, jump to 18;

[0232] 11. Add the DIO message source as a new parent node to the parent node list;

[0233] 12. Obtain the queue occupancy, passing node data and node expected remaining energy information;

[0234] 13. Calculate the order of the new parent nodes by minimizing the congestion and energy functions;

[0235] 14. Determine whether the ranking of the new parent node is less than the ranking of the current parent node. If not, keep the ranking of the current parent node and jump to 7; if so, jump to 15;

[0236] 15. Add the new parent node as the parent node of the first node, and update the new parent node to the position of the current parent node in the directed acyclic graph, and discard the current parent node to determine the updated directed acyclic graph;

[0237] 16. The first node sends a DAO message to the new parent node;

[0238] 17. The first node multicasts the DIO message to the neighboring nodes based on the updated directed acyclic graph;

[0239] 18. Use the congestion prediction model to predict whether there is congestion. If so, jump to 19; if not, jump to XX;

[0240] 19. Select the best alternative parent node, start multipath routing, determine the second transmission path, and re-predict congestion through the congestion prediction model.

[0241] 20. Obtain queue occupancy, passing node data and node expected remaining energy information;

[0242] 21. Calculate the ranking of the best alternative parent nodes by congestion and energy minimization functions;

[0243] 22. Determine whether the ranking of the best replacement parent node is less than the ranking of the current parent node. If not, jump to 19 to reselect the best replacement node; if yes, jump to 21;

[0244] 23. Update the order of the best replacement parent node in the directed acyclic graph to determine the updated directed acyclic graph;

[0245] 24. The first node multicasts the DIO message to the neighboring nodes based on the updated directed acyclic graph.

[0246] The core process of the above energy-aware dynamic parent node multi-path selection is as follows: after a new node receives a DIO message sent by its first cached proxy sensor, it adds the sender as its parent node and calculates its rank relative to the parent node using the congestion-aware and energy-aware model F. Then, it sends the DAO message back to its parent node, and finally multicasts the DIO message carrying its rank to its neighboring nodes. When an existing node obtains a DIO message in and out of abnormal traffic identification detection, it verifies whether it meets the normal message. If yes, it accepts it, otherwise it discards it. When constructing a directed acyclic graph, as part of the parent selection process, the child count metric is used to maintain the child nodes of the specified parent node, keep a buffer for each DIO message it obtains from the child node, increase the child count value, and track the child count. Predict whether the current node is congested by a deep learning algorithm. If congestion is detected on the parent node, the energy-aware dynamic parent node multi-path congestion relief is used. If not, it will calculate its rank using model F and update its position in the DODAG. If the node receives a DIO message from other parent nodes, the parent node is added to the parent list stored in the parent table. The queue occupancy P_K, the node expected remaining lifetime E_N, and the child count metric ChildCount(N) value are then calculated to calculate the updated ranking based on model F. If the newly calculated ranking is lower than the node's current ranking, the sender parent node will be accepted as the node's new parent node, thereby updating its position in the DODAG and discarding the existing parent node.

[0247] In the prior art, usually only the load condition of the node is considered as the basis for selecting the parent node. However, this embodiment takes into account the abnormal information, the energy condition of the node and the network topology at the same time. This comprehensive consideration method has not yet appeared in the prior art. In order to avoid the transmission of scattered data, this embodiment adds a cache proxy to reduce the waste of network bandwidth and the time required to reconfigure the network topology. Dynamic adjustment mechanism. The prior art usually adopts a static single parent node selection mechanism, while this embodiment can be dynamically adjusted according to the network and energy conditions of the node, including the ranking of the node and the selection of the parent node. This dynamic adjustment mechanism enhances the flexibility and adaptability of the algorithm.

[0248] This embodiment can be applied in a variety of scenarios, including: Internet of Things (IoT): In an IoT environment, nodes usually have limited energy supply, and network congestion is a common problem. The algorithm can load balance according to the energy status of the node and the network congestion, which helps to extend the life of IoT devices and improve the performance of the network. Vehicle-to-everything (V2X): In a vehicle-to-everything (V2X) network, nodes need to transmit data quickly and reliably, while taking into account energy and security issues. The algorithm can select a suitable parent node based on the performance indicators of the node and the network status to achieve load balancing and secure communication. Wireless Sensor Network (WSN): In a wireless sensor network, nodes are usually deployed in harsh environments, where energy is limited and network congestion is a challenge. The algorithm can load balance according to the energy status of the node and the network congestion, which helps to extend the life of the network and improve the reliability of data transmission. Smart Home / City: In these scenarios, nodes need to transmit data efficiently and take into account energy consumption. The algorithm can select a suitable parent node based on the performance indicators of the node and the network status to achieve load balancing and energy-saving communication. Industrial Automation: In an industrial automation environment, nodes need to transmit data quickly and reliably, while taking into account energy and stability issues. The algorithm can select the appropriate parent node according to the node's performance indicators and network conditions to achieve load balancing and enhance stability.

[0249] This embodiment increases the Internet of Things proxy cache node, reduces the transmission of scattered data through data merging, combines abnormal information detection, congestion prediction and energy perception model, performs message caching before predicting that the node is about to be congested, and then selects the path to balance the load according to the energy-aware dynamic parent node, thereby reducing the time required to reconfigure the network topology and increasing the throughput and network and equipment life. Multiple intelligent agents, namely deep learning algorithms, are used to jointly select the path strategy. This solution simultaneously considers abnormal information, the congestion status of the node network and the energy status of the node. This comprehensive consideration method has not yet appeared in existing patents. In order to avoid the transmission of scattered data, this patent adds a cache proxy to reduce the waste of network bandwidth and the time required to reconfigure the network topology. Existing patents usually use a static single parent node selection mechanism, while this solution can be dynamically adjusted according to the network and energy status of the node, including the ranking of the node and the selection of the parent node. This dynamic adjustment mechanism enhances the flexibility and adaptability of the algorithm. The algorithm can perform load balancing according to the energy status of the node and the network congestion status, and can be applied in the Internet of Things, Internet of Vehicles, wireless sensor networks, smart homes, smart cities, industrial automation and various fields involving network transmission. Helps extend the life of the network and improve the reliability of data transmission.

[0250] It should be noted that the acquisition, storage, use, and processing of data in the technical solution disclosed in this disclosure are in compliance with the relevant provisions of national laws and regulations, and various types of data such as personal identity data, operation data, behavioral data, etc. related to individuals, customers, and groups obtained in the embodiments of this disclosure have all been authorized.

[0251] Based on the same inventive concept, the present disclosure also provides a data transmission device in the following embodiments. Since the principle of solving the problem in the device embodiment is similar to that in the above method embodiment, the implementation of the device embodiment can refer to the implementation of the above method embodiment, and the repeated parts will not be repeated.

[0252] Fig.16 A schematic diagram of a data transmission device in an embodiment of the present disclosure is shown. Fig.16 As shown, the device comprises:

[0253] The transmission message determination module 1601 is used to cache and merge data packets of multiple nodes to determine the transmission message;

[0254] The congestion prediction module 1602 is used to send a transmission message to a target receiving end through a first transmission path and predict a congestion state of the first transmission path;

[0255] The transmission path switching module 1603 is used to determine whether to send the transmission message to the target receiving end through the second transmission path according to the predicted congestion state of the first transmission path.

[0256] It should be noted that the above transmission message determination module 1601, congestion prediction module 1602 and transmission path switching module 1603 correspond to S202 to S206 in the method embodiment, and the examples and application scenarios implemented by the above modules and corresponding steps are the same, but are not limited to the contents disclosed in the above method embodiment. It should be noted that the above modules as part of the device can be executed in a computer system such as a set of computer executable instructions.

[0257] Those skilled in the art will appreciate that various aspects of the present disclosure may be implemented as systems, methods or program products. Therefore, various aspects of the present disclosure may be specifically implemented in the following forms, namely: complete hardware implementation, complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software, which may be collectively referred to herein as "circuits", "modules" or "systems".

[0258] Refer to the following Fig.17 1700 according to this embodiment of the present disclosure is described. Fig.17 The electronic device 1700 shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0259] like Fig.17 As shown, the electronic device 1700 is in the form of a general computing device. The components of the electronic device 1700 may include but are not limited to: at least one processing unit 1710, at least one storage unit 1720, and a bus 1730 connecting different system components (including the storage unit 1720 and the processing unit 1710).

[0260] The storage unit stores a program code, and the program code can be executed by the processing unit 1710, so that the processing unit 1710 executes the steps described in the "Exemplary Method" section of this specification according to various exemplary embodiments of the present disclosure. For example, the processing unit 1710 can execute the following steps of the above method embodiment: cache and merge data packets of multiple nodes to determine a transmission message; send the transmission message to the target receiving end through a first transmission path, and predict the congestion state of the first transmission path; determine whether to send the transmission message to the target receiving end through a second transmission path according to the predicted congestion state of the first transmission path.

[0261] The storage unit 1720 may include a readable medium in the form of a volatile storage unit, such as a random access storage unit (RAM) 17201 and / or a cache storage unit 17202 , and may further include a read-only storage unit (ROM) 17203 .

[0262] The storage unit 1720 may also include a program / utility 17204 having a set (at least one) of program modules 17205, such program modules 17205 including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment.

[0263] Bus 1730 may represent one or more of several types of bus structures, including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.

[0264] The electronic device 1700 may also communicate with one or more external devices 1740 (e.g., keyboards, pointing devices, Bluetooth devices, etc.), may also communicate with one or more devices that enable a user to interact with the electronic device 1700, and / or communicate with any device that enables the electronic device 1700 to communicate with one or more other computing devices (e.g., routers, modems, etc.). Such communication may be performed via an input / output (I / O) interface 1750. Furthermore, the electronic device 1700 may also communicate with one or more networks (e.g., local area networks (LANs), wide area networks (WANs), and / or public networks, such as the Internet) via a network adapter 1760. As shown, the network adapter 1760 communicates with other modules of the electronic device 1700 via a bus 1730. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 1700, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.

[0265] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0266] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart may be implemented as a computer program product, which includes: a computer program, which implements the above data transmission method when executed by a processor.

[0267] In an exemplary embodiment of the present disclosure, a computer-readable storage medium is also provided, which may be a readable signal medium or a readable storage medium. A program product capable of implementing the above method of the present disclosure is stored thereon. In some possible implementations, various aspects of the present disclosure may also be implemented in the form of a program product, which includes a program code, and when the program product is run on a terminal device, the program code is used to cause the terminal device to execute the steps according to various exemplary implementations of the present disclosure described in the above “Exemplary Method” section of this specification.

[0268] More specific examples of computer-readable storage media in the present disclosure may include, but are not limited to, an electrical connection having one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0269] In the present disclosure, a computer readable storage medium may include a data signal propagated in baseband or as part of a carrier wave, wherein a readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A readable signal medium may also be any readable medium other than a readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0270] Alternatively, the program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the foregoing.

[0271] In a specific implementation, the program code for performing the operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, etc., and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user computing device, partially on the user device, as a separate software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., using an Internet service provider to connect through the Internet).

[0272] It should be noted that, although several modules or units of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into multiple modules or units to be embodied.

[0273] In addition, although the steps of the method in the present disclosure are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.

[0274] Through the description of the above implementation, it is easy for those skilled in the art to understand that the example implementation described here can be implemented by software, or by software combined with necessary hardware. Therefore, the technical solution according to the implementation of the present disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, including several instructions to enable a computing device (which can be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to the implementation of the present disclosure.

[0275] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the appended claims.

Claims

1. A data transmission method, characterized in that: include: Cache and merge data packets from multiple nodes to determine the transmission message; Sending the transmission message to a target receiving end via a first transmission path, and predicting a congestion state of the first transmission path; According to the predicted congestion state of the first transmission path, it is determined whether to send the transmission message to the target receiving end through the second transmission path.

2. The data transmission method according to claim 1, characterized in that: Cache and merge data packets from multiple nodes to determine the transmission message, including: Get data packets from multiple nodes belonging to the same device; The data packets of the multiple nodes are cached, and when the number of cached data packets reaches a merging threshold, the currently cached data packets are merged and compressed to determine a transmission message.

3. The data transmission method according to claim 1, characterized in that: Sending the transmission message to a target receiving end through a first transmission path, and predicting a congestion state of the first transmission path, includes: Performing anomaly detection on the transmission message; sending the transmission message that passes the anomaly detection to the target receiving end through the first transmission path; The state data of the first transmission path in transmitting the transmission message is obtained, and the congestion state of the first transmission path is predicted.

4. The data transmission method according to claim 3, characterized in that: Performing anomaly detection on the transmission message includes: Inputting the transmission message into the anomaly detection model to determine an anomaly detection value of the transmission message; If the transmission message abnormality detection value is less than the abnormality judgment threshold, the transmission message passes the abnormality detection; If the transmission message abnormality detection value is greater than or equal to the abnormality judgment threshold, the transmission message fails the abnormality detection.

5. The data transmission method according to claim 4, characterized in that: The process of determining the anomaly detection model includes: Get historical transmission information of multiple devices collected during a set continuous time period; Performing data cleaning on the historical transmission information and normalizing the numerical features to determine normalized historical transmission data; A normal distribution probability model is established, parameters of the normal distribution probability model are set according to the normalized historical transmission data, and an anomaly detection model is determined.

6. The data transmission method according to claim 3, characterized in that: The method includes sending a transmission message that passes the anomaly detection to a target receiving end through a first transmission path, including: The first node receives a directed acyclic graph information object message determined based on the transmission message detected by anomaly; If the directed acyclic graph information object message is the first directed acyclic graph information object message received by the first node, adding the sender of the directed acyclic graph information object message as a parent node of the first node; Determining an ordering of the first node relative to its parent node in the directed acyclic graph; The first node sends a destination announcement object message to its parent node and multicasts a directed acyclic graph information object message to adjacent nodes based on the ordering in the directed acyclic graph to determine a first transmission path; The transmission message that passes the abnormality detection is sent to a target receiving end through the first transmission path.

7. The data transmission method according to claim 6, characterized in that: Determining an ordering of the first node relative to its parent node in the directed acyclic graph includes: Obtaining the queue occupancy rate of the first node and its parent node, the passing node data and the node expected remaining energy information; The queue occupancy rate, the passing node data and the node expected remaining energy information are input into the congestion and energy minimization function to determine the order of the first node relative to its parent node in the directed acyclic graph.

8. The data transmission method according to claim 6, characterized in that: Also includes: If the directed acyclic graph information object message is not the first directed acyclic graph information object message received by the first node, determining whether the directed acyclic graph information object message is sent by a child node; The first node is a child node; If the directed acyclic graph information object message is sent by a child node, the child node count in the node data will be incremented.

9. The data transmission method according to claim 8, characterized in that: Also includes: If the directed acyclic graph information object message is not sent by a child node, determining whether the directed acyclic graph information object message comes from the current parent node; If the directed acyclic graph information object message does not come from the current parent node, determining the source of the directed acyclic graph information object message as the new parent node; Add the new parent node to the parent node list where the current parent node is located; Obtaining queue occupancy, passing node data, and node expected remaining energy information between the new parent node and the first node; Input the queue occupancy rate, the passing node data and the node expected remaining energy information into the congestion and energy minimization function to determine the order of the new parent node in the directed acyclic graph; If the ranking of the new parent node in the directed acyclic graph is smaller than the ranking of the current parent node in the directed acyclic graph, determining the new parent node as the parent node of the first node; Updating the new parent node to the position of the current parent node in the directed acyclic graph, discarding the current parent node, and determining an updated directed acyclic graph; The first node sends a destination announcement object message to the new parent node, and multicasts a directed acyclic graph information object message to adjacent nodes based on the updated directed acyclic graph.

10. The data transmission method according to claim 9, characterized in that: Also includes: If the order of the new parent node in the directed acyclic graph is greater than or equal to the order of the current parent node in the directed acyclic graph, the order of the current parent node in the directed acyclic graph is maintained.

11. The data transmission method according to claim 3, characterized in that: Acquiring state data of the first transmission path in transmitting the transmission message and predicting a congestion state of the first transmission path includes: Acquire state data of the first transmission path in transmitting the transmission message; Determine, according to the state data, a queue occupancy of the first transmission path for a future set time period using a trained congestion prediction model; If the queue occupancy of the first transmission path for the future set time length is less than the congestion judgment threshold, the congestion state of the first transmission path is non-congested; If the queue occupancy of the first transmission path for the future set time length is greater than or equal to the congestion determination threshold, the congestion state of the first transmission path is congestion.

12. The data transmission method according to claim 8, characterized in that: The training process of the congestion prediction model includes: Acquire status data of the transmission data; wherein the status data includes: any one or more combinations of sending time, receiving time, packet loss rate and / or delay; determining data characteristics of the status data; Establishing a long short-term memory network model and inputting data features of the state data; The weights and bias items of the long short-term memory network model are adjusted by back propagation and optimization algorithms, and the long short-term memory network is trained with the goal of minimizing the difference between the predicted output queue occupancy and the actual occupancy; When the long short-term memory network model reaches the training target, the long short-term memory network model that reaches the training target is determined as a congestion prediction model.

13. The data transmission method according to claim 7, characterized in that: The predicted congestion state of the first transmission path includes: congestion or non-congestion; Determining whether to send the transmission message to the target receiving end through the second transmission path according to the predicted congestion state of the first transmission path includes: When the predicted congestion state of the first transmission path is congestion, caching the transmission message; Determine a second transmission path according to the queue occupancy rate, the passing node data and the expected remaining energy information of the node; The buffered transmission message is sent to the target receiving end through the second transmission path.

14. The data transmission method according to claim 13, characterized in that: Determining a second transmission path according to the queue occupancy rate, the node data passing through the path, and the expected remaining energy information of the node includes: Calculate the best replacement parent node according to the queue occupancy of the first node and its parent node, the node data passed by the path and the node expected remaining energy information; According to the best alternative parent node, multi-path routing is performed to determine multiple alternative transmission paths; The congestion status of the plurality of candidate transmission paths is predicted using a trained congestion prediction model, and the candidate transmission path with the smallest congestion status is determined as the second transmission path.

15. The data transmission method according to claim 14, characterized in that: Also includes: Obtaining the queue occupancy rate of the second transmission path, the node data passing through the path, and the expected remaining energy information of the node; Input the queue occupancy rate, path node data and node expected remaining energy information of the second transmission path into the congestion and energy minimization function, and determine the order of the best replacement parent node in the second transmission path in the directed acyclic graph; If the ranking of the best substitute parent node in the directed acyclic graph is smaller than the ranking of the current parent node of the first transmission path in the directed acyclic graph, the ranking of the best substitute parent node in the directed acyclic graph is updated.

16. A data transmission device, characterized in that: include: A transmission message determination module, used to cache and merge data packets of multiple nodes and determine the transmission message; A congestion prediction module, configured to send the transmission message to a target receiving end via a first transmission path, and predict a congestion state of the first transmission path; The transmission path switching module is used to determine whether to send the transmission message to the target receiving end through the second transmission path according to the predicted congestion state of the first transmission path.

17. An electronic device, characterized in that: include: processor; as well as A memory, configured to store executable instructions of the processor; The processor is configured to execute the data transmission method according to any one of claims 1 to 15 by executing the executable instructions.

18. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the data transmission method according to any one of claims 1 to 15 is implemented.

19. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the data transmission method according to any one of claims 1 to 15 is implemented.

Citation Information

Patent Citations

  • Device and method for balanced ad-hoc network formation

    CN108781188A

  • Link congestion fault prediction and network autonomous management and control method based on machine learning

    CN113114582A

  • Network congestion control method and device, electronic equipment and storage medium

    CN114389959A

  • Anomaly prediction for electronic resources

    US11902309B1

  • Traffic control method, electronic device, and storage medium

    WO2021120796A1

Cited By

  • Privacy information protection method, equipment and medium

    CN119622821A

  • Communication method, communication device, communication system, storage medium and program product

    WO2026148647A1