Page 1

LIFO-Backpressure Achieves Near Optimal

Utility-Delay Tradeoff

Longbo Huang, Scott Moeller, Michael J. Neely, Bhaskar Krishnamachari

Abstract—There has been considerable recent work developing

a new stochastic network utility maximization framework using

Backpressure algorithms, also known as MaxWeight. A key open

problem has been the development of utility-optimal algorithms

that are also delay efficient. In this paper, we show that the

Backpressure algorithm, when combined with the LIFO queueing

discipline (called LIFO-Backpressure), is able to achieve a utility

that is within O(1/V ) of the optimal value for any scalar

V ≥ 1, while maintaining an average delay of O([log(V )]2)

for all but a tiny fraction of the network traffic. This result

holds for general stochastic network optimization problems and

general Markovian dynamics. Remarkably, the performance of

LIFO-Backpressure can be achieved by simply changing the

queueing discipline; it requires no other modifications of the

original Backpressure algorithm. We validate the results through

empirical measurements from a sensor network testbed, which

show good match between theory and practice.

Index Terms—Queueing, Dynamic Control, LIFO scheduling,

Lyapunov analysis, Stochastic Optimization

I. INTRODUCTION

Recent developments in stochastic network optimization

theory have yielded a very general framework that solves a

large class of networking problems of the following form: We

are given a discrete time stochastic network. The network state,

which describes current realization of the underlying network

randomness, such as the network channel condition, is time

varying according to some probability law. A network con-

troller performs some action based on the observed network

state at every time slot. The chosen action incurs a cost,1

but also serves some amount of traffic and possibly generates

new traffic for the network. This traffic causes congestion, and

thus leads to backlogs at nodes in the network. The goal of the

controller is to minimize its time average cost subject to the

constraint that the time average total backlog in the network

be kept finite.

This general setting models a large class of networking

problems ranging from traffic routing [1], flow utility max-

imization [2], network pricing [3] to cognitive radio applica-

tions [4]. Also, many techniques have also been applied to

this problem (see [5] for a survey). Among the approaches

Longbo Huang, Scott Moeller, Michael J. Neely, and Bhaskar Krishna-

machari (emails: {longbohu, smoeller, mjneely, bkrishna}@usc.edu) are with

the Department of Electrical Engineering, University of Southern California,

Los Angeles, CA 90089, USA.

This material is supported in part under one or more of the following

grants: DARPA IT-MANET W911NF-07-0028, NSF CAREER CCF-0747525,

and continuing through participation in the Network Science Collaborative

Technology Alliance sponsored by the U.S. Army Research Laboratory.

1Since cost minimization is mathematically equivalent to utility maximiza-

tion, below we will use cost and utility interchangeably

that have been adopted, the family of Backpressure algorithms

[6] are recently receiving much attention due to their provable

performance guarantees, robustness to stochastic network con-

ditions and, most importantly, their ability to achieve the de-

sired performance without requiring any statistical knowledge

of the underlying randomness in the network.

Most prior performance results for Backpressure are given

in the following [O(1/V ),O(V )] utility-delay tradeoff form

[6]: Backpressure is able to achieve a utility that is within

O(1/V ) of the optimal utility for any scalar V ≥ 1, while

guaranteeing a average network delay that is O(V ). Although

these results provide strong theoretical guarantees for the

algorithms, the network delay can actually be unsatisfying

when we achieve a utility that is very close to the optimal,

i.e., when V is large.

There have been previous works trying to develop algo-

rithms that can achieve better utility-delay tradeoffs. Previous

works [7] and [8] show improved tradeoffs are possible

for single-hop networks with certain structure, and develops

optimal [O(1/V ),O(log(V ))]and [O(1/V ),O(√V )] utility-

delay tradeoffs. However, the algorithms are different from

basic Backpressure and require knowledge of an “epsilon”

parameter that measures distance to a performance region

boundary. Work [9] uses a completely different analytical

technique to show that similar poly-logarithmic tradeoffs, i.e.,

[O(1/V ),O([log(V )]2)], are possible by carefully modify-

ing the actions taken by the basic Backpressure algorithms.

However, the algorithm requires a pre-determined learning

phase, which adds additional complexity to the implemen-

tation. The current work, following the line of analysis in

[9], instead shows that similar poly-logarithmic tradeoffs,

i.e., [O(1/V ),O([log(V )]2)], can be achieved by the orig-

inal Backpressure algorithm by simply modifying the ser-

vice discipline from First-in-First-Out (FIFO) to Last-In-First-

Out (LIFO) (called LIFO-Backpressure below). This is a

remarkable feature that distinguishes LIFO-Backpressure from

previous algorithms in [7] [8] [9], and provides a deeper

understanding of backpressure itself, and the role of queue

backlogs as Lagrange multipliers (see also [2] [9]). However,

this performance improvement is not for free: We must drop

a small fraction of packets in order to dramatically improve

delay for the remaining ones. We prove that as the V parameter

is increased, the fraction of dropped packets quickly converges

to zero, while maintaining O(1/V ) close-to-optimal utilitiy

and O([log(V )]2) average backlog. This provides an analytical

justification for experimental observations in [10] that shows a

related LIFO-Backpressure rule serves up to 98% of the traffic

with delay that is improved by 2 orders of magnitude.

arXiv:1008.4895v2 [math.OC] 3 Apr 2011

Page 2

2

LIFO-Backpressure was proposed in recent empirical work

[10]. The authors developed a practical implementation of

backpressure routing and showed experimentally that applying

LIFO queuing discipline drastically improves average packet

delay, but did not provide theoretical guarantees. Another

notable recent work providing an alternative delay solution is

[11], which describes a novel backpressure-based per-packet

randomized routing framework that runs atop the shadow

queue structure of [12] while minimizing hop count as ex-

plored in [13]. Their techniques reduce delay drastically and

eliminates the per-destination queue complexity, but does not

provide O([log(V )]2) average delay guarantees.

Our analysisof the delay

Backpressure is based on the recent “exponential attraction”

result developed in [9]. The proof idea can be intuitively

explained by Fig. 1, which depicts a simulated backlog process

of a single queue system with unit packet size under Backpres-

sure. The left figure demonstrates the “exponential attraction”

performanceof LIFO-

0 10002000 300040005000

t

60007000 80009000 10000

0

!*

V

O([log(V)]2)

" (V)

!"#$%&'()*+(

,-./%0

,-1$2

!&'(

344/56#

,78789:/;8

Fig. 1.The LIFO-Backpressure Idea

result in [9], which states that queue sizes under Backpressure

deviate from some fixed point with probability that decreases

exponentially in the deviation distance. Hence the queue size

will mostly fluctuate within the interval [QLow,QHigh] which

can be shown to be of O([log(V )]2) size. This result holds

under both FIFO and LIFO, as they result in the same queue

