CN107682886B - Multi-path data transmission method - Google Patents
Multi-path data transmission method Download PDFInfo
- Publication number
- CN107682886B CN107682886B CN201710781187.7A CN201710781187A CN107682886B CN 107682886 B CN107682886 B CN 107682886B CN 201710781187 A CN201710781187 A CN 201710781187A CN 107682886 B CN107682886 B CN 107682886B
- Authority
- CN
- China
- Prior art keywords
- path
- data
- time
- packet loss
- link
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/04—Arrangements for maintaining operational condition
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/021—Traffic management, e.g. flow control or congestion control in wireless networks with changing topologies, e.g. ad-hoc networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0231—Traffic management, e.g. flow control or congestion control based on communication conditions
- H04W28/0236—Traffic management, e.g. flow control or congestion control based on communication conditions radio quality, e.g. interference, losses or delay
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0231—Traffic management, e.g. flow control or congestion control based on communication conditions
- H04W28/0242—Determining whether packet losses are due to overload or to deterioration of radio communication conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0284—Traffic management, e.g. flow control or congestion control detecting congestion or overload during communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0289—Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention provides a multipath data transmission method, which comprises the following steps: evaluating the path quality of each sub-path by establishing a queuing theory model for each path, and dynamically distributing data to each path for transmission according to the path quality; and obtaining the link utilization rate in the path, and carrying out packet loss distinguishing according to the relationship between the link utilization rate and a preset link congestion reference threshold value. By the method, the transmission rate is obviously improved, the transmission delay is greatly reduced, and the user experience is greatly improved.
Description
Technical Field
The invention relates to the technical field of mobile wireless communication, in particular to a multipath data transmission method.
Background
With the development of mobile wireless communication technology, vehicular ad hoc networks (VANETs) are rapidly developing. Vehicular ad hoc networks are a special form of mobile ad hoc networks (MANETs) that contain node mobility, and the network topology does not require the pre-deployment of dynamically changing features. However, due to the limitation of the actual road, the nodes in the vehicular ad hoc network cannot move freely like the nodes in the mobile ad hoc network. In the vehicle-connected self-organizing network, vehicle-mounted nodes are provided with large-capacity storage space and ultra-strong computing power, and support various types of applications including safety inspection, traffic congestion control management and the like. In addition to this, IEEE has standardized 802.11p as an extension protocol to the vehicle ad hoc network in the 802.11 protocol family. It can be said that vehicular ad hoc networks are becoming increasingly important in wireless communication networks.
On the other hand, based on the rapid development of communication technologies and the increasing demand for data transmission speeds, multi-interface and multi-homed network environments are becoming more and more common, especially in wireless network environments. Existing mobile communication terminals have been configured with multiple interfaces to support multiple wireless network accesses. The multipath transmission control protocol (MPTCP) is a new protocol that uses multiple interfaces to improve network resource utilization. As an extension of Transmission Control Protocol (TCP), MPTCP adds an MPTCP layer between a transport layer and an application layer to manage and divide data, divides the entire data into a plurality of fragments, and transmits the fragments to a data receiver using TCP via substreams (subflows), and increases the transmission rate by transmitting the plurality of substreams in parallel.
Although the vehicle-mounted nodes of the vehicle ad hoc network are devices installed with a large number of storage nodes and an ultra-high computing power, the instability of wireless links and the limitation of bandwidth cause a great reduction in transmission efficiency. Many challenges are encountered in actual transmission. Due to the mobility of the nodes and the high change of the network topology, the situation of link interruption can be caused, so that data can not be transmitted to cause data packet loss; in addition, due to the limitation of network bandwidth, the congestion of the network can also cause the loss of data packets; data loss can be caused by data distortion caused by problems such as noise and the like at the bottom layer of the wireless link, and the transmission rate is reduced.
Therefore, how to more accurately and quickly obtain the reason of the data packet loss has important significance for the data transmission of the mobile wireless communication network.
Disclosure of Invention
The present invention provides a multi-path data transmission method that overcomes, or at least partially solves, the above mentioned problems.
According to an aspect of the present invention, there is provided a multipath data transmission method, including:
evaluating the path quality of each sub-path by establishing a queuing theory model for each path, and dynamically distributing data to each path for transmission according to the path quality;
and obtaining the link utilization rate in the path, and carrying out packet loss distinguishing according to the relationship between the link utilization rate and a preset link congestion reference threshold value.
Preferably, the step of distinguishing packet loss according to the relationship between the link utilization rate and a preset link congestion reference threshold includes:
when the link utilization rate of the path is not less than a preset link congestion reference threshold value, judging that packet loss is congestion packet loss; and
when the link utilization rate of the path is smaller than a preset link congestion reference threshold value, a probe used for evaluating the reliability of the path is sent, and whether a reply to the probe is received within a preset time or not is judged, wherein the packet loss is random packet loss or packet loss caused by link interruption.
Preferably, the multi-path data transmission method further includes:
and designing an NR-SACK mechanism based on packet loss distinction, and retransmitting the unacknowledged data on the broken link.
Preferably, the step of evaluating the path quality of each sub-path by establishing a queuing theory model for each path, and dynamically allocating data to each path for transmission according to the path quality includes:
standardizing each path into a queuing theory model, and taking the queuing time of data in a buffer area of a sending end as the path quality of each path;
determining the queuing time corresponding to each path, performing ascending arrangement on the queuing time corresponding to each path, and distributing the data to each path in sequence.
Preferably, the step of obtaining the link utilization of the path includes:
smoothing the test bandwidth in the obtained path to obtain the smoothed test bandwidth;
obtaining the theoretical maximum transmission rate of the path according to the quotient of the congestion window value of the path and the minimum round-trip delay;
and obtaining the link utilization rate of the path according to the quotient of the test bandwidth after the smoothing treatment and the theoretical maximum transmission rate.
Preferably, when it is determined that the packet loss is a congestion packet loss, the packet loss distinguishing step further includes: adjusting the congestion window to increase additively;
when the packet loss is judged to be random packet loss, the step of packet loss distinguishing further comprises: retransmitting the lost data in the original path;
when the packet loss is determined to be caused by link interruption, the packet loss distinguishing step further includes: setting the congestion window of the path to 0, and transferring the data which is not sent on the interrupted link to other uninterrupted links.
Preferably, the step of determining the queuing time corresponding to each path specifically includes:
for any path, obtaining the kth data transmission rate according to the quotient of the kth estimated congestion window size of the path and the kth service time;
taking the quotient of the k-th data arrival rate and the data transmission rate as the service intensity;
and obtaining the queuing time corresponding to the path according to the service strength of the k-th ACK receiving time, the data arrival rate, the expectation of the service time of the path and the average value of the initial service time to the k-th service time.
Preferably, the step of obtaining the smoothed test bandwidth includes:
taking the time difference between the k time and the k-1 time ACK receiving time as the k time service time;
obtaining the test bandwidth of the k-th ACK receiving time according to the k-th service time and the data volume received in the interval between the k-th ACK receiving time and the k-1-th ACK receiving time;
and obtaining the test bandwidth of the smoothed k-time ACK receiving time according to the test bandwidths of the k-1 th and k-time ACK receiving time, the test bandwidth of the k-1 th ACK receiving time and the smoothing factor of the k-time ACK receiving time.
Preferably, the step of transferring the unsent data on the interrupted link to other un-interrupted links further includes:
continuing to transmit probes on the broken link;
and when the sending end receives the reply of the receiving end to the probe, setting the congestion window of the path to be 1, and increasing according to the AIMD mechanism.
Preferably, the calculation formula of the queuing time corresponding to the path is as follows:
wherein, Wi,kRepresenting the waiting time before the data is sent in the ith path; lambda [ alpha ]i,kRepresenting the data arrival rate; rhoi,kRepresenting the service strength; e (T)i,n 2) Represents the expectation of the service time of the path i;representing the average of the service times on path i.
The application provides a multipath data transmission method, which comprises the following steps: establishing a multi-path data distribution model based on a queuing theory, and reasonably distributing data for transmission according to the quality of different paths; distinguishing packet losses of different types and taking corresponding measures: when data packet loss is caused by network congestion, judging the network congestion condition by adopting a method based on measurement of available bandwidth so as to control the congestion; when the link can not be communicated and interrupted due to the movement of the terminal, a link reliability detection option is designed, the link reliability is judged, and the data on the interrupted link is transferred and switched under the condition that the link is interrupted; a data retransmission strategy aiming at a non-discardable selective acknowledgement mechanism in a mobile environment is designed, so that the retransmission rate is improved, and the rate of data up-delivery is accelerated. By the method, the transmission rate is obviously improved, the transmission delay is greatly reduced, and the user experience is greatly improved.
Drawings
FIG. 1 is a schematic diagram of a data structure of a probe according to an embodiment of the present invention;
fig. 2 is a schematic structural diagram of a multi-path data transmission system according to an embodiment of the present invention;
FIG. 3 is a flowchart illustrating a method for allocating paths according to the waiting time before data is transmitted in the paths according to an embodiment of the present invention;
fig. 4 is a flowchart illustrating a multi-path data transmission method according to an embodiment of the invention.
Detailed Description
The following detailed description of embodiments of the present invention is provided in connection with the accompanying drawings and examples. The following examples are intended to illustrate the invention but are not intended to limit the scope of the invention.
Due to the mobility of the nodes and the high change of the network topology, the situation of link interruption can be caused, so that data can not be transmitted to cause data packet loss; in addition, due to the limitation of network bandwidth, the congestion of the network can also cause the loss of data packets; data loss can be caused by data distortion caused by problems such as noise and the like at the bottom layer of the wireless link, and the transmission rate is reduced.
In the existing research of the vehicle ad hoc network, expert scholars mostly start from a data link layer and a network layer, and avoid the characteristics of node mobility and topology height change of a wireless link by calculating packet loss probability and node connection probability and evaluating the quality of each node and selecting a next hop path. The existing mode of research from the bottom layer can only solve the problem of link interruption, and the problem of low data transmission efficiency is not well solved.
In order to overcome the above problems in the prior art, an embodiment of the present invention provides a method for multilink data transmission, and for easy understanding, the following related concepts that may be involved in this embodiment and the following embodiments are explained first:
bandwidth, which is used to indicate the ability of a communication line to transmit data, refers to the "highest data rate" that can be passed from one point in the network to another in a unit of time. One metaphor for the concept of bandwidth, which is more visual, is the highway. The amount of data that can be transferred on the line per unit time is commonly in bps (bit per second).
In a wireless network, TCP-Westwood is a more ideal algorithm, and the main idea is to estimate bandwidth by continuously detecting the arrival rate of ACK at a sending end, adjust a congestion window and a slow start threshold by using the bandwidth estimation value when congestion occurs, and adopt an aid (additive and additive) congestion control mechanism. The method not only improves the throughput of the wireless network, but also has good fairness and interoperability with the existing network. The problem exists that the congestion packet loss and the wireless packet loss in the transmission process cannot be well distinguished, so that the congestion mechanism is frequently called.
Ack (acknowledgement), i.e. an acknowledgement character, in data communication, refers to a transmission control character sent by the receiving end to the sending end, and is used to indicate that the sent data has been acknowledged and received without errors.
Congestion window: one concept in TCP congestion control refers to the number of packets that a sender can send at most at one time under congestion control. The sending end presets a value according to the congestion degree of the network, and the value is the congestion window. The value of the congestion window depends on the congestion level of the network and is dynamically changing. The sender makes its own send window equal to the congestion window. The send window may also be smaller than the congestion window if the receiver's reception capability is reconsidered. The principle of controlling the congestion window by the sender is as follows: as long as the network is not congested, the congestion window is increased by some more to send more packets out. But as soon as the network is congested the congestion window is reduced a little to reduce the number of packets injected into the network.
RTT (Round-Trip Time) is Round-Trip delay. RTT is an important performance indicator in a network, and indicates that an acknowledgement is sent from a sender to a receiver after the sender sends data once (assuming that the receiver sends the data immediately after receiving the data)Acknowledgement), total experienced delay. For example, the transmitting end is at time T1Then, data is sent to the receiving end, and the sending end locally records the sending time st1. At T2At the moment, the sending end receives the confirmation information from the receiving end that the data sent by the receiving end has the same TSN, and records the current receiving time rt2Calculating the round trip time RTT (st) of the transmission message on the network1-rt2。
An M/G/1model (M/G/1model) is a queuing model, taking the bank queuing service as an example, the M/G/1model assumes that the process of each customer arriving at the bank follows poisson distribution (i.e. is independent), the service time of the bank for each customer is independent and follows G distribution, where 1 means that the bank only opens one window, i.e. only one service desk.
Poisson distribution (Poisson distribution), a discrete probability distribution (discrete probability distribution) commonly found in statistics and probability. In practical cases, when a random event, such as a call received at a telephone exchange, a passenger coming to a bus stop, a particle emitted from a radioactive substance, etc., occurs randomly and independently at a fixed average instantaneous rate λ (or density), then the number or number of occurrences of the event per unit time (area or volume) approximately follows the poisson distribution P (λ).
For the sender of a TCP session, data in its send buffer at any time can be classified into 4 categories, "sent and get peer ACK", "sent but not received peer ACK", "not sent but allowed to be sent by peer", "not sent but not allowed to be sent by peer". The two data portions of "sent but not received ACK from the peer" and "not sent but allowed to be sent by the peer" are called sending window.
For the receiver of a TCP session, there are 3 types in its receive buffer at a time. "received", "not received ready to receive", "not received not ready to receive" (since ACK is replied directly by the TCP protocol stack, there is no application delay by default, there is no "received not replied ACK"). Wherein "not receiving ready to receive" is referred to as a receive window.
TCP is a duplex protocol, and both parties to a session can receive and transmit data simultaneously. Both sides of a TCP session each maintain a "send window" and a "receive window". Where the value of the respective "receive window" depends on the application, system, hardware limitations (the TCP transmission rate cannot be greater than the data processing rate of the application). The respective "send window" requirements are then the same depending on the "receive window" advertised by the peer.
According to the above content, an embodiment of the present invention provides a multipath data transmission method, including:
evaluating the path quality of each sub-path by establishing a queuing theory model for each path, and dynamically distributing data to each path for transmission according to the path quality;
and obtaining the link utilization rate in the path, and carrying out packet loss distinguishing according to the relationship between the link utilization rate and a preset link congestion reference threshold value.
It should be noted that, in the embodiment of the present invention, the queuing theory is used for modeling to obtain the queuing time of each path, which can be used to evaluate the quality condition of each path, and send data to the path with good quality as much as possible for data transmission, and further, for the problem of packet loss, packet loss is distinguished by the link utilization rate of the path, so that the determination method is simpler.
On the basis of the above embodiment, the step of distinguishing packet loss according to the relationship between the link utilization rate and a preset link congestion reference threshold includes:
when the link utilization rate of the path is not less than a preset link congestion reference threshold value, judging that packet loss is congestion packet loss; and
when the link utilization rate of the path is smaller than a preset link congestion reference threshold value, a probe used for evaluating the reliability of the path is sent, and whether a reply to the probe is received within a preset time or not is judged, wherein the packet loss is random packet loss or packet loss caused by link interruption.
It should be noted that, in this embodiment, based on the relationship between the link utilization and the preset link congestion reference threshold, the congestion packet loss and the random packet loss are distinguished, and for the problem of data packet loss caused by link interruption, whether a path is interrupted or not is detected by designing a reliability option as a probe.
In one embodiment, packet loss distinction firstly needs to judge whether a link is congested or not, if the packet loss is caused by congestion, a congestion avoiding state is achieved by adjusting a congestion window, if the packet loss is caused by no congestion, whether the link is interrupted or not is judged by a probe of sending path reliability, if the probe reply is not received within a preset time, the packet loss is considered to be caused by the link interruption, and if the probe reply is received, the packet loss is considered to belong to random packet loss.
On the basis of the foregoing embodiments, the multipath data transmission method of the present embodiment further includes:
and designing an NR-SACK mechanism based on packet loss distinction, and retransmitting the unacknowledged data on the broken link.
It should be noted that, in the prior art, when determining whether to retransmit a data, the conventional method generally refers to a 3-time redundant ACK criterion, and as a basic working principle of ACK, after a transmitting end transmits an N-1 th packet, an ACK sequence number replied by a receiving end is actually consistent with a sequence number of a next packet transmitted by the transmitting end, that is, a sequence number of an nth packet. TCP uses the sequence number and acknowledgement number of the header to effectively ensure that data is received and reassembled in the order sent. One of the most important information exchanged in the handshake procedure after the TCP connection is established is the Initial Sequence Number (ISN). Once the ISN is set by both of the connecting parties, the sequence number included in the next transmitted message is incremented by one data payload value. Under normal conditions, when the sender receives three repeated ACKs, the data is retransmitted. However, when the link is broken, both the transmitter and the receiver cannot sense the link breaking, and therefore cannot make a decision, and data is pushed to the broken link for data transmission. Therefore, the embodiment of the invention immediately retransmits the unacknowledged data on the interrupted link after judging and knowing the link interruption by a non-discardable selection confirmation mechanism distinguished based on packet loss, ensures that the data can be continuously delivered to an upper layer as fast as possible, and improves the transmission efficiency.
On the basis of the above embodiments, the step of evaluating the path quality of each sub-path by establishing a queuing theory model for each path, and dynamically allocating data to each path for transmission according to the path quality includes:
standardizing each path into a queuing theory model, and taking the queuing time of data in a buffer area of a sending end as the path quality of each path;
determining the queuing time corresponding to each path, performing ascending arrangement on the queuing time corresponding to each path, and distributing the data to each path in sequence.
It should be noted that, in this embodiment, the queuing time of the data in the buffer area at the sending end is taken as the path quality of the path, and the smaller the queuing time, the higher the path quality of the path is considered, and when the data is distributed, the data is sent to each path in sequence, for example, there are 3 paths, where the queuing time of the data in the path a is the smallest, that is, the path quality of the path is the highest, and the queuing time of the data in the path c is the largest, that is, the path quality of the path is the lowest, and the data 1 to 3 are transmitted through the path a, the path b, and the path c, respectively, so that it can be ensured that the receiving end receives the data in the order of data 1 to 2 to 3.
On the basis of the foregoing embodiments, the step of obtaining the link utilization of the path includes:
smoothing the test bandwidth in the obtained path to obtain the smoothed test bandwidth;
obtaining the theoretical maximum transmission rate of the path according to the quotient of the congestion window value of the path and the minimum round-trip delay;
and obtaining the link utilization rate of the path according to the quotient of the test bandwidth after the smoothing treatment and the theoretical maximum transmission rate.
It should be noted that the quotient of the test bandwidth and the theoretical maximum transmission rate of the early warning path is used as the bandwidth utilization rate. Under the condition that the theoretical maximum transmission rate is unchanged, the larger the available bandwidth is, the larger the bandwidth utilization rate is, obviously, the larger the bandwidth utilization rate is, the larger the transmission pressure of the path is, and the larger the transmission pressure of the path is, as the vehicles on the expressway are, the higher the accident probability is.
The step of obtaining the test bandwidth after the smoothing process includes:
taking the time difference between the k time and the k-1 time ACK receiving time as the k time service time; for example, the 1 st ACK reception timing is 12:00:00, and the second ACK reception timing is 12:00:02, the service time is 2 s.
Obtaining the test bandwidth of the k-th ACK receiving time according to the k-th service time and the data volume received in the interval between the k-th ACK receiving time and the k-1-th ACK receiving time; obviously, the value of the data volume of the network transmission data in unit time represents the actual transmission rate of the path;
and obtaining the test bandwidth of the smoothed k-time ACK receiving time according to the test bandwidths of the k-1 th and k-time ACK receiving time, the test bandwidth of the k-1 th ACK receiving time and the smoothing factor of the k-time ACK receiving time.
And obtaining a smoothing factor of the receiving time of the ACK at the k time according to the time difference at the k time and the filtering parameter larger than the round trip delay.
The specific method comprises the following steps:
wherein, BWi,kTest for indicating i path k time ACK reception timeBandwidth, Di,kIndicating the amount of data received in the interval between the kth and k-1 ACK reception times, ti,kDenotes the i path k time ACK reception time, Δ ti,kDenotes the kth time difference, αkDenotes a smoothing factor, τ is a filter parameter and τ>RTTi,BW′i,kAnd the test bandwidth of the k-th ACK receiving time of the i path after the smoothing processing is shown.
On the basis of the foregoing embodiments, the step of determining the queuing time corresponding to each path specifically includes:
for any path, obtaining the kth data transmission rate according to the quotient of the kth estimated congestion window size of the path and the kth service time;
taking the quotient of the k-th data arrival rate and the data transmission rate as the service intensity;
and obtaining the queuing time corresponding to the path according to the service strength of the k-th ACK receiving time, the data arrival rate, the expectation of the service time of the path and the average value of the initial service time to the k-th service time.
On the basis of the above embodiments, the calculation formula of the queuing time corresponding to the path is as follows:
wherein, Wi,kRepresenting the waiting time before the data is sent in the ith path; lambda [ alpha ]i,kRepresenting the data arrival rate; rhoi,kRepresenting the service strength; e (T)i,n 2) Represents the expectation of the service time of the path i;representing the average of the service times on path i.
Based on the above embodiments, when p is directly on the path isendingFor data transmission of bandwidth (i.e., data that has been sent but has not received peer ACK), then the bandwidth that can also be allocated to the path (i.e., data that has not been sent but has been allowed to be sent by the peer) is:
Dmax=min(rwndi,cwndi-psending)
wherein rwndiIs the value of the receive window for path i. As can be seen from the above, the less of the receiving window and the congestion window corresponding to the path determines the assignable bandwidth on the path, and when there is data in transmission already on the path, the assignable bandwidth on the path is the receiving window and the congestion window minus the existing psendingThe minimum value in the bandwidth.
On the basis of the foregoing embodiments, when it is determined that packet loss is congestion packet loss, the packet loss distinguishing step further includes: adjusting the congestion window to increase additively;
when the packet loss is judged to be random packet loss, the step of packet loss distinguishing further comprises: retransmitting the lost data in the original path;
when the packet loss is determined to be caused by link interruption, the packet loss distinguishing step further includes: setting the congestion window of the path to 0, and transferring the data which is not sent on the interrupted link to other uninterrupted links.
On the basis of the above embodiment, the data structure of the probe, see fig. 1, includes: a kid field, a Length field, a Subtype field, and a reserved field. The kid field is used for indicating the type and the total field of the inquiry probes, the receiving end can know that the inquiry probes are received by analyzing the kid field, the Length field indicates the number of the fields of the probes, obviously, the Length is equal to 4, the items of the inquiry receiving end are written in the Subtype field, the reserved field is empty when the inquiry probes are sent to the receiving end from the generating end, and the receiving end fills the reply to the Subtype field in the reserved field after receiving the probes. In the figure, the total field of the probe is 30 fields, wherein the kid field occupies 1-8 fields, the Length field occupies 9-16 fields, the Subtype field occupies 17-20 fields, and the reserved field occupies 21-30 fields.
Based on the foregoing embodiments, the step of transferring the data that is not sent on the interrupted link to another uninterrupted link further includes:
continuing to transmit probes on the broken link;
and when the sending end receives the reply of the receiving end to the probe, setting the congestion window of the path to be 1, and increasing according to the AIMD mechanism.
Based on the above, the present invention provides a transmitting end in a multi-path data transmission system, fig. 2 shows a schematic structural diagram of a multi-path data transmission system,
wherein the transmitting end includes: the device comprises a path reliability judging module, a packet loss difference judging module, a transmission strategy module, a data distribution module and a sending cache module.
The process that the data packet is sent in the sending and caching module can be simulated as a queuing process, the rate that the datagram reaches the sending and caching module from the data distribution module is controlled by a sending end, the process that the data packet is transmitted to a receiving end through a vehicle-mounted network through different paths is simulated as a service process, and the time of the service process, namely the service time, is equal to the round trip time RTT.
The packet loss difference judging module judges the reasons of the path packet loss, and the reasons of the packet loss mainly include three reasons: the method comprises the steps that packet loss, random packet loss and packet loss caused by path interruption due to blocking can be obtained through RTT and broadband utilization rate, whether a path is in a heavy load state or not can be obtained, when the path is in the heavy load state, the packet loss is considered to be caused by blocking, if the path is not in the heavy load state, the packet loss is considered to be random packet loss, or the path interruption is caused, and the path reliability judgment module is needed to judge.
The path reliability judging module is used for sending an inquiry probe to test whether the path is interrupted, if the receiver can receive the path and feed back the path to the sender, the receiver proves that the path is available, and the packet loss is judged to belong to random packet loss; if the sender fails to receive feedback within the time, the path is proved to be interrupted, at the moment, the congestion window of the path is set to be 0 to enter a dormant state, the data on the path is transferred to other reliable paths for transmission, and stable data transmission is maintained; while data is transferred, the inquiry probe continuously transmits on the interrupted path, which is used for detecting the reliability of the path, and once the path is available, the congestion window is set to 1 and is increased according to the AIMD mechanism, so as to provide a transmission channel for data.
It is worth noting that the option to be replied by the receiving end is set in the inquiry probe, when the receiving end receives the inquiry probe, the sending end can know that the path is good by filling in/modifying the option and then returning to the sending end, and the sending end can check that the option is filled in/modified, and the option only occupies three bytes, so that network congestion can not be caused to network transmission.
The transmission strategy module is connected with the packet loss difference judgment module, and adjusts the transmission strategy according to the reason of packet loss, and the method comprises the following steps: for the packet loss caused by the blocking, the purpose of avoiding the blocking is achieved by adjusting the blocking window, and the lost data packet is retransmitted. For random packet loss, the blocking window does not need to be adjusted, and the lost data packet only needs to be retransmitted on the original path. And for packet loss caused by path interruption, rapidly switching paths with good quality to perform data retransmission.
On the basis of the foregoing embodiment, referring to fig. 3, a waiting list is set in a sending end according to a method for allocating a path according to waiting time before data is sent in the path, data to be sent is transmitted to a receiving buffer of a receiving end one by one according to the order of the waiting list, the receiving end replies an ACK packet to the sending end through the receiving buffer, and according to the waiting time before data is sent in the path, the sending end allocates data with longer waiting time to a path with shorter waiting time, so that the paths are balanced as much as possible.
The invention provides a multi-path runoff media data transmission method based on mobile sensing and packet loss distinguishing, and improves the existing method. The method mainly comprises, referring to fig. 4: establishing a multi-path data distribution model based on a queuing theory, and reasonably distributing data for transmission according to the quality of different paths; distinguishing packet losses of different types and taking corresponding measures: when data packet loss is caused by network congestion, judging the network congestion condition by adopting a method based on measurement of available bandwidth so as to control the congestion; when the link can not be communicated and interrupted due to the movement of the terminal, a link reliability detection option is designed, the link reliability is judged, and the data on the interrupted link is transferred and switched under the condition that the link is interrupted; a data retransmission strategy aiming at a non-discardable selective acknowledgement mechanism in a mobile environment is designed, so that the retransmission rate is improved, and the rate of data up-delivery is accelerated. By the method, the transmission rate is obviously improved, the transmission delay is greatly reduced, and the user experience is greatly improved.
Example one
The embodiment provides a method for evaluating path quality based on a queuing theory model. And establishing a queuing theory model for each sub-path in the multi-path transmission protocol. The process of waiting for data to be sent in the send buffer can be modeled as a queuing process, where the rate at which data arrives in the buffer is determined by the sender; the process of data transmission through the network and successfully received is modeled as a service process, and the service time is RTT. In the process of serving data, the bandwidth is considered to be kept stable as the bandwidth in the TCPWestwood measurement bandwidth, the data arrival rate conforms to Poisson distribution, and the service time follows general random distribution. Thus, each sub-path may build an M/G/1 model. The data transmission rate, i.e. the service rate, is:
wherein cwndi,kDenotes the size of the kth-evaluated congestion window on path i, Δ ti,kThe time difference between the two ACK reception times, i.e., the service time, is represented. According to the formulas of Littles Theorem and Pollaczek-Khicin (P-K), the waiting delay, i.e. the waiting time of data in the sending buffer, is:
λi,krepresenting the rate of arrival of data, pi,kIndicates the service strength, andE(Ti,n 2) Indicating the expectation of the service time for path i,is the average of the service times on path i.
By the use of Wi,kAs a parameter for evaluating the path quality, Wi,kThe smaller the path quality.
Example two
The embodiment provides a method for evaluating a path congestion state based on measurement of available bandwidth, which comprises the following steps:
first, an available bandwidth in a wireless network is measured by using a method of measuring an available bandwidth using TCP-Westwood. The available bandwidth is the data size of the network transmission data in unit time, i.e. the actual transmission rate. Due to the instability of the wireless network bandwidth, the measurement result needs to be smoothed, and the specific method is as follows:
wherein, BWi,kIs the measurement bandwidth, BW ', of the k-th ACK reception time on path i measured with TCP-Westwood'i,kMeasurement Bandwidth, Δ t, for the kth ACK reception time on smoothed Path ii,kTime difference indicating two ACK reception times, Di,kIndicating the amount of data received during this time. Wherein alpha iskThe calculation formula for the smoothing factor is:
τ is a filter parameter and τ>RTTi
The theoretical maximum transmission rate that can be reached in the network is:
the maximum rate is related to the congestion window size of the network and the minimum transmission round trip delay.
The quality status of the path is judged by the utilization rate of the path bandwidth, wherein the path utilization rate LU is the ratio of the actual transmission rate of the network to the maximum rate which can be reached by the network. I.e. limit value of path utilization in the wireless path, to calculate the path utilization LU of the network in the wireless network environmentwWhereinTherefore, when LU isw<At 80%, the network is in a state that the resources are not fully utilized, so that when data packet loss occurs, the data packet loss can be regarded as random packet loss;
when the content of LU is more than or equal to 80%wWhen the network is in the overload stage, the network resource is almost completely utilized, so the congestion window is increased in an additive way, and the congestion avoiding stage is entered.
EXAMPLE III
The embodiment provides a method for detecting path reliability and transferring data by a reliability option, which comprises the following steps:
the reliability option of the path is designed to be used as a probe and sent to a receiver, and if the receiver can receive the path and feed back the path to the sender, the path is proved to be available; if the sender fails to receive feedback within the time, the path is proved to be interrupted, at the moment, the congestion window of the path is set to be 0 to enter a dormant state, the data on the path is transferred to other reliable paths for transmission, and stable data transmission is maintained; and while data is transferred, the reliability option is continuously sent on the interrupted path to detect the reliability of the path, and once the path is available, the congestion window is set to be 1, and the path is increased according to the AIMD mechanism to provide a transmission channel for the data. It is noted that this option only occupies three bytes, and does not cause network congestion for network transmission. The pseudo code of the method is as follows:
when the sender does not receive the acknowledgement information at the expected time;
the sender sends an OPT _ LR path reliability option to the receiver;
if (no feedback of options received within an SRTT time)
LR ═ 0// LR denotes path reliability;
at this time, the path cannot carry out data transmission, and cwnd is equal to 0;
transferring data to other reliable paths for transmission
Break// still sending OPT _ LR option to the recipient on the breakout path
Electronic if (sender receives feedback from receiver)
LR=1;
cwnd ═ 1; and growing according to AIMD algorithm;
transmitting the data again through the path;
}
example four
On the basis of the third embodiment, the present embodiment provides a non-discardable selective acknowledgement mechanism based on packet loss distinction, and the specific method flow of the present embodiment includes:
when the link is interrupted, the data on the interrupted link is transferred to a reliable link for data transmission. The scheme improves the problem, and when the sender realizes the link interruption, the data on the interrupted link is pushed into the network for transmission. The specific method is shown in fig. 4.
In summary, in the invention, the queuing theory model is established for each sub-path to evaluate the path quality, and the dynamic distribution of data is carried out; in packet loss distinguishing, distinguishing congestion packet loss and random packet loss by adopting a method based on measurement of available bandwidth and network utilization rate, and performing congestion control and packet loss retransmission measurement in response; aiming at the problem of data packet loss caused by link interruption, whether a path is interrupted or not is detected by designing a reliability option as a probe, and data is transferred to a reliable link for stable transmission under the condition of data interruption; and finally, a non-discardable selective acknowledgement mechanism based on packet loss distinction is adopted to quickly retransmit the data which is not acknowledged on the interrupted link, so that the transmission delay is reduced, the network transmission rate is improved, and the user experience is further improved.
Finally, the method of the present application is only a preferred embodiment and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (9)
1. A multi-path data transmission method, comprising:
evaluating the path quality of each sub-path by establishing a queuing theory model for each path, and dynamically distributing data to each path for transmission according to the path quality;
obtaining the link utilization rate in the path, and performing packet loss distinguishing according to the relationship between the link utilization rate and a preset link congestion reference threshold value;
the step of establishing a queuing theory model for each path, evaluating the path quality of each sub-path, and dynamically allocating data to each path for transmission according to the path quality comprises the following steps:
standardizing each path into a queuing theory model, and taking the queuing time of data in a buffer area of a sending end as the path quality of each path;
determining the queuing time corresponding to each path, performing ascending arrangement on the queuing time corresponding to each path, and distributing the data to each path in sequence.
2. The multi-path data transmission method as claimed in claim 1, wherein the step of performing packet loss differentiation according to the relationship between the link utilization and a preset link congestion reference threshold includes:
when the link utilization rate of the path is not less than a preset link congestion reference threshold value, judging that packet loss is congestion packet loss; and
when the link utilization rate of the path is smaller than a preset link congestion reference threshold value, a probe used for evaluating the reliability of the path is sent, and whether a reply to the probe is received within a preset time or not is judged, wherein the packet loss is random packet loss or packet loss caused by link interruption.
3. The multi-path data transmission method as claimed in claim 2, further comprising:
and designing an NR-SACK mechanism based on packet loss distinction, and retransmitting the unacknowledged data on the broken link.
4. The multi-path data transmission method as claimed in claim 1, wherein the step of obtaining the link utilization of the path comprises:
smoothing the test bandwidth in the obtained path to obtain the smoothed test bandwidth;
obtaining the theoretical maximum transmission rate of the path according to the quotient of the congestion window value of the path and the minimum round-trip delay;
and obtaining the link utilization rate of the path according to the quotient of the test bandwidth after the smoothing treatment and the theoretical maximum transmission rate.
5. The multi-path data transmission method as claimed in claim 2,
when the packet loss is judged to be congestion packet loss, the packet loss distinguishing step further includes: adjusting the congestion window to increase additively;
when the packet loss is judged to be random packet loss, the step of packet loss distinguishing further comprises: retransmitting the lost data in the original path;
when the packet loss is determined to be caused by link interruption, the packet loss distinguishing step further includes: setting the congestion window of the path to 0, and transferring the data which is not sent on the interrupted link to other uninterrupted links.
6. The multi-path data transmission method according to claim 1, wherein the step of determining the queuing time corresponding to each path specifically includes:
for any path, obtaining the kth data transmission rate according to the quotient of the kth estimated congestion window size of the path and the kth service time;
taking the quotient of the k-th data arrival rate and the data transmission rate as the service intensity;
and obtaining the queuing time corresponding to the path according to the service strength of the k-th ACK receiving time, the data arrival rate, the expectation of the service time of the path and the average value of the initial service time to the k-th service time.
7. The multi-path data transmission method as claimed in claim 4, wherein the step of obtaining the smoothed test bandwidth includes:
taking the time difference between the k time and the k-1 time ACK receiving time as the k time service time;
obtaining the test bandwidth of the k-th ACK receiving time according to the k-th service time and the data volume received in the interval between the k-th ACK receiving time and the k-1-th ACK receiving time;
and obtaining the test bandwidth of the smoothed k-time ACK receiving time according to the test bandwidths of the k-1 th and k-time ACK receiving time, the test bandwidth of the k-1 th ACK receiving time and the smoothing factor of the k-time ACK receiving time.
8. The multi-path data transmission method as claimed in claim 5, wherein the step of transferring the data that is not transmitted on the interrupted link to other uninterrupted links further comprises:
continuing to transmit probes on the broken link;
and when the sending end receives the reply of the receiving end to the probe, setting the congestion window of the path to be 1, and increasing according to the AIMD mechanism.
9. The multi-path data transmission method as claimed in claim 6, wherein the calculation formula of the queuing time corresponding to the path is:
wherein, Wi,kRepresenting the waiting time before the data is sent in the ith path; lambda [ alpha ]i,kRepresenting the data arrival rate; rhoi,kRepresenting the service strength; e (T)i,n 2) Represents the expectation of the service time of the path i;represents the average value of the service time on path i; t isi,nIndicating the service time of path i among all n paths.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710781187.7A CN107682886B (en) | 2017-09-01 | 2017-09-01 | Multi-path data transmission method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710781187.7A CN107682886B (en) | 2017-09-01 | 2017-09-01 | Multi-path data transmission method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107682886A CN107682886A (en) | 2018-02-09 |
CN107682886B true CN107682886B (en) | 2019-12-20 |
Family
ID=61136126
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710781187.7A Active CN107682886B (en) | 2017-09-01 | 2017-09-01 | Multi-path data transmission method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107682886B (en) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108965153B (en) * | 2018-06-29 | 2020-10-13 | 中国科学院计算技术研究所 | Network link control method and system based on global link load balancing |
CN109067662B (en) * | 2018-06-29 | 2020-09-01 | 中国科学院计算技术研究所 | Link interconnection method and system based on job deployment information |
CN109698794B (en) * | 2019-01-21 | 2021-07-09 | 北京达佳互联信息技术有限公司 | Congestion control method and device, electronic equipment and storage medium |
CN111800218B (en) | 2019-04-08 | 2022-04-22 | 华为技术有限公司 | Data stream transmission method and equipment |
CN110113794B (en) * | 2019-04-29 | 2020-10-20 | 西安空间无线电技术研究所 | Dynamic and static evaluation method for path quality of wireless network |
CN110417650B (en) * | 2019-08-02 | 2021-12-10 | 广东中兴新支点技术有限公司 | Multilink data distribution method and device and electronic equipment |
CN110662256B (en) * | 2019-09-18 | 2021-03-23 | 北京交通大学 | Multi-path cross-protocol transmission data packet scheduling method and system |
CN110808859B (en) * | 2019-11-01 | 2020-12-01 | 海南大学 | Regression model calculation method and system for MPTCP multi-path transmission buffer consumption |
CN111131017B (en) * | 2019-11-19 | 2021-06-29 | 中国科学院计算技术研究所 | MPTCP (Multi-protocol Transmission control protocol) cross-layer optimization method and system based on multi-cellular wireless access gateway |
CN110996389B (en) * | 2019-12-12 | 2021-05-07 | Oppo广东移动通信有限公司 | Positioning method and device based on ad hoc network, electronic equipment and storage medium |
CN110913430B (en) * | 2019-12-27 | 2021-07-27 | 华中科技大学 | Active cooperative caching method and cache management device for files in wireless network |
CN111464437B (en) * | 2020-05-11 | 2021-10-29 | 南京邮电大学 | Multipath transmission path optimization method based on forward time delay in vehicle-mounted heterogeneous network |
CN111542089B (en) * | 2020-05-14 | 2021-11-09 | 海南大学 | Multipath congestion control method and device based on time delay and window jitter |
CN114071563B (en) * | 2020-08-03 | 2023-11-14 | 中国电信股份有限公司 | Multipath transmission control method and device based on cache space and mobile terminal |
CN113783775B (en) * | 2021-03-09 | 2023-06-02 | 北京京东尚科信息技术有限公司 | Method and device for data transmission |
CN113301628B (en) * | 2021-04-19 | 2022-08-16 | 深圳哇哇鱼网络科技有限公司 | Multi-line dynamic optimization method and system for terminal mobile network |
CN113259038B (en) * | 2021-04-29 | 2022-06-21 | 北京邮电大学 | Time synchronization method, node, device and storage medium |
CN113347087B (en) * | 2021-06-11 | 2022-01-18 | 北京连山科技股份有限公司 | Method for improving multilink data transmission correctness |
CN113783787B (en) * | 2021-08-05 | 2023-06-13 | 山东省计算中心(国家超级计算济南中心) | Cloud edge cooperation-based non-real-time data transmission method and device |
CN117692338B (en) * | 2024-02-01 | 2024-06-04 | 长城数字能源(西安)科技有限公司 | Energy Internet of things data visualization method and system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843257A (en) * | 2012-08-15 | 2012-12-26 | 无锡北邮感知技术产业研究院有限公司 | Path estimating method and device |
CN102843725A (en) * | 2012-08-15 | 2012-12-26 | 无锡北邮感知技术产业研究院有限公司 | Data transmission method and data transmission device |
WO2017115907A1 (en) * | 2015-12-28 | 2017-07-06 | 전자부품연구원 | Transmission device and method for measuring dynamic path state in various network environments |
US10271241B2 (en) * | 2013-08-23 | 2019-04-23 | Samsung Electronics Co., Ltd. | Method and device for transmitting and receiving data packets in wireless communication system |
-
2017
- 2017-09-01 CN CN201710781187.7A patent/CN107682886B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843257A (en) * | 2012-08-15 | 2012-12-26 | 无锡北邮感知技术产业研究院有限公司 | Path estimating method and device |
CN102843725A (en) * | 2012-08-15 | 2012-12-26 | 无锡北邮感知技术产业研究院有限公司 | Data transmission method and data transmission device |
US10271241B2 (en) * | 2013-08-23 | 2019-04-23 | Samsung Electronics Co., Ltd. | Method and device for transmitting and receiving data packets in wireless communication system |
WO2017115907A1 (en) * | 2015-12-28 | 2017-07-06 | 전자부품연구원 | Transmission device and method for measuring dynamic path state in various network environments |
Non-Patent Citations (1)
Title |
---|
Mobility-aware multimedia data transfer using Multipath TCP in Vehicular Network;danyang ZHU;《IEEE,wireless communications an mobile computing conference》;20170720;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107682886A (en) | 2018-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107682886B (en) | Multi-path data transmission method | |
CN110431809B (en) | Method and apparatus for distributing packets over multiple links in a mobile communication network | |
WO2019184890A1 (en) | Method and apparatus for transmitting information | |
CN1613233B (en) | Method and system of retransmission | |
US9356878B2 (en) | Method for avoiding network congestion and an apparatus thereof | |
CN101404622B (en) | Wireless internet congestion control method based on multi-path load balancing and controller thereof | |
CN112702274B (en) | Cross-layer congestion control method based on routing stability in tactical targeting network technology | |
US8369216B2 (en) | System and method of monitoring packets in flight for optimizing packet traffic in a network | |
US20100202469A1 (en) | Queue management system and methods | |
Abdullah | Enhancing the TCP Newreno Fast RecoveryAlgorithm on 5G Networks | |
Chakeres et al. | Perceptive admission control for wireless network quality of service | |
CN110062352A (en) | Multipath TCP network code Transmission system and method in vehicle self-organizing network based on packet loss differentiating | |
Yang et al. | TCP bulk repeat | |
Elaasar et al. | Satellite transport protocol handling bit corruption, handoff and limited connectivity | |
CN100471197C (en) | Method of efficiently transmitting/receiving data using transport layer in a mobile ad hoc network, and network device using the method | |
Subramani et al. | Improving congestion control performance and fairness in multihop ad hoc network | |
Kumar et al. | Device‐centric data reordering and buffer management for mobile Internet using Multipath Transmission Control Protocol | |
Rani et al. | A cross layer approach for improving TCP performance using channel access information | |
Buchholcz et al. | Explicit loss notification to improve TCP performance over wireless networks | |
Raniwala et al. | Evaluation of a stateful transport protocol for multi-channel wireless mesh networks | |
Wang et al. | Available bandwidth estimation in ieee 802.11 ad hoc networks | |
Chang et al. | Cross-layer-based adaptive TCP algorithm in 4G packet service LTE-advanced relaying communications | |
Jung et al. | Augmented split-TCP over wireless LANs | |
KR101365182B1 (en) | Method And System of Controling Packet Transmission Based on Transmission Control Protocol | |
Elaasar et al. | The extended satellite transport protocol: its design and evaluation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |