Disclosure of Invention
The present invention is directed to provide a data transmission scheme based on multiple network nodes, so as to solve the above technical problems in the prior art. According to the scheme, the situation of the channels is known, how to allocate the bandwidth of each channel is estimated, optimization is carried out through a swarm algorithm, the most suitable bandwidth allocation of each channel is obtained finally, data to be transmitted is cut according to the bandwidth ratio, and information transmission is carried out according to the allocated bandwidth. And the timeliness is ensured, and meanwhile, the channel resources are saved as much as possible. The scheme can carry out information transmission based on a plurality of network nodes according to the pre-allocated bandwidth, and saves channel resources as much as possible while ensuring timeliness.
The invention provides a data transmission method based on a plurality of network nodes in a first aspect, which comprises the following steps: step S1, obtaining channel parameters of a plurality of channels corresponding to the plurality of network nodes; step S2, based on the channel parameter, selecting an available channel from the plurality of channels, wherein the total amount of the transmittable information of the available channel is larger than the amount of the information of the data to be transmitted; and step S3, distributing the data to be transmitted to the available channel for transmission according to the bandwidth ratio between the channels of the available channel.
According to the method provided by the first aspect of the invention, the channel parameters comprise one or more of signal-to-noise ratio, available bandwidth and historical preference.
According to the method provided by the first aspect of the present invention, in the step S2, the available channel is selected from the plurality of channels by using shannon' S formula; and determining an inter-channel bandwidth ratio of the available channels using a bee colony algorithm at the step S3.
According to the method provided by the first aspect of the present invention, before the step S1, the method further includes: determining whether there is a single channel among the plurality of channels, the single channel having a larger amount of transmittable information than the amount of information of the data to be transmitted; and if the data to be transmitted is not transmitted, starting the plurality of network nodes.
According to the method provided by the first aspect of the present invention, identification information is added to the packet header of the data to be transmitted, which is allocated to the available channel, where the identification information indicates a transmission channel corresponding to the data to be transmitted.
A second aspect of the present invention provides a data transmission system based on a plurality of network nodes, the system comprising: an acquisition unit configured to acquire channel parameters of a plurality of channels corresponding to the plurality of network nodes; a selecting unit configured to select an available channel from the plurality of channels based on the channel parameter, the total amount of transmittable information of the available channel being larger than an amount of information of data to be transmitted; and the allocation unit is configured to allocate the data to be transmitted to the available channels for transmission according to the inter-channel bandwidth ratio of the available channels.
According to the system provided by the second aspect of the present invention, the selecting unit is further configured to select the available channel from the plurality of channels by using shannon's formula; and the allocation unit is further configured to determine an inter-channel bandwidth ratio of the available channels using a bee colony algorithm.
According to a second aspect of the invention there is provided a system further comprising: a determination unit configured to determine whether there is a single channel having a transmittable information amount larger than that of the data to be transmitted among the plurality of channels; if so, transmitting the data to be transmitted by using the single channel; if not, enabling the plurality of network nodes.
According to the system provided by the second aspect of the present invention, the allocating unit is further configured to add identification information to the packet header of the data to be transmitted allocated to the available channel, where the identification information indicates a transmission channel corresponding to the data to be transmitted.
A third aspect of the present invention provides a non-transitory computer readable medium having stored thereon instructions which, when executed by a processor, perform the steps of a method for data transmission based on a plurality of network nodes according to the first aspect of the present invention.
By adopting the technical scheme, the invention has the following beneficial effects: the method can transmit information based on a plurality of network nodes according to the pre-allocated bandwidth, and saves channel resources as much as possible while ensuring timeliness.
Detailed Description
The technical solutions of the present invention will be described clearly and completely with reference to the accompanying drawings, and it should be understood that the described embodiments are some, but not all embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The invention provides a data transmission method based on a plurality of network nodes, which can carry out information transmission based on a plurality of network nodes according to pre-allocated bandwidth, ensure timeliness and save channel resources as much as possible.
Fig. 1 is a schematic diagram illustrating a flow of a data transmission method based on multiple network nodes according to an embodiment of the present invention.
As shown in fig. 1, the process starts in step S1, and channel parameters of a plurality of channels corresponding to the plurality of network nodes are obtained.
In some embodiments, channel parameters of a plurality of channels corresponding to the plurality of network nodes are obtained by analyzing link conditions, the channel parameters including, but not limited to (one or more of) signal-to-noise ratio, available bandwidth, and historical preference.
Next, in step S2, based on the channel parameters, an available channel is selected from the plurality of channels, and the total amount of transmittable information of the available channel is greater than the amount of information of the data to be transmitted.
In some embodiments, it is first calculated according to the shannon formula which channels of the plurality of channels are suitable for executing the transmission task of the data to be transmitted, and the total amount of the information transmittable by the available channels is greater than the amount of the information of the data to be transmitted, so that it can be ensured that the task is transmitted without occupying too many channels, thereby avoiding resource waste. Since the satellite channel resource is in shortage and the deep space interference noise is aggravated, in this case, the channel capacity will be reduced, and at the same time, the channel resource is also precious, so that the communication resource needs to be reasonably used. A single channel may not be able to complete the data transmission task and other channels are needed to share. And (3) taking the shannon formula as a standard, and listing parameters such as the signal-to-noise ratio, the effective information ratio, the available bandwidth and the like of the available channel into a matrix. The information quantity of the data to be transmitted is compared with the information quantity which can be transmitted by all channels, and the available channel which has the least number of the used channels and can simultaneously meet the requirement of completing the data transmission task is selected.
Subsequently, in step S3, the data to be transmitted is allocated to the available channel for transmission according to the inter-channel bandwidth ratio of the available channel.
In some embodiments, after a suitable available channel is selected, optimization is performed by using a swarm algorithm, available bandwidth resources are taken as boundary conditions to be brought into an artificial intelligence algorithm, the artificial intelligence algorithm takes bandwidth as solution to perform optimization to obtain bandwidth used by each available channel, and data to be transmitted is further distributed according to the bandwidth ratio between the available channels. The data to be transmitted is segmented according to the bandwidth ratio between the channels and is respectively distributed to the corresponding available channels for transmission.
In some embodiments, identification information is added to the packet header of the data to be transmitted allocated to the available channel, where the identification information indicates a transmission channel to which the data to be transmitted corresponds. The receiving node converges the received information to the data center, and the data center integrates the information from different channels according to the identification information in the packet header, and finally forms complete received data.
In some embodiments, before the step S1, the method further comprises: determining whether there is a single channel among the plurality of channels, the single channel having a larger amount of transmittable information than the amount of information of the data to be transmitted; and if the data to be transmitted is not transmitted, starting the plurality of network nodes. Specifically, the data format and the data size of the data transmission task are obtained as input information. And then according to the obtained information quantity with the transmission data, comparing the available information quantity of the channel, judging whether a certain channel(s) exists or not, wherein the single channel has the information quantity which is larger than the information quantity of the data to be transmitted, if so, transmitting the data to be transmitted by using the single channel, and if not, starting the plurality of network nodes to receive the data to be transmitted by using the plurality of network nodes.
Description of the test examples
Taking the information amount of the data to be transmitted as 100Mbit as an example, there are currently 4 channels in total. The channel parameters are as follows:
channel 0: available bandwidth: 20M, signal-to-noise ratio: 10, redundancy: 0.2;
channel 1: available bandwidth: 15M, signal-to-noise ratio: 8, redundancy: 0.2;
channel 2: available bandwidth: 10M, signal-to-noise ratio: 7, redundancy: 0.2;
channel 3: available bandwidth: 8M, signal-to-noise ratio: 6, redundancy: 0.2;
first, the ranking results of all channels that can satisfy the task amount are output as follows:
[[176.0,108.0,64.0,44.800000000000004],[108.0,64.0,44.800000000000004],[64.0,44.80000000000000],[108.0,64.0],[176.0,64.0,44.800000000000004],[64.0,44.800000000000004],[176.0,44.800000000000004],[176.0,64.0],[176.0,188.0,44.800000000000004],[108.0,44.800000000000004],[176.0,44.800000000000004],[176.0,108.0],[176.0,108,64.0],[108.0,64.0],[176.0,64.0]],[176.0,108.0]]
then, the result which can satisfy the task and occupies the least channel quantity is selected, and the serial number is output, the task quantity which can satisfy and the information quantity which can be transmitted are as follows:
([2,3],108.80000000000001,[64.0,44.80000000000000])
wherein [2, 3] represents that the number 2 channel and the number 3 channel are selected, the total task amount can reach 108Mbit information and more than 100Mbit information, and next, the maximum amount of information can be transmitted by each channel, so that the number 2 channel and the number 3 channel can be selected to complete the data transmission task.
Next, it follows from the bee colony algorithm that channel No. 2 requires 10.03751207M of bandwidth and channel No. 3 requires 7.58826294M of bandwidth to transmit information. The two bandwidths are ratioed to obtain 1.323: the value of 1 is used as the bandwidth ratio between channels, and data to be transmitted is distributed according to the value to complete the transmission task.
Fig. 2 is a schematic diagram of a transmission process of data to be transmitted according to an embodiment of the present invention. As shown in fig. 2, the information amount of 100Mbit of data to be transmitted is completely transmitted, and eventually reaches zero. In some embodiments, optimization algorithms such as annealing algorithms, ant colony algorithms, etc. may be used instead of the bee colony algorithm in the present invention.
To sum up, in the data transmission method based on multiple network nodes of the first aspect of the present invention, channel parameters of multiple channels corresponding to the multiple network nodes are obtained; and selecting an available channel from the plurality of channels based on the channel parameter; and further distributing the data to be transmitted to the available channels for transmission according to the bandwidth ratio between the channels of the available channels. The method can transmit information based on a plurality of network nodes according to the pre-allocated bandwidth, and saves channel resources as much as possible while ensuring timeliness.
A second aspect of the invention provides a data transmission system based on a plurality of network nodes. Fig. 3 is a structural diagram of a data transmission system based on a plurality of network nodes according to an embodiment of the present invention, as shown in fig. 3, the system includes: an acquisition unit 301, a selection unit 302, an assignment unit 303, and a determination unit 304. Wherein the obtaining unit 301 is configured to obtain channel parameters of a plurality of channels corresponding to the plurality of network nodes; the selecting unit 302 is configured to select an available channel from the plurality of channels based on the channel parameter, wherein the total amount of transmittable information of the available channel is greater than the amount of information of data to be transmitted; the allocating unit 303 is configured to allocate the data to be transmitted to the available channel for transmission according to an inter-channel bandwidth ratio of the available channel.
In some embodiments, the selecting unit 302 is further configured to select the available channel from the plurality of channels using shannon's formula; and the allocating unit 303 is further configured to determine the inter-channel bandwidth ratio of the available channels using a bee-colony algorithm.
In some embodiments, the system further comprises: a determination unit 304 configured to determine whether there is a single channel having a transmittable information amount larger than that of the data to be transmitted among the plurality of channels; if so, transmitting the data to be transmitted by using the single channel; if not, enabling the plurality of network nodes.
In some embodiments, the allocating unit 303 is further configured to add identification information to a packet header of the data to be transmitted allocated to the available channel, where the identification information indicates a transmission channel corresponding to the data to be transmitted.
A third aspect of the present invention provides a non-transitory computer readable medium having stored thereon instructions which, when executed by a processor, perform the steps of a method for data transmission based on a plurality of network nodes according to the first aspect of the present invention.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.