process. Now suppose LIFO is used in this queue. Then from

the right figure, we see that most of the packets will arrive at

the queue when the queue size is between QLowand QHigh,

and these new packets will always be placed on the top of

the queue due to the LIFO discipline. Most packets thus enter

and leave the queue when the queue size is between QLowand

QHigh. Therefore, these packets “see” a queue with average

size no more than QHigh−QLow= O([log(V )]2). Now let λ

be the packet arrival rate into the queue, and let˜λ be the

arrival rate of packets entering when the queue size is in

[QLow,QHigh] and that eventually depart. Because packets

always occupy the same buffer slot under LIFO, we see that

these packets can occupy at most QHigh− QLow+ δmax

buffer slots, ranging from QLow to QHigh+ δmax, where

δmax= Θ(1) is the maximum number of packets that can en-

ter the queue at any time. We can now apply Little’s Theorem

[14] to the buffer slots in the interval [QLow,QHigh+δmax],

and we see that average delay for these packets that arrive

when the queue size is in [QLow,QHigh] satisfies:

D ≤QHigh− QLow+ δmax

˜λ

=O([log(V )]2)

˜λ

.

(1)

Finally, the exponential attraction result implies that λ ≈˜λ.

Hence for almost all packets entering the queue, the average

delay is D = O([log(V )]2/λ).

This paper is organized as follows. In Section II, we set up

our notations. We then present our system model in Section

III. We provide an example of our network in Section IV. We

review the Backpressure algorithm in Section V. The delay

performance of LIFO-Backpressure is presented in Section VI.

Simulation results are presented in Section VII. We then also

present experimental testbed results in Section VIII. Finally,

we comment on optimizing a function of time averages in

Section IX.

II. NOTATIONS

Here we first set up the notations used in this paper: R

represents the set of real numbers. R+ (or R−) denotes the

set of nonnegative (or non-positive) real numbers. Rn(or Rn

is the set of n dimensional column vectors, with each element

being in R (or R+). bold symbols a and aTrepresent column

vector and its transpose. a ? b means vector a is entrywise

no less than vector b. ||a−b|| is the Euclidean distance of a

and b. 0 and 1 denote column vector with all elements being

0 and 1. [a]+= max[a,0] and log(·) is the natural log.

+)

III. SYSTEM MODEL

In this section, we specify the general network model we

use. We consider a network controller that operates a network

with the goal of minimizing the time average cost, subject

to the queue stability constraint. The network is assumed to

operate in slotted time, i.e., t ∈ {0,1,2,...}. We assume there

are r ≥ 1 queues in the network.

A. Network State

In every slot t, we use S(t) to denote the current net-

work state, which indicates the current network parameters,

such as a vector of channel conditions for each link, or

a collection of other relevant information about the current

network channels and arrivals. We assume that S(t) evolves

according a finite state irreducible and aperiodic Markov chain,

with a total of M different random network states denoted

as S = {s1,s2,...,sM}. Let πsidenote the steady state

probability of being in state si. It is easy to see in this case that

πsi> 0 for all si. The network controller can observe S(t)

at the beginning of every slot t, but the πsiand transition

probabilities are not necessarily known.

B. The Cost, Traffic, and Service

At each time t, after observing S(t) = si, the controller

chooses an action x(t) from a set X(si), i.e., x(t) = x(si)for

some x(si)∈ X(si). The set X(si)is called the feasible action

set for network state siand is assumed to be time-invariant and

compact for all si∈ S. The cost, traffic, and service generated

by the chosen action x(t) = x(si)are as follows:

(a) The chosen action has an associated cost given by the

cost function f(t) = f(si,x(si)) : X(si)?→ R+ (or

X(si)?→ R−in reward maximization problems);

Page 3

3

(b) The amount of traffic generated by the action to

queue j is determined by the traffic function Aj(t) =

Aj(si,x(si)) : X(si)?→ R+, in units of packets;

(c) The amount of service allocated to queue j is given by

the rate function µj(t) = µj(si,x(si)) : X(si)?→ R+, in

units of packets;

Note that Aj(t) includes both the exogenous arrivals from

outside the network to queue j, and the endogenous arrivals

from other queues, i.e., the transmitted packets from other

queues, to queue j. We assume the functions f(si,·), µj(si,·)

and Aj(si,·) are continuous, time-invariant, their magnitudes

are uniformly upper bounded by some constant δmax∈ (0,∞)

for all si, j, and they are known to the network operator. We

also assume that there exists a set of actions {x(si)k}k=1,2,...,∞

with x(si)k∈ X(si)and some variables ϑ(si)

and k with?

πsi

k

for some η > 0 for all j. That is, the stability constraints

are feasible with η-slackness. Thus, there exists a stationary

randomized policy that stabilizes all queues (where ϑ(si)

represents the probability of choosing action x(si)kwhen

S(t) = si) [6].

i=1,...,M

k

≥ 0 for all si

kϑ(si)

k

ϑ(si)

k

= 1 for all si, such that

[Aj(si,x(si)k) − µj(si,x(si)k)]?≤ −η, (2)

?

si

??

k

C. Queueing, Average Cost, and the Stochastic Problem

Let q(t) = (q1(t),...,qr(t))T∈ Rr

the queue backlog vector process of the network, in units of

packets. We assume the following queueing dynamics:

qj(t + 1) = max?qj(t) − µj(t),0?+ Aj(t)

and q(0) = 0. By using (3), we assume that when a queue does

not have enough packets to send, null packets are transmitted.

In this paper, we adopt the following notion of queue stability:

+, t = 0,1,2,... be

∀j,

(3)

E?

r

?

j=1

qj

?? limsup

avto denote the time average cost induced by

an action-choosing policy Π, defined as:

t→∞

1

t

t−1

?

τ=0

r

?

j=1

E?qj(τ)?< ∞.

(4)

We also use fΠ

fΠ

av? limsup

t→∞

1

t

t−1

?

τ=0

E?fΠ(τ)?,

(5)

where fΠ

We call an action-choosing policy feasible if at every time

slot t it only chooses actions from the feasible action set

X(S(t)). We then call a feasible action-choosing policy under

which (4) holds a stable policy, and use f∗

optimal time average cost over all stable policies. In every

slot, the network controller observes the current network state

and chooses a control action, with the goal of minimizing the

time average cost subject to network stability. This goal can

be mathematically stated as: (P1)

the following, we will refer to (P1) as the stochastic problem.

Note that in some network optimization problems, e.g.,

[15], the objective of the network controller is to optimize

a function of a time average metric. In this case, we see

av(τ) is the cost incurred at time τ by policy Π.

avto denote the

min : fΠ

av, s.t.(4). In

