Self-adaptive congestion control method based on delay

文档序号:1660357 发布日期:2019-12-27 浏览:22次 中文

阅读说明:本技术 基于延迟的自适应拥塞控制方法 (Self-adaptive congestion control method based on delay ) 是由 蒋万春 吴佳 王建新 于 2019-09-09 设计创作,主要内容包括:本发明公开了一种基于延迟的自适应拥塞控制方法,根据排队延迟和窗口大小,在发送端判断网络是否拥塞,并根据拥塞情况调节拥塞窗口。拥塞窗口每一次的调节幅度为V*θ*δ,其中δ是常数,V用于加快拥塞控制算法的收敛速度,θ是根据排队延迟周期性抖动的过程中是否到达过0点的情况而调整的参数。该参数用于控制当前网络环境中的调窗幅度,以解决长期排队延迟为0的情况下链路利用率降低和排队延迟长期不为0又无法测量到最小往返延迟的问题。实验结果表明,本专利能够控制瓶颈链路缓存队列周期性地出现清空行为,使每条流都能测量到准确的往返链路传播延迟。相比于Copa算法,本专利具有延迟更低、公平性更好的优势。(The invention discloses a self-adaptive congestion control method based on delay, which judges whether a network is congested or not at a sending end according to queuing delay and window size, and adjusts a congestion window according to congestion conditions. The adjustment amplitude of each time of the congestion window is V theta delta, wherein delta is a constant, V is used for accelerating the convergence speed of the congestion control algorithm, and theta is a parameter adjusted according to the condition that whether a 0 point is reached in the process of the queuing delay periodic jitter. The parameter is used for controlling the window adjusting amplitude in the current network environment so as to solve the problems that the link utilization rate is reduced under the condition that the long-term queuing delay is 0, and the minimum round-trip delay cannot be measured when the queuing delay is not 0 for a long time. Experimental results show that the method can control the buffer queue of the bottleneck link to periodically empty, so that each flow can measure the accurate round-trip link propagation delay. Compared with the Copa algorithm, the method has the advantages of lower delay and better fairness.)

1. A self-adaptive congestion control method based on delay is characterized in that in a period of queuing delay jitter, according to whether the queuing delay reaches 0 point, the adjustment coefficient of a congestion window in a congestion control process is dynamically changed, and the method comprises the following steps:

step one, when a sending end receives an ACK packet, a congestion window cwnd is adjusted through the following formula:

wherein cwnd' is a new congestion window calculated according to the current congestion window cwnd, δ is a preset and unchangeable parameter, V and θ are dynamically changing parameters, CR is the current rate, and TR is the target rate;

step two, when the sending end receives an ACK packet, the parameter V is dynamically adjusted according to the change condition of the congestion window cwnd: increasing V when the window is continuously enlarged or reduced, otherwise setting V to be 1;

step three, when the sending end receives an ACK packet, dynamically adjusting a parameter theta according to whether the queuing delay dq reaches a point 0 in each oscillation period, reducing the theta when the queuing delay dq reaches the point 0, and otherwise, increasing the theta; wherein the oscillation period is obtained by: if the current queuing delay is larger than the historical queuing delay, recording the changing direction of the queuing delay as increasing, otherwise, recording the changing direction of the queuing delay as decreasing; when the queuing delay changes from increasing to decreasing or from decreasing to increasing, the queuing delay is considered to change direction and take one turn, and the time of every two turns of the queuing delay is taken as an oscillation period.

2. The method of claim 1, wherein in step one, CR and TR are calculated by the following equations:

CR=cwnd/RTTstand

TR=δ/dq

wherein, the queuing delay dq is RTTstand-RTTmin, RTTstand is the minimum round-trip delay value measured in the last 0.5srtt, where srtt is the default exponentially weighted smooth value of the round-trip delay in TCP, and RTTmin is the minimum round-trip delay value measured in the last 10 seconds.

3. The method according to claim 1, wherein the second step comprises the steps of:

step A1, when the sending end receives an ACK packet, the sending time of the ACK packet is subtracted from the receiving time of the ACK packet to obtain the instant round trip delay RTT; the sending end records the size of a congestion window at one RTT moment before the current moment as a history window; if the congestion window at the current moment is larger than the historical window, recording the window adjusting direction as positive at the sending end, otherwise, recording the window adjusting direction as negative;

step A2, judging whether the window adjusting directions within the last three continuous RTTs are consistent, if so, doubling V; if the window adjustment directions within the last three consecutive RTTs are not consistent, V is reset to 1.

4. The method according to claim 1, wherein in the third step, if dq is found to be 0 in the current period, dq is considered to have reached 0, and at this time, the current θ value is recorded as θemptyThen recording the end time of the current period as TemptyFinally, θ is adjusted to β θ, where β is a coefficient less than 1 and greater than 0; if dq is not found to be 0 in the current period, the distance T is determined according to the current time TemptyIncreases θ as a cubic function of the time length of (a), as follows:

θ=w((t-Tempty)-K)3empty,

wherein w is a parameter with a default value of 0.1, and t is the current moment.

Technical Field

The invention relates to the field of network congestion control, in particular to a self-adaptive congestion control method based on delay.

Background

In the Internet network, the conventional mainstream congestion control protocol mainly performs congestion control according to packet loss information. However, when the network is not congested, the congestion control protocol based on packet loss may continue to increase the size of the congestion window until the buffer overflows where the data traffic is congested, i.e., at the network bottleneck. This makes the queuing queue at the bottleneck longer the larger the buffer is, thereby increasing the transmission delay of the data packet. In order to avoid the problem, the existing congestion control method based on delay judges whether the network is congested or not by using delay information, and when the delay is too large, the network is judged to be congested, so that a congestion window is reduced before a buffer area overflows, and the increase of a queuing queue is avoided.

The congestion control protocols Vegas and Copa based on delay both combine queuing delay and the size of a congestion window to judge whether the network is congested. After the Vegas judges the network congestion, the windows are adjusted in a static mode, and the adjustment amount of each window in each RTT is only one packet. And the window size is kept constant when the window and queuing delay are at the desired position. However, in the case of large latency bandwidth products, Vegas takes a long time to reach the desired size of the window. Meanwhile, as the windows are kept unchanged after the Vegas reaches the expected position, the buffer area at the bottleneck of the network keeps a certain queue. This means that the newly arrived stream will have an erroneous estimated round trip link propagation delay, i.e. the measured RTTmin is larger than the true round trip link propagation delay.

Copa adopts a mechanism similar to Vegas to judge network congestion, and the difference is that the window adjusting amplitude of each RTT in Copa is determined by V & ltdelta & gt, wherein V is a dynamically adjusted parameter, delta is a preset parameter, and is not changed after the setting is finished, and is generally set as 2 in Copa. The specific congestion control method of Copa is as follows:

wherein cwnd' is a new congestion window calculated according to the current congestion window cwnd, CR is the current rate, TR is the target rate, and the calculation methods of CR and TR are as follows:

CR=cwnd/RTTstand

TR=δ/dq

wherein, the queuing delay dq is RTTstand-RTTmin, and the round trip delay RTTstand is the minimum round trip delay value measured in the last 0.5srtt, where srtt is the default exponential weighted smoothing value of the round trip delay in TCP, and RTTmin is the minimum round trip delay value measured in the last 10 seconds. The initial value V of V is 1. The adjustment algorithm is as follows, when Copa detects that the window is always increased (or decreased) beyond three RTTs, the current rate is far away from the target rate, and V is doubled every time one RTT passes, so as to accelerate the current rate to approach the target rate. If the window change direction changes from increasing to decreasing (or from decreasing to increasing) within three consecutive RTTs, it indicates that the current rate changes from equal to or less than the target rate to greater than the target rate (or vice versa). At this point it is assumed that the current rate has approached the target rate by acceleration of V, resetting V to 1. Since the current rate is equal to the target rate, Copa will still adjust the window. This makes Copa always in the adjustment window. And the window adjustment direction changes when the current rate equals the target rate. And after the adjustment direction is changed, the current speed will approach the target speed again. Copa indicates that, in a synchronous environment, when the window adjustment direction is just changed, the current rate can reach the target rate after 2.5 RTTs for the window adjustment amplitude 1 × δ. This means that a turn will occur every 2.5 RTTs the window passes, and since the doubling mechanism of V requires the window to adjust direction unchanged for three consecutive RTTs, the value of V will remain at 1. Compared with Vegas, Copa can accelerate the current speed to approach the target speed by adjusting V, and enables the window to have periodic oscillation behavior after the current speed approaches the target speed, so that the queue also has periodic oscillation behavior. If the minimum value point of the queue is close to 0 point in the oscillation period, each flow can observe a round trip delay close to the propagation delay of a round trip link every time an oscillation period passes, so that the measured RTTmin is more accurate.

