CN111865816B - Data transmission method, sender device and receiver device - Google Patents

Data transmission method, sender device and receiver device Download PDF

Info

Publication number
CN111865816B
CN111865816B CN201910364824.XA CN201910364824A CN111865816B CN 111865816 B CN111865816 B CN 111865816B CN 201910364824 A CN201910364824 A CN 201910364824A CN 111865816 B CN111865816 B CN 111865816B
Authority
CN
China
Prior art keywords
link
data
data block
sender device
receiver device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910364824.XA
Other languages
Chinese (zh)
Other versions
CN111865816A (en
Inventor
慕乃吾
李东锋
程亮
王锦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201910364824.XA priority Critical patent/CN111865816B/en
Publication of CN111865816A publication Critical patent/CN111865816A/en
Application granted granted Critical
Publication of CN111865816B publication Critical patent/CN111865816B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The embodiment of the application discloses a data transmission method, which is used for realizing the balance of load sharing of a plurality of links and avoiding the disorder of data packets. The method of the embodiment of the application comprises the following steps: receiving service data; dividing service data into a first data block and a second data block according to the sequence of data packets in the service data; allocating a first link and a second link for the first data block and the second data block, respectively; generating a merging rule, wherein the merging rule is used for indicating the data block ordering of the first data block and the second data block, and the data block ordering corresponds to the ordering of the data packets in the service data; and sending a merging rule to the receiver device, and sending the first data block and the second data block to the receiver device through the first link and the second link respectively, so that the receiver device receives the first data block and the second data block respectively, and merging the first data block and the second data block to restore the service data according to the data block ordering indicated by the merging rule.

Description

Data transmission method, sender device and receiver device
Technical Field
The present application relates to the field of data transmission, and in particular, to a data transmission method, a sender device, and a receiver device.
Background
An ethernet link aggregation (Eth-Trunk) is simply referred to as link aggregation, as shown in fig. 1, which is a schematic diagram of link aggregation, and it is implemented by binding multiple ethernet physical links together into a logical link, i.e. a link aggregation group (link aggregation group, LAG), so as to increase the link bandwidth. Meanwhile, the links which are bound together can effectively improve the reliability of the links through mutual dynamic backup, and each link can realize load sharing.
Since one Eth-Trunk link includes a plurality of member links, when data is transmitted between devices, in order to improve efficiency, the transmitted data needs to be distributed to each member link for transmission, that is, a load needs to be distributed to each link. At present, the load sharing mode of link aggregation mainly comprises stream-by-stream sharing and packet-by-packet sharing. As shown in fig. 2, the device 1 distributes different data packets to different links for transmission to the device 2, which is a schematic diagram of packet-by-packet sharing in a link aggregation scenario. As shown in fig. 3, a schematic diagram of stream-by-stream sharing of link aggregation is shown, where the device 1 allocates different links for different traffic streams, so that data of the different traffic streams is transmitted to the device 2 on the different links.
However, there are significant drawbacks to either packet-by-packet or stream-by-stream sharing. Since the logical link between the device 1 and the device 2 includes a plurality of member links, when the logical links are shared packet by packet, a situation that a second data block of the same data stream is transmitted on one member link and a second data block is transmitted on another member link may occur, if the first member link fails in data transmission or the transmission rate of the other member link is faster, the second data block arrives at the device 2 earlier than the second data block, so that the situation that the data packets of the traffic stream received by the device 2 are out of order may occur. And when the stream is shared by streams, the device 1 allocates different output ports for different service streams according to five-tuple groups of the different service streams, so that the data packets of the same service stream are ensured to be forwarded on the same member link, and the sequence of the data packets in the service stream is ensured not to be changed in transmission. However, since the traffic is dynamic and has burstiness, the problem that the utilization rate of each link cannot be guaranteed by stream-by-stream sharing, that is, the situation that a certain link is high in traffic and another link is low in traffic or no traffic in a certain period of time may exist. In summary, how to realize the problem of disorder of the data packet of the traffic flow in the transmission process when the Eth-Trunk link is subjected to load sharing, and to improve the utilization rate of each link, is a problem to be solved.
Disclosure of Invention
The embodiment of the application discloses a data transmission method, which is applied between sender equipment and receiver equipment, wherein the sender equipment and the receiver equipment are connected through a first link and a second link, and the method is used for realizing the balance of load sharing of a plurality of links and avoiding the disorder of data packets.
In view of this, a first aspect of the present application provides a method for data transmission, where the method is applied to a sender device and a receiver device, where the sender device and the receiver device are connected by a first link and a second link, and may include:
After receiving service data sent by a previous node, the sender device, such as a router switch, divides the service data into a first data block and a second data block according to the sequence of data packets in the service data, and allocates the first link and the second link to the first data block and the second data block respectively, wherein each data block can contain a plurality of data packets. After determining the link to which the data block corresponds, the sender device generates a merge rule for indicating the ordering of the first data block and the second data block, where the ordering of the first data block and the second data block corresponds to the ordering of the data packet in the service data. The sender device sends the merging rule to the receiver device, and sends the first data block and the second data block to the receiver device through the first link and the second link, respectively, so that the receiver device can merge the first data block and the second data block into the service data according to the sequence of the data blocks indicated by the merging rule after receiving the first data block and the second data block through the first link and the second link, respectively. In the embodiment of the application, when the sender equipment sends data to the receiver equipment, the first link and the second link both participate in data forwarding, so that the link utilization rate is prevented from being low due to the fact that a certain link is empty compared with a stream-by-stream sharing mode in the prior art, and meanwhile, as a merging rule is also sent when the data block is sent, the receiver equipment is ensured to restore the received first data block and second data block to the original service data, and the disorder condition of data packets in the transmission process is avoided compared with the packet-by-packet sharing mode in the prior art.
Alternatively, in some possible implementations, the merge rule may include ordering information for the first link and the second link. In the embodiment of the application, the combination rule is further described, so that the operability of the scheme is improved.
Optionally, in some possible implementations, the sending device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data, and may include: the sender device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size ratio of the first link and the second link. In the embodiment of the application, the sizes of the first data block and the second data block can be allocated according to the proportion of the link bandwidth, so that the bandwidth utilization rate of the link is further improved.
Optionally, in some possible implementations, the sending device allocates the first link and the second link for the first data block and the second data block, respectively, including: the sender device allocates the first link and the second link for the first data block and the second data block, respectively, according to the sizes of the data amounts of the first data block and the second data block. In the embodiment of the application, the sender device can allocate the corresponding link for the data block according to the size of the data block, namely, the link with larger bandwidth carries more data block transmission, thereby further improving the bandwidth utilization rate of the link.
Optionally, in some possible implementations, the method may further include: the sender device determines a first threshold and a second threshold, the first threshold is an upper limit value of data volume transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of data volume transmitted by the second link in the single preset time slot, the data volume of the first data block is smaller than or equal to the first threshold, and the data volume of the second data block is smaller than or equal to the second threshold. In the embodiment of the application, the upper limit value of the data quantity transmitted in a single time slot can be set for the first link and the second link, so that the sender device can take the size of the first data block and the second data block as a reference when distributing the sizes of the first data block and the second data block, thereby ensuring the full utilization of each link.
Optionally, in some possible implementations, the determining, by the sender device, the first threshold and the second threshold may include: the sender device determines a third threshold value, wherein the third threshold value is a smaller value of the preset data quantity processed by the sender device once and the preset data quantity processed by the receiver device once; the sender device calculates the time slot according to the third threshold value and the total bandwidth of the first link and the second link; the sender device calculates the first threshold value and the second threshold value according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot. In the embodiment of the application, the determination of the first threshold value and the second threshold value is described, so that the operability of the scheme is improved.
Optionally, in some possible implementations, the method may further include: the sender device receiving a feedback message from the receiver device, the feedback message may include delay information for the receiver device to receive data from the first link and the second link; the sender device adjusts a point in time at which data is sent over the first link and the second link according to the delay information. In the embodiment of the application, the sender device can receive the feedback message from the receiver device, so that the time point of the first link and the second link for sending the data is adjusted according to the delay information of the first link and the second link for receiving the data carried by the feedback message, the receiver device can simultaneously receive the data sent by the first link and the second link, the waiting time of the receiver device is reduced, and the efficiency of data transmission is improved.
A second aspect of an embodiment of the present application provides a method for data transmission, where the method is applied to a sender device and a receiver device, where the sender device and the receiver device are connected by a first link and a second link, and the method may include:
After the receiver device establishes a connection of the first link and the second link with the sender device, receiving the combining rule from the sender device, and receiving the first data block and the second data block from the sender device through the first link and the second link, respectively. And then, the receiver device determines the data block sequence of the first data block and the second data block according to the merging rule and merges the first data block and the second data block according to the data block sequence to restore the service data. In the embodiment of the application, the receiving device receives the merging rule when receiving the data blocks, so that the receiving device can determine the sequence of the received first data block and second data block according to the merging rule and restore the first data block and the second data block into the original service data according to the sequence. The first link and the second link both participate in data forwarding, so that the utilization rate of the link is improved compared with a stream-by-stream sharing mode, and meanwhile, the first data block and the second data block are combined and recovered according to the sequence indicated by the combining rule as the receiver receives the combining rule at the same time, so that the occurrence of disorder in the data transmission process is avoided compared with the stream-by-stream sharing mode.
Alternatively, in some possible implementations, the merge rule may include ordering information for the first link and the second link. In the embodiment of the application, the combination rule is further described, so that the operability of the scheme is improved.
Optionally, in some possible implementations, the method may further include: the receiver device generating a feedback message, the feedback message may include delay information for the receiver device to receive data from the first link and the second link; the receiver device sends the feedback message to the sender device, the feedback message being used to instruct the sender device to adjust a point in time at which data is sent over the first link and the second link. In the embodiment of the application, the receiving device can send the feedback information to the sending device, so that the sending device adjusts the time point of sending the data by the first link and the second link according to the delay information of the data received by the first link and the second link carried by the feedback information, the receiving device can simultaneously receive the data sent by the first link and the second link, the waiting time of the receiving device is reduced, and the efficiency of data transmission is improved.
A third aspect of the present application provides a method for data transmission, where the method is applied to a sender device and a receiver device, where the sender device and the receiver device are connected by a first link and a second link, and the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, and the method may include:
After receiving service data sent by the previous node, the sender device, such as a router switch, stores the service data locally in a form of a queue, and the sequence of data packets in the service data is the sequence of data packets in the queue. The sender device divides the service data into a first data block and a second data block according to the sequence of the data packets in the service data, and generates a data block sequence of the first data block and the second data block, wherein the data block sequence corresponds to the sequence of the data packets in the service data, and the data block sequence can be embodied as the sequence of the data block numbers. The sender device allocates the first link for the first data block and allocates the second link for the second data block according to the data block ordering and the preset mapping relation. And then, the sender device sends the first data block and the second data block to the receiver device through the first link and the second link respectively, so that the receiver device receives the first data block and the second data block respectively, determines the data block ordering according to the preset mapping relation, and further merges and restores the first data block and the second data block into the service data according to the data block ordering. In the embodiment of the application, the sender device and the receiver device are both preset with mapping relations between different data block sequences and different links, so that the sender device can allocate corresponding links to the first data block and the second data block according to the mapping relations, and the receiver device can determine the sequences of the first data block and the second data block according to the mapping relations after receiving the first data block and the second data block through the first link and the second link respectively, and restore the first data block and the second data block to original service data according to the sequences. In the scheme, when the sender equipment sends data to the receiver equipment, the first link and the second link both participate in data forwarding, so that compared with a stream-by-stream sharing mode in the prior art, the low link utilization rate caused by the idle position of a certain link is avoided, and meanwhile, the receiver equipment and the sender equipment are both preset with the mapping relation, so that the receiver equipment can restore the received first data block and the second data block into the original service data, and compared with the packet-by-packet sharing mode in the prior art, the disorder condition of data packets in the transmission process is avoided.
Optionally, in some possible implementations, the sending device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data, and may include: the sender device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size ratio of the first link and the second link. In the embodiment of the application, the sizes of the first data block and the second data block can be allocated according to the proportion of the link bandwidth, so that the bandwidth utilization rate of the link is further improved.
Optionally, in some possible implementations, the method may further include: the sender device determines a first threshold and a second threshold, the first threshold is an upper limit value of data volume transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of data volume transmitted by the second link in the single preset time slot, the data volume of the first data block is smaller than or equal to the first threshold, and the data volume of the second data block is smaller than or equal to the second threshold. In the embodiment of the application, the upper limit value of the data quantity transmitted in a single time slot can be set for the first link and the second link, so that the sender device can take the size of the first data block and the second data block as a reference when distributing the sizes of the first data block and the second data block, thereby ensuring the full utilization of each link.
Optionally, in some possible implementations, the determining, by the sender device, the first threshold and the second threshold may include: the sender device determines a third threshold value, wherein the third threshold value is a smaller value of the preset data quantity processed by the sender device once and the preset data quantity processed by the receiver device once; the sender device calculates the time slot according to the third threshold value and the total bandwidth of the first link and the second link; the sender device calculates the first threshold and the second threshold according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot. In the embodiment of the application, the determination of the first threshold value and the second threshold value is described, so that the operability of the scheme is improved.
Optionally, in some possible implementations, the method may further include: the sender device receiving a feedback message from the receiver device, the feedback message may include delay information for the receiver device to receive data from the first link and the second link; the sender device adjusts a point in time at which data is sent over the first link and the second link according to the delay information. In the embodiment of the application, the sender device can receive the feedback message from the receiver device, so that the time point of the first link and the second link for sending the data is adjusted according to the delay information of the first link and the second link for receiving the data carried by the feedback message, the receiver device can simultaneously receive the data sent by the first link and the second link, the waiting time of the receiver device is reduced, and the efficiency of data transmission is improved.
A fourth aspect of the present application provides a data transmission method, where the method is applied to a sender device and a receiver device, where the sender device and the receiver device are connected by a first link and a second link, and the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, and the method may include:
After the connection between the receiver device and the sender device is established, a first data block and a second data block are received from the sender device through the first link and the second link respectively, wherein the first link and the second link are determined by the sender device according to the data block ordering of the first data block and the second data block and the mapping relation, and the data block ordering corresponds to the ordering of the data packets in the service data. And then, the receiver device determines the data block sequence of the first data block and the second data block according to the mapping relation, and merges the first data block and the second data block according to the sequence to restore the service data. In the embodiment of the application, after receiving the data blocks, the receiving device determines the sequence of the data blocks received by different links according to different links and a preset mapping table, and further merges the received data blocks to recover the original data. The first link and the second link both participate in data forwarding, so that the utilization rate of the link is improved compared with a stream-by-stream sharing mode, and meanwhile, the first data block and the second data block are combined and recovered according to the sequence indicated by the combining rule as the receiver receives the combining rule at the same time, so that the occurrence of disorder in the data transmission process is avoided compared with the stream-by-stream sharing mode.
Optionally, in some possible implementations, the method may further include: the receiver device generating a feedback message, the feedback message may include delay information for the receiver device to receive data from the first link and the second link; the receiver device sends the feedback message to the sender device, the feedback message being used to instruct the sender device to adjust a point in time at which data is sent over the first link and the second link. In the embodiment of the application, the receiving device can send the feedback information to the sending device, so that the sending device adjusts the time point of sending the data by the first link and the second link according to the delay information of the data received by the first link and the second link carried by the feedback information, the receiving device can simultaneously receive the data sent by the first link and the second link, the waiting time of the receiving device is reduced, and the efficiency of data transmission is improved.
A fifth aspect of an embodiment of the present application provides a sender device, where the sender device and a receiver device are connected by a first link and a second link, the sender device including:
the receiving and transmitting unit is used for receiving service data;
The processing unit is used for dividing the service data into a first data block and a second data block according to the sequence of the data packets in the service data; allocating the first link and the second link to the first data block and the second data block, respectively; generating a merging rule, wherein the merging rule is used for indicating the data block ordering of the first data block and the second data block, and the data block ordering corresponds to the ordering of the data packets in the service data;
The receiving and transmitting unit is further configured to send the combining rule to the receiving device, and send the first data block and the second data block to the receiving device through the first link and the second link, so that the receiving device receives the first data block and the second data block, and combines the first data block and the second data block according to the data block ordering indicated by the combining rule to restore the service data.
Alternatively, in some possible implementations,
The merge rule includes ordering information for the first link and the second link.
Alternatively, in some possible implementations,
The processing unit is specifically configured to divide the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size ratio of the first link and the second link.
Alternatively, in some possible implementations,
The processing unit is specifically configured to allocate the first link and the second link to the first data block and the second data block according to the sizes of the data amounts of the first data block and the second data block, respectively.
Alternatively, in some possible implementations,
The processing unit is further configured to determine a first threshold and a second threshold, where the first threshold is an upper limit value of an amount of data transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of an amount of data transmitted by the second link in the single preset time slot, the amount of data of the first data block is less than or equal to the first threshold, and the amount of data of the second data block is less than or equal to the second threshold.
Alternatively, in some possible implementations,
The processing unit is specifically configured to determine a third threshold, where the third threshold is a smaller value of two of a preset data amount processed by the sender device once and a preset data amount processed by the receiver device once; calculating the time slot according to the third threshold value and the total bandwidth of the first link and the second link; and calculating the first threshold value and the second threshold value according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot.
Alternatively, in some possible implementations,
The transceiver unit is further configured to receive a feedback message from the receiver device, where the feedback message includes delay information of the receiver device for receiving data from the first link and the second link; and adjusting the time point of transmitting data through the first link and the second link according to the delay information.
A sixth aspect of an embodiment of the present application provides a receiver device, where the receiver device and a sender device are connected by a first link and a second link, and the receiver device includes:
A transceiver unit, configured to receive a combining rule from the sender device, and receive a first data block and a second data block from the sender device through the first link and the second link, respectively;
A processing unit for determining a data block ordering of the first data block and the second data block according to the merge rule; and merging the first data block and the second data block according to the data block ordering to restore the service data.
Alternatively, in some possible implementations,
The merge rule includes ordering information for the first link and the second link.
Alternatively, in some possible implementations,
The processing unit is further configured to generate a feedback message, where the feedback message includes delay information of the receiving device receiving data from the first link and the second link;
the transceiver unit is further configured to send the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
A seventh aspect of the present application provides a sender device, where the sender device and a receiver device are connected by a first link and a second link, where the sender device and the receiver device are each preset with a mapping relationship between different data block ranks and different links, where the sender device includes:
the receiving and transmitting unit is used for receiving service data;
The processing unit is used for dividing the service data into a first data block and a second data block according to the sequence of the data packets in the service data, and generating the data block sequence of the first data block and the second data block, wherein the data block sequence corresponds to the sequence of the data packets in the service data; distributing the first link for the first data block according to the data block ordering and the preset mapping relation, and distributing the second link for the second data block;
The receiving and transmitting unit is further configured to send the first data block and the second data block to the receiving device through the first link and the second link, so that the receiving device receives the first data block and the second data block respectively, determine the data block ordering according to the preset mapping relationship, and further combine the first data block and the second data block according to the data block ordering to restore the service data.
Alternatively, in some possible implementations,
The processing unit is specifically configured to divide the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size ratio of the first link and the second link.
Alternatively, in some possible implementations,
The processing unit is further configured to determine a first threshold and a second threshold, where the first threshold is an upper limit value of an amount of data transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of an amount of data transmitted by the second link in the single preset time slot, the amount of data of the first data block is less than or equal to the first threshold, and the amount of data of the second data block is less than or equal to the second threshold.
Alternatively, in some possible implementations,
The processing unit is specifically configured to determine a third threshold, where the third threshold is a smaller value of two of a preset data amount processed by the sender device once and a preset data amount processed by the receiver device once; calculating the time slot according to the third threshold value and the total bandwidth of the first link and the second link; and calculating the first threshold and the second threshold according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot.
Alternatively, in some possible implementations,
The receiving unit is further configured to receive a feedback message from the receiving device, where the feedback message includes delay information of the receiving device receiving data from the first link and the second link; and adjusting the time point of transmitting data through the first link and the second link according to the delay information.
An eighth aspect of the present application provides a receiver device, where the receiver device and a sender device are connected by a first link and a second link, and the sender device and the receiver device are both preset with mapping relationships between different data block sequences and different links, where the receiver device includes:
the receiving and transmitting unit is used for receiving a first data block and a second data block from the sender equipment through the first link and the second link respectively, the first link and the second link are determined by the sender equipment according to the data block ordering of the first data block and the second data block and the mapping relation, and the data block ordering corresponds to the ordering of the data packets in the service data;
The processing unit is used for determining the data block ordering according to the mapping relation; and merging the first data block and the second data block according to the data block sequence to restore the service data.
Alternatively, in some possible implementations,
The processing unit is further configured to generate a feedback message, where the feedback message includes delay information of the receiving device receiving data from the first link and the second link;
the transceiver unit is further configured to send the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
A ninth aspect of the embodiment of the present application provides a sender device, where the sender device and a receiver device are connected by a first link and a second link, where the sender device may include:
a processor, a memory, and a transceiver; the memory, the transceiver and the processor are connected through a bus; the transceiver is used for communicating with devices outside the sender equipment; the memory is used for storing operation instructions; the processor is configured to invoke the operation instruction and execute the method described in the first aspect and any optional manner in the embodiment of the present application.
A tenth aspect of the embodiment of the present application provides a receiver device, where the receiver device and the sender device are connected by a first link and a second link, where the receiver device may include:
A processor, a memory, and a transceiver; the memory, the transceiver and the processor are connected through a bus; the transceiver is configured to communicate with a device external to the recipient device; the memory is used for storing operation instructions; the processor is configured to invoke the operation instruction and execute the method described in the second aspect and any optional manner in the embodiment of the present application.
An eleventh aspect of the present application provides a sender device, where the sender device and a receiver device are connected by a first link and a second link, where the sender device and the receiver device are each preset with a mapping relationship between different data block ranks and different links, where the sender device may include:
A processor, a memory, and a transceiver; the memory, the transceiver and the processor are connected through a bus; the transceiver is used for communicating with devices outside the sender equipment; the memory is used for storing operation instructions; the processor is configured to invoke the operation instruction and execute the method described in the third aspect and any optional manner in the embodiment of the present application.
A twelfth aspect of the present application provides a receiver device, where the receiver device and a sender device are connected by a first link and a second link, and the sender device and the receiver device are both preset with mapping relationships between different data block sequences and different links, where the receiver device may include:
A processor, a memory, and a transceiver; the memory, the transceiver and the processor are connected through a bus; the transceiver is configured to communicate with a device external to the recipient device; the memory is used for storing operation instructions; the processor is configured to invoke the operation instruction and execute the method described in the fourth aspect and any optional manner in the embodiment of the present application.
A thirteenth aspect of the embodiments of the present application provides a computer storage medium comprising instructions which, when run on a computer, cause the computer to perform the method of the first or second aspect and any optional manner of the embodiments of the present application.
A fourteenth aspect of an embodiment of the application provides a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the first or second aspect and any of the alternatives of the embodiments of the application.
A fifteenth aspect of an embodiment of the present application provides a computer storage medium comprising instructions which, when run on a computer, cause the computer to perform the method of the third or fourth aspect and any optional manner of embodiments of the present application.
A sixteenth aspect of an embodiment of the application provides a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method as described in the third or fourth aspect and any optional manner of the embodiments of the application.
From the above technical solutions, the embodiment of the present application has the following advantages:
After receiving the service data, the sender device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data, and generates a corresponding merging rule. And then the combination rule is sent to the receiver device, and the first data block and the second data block are sent to the receiver device through the first link and the second link respectively, so that the receiver device can combine the received first data block and second data block according to the combination rule and restore the received first data block and second data block to the service data. When the sender device sends data to the receiver device, the first link and the second link both participate in data forwarding, so that the link utilization rate is prevented from being low due to the fact that a certain link is empty compared with a stream-by-stream sharing mode in the prior art, and meanwhile, when the data block is sent, a merging rule is also sent, the receiver device is ensured to restore the received first data block and second data block to original service data, and the situation that data packets are out of order in the transmission process is avoided compared with the packet-by-packet sharing mode in the prior art.
Drawings
Fig. 1 is a schematic diagram of link aggregation provided in an embodiment of the present application;
fig. 2 is a schematic diagram of packet-by-packet sharing in a link aggregation scenario provided in an embodiment of the present application;
fig. 3 is a schematic diagram of stream-by-stream sharing in a link aggregation scenario provided in an embodiment of the present application;
FIG. 4 is a schematic flow chart provided in an embodiment of the present application;
FIG. 5 is a diagram of an embodiment of a method for data transmission according to an embodiment of the present application;
FIG. 6 is a schematic view of a scenario provided in an embodiment of the present application;
FIG. 7 is a diagram of an embodiment of a method for data transmission according to an embodiment of the present application;
FIG. 8 is a schematic diagram of an embodiment of a sender device according to an embodiment of the present application;
Fig. 9 is a schematic diagram of an embodiment of a receiving device according to an embodiment of the present application;
FIG. 10 is a schematic diagram of an embodiment of a sender device according to an embodiment of the present application;
fig. 11 is a schematic diagram of an embodiment of a receiving device according to an embodiment of the present application;
FIG. 12 is a schematic diagram of another embodiment of a sender device in an embodiment of the present application;
fig. 13 is a schematic diagram of another embodiment of a receiving device according to an embodiment of the present application;
FIG. 14 is a schematic diagram of another embodiment of a sender device in an embodiment of the present application;
Fig. 15 is a schematic diagram of another embodiment of a receiving device according to an embodiment of the present application.
Detailed Description
The following describes in detail a method for transmitting data, a sender device, and a receiver device according to embodiments of the present application with reference to the accompanying drawings.
The embodiment of the application is applied to the field of data transmission, and can be applied to data interaction between at least two devices, such as a router, a switch and the like, for example, but not limited to, data transmission in an Eth-Trunk scene.
Techniques or terms related to the embodiments of the present application are described below.
The link aggregation technology is a mode which can effectively improve the link bandwidth between two devices by binding a plurality of physical links together into a logic link under the condition of not carrying out hardware upgrade. Wherein, the logical links are also called as link aggregation groups (link aggregation group, LAG), each of which corresponds to a logical interface, and can be used as a common ethernet interface, and the difference between the logical links and the common ethernet interface is that: the link aggregation group needs to select one or more interfaces from the member interfaces for data forwarding at the time of forwarding.
The data packet disorder refers to a situation that when the sender device sends service data to the receiver device, the sequence of the service flow data packets received by the receiver device is different from the sequence of the service flow data packets on the sender device due to the influence of some factors in the transmission process. As shown in fig. 1, the sender device and the receiver device store service data in the form of queues, where the service data on the sender device includes data of service flows a, b and c, and the corresponding packet ordering is b2-c2-c1-a2-b1-a1. In the transmission process, because the transmission time of each data packet is different, the time point of the data packet received by the receiving device is not corresponding, so that the data packets received by the receiving device and stored in the queue are ordered as c1-b2-c2-b1-a1-a2, and the traffic flow a and the traffic flow c are out of order. The disorder of the data packet can cause that the receiver cannot process the data of the service flow according to the original sequence when processing the data of the service flow, thereby possibly causing the situation of processing errors of the service data.
Based on the above description, the embodiment of the application provides a data transmission method, which is used for realizing the balance of load sharing of each link and avoiding the occurrence of data packet disorder under the link aggregation scene.
As shown in fig. 4, a flow chart provided by an embodiment of the present application includes: step 401: the method comprises the steps that service data in a queue are divided into a plurality of data blocks according to the sequence of data packets by a sender device, the number of the data blocks is consistent with the number of active links, and the sequence of the data blocks corresponds to the sequence of the data packets in the service data; 402: the sender equipment allocates a corresponding link for each data block; 403: the sender device sends corresponding data blocks to the receiver device through each link; 404: and the receiving device merges the received data blocks according to the ordering of the data blocks and restores the received data blocks into the original service data.
Referring to the flow chart shown in fig. 4, the sender device divides the service data in the queue into a plurality of ordered data blocks according to the sequence of the data packets in the service data, allocates active links to each data packet, and forwards the data blocks through the corresponding active links, wherein the number of the data blocks is the same as that of the active links. And then, the receiving device merges and restores the data blocks received through different links into the original service data according to the sequence of the data blocks. Because each active link participates in forwarding in the transmission process of the data block, compared with a stream-by-stream sharing mode, the utilization rate of the links is improved. The data blocks have an order which corresponds to the ordering of the data packets in the service data, and the receiving device can recover the service data according to the order after receiving the data blocks of different links, so that the problem of disorder is solved compared with a packet-by-packet sharing mode.
In this flow diagram, the receiving device needs to determine the order of the data blocks. It should be noted that the sequence of the data blocks may be that the sender device informs the receiver device when sending the data blocks, so that the receiver device may perform merging and recovering on the received data blocks according to the sequence. Or the two parties can negotiate in advance, namely, the sender equipment sends the data blocks according to a preset mode, and the receiver equipment receives the data blocks according to the preset mode at the same time, so that the sequence of the data blocks received by the receiver equipment is consistent with that of the sender equipment, and the receiver equipment can combine and restore the service data according to the sequence.
Based on the above description, a description is given below of how the receiving device determines the ordering of received data blocks, respectively.
As shown in fig. 5, an embodiment of a method for data transmission according to an embodiment of the present application is shown, including:
501. the sender device establishes a logical link with the receiver device, the logical link comprising a first link and a second link.
In this embodiment, the sender device and the receiver device may be routers or switches, and may be the same device or different devices. The established logical link is an Eth-Trunk link, and the mode of establishing the Eth-Trunk link can be a manual mode or a link aggregation control protocol (link aggregation control protocol, LACP) mode, which are slightly different, and the two modes of establishing the logical link are common technologies in the technical field at present and are not repeated here.
The established logic links comprise a plurality of member links, the member links comprise at least two active links and can also comprise an inactive link, the active link is used for participating in data forwarding, the inactive link is a standby link, and when a certain active link fails, the inactive link is automatically regulated and controlled by equipment at two ends of an aggregation group or receives the active link which is manually regulated and controlled to replace the failure, so that the task of data forwarding is completed. The at least two active links include a first link and a second link, and the bandwidths of the first link and the second link may be the same or different. It should be noted that, after each link has a corresponding port number at the two ends of the aggregation group and the sender device and the receiver device establish the logical link, the sender device and the receiver device simultaneously generate a corresponding relationship of the port numbers at the two ends of the sender device and the receiver device based on the connected member links, and store the corresponding relationship locally. Thus, the sender device and the receiver device may identify the link through the corresponding port numbers. As shown in the following table 1, the correspondence between the port numbers of the devices at the two ends of the aggregation group and the member links is shown.
Port number (sender device) Port number (receiver device) Bandwidth (Geb/s)
001 004 100
002 005 10
003 006 1
TABLE 1
502. The sender device determines a third threshold value that is a smaller value of both the pre-set amount of data that is processed by the sender device and the receiver device at a single time.
In this embodiment, the sender device and the receiver device store the received service data in the form of a queue, and store the received service data in a preset queue, so that the sender device and the receiver device are both preset with a queue value, and the preset queue value indicates the preset data amount of single processing of the device.
After the Eth-Trunk link is established between the sender device and the receiver device, the sender device may send a request message to the receiver device, determine a preset queue value of the receiver device according to a response returned by the receiver device, and then determine a third threshold value by comparing with the preset queue value of the receiver device, where the third threshold value is a smaller value of the queue values of both the sender device and the receiver device. In addition, the sender device may also determine the third threshold during the process of establishing the Eth-Trunk link, and the manner of determining the third threshold is not limited herein.
503. And the sender equipment calculates the time slot information according to the third threshold value and the total bandwidth of the first link and the second link.
In this embodiment, after determining the third threshold, the sender device calculates to obtain time slot information according to the third threshold and the total bandwidth of the current active link, for example, sets the active link to be a first link and a second link, and the total bandwidth of the active link is 110Geb/s, and the third threshold is 14.08M, so that the time slot=14.08M/110 Geb/s=1 ms is calculated.
504. The sender device calculates a first threshold and a second threshold according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot, wherein the first threshold and the second threshold are respectively the upper limit value of the data quantity transmitted by the first link and the second link in a single preset time slot.
In this embodiment, after determining the time slot, the sender device calculates, according to the respective bandwidth values of the first link and the second link, the maximum values of the data amounts transmitted by the first link and the second link in the time slot, that is, the maximum values are respectively corresponding to the first threshold value and the second threshold value. For example, the bandwidth of the first link is 100Geb/s, the bandwidth of the second link is 10Geb/s, and the time slot is 1ms, so that the first threshold is calculated to be 100Geb/s×1ms=12.8m, the second threshold is calculated to be 10Geb/s×1ms=1.28m, that is, the maximum value of the data amount sent/received by the sender/receiver device through the first link is not more than 12.8M in 1ms, and the corresponding second link is 1.28M.
In addition, after determining the first threshold and the second threshold, the sender device may set the dequeue according to the sizes of the first threshold and the second threshold, that is, divide the dequeue corresponding to the first link into a value corresponding to the first threshold, and divide the size of the dequeue corresponding to the second link into a value corresponding to the second threshold. Meanwhile, the sender device may also send configuration information to the receiver device, so that the receiver device sets the size of the enqueue corresponding to the first link to a value of a first threshold value in advance, and sets the size of the enqueue corresponding to the second link to a value of a second threshold value.
It should be noted that, steps 502 to 504 are optional steps.
505. The sender device receives the traffic data.
In this embodiment, the sender device receives and caches service data of one or more flows from the previous node in the queue, and the data of different flows are distinguished by adopting five-tuple. Wherein the received service data comprises a plurality of data packets, and the sender device caches the received data packets locally in a form of a queue according to the sequence of receiving the data packets.
506. The sender device divides the service data into a first data block and a second data block according to the sequence of the data packets in the service data, wherein the data volume of the first data block is smaller than or equal to a first threshold value, and the data volume of the second data block is smaller than a second threshold value.
In this embodiment, after the sender device obtains the service data, the service data is stored in the queue. And determining the next node as the receiving device according to the path indicated by the header of the data packet in the dequeue. The link between the sender device and the receiver device comprises a first link and a second link, the sender device sorts the data packets of the service data in the outgoing queue to divide the service data into a first data block and a second data block, wherein the number of the data blocks does not exceed the number of the current active links, the first data block and the second data block can be composed of one or more data packets, the data volume of the first data block is smaller than or equal to a first threshold value, and the data volume of the second data block is smaller than the second threshold value.
The sizes of the divided first data block and second data block may be the same or different.
Optionally, in some possible implementations, when the sender device divides the service data according to the ordering of the data packets of the service data, the size of the divided first data block and the size of the divided second data block are determined according to the size proportion of each active link bandwidth. For example, as described in step 404, assuming that the bandwidth sizes of the first link and the second link are 100Geb/s and 10Geb/s, respectively, the corresponding first threshold and second threshold are 12.8M and 1.28M, respectively, and assuming that the data size of the traffic data stored in the dequeue is 13.2M, the traffic data may be divided into 12M and 1.2M according to the bandwidth size ratio of the first link and the second link, that is, the data sizes of the first data block and the second data block are set to be 12M and 1.2M, respectively.
507. The sender device allocates a first link and a second link for the first data block and the second data block, respectively.
In this embodiment, after determining the first data block and the second data block, the sender device may allocate a first link to the first data block randomly or according to other preset rules, and divide the second data block into a second link.
Optionally, in some possible implementations, the sender device allocates a first link for the first data block according to the data sizes of the first data block and the second data block, allocates a second link for the second data block, that is, allocates a link with a larger bandwidth for a link with a larger data size, and allocates a link with a smaller bandwidth for a data block with a smaller data size, so as to ensure full utilization of the link bandwidth.
508. The sender device generates a merge rule for indicating a data block ordering of the first data block and the second data block, the data block ordering corresponding to an ordering of the data packets in the traffic data.
In this embodiment, after distributing the service data into the first data block and the second data block, the sender device generates a corresponding merge rule, where the merge rule is used to indicate a data block ordering of the first data block and the second data block, and the data block ordering corresponds to an ordering of the data packet in the service data. Therefore, after the merging rule is obtained, other devices except the sender device can sort and merge the received first data block and the second data block into corresponding service data according to the data block indicated by the merging rule.
The merging rule may be ordering information of the first link and the second link, where the ordering of the links corresponds to the ordering of the first data block and the second data block, i.e. also corresponds to the ordering of the data packets in the service data. For example, as shown in fig. 6, assume that the ordering of the data blocks corresponds to: the method comprises the steps that a first data block is a second data block, a first link port number is 002, a second link port number is 001, and if the sender device sends the first data block to the receiver device through a first link and sends the second data block to the receiver device through the first link, the ordering information of the links is 002-001, so that after the receiver device receives the ordering information, the ordering of the received first data block and the received second data block is determined according to the order of ports 004-003, and the received first data block and the received second data block are combined and restored into service data.
509. The sender device sends the merge rule to the receiver device and sends the first data block and the second data block to the receiver device via the first link and the second link, respectively.
In this embodiment, after the merge rule is generated, the sender device sends the merge rule to the receiver device, and sends the first data block and the second data block to the receiver device through the first link and the second link that are determined previously, respectively.
In practical application, the message may be carried in a protocol message, where the protocol message is a message format negotiated and determined by the sender device and the receiver device. The protocol message may be sent prior to the first data block and the second data block, or may be sent simultaneously, and may be sent through the first link or may be sent through the second link. In addition, the merging rule may further include size information of data amounts of the first data block and the second data block, and/or number information of data packets in the first data block and the second data block, so as to instruct the receiving device to divide the enqueue to store the received first data block and the received second data block.
510. The receiver device receives the merge rule from the sender device and receives the first and second data blocks from the sender device over the first and second links, respectively.
In this embodiment, after receiving the merge rule, if the merge rule includes size information of data amounts of the first data block and the second data block, the receiver device reserves a corresponding space in the enqueue. And then, the receiving device receives the first data block and the second data block through the first link and the second link respectively and caches the first data block and the second data block.
511. The receiver device determines a data block ordering of the first data block and the second data block according to the merge rule.
In this embodiment, after receiving the merge rule, the receiver device determines a data block ordering of the first data block and the second data block according to the merge rule. The combining rule includes ordering information of the first link and the second link, and may further include size information of the data amount and number information of the data packets. For example, the port numbers of the first link and the second link are 003 and 004 respectively, the corresponding link ranks 004-003, the first data block contains 50 data packets, the data volume is 10M, the second data block contains 10 data packets, and the data volume is 1M, and then the merging rule can be as shown in the following table 2:
Link ordering Port number Number of data packets Data volume
1 004 10 1M
2 003 50 10M
TABLE 2
After the receiving device obtains the merging rule, the enqueuing device can divide the 1M and 10M ordered storage spaces according to the link sequence and the data quantity of the data blocks, and determine the ordering of the first data block and the second data block according to the link sequence.
512. And the receiver device merges the first data block and the second data block according to the data block ordering and restores the first data block and the second data block into service data.
In this embodiment, after determining the ordering of the data blocks, the receiving device stores the buffered first data block and the second data block into corresponding queues according to the ordering, that is, restores the first data block and the second data block to service data. And if the receiving side equipment presets the corresponding queue space according to the merging rule, storing the first data block and the second data block according to the set queue space.
Optionally, in some possible embodiments, the receiver device generates a feedback message including delay information for the receiver device to receive data from the first link and the second link; the receiver device sends the feedback message to the sender device; the sender device receiving a feedback message from the receiver device; the sender device adjusts a point in time of transmitting data over the first link and the second link according to the delay information. In this embodiment, when the receiver device receives the first data block and the second data block from the sender device, the receiver device may record the time points of receiving the data through the first link and the second link, respectively, and generate a feedback message, and send the feedback message to the sender device. After the first link receives the feedback message, the delay of the data received by the first link and the second link of the receiver device may be determined according to the feedback message, so as to adjust the time point of sending the data through the first link and the second link, so that the receiver device may receive the data transmitted by the first link and the second link at the same time. For example, the sender device determines that the time point of receiving the first data block by the receiver device is 0.5ms later than the second data block according to the feedback message, and then the time point of sending the data through the first link is 0.5ms earlier than the time point of sending the data through the second link by the sender device, so that the receiver device can simultaneously receive the data sent by the two links, and the transmission time is saved.
From the above technical solutions, the embodiment of the present application has the following advantages:
After receiving the service data, the sender device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data, and generates a corresponding merging rule. And then the combination rule is sent to the receiver device, and the first data block and the second data block are sent to the receiver device through the first link and the second link respectively, so that the receiver device can combine the received first data block and second data block according to the combination rule and restore the received first data block and second data block to the service data. When the sender device sends data to the receiver device, the first link and the second link both participate in data forwarding, so that the link utilization rate is prevented from being low due to the fact that a certain link is empty compared with a stream-by-stream sharing mode in the prior art, and meanwhile, as a merging rule is also sent when the data block is sent, the receiver device is ensured to restore the received first data block and second data block to original service data, and the data packet disorder condition in the transmission process is avoided compared with the packet-by-packet sharing mode in the prior art.
The above technical solution describes a manner that the sender device informs the receiver device of the ordering of the data blocks, and a manner that both the sender device and the receiver device negotiate is described below.
As shown in fig. 7, another embodiment of a method for transmitting data according to an embodiment of the present application is shown, including:
701. The sender device establishes a logical link with the receiver device and configures a mapping relationship between different data block sequences and different links, wherein the logical link comprises a first link and a second link.
In this embodiment, the transmitting device may establish an Eth-Trunk link with the receiving device in a manual mode or in a LACP mode, and the establishment procedure of the Eth-Trunk link is similar to the establishment procedure described in step 501 in the embodiment shown in fig. 5, which is not described herein.
It should be noted that, in the process of establishing the Eth-Trunk link, the sender device and the receiver device simultaneously configure the same mapping relationship between different data block sequences and different links, and in the mapping relationship, the sequence of the data blocks may be represented as the sequence of the data block numbers, where the sequence of the numbers also corresponds to the sequence of the data packets in the service data. As shown in Table 3 below, which is a schematic representation of this mapping, the data blocks are ordered as m4-m3-m2-m1.
Data block ordering Sender port number Receiver port number Bandwidth (Geb/s)
m1 003 005 100
m2 001 006 10
m3 002 008 1
m4 004 007 50
TABLE 3 Table 3
Optionally, the sender device determines a third threshold value, which is a smaller value of both the preset amount of data processed by the sender device once and the preset amount of data processed by the receiver device once. And the sender equipment calculates the time slot information according to the third threshold value and the total bandwidth of the first link and the second link. The sender device calculates a first threshold and a second threshold according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot, wherein the first threshold and the second threshold are respectively the upper limit value of the data quantity transmitted by the first link and the second link in a single preset time slot.
It should be noted that, the optional steps are similar to steps 502 to 504 in the embodiment shown in fig. 5, and are not repeated here.
702. The sender device receives the traffic data.
In this embodiment, the sender device receives and caches service data of one or more flows from the previous node in the queue, and the data of different flows are distinguished by adopting five-tuple. Wherein the received service data comprises a plurality of data packets, and the sender device caches the received data packets locally in a form of a queue according to the sequence of receiving the data packets.
703. The sender device divides service data into a first data block and a second data block according to the sequence of the data packets in the service data, and generates the data block sequence of the first data block and the second data block, wherein the data block sequence corresponds to the sequence of the data packets in the service data.
In this embodiment, the sender device divides the service data into the first data block and the second data block according to the ordering of the data packets in the service data, and optionally, the sender device may determine the sizes of the divided first data block and second data block according to the size proportion of each active link bandwidth, which are similar to the steps described in step 506 in the embodiment shown in fig. 5 and the optional steps are not repeated here.
In step 703, when the sender device generates the first data block and the second data block, the sender device also sorts the generated first data block and the generated second data block, where the sorting may be embodied in a form of sorting the numbers of the data blocks, and the numbers are the same type of numbers as the numbers of the data blocks in the preset mapping relationship. For example, the service data (b 3-d3-c2-c1-b2-a2-a1-b 1), after being divided, the first data block is (b 3-d3-c2-c 1), the second data block is (b 2-a2-a1-b 1), and the ordering of the data blocks is: the sender device sets the number of the first data block to be m2, the number of the second data block to be m1, and the corresponding sequence of the numbers to be m2-m1.
704. And the sender equipment respectively allocates a first link and a second link for the first data block and the second data block according to the data block ordering and the preset mapping relation.
In this embodiment, after determining the ordering of the data blocks, the sender device determines links corresponding to the first data block and the second data block respectively according to the mapping relationship shown in table 3. For example, the data block ordering is: first data block-second data block, according to table 3, it is determined that the first link corresponding to the first data block is a link with port number of 001, and it is determined that the first link corresponding to the second data block is a link with port number of 003.
705. The sender device sends the first data block and the second data block to the receiver device over the first link and the second link, respectively.
In this embodiment, after determining the links corresponding to the first data block and the second data block, the sender device sends the first data block and the second data block to the receiver device through the first link and the second link that are determined previously, respectively.
706. The receiver device receives the first data block and the second data block from the sender device over the first link and the second link, respectively.
In this embodiment, the receiver device receives the first data block and the second data block from the sender device through the first link and the second link, and performs buffering.
707. The receiving device determines the ordering of the data blocks according to the mapping relation.
In this embodiment, when the receiving side receives the first data block and the second data block from the sending side device through the first link and the second link, respectively, the receiving side records the port number corresponding to each received data block, so as to determine the ordering of the data blocks according to the preset mapping relationship.
708. And the receiver device merges the first data block and the second data block according to the data block ordering and restores the first data block and the second data block into service data.
In this embodiment, after determining the ordering of the data blocks, the receiving device stores the buffered first data block and the second data block into corresponding queues respectively according to the ordering, i.e. restores the first data block and the second data block to service data. And if the receiving side equipment presets the corresponding queue space according to the merging rule, storing the first data block and the second data block according to the set queue space.
Optionally, in some possible embodiments, the receiver device generates a feedback message including delay information for the receiver device to receive data from the first link and the second link; the receiver device sends the feedback message to the sender device; the sender device receiving a feedback message from the receiver device; the sender device adjusts a point in time of transmitting data over the first link and the second link according to the delay information. It should be noted that, this optional step is similar to the corresponding optional step in the embodiment shown in fig. 5, and will not be described here again.
From the above technical solutions, the embodiment of the present application has the following advantages:
The sender device and the receiver device are both preset with mapping relations between different data block sequences and different links, and the data block sequences correspond to the sequences of data packets in the service data. After receiving the service data and dividing the service data into a first data block and a second data block according to the ordering of the data packets in the service data, the sender device can determine a first link corresponding to the first data block and a second link corresponding to the second data block according to the ordering of the first data block and the second data block and the mapping relation. The sender device then sends the first data block and the second data block to the second device over the first link and the second link, respectively. And the receiving device can determine the sequence of the first data block and the second data block through the links corresponding to the first data block and the second data block and the mapping relation, so as to combine the first data block and the second data block and restore the first data block and the second data block into the original service data. In the transmission process, the first link and the second link both participate in data forwarding, so that the utilization rate of the links is improved compared with a stream-by-stream sharing mode, and the occurrence of the disorder condition of data packets in the transmission process is avoided compared with a packet-by-packet sharing mode through a preset mapping relation.
As shown in fig. 8, an embodiment of a sender device provided by an embodiment of the present application is shown, where the sender device and a receiver device are connected by a first link and a second link, and includes:
A transceiver 801, configured to receive service data;
A processing unit 802, configured to divide the service data into a first data block and a second data block according to the ordering of the data packets in the service data; allocating the first link and the second link to the first data block and the second data block, respectively; generating a merging rule, wherein the merging rule is used for indicating the data block ordering of the first data block and the second data block, and the data block ordering corresponds to the ordering of the data packets in the service data;
The transceiver 801 is further configured to send the merge rule to the receiver device, and send the first data block and the second data block to the receiver device through the first link and the second link, so that the receiver device receives the first data block and the second data block, and merges the first data block and the second data block into the service data according to the data block ordering indicated by the merge rule.
Optionally, in some possible implementations, the combining rule includes ordering information of the first link and the second link.
Alternatively, in some possible implementations,
The processing unit 802 is specifically configured to divide the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size ratio of the first link and the second link.
Alternatively, in some possible implementations,
The processing unit 802 is specifically configured to allocate the first link and the second link to the first data block and the second data block according to the sizes of the data amounts of the first data block and the second data block, respectively.
Alternatively, in some possible implementations,
The processing unit 802 is further configured to determine a first threshold and a second threshold, where the first threshold is an upper limit value of an amount of data transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of an amount of data transmitted by the second link in the single preset time slot, the amount of data of the first data block is less than or equal to the first threshold, and the amount of data of the second data block is less than or equal to the second threshold.
Optionally, in some possible implementations, the processing unit
802, Specifically configured to determine a third threshold, where the third threshold is a smaller value of two of a preset data amount processed by the sender device once and a preset data amount processed by the receiver device once; calculating the time slot according to the third threshold value and the total bandwidth of the first link and the second link; and calculating the first threshold value and the second threshold value according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot.
Alternatively, in some possible implementations,
A transceiver unit 801, configured to receive a feedback message from the receiver device, where the feedback message includes delay information of the receiver device for receiving data from the first link and the second link; and adjusting the time point of transmitting data through the first link and the second link according to the delay information.
As shown in fig. 9, an embodiment of a receiver device provided by an embodiment of the present application is shown, where the receiver device and a sender device are connected by a first link and a second link, and the receiver device includes:
a transceiver unit 901, configured to receive a combining rule from the sender device, and receive a first data block and a second data block from the sender device through the first link and the second link respectively;
A processing unit 902, configured to determine a data block ordering of the first data block and the second data block according to the merge rule; and merging the first data block and the second data block according to the data block ordering to restore the service data.
Optionally, in some possible implementations, the combining rule includes ordering information of the first link and the second link.
Alternatively, in some possible implementations,
A processing unit 902, further configured to generate a feedback message, where the feedback message includes delay information of the receiving device receiving data from the first link and the second link;
The transceiver unit 901 is further configured to send the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
As shown in fig. 10, an embodiment of a sender device provided by an embodiment of the present application is shown, where the sender device and a receiver device are connected by a first link and a second link, and the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, where the sender device includes:
a transceiver 1001 for receiving service data;
a processing unit 1002, configured to divide the service data into a first data block and a second data block according to the ordering of the data packets in the service data, and generate a data block ordering of the first data block and the second data block, where the data block ordering corresponds to the ordering of the data packets in the service data; distributing the first link for the first data block according to the data block ordering and the preset mapping relation, and distributing the second link for the second data block;
The transceiver 1001 is further configured to send the first data block and the second data block to the receiver device through the first link and the second link, so that the receiver device receives the first data block and the second data block, determines the data block ordering according to the preset mapping relationship, and further merges the first data block and the second data block according to the data block ordering to restore the service data.
Alternatively, in some possible implementations,
The processing unit 1002 is specifically configured to divide the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size ratio of the first link and the second link.
Alternatively, in some possible implementations,
The processing unit 1002 is further configured to determine a first threshold and a second threshold, where the first threshold is an upper limit value of an amount of data transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of an amount of data transmitted by the second link in the single preset time slot, the amount of data of the first data block is less than or equal to the first threshold, and the amount of data of the second data block is less than or equal to the second threshold.
Alternatively, in some possible implementations,
A processing unit 1002, configured to determine a third threshold, where the third threshold is a smaller value of two of a preset data amount processed by the sender device once and a preset data amount processed by the receiver device once; calculating the time slot according to the third threshold value and the total bandwidth of the first link and the second link; and calculating the first threshold and the second threshold according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot.
Alternatively, in some possible implementations,
A receiving unit 1001, configured to receive a feedback message from the receiver device, where the feedback message includes delay information of the receiver device receiving data from the first link and the second link; and adjusting the time point of transmitting data through the first link and the second link according to the delay information.
As shown in fig. 11, an embodiment of a receiver device provided by an embodiment of the present application is shown, where the receiver device and a sender device are connected by a first link and a second link, and the sender device and the receiver device are both preset with mapping relations between different data block sequences and different links, where the receiver device includes:
A transceiver 1101, configured to receive a first data block and a second data block from the sender device through the first link and the second link, where the first link and the second link are determined by the sender device according to a data block ordering of the first data block and the second data block and the mapping relationship, and the data block ordering corresponds to an ordering of data packets in service data;
A processing unit 1102, configured to determine the ordering of the data blocks according to the mapping relationship; and merging the first data block and the second data block according to the data block sequence to restore the service data.
Alternatively, in some possible implementations,
A processing unit 1102, further configured to generate a feedback message, where the feedback message includes delay information of the receiving device receiving data from the first link and the second link;
The transceiver 1101 is further configured to send the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a point in time of sending data over the first link and the second link.
As shown in fig. 12, another embodiment of a sender device provided by an embodiment of the present application is shown, where the sender device and a receiver device are connected by a first link and a second link, where the sender device may include:
A processor 1201, a memory 1202, and a transceiver 1203; the memory 1202, the transceiver 1203 and the processor 1201 are connected by a bus; the transceiver 1203 is configured to communicate with devices other than the sender device; the memory 1202 is used for storing operation instructions; the processor 1201 is configured to invoke the operation instruction to perform the method performed by the sender device in the embodiment shown in fig. 5 and any alternative.
As shown in fig. 13, another embodiment of a receiver device provided by an embodiment of the present application is shown, where the receiver device and the receiver device are connected by a first link and a second link, where the receiver device may include:
A processor 1301, a memory 1302, and a transceiver 1303; the memory 1302, the transceiver 1303 and the processor 1301 are connected through a bus; the transceiver 1303 is configured to communicate with a device other than the receiver apparatus; the memory 1302 is used for storing operation instructions; the processor 1301 is configured to invoke the operation instruction to execute the method performed by the receiver device in the embodiment shown in fig. 5 and any alternative manner.
As shown in fig. 14, another embodiment of a sender device provided by an embodiment of the present application is shown, where the sender device and a receiver device are connected by a first link and a second link, where the sender device and the receiver device are both preset with mapping relationships between different data block ranks and different links, and the sender device may include:
A processor 1401, a memory 1402, and a transceiver 1403; the memory 1402, the transceiver 1403 and the processor 1401 are connected by a bus; the transceiver 1403 is configured to communicate with a device other than the sender apparatus; the memory 1402 is configured to store operation instructions; the processor 1401 is configured to invoke the operation instruction and execute the method performed by the sender device in the embodiment shown in fig. 7 and any alternative manner.
As shown in fig. 15, another embodiment of a receiver device provided by an embodiment of the present application is shown, where the receiver device and the receiver device are connected through a first link and a second link, and the sender device and the receiver device are both preset with mapping relations between different data block sequences and different links, where the receiver device may include:
A processor 1501, a memory 1502 and a transceiver 1503; the memory 1502, the transceiver 1503 and the processor 1501 are connected by a bus; the transceiver 1503 is configured to communicate with a device other than the receiving device; the memory 1502 is used for storing operation instructions; the processor 1501 is configured to invoke the operation instruction to execute the method performed by the receiver device in the embodiment shown in fig. 7 and any alternative.
The application also provides a computer storage medium comprising instructions which, when run on a computer, cause the computer to perform a method as described in the embodiment and any of the alternatives shown in figure 5.
The application also provides a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method as described in the embodiment and any of the alternatives shown in fig. 5.
The application also provides a computer storage medium comprising instructions which, when run on a computer, cause the computer to perform a method as described in the embodiment and any of the alternatives shown in figure 7.
The application also provides a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method as described in the embodiment and any of the alternatives shown in fig. 7.
It will be clear to those skilled in the art that, for convenience and brevity of description, specific working procedures of the above-described systems, apparatuses and units may refer to corresponding procedures in the foregoing method embodiments, which are not repeated herein.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present application, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid state disk Solid STATE DISK (SSD)), etc.
In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices, and methods may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, e.g., the division of the units is merely a logical function division, and there may be additional divisions when actually implemented, e.g., multiple units or components may be combined or integrated into another system, or some features may be omitted or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be through some ports, devices or units, and may be in electrical, mechanical or other forms.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be embodied essentially or in part or all of the technical solution or in part in the form of a software product stored in a storage medium, including instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a magnetic disk, or an optical disk, or other various media capable of storing program codes.
The above embodiments are only for illustrating the technical solution of the present application, and not for limiting the same; although the application has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims (21)

