J. Appl. Prob. 48, 68–89 (2011) Printed in England © Applied Probability Trust 2011

UTILITY OPTIMIZATION IN CONGESTED QUEUEING NETWORKS N. S. WALTON,∗ University of Cambridge Abstract We consider a multiclass single-server queueing network as a model of a packet switching network. The rates packets are sent into this network are controlled by queues which act as congestion windows. By considering a sequence of congestion controls, we analyse a sequence of stationary queueing networks. In this asymptotic regime, the service capacity of the network remains constant and the sequence of congestion controllers act to exploit the network’s capacity by increasing the number of packets within the network. We show that the stationary throughput of routes on this sequence of networks converges to an allocation that maximises aggregate utility subject to the network’s capacity constraints. To perform this analysis, we require that our utility functions satisfy an exponential concavity condition. This family of utilities includes weighted α-fair utilities for α > 1. Keywords: Utility optimization; queueing network; quasi-reversible; large deviation; congestion window; congestion control 2010 Mathematics Subject Classification: Primary 90B15; 60K25 Secondary 90B22; 90B18

1. Introduction We are interested in proving how end-to-end control can provide a mechanism where routes receive a transfer rate that is the solution to a network wide utility optimization problem. Using differential equations to model network dynamics, authors have demonstrated network utility optimization; see [14]. In this paper we consider a sequence of stationary queueing networks and demonstrate network utility optimization. We note here that an accessible heuristic derivation of the papers’ main results can be found in Section 2. As a method of allocating resources and introducing fairness, Kelly [11] considered utility optimization of the form  Ui (i ) (1) maximise i∈I

subject to



i ≤ Cj ,

j ∈ J,

(2)

{i : j ∈i}

over i ≥ 0,

i ∈ I,

(3)

where Ui is an increasing strictly concave utility function with derivative satisfying Ui (i ) → ∞ as i → 0. We call this optimization problem the system problem. In words, it states that one should maximise the aggregate utility of the transfer rate received by users of a network’s routes (1) subject to the network’s capacity constraints (2). But, the utility preferences of users Received 21 September 2009; revision received 24 November 2010. ∗ Postal address: Centre for Mathematical Sciences, University of Cambridge, Wilberforce Road, Cambridge CB3 0WB, UK. Email address: [email protected]

68

Utility optimization in queueing networks

69

are separate and unknown to the functional operation of a communication network. Similarly, users do not explicitly know the network’s topology and exact capacity. So, the network’s behaviour and preferences of users must be decomposed. In [11], Kelly also introduced proportional fairness as the unique solution to the optimization problem  m ¯ i log i (4) maximise i∈I

subject to



i ≤ Cj ,

j ∈ J,

(5)

{i : j ∈i}

over

i ≥ 0,

i ∈ I.

(6)

We call this optimization problem the network problem or the proportionally fair optimization problem. Kelly [11] considered the combined solution of the network problem and the following user problems: for each i ∈ I,   m ¯i maximise Ui −m ¯i (7) qi over m ¯ i ≥ 0. This combined solution was considered under the relation m ¯ i = i qi ,

i ∈ I,

(8)

 where qi = j ∈i qj and (qj : j ∈ J) are the Lagrange multipliers associated with the network problem. Theorem 2 of [11] showed that, under (8), the combined solution of the network and user problems yielded the solution to the system problem. This result was constructed to suggest an end-to-end argument for providing optimization and fairness across a communication network. The result provided a method for decomposing the system problem into a user problem that is independent of the network structure, except through parameter qi , and a network problem that is independent of users’ preferences, except through parameters m ¯ = (m ¯ i : i ∈ I). Interpreted in the context of a communication network, this separated the preferences of users performing end-to-end communication and the network’s preferred optimal behaviour. In [11] the solution was interpreted as setting prices (qj : j ∈ J) for sending traffic through the network. With these prices, each user, i ∈ I, chooses an amount of money, m ¯ i , he/she is willing to pay per unit of time for network resources. From this, the user receives an amount of bandwidth i = m ¯ i /qi . By construction, this result considers a static model and the end-to-end argument performed by users is implicit. Subsequent work has successfully used differential equations to add dynamics to this notion of optimization and decomposition [7], [12], [14], [21]. Other work has considered the form of utility optimization achieved by different protocols [15], [18], [23]. Authors have also considered stochastic models of flow across a network [2], [3], [16]. More recently, authors have explicitly used the queue length as a mechanism to provide utility-based fairness [5], [22]. We now describe the approach taken in this paper. In 1979, Schweitzer [20] studied approximations of closed multiclass queueing networks and considered how asymptotic conditions on such networks might satisfy the Kuhn–Tucker conditions for proportionally fair optimization. In 1989, Kelly [10] studied approximations of closed queueing networks and, by an analogous analysis, considered a similar optimization formulation. In 1999, Massoulié and Roberts [17] studied a fluid-type queueing model and

70

N. S. WALTON

used these same Kuhn–Tucker conditions to deduce proportional fairness. Using large deviations and heavy traffic analysis, the recent work of Walton [24] and Kelly et al. [13] have provided rigorous formalisations of the relationship between closed queueing networks and proportional fairness. The large deviations connection between multiclass queueing networks and proportional fairness gives a much more literal meaning to the network problem (4)–(6). In light of this work, the first key observation of this paper is that we can express the network problem (4)–(6) in terms of the asymptotic behaviour of a multiclass queueing network. Given this, (m ¯ i : i ∈ I) must represent the number of packets on each route of this network. We let (m ¯ i : i ∈ I) be recorded and controlled by congestion windows. In this paper, for each route, a congestion window sends packets along its route at a rate which is a function of the number of packets on that route. We call this system of queues and congestion windows a queueing system. We wish to associate the congestion windows in a queueing system with the user problem (7). The second key observation of this paper is that the user problem (7) is reminiscent of a Legendre–Fenchel transform. Results like the Gärtner–Ellis theorem [4] relate the large deviations behaviour of sequences of random variables to the Legendre–Fenchel transform of their log moment generating function. So, by controlling the number of packets in transfer in a network, under a large deviations asymptotic, this Legendre–Fenchel transform observation can be used to associate a utility function with a sequence of congestion windows. We interpret each congestion window in this sequence as a congestion controller’s response to the level of congestion within the queueing system. We discuss this point further in Section 2 and, more formally, in Section 3. A third observation is that in our queueing system statement (8) corresponds to the statement of Little’s law, i.e. the expected number of packets across routes equals the expected sojourn time of packets through the multiclass queueing network multiplied by the rate packets are sent into the multiclass queueing network. Thus, these three observations now place the work of [11] in the context of a network of queues with congestion windowing. The above three observations prescribe the limiting regime and theoretical approach of this paper. We consider a sequence of stationary queueing systems. The capacity of queues within this network is constant, but the control policy used by each congestion controller is altered in this sequence. Controllers sequentially increase the number of packets in flight within the network. Large deviations results are then employed to show that the corresponding sequence of stationary distributions asymptotically concentrates probability on a point that maximises network utility. We now locate the main results of this paper. The queues and congestion windows considered in our queueing system are quasi-reversible. Theorem 1 describes standard reversibility results that can be applied to calculate these queueing systems’ stationary distribution. We consider a sequence of stationary queueing systems associated with a particular sequence of congestion windows. We study the large deviations of the stationary distribution of this sequence of queueing systems. In this large deviations limit our above three observations are realised and, thus, these queueing systems are asymptotically able to execute the analysis of Kelly [11, Theorem 2]. We find in our analysis that we require each utility function to satisfy an exponential concavity condition, that is, the map λ  → Ui (eλ ) is concave. Theorem 3 states that this sequence of queueing systems obeys a large deviations principle with rate function given by the system problem   Ui (i ) subject to i ≤ Cj , j ∈ J. max ∈RI+ i∈I

{i : j ∈i}

Utility optimization in queueing networks

71

From this, in Theorem 5 we prove that the stationary rate of packet transfer converges to the solution of the system problem (1)–(3). 1.1. Organization In Section 2 we present a heuristic derivation of the main results of this paper. This section should be quick and accessible to most readers. In Section 3 we define our model of a congestion window. We study its stationary distribution when operating in isolation of a network. We study the large deviations behaviour of a sequence of congestion windows and we consider how to associate a utility function with this sequence. In Section 4 we consider a well-known model of a multiclass queue. We study these queues’ stationary distribution when operating in isolation of a network and we study their large deviations behaviour. In Section 5 we connect the congestion windows of Section 3 with the queues of Section 4 to form a queueing system. Similarly, we study the stationary distribution of this queueing system and the large deviations of a sequence of queueing systems. In addition, we study the dual relationship between the state and the flow through the queueing system, and we prove that the stationary throughput of packets in the queueing system converges to the solution of the system problem. 1.2. Notation Let the finite set J index the set of queues in a network. Let J = |J|. A route through the network is a nonempty subset of queues. Let I be the set of routes, and let I = I. For each route i = {j1i , . . . , jkii }, we associate an order (j1i , . . . , jkii ). This is the order in which route-i packets traverse their route. Also, we define the set of queue-route incidences, K = {(j, i) ∈ J × I : j ∈ i}, and let K = |K|. Our multiclass queueing system will process packets through a network of queues and congestion windows. For each route, there is a congestion window. Let the window size m ¯i denote the number of packets in congestion window i ∈ I. The window size is the number of sent but not yet acknowledged packets on route i. Each queue j processes packets from routes i ∈ I with j ∈ i. Let mj i denote the number of route-i packets at queue j . We also define 

mj =

mj i ,

j ∈ J,

(9)

{i:j ∈i}

to be the number of packets at queue j . As each congestion window records the number of packets in transfer in the queueing network, m ¯i =



mj i ,

i ∈ I.

(10)

j ∈i

Although we will often use m ¯ = (m ¯ i : i ∈ I) ∈ ZI+ and m = (mj i : (j, i) ∈ K) ∈ ZK + to refer to the numbers of packets at congestion windows and queues, in Sections 3.2, 4.2, and 5.2, when applying large deviations results, we will use m ¯ ∈ RI+ and m ∈ RK + to refer to the proportions of packets in the queueing system at different congestion windows and queues. In addition, for m ∈ ZK + , we define   mj ! mj = . mj i : i j {i : j ∈i} (mj i !)

72

N. S. WALTON

D 2 1/2 , the Euclidean norm of x; D For vectors x ∈ RD + and φ ∈ R+ , we define x = ( d=1 xd ) x = ( xd : d = 1, . . . , D), the low integer part of each component of x; and φ · x =  D d=1 φd xd , the dot product of φ and x. 2. A heuristic derivation of results In this section we give a heuristic derivation of the results in this paper. The heuristic is an adaption of the arguments of [10], [17], and [20] applied to a modified version of [11]. The formal proof, given in subsequent sections, follows a similar approach to [24]. The Karush–Kuhn–Tucker (KKT) conditions for the system problem (1)–(3) are that there exist positive multipliers (qj : j ∈ J) and positive rates (i : i ∈ I) such that  Ui (i ) = qj , i ∈ I, 



qj Cj −

j ∈i

 = 0,

i

j ∈ J,

{i : j ∈i}



i ≤ Cj ,

j ∈ J.

{i : j ∈i}

Consider a queueing system with routes I and queues J, as notated in the previous section. For each route i, packets are injected into the network, traverse the queues in their route in order j1i , . . . , jkii , and then leave. Let qj denote the stationary sojourn time of a packet at queue j , let mj i denote the stationary number of route-i packets in transfer at queue j , and let i denote the stationary sending rate of route-i packets into the network. By Little’s law, i qj = mj i

for all i ∈ I and j ∈ i.

Summing over the queues on route i and rearranging gives  m ¯i = qj for all i ∈ I, i

(11)

j ∈i

where m ¯ i is the stationary number of packets in transfer on route i. Suppose that a congestion window for each route i injects packets into the network at a rate that is a function of m ¯ i, i.e. gi (m¯ i ) = i . If we chose gi (·) so that m ¯ i = gi−1 (i ) = i Ui (i ) then (11) implies that Ui (i ) =



qj ,

i ∈ I.

(12) (13)

j ∈i

Assuming that all queues are stable, we know that  i ≤ Cj for all j ∈ J.

(14)

{i : j ∈i}

If equality (14) is strict then sojourn times will be small, i.e. qj ≈ 0. Thus, approximately,    qj Cj − (15) i = 0 for all j ∈ J. {i : j ∈i}

Utility optimization in queueing networks

73

Also, qj ≥ 0

for all j ∈ J

and

i ≥ 0

for all i ∈ I.

(16)

Interpreting (qj : j ∈ J) as Lagrange multipliers, (13)–(16) are precisely the above KKT conditions for the system problem. So the rates (i : i ∈ I) and the sojourn times (qj : j ∈ J), implicitly defined by the queueing network, solve the system problem (1)–(3). The remainder of this paper is concerned with making the above arguments rigorous. To make conditions like (15) strict, we will require the network to have a high level of congestion. (c) We achieve this by considering a sequence of congestion controls gi , whilst keeping Cj , each queues’ service capacity, fixed. As c increases, the controllers increase the number of packets in transfer and, thus, more aggressively exploit the network capacity. We think of this increase in congestion in an analogous way to the increase rules employed by the transmission control protocol in Internet communications. We will apply large deviations techniques to a sequence of stationary network models, indexed by c, and prove that probability concentrates on the system optimal operating point. ¯ i ) and Gi (m ¯ i) 2.1. Choices of gi (m Later, we will apply large deviations results to certain stationary distributions. For this reason, it will be convenient to express gi through the theory of convex duality. Let Gi be a  ¯ differentiable function such that gi (m) ¯ = eGi (m) . Then (12) gives  G−1 i (log i ) = i Ui (i )

or

λi  λi G−1 i (λi ) = e Ui (e ).

(17)

Now if F ∗ is the Legendre–Fenchel transform of a concave differentiable function F , i.e. F ∗ (m) ¯ = − maxλ {F (λ) − λm}, ¯ then, by construction, F ∗ has a derivative that inverts the ¯ = derivative of F , i.e. the inverse of F ∗  (·) equals F  (·). Applying this to (17), with Gi (m) ¯ and F (λi ) = Ui (eλi ), we have F ∗ (m) ¯ = − max{Ui (eλi ) − m ¯ i λi } = − max {Ui (i ) − m ¯ i log i }. Gi (m) λi

i ≥0

(18)

It is precisely by this function Gi that we are able to replace m ¯ i log i , the network problem summand, with the system user’s utility Ui (i ). So that duality can invert this operation, that is, Ui (eλ ) = G∗i (λ), we require that Ui (eλ ) is a concave function of λ. We note that the optimization used to derive Gi , (18), is different to the user problem (7) derived by Kelly [11]. This is, in essence, because we choose the rate packets to be injected based on the number of packets in transfer. This is in contrast to the user problem of Kelly, which could be interpreted as choosing the number of packets in transfer given the current network delay (or round trip time) of packets. A theoretical advantage to our approach is that queueing networks which inject packets based on the number of packets in transfer are more analytically tractable. In particular, quasi-reversibility results can be applied to explicitly give the stationary distribution of such networks. In the next two sections we construct the components of these queueing networks: congestion windows and multiclass queues. In Section 5 we connect these components to form a sequence of queueing systems that will execute the above heuristic. 3. Congestion windows Congestion windows keep a record of the number of sent but not yet acknowledged packets in a queueing network. The models of congestion windows considered here are reversible and,

74

N. S. WALTON

thus, lend well to product-form results when incorporated into a network [1], [10]. We will later connect these congestion windows to the routes of a network of multiclass single-server queues. When in isolation of a network, we define a congestion window at congestion level c as a (c) continuous-time Markov chain (M¯ i (t) : t ∈ R+ ) on Z+ with transition rates ⎧ (c) ⎪ ¯ i ) if m ¯ i = m ¯ i + 1, ⎨gi (m  ¯ i ) = i q(m ¯ i, m if m ¯ i = m ¯ i − 1, ⎪ ⎩ 0 otherwise. The transition m ¯ i → m ¯ i + 1 is thought of as injecting a packet into a network, and, for m ¯ i > 0, a transition m ¯ i → m ¯ i − 1 is thought of as acknowledging a packet that has been transferred. Thus, we think of m ¯ i as recording the number of packets currently in transfer. For the purposes of this paper, it will be convenient to define i = eλi

(c)

(c)

(c)

and gi (m ¯ i ) = exp{Gi (m ¯ i + 1) − Gi (m ¯ i )},

(c)

where λi ∈ R and Gi : R+  → [−∞, ∞) is a strictly concave function. Thus, a congestion (c) window is defined by a constant λi and a function (c, m ¯ i )  → Gi (m ¯ i ). 3.1. Reversibility and stationary behaviour We now collect a result about the stationary behaviour of congestion windows. Proposition 1. A stationary congestion window is reversible with stationary distribution (c)

(c)

(c)

πi (m ¯ i ) = πi (0) exp{Gi (m ¯ i ) − λi m ¯ i },

m ¯ i ∈ Z+ .

(19)

Proof. The result is immediate from the detail balance equations (c)

(c)

(c)

(c)

¯ i ) = exp{Gi (m ¯ i ) − Gi (m ¯ i − 1) − λi }πi (m ¯ i − 1) πi (m = ··· (c)

(c)

¯ i ) − λi mi }πi (0). = exp{Gi (m 3.2. Large deviations We think of the pair (c, m ¯ i ) as giving the state of a congestion controller, where L is a level of congestion and m ¯ i is the number of packets in transfer. As noted above, if c is fixed, a congestion controller describes a reversible Markov chain. In this section we study the stationary distribution of a sequence of these Markov chains as c → ∞. As c increases, the stationary number of packets in transfer will increase. This can be interpreted as the congestion controller more aggressively exploiting the network’s capacity. In this section we use large deviation type arguments to study where the probability concentrates under this limit. (c) (c) For each c ∈ N, let M¯ i be a stationary congestion window defined by λi and Gi (·), where (c) (c) Gi (k) = cGi (k/c + di /c) for a strictly concave function Gi , differentiable on (0, ∞) with (c) derivatives taking all values in (−∞, ∞) and with {di }c∈N a bounded sequence with values in R. We define a convex function G∗i : R → R from Gi with Legendre–Fenchel transform G∗i (λi ) = max {Gi (m ¯ i ) − λi m ¯ i }. m ¯ i ∈R+

Utility optimization in queueing networks

We also define

75

m ¯ ∗λi = argmax{Gi (m ¯ i ) − λi m ¯ i }. m ¯ i ∈R+

In the following proposition we use large deviation arguments to identify the most probable state of the sequence of random variables M¯ (c) , c ∈ N. Proposition 2. (a) We have ∞

 1 (c) log exp{Gi (k) − λi k} = G∗i (λi ), c→∞ c lim

λi ∈ R+ .

k=0

(c)

(c)

(b) For m ¯ i ∈ (0, ∞) and a bounded sequence {σ¯ i }c∈N such that cm ¯ i + σ¯ i lim

c→∞

∈ Z+ ,

1 (c) ¯ i + σ¯ i ) = Gi (m ¯ i ) − λi − G∗i (λi ). log P(M¯ (c) = cm c

Proof. To prove (a), we wish to verify the principle of the largest term for this infinite sum (c) [6, Lemma 2.1]. First we show the upper bound. Let d = maxc |di |. Since Gi is strictly concave, for all δ > 0, letting ε=

1 min{Gi (m ¯ ∗λi ) − Gi (m ¯ ∗λi − δ) + δ, Gi (m ¯ ∗λi ) − Gi (m ¯ ∗λi + δ) − δ} > 0, δ

we have, for all m ¯ ∈ R+ , ¯ i ) − λi m ¯ i ≤ G∗i (λi ) − ε(m ¯i −m ¯ ∗λi ) 1[m ¯i ≥ m ¯ ∗i + δ] + ε(m ¯i −m ¯ ∗λi ) 1[m ¯i ≤ m ¯ ∗ − δ]. Gi (m Therefore, applying the above inequality and comparing the following with a geometric sum, we have 

  ∞ ∞ (c)    d k k (c) + i − λi exp{Gi (k) − λi k} = exp c Gi c c c k=0 k=0    ∗ (c) ecε(k/c−m¯ ) ≤ exp{cG∗i (λi ) + di } 2(cδ + d + 1) + 2 k∈Z+

  e−(cδ−d−1) (c) ∗ . ≤ exp{cGi (λi ) + di } 2(cδ + d + 1) + 2 1 − e−ε

(20)

Hence, as the first term in the brackets dominates, ∞

lim sup c→∞

 1 (c) exp{Gi (k) − λk} ≤ G∗i (λ). log c k=0

By proving the lower bound for (a) we can simultaneously verify (b). Using the terminology of (b), for all m ¯ i ∈ (0, ∞), 

(c) (c)  σ¯ i di 1 (c) Gi (m ¯i + (21) ¯ i ) − λi m ¯ i = lim log exp cGi m ¯ i + σ¯ i + − λi c m c→∞ c c c ∞  1 (c) ≤ lim inf log exp{Gi (k) − λi k}. c→∞ c k=0

Taking m ¯i =

m ¯ ∗λi

and

(c) σ¯ i

=

m ¯ ∗λi − m ¯ ∗λi

verifies (a). Given (a) and (21), we have (b).

76

N. S. WALTON

We now emphasise the following duality between the state and the flow in congestion windows. Suppose that, as c → ∞, the number of packets in transfer is approximately cm ¯ ∗i ∗ for some m ¯ i ∈ (0, ∞). Thus, the flow out of the congestion window is approximately

Gi (m ¯ ∗i + 1/c) − Gi (m ¯ ∗i )  ∗ (c) ¯ ∗i ) ≈ exp → eGi (m¯ i ) as c → ∞. gi (cm 1/c When stationary, the average outward flow of packets from the congestion window equals the ¯ ∗i ) = λi , or, in other words, average inward flow. Thus, we have Gi (m ¯ i ) − λi m ¯ i }. m ¯ ∗i = argmax{Gi (m m ¯ i ∈R+

By this duality and the correct choice of Gi (as discussed in Section 2.1), we can control the throughput of packets from the congestion window so that it optimises a utility function. 3.3. Utility optimization The rate packets are acknowledged by a congestion window is i = eλi ; thus, the utility associated with λi is Ui (eλi ). If we wish to maximise the system problem, we must define Gi through the following user problem: ¯ i ) = max{Ui (eλi ) − m ¯ i λi }, −Gi (m λi ∈R

m ¯ i ∈ R+ .

(22)

Similarly, by the duality of Legendre–Fenchel transforms, we may define Ui from Gi by ¯ i − Gi (m ¯ i )} = −G∗i (λi ), Ui (eλi ) = min {λi m m ¯ i ∈R+

λi ∈ R.

(23)

The function Ui (eλi ) must be concave as G∗i (λi ) is convex. Thus, in order to optimise a utility function Ui , we require the following assumption. Assumption 1. The utility function Ui is exponentially concave, that is, the map λi  → Ui (eλi ) is strictly concave on R. We also collect the differentiability assumptions that we make on Gi . Assumption 2. We assume that Gi defined by (22) is strictly concave and (continuously) differentiable on (0, ∞) with derivatives taking all values in R. Remark 1. (Weighted α-fairness, α > 1.) The weighted α-fair family of utility functions considered by Mo and Walrand [18] corresponds to the aggregate utility of users with isoelastic utility, that is, utilities ⎧ 1−α ⎪ ⎨ wi i if wi ∈ R+ , α > 0, α  = 1, 1−α Ui (i ) = ⎪ ⎩ wi log i if wi ∈ R+ , α = 1. The weighted α-fair class has proved popular as it contains proportional fairness (α = wi = 1) and transmission control protocol fairness (α = 2, wi = 1/Ti2 ), and converges to maximum throughput (α → 0, wi = 1) and max–min fairness (α → ∞, wi = 1). We can easily verify that Ui (i ) is exponentially concave for α > 1 and that m¯ i m ¯i m ¯i x m ¯i 1 Gi (m ¯ i) = − log dx. log = 1−α wi 1−α 1−α 0 wi

Utility optimization in queueing networks

77

So Ui and Gi satisfy the two assumptions above for α > 1. Thus, our results apply for weighted α-fairness for α > 1. The case α = 1 is considered in [24]. For weighted α-fairness, α > 1, (c) (c) convenient forms for gi and Gi are   (c) cwi 1/(α−1) (cwi )m¯ i /(α−1) (c) ¯ i) = and eGi (m¯ i ) = . gi (m m ¯i (m ¯ i !)1/(α−1) 4. Multiclass single-server queues We define a multiclass single-server queue. These queues are quasi-reversible and are described in [8]. When connected to form a network, these queues process packets over different routes of a queueing system. Congestion windows regulate the number of packets present on each route. After defining these multiclass queues in this section, we define this queueing system in Section 5. A queue j ∈ J is fed packets from classes of the set of routes {i ∈ I : j ∈ i}. Packets occupy different positions within the queue and have an exponentially distributed mean 1 service requirement. Given there are mj ∈ Z+ packets at queue j , packets occupy positions 1, . . . , mj . The total service devoted to these packets is Cj ∈ (0, ∞). This fixed service is then divided amongst the different positions in the queue. A proportion γj (l, mj ) of this capacity is devoted to the packet at position l = 1, . . . , mj . Upon completing its service, a packet at position l will depart the queue and the packets at positions l + 1, . . . , mj will move to positions l, . . . , mj − 1, respectively. In this section we assume that packets of route i arrive at queue j as a Poisson process with rate i . Upon arrival, a packet will move to position l = 1, . . . , mj + 1 with probability δj (l, mj + 1), and packets that were in positions l, . . . , mj will move to positions l + 1, . . . , mj + 1. j j i Let s j = (i1 , . . . , imj ) ∈ Imj for mj > 0 give the state of queue j . Let T·,(j,l) denote the i arrival of a class-i packet to position l in queue j , and let T(j,l),· denote the departure of a class-i packet from position l. Thus, the state of this queue forms a continuous-time Markov chain with transition rates given by ⎧ i j j ⎪ ⎨i δj (l, mj + 1) for s = T·,(j,l) s , l = 1, . . . , mj + 1, j i q(s j , s j ) = Cj γj (l, mj ) for s j = T(j,l),· s j , il = i, l = 1, . . . , mj , ⎪ ⎩ 0 otherwise. 4.1. Quasi-reversibility and stationary behaviour Multiclass single-server queues are known to be quasi-reversible and their stationary distribution is well understood [1], [8]. Proposition 3. Provided that the stability condition  i < Cj , j ∈ J, {i : j ∈i}

holds, a multiclass single-server queue j ∈ J is quasi-reversible and (Mj i : i ∈ I, j ∈ i), the stationary number of route-i packets at queue j , has distribution     mj i Cj − {i : j ∈i} i i mj P(Mj i = mj i for all i j ) = (24) m : i j Cj Cj ji for mj i ∈ Z+ and each i ∈ I such that j ∈ i, where mj =



{i : j ∈i}

{i : j ∈i} mj i .

78

N. S. WALTON

Proof. Let Mj be the number of packets at queue j . Since the queue does not discriminate between different packet classes, Mj is a reversible Markov chain and, thus, its departures prior to time t form a Poisson process independent of the Poisson  process of arrivals after time t. By thinning these Poisson processes with probability i / {j : r∈j } r , we obtain the arrival and departure processes of route-i packets and, thus, deduce that the queue  is quasi-reversible. The stationary distribution of Mj is geometric with parameter (1/Cj ) {r : j ∈r} i . Combining this with the same thinning argument and summing over states s j , giving (mj i : i ∈ I, j ∈ i), we obtain (24). For more details, see [1, Section IV.4] or [8, Theorem 3.1]. 4.2. Large deviations We study the stationary distribution (24) when the number of packets of each class is increased proportionately, but all other queueing parameters are kept constant. We collect some large deviations results on these queues in this regime [19], [24]. Proposition 4. For j ∈ J, let (Mj i : i ∈ I, j ∈ i) have distribution (24). (c)

(a) Let mj = (mj i : i ∈ I, j ∈ i) and σ j,(c) = (σj i : i ∈ I, j ∈ i), c ∈ N, be such that (c) mj i ∈ R+ , supc∈N σ j,(c) < ∞, and cmj i + σj i ∈ Z+ for all i with j ∈ i. Then lim

c→∞

1 (c) log P(Mj i = cmj i + σj i for all i j ) = −βj (mj ), c

where βj (mj ) =

 {i : j ∈i} mj >0

mj i log

mj i Cj . mj  i

(b) The function βj (mj ) is continuous, convex, and such that   0 if {i : j ∈i} i ≤ Cj , j inf βj (m ) = −∞ otherwise. mj ≥0  (c) (c) Proof. (a) Define σj = {i : j ∈i} σj i . By Stirling’s formula, lim

c→∞

(25)

1 (c) log(cmj i + σj i )! = mj i log mj i − mj i . c

Thus, 1 (c) log P(Mj i = cmj i + σj i , i j ) c→∞ c     1 i (c) (c) (c) = lim log(cmj i + σj i )! + (cmj i + σj i ) log log(cmj + σj )! − c→∞ c Cj lim

{i : j ∈i}

= − lim

c→∞

 {i:j ∈i} mj >0

mj i log

{i : j ∈i}

(c) (mj i + σj i /c)Cj (c) (mj + σj /c)i

= −βj (mj ). (b) Taking x log x = 0 for x = 0, x log x is continuous on R+ ; thus, βj is continuous. We now prove (25). For two probability distributions p and q with the same support on K, we

Utility optimization in queueing networks

79

 define their relative entropy to be D(p||q) = s ps log(ps /qs ). In particular, we can verify that min D(p||q) = 0, (26) p

whichis minimised when p = q. Thus, taking p = (mj i /mj : i ∈ I, j ∈ i) and q = (i / {r : j ∈r} r : i ∈ I, j ∈ i),     mj i {r : j ∈r} r mj i Cj j + mj log  log inf βj (m ) = inf mj j j m m  m ≥0 m >0 j j i {r : j ∈r} r {i : j ∈i}

= inf mj log  mj >0



=



Cj {r : j ∈r} r

0 if {r : j ∈r} r ≤ Cj , −∞ otherwise.

Finally, to show that βj (·) is convex, we can verify that   mj i φi subject to i eφi ≤ Cj βj (mj ) = max {i : j ∈i}

over φi ∈ R, i j.

(27)

{i : j ∈i}

Thus, βj (·) is expressible as a Legendre–Fenchel transform and so is convex. 5. A queueing system We now connect the queues and congestion windows discussed in the last two sections to form a network. The interior of this network consists of a set of multiclass queues with routes defined over these queues. We think of this as a simple model of a packet switching network. The number of packets in transfer on a route are determined by congestion windows, as defined in Section 3. The queueing system, defined by these queues and congestion windows, models the congestion control of a packet-switched communication network with a fixed number of document transfers in progress. In this section, using quasi-reversibility results and fixed c, we calculate the stationary distribution of this queueing system. For these stationary distributions, we increase c, the congestion level of each congestion window, and, using large deviation techniques, we calculate where the probability concentrates. We show that the most likely state is given an entropy optimization and its dual is the system problem. In particular, we prove that (c) , the stationary rate packets traverse the network, converges to the solution of the system problem (1)–(3). We consider a network of queues indexed by the set J and congestion windows indexed by the set of routes I. Each queue j ∈ J will process packets as described in Section 4, but transitions between queues will be prompted by transitions within the queueing system (rather than by a Poisson process). Similarly, each congestion window will send packets into the network as described in Section 3, but transitions m ¯ i → m ¯ i − 1 will be prompted by the successful transfer of a packet in the queueing network. If we associate the route order (j1i , . . . , jkii ) to route i, a packet injected by congestion window i will prompt an arrival at queue j1i . Also, the departure of a route-i packet from queue i , and, similarly, a departure of a jki , k = 1, . . . , ki − 1, will prompt an arrival at queue jk+1 i route-i packet from the final queue jki will prompt a transition m ¯i → m ¯ i − 1 at congestion window i. In this way, packets are sent into the network, transferred along their route, and finally acknowledged.

80

N. S. WALTON

We more explicitly describe the state of our queueing system as follows. As in Section 4, j j we let s j = (i1 , . . . , imj ) record the state of queue j and s = (s j : j ∈ J) record the state of our queueing system. Also, we let m ¯ i record the state of congestion window i and let ¯ record m ¯ = (m ¯ i : i ∈ I) record the state of our congestion windows. Finally, let s = (s, m) the explicit state of our queueing system. We define the transitions in our queueing network i as follows. Let s  → T·,(j,l) s define the transition corresponding to a route-i packet injected i by congestion window i and arriving at position l in queue j . Let s  → T(j,l),(j  ,l  ) s denote the departure of a route-i packet from position l of queue j which arrives at position l  in queue j  . i s denote the departure of a route-i packet from position l of queue j Finally, let s  → T(j,l),· which is then acknowledged at congestion window i. We define our queueing system corresponding to congestion level c to be a continuous-time Markov chain with the following transition rates: ⎧ (c) i ¯ i )δj (l, mj + 1) for s  = T·,(j,l) s, j = j1i , l = 1, . . . , mj + 1, gi (m ⎪ ⎪ ⎪ ⎪ i i ⎪ Cj γj (l, mj )δj  (l  , mj  + 1) for s  = T(j,l),(j ⎪  ,l  ) s, j = jk , ⎪ ⎪ ⎨ i , k = 1, . . . , k − 1, j  = jk+1 i q(s, s  ) = j  = 1, . . . , m  + 1, ⎪ i = i, l ⎪ j l ⎪ ⎪ j ⎪  = Ti ⎪Cj γj (l, mj ) for s s, j = jkii , il = i, ⎪ (j,l),· ⎪ ⎩ 0 otherwise. (28) As in Section 4, we let m = (mj i : (j, i) ∈ K) record the number of route-i packets at queue j . ¯ i , (9) and (10), the numbers of packets in each queue Also, recall the expressions for mj and m (c) (c) and in each congestion window. Finally, recall that we defined Gi from gi by the relation (c) (c) (c) gi (m ¯ i ) = exp{Gi (m ¯ i + 1) − Gi (m ¯ i )}. 5.1. Quasi-reversibility and stationary behaviour From Proposition 1 and Proposition 3, our queueing system consists of a network of quasi-reversible nodes. Thus, as considered in [9], networks of quasi-reversible nodes have a stationary distribution that is described by multiplying distributions (19) and (24). We prove this in the following theorem. Theorem 1. For a stationary queueing system defined by rates (28), let M = (Mj i : (j, i) ∈ K) record the stationary number of packets of each route at each queue. Then M has distribution P(M = m) =



1 BG(c)

where BG(c) =

j ∈I

mj mj i : i j

  j ∈J m∈ZK +



1

e m Cj j i∈I

mj mj i : i j



(c)

Gi (m ¯ i)

1

e m Cj j i∈I

m ∈ ZK +,

,

(c)

Gi (m ¯ i)

(29)

.

Note that the distribution P(M  = m) is not a product-form stationary distribution because we require the constraint m ¯ i = j ∈i mj i for all i ∈ I. Proof of Theorem 1. A good candidate for the time reversal of this queueing system is defined by rates q(·, ˜ ·), where packets follow route i in reverse order, i.e. (jkii , . . . , j1i ), where ˜ mj ) = γj (l, mj ) and γ˜j (l, mj ) = δj (l, mj ), queues j ∈ J operate at capacity Cj with δ(l,

Utility optimization in queueing networks

81

and where, as before, congestion window i ∈ I sends packets into the network at rate (c) (c) (c) gi (m ¯ i ) = exp{Gi (m ¯ i + 1) − Gi (m ¯ i )}. We show that

1 (c) π (c) (s) = eGi (m¯ i ) mj C j ∈J j i∈I forms an invariant measure for our explicit Markov chain description. We verify Kelly’s lemma [8, Theorem 1.13] for our three types of transition: packet injections from congestion windows, transitions between queues, and acknowledgements at congestion windows. For a packet injected by a congestion window, i q(s, T·,(j,l) s) i q(T ˜ ·,(j,l) s, s)

=

i (c) s) π (c) (T·,(j,l) gi (m ¯ i )δj (l, mj + 1) = (c) Cj γj (l, mj + 1) π (s)

for j = j1i and l = 1, . . . , mj + 1. For a transition between queues, i q(s, T(j,l)(j  ,l  ) s) i q(T ˜ (j,l),(j  ,l  ) s, s)

=

Cj γj (l, mj )δj  (l  , mj + 1) Cj  γ˜j  (l, mj  + 1)δ˜j (l, mj )

=

i π (c) (T(j,l),(j  ,l  ) s)

π (c) (s)

i , k = 1, . . . , k − 1, i = i, and l  = 1, . . . , m  + 1. For an acknowlfor j = jki , j  = jk+1 i j l edgement at a congestion window i, j

i q(s, T(j,l),· s) i q(T ˜ (j,l),· s, s)

=

i π (c) (T(j,l),· s) Cj γj (l, mj ) = (c) (c) π (s) g (m ¯ i − 1)δ˜j (l, mj ) i

j

for j = jkii and i = il . We note that the transition intensity of the reversed process agrees with that of the forward process   (c)  q(s) ˜ =− q(s, ˜ s) = gi (m ¯ i) + Cj = q(s). s

i∈I

{j : mj >0}

This verifies Kelly’s lemma and, thus, π (c) (s) is an invariant measure. Note that BG(c) is expressible as   λi mj i    e mj (c) BG(c) = exp{Gi (m ¯ i ) − λi m ¯ i} mj i : i j Cj j ∈J m∈ZK +

{i : j ∈i}

i∈I

(c)

for all λ ∈ RI . By Assumption 2, the function m ¯ i  → Gi (m ¯ i ) − λi m ¯ i is bounded from above for all λi . Applying this upper bound and choosing λ ∈ RI such that j ∈i eλi < Cj , the sum for BG(c) is finite. Thus, summing over states of invariant measure, π (c) (s) gives the stationary distribution (29). 5.2. Large deviations We now study the large deviations behaviour of our stationary queueing systems as c → ∞. As c increases, the congestion windows increase the number of packets within the queueing system, and we study its large deviations behaviour. Once again, we think of each congestion controller as attempting to exploit the network capacity by increasing c and congesting the

82

N. S. WALTON

network. We will relate the most likely state in our queueing system to the solution of the system problem. We use the same notation from Sections 3 and 4. We also suppose that Assumptions 1 and 2 hold. As in Section 3, we consider a sequence of congestion windows defined by  (c)

Gi (k) = cGi

(c) 

d k + i c c

for i ∈ I and c ∈ N.

Here Gi is expressible in terms of the utility function Ui given in (23). We define the function 

˜ = βG,λ (m, m)

mj i log

{(j,i)∈K : mj i >0}

mj i Cj  − {Gi (m ˜ i ) − λi m ¯ i} mj eλi

(30)

i∈I

for m ∈ RK ˜ ∈ RI+ , and λi ∈ RI . We use +, m  the shorthand βG = βG,λ for λ = 0 and the shorthand βG (m) = βG (m, m) ˜ when m ˜ i = j ∈i mj i for all i ∈ I. We define 

∗ = min βG

mj i Cj  − Gi (m ˜ i) mj

(31)

mj i = m ¯ i , i ∈ I, over m ∈ RK ¯ ∈ RI+ . +, m

(32)

mj i log

{(j,i)∈K : mj i >0}

subject to



i∈I

j

For each fixed c, consider a stationary queueing system defined by rates (28) with congestion (c) (c) windows defined by Gi (·), i ∈ I. Let M (c) = (Mj i : (j, i) ∈ K) record the stationary distribution of the number of packets on each route at each queue in our queueing system, (29). In the following theorem we characterise the large deviations of our sequence of queueing systems. Theorem 2. The sequence M (c) /c, c ∈ N, obeys a large deviations principle with good rate ∗ . That is, for all D ⊂ RK , function βG (·) − βG +  (c)  ∗ (c) M − inf ◦ (βG (m) − βG ) ≤ lim inf P ∈D c→∞ m∈D c  (c)  (c) M ≤ lim sup P ∈D c c→∞ ∗ ≤ − inf (βG (m) − βG ). m∈D¯

Proof. Assuming that λ ∈ RI satisfies  eλi < Cj

for all j ∈ J,

{i : j ∈i} I we define a product-form stationary distribution on ZK + × Z+ with  λi mj i  e 1 mj ˜P(c) (M (c) = m, M˜ (c) = m) ˜ = mj i (c) : i j m ˜ j i B j ∈J {i : j ∈i} Cj

(c) × exp{Gi (m ¯ i ) − λi m ¯ i} m ∈ ZK ˜ ∈ ZI+ , +, m i∈I

(33)

Utility optimization in queueing networks

where B˜ (c) =

j ∈J B˜ (c) is

Note that, by (20), conditional probability (c)

P (M

(c)

Cj −

83

Cj 

{i : j ∈i} e



 λi

 (c) exp{Gi (k) − λi k} .

i∈I k=0

(c) finite. Note that P(c) is expressible in terms of P˜ through the

    (c)  (c) (c) (c)  ˜ ˜ M = m  Mi = = m) = P Mj i , i ∈ I j ∈i

(c) for m ∈ By proving large deviations results about P˜ we are able to prove a large deviations principle for P(c) . First, by Proposition 4, Proposition 2(a), and the definition of Ui , (23), we have  1 lim log B˜ (c) = − Ui (eλi ). c→∞ c

ZK +.

i∈I

Thus, by Proposition 2 and Proposition 4, for m ∈ RK ˜ ∈ RI+ with bounded sequences + and m (c) K (c) I (c) K σ ∈ R+ and σ˜ ∈ R+ , c ∈ N, such that cm + σ ∈ Z+ and cm ˜ + σ˜ (c) ∈ ZI+ , we have  1 (c) −βG,λ (m, m) ˜ + Ui (eλi ) = lim log P˜ (M (c) = cm + σ (c) , M˜ (c) = cm ˜ + σ˜ (c) ). c→∞ c i∈I

I Take E ⊂ RK ˜ ∈ E, there + × R+ , either open or, more generally, such that, for all (m, m) (c) ∈ ZI for which and c m ˜ + σ ˜ exists a sequence as described above with cm + σ (c) ∈ ZK + + (m + σ (c) /c, m ˜ + σ˜ (c) /c) ∈ E eventually as c → ∞. Then

1 (c) ˜ + σ˜ (c) ) log P˜ (M (c) = cm + σ (c) , M˜ (c) = cm c (m,m)∈E ˜  (c) ˜ (c)   1 M M (c) ∈E . (34) , ≤ lim inf log P˜ c→∞ c c c (c) This gives us a large deviations lower bound for P˜ . We prove the upper bound by using the (c) Gärtner–Ellis theorem [4, p. 44]. We study the moment generating function of P˜ for θ ∈ RK and φ ∈ RI : −

inf

βG,λ (m, m) ˜ =−

inf

lim

c→∞ (m,m)∈E ˜

E exp{θ · M (c) + φ · M˜ (c) }  ⎧  

Cj − {i : j ∈i} eλi ⎪ ⎪  ⎪ ⎪ ⎪ Cj − {i : j ∈i} exp{λi + θj i } ⎪ ⎪ ⎨j ∈J   (c)

 ∞  = k=0 exp{Gi (k) − (λi − φi )k} ⎪ × if exp{λi + θj i } < Cj , j ∈ J, ⎪  ⎪ (c) ∞ ⎪ ⎪ exp{Gi (k) − λi k} ⎪ k=0 i∈I {i : j ∈i} ⎪ ⎩ ∞ otherwise. Thus, combining Proposition 2(a) and Proposition 4(b),

(c) 1 M˜ M (c) +φ· F (θ, φ) = lim log E exp θ · c→∞ c c c ⎧  λi ⎨ Ui (e ) − Ui (exp{λi − φi }) if {i : j ∈i} eλi +θj i < Cj , j ∈ J, = i∈I ⎩ ∞ otherwise.

84

N. S. WALTON

Thus, F has Legendre–Fenchel transform    F ∗ (m, m) ¯ = max mj i θ j i + m ˜ i φi + (Ui (exp{λi − φi }) − Ui (eλi )) θ∈R,K φ∈RI

= max



θ∈RK

+

 i∈I

=

 ji

ji

i

i

(subject to m j i θj i :



ji



i : j ∈i

exp{λi + θj i } < Cj , j ∈ J)

exp{λi + θj i } < Cj , j ∈ J

i

max {Ui (exp{λi + φi }) − m ˜ i (φi + λi )} + 

φi ∈R



λi m ˜i −



i

i

 mj i Cj  mj i log − (G ( m ˜ ) − λ m ˜ ) − Ui (eλi ). i i i i mj eλi i

Ui (eλi )

i

In the second equality we collected terms and substituted φi = −φi for i ∈ I. In the third equality we applied (27) to the first maximisation and the user problem (22) to the second maximisation. From this, the Gärtner–Ellis theorem [4, p. 44] proves that, for all closed sets I E ⊂ RK + × R+ , 1 (c) lim sup log P˜ c→∞ c



M (c) M˜ , c c

(c) 

 ∈E

 ≤−

inf

(m,m)∈E ˜

βG,λ (m, m) ˜ −



 λi

Ui (e ) . (35)

i

 In particular, we are interested in the closed set E¯ = {(m, m) ˜ : j ∈i mj i = mi , i ∈ I}. Note I and the sequence σ (c) ∈ RI , c ∈ N, is such that cm + σ (c) ∈ ZI , and defining that, if m ∈ R + + +  (c) (c) ¯ So we may apply lower bound (34) to E¯ σ¯ i = j ∈i σj i , then (cm + σ (c) , cm ¯ + σ¯ (c) ) ∈ E. ¯ Hence, we have and also upper bound (35) to this choice of E.    1 (c)  (c) (c) ∗ ˜ ˜ lim log P Mj i = Mi , i ∈ I = −βG − Ui (eλi ). (36) c→∞ c j ∈i

i

Put otherwise, we have, for the normalising constant BG(c) , lim

c→∞

1 ∗ log BG(c) = −βG . c

(37)

From (33), combining (36) with the large deviations upper bound (35), for all closed sets  ¯ we have D ∈ RK ¯ : m ∈ D} ⊂ E, + , letting D = {(m, m)  (c)  1 M log P(c) ∈D c c→∞ c   (c) ˜ (c)     1 M 1 M (c) (c) (c) ∈ D  − log P˜ log P˜ , Mj i = M˜ i , i ∈ I = lim sup c c c c c→∞

lim sup

j

∗ ≤ − inf βG (m) + βG . m∈D

This proves the large deviations upper bound for P(c) . The lower bound follows similarly by combining (36) with lower bound (34).

Utility optimization in queueing networks

85

5.3. Duality between state and flow An important phenomenon we find from our large deviation analysis is that the limiting state of our queueing system and the limiting flow through our queueing system are dual. We demonstrate here that the dual form of the optimization problem (31)–(32) found in our large deviations analysis is exactly the system problem (1)–(3). Theorem 3. We have ∗ βG =



min

I m∈RK ¯ + , m∈R +



 i∈I

= max

∈RI+

{(j,i)∈K : mj >0}

Gi (m ¯ i) 

mj i log

(subject to

Ui (i )



j ∈i

(subject to

mj i Cj mj mj i = m ¯ i , i ∈ I) 

{i : j ∈i} i

≤ Cj , j ∈ J).

(38) (39)

i∈I

I ∗ I Moreover, the vector (m∗ , m ¯ ∗ ) ∈ RK + × R+ optimises (38) and  ∈ R+ optimises (39) if and only if   m∗j i = m ¯ ∗i for all i ∈ I, ∗i ≤ Cj for all j ∈ J, j ∈i

{i : j ∈i}

m∗j ∗i = m∗j i Cj e

Gi (m ¯ ∗i )

for all (j, i) ∈ K,

= ∗i for all i ∈ I.

(40) (41)

Here Gi is the derivative of the function Gi . Proof. Note that the Lagrangian of optimization problem (38) with Lagrange multipliers λ = (λi : i ∈ I) is exactly βG,λ defined in (30). Minimising this Lagrangian we have      mj i Cj  min ¯i − βG,λ (m, m) ¯ = min mj i log − Gi (m) ¯ + λi m mj i I m,m ¯ mj m∈RK ¯ + , m∈R + ji i∈I i j ∈i

  mj i Cj = min − mj i log max {Gi (m ¯ i ) − λi m ¯ i} m ¯ i >0 mj eλi m∈RK + ji i  ⎧ Ui (eλi ) if eλi ≤ Cj , ⎨ = (42) i {i : j ∈i} ⎩ −∞ otherwise. In the final equality we used Proposition 4(b) and definition (23). Thus, the dual of optimization problem (38) is   max Ui (eλi ) subject to eλi ≤ Cj , j ∈ J. λ∈RI

i∈I

{i : j ∈i}

By the strong duality of optimization problem (38) and (39), expressions (38) and (39) are equal. Now we demonstrate the only if part of the equivalence using (41). Suppose that ∗ optimises (39). We now consider how our Lagrangian behaves for λ = (log ∗i : i ∈ I). From (42) we

86

N. S. WALTON

see that (m∗ , m ¯ ∗ ) must solve ¯ i) − m ¯ i log ∗i } = −Ui (λ∗i ), min {Gi (m

 mj i mj i Cj min mj = 0, log {m∈R : mj >0} mj mj ∗i m ¯ i >0

i ∈ I,

(43)

j ∈ J.

(44)

{i : j ∈i}





From (43) we see that eGi (m¯ i ) = ∗i . We now consider (44). If m∗j = 0 then (44) is satisfied and so is (40). If m∗j > 0 then, given the relative entropy result (26), (44) can only hold if  ∗ ∗ {i : j ∈i} i = Cj and mj i /mj = i /Cj for all i ∈ I such that j ∈ i. Thus, both (40) and (41) hold. Conversely, if (40) and (41) hold, then substituting m∗ and m ¯ ∗ into the objective function of optimization problem (38) gives 

m∗j i log

m∗j i Cj m∗j

(j,i)∈K, m∗j >0



 i∈I

Gi (m ¯ ∗i ) =

 i∈I

m ¯ ∗i log ∗i −



Gi (m ¯ ∗i ) =

i∈I



Ui (∗i ).

i∈I

In the final equality, the Legendre–Fenchel transform expression, (23). Thus, m ¯ ∗i  we used ∗ ∗ attains the value i Ui (i ) for  feasible and, thus, by the Lagrangian sufficiency theorem, our solutions are optimal for (38) and (39). 5.4. Most likely state and convergence of throughput We now study the most likely behaviour of our stationary sequence of queueing systems M (c) /c, c ∈ N. Section 5.2 suggests that our sequence of queueing systems implicitly solves the system problem (1)–(3). This section formalizes this assertion. We show that the sequence of stationary queueing systems M (c) /c, c ∈ N, concentrates on the solutions of the primal optimization problem (31)–(32). From this, we show that the stationary rate which packets traverse the network converges to the allocation, solving the system problem. We define the manifold by ∗  ¯ i ) = log ∗i , i ∈ I}, M = {m ∈ RK + : mj i Cj = mj i , (j, i) ∈ K, Gi (m

where (∗i : i ∈ I) is the optimal solution to the system problem (1)–(3). From Theorem 3 we know that M is the set of solutions to the primal optimization problem (31)–(32). The stationary sequence of queues M (c) /c, c ∈ N, considered in Section 5.2 converges in probability to the set of solutions M. Theorem 4. We have

 P

(c)

 (c)   M    inf − m ≥ ε → 0 as c → ∞. m∈M  c

 Proof. For ε > 0, let Mε = {m ∈ RK + : inf m ∈M m − m < ε}. As M is closed and compact,  mj i Cj ∗ := min mj i log βG,ε K I mj m∈R+ , m∈R+ {(j,i)∈K : mj >0}   − Gi (m ¯ i) (subject to m ∈ / Mε , j ∈i mj i = m ¯ i , i ∈ I) i ∗ > βG ,

Utility optimization in queueing networks

87

∗ is given by (31)–(32). Thus, by Theorem 2, for all ε > 0, where βG  (c)    M  1  ≥ ε ≤ −β ∗ + β ∗ . lim sup log P(c) inf  − m G,ε G  m∈M  c c→∞ c ∗ − β ∗ ), eventually as c → ∞, Thus, for all ε ∈ (0, βG,ε G  (c)    M  (c) ∗ ∗   inf − m ≥ ε ≤ exp{−c(βG,ε − βG ) + cε  } → 0 P m∈M  c

as c → ∞.

The stationary throughput of route-i packets in our queueing system can be expressed as (c)

i

(c) (c) (c) = E(c) exp{Gi (M¯ i + 1) − Gi (M¯ i )},

i ∈ I.

That is, the stationary rate packets are sent into the queueing network by the ith congestion window when it is at congestion level c. We now show that this rate converges to the solution to the system problem (∗i : i ∈ I). In this sense our sequence of queueing systems implicitly solves the system problem. Theorem 5. We have, for i ∈ I, (c)

i

→ ∗i as c → ∞.

Proof. We first describe a modification of measure P(c) that will be useful. For fixed i ∈ I, (c) let P˘ denote the stationary distribution of a queueing system defined by the same rates as (c) (c) ˘ (c) (m P , except that the ith congestion window is defined by G ¯ i ) = Gi (m ¯ i + 1). Observe i K that, for all m ∈ Z+ , E(c) [exp{Gi (M¯ i + 1) − Gi (M¯ i )} 1[M (c) = m]]   1 1 G˘ r (m¯ r ) mj = e mj r : r j C mj BG j (c)

(c)

(c)

(c)

j ∈I

=

r∈I

BG˘ (c) (c) (c) P˘ (M = m). BG(c)

(45)

(c) (c) ˘ (c) corresponds to taking d˘ (c) = ¯ i ) = Gi (m ¯ i /c + di /c); thus, G Also, by definition, Gi (m i i (c) (c) di + 1. The precise values of the bounded sequence {di }c∈N do not determine any of the large (c) deviations behaviour of P(c) ; thus, both P(c) and P˘ exhibit exactly the same large deviations behaviour. Hence, given (37) and Theorem 2, we have  (c)    M  BG˘ (c) 1 (c)   ˘ lim log inf = 0, lim P − m ≥ ε = 0. (46) c→∞ c c→∞ m∈M  c BG(c)

¯ ∗ ) be an optimal solution to the primal optimization problem (31)–(32). By Now let (m∗ , m assumption, Gi is differentiable with a continuous derivative at m ¯ ∗i . Thus, by the mean value   ¯ i > 0 with theorem, for all ε > 0, there exist a ε > 0 and c ∈ N such that, for all c > c and m |m ¯i −m ¯ ∗i | ≤ J ε, we have 



| exp{Gi (m ¯ i + 1) − Gi (m ¯ i )} − eGi (m¯ i ) |  

(c) (c)   ¯ i + 1/c + di /c) − Gi (m ¯ i + di /c) Gi (m Gi (m ¯ ∗i )   −e =  exp  1/c  ≤ε. (c)

(c)

88

N. S. WALTON

We can now show that, eventually as c → ∞, |i − ∗i | (c)

 ∗ (c) (c) (c) (c) ≤ E | exp{Gi (M¯ i + 1) − Gi (M¯ i )} − eGi (m¯ i ) |      ¯ (c)  ¯ (c)      (c)  Mi ∗ Gi (m ¯ ∗i ) (c)  Mi ∗ P ¯ i  < Jε + e ¯ i  ≥ Jε ≤ε P  c −m  c −m    ¯ (c)  M (c) (c) (c) (c) + E(c) exp{Gi (M¯ i + 1) − Gi (M¯ i )} 1  i − m ¯ ∗i  ≥ J ε c  (c)    M   ∗ − m ≤ ε + eGi (m¯ i ) P(c) inf  ≥ε m∈M  c  (c)    M  BG˘ (c) (c)   ˘ P inf − m ≥ ε + m∈M  c BG(c) 





∗ ∗ ∗ ∗ ≤ ε + eGi (m¯ i ) exp{−c(βG,ε − βG ) + cε  } + ecε exp{−c(βG,ε − βG ) + cε  }

→ ε

as c → ∞.

In the second inequality we used substitution (45), and in the third inequality we applied (46) ∗ − β ∗ . As ε  is arbitrary, the result holds. and let 2ε  < βG,ε G 6. Conclusion Previous work has considered the solution of the system problem by analysing differential equations. In this paper we have shown that this same notion of utility optimization can be solved by considering queueing networks with end-to-end control. This leads us to consider different interpretations of Kelly’s decomposition results where pricing is determined by delay. This work emphasises the duality between the flow through a network and its state, and also emphasises a wide variety of fairness that are provably achievable by end-to-end control. Acknowledgement I would like to thank my PhD supervisor Frank Kelly for his continued support and insight, which has encouraged me to write this paper. References [1] Asmussen, S. (2003). Applied Probability and Queues (Appl. Math. 51), 2nd edn. Springer, New York. [2] Bonald, T. and Massoulié, L. (2001). Impact of fairness on internet performance. In ACM SIGMETRICS Performance Evaluation Review (Proc. SIGMETRICS 2001), Association for Computing Machinery, New York, pp. 82–91. [3] Bonald, T. and Proutière, A. (2004). On performance bounds for balanced fairness. Performance Evaluation 55, 25–50. [4] Dembo, A. and Zeitouni, O. (1998). Large Deviations Techniques and Applications (Appl. Math. 38), 2nd edn. Springer, New York. [5] Eryilmaz, A. and Srikant, R. (2007). Fair resource allocation in wireless networks using queue-length-based scheduling and congestion control. IEEE/ACM Trans. Networking 15, 1333–1344. [6] Ganesh, A., O’Connell, N. and Wischik, D. (2004). Big Queues (Lecture Notes Math. 1838). Springer, Berlin. [7] Johari, R. and Tan, D. K. H. (2001). End-to-end congestion control for the internet: delays and stability. IEEE/ACM Trans. Networking 9, 818–832. [8] Kelly, F. P. (1979). Reversibility and Stochastic Networks. John Wiley, Chicester.

Utility optimization in queueing networks

89

[9] Kelly, F. P. (1982). Networks of quasireversible nodes. In Applied Probability—Computer Science: the Interface, Vol. 1, Birkhäuser, Boston, MA, pp. 3–29. [10] Kelly, F. P. (1989). On a class of approximations for closed queueing networks. Queueing Systems 4, 69–76. [11] Kelly, F. P. (1997). Charging and rate control for elastic traffic. Europ. Trans. Telecommun. 8, 33–37. [12] Kelly, F. P. (2003). Fairness and stability of end-to-end congestion control. Europ. J. Control 9, 159–176. [13] Kelly, F. P., Massoulié, L. and Walton, N. S. (2009). Resource pooling in congested networks: proportional fairness and product form. Queueing Systems 63, 165–194. [14] Kelly, F., Maulloo, A. and Tan, D. (1998). Rate control in communication networks: shadow prices, proportional fairness and stability. J. Operat. Res. Soc. 49, 237–252. [15] Kunniyur, S. S. and Srikant, R. (2003). Stable, scalable, fair congestion control and AQM schemes that achieve high utilization in the internet. IEEE Trans. Automatic Control 48, 2024–2029. [16] Massoulié, L. and Roberts, J. W. (1998). Bandwidth sharing and admission control for elastic traffic. Telecommun. Systems 15, 185–201. [17] Massoulié, L. and Roberts, J. (1999). Bandwidth sharing: objectives and algorithms. IEEE/ACM Trans. Networking 10, 320–328. [18] Mo, J. and Walrand, J. (2000). Fair end-to-end window-based congestion control. IEEE/ACM Trans. Networking 8, 556–567. [19] Pittel, B. (1979). Closed exponential networks of queues with saturation: the Jackson-type stationary distribution and its asymptotic analysis. Math. Operat. Res. 4, 357–378. [20] Schweitzer, P. J. (1979). Approximate analysis of multiclass closed networks of queues. In Proc. Intern. Conf. Stochastic Control and Optimization, pp. 25–29. [21] Srikant, R. (2004). The Mathematics of Internet Congestion Control. Birkhäuser, Boston, MA. [22] Stolyar, A. L. (2005). Maximizing queueing network utility subject to stability: greedy primal-dual algorithm. Queueing Systems 50, 401–457. [23] Vojnovic, M., Le Boudec, J.-Y. and Boutremans, C. (2000). Global fairness of additive-increase and multiplicative-decrease with heterogeneous round-trip times. In Proc. INFOCOM 2000 (March 2000), pp. 1303–1312. [24] Walton, N. S. (2009). Proportional fairness and its relationship with multi-class queueing networks. Ann. Appl. Prob. 19, 2301–2333.

utility optimization in congested queueing networks

In this asymptotic regime, the service capacity of the network remains ... routes (1) subject to the network's capacity constraints (2). But, the utility preferences of ...

232KB Sizes 0 Downloads 192 Views

Recommend Documents

Resource pooling in congested networks ... - Semantic Scholar
we postulate the limiting form of the stationary distribution, by comparison with several variants of the fairness ... these results suggest an approximation for the mean transfer time of a file in a network operating with multi-path ..... j ∈ J th

Resource pooling in congested networks: proportional ...
Resource pooling in congested networks: ... A network. In general. (N. Laws '90, Kang, Kelly, Lee, Williams '09) .... Total number in system should be Erlang(6).

Closed queueing networks under congestion: non ...
Complex systems such as communication and computer networks are composed ..... defined in Bramson [7], called head-of-the-line processor sharing networks, ...

Bicriteria Optimization in Multi-Hop Wireless Networks: Characterizing ...
1. Bicriteria Optimization in Multi-Hop. Wireless Networks: Characterizing the ... while meeting certain service requirements (e.g., energy- efficient scheduling ...

Recycling In IEEE 802.16 Networks, Bandwidth Optimization by Using ...
Worldwide Interoperability for Microwave Access (WiMAX), based on IEEE 802.16 standard standards [1] [2], is designed to facilitate services with high transmission rates for data and multimedia applications in metropolitan areas. The physical (PHY) a

PROBABILITY AND QUEUEING THEORY_NoRestriction.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. PROBABILITY ...

application for utility service - Sign in
CONNECTION DATE (AT LEAST 1 BUSINESS DAY FROM APPLICATION: ... UTILITY CONTACT PERSON AND PHONE NUMBER IF DIFFERENT FROM ...

A New Congested Flowgate Ranking Strategy In MISO ...
That is, EPB is the upper bound or over-estimation of APB. B. Annual Total EPB. Definition 1 defines the calculation of hourly EPB. For ranking purpose, the hourly EPB needs to be aggregated to annual total EPB. By definition, the annual total EPB sh

Optimization in
Library of Congress Cataloging in Publication Data. Đata not available .... sumption and labor supply, firms” production, and governments' policies. But all ...

Capacity Limit of Queueing Timing Channel in Shared ...
VNs inevitably share underlying network infrastructure, it is possible to .... packet arrival rate does not exceed the service rate (which is one). Furthermore ...

Design Optimization of Vehicle Control Networks
Compared to the case of a conventional data network which typically considers ...... best swapping of tasks between ECUs needs to be found. This ..... London, UK: .... Conference, the IEEE Symposium on Personal, Indoor, Mobile, and Radio.

TCP Optimization for Wireless Networks | F5 Solution Profile
communications service providers (CSPs) boost network efficiency and deliver ... and a significant point of network bottleneck, optimizing the RAN is likely one of.

Price-cap regulation of congested airports - EBSCOhost
Jan 19, 2011 - H. Yang, A. Zhang welfare maximization. As a result, price regulations may be called upon to contain market power of an airport, which has the ...

Interpreting Utility Patent Claims
Jul 11, 2016 - The diagram below depicts the scope that may be available ... oppositions, trademark cancellations and domain name disputes; and preparing.

Utility Belt
Manage existing AdWords campaigns. 4. Analyse trends using the performance graph. 5. Use the keywords tab to find data fast. 6. Bid changes are now easier.

Utility Belt
Manage existing AdWords campaigns. 4. Analyse trends using the performance graph. 5. Use the keywords tab to find data fast. 6. Bid changes are now easier.

Interpreting Utility Patent Claims
Jul 11, 2016 - other patents within the invention's technology field. An Example of ..... consulting information such as dictionaries, technical trea- tises, other ...

Jobshop-like Queueing Systems
For more information about JSTOR, please contact [email protected]. INFORMS ... center on his routing, remains there until his service there is completed, then.

Maximizing user utility in video streaming applications - IEEE Xplore
IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL. 13, NO. 2, FEBRUARY 2003. 141. Maximizing User Utility in Video.