However, by analyzing the oscillation behavior of the queues, it is found that in practice, within one oscillation period, the minimum point of the queuing delay is related to the link bandwidth C at the bottleneck, the number of flows N in the network, the measured value RTTmin of the round-trip link propagation delay. This means that in different network environments, Copa cannot guarantee oscillating behavior through queues so that each flow can estimate the exact round-trip link propagation delay. The analysis process is as follows: it is assumed that all streams are synchronized and in the window reduction phase. Noting that the round trip delay measured at time t is rtt (t), the queuing delay dq (t) observed at time t is rtt (t) -RTTmin, which is the minimum round trip delay measured, assuming it is equal to the real link round trip propagation delay. The window adjusting amplitude in each RTT is λ > 0, and is a constant, the window size before the previous RTT at time t is:

cwnd(t-RTT(t))=cwnd(t)+λ (1)

and the ACK of the data packet sent at the time t-RTT (t) is received at the time t. The size of the queue experienced by the packet is determined by the difference between the total window size and the product of the link delay bandwidth. When the total window is smaller than the delay bandwidth product of the link, the link is not filled, and the buffer queue is 0; when the total window is greater than or equal to the link delay bandwidth product, the buffer queue is equal to the total window minus the link delay bandwidth product. The observed queuing delay at time t is therefore equal to the length of the queue experienced divided by the link bandwidth C at the bottleneck. Assuming all streams are synchronized, there are:

dq(t)=max([N*cwnd(t-RTT(t))-RTTmin*C]/C,0)

wherein, N is the number of flows in the network, and N × cwnd (t-RTT (t)) is the total window size of all flows at the time of t-RTT (t). As can be seen from the formula, there is a delay of one RTT between the queuing delay dq (t) observed by the transmitting end and the window. Assuming that all streams observe equal current and target rates at the current time t, the queuing delay dq (t) > 0. The simultaneous window adjustment formula (1) has

Solved to obtain

After time t, the window will increase, so cwnd (t) is a minimum value, denoted cwndmin. Due to the queuing delay lags cwnd by one RTT. Therefore, after one RTT, the sending end observes that the queuing delay reaches a minimum value point, which is recorded as dqmin. It is composed ofThe expression is as follows:

for Copa, the window modulation amplitude λ ═ V × δ, noteIf S is the number of cwndminThe partial derivatives with respect to λ are:

therefore, in Copa, it is known that the minimum point of the window during descent is inversely proportional to V, and cwnd is larger as V is largerminThe smaller the value, dqminThe closer to 0 will be. But when cwndminIs less thanThe link cannot be filled. Causing link utilization to drop, thereby affecting throughput. And the lower V, cwndminThe larger the value, and dqminThe further away from point 0 will be. When V equals default value 1, there are:

wherein N × cwndminGreater than RTTmin C, so the observed queuing delay after one RTT is

Further analysis gave dqminAnd round-trip link propagation delay RTTmin, the link bandwidth C at the bottleneck is in a monotonically decreasing relationship, and the link bandwidth C has a monotonically increasing relationship with the number N of streams in the network, because;

simulation experiment based on NS3 network simulation platform shows dqminThe relationship and analysis between the round-trip link transmission delay RTTmin, the link bandwidth C at the bottleneck and the number of streams N in the network are consistent.

The dumbbell topology adopted in the simulation experiment is shown in fig. 2, wherein nodes S1 and S2 are transmitting ends, a node B is a switch, a node R is a receiving end, the bandwidth and delay of each link are the same, the round-trip link propagation delay is RTTbase which is twice the link propagation delay between the transmitting node and the receiving node, the links B-R are bottleneck links, and the link bandwidth is the bottleneck bandwidth and is marked as C.

FIG. 3 shows that the queue minimum value point dqminThe simulation environment adopts the topology shown in fig. 2 as the variation trend of the round trip link propagation delay RTTbase. At each simulation, the round-trip link propagation delay RTTbase was varied while keeping the bandwidth of each link (100mbps) and the number of streams in the network constant, where the number of streams in the network is equal to 10, evenly distributed over the two transmitting nodes, starting from 0 seconds for 10 seconds. At each simulation, the minimum value dq of the queuing delay in each queue oscillation period is countedminThe variation with RTTbase was observed. Simulation results show that: dqminAnd RTTbase, consistent with previous analysis, have a monotonically decreasing relationship.

FIG. 4 shows that the queue minimum value point dqminThe simulation environment adopts the topology shown in fig. 2 according to the variation trend of the bottleneck bandwidth C. At each simulation, the bandwidth of each link was changed while keeping the round-trip link propagation delay RTTbase (20ms) and the number of streams in the network unchanged. The number of flows in the network is equal to 10, evenly distributed over the two sending nodes, starting from 0 seconds for 10 seconds. Counting the minimum value dq of the queuing delay in each queue oscillation period in each simulationminObserve it with CA change in (c). Simulation results show that: dqminAnd the bottleneck bandwidth C, consistent with previous analysis.

FIG. 5 shows that the queue minimum value point dqminWith the trend of the number of flows N in the network, the simulation environment adopts the topology shown in fig. 2. At each simulation, the number of flows in the network was changed while keeping the bandwidth (100mbps) and the round-trip link propagation delay RTTbase (20ms) of each link unchanged. The N streams in the network are equally distributed over the two sending nodes, starting from 0 seconds for 10 seconds. Counting the minimum value dq of queuing delay in each queue oscillation period in each simulationminThe change with N was observed. Simulation results show that: dqminAnd N have a monotonically increasing relationship, consistent with previous analyses.

According to theoretical analysis and simulation results, when RTTmin is small, C is small or N is large, the minimum value dq of queuing delayminIt will not be able to approach point 0 so that the estimated value of the round trip link propagation delay RTTmin is greater than the true round trip link propagation delay. When the larger the RTTmin is, the smaller the queuing delay dq estimated by using the difference value between the RTTstand and the RTTmin is, the larger the target rate calculated by the ratio value of δ and dq is correspondingly, which causes the sending end to more aggressively increase the congestion window to approach the target rate, thereby further increasing the queue at the bottleneck. Furthermore, when the RTTmin measured by different flows is different, the flow with larger RTTmin value will increase the window more aggressively, thereby affecting fairness.

The relationship between the average round trip delay and RTTmin was further analyzed based on the NS3 simulation platform. Fig. 6 is a graph of RTTmin measured per flow versus time using Copa. The simulation environment adopts the topology shown in fig. 2, the bandwidth of each link is 100mbps, the round-trip link propagation delay RTTbase is 20ms, the number of streams in the network is 50, and the streams are evenly distributed on two transmitting ends. Each stream was started from 0 seconds for a total run of 40 s. Simulation results show that the RTTmin observed by each flow is equal to RTTbase within 0-10 seconds from the beginning. After 10s, RTTmin obtained by re-estimation of each stream is higher than RTTbase.

In the simulation environment described in fig. 6, with Copa, the variation with time of the average instantaneous round trip delay (averagedelay) of all streams per 500ms is shown in fig. 12. The experimental results show that: after 10s, since the re-measured RTTmin per stream is higher than RTTbase, each stream grows the window more aggressively, resulting in a corresponding increase in average delay.

In addition, based on the NS3 simulation platform, the throughput situation of each flow when the estimated RTTmin of different flows is different is further analyzed. FIG. 7 is a graph comparing RTTmin measured for 10 new streams started at 3s and 90 old streams started at 0s, using Copa. The simulation scenario employs the topology shown in fig. 2, where each link has a bandwidth of 100mbps and a round-trip link propagation delay of 20 ms. At 0s 90 streams are started and at 3s 10 new streams are started, running for 10s in total. The simulation results show that the RTTmin measured for the new stream started at 3s is higher than the RTTmin measured for the old stream started at 0 s.

Fig. 8 is a graph of throughput rate over time for 10 new flows started at 3s and 90 old flows started at 0s with Copa, where the throughput rate is the total ACK arrival rate for all flows within 500 ms. The simulation environment is identical to fig. 7. Simulation results show that the minimum value dq of the queuing delay is within the period of 0-3 sminWithout approaching point 0, the newly arrived stream would measure a higher RTTmin at 3s, making the new stream more aggressively increasing the window. Thus, it is observed in fig. 9 that the new flow gets more throughput than the old flow.

In general, although Copa wishes to allow each stream to measure an accurate RTTmin by the periodic oscillatory behavior of the queue. However, based on the above analysis, the minimum value of the periodic oscillation of the queue is related to the network environment. Therefore, for the window adjusting mechanism of Copa, in a network environment where the flow number is large, the link propagation delay or the bandwidth at the bottleneck is small, the minimum value of the queuing delay in each oscillation period cannot be guaranteed to be close to 0 point, thereby affecting the measurement of RTTmin.

Disclosure of Invention

The invention aims to solve the problems that: the problem that the minimum value point in the oscillation period of the queuing delay can not be close to the 0 point under the condition that the propagation delay of a round-trip link is small, the bottleneck bandwidth is small or the number of streams in the network is large. In order to solve the above problems, the present invention provides an Adaptive-Copa congestion control method based on delay. From the previous analysis, the minimum point of the window is inversely proportional to the window modulation amplitude λ. The minimum value of the queuing delay is smaller when λ is larger. The minimum value of the queuing delay within the queue oscillation period can be made close to 0 point by changing the amplitude of the tuning window. Based on the thought, the Adaptive congestion control method Adaptive-Copa based on the delay modifies the window adjusting amplitude in each RTT into V theta delta, wherein V is adjusted according to the change behavior of the window, and theta is adjusted according to whether the minimum value point of the queuing delay approaches to the point 0 or not.

In order to achieve the technical purpose, the technical scheme of the invention is that,

a self-adapting congestion control method based on delay dynamically changes the coefficient of adjusting the congestion window in the congestion control process according to whether the queuing delay reaches 0 point in the period of queuing delay jitter, comprising the following steps:

step one, when a sending end receives an ACK packet, a congestion window cwnd is adjusted through the following formula:

wherein cwnd' is a new congestion window calculated according to the current congestion window cwnd, δ is a preset and unchangeable parameter, V and θ are dynamically changing parameters, CR is the current rate, and TR is the target rate;

step two, when the sending end receives an ACK packet, the parameter V is dynamically adjusted according to the change condition of the congestion window cwnd: increasing V when the window is continuously enlarged or reduced, otherwise setting V to be 1;

step three, when the sending end receives an ACK packet, dynamically adjusting a parameter theta according to whether the queuing delay dq reaches a point 0 in each oscillation period, reducing the theta when the queuing delay dq reaches the point 0, and otherwise, increasing the theta; wherein the oscillation period is obtained by: if the current queuing delay is larger than the historical queuing delay, recording the changing direction of the queuing delay as increasing, otherwise, recording the changing direction of the queuing delay as decreasing; when the queuing delay changes from increasing to decreasing or from decreasing to increasing, the queuing delay is considered to change direction once to turn, and the time of each turn of the queuing delay occurring twice is taken as an oscillation period.

In the method, in the first step, CR and TR are calculated by the following formulas:

CR=cwnd/RTTstand

TR=δ/dq

wherein, the queuing delay dq is RTTstand-RTTmin, and the round trip delay RTTstand is the minimum round trip delay value measured in the last 0.5srtt, where srtt is the default exponential weighted smoothing value of the round trip delay in TCP, and RTTmin is the minimum round trip delay value measured in the last 10 seconds.