1. A method of data transmission, the method being applied to a sender device and a receiver device, the sender device and the receiver device being connected by a first link and a second link, the first link and the second link being active links, the active links participating in data forwarding, the method comprising:
The sender device receives service data;
the sender device divides the service data into a first data block and a second data block according to the sequence of data packets in the service data, wherein the number of the data blocks included in the service data is the same as the number of the active links;
the sender device allocates the first link and the second link for the first data block and the second data block respectively;
the sender device generates a merging rule, wherein the merging rule is used for indicating the data block ordering of the first data block and the second data block, and the data block ordering corresponds to the ordering of the data packets in the service data;
The sender device sends the merging rule to the receiver device, and sends the first data block and the second data block to the receiver device through the first link and the second link respectively, so that the receiver device receives the first data block and the second data block respectively, and merges the first data block and the second data block into the service data according to the data block ordering indicated by the merging rule;
The method further comprises the steps of:
The sender device receiving a feedback message from the receiver device, the feedback message including delay information for the receiver device to receive data from the first link and the second link;
The sender device adjusts a point in time of transmitting data over the first link and the second link according to the delay information.
2. The method of claim 1, wherein the step of determining the position of the substrate comprises,
The merge rule includes ordering information for the first link and the second link.
3. A method according to claim 1 or 2, wherein the sender device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data, comprising:
The sender device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size proportion of the first link and the second link.
4. The method according to claim 1 or 2, wherein the sender device allocates the first link and the second link for the first data block and the second data block, respectively, comprising:
The sender device allocates the first link and the second link to the first data block and the second data block according to the sizes of the data amounts of the first data block and the second data block, respectively.
5. The method according to claim 1 or 2, characterized in that the method further comprises:
The sender device determines a first threshold and a second threshold, wherein the first threshold is an upper limit value of the data volume transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of the data volume transmitted by the second link in the single preset time slot, the data volume of the first data block is smaller than or equal to the first threshold, and the data volume of the second data block is smaller than or equal to the second threshold.
6. The method of claim 5, wherein the step of determining the position of the probe is performed,
The sender device determining a first threshold and a second threshold, comprising:
the sender device determines a third threshold, wherein the third threshold is a smaller value of the preset data quantity processed by the sender device once and the preset data quantity processed by the receiver device once;
The sender device calculates the time slot according to the third threshold value and the total bandwidth of the first link and the second link;
The sender device calculates the first threshold value and the second threshold value according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot.
7. A method of data transmission, the method being applied to a sender device and a receiver device, the sender device and the receiver device being connected by a first link and a second link, the first link and the second link being active links, the active links participating in data forwarding, the method comprising:
The receiver device receives the merging rule from the sender device and receives a first data block and a second data block from the sender device through the first link and the second link, respectively;
The receiver device determines the data block ordering of the first data block and the second data block according to the merging rule;
the receiver device merges the first data block and the second data block according to the data block sequence and restores the first data block and the second data block into service data, wherein the service data comprises the same number of data blocks as the number of the active links;
The method further comprises the steps of:
the receiver device generating a feedback message including delay information for the receiver device to receive data from the first link and the second link;
The receiver device sends the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
8. The method of claim 7, wherein the step of determining the position of the probe is performed,
The merge rule includes ordering information for the first link and the second link.
9. A method for data transmission, wherein the method is applied to a sender device and a receiver device, the sender device and the receiver device are connected through a first link and a second link, the first link and the second link are active links, the active links participate in data forwarding, and the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, the method comprises:
The sender device receives service data;
The sender device divides the service data into a first data block and a second data block according to the sequence of the data packets in the service data, and generates the data block sequence of the first data block and the second data block, wherein the data block sequence corresponds to the sequence of the data packets in the service data, and the number of the data blocks included in the service data is the same as the number of the active links;
the sender device allocates the first link for the first data block and allocates the second link for the second data block according to the data block ordering and the preset mapping relation;
The sender device sends the first data block and the second data block to the receiver device through the first link and the second link respectively, so that the receiver device receives the first data block and the second data block respectively, determines the data block ordering according to the preset mapping relation, and further merges and restores the first data block and the second data block into the service data according to the data block ordering;
The method further comprises the steps of:
The sender device receiving a feedback message from the receiver device, the feedback message including delay information for the receiver device to receive data from the first link and the second link;
The sender device adjusts a point in time of transmitting data over the first link and the second link according to the delay information.
10. The method of claim 9, wherein the sender device divides the traffic data into a first data block and a second data block according to an ordering of data packets in the traffic data, comprising:
The sender device divides the service data into a first data block and a second data block according to the ordering of the data packets in the service data and the bandwidth size proportion of the first link and the second link.
11. The method according to claim 9 or 10, characterized in that the method further comprises:
The sender device determines a first threshold and a second threshold, wherein the first threshold is an upper limit value of the data volume transmitted by the first link in a single preset time slot, the second threshold is an upper limit value of the data volume transmitted by the second link in the single preset time slot, the data volume of the first data block is smaller than or equal to the first threshold, and the data volume of the second data block is smaller than or equal to the second threshold.
12. The method of claim 11, wherein the step of determining the position of the probe is performed,
The sender device determining a first threshold and a second threshold, comprising:
the sender device determines a third threshold, wherein the third threshold is a smaller value of the preset data quantity processed by the sender device once and the preset data quantity processed by the receiver device once;
The sender device calculates the time slot according to the third threshold value and the total bandwidth of the first link and the second link;
The sender device calculates the first threshold value and the second threshold value according to the bandwidth value of the first link, the bandwidth value of the second link and the time slot;
The method further comprises the steps of:
the receiver device generating a feedback message including delay information for the receiver device to receive data from the first link and the second link;
The receiver device sends the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
13. A method for data transmission, wherein the method is applied to a sender device and a receiver device, the sender device and the receiver device are connected through a first link and a second link, the first link and the second link are active links, the active links participate in data forwarding, and the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, the method comprises:
The receiving device receives a first data block and a second data block from the sending device through the first link and the second link respectively, the first link and the second link are determined by the sending device according to the data block ordering of the first data block and the second data block and the mapping relation, the data block ordering corresponds to the ordering of data packets in service data, and the number of the data blocks included in the service data is the same as the number of the active links;
the receiver device determines the data block ordering according to the mapping relation;
the receiver device merges the first data block and the second data block according to the data block sequence and restores the first data block and the second data block into the service data;
The method further comprises the steps of:
the receiver device generating a feedback message including delay information for the receiver device to receive data from the first link and the second link;
The receiver device sends the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
14. A sender device, wherein the sender device and a receiver device are connected by a first link and a second link, the first link and the second link being active links, the active links participating in data forwarding, the sender device comprising:
the receiving and transmitting unit is used for receiving service data;
The processing unit is used for dividing the service data into a first data block and a second data block according to the sequence of the data packets in the service data; allocating the first link and the second link to the first data block and the second data block respectively; generating a merging rule, wherein the merging rule is used for indicating the data block ordering of the first data block and the second data block, and the data block ordering corresponds to the ordering of the data packets in the service data;
The receiving and transmitting unit is further configured to send the merging rule to the receiving device, and send the first data block and the second data block to the receiving device through the first link and the second link, so that the receiving device receives the first data block and the second data block, and merge the first data block and the second data block into the service data according to the data block ordering indicated by the merging rule;
the transceiver unit is further configured to receive a feedback message from the receiver device, where the feedback message includes delay information of the receiver device receiving data from the first link and the second link;
the receiving and transmitting unit is further configured to adjust a time point of transmitting data through the first link and the second link according to the delay information.
15. A receiver device, wherein the receiver device and a sender device are connected by a first link and a second link, the first link and the second link being active links, the active links participating in data forwarding, the receiver device comprising:
A transceiver unit, configured to receive a combining rule from the sender device, and receive a first data block and a second data block from the sender device through the first link and the second link, respectively;
A processing unit, configured to determine a data block ordering of the first data block and the second data block according to the merging rule; merging the first data block and the second data block according to the data block sequence to restore the first data block and the second data block into service data, wherein the service data comprises the same number of data blocks as the number of the active links;
The processing unit is further configured to generate a feedback message, where the feedback message includes delay information of the receiving device receiving data from the first link and the second link;
the transceiver unit is further configured to send the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
16. The sender device is characterized in that the sender device and the receiver device are connected through a first link and a second link, the first link and the second link are active links, the active links participate in data forwarding, the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, and the sender device comprises:
the receiving and transmitting unit is used for receiving service data;
the processing unit is used for dividing the service data into a first data block and a second data block according to the sequence of the data packets in the service data, and generating the data block sequence of the first data block and the second data block, wherein the data block sequence corresponds to the sequence of the data packets in the service data; distributing the first links for the first data blocks and the second links for the second data blocks according to the data block ordering and the preset mapping relation, wherein the number of the data blocks included in the service data is the same as the number of the active links;
The receiving and transmitting unit is further configured to send the first data block and the second data block to the receiving device through the first link and the second link, so that the receiving device receives the first data block and the second data block respectively, determine the ordering of the data blocks according to the preset mapping relationship, and further combine and restore the first data block and the second data block into the service data according to the ordering of the data blocks;
the transceiver unit is further configured to receive a feedback message from the receiver device, where the feedback message includes delay information of the receiver device receiving data from the first link and the second link;
the receiving and transmitting unit is further configured to adjust a time point of transmitting data through the first link and the second link according to the delay information.
17. The receiver device is characterized in that the receiver device and the sender device are connected through a first link and a second link, the first link and the second link are active links, the active links participate in data forwarding, the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, and the receiver device comprises:
The receiving and transmitting unit is used for receiving a first data block and a second data block from the sender equipment through the first link and the second link respectively, the first link and the second link are determined by the sender equipment according to the data block ordering of the first data block and the second data block and the mapping relation, the data block ordering corresponds to the ordering of data packets in service data, and the number of the data blocks included in the service data is the same as the number of the active links;
The processing unit is used for determining the data block ordering according to the mapping relation; merging the first data block and the second data block according to the data block ordering to restore the service data;
The processing unit is further configured to generate a feedback message, where the feedback message includes delay information of the receiving device receiving data from the first link and the second link;
the transceiver unit is further configured to send the feedback message to the sender device, where the feedback message is used to instruct the sender device to adjust a time point of sending data through the first link and the second link.
18. The sender device is characterized in that the sender device and the receiver device are connected through a first link and a second link, the first link and the second link are active links, the active links participate in data forwarding, the number of data blocks included in service data is the same as the number of the active links, the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, and the sender device comprises:
a processor, a memory, and a transceiver;
the memory, the transceiver and the processor are connected through a bus;
the transceiver is used for communicating with devices outside the sender equipment;
The memory is used for storing operation instructions;
The processor is configured to invoke the operational instructions and perform the method of any of claims 1-6.
19. A receiver device, wherein the receiver device and a sender device are connected by a first link and a second link, the first link and the second link being active links, the active links participating in data forwarding, the receiver device comprising:
a processor, a memory, and a transceiver;
the memory, the transceiver and the processor are connected through a bus;
the transceiver is configured to communicate with a device external to the recipient device;
The memory is used for storing operation instructions;
the processor is configured to invoke the operational instructions to perform the method of any of claims 7-8.
20. A sender device, wherein the sender device and a receiver device are connected by a first link and a second link, the first link and the second link being active links, the active links participating in data forwarding, the sender device comprising:
a processor, a memory, and a transceiver;
the memory, the transceiver and the processor are connected through a bus;
the transceiver is used for communicating with devices outside the sender equipment;
The memory is used for storing operation instructions;
The processor is configured to invoke the operational instructions to perform the method of any of claims 9-12.
21. The receiver device is characterized in that the receiver device and the sender device are connected through a first link and a second link, the first link and the second link are active links, the active links participate in data forwarding, the sender device and the receiver device are preset with mapping relations between different data block sequences and different links, and the receiver device comprises:
a processor, a memory, and a transceiver;
the memory, the transceiver and the processor are connected through a bus;
the transceiver is configured to communicate with a device external to the recipient device;
The memory is used for storing operation instructions;
the processor is configured to invoke the operation instructions and perform the method of claim 13.
CN201910364824.XA 2019-04-30 Data transmission method, sender device and receiver device Active CN111865816B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910364824.XA CN111865816B (en) 2019-04-30 Data transmission method, sender device and receiver device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910364824.XA CN111865816B (en) 2019-04-30 Data transmission method, sender device and receiver device