max-weight with a control parameter V , there exists some fixed point γ∗= (γ∗

pressure algorithm for utility optimization problems [6].

Backpressure: At every time slot t, observe the current

network state S(t) and the backlog q(t). If S(t) = si, choose

x(si)∈ X(si)that solves the following:

that the Backpressure algorithm and the deterministic problem

presented in the next section can similarly be constructed, but

will be slightly different. We will discuss these problems in

Section IX.

IV. AN EXAMPLE OF OUR MODEL

Here we provide an example to illustrate our model. Con-

sider the 2-queue network in Fig. 2. In every slot, the network

operator decides whether or not to allocate one unit of power

to serve packets at each queue, so as to support all arriving

traffic, i.e., maintain queue stability, with minimum energy

expenditure. We assume the network state S(t), which is

the quadruple (R1(t),R2(t),CH1(t),CH2(t)), evolves ac-

cording to the finite state Markov chain with three states

s1 = (1,1,G,B),s2 = (1,1,G,G), and s3 = (0,0,B,G).

Here Ri(t) denotes the number of exogenous packet arrivals

to queue i at time t, and CHi(t) is the state of channel i.

Ri(t) = x implies that there are x number of packets arriving

at queue i at time t. CHi(t) = G/B means that channel i

has a “Good” or “Bad” state. When a link’s channel state is

“Good”, one unit of power can serve 2 packets over the link,

otherwise it can only serve one. We assume power can be

allocated to both channels without affecting each other.

q1(t)

q2(t)

A1(t)=R1(t)

?1(t) ?2(t)

CH1(t) CH2(t)

R2(t)

Fig. 2.A two queue tandem example.

In this case, we see that there are three possible network

states. At each state si, the action x(si)is a pair (x1,x2),

with xi being the amount of energy spent at queue i,

and (x1,x2) ∈ X(si)= {0/1,0/1}. The cost function is

f(si,x(si)) = x1+ x2, for all si. The network states, the

traffic functions, and the service rate functions are summarized

in Fig. 3. Note here A1(t) = R1(t) is part of S(t) and is inde-

pendent of x(si); while A2(t) = µ1(t)+R2(t) hence depends

on x(si). Also note that A2(t) equals µ1(t) + R2(t) instead

of min[µ1(t),q1(t)]+R2(t) due to our idle fill assumption in

Section III-C.

NETWORK STATE, TRAFFIC AND RATE

On Using LIFO in Max-Weight Scheduling

This note provides a brief summary of the development of using LIFO in max-weight scheduli

(called LIFO scheduling in short) in stochastic network optimization. The idea of using LIFO with t

max-weight algorithm was first proposed in [1].

TABLE I

S(t)

R1(t)R2(t)CH1(t) CH2(t)A1(t)A2(t)µ1(t)µ2(t)

s1

11GB1

2x1+ 12x1

x2

s2

11GG1

2x1+ 12x1

2x2

s3

00BG0

x1

x1

2x2

I. THE STATE OF THE ART - LIFO IN UTILITY MAXIMIZATION

So far, the LIFO scheduling results, either theoretical or experimental, have been focusing on util

V. BACKPRESSURE AND THE DETERMINISTIC PROBLEM

In this section, we first review the Backpressure algorithm

[6] for solving the stochastic problem. Then we define the

deterministic problem and its dual. We first recall the Back-

maximization in networks. The main reason for this is that when we try to optimize a utility over a netwo

one can show, under some mild conditions that can usually be satisfied in practice, that the network backl

vector under the max-weight algorithm is exponentially attracted to some fixed point. Specifically, und

1,...,γ∗

r)T= Θ(V ) su

that the network backlog vector q(t) satisfies the following property in steady state:

Pr{?q(t) − γ∗? > D + m} ≤ e−cm,

(

for some c,D = Θ(1). That is, the network backlog vector size will increase linearly with the V paramet

and it will mostly be within log(V ) distance to γ∗when V is large.

In practice, the FIFO queueing discipline is often used in many networking applications. Therefo

Fig. 3. The traffic and service functions under different states.

Page 4

4

max :

−V f(si,x) +

r

?

j=1

qj(t)?µj(si,x) − Aj(si,x)?(6)

s.t.x ∈ X(si).

Depending on the problem structure, (6) can usually be

decomposed into separate parts that are easier to solve, e.g.,

[3], [4]. Also, when the network state process S(t) is i.i.d., it

has been shown in [6] that,

fBP

av = f∗

av+ O(1/V ),qBP= O(V ),

(7)

where fBP

expected average network backlog size under Backpressure,

respectively. When S(t) is Markovian, [3] and [4] show that

Backpressure achieves an [O(log(V )/V ),O(V )] utility-delay

tradeoff if the queue sizes are deterministically upper bounded

by Θ(V ) for all time. Without this deterministic backlog

bound, it has recently been shown that Backpressure achieves

an [O(? +T?

and T?representing the proximity to the optimal utility value

and the “convergence time” of the Backpressure algorithm

to that proximity [16]. However, there has not been any

formal proof that shows the exact [O(1/V ),O(V )] utility-

delay tradeoff of Backpressure under a Markovian S(t).

We also recall the deterministic problem defined in [9]:

?

s.t.

Aj(x) ?

si

≤ Bj(x) ?

av

and qBPare the expected average cost and the

V),O(V )] tradeoff under Markovian S(t), with ?

min :

F(x) ? V

si

πsif(si,x(si))

(8)

?

πsiAj(si,x(si))

?

si

πsiµj(si,x(si)), ∀j,

x(si)∈ X(si)

∀i = 1,2,...,M,

where πsicorresponds to the steady state probability of S(t) =

siand x = (x(s1),...,x(sM))T. The dual problem of (8) can

be obtained as follows:

max : g(γ),s.t. γ ? 0,

(9)

where g(γ) is called the dual function and is defined as:

?

+γj

g(γ) =inf

x(si)∈X(si)

si

πsi

?

V f(si,x(si))

(10)

?

j

?Aj(si,x(si)) − µj(si,x(si))??

.

Here γ = (γ1,...,γr)Tis the Lagrange multiplier of

(8). It is well known that g(γ) in (10) is concave in the

vector γ, and hence the problem (9) can usually be solved

efficiently, particularly when cost functions and rate functions

are separable over different network components. Below, we

use γ∗

of the problem (9) with the corresponding V .

V= (γ∗

V 1,γ∗

V 2,...,γ∗

V r)Tto denote an optimal solution

VI. PERFORMANCE OF LIFO BACKPRESSURE

In this section, we analyze the performance of Back-

pressure with the LIFO queueing discipline (called LIFO-

Backpressure). The idea of using LIFO under Backpressure

is first proposed in [10], although they did not provide any

theoretical performance guarantee. We will show, under some

mild conditions (to be stated in Theorem 3), that under LIFO-

Backpressure, the time average delay for almost all packets

entering the network is O([log(V )]2) when the utility is

pushed to within O(1/V ) of the optimal value. Note that the

implementation complexity of LIFO-Backpressure is the same

as the original Backpressure, and LIFO-Backpressure only

requires the knowledge of the instantaneous network condi-

tion. This is a remarkable feature that distinguishes it from

the previous algorithms achieving similar poly-logarithmic

tradeoffs in the i.i.d. case, e.g., [7] [8] [9], which all require

knowledge of some implicit network parameters other than the

instant network state. Below, we first provide a simple example

to demonstrate the need for careful treatment of the usage of

LIFO in Backpressure algorithms, and then present a modified

Little’s theorem that will be used for our proof.

A. A simple example on the LIFO delay

Consider a slotted system where two packets arrive at time

0, and one packet periodically arrives every slot thereafter (at

times 1,2,3,...). The system is initially empty and can serve

exactly one packet per slot. The arrival rate λ is clearly 1

packet/slot (so that λ = 1). Further, under either FIFO or

LIFO service, there are always 2 packets in the system, so

Q = 2.

Under FIFO service, the first packet has a delay of 1 and

all packets thereafter have a delay of 2:

WFIFO

1

= 1 , WFIFO

i

= 2 ∀i ∈ {2,3,4,...},

where WFIFO

(WLIFO

i

i

is similarly defined for LIFO). We thus have:

is the delay of the ithpacket under FIFO

W

FIFO?= lim

K→∞

1

K

K

?

i=1

WFIFO

i

= 2.

Thus, λW

indeed holds.

Now consider the same system under LIFO service. We still

have λ = 1, Q = 2. However, in this case the first packet never

departs, while all other packets have a delay equal to 1 slot:

FIFO= 1 × 2 = 2, Q = 2, and so λW

FIFO= Q

WLIFO

1

= ∞ , WLIFO

i

= 1 ∀i ∈ {2,3,4,...}.

Thus, for all integers K > 0:

1

K

K

?

i=1

WLIFO

i

= ∞.

and so W

hand, if we ignore the one packet with infinite delay, we note

that all other packets get a delay of 1 (exactly half the delay

in the FIFO system). Thus, in this example, LIFO service

significantly improves delay for all but the first packet.

For the above LIFO example, it is interesting to note that

if we define˜Q and ˜ W as the average backlog and delay

associated only with those packets that eventually depart, then

we have˜Q = 1,˜ W = 1, and the equation λ˜ W =˜Q indeed

holds. This motivates the theorem in the next subsection,

which considers a time average only over those packets that

eventually depart.

LIFO= ∞. Clearly λW

LIFO?= Q. On the other

Page 5

5

B. A Modified Little’s Theorem for LIFO systems

We now present the modified Little’s theorem. Let B rep-

resent a finite set of buffer locations for a LIFO queueing

system. Let N(t) be the number of arrivals that use a buffer

location within set B up to time t. Let D(t) be the number of

departures from a buffer location within the set B up to time

t. Let Wibe the delay of the ith job to depart from the set

B. Define W as the limsup average delay considering only

those jobs that depart:

W?=limsup

t→∞

1

D(t)

D(t)

?

i=1

Wi.

We then have the following theorem:

Theorem 1: Suppose there is a constant λmin > 0 such

that with probability 1:

liminf

t→∞

N(t)

t

≥ λmin,

Further suppose that limt→∞D(t) = ∞ with probability 1 (so

the number of departures is infinite). Then the average delay

W satisfies:

W?=limsup

t→∞

1

D(t)

D(t)

?

i=1

Wi≤ |B|/λmin,

where |B| is the size of the finite set B.

Proof: See Appendix A.

C. LIFO-Backpressure Proof

We now provide the analysis of LIFO-Backpressure. To

prove our result, we first have the following theorem, which

is the first to show that Backpressure (with either FIFO or

LIFO) achieves the exact [O(1/V ),O(V )] utility-delay trade-

off under a Markovian network state process. It generalizes

the [O(1/V ),O(V )] performance result of Backpressure in

the i.i.d. case in [6].

Theorem 2: Suppose S(t) is a finite state irreducible and

aperiodic Markov chain2and condition (2) holds, Backpres-

sure (with either FIFO or LIFO) achieves the following:

fBP

av = f∗

av+ O(1/V ), qBP= O(V ),

(11)

where fBP

backlog under Backpressure.

Proof: See [17].

Theorem 2 thus shows that LIFO-Backpressure guarantees

an average backlog of O(V ) when pushing the utility to within

O(1/V ) of the optimal value. We now consider the delay

performance of LIFO-Backpressure. For our analysis, we need

the following theorem (which is Theorem 1 in [9]).

Theorem 3: Suppose that γ∗

condition (2) holds, and that the dual function g(γ) satisfies:

av

and qBPare the expected time average cost and

Vis unique, that the slackness

g(γ∗

V) ≥ g(γ) + L||γ∗

V− γ||∀ γ ? 0,

(12)

for some constant L > 0 independent of V . Then un-

der Backpressure with FIFO or LIFO, there exist constants

2In [17], the theorem is proven under more general Markovian S(t)

processes that include the S(t) process assumed here.

D,K,c∗= Θ(1), i.e., all independent of V , such that for any

m ∈ R+,

P(r)(D,Km)

where P(r)(D,Km) is defined:

P(r)(D,Km)

? limsup

t→∞

τ=0

Proof: See [9].

Note that if a steady state distribution exists for q(t), e.g.,

when all queue sizes are integers, then P(r)(D,Km) is indeed

the steady state probability that there exists a queue j whose

queue value deviates from γ∗

In this case, Theorem 3 states that qj(t) deviates from γ∗

Θ(log(V )) distance with probability O(1/V ). Hence when

V is large, qj(t) will mostly be within O(log(V )) distance

from γ∗

very restrictive. The condition (12) can usually be satisfied in

practice when the action space is finite, in which case the dual

function g(γ) is polyhedral (see [9] for more discussions). The

uniqueness of γ∗

utility optimization problems, e.g., [2].

We now present the main result of this paper with respect

to the delay performance of LIFO-Backpressure. Below, the

notion “average arrival rate” is defined as follows: Let Aj(t)

be the number of packets entering queue j at time t. Then the

time average arrival rate of these packets is defined (assuming

it exists): λj = limt→∞

t

we assume that time averages under Backpressure exist with

probability 1. This is a reasonable assumption, and holds

whenever the resulting discrete time Markov chain for the

queue vector q(t) under backpressure is countably infinite

and irreducible. Note that the state space is indeed countably

infinite if we assume packets take integer units. If the system

is also irreducible then the finite average backlog result of

Theorem 2 implies that all states are positive recurrent.

Let D,K,c∗be constants as defined in Theorem 3, and

recall that these are Θ(1) (independent of V ). Assume V ≥ 1,

and define Qj,Highand Qj,Lowas:

≤

c∗e−m,

(13)

(14)

1

t

t−1

?

Pr{∃j,|qj(τ) − γ∗

V j| > D + Km}.

V jby more than D+Km distance.

V jby

V j. Also note that the conditions of Theorem 3 are not

Vcan usually be satisfied in many network

1

?t−1

τ=0Aj(τ). For the theorem,

Qj,High

?=

?=

γ∗

max[γ∗

V j+ D + K[log(V )]2,

V j− D − K[log(V )]2,0].Qj,Low

Define the interval Bj?=[Qj,High,Qj,Low]. The following the-

orem considers the rate and delay of packets that enter when

qj(t) ∈ Bjand that eventually depart.

Theorem 4: Suppose that V ≥ 1, that γ∗

the slackness assumption (2) holds, and that the dual function

g(γ) satisfies:

Vis unique, that

g(γ∗

V) ≥ g(γ) + L||γ∗

V− γ||∀ γ ? 0,

(15)

for some constant L > 0 independent of V . Define D,K,c∗

as in Theorem 3, and define Bjas above. Then for any queue

j with a time average input rate λj> 0, we have under LIFO-

Backpressure that:

Page 6

6

(a) The rate˜λjof packets that both arrive to queue j when

qj(t) ∈ Bjand that eventually depart the queue satisfies:

?

(b) The average delay of these packets is at most Wbound,

where:

Wbound?=[2D + 2K[log(V )]2+ δmax]/˜λj.

λj≥˜λj≥

λj−δmaxc∗

Vlog(V )

?+

.

(16)

This theorem says that the delay of packets that enter when

qj(t) ∈ Bjand that eventually depart is at most O([log(V )]2).

Further, by (16), when V is large, these packets represent the

overwhelming majority, in that the rate of packets not in this

set is at most O(1/Vlog(V )).

Proof: (Theorem 4) Theorem 2 shows that average queue

backlog is finite. Thus, there can be at most a finite number

of packets that enter the queue and never depart, so the rate of

packets arriving that never depart must be 0. It follows that˜λj

is equal to the rate at which packets arrive when qj(t) ∈ Bj.

Define the indicator function 1j(t) to be 1 if qj(t) / ∈ Bj, and

0 else. Define˜λc

j

?=λj−˜λj. Then with probability 1 we get:3

1

t

τ=0

t−1

?

Then using the fact that Aj(t) ≤ δmaxfor all j,t:

E?Aj(t)1j(t)?

≤

Therefore:

?

1

t

τ=0

where we define m?=[log(V )]2, and note that m ≥ 0 because

V ≥ 1. From Theorem 3 we thus have:

0 ≤˜λc

This completes the proof of part (a). Now define

?=[Qj,High+ δmax,Qj,Low]. Since Bj⊂˜ Bj, we see that the

rate of the packets that enter˜ Bj is at least˜λj. Part (b) then

follows from Theorem 1 and the facts that queue j is stable

and that |˜ Bj| ≤ 2D + 2K[log(V )]2+ δmax.

Note that if λj= Θ(1), we see from Theorem 4 that, under

LIFO-Backpressure, the time average delay for almost all

packets going through queue j is only O([log(V )]2). Applying

this argument to all network queues with Θ(1) input rates, we

see that all but a tiny fraction of the traffic entering the network

only experiences a delay of O([log(V )]2). This contrasts with

˜λc

j

= lim

t→∞

t−1

?

Aj(τ)1j(τ)

= lim

t→∞

1

t

τ=0

E?Aj(τ)1j(τ)?.

=

E?Aj(t)|qj(t) / ∈ Bj

δmaxPr(qj(t) / ∈ [Qj,Low,Qj,High]).

?Pr{qj(t) / ∈ Bj)

˜λc

j

≤

δmax lim

t→∞

1

t

t−1

τ=0

t−1

?

Pr(qj(τ) / ∈ [Qj,Low,Qj,High])

≤

δmax lim

t→∞

Pr(|qj(τ) − γ∗

V,j| > D + Km),

j≤ δmaxc∗e−m=δmaxc∗

Vlog(V ).

(17)

˜ Bj =

3The time average expectation is the same as the pure time average by

the Lebesgue Dominated Convergence Theorem, because we assume the pure

time average exists with probability 1, and that 0 ≤ Aj(t) ≤ δmax∀t.

the delay performance result of the usual Backpressure with

FIFO, which states that the time average delay will be Θ(V )

for all packets [9]. Also note that under LIFO-Backpressure,

some packets may stay in the queue for very long time.

This problem can be compensated by introducing certain

coding techniques, e.g., fountain codes [18], into the LIFO-

Backpressure algorithm.

VII. SIMULATION

In this section, we provide simulation results of the LIFO-

Backpressure algorithm. We consider the network shown in

Fig. 4, where we try to support a flow sourced by Node 1

destined for Node 7 with minimum energy consumption.

1

2

3

4

6

5

7

A(t)

(0.4, 3)

(0.2, 4)

(0.5, 3)

(0.4, 3)

(0.3, 4)

(0.4, 3)

(0.4, 3)

(0.3, 4)

(0.5, 4)

Fig. 4.

the rate b obtained with one unit of power when HIGH.

A multihop network. (a,b) represents the HIGH probability a and

We assume that A(t) evolves according to the 2-state

Markov chain in Fig. 5. When the state is HIGH, A(t) = 3,

else A(t) = 0. We assume that the condition of each link

can either be HIGH or LOW at a time. All the links except

link (2,4) and link (6,7) are assumed to be i.i.d. every time

slot, whereas the conditions of link (2,4) and link (6,7)

are assumed to be evolving according to independent 2-state

Markov chains in Fig. 5. Each link’s HIGH probability and

unit power rate at the HIGH state is shown in Fig. 4. The

unit power rates of the links at the LOW state are all assumed

to be 1. We assume that the link states are all independent and

there is no interference. However, each node can only spend

one unit of power per slot to transmit over one outgoing link,

although it can simultaneously receive from multiple incoming

links. The goal is to minimize the time average power while

maintaining network stability.

HIGH LOW

0.3

0.70.7

0.3

Fig. 5.The two state Markov chain with the transition probabilities.

We simulate Backpressure with both LIFO and FIFO for

106slots with V ∈ {20,50,100,200,500}. It can be verified

that the backlog vector converges to a unique attractor as V

increases in this case. The left two plots in Fig. 6 show the

average power consumption and the average backlog under

LIFO-Backpressure. It can be observed that the average power

quickly converges to the optimal value and that the average

backlog grows linearly in V . The right plot of Fig. 6 shows

the percentage of time when there exists a qj whose value

deviates from γ∗

V jby more than 2[log(V )]2. As we can see,

Page 7

7

this percentage is always very small, i.e., between 0.002 and

0.013, showing a good match between the theory and the

simulation results.

0200400600

1.48

1.5

1.52

1.54

1.56

1.58

1.6

1.62

1.64

V

0200400600

0

200

400

600

800

1000

1200

1400

1600

1800

2000

V

0200400 600

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

0.045

0.05

V

Power

Backlog

Deviation

Fig. 6.

network backlog size. RIGHT: percentage of time when ∃ qj such that

|qj− γ∗

LEFT: average network power consumption. MIDDLE: average

V j| > 2[log(V )]2.

Fig. 7 compares the delay statistics of LIFO and FIFO for

more than 99.9% of the packets that leave the system before

the simulation ends, under the cases V = 100 and V = 500.

We see that LIFO not only dramatically reduces the average

packet delay for these packets, but also greatly reduces the

delay for most of these packets. For instance, when V = 500,

under FIFO, almost all packets experience the average delay

around 1220 slots. Whereas under LIFO, the average packet

delay is brought down to 78. Moreover, 52.9% of the packets

only experience delay less than 20 slots, and 90.4% of the

packets experience delay less than 100 slots. Hence most

packets’ delay are reduced by a factor of 12 under LIFO as

compared to that under FIFO!

QLA WITH FIFO VS. QLA WITH LIFO

7

TABLE I

V=100

Case

LIFO

FIFO

Avg. DL

55.4

260.6

% DL < 20

55.0

0

% DL < 50

82.1

0

% DL < 100

91.8

0

V=500

Case

LIFO

FIFO

Avg. DL

78.3

1219.8

% DL < 20

52.9

0

% DL < 50

80.4

0

% DL < 100

90.4

0

VIII. EMPIRICAL VALIDATION

In this section we validate our analysis against empirical

results obtained from the same testbed and Backpressure Col-

lection Protocol (BCP) code developed in [10]. It is important

to note that these experiments are therefore not one-to-one

comparable with the analysis and simulations which we have

previously presented. We note that BCP runs atop the default

CSMA MAC for TinyOS which is not known to be throughput

optimal, that the testbed may not precisely be defined by

a finite state Markovian evolution, and finally that limited

storage availability on real wireless sensor nodes mandates the

introduction of virtual queues to maintain backpressure values

in the presence of data queue overflows.

In order to avoid using very large data buffers, in [10] the

forwarding queue of BCP has been implemented as a floating

queue. The concept of a floating queue is shown in Figure

10, which operates with a finite data queue of size Dmax

residing atop a virtual queue which preserves backpressure

levels. Packets that arrive to a full data queue result in a

data queue discard and the incrementing of the underlying

virtual queue counter. Underflow events (in which a virtual

backlog exists but the data queue is empty) results in null

(see Figure 9). This deployment consisted of Tmote Sky

devices embedded in the 4th floor of Ronald Tutor Hall at

the University of Southern California.

In these experiments, one sink mote (ID 1 in Figure 9)

was designated and the remaining 39 motes sourced traffic

simultaneously, to be collected at the sink. The Tmote Sky

devices were programmed to operate on 802.15.4 channel 26,

selected for the low external interference in this spectrum on

Tutornet. Further, the motes were programmed to transmit

at -15 dBm to provide reasonable interconnectivity. These

experimental settings are identical to those used in [10].

Fig. 10.

queue during overflow, placing the discards within an underlying

virtual queue. Services that cause data queue underflows generate

null packets, reducing the virtual queue size.

experimental settings are identical to those used in [10].

The floating LIFO queues of [10] drop from the data

selected for the low external interference in this spectrum on

Tutornet. Further, the motes were programmed to transmit

at -15 dBm to provide reasonable interconnectivity. These

We vary Dmax over experimentation because the exact

value of Dmaxis not readily apparent in a real system. This

highlights the difficulty faced by techniques requiring explicit

Fig. 7.

that leave the system before simulation ends (more than 99.9%). %DL < a

is the percentage of packets that enter the network and has delay less than a.

Delay statistics under Backpressure with LIFO and FIFO for packets

Fig. 8 also shows the delay for the first 20000 packets that

enter the network in the case when V = 500. We see that under

Backpressure plus LIFO, most of the packets experience very

small delay; while under Backpressure with FIFO, each packet

experiences roughly the average delay.

VIII. EMPIRICAL VALIDATION

In this section we validate our analysis empirically by carry-

ing out new experiments over the same testbed and Backpres-

sure Collection Protocol (BCP) code of [10]. This prior work

did not empirically evaluate the relationship between V , finite

storage availability, packet latency and packet discard rate. We

note that BCP runs atop the default CSMA MAC for TinyOS

which is not known to be throughput optimal, that the testbed

may not precisely be defined by a finite state Markovian

00.20.40.60.8 11.21.4 1.6 1.82

x 104

0

2

4

6

8

10

12

14

!"#$%&$

&'()*$!$+,-$./)('$

0%01

+%01

Fig. 8. Packet Delay under Backpressure with LIFO and FIFO

evolution, and finally that limited storage availability on real

wireless sensor nodes mandates the introduction of virtual

queues to maintain backpressure values in the presence of data

queue overflows.

In order to avoid using very large data buffers, in [10] the

forwarding queue of BCP has been implemented as a floating

queue. The concept of a floating queue is shown in Figure

10, which operates with a finite data queue of size Dmax

residing atop a virtual queue which preserves backpressure

levels. Packets that arrive to a full data queue result in a

data queue discard and the incrementing of the underlying

virtual queue counter. Underflow events (in which a virtual

backlog exists but the data queue is empty) results in null

packet generation, which are filtered and then discarded by

the destination.

Despite these real-world differences, we are able to demon-

strate clear order-equivalent delay gains due to LIFO usage in

BCP in the following experimentation.

Fig. 9.The 40 tMote Sky devices used in experimentation on Tutornet.

A. Testbed and General Setup

To demonstrate the empirical results, we deployed a col-

lection scenario across 40 nodes within the Tutornet testbed

(see Figure 9). This deployment consisted of Tmote Sky

devices embedded in the 4th floor of Ronald Tutor Hall at

the University of Southern California.

In these experiments, one sink mote (ID 1 in Figure 9)

was designated and the remaining 39 motes sourced traffic

simultaneously, to be collected at the sink. The Tmote Sky

devices were programmed to operate on 802.15.4 channel 26,

Page 8

8

Fig. 10.

queue during overflow, placing the discards within an underlying

virtual queue. Services that cause data queue underflows generate

null packets, reducing the virtual queue size.

The floating LIFO queues of [10] drop from the data

We vary Dmax over experimentation. In practice, BCP

defaults to a Dmax setting of 12 packets, the maximum

reasonable resource allocation for a packet forwarding queue

in these highly constrained devices.

B. Experiment Parameters

Experiments consisted of Poisson traffic at 1.0 packets

per second per source for a duration of 20 minutes. This

source load is moderately high, as the boundary of the ca-

pacity region for BCP running on this subset of motes has

previously been documented at 1.6 packets per second per

source [10]. A total of 36 experiments were run using the

standard BCP LIFO queue mechanism, for all combinations

of V ∈ {1,2,3,4,6,8,10,12} and LIFO storage threshold

Dmax∈ {2,4,8,12}. In order to present a delay baseline for

Backpressure we additionally modified the BCP source code

and ran experiments with 32-packet FIFO queues (no floating

queues) for V ∈ {1,2,3}.4

C. Results

Testbed results in Figure 11 provide the system average

packet delay from source to sink over V and Dmax, and

includes 95% confidence intervals. Delay in our FIFO imple-

mentation scales linearly with V, as predicted by the analysis

in [9]. This yields an average delay that grows very rapidly

with V , already greater than 9 seconds per packet for V = 3.

Meanwhile, the LIFO floating queue of BCP performs much

differently. We have plotted a scaled [log(V )]2target, and

note that as Dmaxincreases the average packet delay remains

bounded by Θ([log(V )]2).

These delay gains are only possible as a result of discards

made by the LIFO floating queue mechanism that occur when

the queue size fluctuates beyond the capability of the finite

data queue to smooth. Figure 12 gives the system packet

loss rate of BCP’s LIFO floating queue mechanism over V .

Note that the poly-logarithmic delay performance of Figure

11 is achieved even for data queue size 12, which itself

4These relatively small V values are due to the constraint that the motes

have small data buffers. Using larger V values will cause buffer overflow at

the motes.

Fig. 11.

versus BCP LIFO implementation over various V parameter settings.

System average source to sink packet delay for BCP FIFO

drops at most 5% of traffic at V = 12. We cannot state

conclusively from these results that the drop rate scales like

O(

required in order to observe the predicted drop rate scaling.

Bringing these results back to real-world implications, note

that BCP (which minimizes a penalty function of packet

retransmissions) performs very poorly with V = 0, and was

found to have minimal penalty improvement for V greater

than 2. At this low V value, BCP’s 12-packet forwarding

queue demonstrates zero packet drops in the results presented

here. These experiments, combined with those of [10] suggest

strongly that the drop rate scaling may be inconsequential in

many real world applications.

1

Vc0log(V )). We hypothesize that a larger V value would be

Fig. 12.

various V parameter settings.

System packet loss rate of BCP LIFO implementation over

In order to explore the queue backlog characteristics and

compare with our analysis, Figure 13 presents a histogram

of queue backlog frequency for rear-network-node 38 over

various V settings. This node was observed to have the worst

queue size fluctuations among all thirty-nine sources. For

V = 2, the queue backlog is very sharply distributed and

fluctuates outside the range [11 − 15] only 5.92% of the

Page 9

9

experiment. As V is increased, the queue attraction is evident.

For V = 8 we find that the queue deviates outside the range

[41−54] only 5.41% of the experiment. The queue deviation

is clearly scaling sub-linearly, as a four-fold increase in V

required only a 2.8 fold increase in Dmax for comparable

drop performance.

Fig. 13. Histogram of queue backlog frequency for rear-network-node

38 over various V settings.

IX. OPTIMIZING FUNCTIONS OF TIME AVERAGES

So far we have focused on optimizing time averages of

functions, we now consider the case when the objective of

the network controller is to optimize a function of some

time average metric, e.g., [15]. Specifically, we assume that

the action x(t) at time t incurs some instantaneous network

attribute vector y(t) = y(x(t)) = (y1(t),...,yK(t))T∈ RK

and the objective of the network controller is to minimize

a cost function Cost(y(t)) : RK

represents the time average value of y(t). We assume that

the function Cost(·) is continuous, convex and is component-

wise increasing, and that |yk(x(t))| ≤ δmaxfor all k, x(t). In

this case, we see that the Backpressure algorithm in Section V

cannot be directly applied and the deterministic problem (8)

also needs to be modified.

To tackle this problem using the Backpressure algorithm, we

introduce an auxiliary vector z(t) = (z1(t),...,zK(t))T. We

then define the following virtual queues Hk(t),j = 1,...,K

that evolves as follows:

Hk(t + 1) = max?Hk(t) − yk(t),0?+ zk(t).

These virtual queues are introduced for ensuring that the

average value of yk(t) is no less than the average value of

zk(t). We will then try to maximize the time average of

the function Cost(z(t)), subject to the constraint that the

actual queues qj(t) and the virtual queues Hk(t) must all

be stable. Specifically, the Backpressure algorithm for this

problem works as follows:

+,

+

→ R+,

5where y(t)

(18)

5The case for maximizing a utility function of long term averages can be

treated in a similar way.

Backpressure: At every time slot t, observe the current

network state S(t), and the backlogs q(t) and H(t). If

S(t) = si, do the following:

1) Auxiliary vector: choose the vector z(t) by solving:

min :V Cost(z) +

?

k

Hk(t)zk

s.t.0 ≤ zk≤ δmax.

(19)

2) Action: choose the action x(t) ∈ X(si)that solves:

max :

Hk(t)yk(x) +

?

k

?

j

qj(t)[µj(si,x) − Aj(si,x)]

s.t. x ∈ X(si).

In this case, one can also show that this Backpressure al-

gorithm achieves the [O(1/V ),O(V )] utility-delay tradeoff

under a Markovian S(t) process. We also note that in this

case, the deterministic problem is slightly different. Indeed,

the intuitively formulation will be of the following form:

?

s.t.

Aj(x) ?

si

≤ Bj(x) ?

(20)

min :

F(x) ? V Cost(

si

πsiy(x(si)))

(21)

?

πsiAj(si,x(si))

?

si

πsiµj(si,x(si))

∀j

x(si)∈ X(si)

∀i = 1,2,...,M.

However, the dual problem of this optimization problem is

not separable, i.e., not of the form of (10), unless the function

Cost(·) is linear or if there exists an optimal action that is in

every feasible action set X(si), e.g., [15]. To get rid of this

problem, we introduce the auxiliary vector z = (z1,...,zK)T

and change the problem to:

min :

F(x) ? V Cost(z)

z ?

(22)

s.t.

?

?

si

πsiy(x(si))

Aj(x) ?

si

πsiAj(si,x(si))

≤ Bj(x) ?

?

si

πsiµj(si,x(si))

∀j

x(si)∈ X(si)

∀i = 1,2,...,M.

It can be shown that this modified problem is equivalent to

(21). Now we see that it is indeed due to the non-separable

feature of (21) that we need to introduce the auxiliary vector

z(t) in the Backpressure problem. We also note that the

problem (22) actually has the form of (8). Therefore, all

previous results on (8), e.g., Theorem 3 and 4 will also apply

to problem (22).

APPENDIX A – PROOF OF 1

Here we provide the proof of Theorem 1.

Proof: Consider a sample path for which the liminf

arrival rate is at least λmin and for which we have an

infinite number of departures (this happens with probability

1 by assumption). There must be a non-empty subset of

B consisting of buffer locations that experience an infinite

Page 10

10

number of departures. Call this subset˜B. Now let W(b)

the delay of the ithdeparture from b, let D(b)(t) denote the

number of departures from a buffer slot b ∈˜B up to time t,

and use Q(b)(t) to denote the occupancy of the buffer slot b

at time t. Note that Q(b)(t) is either 0 or 1. For all t ≥ 0, it

can be shown that:

?t

This can be seen from Fig. 14 below.

i

be

D(b)(t)

?

i=1

W(b)

i

≤

0

Q(b)(τ)dτ.

(23)

W1(b) W2(b)W3(b)W4(b)

t

0

Q(b)(t)

1

Fig. 14.

At time t in the figure, we have D(b)(t) = 3.

An illustration of inequality (23) for a particular buffer location b.

Therefore, we have:

?

b∈˜ B

D(b)(t)

?

i=1

W(b)

i

≤

?t

?t

|B|t.

0

?

|˜B|dτ

i∈˜ B

Q(b)(τ)dτ

≤

≤

0

(24)

The left-hand-side of the above inequality is equal to the

sum of all delays of jobs that depart from locations in˜B up to

time t. All other buffer locations (in B but not in˜B) experience

only a finite number of departures. Let J represent an index

set that indexes all of the (finite number) of jobs that depart

from these other locations. Note that the delay Wj for each

job j ∈ J is finite (because, by definition, job j eventually

departs). We thus have:

D(t)

?

i=1

Wi≤

?

b∈˜ B

D(b)(t)

?

i=1

W(b)

i

+

?

j∈J

Wj.

where the inequality is because the second term on the right-

hand-side sums over jobs in J, and these jobs may not have

departed by time t. Combining the above and (24) yields for

all t ≥ 0:

D(t)

?

Dividing by D(t) yields:

i=1

Wi≤ |B|t +

?

j∈J

Wj.

1

D(t)

D(t)

?

i=1

Wi≤

|B|t

D(t)+

1

D(t)

?

j∈J

Wj.

Taking a limsup as t → ∞ yields:

limsup

t→∞

1

D(t)

D(t)

?

i=1

Wi≤ limsup

t→∞

|B|t

D(t),

(25)

where we have used the fact that?

j∈JWjis a finite number,

and D(t) → ∞ as t → ∞, so that:

limsup

t→∞

1

D(t)

?

j∈J

Wj= 0.

Now note that, because each buffer location in B can hold

at most one job, the number of departures D(t) is at least

N(t) − |B|, which is a positive number for sufficiently large

t. Thus:

|B|t

D(t)

t→∞

=limsup

t→∞

≤

Using this in (25) proves the result.

limsup

t→∞

≤

limsup

?

?

|B|t

N(t) − |B|

?

|B|

N(t)/t − |B|/t

?

|B|/λmin.

REFERENCES

[1] L. Tassiulas and A. Ephremides.

queueing systems and scheduling policies for maximum throughput in

multihop radio networks. IEEE Trans. on Automatic Control, vol. 37,

no. 12, pp. 1936-1949, Dec. 1992.

[2] A. Eryilmaz and R. Srikant. Fair resource allocation in wireless networks

using queue-length-based scheduling and congestion control. IEEE/ACM

Trans. Netw., 15(6):1333–1344, 2007.

[3] L. Huang and M. J. Neely. The optimality of two prices: Maximizing

revenue in a stochastic network. Proc. of 45th Annual Allerton Confer-

ence on Communication, Control, and Computing (invited paper), Sept.

2007.

[4] R. Urgaonkar and M. J. Neely. Opportunistic scheduling with reliability

guarantees in cognitive radio networks. IEEE INFOCOM Proceedings,

April 2008.

[5] Y. Yi and M. Chiang. Stochastic network utility maximization: A tribute

to Kelly’s paper published in this journal a decade ago.

Transactions on Telecommunications, vol. 19, no. 4, pp. 421-442, June

2008.

[6] L. Georgiadis, M. J. Neely, and L. Tassiulas. Resource Allocation and

Cross-Layer Control in Wireless Networks. Foundations and Trends in

Networking Vol. 1, no. 1, pp. 1-144, 2006.

[7] M. J. Neely. Super-fast delay tradeoffs for utility optimal fair scheduling

in wireless networks. IEEE Journal on Selected Areas in Communica-

tions (JSAC), Special Issue on Nonlinear Optimization of Communica-

tion Systems, 24(8), Aug. 2006.

[8] M. J. Neely. Optimal energy and delay tradeoffs for multi-user wireless

downlinks. IEEE Transactions on Information Theory vol. 53, no. 9, pp.

3095-3113, Sept. 2007.

[9] L. Huang and M. J. Neely. Delay reduction via Lagrange multipliers

in stochastic network optimization. IEEE Transactions on Automatic

Control, to appear.

[10] S. Moeller, A. Sridharan, B. Krishnamachari, and O. Gnawali. Routing

without routes: The backpressure collection protocol. 9th ACM/IEEE

International Conference on Information Processing in Sensor Networks

(IPSN), 2010.

[11] E. Athanasopoulou, L. X. Bui, T. Ji, R. Srikant, and A. Stolyar.

Backpressure-based packet-by-packet adaptive routing in communica-

tion networks. arXiv:1005.4984v1, May 2010.

[12] L Bui, R Srikant, and A Stolyar. Optimal resource allocation for multi-

cast sessions in multi-hop wireless networks. Philosophical Transactions

of The Royal Society, Series A, pages 2059–2074, Jan 2008.

[13] L. Bui, R. Srikant, and A. Stolyar. Novel architectures and algorithms for

delay reduction in back-pressure scheduling and routing. Proceedings

of IEEE INFOCOM 2009 Mini-Conference, April 2009.

[14] D. P. Bertsekas and R. G. Gallager. Data Networks. Prentice Hall, 1992.

[15] M. J. Neely, E. Modiano, and C. Li. Fairness and optimal stochastic

control for heterogeneous networks.

March 2005.

[16] M. J. Neely. Stability and capacity regions or discrete time queueing

networks. arXiv:1003.3396v1, March 2010.

[17] L. Huang and M. J. Neely.

act [O(1/V ),O(V )] utility-delay tradeoff under Markov dynamics.

arXiv:1008.0200v1, 2010.

[18] M. Mitzenmacher. Digital fountains: A survey and look forward. IEEE

Information Theory Workshop (ITW), San Antonio, Texas, Oct, 2004.

Stability properties of constrained

European

IEEE INFOCOM Proceedings,

Max-weight achieves the ex-