The method, the second step comprises the following steps:

step A1, when the sending end receives an ACK packet, the sending time of the ACK packet is subtracted from the receiving time of the ACK packet to obtain the instant round trip delay RTT. And the sending end records the size of the congestion window at one RTT moment before the current moment as a history window. If the congestion window at the current moment is larger than the historical window, the sending end records the window adjusting direction as positive, otherwise, records the window adjusting direction as negative.

Step A2, judging whether the window adjusting directions within the last three continuous RTTs are consistent, if so, doubling V; if the window adjustment directions within the last three consecutive RTTs are not consistent, V is reset to 1.

In the third step, if dq is found to be 0 in the current period, it is considered that dq has reached the point 0, and at this time, the current θ value is recorded as θemptyThen recording the end time of the current period as TemptyFinally, theta is adjusted to be beta theta, wherein beta is a coefficient smaller than 1 and larger than 0, and if dq is not found to be 0 in the current period, distance T is adjusted according to the current time TemptyIncreases θ as a function of the length of time of, the formula:

wherein w is a parameter with a default value of 0.1, and t is the current moment.

The method has the technical effect that the amplitude of the tuning window is dynamically changed according to the condition that whether the queuing delay reaches the point 0 or not in the process of periodical jitter of the queuing delay. The minimum value of the queuing delay in the oscillation period of the queuing delay can be close to 0 point, so that the round-trip link propagation delay is accurately measured, and meanwhile, the window modulation amplitude is reduced after the minimum value can be close to 0 point, and the loss of throughput caused by overlarge window modulation amplitude is avoided. Simulation experiment results show that the invention can control the buffer queue of the bottleneck link to periodically clear, so that each flow can measure the accurate round-trip link propagation delay. Compared with the Copa algorithm, the method has the advantages of lower delay and better fairness.

Drawings

Fig. 1 is a general block diagram of a delay-based adaptive congestion control method.

Fig. 2 is a schematic diagram of a dumbbell topology.

Fig. 3 is a diagram of queue minimum point versus round-trip link propagation delay.

Fig. 4 is a diagram of queue minimum points as a function of bottleneck link bandwidth.

Fig. 5 is a graph of queue minimum points as a function of the number of flows present in the network.

Fig. 6 is a graph of RTTmin per flow versus time for a situation where the number of flows is 50, the link bandwidth is 100mbps, and the round-trip link propagation delay is 20ms, for the case where Copa is used.

Fig. 7 is a comparison graph of RTTmin measured by 10 new streams started at 3s and 90 old streams started at 0s under the environment of link bandwidth of 100mbps and round-trip link propagation delay of 20ms in the case of Copa.

Fig. 8 is a comparison of throughput measured by 10 new flows started at 3s and 90 old flows started at 0s in an environment with a link bandwidth of 100mbps and a round-trip link propagation delay of 20ms, when Copa is used.

FIG. 9 is a diagram illustrating detection of a queue oscillation period.

Fig. 10 is a graph of the adjustment algorithm for θ.

Fig. 11 is a graph of RTTmin per flow versus time for the case of Adaptive-copa, at 50 flows, 100mbps link bandwidth, and 20ms round-trip link propagation delay.

FIG. 12 is a graph comparing the average delay of Adaptive-Copa and Copa with time under the environment of 50 flows, 100mbps link bandwidth and 20ms round-trip link propagation delay.

FIG. 13 is a graph of RTTmin measured by each flow as it changes over time when a new flow arrives, using Adaptive-Copa.

Fig. 14 is a graph showing the change of the throughput rate of each flow with time when a new flow arrives, in the case of using Adaptive-Copa.

Detailed Description

The following detailed description of embodiments of the invention is provided in conjunction with the appended drawings:

fig. 1 is a general frame diagram of an Adaptive-Copa control method based on delay, which first calculates a current rate according to a ratio of a window to a round-trip delay, then calculates a target rate according to a preset parameter δ and a ratio of queuing delays, and finally determines whether a network is congested by comparing the current rate with the target rate. And after the network congestion is judged, adjusting the congestion window according to V theta delta. The operation steps are as follows:

step one, when a sending end receives an ACK packet, a congestion window cwnd is adjusted through the following formula:

wherein cwnd' is a new congestion window calculated according to the current congestion window cwnd, δ is a preset and unchangeable parameter, V and θ are dynamically changing parameters, CR is the current rate, and TR is the target rate;

step two, when the sending end receives an ACK packet, the parameter V is dynamically adjusted according to the change condition of the congestion window cwnd: increasing V when the window is continuously enlarged or reduced, otherwise setting V to be 1;

step three: and when the sending end receives the ACK packet, dynamically adjusting the parameter theta according to whether the queuing delay dq is close to 0 or not in the oscillation period of the historical queuing delay. The method of measuring the oscillation period of the queuing delay dq is as follows: when the current queuing delay is larger than the historical queuing delay, the change direction of the queuing delay is recorded as increasing, and if not, the change direction of the queuing delay is recorded as decreasing. When the queuing delay changes from increasing to decreasing or from decreasing to increasing, it is considered that one turn of the queuing delay change direction occurs. The time for each two-turn occurrence of a queuing delay variation is defined as one cycle.

In step one, CR and TR are calculated by the following formulas:

CR=cwnd/RTTstand

TR=δ/dq

wherein, the queuing delay dq is RTTstand-RTTmin, and the round trip delay RTTstand is the minimum round trip delay value measured in the last 0.5srtt, where srtt is the default exponential weighted smoothing value of the round trip delay in TCP, and RTTmin is the minimum round trip delay value measured in the last 10 seconds.

The second step comprises the following steps:

step A1, when the sending end receives an ACK packet, the sending time of the ACK packet is subtracted from the receiving time of the ACK packet to obtain the instant round trip delay RTT. And the sending end records the size of the congestion window at one RTT moment before the current moment as a history window. If the congestion window at the current moment is larger than the historical window, the sending end records the window adjusting direction as positive, otherwise, records the window adjusting direction as negative.

Step A2, judging whether the window adjusting directions within the last three continuous RTTs are consistent, if so, doubling V; if the window adjustment directions within the last three consecutive RTTs are not consistent, V is reset to 1.

In step three, dynamically adjusting thetaThe method comprises the following steps: if dq is found to be 0 in the current period, the dq is considered to be close to the 0 point once. At this time, the current value of theta is recorded as thetaemptyThen recording the end time T of the current periodemptyFinally, θ is adjusted to β θ, where β is a coefficient less than 1 and greater than 0. If dq is not found to be 0 in the current period, the distance T is obtained according to the current time TemptyIs increased by θ, which is expressed as:

w is a parameter with a default value of 0.1, and t is the current moment.

Where theta is adjusted based on whether the queuing delay in the current cycle is close to the point 0. In order to determine whether the queue has undergone an oscillation cycle, Adaptive-Copa is the invention that needs to track the changing behavior of the queuing delay. If the current queuing delay is larger than the historical queuing delay, the change direction of the queuing delay is positive; if the current queuing delay is greater than the historical queuing delay, the direction of change in the queuing delay is negative. When the direction of the change of the queuing delay changes from positive to negative (or from negative to positive), it is considered that one turn of the queuing delay direction occurs. Detection of the queue oscillation period as shown in fig. 9, each time the queuing delay is detected for two turns, meaning the end of one period, the minimum value of the queuing delay occurs at the turn where the queuing delay changes from decreasing to increasing. And when the end of one period is detected, judging whether the queuing delay in the current period is close to 0 or not, namely whether the minimum value point is equal to 0 or not. If the queuing delay is close to 0, theta is reduced, and the problem that the amplitude of the window is too large and the throughput is lost is avoided. When the queuing delay has not approached point 0, then θ is increased. In order to be able to quickly increase theta to a suitable value. And recording the current theta value every time the queue minimum value is detected to be close to 0 point, and taking the current theta value as a target of the next theta increase. Theta adjustment algorithm As shown in FIG. 10, at TemptyTime of day, current cycle and observed that the queuing delay was equal to 0. Record theta as thetaemptyAnd reducing theta to beta theta, where beta is smallWhen the value is 1 and more than 0, the setting is not changed after the setting is finished, different values can be preset under different network environments, and 0.75 is a recommended value because the simulation experiment shows that the network environment has good performance under different network environments. In the periodic oscillation process of the queue, if the queuing delay is not found to be equal to 0, the distance T is determined according to the current time TemptyIs increased by θ, which is expressed as:

where w is a preset parameter, default is 0.1, where K isBecause of the characteristics of the cubic function, theta will approach the target theta quickly at the beginningemptyWhen the time t is close to K, theta will change slowly to stay at the target value theta for a longer timeemptyNearby. When theta is larger than thetaemptyThen, if the queuing delay is still not equal to 0 in each period, the detection stage is entered, the increasing speed of theta is continuously accelerated to detect a new theta which can make the queuing delay equal to 0empty. Simulation results based on the NS3 show that each flow can always keep estimating to an accurate round-trip link propagation delay by using the Adaptive-Copa method.

FIG. 11 shows that the RTTmin observed for each stream varies with time using the Adaptive-Copa approach. The simulation environment adopts the topology shown in fig. 2, the bandwidth of each link is 100mbps, the round-trip link propagation delay RTTbase is 20ms, the number of streams in the network is 50, and the streams are evenly distributed on two transmitting terminals. Each stream was started from 0 seconds for a total run of 40 s.

Although the simulation scenario is consistent with fig. 6, the experimental result shows that the minimum value of the queuing delay is close to 0 point due to Adaptive-Copa adjusting θ. Thus after 10s, the re-measured RTTmin is close to RTTbase.

FIG. 12 shows the average delay versus time for Adaptive-Copa and Copa. The simulation environment adopts the topology shown in fig. 2, the bandwidth of each link is 100mbps, the round-trip link propagation delay RTTbase is 20ms, the number of streams in the network is 50, and the streams are evenly distributed on two transmitting terminals. Each stream was started from 0 seconds for a total run of 40 s. Simulation results show that each stream can always measure accurate RTTmin due to the action of a regulating mechanism of theta, namely after the RTTmin is re-measured, the RTTmin is close to RTTbase due to the measurement of Adaptive-Copa, and therefore lower average delay is maintained compared with Copa.

FIG. 13 shows the observed RTTmin per flow as a function of time when a new flow arrives, using the Adaptive-Copa algorithm. The simulation environment employs the topology shown in fig. 2. The bandwidth of each link is 100mbps, and the round-trip link propagation delay RTTbase is 20 ms. A total of 100 streams were run, with 90 streams (evenly distributed on each transmit side) starting at 0s and another 10 streams (evenly distributed on each transmit side) starting at 3 s.

Although this simulation scenario is consistent with fig. 7, simulation results show that in Adaptive-Copa, a 3 s-started new stream and a 0 s-started old stream obtain the same RTTmin estimate and approach the round-trip link propagation delay RTTbase.

Fig. 14 shows the change of the throughput rate of each flow with time when a new flow arrives, in the case of using the Adaptive-Copa algorithm. The simulation environment employs the topology shown in fig. 2. The bandwidth of each link is 100mbps, and the round-trip link propagation delay RTTbase is 20 ms. A total of 100 streams were run, with 90 streams (evenly distributed on each transmit side) starting at 0s and another 10 streams (evenly distributed on each transmit side) starting at 3 s.

Although the simulation scenario is consistent with fig. 8, the simulation result shows that after Adaptive-Copa is adopted, the new flow started in 3s and the old flow started in 0s obtain similar throughput.

In general, delay-based congestion control protocols require that an accurate RTTmin be measured in order for their algorithms to function properly. The adaptive congestion control method based on delay adds a mechanism for changing the window adjusting amplitude according to whether the queuing delay is close to 0 point or not on the basis of Copa. Compared with the existing congestion control protocol based on delay, the method can adaptively enable each flow to observe accurate round-trip chain propagation delay.

18页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:带宽分配方法、装置、设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!