Data sending method and device based on load prediction, equipment and storage medium

By counting and propagating the number of pulses in the data transmission cycle in each node in the wireless ad hoc network, determining the load estimate and generating a data transmission strategy, the network load prediction and balancing problems in the prior art are solved, real-time prediction and efficient resource utilization are achieved.

CN119967489AActive Publication Date: 2025-05-09CHINA ACADEMY OF INFORMATION & COMM +1
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202510442647.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-09
Publication Date
2025-05-09
Estimated Expiration
2045-04-09

AI Technical Summary

Technical Problem

The prior art is difficult to achieve real-time prediction and balance of network load in wireless ad hoc networks, and relying on a centralized control mechanism leads to high latency and high computational complexity.

Method used

Each node counts the number of pulses in the data transmission cycle, broadcasts a first LSS message carrying the number of pulses to the adjacent nodes, determines the load estimate value, and then propagates the load estimate value through the second LSS message to generate a data transmission strategy for the next data transmission cycle.

Benefits of technology

Real-time prediction of network load is realized, the load balancing and resource utilization efficiency of the network are improved, message propagation delay and computing complexity are reduced, and it is suitable for communication networks with dynamic random distribution of nodes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119967489A_ABST
    Figure CN119967489A_ABST
Patent Text Reader

Abstract

The invention provides a data sending method and device based on load prediction, equipment and a storage medium, and the method comprises the steps: enabling each node to carry out the statistics of the pulse number of the node in a data sending period, and broadcasting a first LSS message carrying the pulse number to an adjacent node; therefore, each node can determine the load estimation value based on the local pulse number and the pulse number of each adjacent node, then broadcast the second LSS message to the adjacent nodes to spread the load estimation value, and predict the channel load condition based on the local load estimation value and the load estimation value of each adjacent node. According to the method, the real-time prediction of the network load can be realized, the load balance and the resource utilization efficiency of the network are improved, the load prediction is carried out without depending on a centralized control mechanism, the message propagation delay is low, the calculation complexity is low, the flexibility is high, and the practicability is high. The method is suitable for a communication network with dynamically and randomly distributed nodes.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to distributed network technology and communication technology, and in particular to a data transmission method, device, equipment and storage medium based on load prediction. Background Art

[0002] With the rapid development of wireless networks and ad hoc networks, network load balancing and optimal resource allocation have become key factors in ensuring network performance and service quality.

[0003] In the related art, the load information between nodes in the network is usually obtained through a centralized control mechanism, which has problems such as high latency and high computational complexity. In addition, due to the randomness and dynamic distribution of network nodes, the load balancing algorithm in the related art is difficult to adapt to the needs of wireless self-organizing networks. Summary of the invention

[0004] In order to solve the above technical problems, the embodiments of the present disclosure provide a method, apparatus, device and storage medium for sending data based on load prediction.

[0005] In one aspect of an embodiment of the present disclosure, a method for sending data based on load prediction is provided, which is applied to at least one node in a communication network; the method comprises: Sending a first LSS message to an adjacent node based on the number of pulses of the current node in the last data transmission cycle, and receiving the first LSS message sent by the adjacent node, wherein the number of pulses is the number of data packets sent by the node; Determine a load estimation value of the current node based on the number of pulses of the current node and the number of pulses carried in the first LSS message sent by the neighboring node, where the load estimation value is an estimation value of the amount of data sent and received by the node in the previous data sending cycle; Sending a second LSS message to the neighboring node based on the load estimation value, and receiving the second LSS message sent by the neighboring node; Based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the neighboring node, a data sending strategy for the next data sending cycle is generated, wherein the data sending strategy includes whether to send data and a data sending path when sending data.

[0006] Optionally, the generating a data sending strategy for a next data sending cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the neighboring node includes: Determine a maximum load estimation value between the load estimation value of the current node and the load estimation value of the adjacent node; Determining the maximum load estimation value as the load prediction value of the current node; The data sending strategy is determined based on the magnitude relationship between the load prediction value and the load threshold.

[0007] Optionally, determining the data sending strategy based on a magnitude relationship between the load prediction value and the load threshold includes: In response to the load prediction value being less than or equal to the load threshold, determining the data sending strategy to send a data packet to an adjacent node whose load estimation value is less than or equal to the load prediction value; In response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of the current node, performing backoff processing on the data packet to be sent by using a backoff algorithm; In response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of the adjacent node, the load prediction value is re-determined based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and the data sending strategy is determined based on the relationship between the updated load prediction value and the load threshold.

[0008] Optionally, the generating a data sending strategy for a next data sending cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the neighboring node includes: Determine a maximum load estimation value between the load estimation value of the current node and the load estimation value of the adjacent node; Determining the maximum load estimation value as the load prediction value of the current node; Determine the channel load rate of the current node based on the load prediction value, the channel load rate being a ratio of a predicted data transmission duration to a data transmission cycle duration, the predicted data transmission duration being a ratio of the load prediction value to a data transmission rate; The data transmission strategy is determined based on the channel load rate.

[0009] Optionally, determining the data sending strategy based on the channel load rate includes: In response to the channel load rate being less than or equal to a channel load rate threshold, determining the data transmission strategy to be transmitting a data packet to an adjacent node whose load estimation value is less than or equal to the load prediction value; In response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the current node, performing backoff processing on the data packet to be sent by using a backoff algorithm; In response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the adjacent node, the channel load rate is redetermined based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and the data sending strategy is determined based on the updated channel load rate.

[0010] Optionally, a wireless network simulation framework is provided in the at least one node, and the wireless network simulation framework includes a transmitter module and a data parsing module; The method further comprises: Counting the number of pulses in each data transmission cycle using the transmitter module; Using the data parsing module to receive and parse the first LSS message sent by the neighboring node, and obtain the number of pulses carried in the first LSS message sent by the neighboring node; The data parsing module is used to receive and parse the second LSS message sent by the neighboring node, and the load estimation value carried in the second LSS message sent by the neighboring node is acquired.

[0011] Another aspect of the embodiments of the present disclosure provides a data transmission device based on load prediction, which is applied to at least one node in a communication network; the device includes: A first transceiver module, configured to send a first LSS message to an adjacent node based on the number of pulses of the current node in a previous data transmission cycle, and receive the first LSS message sent by the adjacent node, wherein the number of pulses is the number of data packets sent by the node; A determination module, configured to determine a load estimation value of the current node based on the number of pulses of the current node and the number of pulses carried in the first LSS message sent by the neighboring node, wherein the load estimation value is an estimation value of the amount of data sent and received by the node in the previous data sending cycle; A second transceiver module, configured to send a second LSS message to the neighboring node based on the load estimation value, and receive the second LSS message sent by the neighboring node; A generation module is used to generate a data sending strategy for the next data sending cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the adjacent node, wherein the data sending strategy includes whether to send data and the data sending path when sending data.

[0012] Another aspect of the present disclosure provides an electronic device, including: Memory for storing computer programs; The processor is used to execute the computer program stored in the memory, and when the computer program is executed, the method described in the above aspects is implemented.

[0013] Another aspect of the embodiments of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the method described in the above aspects is implemented.

[0014] Another aspect of the embodiments of the present disclosure provides a computer program, including computer program instructions, which implement the methods described in the above aspects when executed by a processor.

[0015] Based on the embodiments of the present disclosure, by making each node count its own pulse number in the data sending period and broadcasting the first LSS message carrying the pulse number to the adjacent nodes, each node can determine the load estimation value based on the local pulse number and the pulse number of each adjacent node, and then propagate the load estimation value by broadcasting the second LSS message to the adjacent nodes, and predict the channel load situation based on the local load estimation value and the load estimation value of each adjacent node, and generate the data sending strategy for the next data sending period. This can realize real-time prediction of network load, improve the load balancing and resource utilization efficiency of the network, and there is no need to rely on a centralized control mechanism for load prediction. The message propagation delay is low, the computational complexity is low, and the flexibility is high. It is suitable for communication networks with dynamically and randomly distributed nodes.

[0016] The technical solution of the present disclosure is further described in detail below through the accompanying drawings and embodiments. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] The accompanying drawings, which constitute a part of the specification, illustrate embodiments of the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0018] The present disclosure may be more clearly understood from the following detailed description with reference to the accompanying drawings, in which: Figure 1 A flowchart of an embodiment of a method for sending data based on load prediction disclosed herein; Figure 2 A schematic diagram of a communication network according to an embodiment of the method for sending data based on load prediction disclosed herein; Figure 3 A flowchart of another embodiment of the method for sending data based on load prediction disclosed herein; Figure 4 A flowchart of another embodiment of the method for sending data based on load prediction disclosed herein; Figure 5 This is a structural diagram of an embodiment of a data sending device based on load prediction disclosed in the present invention; Figure 6 This is a structural schematic diagram of another embodiment of the data sending device based on load prediction disclosed in the present invention; Figure 7The figure is a schematic diagram of the structure of an application embodiment of the electronic device disclosed in the present invention. DETAILED DESCRIPTION

[0019] Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that the relative arrangement of components and steps, numerical expressions and numerical values ​​set forth in these embodiments do not limit the scope of the present disclosure unless otherwise specifically stated.

[0020] Those skilled in the art can understand that the terms "first" and "second" in the embodiments of the present disclosure are only used to distinguish different steps, devices or modules, etc., and neither represent any specific technical meaning nor indicate the necessary logical order between them.

[0021] It should also be understood that in the embodiments of the present disclosure, “plurality” may refer to two or more than two, and “at least one” may refer to one, two, or more than two.

[0022] It should also be understood that any component, data or structure mentioned in the embodiments of the present disclosure can generally be understood as one or more, unless explicitly limited or otherwise indicated in the context.

[0023] In addition, the term "and / or" in the present disclosure is only a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in the present disclosure generally indicates that the associated objects before and after are in an "or" relationship.

[0024] It should also be understood that the description of the various embodiments in the present disclosure focuses on the differences between the various embodiments, and the same or similar aspects thereof can be referenced to each other, and for the sake of brevity, they will not be described one by one.

[0025] At the same time, it should be understood that for the convenience of description, the sizes of the various parts shown in the drawings are not drawn according to the actual proportional relationship.

[0026] The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the present disclosure, its application, or uses.

[0027] Technologies, methods, and equipment known to ordinary technicians in the relevant art may not be discussed in detail, but where appropriate, the technologies, methods, and equipment should be considered as part of the specification.

[0028] It should be noted that like reference numerals and letters refer to similar items in the following figures, and therefore, once an item is defined in one figure, it need not be further discussed in subsequent figures.

[0029] Figure 1 A flow chart of a method for sending data based on load prediction provided for an exemplary embodiment of the present disclosure. The method for sending data based on load prediction in an embodiment of the present disclosure can be applied to at least one node in a communication network. For example, the communication network can be a distributed network such as a wireless sensor network and a self-organizing network, wherein a node is an electronic device that performs data transmission in the communication network, such as a sensor in a wireless sensor network, a router in a local area network, etc.

[0030] like Figure 1 As shown, the method comprises the following steps: Step 101: Send a first LSS message to an adjacent node based on the number of pulses of the current node in the previous data sending cycle, and receive the first LSS message sent by the adjacent node.

[0031] Among them, the number of pulses is the number of data packets sent by the node, the adjacent node refers to the node whose direct communication distance with the current node is within the single-hop communication range, and the single-hop communication refers to the communication between the sending node and the receiving node through a wireless link without the need to forward data through other nodes in the middle.

[0032] In one possible implementation, each node in the communication network is responsible for counting the number of data packets sent out by the node in each data transmission cycle, that is, the number of pulses. When the last data transmission cycle (the i-th data transmission cycle, i is a positive integer) ends, the current node generates a link state signal (LSS) message (hereinafter referred to as the first LSS message) carrying the number of pulses based on the counted number of pulses. The first LSS message carries the number of pulses of the current node in the last data transmission cycle. Each node in the communication network can send the first LSS message to adjacent nodes in the form of broadcasting, and also receive the first LSS message sent from adjacent nodes, so as to perform load prediction and strategy generation for the next data transmission cycle (the i+1-th data transmission cycle).

[0033] Indicative, Figure 2 A schematic diagram of a communication network is shown, which includes four nodes: node a, node b, node c, and node d. For node a, its adjacent nodes include node b and node c, and for node b, its adjacent nodes include node a, node c, and node d. Therefore, when broadcasting the first LSS message, node a sends the first LSS message to node b and node c and receives the first LSS message from node b and node c, and node b sends the first LSS message to node a, node c, and node d and receives the first LSS message from node a, node c, and node d.

[0034] Step 102: Determine a load estimation value of the current node based on the pulse number of the current node and the pulse number carried in the first LSS message sent by the neighboring node.

[0035] Among them, the load estimation value is the estimated value of the data transmission and reception amount of the node in the previous data sending cycle, which is used to characterize the overall load situation of the channel corresponding to the node in the previous data sending cycle, so that the channel load situation of the next cycle can be predicted based on the overall load situation of the channel corresponding to the node in the previous data sending cycle.

[0036] In a possible implementation, the load estimation value of the current node is the sum of the number of pulses of the current node in the last data transmission cycle and the number of pulses of the adjacent nodes in the last data transmission cycle. Schematically, the calculation formula of the load estimation value is as follows: (1) in, is the load estimate of the current node in the tth data sending cycle, is the sum of the pulse numbers of all adjacent nodes corresponding to the current node in the tth data transmission cycle, is the number of pulses of the current node in the tth data sending cycle.

[0037] Indicatively, for Figure 2 In the communication network shown, node a can determine the sum of the pulse number of node a, the pulse number of node b and the pulse number of node c as the load estimation value of node a.

[0038] Step 103: Send a second LSS message to the neighboring node based on the load estimation value, and receive the second LSS message sent by the neighboring node.

[0039] After calculating the load estimation value corresponding to itself, each node in the communication network generates an LSS message (hereinafter referred to as the second LSS message) carrying the load estimation value, and sends the second LSS message to each adjacent node. Accordingly, each node receives the second LSS message sent by each adjacent node. For each node, the second LSS message sent by the current node includes the load estimation value corresponding to the current node, and accordingly, the second LSS message sent by the adjacent node includes the load estimation value corresponding to the adjacent node, so that each node can adjust the data transmission strategy based on its own load estimation value and the load estimation values ​​of each adjacent node.

[0040] Step 104: Generate a data transmission strategy for the next data transmission cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the neighboring node.

[0041] The data sending strategy includes whether to send data and the data sending path when sending data.

[0042] Optionally, the data transmission strategy can be comprehensively determined in combination with the load estimation value of the current node and the load estimation value of the adjacent nodes. For example, if the load estimation value of the current node and the load estimation value of the adjacent nodes are both less than or equal to a preset threshold, the data transmission strategy of the current node in the next data transmission cycle is to send data to all adjacent nodes. If there is at least one node among the current node and the adjacent nodes whose load estimation value is greater than the preset threshold, the data transmission strategy of the current node in the next data transmission cycle is not to send data. For another example, when the load estimation value of the current node is less than or equal to the preset threshold, the data transmission strategy of the current node in the next data transmission cycle may be to send data to adjacent nodes whose load estimation value is less than or equal to the preset threshold.

[0043] Based on the embodiments of the present disclosure, by making each node count its own pulse number in the data sending period and broadcasting the first LSS message carrying the pulse number to the adjacent nodes, each node can determine the load estimation value based on the local pulse number and the pulse number of each adjacent node, and then propagate the load estimation value by broadcasting the second LSS message to the adjacent nodes, and predict the channel load situation based on the local load estimation value and the load estimation value of each adjacent node, and generate the data sending strategy for the next data sending period. This can realize real-time prediction of network load, improve the load balancing and resource utilization efficiency of the network, and there is no need to rely on a centralized control mechanism for load prediction. The message propagation delay is low, the computational complexity is low, and the flexibility is high. It is suitable for communication networks with dynamically and randomly distributed nodes.

[0044] In a possible implementation, the load prediction value of the current node may be determined based on the load prediction value of the current node and the load prediction values ​​of the neighboring nodes, and then the data transmission strategy may be determined based on the load prediction value, such as Figure 3 As shown, the above step 104 may include the following steps: Step 301: determine the maximum load estimation value between the load estimation value of the current node and the load estimation values ​​of the adjacent nodes.

[0045] Step 302: determine the maximum load estimation value as the load prediction value of the current node.

[0046] Optionally, the load estimation value of the current node and the load estimation values ​​of adjacent nodes may be arranged in descending order to obtain a load estimation value sequence, and the first (maximum) load estimation value in the load estimation value sequence may be determined as the load prediction value of the current node.

[0047] For example, the load estimation value of node a is 100, the load estimation value of node b is 90, and the load estimation value of node c is 110. Then, for node a, its load prediction value is 110.

[0048] Step 303: Determine a data sending strategy based on the relationship between the load prediction value and the load threshold.

[0049] Optionally, if the load prediction value is less than or equal to the load threshold, the data sending strategy of the current node in the next data sending cycle is to send data to all neighboring nodes (for example, data can be sent to all neighboring nodes in the form of broadcasting, or any neighboring node can be selected to send data); if the load prediction value is greater than the load threshold, the data sending strategy of the current node in the next data sending cycle is to back off the data to be sent (for example, not sending data, or reducing the frequency of data sending, etc.).

[0050] Optionally, if the load prediction value is greater than the load threshold, the relationship between the load estimation value of other adjacent nodes and the load threshold may be further determined, and data may be sent through adjacent nodes whose load estimation value is lower than the load threshold. Specifically, step 303 may include the following steps: Step 303a: In response to the load prediction value being less than or equal to the load threshold, determining a data sending strategy as sending a data packet to an adjacent node whose load estimation value is less than or equal to the load prediction value.

[0051] Step 303b: In response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of the current node, a backoff process is performed on the data packet to be sent using a backoff algorithm.

[0052] Step 303c, in response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of the adjacent node, the load prediction value is re-determined based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and the data sending strategy is determined based on the relationship between the updated load prediction value and the load threshold.

[0053] If the load prediction value is greater than the load threshold and the load prediction value is the load estimation value of the current node, it means that the load of the current node itself has exceeded the upper limit. In order to reduce the channel load burden, the next data transmission cycle can back off the data packet to be sent. Among them, the back off algorithm can adopt the non-persistent algorithm, the persistent algorithm, the binary exponential back off algorithm, etc.

[0054] If the load prediction value is greater than the load threshold but the load prediction value is the load estimation value of an adjacent node, the load estimation value of the adjacent node can be eliminated from the load estimation value sequence, and the maximum value of the remaining load estimation values ​​can be determined as the load prediction value. Based on the relationship between the updated load prediction value and the load threshold, the data sending strategy can be determined. If the load prediction value is less than or equal to the load threshold, the data sending strategy can be to send data to the adjacent nodes corresponding to the remaining load estimation values ​​in the load estimation value sequence (i.e., the adjacent nodes whose load estimation values ​​are less than or equal to the updated load prediction value).

[0055] Indicatively, in Figure 2 In the communication network shown, assuming that the load estimation values ​​are arranged from high to low as the load estimation value of node a, the load estimation value of node c, the load estimation value of node b, and the load estimation value of node d, then for node b, its load estimation value is the load estimation value of node a. If the load estimation value is less than or equal to the load threshold, the data transmission strategy of node b in the next data transmission cycle is to send data to node a, node c, and node d; if the load estimation value is greater than the load threshold, the load estimation value of node c is re-determined as the load estimation value, and if the updated load estimation value is less than or equal to the load threshold, the data transmission strategy of node b in the next data transmission cycle is to send data to node c and node d.

[0056] In another possible implementation, after calculating the load prediction value, the channel load rate may be further calculated, so as to determine the data transmission strategy based on the channel load rate. Figure 4 As shown, the above step 104 may include the following steps: Step 401: determine the maximum load estimation value between the load estimation value of the current node and the load estimation values ​​of the adjacent nodes.

[0057] Step 402: determine the maximum load estimation value as the load prediction value of the current node.

[0058] Optionally, the load estimation value of the current node and the load estimation values ​​of adjacent nodes may be arranged in descending order to obtain a load estimation value sequence, and the first (maximum) load estimation value in the load estimation value sequence may be determined as the load prediction value of the current node.

[0059] For example, the load estimation value of node a is 100, the load estimation value of node b is 90, and the load estimation value of node c is 110. Then, for node a, its load prediction value is 110.

[0060] Step 403: Determine the channel load rate of the current node based on the load prediction value.

[0061] The channel load rate is the ratio of the predicted data transmission duration to the data transmission cycle duration, and the predicted data transmission duration is the ratio of the load prediction value to the data transmission rate. Schematically, the channel load rate is calculated as follows: ChannelLoading=NetLoad / bitrate / priPeriod (2) Among them, ChannelLoading is the channel load rate, NetLoad is the load prediction value, bitrate is the data transmission rate, and priPeriod is the data transmission cycle duration.

[0062] Step 404: determine a data transmission strategy based on the channel load rate.

[0063] Optionally, if the channel load rate is less than or equal to the load rate threshold, the data sending strategy of the current node in the next data sending cycle is to send data to all neighboring nodes (for example, data can be sent to all neighboring nodes in the form of broadcasting, or any neighboring node can be selected to send data); if the channel load rate is greater than the load rate threshold, the data sending strategy of the current node in the next data sending cycle is to back off the data to be sent (for example, not sending data, or reducing the frequency of data sending, etc.).

[0064] Optionally, if the channel load rate is greater than the load rate threshold, the channel load rate may be re-determined based on the load estimation values ​​of the current node and other adjacent nodes, and the data transmission strategy may be determined based on the updated channel load rate. Specifically, step 404 may include the following steps: Step 404a: in response to the channel load rate being less than or equal to the channel load rate threshold, determining a data transmission strategy as transmitting a data packet to an adjacent node whose load estimation value is less than or equal to the load prediction value.

[0065] Step 404b: In response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the current node, a backoff process is performed on the data packet to be sent using a backoff algorithm.

[0066] Step 404c, in response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the adjacent node, redetermine the channel load rate based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and determine the data sending strategy based on the updated channel load rate.

[0067] If the channel load rate is greater than the load rate threshold and the load prediction value is the load estimation value of the current node, it means that the load of the current node itself has exceeded the upper limit. In order to reduce the channel load burden, the next data transmission cycle can back off the data packets to be sent. Among them, the backoff algorithm can adopt the non-persistent algorithm, the persistent algorithm, the binary exponential backoff algorithm, etc.

[0068] If the channel load rate is greater than the load rate threshold but the load prediction value is the load estimation value of the adjacent node, the load estimation value of the adjacent node can be eliminated from the load estimation value sequence, and the maximum value of the remaining load estimation values ​​can be determined as the load prediction value. The channel load rate is recalculated based on the updated load prediction value, and the data sending strategy is determined based on the updated channel load rate. If the channel load rate is less than or equal to the load rate threshold, the data sending strategy can be to send data to the adjacent nodes corresponding to the remaining load estimation values ​​in the load estimation value sequence (i.e., the adjacent nodes whose load estimation values ​​are less than or equal to the updated load prediction value); otherwise, continue to update the load prediction value based on the load estimation value of the next node in the load estimation value sequence and execute step 404.

[0069] Indicatively, in Figure 2 In the communication network shown, assuming that the load estimation values ​​are arranged from high to low as the load estimation value of node a, the load estimation value of node c, the load estimation value of node b, and the load estimation value of node d, then for node b, its load prediction value is the load estimation value of node a, and the channel load rate is calculated based on the load prediction value. If the channel load rate is less than or equal to the load rate threshold, the data transmission strategy of node b in the next data transmission cycle is to send data to node a, node c, and node d; if the channel load rate is greater than the load rate threshold, the load estimation value of node c is re-determined as the load prediction value and the channel load rate is recalculated. If the updated channel load rate is less than or equal to the load rate threshold, the data transmission strategy of node b in the next data transmission cycle is to send data to node c and node d.

[0070] In a possible implementation, a wireless network simulation framework is provided in at least one node, and the wireless network simulation framework includes a transmitter module and a data parsing module. The method provided in the embodiment of the present disclosure also includes the following steps: Step 1: Use the transmitter module to count the number of pulses in each data transmission cycle.

[0071] Indicatively, the transmitter module can be implemented by a UnitDiskTransmitter module in a wireless network simulation framework, which can count the number of pulses of the node and propagate various LSS messages to adjacent nodes by broadcasting. That is, in the above step 101, the current node can send the first LSS message to the adjacent node through the transmitter module, and in the above step 103, the current node can send the second LSS message to the adjacent node through the transmitter module.

[0072] Step 2: Utilize a data analysis module to receive and analyze the first LSS message sent by the neighboring node, and obtain the number of pulses carried in the first LSS message sent by the neighboring node.

[0073] Step three: Use a data analysis module to receive and analyze the second LSS message sent by the neighboring node, and obtain the load estimation value carried in the second LSS message sent by the neighboring node.

[0074] Optionally, each node can set the message type of the first LSS message and the second LSS message to a preset message type (for example, uniformly set to SPMA_LSS), and the first LSS message and the second LSS message carry an identifier of the preset message type in the message body. Each node can parse the message type corresponding to the received message through the data parsing module. When it is determined that a message of the preset message type is received, it can be determined that the message is the first LSS message or the second LSS message and further parsed to obtain the number of pulses or load estimation value.

[0075] Figure 5 A structural block diagram of a data transmission device based on load prediction provided by an exemplary embodiment of the present disclosure is shown. The data transmission device based on load prediction is applied to at least one node in a communication network, and the data transmission device based on load prediction includes: The first transceiver module 501 is used to send a first LSS message to an adjacent node based on the number of pulses of the current node in the previous data transmission cycle, and receive the first LSS message sent by the adjacent node, where the number of pulses is the number of data packets sent by the node; The determination module 502 is used to determine the load estimation value of the current node based on the pulse number of the current node and the pulse number carried in the first LSS message sent by the adjacent node and received by the first transceiver module 501, where the load estimation value is an estimation value of the data transmission and reception amount of the node in the previous data transmission cycle; The second transceiver module 503 is used to send a second LSS message to the neighboring node based on the load estimation value determined by the determination module 502, and receive the second LSS message sent by the neighboring node; The generation module 504 is used to generate a data sending strategy for the next data sending cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the adjacent node received by the second transceiver module 503. The data sending strategy includes whether to send data and the data sending path when sending data.

[0076] Optionally, in a possible implementation, the generating module 504 may also be used for: Determine a maximum load estimate value between a load estimate value of a current node and load estimates of adjacent nodes; Determine the maximum load estimate value as the load prediction value of the current node; A data sending strategy is determined based on the relationship between the load prediction value and the load threshold.

[0077] Optionally, in a possible implementation, the generating module 504 may also be used for: In response to the load prediction value being less than or equal to the load threshold, determining a data transmission strategy to transmit a data packet to an adjacent node whose load estimation value is less than or equal to the load prediction value; In response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of the current node, performing backoff processing on the data packet to be sent by using a backoff algorithm; In response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of an adjacent node, the load prediction value is re-determined based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and the data sending strategy is determined based on the relationship between the updated load prediction value and the load threshold.

[0078] Optionally, in a possible implementation, the generating module 504 may also be used for: Determine a maximum load estimate value between a load estimate value of a current node and load estimates of adjacent nodes; Determine the maximum load estimate value as the load prediction value of the current node; Determine a channel load rate of the current node based on the load prediction value, wherein the channel load rate is a ratio of a predicted data transmission duration to a data transmission cycle duration, and the predicted data transmission duration is a ratio of a predicted load value to a data transmission rate; The data transmission strategy is determined based on the channel load rate.

[0079] Optionally, in a possible implementation, the generating module 504 may also be used for: In response to the channel load rate being less than or equal to the channel load rate threshold, determining the data transmission strategy to be transmitting the data packet to the adjacent node whose load estimation value is less than or equal to the load prediction value; In response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the current node, performing backoff processing on the data packet to be sent by using a backoff algorithm; In response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the adjacent node, the channel load rate is redetermined based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and a data sending strategy is determined based on the updated channel load rate.

[0080] Optionally, in a possible implementation manner, as Figure 6 As shown, the data sending device based on load prediction may also include: A statistics module 601, configured to use the transmitter module to count the number of pulses in each data transmission cycle; A first parsing module 602, configured to receive and parse the first LSS message sent by the neighboring node using the data parsing module, and obtain the number of pulses carried in the first LSS message sent by the neighboring node; The second parsing module 603 is used to use the data parsing module to receive and parse the second LSS message sent by the neighboring node, and obtain the load estimation value carried in the second LSS message sent by the neighboring node.

[0081] Each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The parts of the same, similar or corresponding contents between the various embodiments can be referred to each other. Since the method, device, and equipment embodiments are basically corresponding, the relevant parts can be referred to the description of the corresponding parts. The methods, devices, and equipment of the embodiments of the present disclosure also correspond to each other in terms of specific implementation methods and beneficial technical effects. The relevant contents can be referred to each other and will not be repeated.

[0082] In addition, an embodiment of the present disclosure further provides an electronic device, including: Memory for storing computer programs; The processor is used to execute the computer program stored in the memory, and when the computer program is executed, the data sending method based on load prediction described in any of the above embodiments of the present disclosure is implemented.

[0083] Figure 7 This is a schematic diagram of the structure of an application embodiment of the electronic device disclosed in the present invention. Figure 7 The electronic device according to the embodiment of the present disclosure is described. The electronic device may be any one or both of the first device and the second device, or a stand-alone device independent of them, and the stand-alone device may communicate with the first device and the second device to receive the collected input signals from them.

[0084] like Figure 7 As shown, the electronic device includes one or more processors and memory.

[0085] The processor may be a central processing unit (CPU) or other forms of processing units having data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.

[0086] The memory may include one or more computer program products, and the computer program product may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, a random access memory (RAM) and / or a cache memory (cache), etc. The non-volatile memory may include, for example, a read-only memory (ROM), a hard disk, a flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor may execute the program instructions to implement the data transmission method based on load prediction of the various embodiments of the present disclosure described above and / or other desired functions.

[0087] In one example, the electronic device may further include: an input device and an output device, and these components are interconnected via a bus system and / or other forms of connection mechanisms (not shown).

[0088] In addition, the input device may also include, for example, a keyboard, a mouse, and the like.

[0089] The output device can output various information to the outside, including the determined distance information, direction information, etc. The output device can include, for example, a display, a speaker, a printer, a communication network and a remote output device connected thereto, and the like.

[0090] Of course, to simplify, Figure 7 Only some of the components related to the present disclosure in the electronic device are shown, and components such as a bus, an input / output interface, etc. are omitted. In addition, according to specific application situations, the electronic device may further include any other appropriate components.

[0091] In addition to the above-mentioned methods and devices, an embodiment of the present disclosure may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps of the data sending method based on load prediction according to various embodiments of the present disclosure described in the above part of this specification.

[0092] The computer program product may be written in any combination of one or more programming languages ​​to write program code for performing the operations of the disclosed embodiments, 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.

[0093] In addition, an embodiment of the present disclosure may also be a computer-readable storage medium on which computer program instructions are stored. When the computer program instructions are executed by a processor, the processor executes the steps of the data sending method based on load prediction according to various embodiments of the present disclosure described in the above part of this specification.

[0094] The computer readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can include, for example, but is not limited to, a system, device or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an 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 above.

[0095] A person of ordinary skill in the art can understand that all or part of the steps of implementing the above method embodiment can be completed by hardware related to program instructions, and the aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps of the above method embodiment; and the aforementioned storage medium includes: ROM, RAM, magnetic disk or optical disk, etc., various media that can store program codes.

[0096] The basic principles of the present disclosure are described above in conjunction with specific embodiments. However, it should be noted that the advantages, strengths, effects, etc. mentioned in the present disclosure are only examples and not limitations, and it cannot be considered that these advantages, strengths, effects, etc. are required by each embodiment of the present disclosure. In addition, the specific details disclosed above are only for the purpose of illustration and ease of understanding, and are not limitations. The above details do not limit the present disclosure to the necessity of adopting the above specific details to be implemented.

[0097] Each embodiment in this specification is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the system embodiment, since it basically corresponds to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0098] The block diagrams of the devices, apparatuses, equipment, and systems involved in this disclosure are only illustrative examples and are not intended to require or imply that they must be connected, arranged, and configured in the manner shown in the block diagrams. As will be appreciated by those skilled in the art, these devices, apparatuses, equipment, and systems can be connected, arranged, and configured in any manner. Words such as "including," "comprising," "having," and the like are open words, referring to "including but not limited to," and can be used interchangeably therewith. The words "or" and "and" used herein refer to the words "and / or," and can be used interchangeably therewith, unless the context clearly indicates otherwise. The word "such as" used herein refers to the phrase "such as but not limited to," and can be used interchangeably therewith.

[0099] The method and apparatus of the present disclosure may be implemented in many ways. For example, the method and apparatus of the present disclosure may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above order of steps for the method is for illustration only, and the steps of the method of the present disclosure are not limited to the order specifically described above, unless otherwise specifically stated. In addition, in some embodiments, the present disclosure may also be implemented as a program recorded in a recording medium, which includes machine-readable instructions for implementing the method according to the present disclosure. Therefore, the present disclosure also covers a recording medium storing a program for executing the method according to the present disclosure.

[0100] It should also be noted that in the apparatus, device and method of the present disclosure, each component or each step can be decomposed and / or recombined. Such decomposition and / or recombination should be regarded as equivalent solutions of the present disclosure.

[0101] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other aspects without departing from the scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the aspects shown herein, but rather to the widest scope consistent with the principles and novel features disclosed herein.

[0102] The above description has been given for the purpose of illustration and description. In addition, this description is not intended to limit the embodiments of the present disclosure to the forms disclosed herein. Although multiple example aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, changes, additions and sub-combinations thereof.

Claims

1. A data transmission method based on load prediction, characterized in that: Applied to at least one node in a communication network; the method comprises: Sending a first link state signal LSS message to an adjacent node based on the number of pulses of the current node in the last data transmission cycle, and receiving the first LSS message sent by the adjacent node, wherein the number of pulses is the number of data packets sent by the node; Determine a load estimation value of the current node based on the number of pulses of the current node and the number of pulses carried in the first LSS message sent by the neighboring node, where the load estimation value is an estimation value of the amount of data sent and received by the node in the previous data sending cycle; Sending a second LSS message to the neighboring node based on the load estimation value, and receiving the second LSS message sent by the neighboring node; Based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the neighboring node, a data sending strategy for the next data sending cycle is generated, wherein the data sending strategy includes whether to send data and a data sending path when sending data.

2. The method according to claim 1, characterized in that The generating a data transmission strategy for the next data transmission cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the neighboring node includes: Determine a maximum load estimation value between the load estimation value of the current node and the load estimation value of the adjacent node; Determining the maximum load estimation value as the load prediction value of the current node; The data sending strategy is determined based on the magnitude relationship between the load prediction value and the load threshold.

3. The method according to claim 2, characterized in that The determining the data sending strategy based on the magnitude relationship between the load prediction value and the load threshold value includes: In response to the load prediction value being less than or equal to the load threshold, determining the data sending strategy to send a data packet to an adjacent node whose load estimation value is less than or equal to the load prediction value; In response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of the current node, performing backoff processing on the data packet to be sent by using a backoff algorithm; In response to the load prediction value being greater than the load threshold and the load prediction value being the load estimation value of the adjacent node, the load prediction value is re-determined based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and the data sending strategy is determined based on the relationship between the updated load prediction value and the load threshold.

4. The method according to claim 2, characterized in that: The generating a data transmission strategy for the next data transmission cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the neighboring node includes: Determine a maximum load estimation value between the load estimation value of the current node and the load estimation value of the adjacent node; Determining the maximum load estimation value as the load prediction value of the current node; Determine the channel load rate of the current node based on the load prediction value, the channel load rate being a ratio of a predicted data transmission duration to a data transmission cycle duration, the predicted data transmission duration being a ratio of the load prediction value to a data transmission rate; The data transmission strategy is determined based on the channel load rate.

5. The method according to claim 4, characterized in that The determining the data sending strategy based on the channel load rate includes: In response to the channel load rate being less than or equal to a channel load rate threshold, determining the data transmission strategy to be transmitting a data packet to an adjacent node whose load estimation value is less than or equal to the load prediction value; In response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the current node, performing backoff processing on the data packet to be sent by using a backoff algorithm; In response to the channel load rate being greater than the channel load rate threshold and the load prediction value being the load estimation value of the adjacent node, the channel load rate is redetermined based on the load estimation value of the current node and the load estimation values ​​of other adjacent nodes, and the data sending strategy is determined based on the updated channel load rate.

6. The method according to any one of claims 1 to 5, characterized in that: A wireless network simulation framework is provided in the at least one node, and the wireless network simulation framework includes a transmitter module and a data parsing module; The method further comprises: Counting the number of pulses in each data transmission cycle using the transmitter module; Using the data parsing module to receive and parse the first LSS message sent by the neighboring node, and obtain the number of pulses carried in the first LSS message sent by the neighboring node; The data parsing module is used to receive and parse the second LSS message sent by the neighboring node, and the load estimation value carried in the second LSS message sent by the neighboring node is acquired.

7. A data transmission device based on load prediction, characterized in that: Applied to at least one node in a communication network; the device comprises: A first transceiver module, configured to send a first LSS message to an adjacent node based on the number of pulses of the current node in a previous data transmission cycle, and receive the first LSS message sent by the adjacent node, wherein the number of pulses is the number of data packets sent by the node; A determination module, configured to determine a load estimation value of the current node based on the number of pulses of the current node and the number of pulses carried in the first LSS message sent by the neighboring node, wherein the load estimation value is an estimation value of the amount of data sent and received by the node in the previous data sending cycle; A second transceiver module, configured to send a second LSS message to the neighboring node based on the load estimation value, and receive the second LSS message sent by the neighboring node; A generation module is used to generate a data sending strategy for the next data sending cycle based on the load estimation value of the current node and the load estimation value carried in the second LSS message sent by the adjacent node, wherein the data sending strategy includes whether to send data and the data sending path when sending data.

8. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to execute a computer program stored in the memory, and when the computer program is executed, implement the method described in any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method described in any one of claims 1 to 6 is implemented.

10. A computer program comprising computer program instructions, characterized in that When the computer program instructions are executed by a processor, the method described in any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Bandwidth estimation method for wireless Mesh network

    CN103024796A

  • Multiple access method based on load perception in wireless ad hoc network

    CN108200602A

  • Wireless communication system for realizing dynamic distribution of network load

    CN113784390A

  • Frequency hopping network channel load statistical method

    CN117978305A

  • Method of load balancing in network

    KR1020170078425A