image

and hence is stable. Note that the fact that PM>0 implies that T(jω¯¯)<1image, where ω¯¯image is the frequency at which arg(T(jω¯¯))=πimage, that is, the gain margin is also positive.

From Equation 67 it follows that

arg(T(jωc))=ωcT++tan1ωcK+tan1ωc2N/C(T+)2+tan1ωc1/T+ (73)

image (73)

Since

ωc=0.1min{2N(T+)2C,1T+}

image

it follows that

ωcT+=0.1min{2NT+C,1}

image

so that ωcT0.1image radians. Equation 69 also implies that

ωc2N/C(T+)20.1andωc1/T+0.1sothat

image

tan1ωc2N/C(T+)20.1andtan1ωc1/T+0.1.Lastly,because

image

tan1ωcKπ2,itfollowsthat

image

arg(T(jωc))0.1+π2+0.1+0.1=1.87radiansor107°,

image

which implies that the PM72°image. This proves equation 72 and consequently the stability result.

The following example from Holot et al. [6] shows how equations 68 and 69 can be used to obtain appropriate RED parameters:

Consider the case: C=3750 packets/sec, N=60image and T+=0.246secimage. From equation 69, it follows that

ωc=0.1min(0.5259,4.0541)=0.053radians/sec

image

Choosing K=0.005, it follows from equation 68 that Lred1.86(10)4image. Choosing maxp=0.1 and because Lred=maxp/(maxthminth)image, it follows that maxthminth540image packets. The other RED parameters are calculated as δ=1C=2.66(10)4image, which yields α=1.33(10)6image.

Figure 3.9A shows the case when the RED parameters are set without taking equation 68 into account, and we can observe the large buffer oscillations that result. When the parameters are set as per equation 68, then they result in a smoother buffer variation as shown in Figure 3.9B. Note the large amount of time that it takes for the queue to settle down in Figure 3.9B, which is a consequence of the small value of ωcimage that was used to get a good phase margin.

image
Figure 3.9 Variation of the queue size under Random Early Detection (RED).

As the link capacity C or the round trip latency increases or the number N of connections decreases, the RED parameters Lred and K have to be changed to maintain the inequality (equation 68). We can do the following:

• Adapt Lred: This can be done by changing the value of the marking probability maxp while keeping the queue thresholds the same. Note that reducing maxp has the effect of reducing the number of dropped or marked packets when the average queue size is between the threshold values. This causes the queue size to increase beyond maxth, thus leading to increased packet drops because of buffer overflow. On the other hand, increasing maxp has the effect of increasing the number of RED drops and thus decreasing throughput. By using equation 68 as a guide, it is possible to adapt Lred more intelligently as a function of changing parameters. An alternative technique for adapting RED was given by Feng et al. [14], in which they used the behavior of the average queue size to adapt maxp. Thus, if the queue size spent most of its time near maxth, then maxp was increased, and if it spent most of its time at minth or under, maxp was reduced.

• Adapt K: From equation 64, K can be reduced by decreasing the averaging constant wq. However, note that decreasing wq causes the smoothing function to become less responsive to queue length fluctuations, which again leads to poorer regulation of the queue size.

From equation 69, as the round trip latency increases, ωcimage decreases, which increases the time required for the queue to settle down. We can compensate by increasing the constant from 0.1, but the earlier analysis showed that this has the effect of decreasing the PM and thus increasing the queue oscillations.

3.4.1.2 Proportional Controllers

As shown in Figure 3.10, the RED controller from Figure 3.8 reduces to a proportional controller if K is chosen to be very large, which also corresponds to removing the low-pass filter entirely. This implies that the feedback from the bottleneck node is simply a scaled version of the (slightly delayed) queue length delta rather than the average queue length.

image
Figure 3.10 The proportional controller.

If we denote the proportionality factor by KP, then from equation 65, it follows that the transfer function is given by

TP(s)=Utcp(s)Uqueue(s)VP(s)esT0=KP(CT0)3(2N)2esT0(s2N/CT20+1)(s1/T0+1) (74)

image (74)

and in the frequency domain

TP(jω)=TP(jω)ejarg(TP(jω))

image

We now carry out a stability analysis for this system using the same procedure that was used for the RED controller. Hence, we will choose a critical frequency ωcimage such that with the appropriate choice of the controller parameters |Tp(ωc)|1image, and then show that the PM at ω=ωcimage is positive, which is sufficient to prove stability.

If we choose ωcimage as the geometric mean of the roots pTCP=2NCT20image and pqueue=1T0image so that

ωc=2NCT30 (75)

image (75)

then under the condition

KP=(ωc2N/CT20)2+1(ωc1/T0)2+1(CT0)3(2N)2 (76)

image (76)

it follows from equation 74 that |Tp(ωc)|=1image. Note that this choice of Kp precisely cancels out the high loop gain caused by TCP’s window dynamics. Also note that

arg(TP(jωc))=ωcT0+tan1ωc2N/C(T0)2+tan1ωc1/T0 (77)

image (77)

Because ωcimage is the geometric mean of pTCP and pqueue, it can be readily seen that

tan1ωc2N/C(T0)2+tan1ωc1/T0=π2. (78)

image (78)

Recall from equation 56 that W0=T0CNimage. It is plausible that W0>2, from which it follows that

ωcT0=2NCT0<1 (79)

image (79)

From equations 77 to 79, it follows that arg(TP(jωc))<1+π2image radians=147°; hence, the Phase Margin is given by PM=180° –147°=33°, which proves stability of the proportional controller.

The cancellation of the loop gain using the Proportional controller constant Kp (using equation 76) is cleaner than the cancellation using Lred or K in RED controllers because the latter can lead to large queue length variations as we saw in the previous section. Recently proposed protocols such as DCTCP (see Chapter 7) use a proportional controller. However, a proportional controller by itself does not work well in certain situations; in particular, just like the RED controller, it may lead to a steady-state error between the steady state output and the reference value. In the next section, we discuss the PI controller, which corrects for this problem.

Figure 3.11 compares the performance of the RED and proportional controllers, and we can see that the latter has much faster response time and also lower queue size fluctuations in equilibrium.

image
Figure 3.11 Comparison of the Random Early Detection (RED) and proportional controllers.

3.4.1.3 Proportional-Integral (PI) Controllers

Integral controllers have the property that the steady-state buffer occupancy error is zero. It is possible to design an integral controller for AQM that can clamp the queue size to some reference value regardless of the load value. The simplest of such integral controllers is the PI controller, which is given by the transfer function (Figure 3.12):

VPI(s)=KPI(sz+1)s (80)

image (80)
image
Figure 3.12 Block diagram of the proportional-integral (PI) controller.

The transfer function for the system with the PI controller is given by

TPI(s)=Utcp(s)Uqueue(s)VPI(s)esT0=KPI(CT0)3(2N)2(sz+1)esT0s(s2N/CT20+1)(s1/T0+1) (81)

image (81)

and in the frequency domain

TPI(jω)=TPI(jω)ejarg(TPI(jω))

image

The following choice of parameters guarantees stability of the PI controlled system:

Choose the zero z of the PI controller as

z=ptcp=2NCT20 (82)

image (82)

and choose the critical frequency ωcimage as

ωc=βT0 (83)

image (83)

where βimage is chosen to set the PM in a later step. If KPI is chosen as

KPI=ωc(ωcT0)2+1(CT0)3(2N)2 (84)

image (84)

so that it cancels out the high loop gain caused by TCP’s window dynamics, then it follows that |TPI(jωc)|=1image, and hence to show stability, it is sufficient to show that arg(TPI(jωc))<πimage radians. Note that

arg(TPI(jωc))=π2+ωcT0+tan1ωcT0=π2+β+tan1β (85)

image (85)

If βimage is chosen to be in the range 0<β<0.85image, then from equation 85, it follows that arg(TPI(jωc))<πimage radians. For example, if β=0.5image, then the PM is given by PM=30°.

Figure 3.13A [7] shows the result of a simulation with a bottleneck queue size of 800 packets, in which the reference b0 of the PI controller was set to 200 packets and the traffic consisted of a mixture of http and ftp flows. It clearly shows the faster response time PI compared with the RED controller as well as the regulation of the buffer occupancy to the target size of 200 packets. Figure 3.13B shows the case when the number of flows has been increased to the point that the system is close to its capacity. Neither RED nor the proportional controllers are able to stabilize the queue because high packet drop rates have pushed the operating point beyond the size of the queue. The PI controller continues to exhibit acceptable performance, although its response time is a little slower.

image
Figure 3.13 Comparison of the proportional-integral (PI) and Random Early Detection (RED) controllers.

The transfer function of the PI controller is described in the s domain in equation 80. For a digital implementation, this description needs to be converted into a z-transform. Using a standard bilinear transform and with the choice of a sampling frequency fs that has to be 10 to 20 times the loop bandwidth, equation 80 can be transformed to the following

VPI(z)=azcz1 (86)

image (86)

The input into the controller is bδ=bb0image, and the output is Pδimage. Assuming P0=0, it follows from (86) that

P(z)bδ(z)=azcz1=acz11z1 (87)

image (87)

This equation can be converted into a difference equation, so that at time t=kS, where S=1/fs

P(kS)=abδ(kS)cbδ((k1)S)+P((k1)S) (88)

image (88)

This equation can also be written as

P(kS)=(ac)bδ(kS)+c(bδ(kS)bδ((k1)S)+P((k1)S) (89)

image (89)

Hence, when the system converges (i.e., P(kS) becomes approximately equals to P((k−1)S)) both bδ(kS)=b(kS)b0(kS)image and bδ(kS)bδ((k1)S)=b(kS)b((k1)S)image go to zero, which implies that the queue length has converged to the reference value b0, and the derivative of the queue length has converged to zero. By equation 55, a zero derivative implies that that input rate of the flows to the bottleneck node exactly matches the link capacity so that there is no up or down fluctuation in the queue level.

The idea of providing difference+derivative AQM feedback has proven to be very influential and constitutes part of the standard toolkit for congestion control designers today. Recently designed algorithms such the IEEE Quantum Congestion Notification (QCN) protocol (see Chapter 8) and XCP/RCP (see Chapter 5), use this idea to stabilize their system.

Despite its superior stability properties, the implementation of PI controllers in TCP/IP networks faces the hurdle that the TCP packet header allows for only 1 bit of congestion feedback. The more recently designed IEEE QCN protocol has implemented a PI controller using 6 bits of congestion feedback in the packet header [15] and is described in Chapter 8.

3.5 The Averaging Principle (AP)

The discussion in Section 3.4 showed that to improve stability for the congestion control algorithm, the network needs to provide information about both the deviation from a target buffer occupancy and the derivative of the deviation. This puts the burden of additional complexity on the network nodes. In practice, this is more difficult to implement than when compared with adding additional functionality to the end systems instead. In this section, we will describe an ingenious way the source algorithm can be modified without touching the nodes, which has the same effect as using a PI-type AQM controller. This is done by applying the so-called Averaging Principle (AP) to the source congestion control rules [16].

The AP is illustrated in Figure 3.14. It shows a congestion control algorithm, in which the rate reacts to two factors:

1. Periodically once every τimage seconds, the source changes the transmit rate RC, either up or down, based on the feedback it is getting from the network.

2. At the midpoint between two network-induced rate changes, the source changes its rate according to the following rule: Let RT be the value of the rate before the last feedback-induced change. Then τ/2image time units after every feedback induced change, the AP controller performs an “averaging change” when the rate RC is changed as follows:

RCRC+RT2

image
image
Figure 3.14 Averaging principle–based rate control.

It can be shown that there exists an AQM controller of the type that was derived in Section 3.4, given by (see Figure 3.15)

P(k)=0.5Kbδ(k)+0.25K(bδ(k)bδ(k1))+P(k1) (90)

image (90)

such that the AP controller is exactly equivalent to this controller.

image
Figure 3.15 Equivalent Active Queue Management (AQM) control scheme to the averaging principle.

To prove this, consider the following two controllers shown in Figures 3.16 and 3.17. Both controllers map a sequence of sampled queue error samples bδ(n)image to an input signal P(n) that drives the congestion control rate determination function. Controller 1 is an AP controller, and the upper branch of controller 2 is the AQM controller from Figure 3.17. In the following, we will show that P(n)=U(n) and that the lower branch of controller 2 can be ignored, so that P(n)U1(n)image.

image
Figure 3.16 Controller 1.
image
Figure 3.17 Controller 2.

The following equations describe the input-out relations for the two controllers.

Controller 1 (AP controller):

P1(n)=P2(n1)+Kbδ(n) (91)

image (91)

P2(n)=P1(n)+P2(n1)2 (92)

image (92)

P(n)={P1(n)P2(n)ififnSt<nS+S2nS+S2t<nS+S (93)

image (93)

Controller 2 (approximate PD controller):

U1(n)=U1(n1)+KQ(n) (94)

image (94)

Q(n)=0.5bδ(n)+0.25(bδ(n)bδ(n1)) (95)

image (95)

U2(n)={K4bδ(n)K4bδ(n)nSt<nS+S2nS+S2t<nS+S (96)

image (96)

U(n)=U1(n)+U2(n) (97)

image (97)

Define

Pm(n)=P1(n)+P2(n)2 (98)

image (98)

From equations 91 and 92, it follows that

Pm(n)=P2(n1)+Kbδ(n)2+P1(n)+P2(n1)4=P2(n1)2+Kbδ(n)2+P2(n1)4+Kbδ(n)4+P2(n1)4=P2(n1)+3K4bδ(n) (99)

image (99)

We now show that

P1(n)=Pm(n)+K4bδ(n),and (100)

image (100)

P2(n)=Pm(n)K4bδ(n) (101)

image (101)

To prove equation 100, note that from equations 99 and 91, it follows that

Pm(n)=P1(n)Kbδ(n)+3K4bδ(n)=P1(n)Kbδ(n)4.

image

To prove equation 101, first note from equations 99 and 92 that

Pm(n)=2P2(n)P1(n)+3K4bδ(n)=2P2(n)(2Pm(n)P2(n))+3K4bδ(n)=3P2(n)2Pm(n)+3K4bδ(n)

image

Comparing equations 100 and 101 with equations 96 and 97, it follows that if we can show U1(n)=Pm(n), then it follows that U(n)=P(n), and the two controllers will be equivalent. This can be done by showing that U1(n) and Pm(n) satisfy the same recursions.

From equations 99, 101, and 95, it follows that

Pm(n)=Pm(n1)Kbδ(n1)4+3K4bδ(n)=Pm(n1)+KQ(n) (102)

image (102)

Comparing equations 102 and 94, it follows that Pm(n)=U1(n) for all n, and as a consequence we get P(n)=U(n) (i.e., the two controllers are equivalent). Because the contribution of U2(n) can be ignored [16], it follows that P(n)U1(n)image, and the AQM and AP controllers are almost identical.

We will encounter congestion control protocols such a TCP BIC later in the book (see Chapter 5) that are able to operate in a stable manner in very high-speed networks even with traditional AQM schemes. These protocols may owe their stability to the fact that their rate control rules incorporate averaging of the type discussed here.

3.6 Implications for Congestion Control Algorithms

From the analysis in the previous few sections, a few broad themes emerge that have influenced the design of congestion control algorithms in recent years:

• AQM schemes that incorporate the first or higher derivatives of the buffer occupancy process lead to more stable and responsive systems. This was shown to be the case in the analysis of the PI controller. Also, because the first derivative of the buffer occupancy process can be written as

db(t)dt=CiRi

image

it also follows that knowing the derivative is equivalent to knowing how close the queue is to its saturation point C. Some protocols such as QCN (see Chapter 8) feed back the value of db/dt directly, and others such as XCP and RCP (see Chapter 5) feed back the rate difference in the RHS of the equation.

• If the network cannot accommodate sophisticated AQM algorithms (which is the case for TCP/IP networks), then an AP-based algorithm can have an equivalent effect on system stability and performance as the derivative-based feedback. Examples of algorithms that have taken this route include the BIC and CUBIC algorithms (see Chapter 5) and QCN (see Chapter 8).

3.7 Further Reading

Instead of taking the dual approach to solving equations 7 and 8 it is possible to solve the primal problem directly by eliminating the rate constraint condition (equation 8) and modifying the objective function as follows [9]:

U(r1,,rN)=Ni=1Ui(ri)Ll=10Yl(t)fl(y)dy (103)

image (103)

where Ui(ri) are strictly concave functions and the increasing, continuous function fl is interpreted as a congestion price function at link l and the convex function Yl(t)0fl(y)dyimage is known as the barrier function. To impose the constraint that the sum of the data rates at a link should be less than the link capacity, the barrier function can be chosen in a way such that it increases to infinity when the arrival rate approaches the link capacity.

It follows that U(r1,…,rN) is a strictly concave function and it can be shown that the problem

maxri0U(r1,...,rN) (104)

image (104)

decomposes into N separate optimization subproblems that can be solved independently at each of the sources. The solution to the optimization problem at each source node is given by

U'i(ri)=l:lAifl(s:sBlrs) (105)

image (105)

where Ai is the set of nodes that connection i passes through and Bl is the set of connections that pass through node l. This can be interpreted as a congestion feedback of fl(srs)image back to the source from each of the nodes that the connection passes through, and is the equivalent of equation 11 for the dual problem.

Just as we used the gradient projection method to obtain an iterative solution to the dual problem (equation 13), we can also apply this technique to iteratively solve the primal problem, leading to the following expression for the optimal rates:

dridt=ki(ri)(U'i(ri)l:lAlfl(s:sBlrs)) (106)

image (106)

where kr is any nondecreasing continuous function such that kr(x)>0 for x>0. If kr>0, then in equilibrium setting, dri/dt=0 leads back to equation 105. Equation 106 is known as the primal algorithm for the congestion control problem. For example, equation 33 for TCP Reno for small values of Qi can be put in the form

dRi(t)dt=2R2i(t)3(32T2iR2i(t)Qi)

image

which is in the form (106) with

ki(ri)=2r2i(t)3andU'i(ri)=32T2ir2i(t) (107)

image (107)

Equation 38 for the utility function can then be obtained using equation 107.

A very good description of the field of optimization and control theory applied to congestion control is given in Srikant’s book [9]. It has a detailed discussion of the barrier function approach to system optimization, as well as several examples of the application of the Nyquist criterion to various types of congestion control algorithms.

For cases when the system equilibrium point falls on a point on nonlinearity, the linearization technique is no longer applicable. In this case, techniques such as Lyapunov’s second theorem have been applied to study system stability.

Appendix 3.A Linearization of the Fluid Flow Model

The right-hand sides of the fluid flow model for TCP congestion control that analyzed Section 3.4 are as follows:

f(W,WR,b,p)=1T(t)W(t)WR(t)2T(t)p(tT(t))g(W,b)=W(t)T(t)N(t)C (A1)

image (A1)

where T(t)=b(t)C+Dimage, WR(t)=W(t−T(t)) and TR(t)=T(t−T(t)).

We wish to linearize these equations about their equilibrium points

W20P0=2andW0=CT0N.

image

This can be done using the perturbation formula

fδ(t)=fWWδ+fWRWRδ+fbbδ+fppδand (A2)

image (A2)

gδ(t)=gbbδ+gWWδ. (A3)

image (A3)

By using straightforward differentiation, it can be shown that

fW=fWR=NCT20fb=0fp=C2T02N2gb=1T0gW=NT0 (A4)

image (A4)

Substituting equation A4 back into equations A2 and A3 and then into the original differential equation, we obtain the linearized equations

dWδ(t)dt=2NCT20Wδ(t)C2T02N2Pδ(tT0)dbδ(t)dt=NT0Wδ(t)1T0bδ(t) (A5)

image (A5)

Appendix 3.B The Nyquist Stability Criterion

The Nyquist criterion is used to study the stability of systems that can modeled by linear differential equations in the presence of a feedback loop. In Figure 3.B1, G(s) is the Laplace transform of the system being controlled, and H(s) is the Laplace transform of the feedback function. It can be easily shown that the end-to-end transform for this system is given by

L(s)=Y(s)U(s)=G(s)1+G(s)H(s) (B1)

image (B1)
image
Figure 3.B1 Feedback control system.

To ensure stability, all the roots of the equation 1+G(s)H(s)=0, which in general are complex numbers, have to lie in the left half of the complex plane. The Nyquist criterion is a technique for verifying this condition that is often easier to apply than finding the roots, and it also provides additional insights into the problem.

Nyquist criterion: Let C be a close contour that encircles the right half of the complex plane, such that no poles or zeroes of H(s)G(s) lie on C. Let Z and P denote the number of poles and zeroes, respectively, of H(s)G(s) that lie inside C. Then the number of times M that H(jω)G(jω)image encircles the point (−1,0) in the clockwise direction, as ωimage is varied from to+image, is equal to Z – P.

Note that the contour C in the procedure described above is chosen so that it encompasses the right half of the complex plane. As ωimage is varied from to+image, the function H(jω)G(jω)image maps these points to the target complex plane, where it describes a curve. For the system to be stable, we require that Z=0, and because M=Z – P, it follows that:

• If P=0, then stability requires that M=0, that is, there should no clockwise encirclements of the point (−1,0) by the locus of H(jω)G(jω)image.

• If P>0, then M=−P, i.e., the locus of H(jω)G(jω)image should encircle the point (−1,0) P times in the counterclockwise direction.

Figure 3.B2 shows an example of the application of the Nyquist criterion to the function G(jω)image along with some important features. Note that curve for G(jω)image goes to image as ω0image, and approaches 0 as ω0image. We will use the notation G(jω)=G(jω)ejarg(G(jω))image, where |G(jω)|image is the length of the line going from the origin to G(jω)image and arg(G(jω))image is the angle that this line makes with the real axis. Note the following features in the graph:

• The point (−a, 0) where the G(jω)image curve intersects with the real axis is called the phase crossover point because at this point arg(G(jω))=πimage. The gain margin (GM) of the system is defined by the distance between the phase crossover point and the (−1, 0), i.e.,

GM=1a (B2)

image (B2)

• As the Gain Margin decreases, the system tends towards instability.

• The point where the G(jω)image curve intersects with the unit circle is called the gain crossover point because at this point |G(jω)|=1image. The phase margin (PM) of the system is defined by the angle between the crossover point and the negative real axis. Just as for the GM, a smaller PM means that the system is tending toward instability. Generally a PM of between 30 and 60 degrees is preferred.

image
Figure 3.B2 An example of a Nyquist plot.

In the applications of the Nyquist criterion in this book, we usually find a point ωcimage such that |G(jωc)|1image. This implies that the gain crossover point ωimage is such that 0ωωcimage. Hence, if we can prove that arg(G(jωc))<πimage, then the system will be stable.

Appendix 3.C Transfer Function for the RED Controller

In this appendix, we derive the expression for the transfer function of the RED controller [17], which is diagrammed in Figure 3.C1 and is given by

Vred(s)=LredsK+1where

image

Lred=maxpmaxthminthandK=log(1wq)δ

image
image
Figure 3.C1 Transfer function for the Random Early Detection (RED) controller.

We start with the following equation that describes the operation of the queue averaging process

x((k+1)δ)=(1wq)x(kδ)+wqb(kδ) (C1)

image (C1)

where b(kδ)image is instantaneous queue length at the sampling time kδimage and x(kδ)image is the average queue length at that time. Assume that this difference equation can be put in the form of the following differential equation

dxdt=Kx(t)+Lb(t)

image

Then, in a sampled data system, x(tk+1) can be written

x(tk+1)=eK(tk+1tk)x(tk)+tktk+1eK(tk+1τ)Lb(tk)dτ=eKδx(tk)(1eKδ)Lb(tk)K (C2)

image (C2)

Comparing (C1) with (C2), it follows that L=−K and

1wq=eKδsothat

image

K=loge(1wq)δ

image

Hence, the differential equation for the averaging process is given by dxdt=Kx(t)Kb(t)image, which in the transform space translates into

X(s)b(s)=Ks+K

image

This signal is further passed through the thresholding process as shown in Figure 3.B1 before yielding the final output that is fed back to the source.

Note that K determines the responsiveness of the filter so higher the value of K, the faster it will respond to sudden change. However, too high a value for K will result in the situation in which the filter starts tracking the instantaneous value of the buffer size, resulting in continuous oscillations.

Appendix 3.D Convex Optimization Theory

Definition 1

A set C is said to be convex if the following property holds:

ax+(1a)yC,x,yC,α(0,1] (D1)

image (D1)

Definition 2

Define the function f:CRnimage, where CRnimage is a convex set. The function is said to be convex if

f(ax+(1a)y)af(x)+(1a)f(y)x,yC,a[0,1]. (D2a)

image (D2a)

The function is said to be concave if

f(ax+(1a)y)af(x)+(1a)f(y)x,yC,a[0,1]. (D2b)

image (D2b)

The function is said to be strictly convex (concave) if the above inequalities are strict when xyanda(0,1]image.

Consider the following optimization problem:

maxxf(x) (D3a)

image (D3a)

subject to

PxbQx=0 (D3b)

image (D3b)

where f(x) is a differentiable concave function and P and Q are matrices. The values of x that satisfy the constraints (D3b) form a convex set.

The Lagrangian function L for this problem is defined by

L(x,λ,μ)=f(x)λT(Pxc)μTQx (D4)

image (D4)

where λ0,μimage are called the dual variables or the Lagrangian multipliers for this problem.

Karush-Kuhn-Tucker theorem: x is a solution to the optimization problem (D3ab) if and only if it satisfies the following conditions:

Δf(x)PTλQTμ=0λT(Pxb)=0PxbQx=0λ0 (D5)

image (D5)

Definition 3

Define the dual function D(λ,μ)image by

D(λ,μ)=maxxCL(x,λ,μ) (D6)

image (D6)

where C is the set of all x that satisfy the constraints (D3b).

Strong Duality Theorem: Let xˆimage be the point that solves the constrained optimization problem (equations D3a and D3b). If the Slater constraint qualification conditions are satisfied, then

infλ0,μD(λ,μ)=f(xˆ) (D7)

image (D7)

Appendix 3.E A General Class of Utility Functions

Consider a network with K connections and define the following utility function for connection k [10], given by

Uk(rk)=wkr1αk1αkk=1,,K (E1)

image (E1)

for some αk>0image, where r is the steady state throughput for connection k. Note that the parameters αkimage controls the trade-off between fairness and efficiency. Consider the following special cases for 1kKimage:

αk=0:Uk(rk)=wkrk (E2)

image (E2)

This utility function assigns no value to fairness and simply measures total throughput.

αk=1:Uk(rk)=limαk1wkr1αk1αk=wklogrk (E3)

image (E3)

This network resource allocation that minimizes this utility function is known as weighted proportionally fair. The logarithmic factor means that an algorithm that minimizes this function will cut down one user’s allocation by half as long as it can increase another user’s allocation by more than half. The TCP Vegas algorithm has been shown to minimize this utility function.

αk=2:Uk(rk)=wkrk (E4)

image (E4)

The network resource allocation corresponding to this utility function is called weighted minimal potential delay fair, and as shown in this chapter, this is function TCP Reno minimizes. This metric seeks to minimize the total time of fixed-length file transfers.

αk=α,wk=1k:Uk(rk)=limαr1αk1α (E5)

image (E5)

Minimizing this metric is equivalent to achieving max-min fairness in the network [9].

References

1. Kelly FP. Fairness and stability of end-to-end congestion control. Eur J Control. 2003;9:149–165.

2. Kelly FP, Maulloo AK. Tan DKH Rate control for communication networks: shadow pricing, proportional fairness and stability. J Oper Res Soc. 1998;49(3):237–252.

3. Low SH. A duality model of TCP and queue management algorithms. IEEE/ACM Trans Netw. 2003;11(4):525–536.

4. Low SH, Lapsley DE. Optimization flow control I: basic algorithm and convergence. IEEE/ACM Trans Netw. 1999;7(6):861–874.

5. Kunniyur S, Srikant R. End-to-end congestion control schemes: utility functions, random losses and ECN marks. UIUC CSL. 2000;3:1323–1332.

6. Holot CV, Misra V, Towsley D, Gong W-B. A control theoretic analysis of RED. IEEE INFOCOM. 2001;3:1510–1519.

7. Holot CV, Misra V, Towsley D, Gong W-B. On designing improved controllers for AQM routers supporting TCP flows. IEEE INFOCOM. 2001;3:1726–1734.

8. Low SH, Paganini F, Doyle JC. Internet congestion control. IEEE Control Syst. 2002;22(1):28–43.

9. Srikant R. The Mathematics of Internet Congestion Control Reinach: Birkhauser; 2004.

10. Mo J, Walrand J. Fair end-to-end window based congestion control. IEEE/ACM Trans Netw. 2000;8(5):556–567.

11. Bansal D, Balakrishnan H. Binomial congestion control algorithms. IEEE INFOCOM. 2001;2:631–640.

12. Vinnicombe G. On the stability of networks operating TCP-like congestion control. Proc IFAC World Congress, Barcelona, 2002.

13. Ogata K. Modern control engineering 5th ed. Boston, MA: Prentice-Hall; 2009.

14. Feng W, Kandlur D, Saha D, et al. A self-configuring RED gateway. IEEE INFOCOM. 1999;3:1320–1328.

15. Alizadeh M, Atikoglu B, Kabbani A, et al. Data center transport mechanisms: congestion control theory and IEEE standardization. 46th annual allerton conference, 2008. p. 1270–1277.

16. Alizadeh M, Kabbani A, Atigoglu B, Prabhakar B. Stability analysis of QCN: the averaging principle. ACM SIGMETRICS, 2011. p. 49–60.

17. Misra V, Gong W, Towsley D. Fluid based analysis of a network of AQM routers supporting TCP flows with an application to RED. ACM SIGCOMM. 2000;30(4):151–160.

Suggested Reading

1. Le Boudec JY. Rate adaptation, congestion control and fairness: a tutorial. Ecole Lausanne: Polytechnique Fédérale de Lausanne; 2012.

2. Gibbens RJ, Kelly FP. Resource pricing and the evolution of congestion control. Automatica. 1999;35(12):1969–1985.

3. Low SH, Paganini F, Wang J, Doyle JC. Linear stability of TCP/RED and a scalable control. Comput Netw. 2003;43(5):633–647.

4. Massoulie L, Roberts J. Bandwidth sharing: objectives and algorithms. IEEE/ACM Trans Netw. 2002;10(3):320–328.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.138.120.136