Publications (2)

Publication Number Publication Date
CN111865816A CN111865816A (en) 2020-10-30
CN111865816B true CN111865816B (en) 2024-05-14

Family

ID=

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6160819A (en) * 1998-02-19 2000-12-12 Gte Internetworking Incorporated Method and apparatus for multiplexing bytes over parallel communications links using data slices
EP1442566A2 (en) * 2001-10-25 2004-08-04 Qualcomm Incorporated Method and system for transferring ip packets by aggregating multiple wireless communication channels for high data rate transfers
JP2006516069A (en) * 2001-10-25 2006-06-15 クゥアルコム・インコーポレイテッド System and method for token-based PPP fragment scheduling
US7924798B1 (en) * 2002-11-27 2011-04-12 Sprint Spectrum L.P. Method for transmitting data in a wireless telecommunications network using multiple data channels
WO2012037970A1 (en) * 2010-09-21 2012-03-29 Nokia Siemens Networks Oy Method and network devices for splitting of a data stream
CN102640461A (en) * 2009-11-30 2012-08-15 萨热姆通讯能源电信简易股份有限公司 Device and method for distributing data over a plurality of physical links
WO2016154833A1 (en) * 2015-03-28 2016-10-06 华为技术有限公司 Multi-link aggregation message sending method and apparatus
JP2016225819A (en) * 2015-05-29 2016-12-28 日本電信電話株式会社 Parallel packet transmission device and method
CN106453840A (en) * 2016-09-12 2017-02-22 广东欧珀移动通信有限公司 Mobile terminal performance tuning method and mobile terminal

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6160819A (en) * 1998-02-19 2000-12-12 Gte Internetworking Incorporated Method and apparatus for multiplexing bytes over parallel communications links using data slices
EP1442566A2 (en) * 2001-10-25 2004-08-04 Qualcomm Incorporated Method and system for transferring ip packets by aggregating multiple wireless communication channels for high data rate transfers
JP2006516069A (en) * 2001-10-25 2006-06-15 クゥアルコム・インコーポレイテッド System and method for token-based PPP fragment scheduling
US7924798B1 (en) * 2002-11-27 2011-04-12 Sprint Spectrum L.P. Method for transmitting data in a wireless telecommunications network using multiple data channels
CN102640461A (en) * 2009-11-30 2012-08-15 萨热姆通讯能源电信简易股份有限公司 Device and method for distributing data over a plurality of physical links
WO2012037970A1 (en) * 2010-09-21 2012-03-29 Nokia Siemens Networks Oy Method and network devices for splitting of a data stream
WO2016154833A1 (en) * 2015-03-28 2016-10-06 华为技术有限公司 Multi-link aggregation message sending method and apparatus
JP2016225819A (en) * 2015-05-29 2016-12-28 日本電信電話株式会社 Parallel packet transmission device and method
CN106453840A (en) * 2016-09-12 2017-02-22 广东欧珀移动通信有限公司 Mobile terminal performance tuning method and mobile terminal

Similar Documents

Publication Publication Date Title
JP6608545B2 (en) Service traffic distribution method and apparatus
CN103476062B (en) Data flow scheduling method, equipment and system
CN110418376B (en) Data transmission method and device
US8937920B2 (en) High capacity network communication link using multiple cellular devices
JP5677588B2 (en) System and method for multi-channel packet transmission
EP1810466A1 (en) Directional and priority based flow control between nodes
US9197570B2 (en) Congestion control in packet switches
US11228529B1 (en) Local and global quality of service shaper on ingress in a distributed system
CN105391567A (en) Traffic management implementation method and device, and network equipment
CN109257282B (en) Data transmission method and device
US20170048145A1 (en) Switching device and control method of switching device
US11838574B2 (en) Content distribution system
CN114503525A (en) Method and communication device for transmitting multiple data streams of different communication services over a multi-path transmission system
WO2012054389A2 (en) Reducing the maximum latency of reserved streams
CN109995608B (en) Network rate calculation method and device
US7990873B2 (en) Traffic shaping via internal loopback
CN111865816B (en) Data transmission method, sender device and receiver device
JP6220390B2 (en) Video data distributed transmission system
EP1476994B1 (en) Multiplexing of managed and unmanaged traffic flows over a multi-star network
US7072352B2 (en) Inverse multiplexing of unmanaged traffic flows over a multi-star network
CN111434079B (en) Data communication method and device
US11936570B1 (en) Modular switch and a method for scaling switches
CN111865816A (en) Data transmission method, sender equipment and receiver equipment
CN115190537A (en) Wireless link dynamic selection method and system
JP5048835B2 (en) Packet processing apparatus and method

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant