journal version of infocom (2005) [2] and ...mjneely/pdf_papers/neely-fairness...routing, and...

14
JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 1 Fairness and Optimal Stochastic Control for Heterogeneous Networks Michael J. Neely , Eytan Modiano , Chih-Ping Li Abstract—We consider optimal control for general networks with both wireless and wireline components and time varying channels. A dynamic strategy is developed to support all traffic whenever possible, and to make optimally fair decisions about which data to serve when inputs exceed network capacity. The strategy is decoupled into separate algorithms for flow control, routing, and resource allocation, and allows each user to make decisions independent of the actions of others. The combined strategy is shown to yield data rates that are arbitrarily close to the optimal operating point achieved when all network controllers are coordinated and have perfect knowledge of future events. The cost of approaching this fair operating point is an end-to-end delay increase for data that is served by the network. Analysis is performed at the packet level and considers the full effects of queueing. Index Terms— Stochastic Optimization, Queueing Analysis, Multi-Hop Wireless, Distributed Computing, Satellite Networks I. I NTRODUCTION Modern data networks consist of a variety of heterogeneous components, and continue to grow as new applications are developed and new technologies are integrated into the existing communication infrastructure. While network resources are expanding, the demand for these resources is also expanding, and it is often the case that data links are loaded with more traffic than they were designed to handle. In order to provide high speed connectivity for future personal computers, hard- ware devices, wireless units, and sensor systems, it is essential to develop fair networking techniques that take full advantage of all resources and system capabilities. Such techniques must be implemented through simple, localized message passing protocols between neighboring network elements. In this paper, we design a set of decoupled algorithms for resource allocation, routing, and flow control for general networks with both wireless and wireline data links and time varying channels. Specifically, we treat a network with N nodes and L links. The condition of each link at a given time t is described by a link state vector S(t)=(S 1 (t),...,S L (t)), where S l (t) is a parameter characterizing the communication channel for link l. For example, if l is a wireless link, S l (t) may represent the current attenuation factor or noise level. In an unreliable wired link, S l (t) may take values in the two-element set {ON,OFF }, indicating whether link l is available for communication. For simplicity of exposition, we consider a slotted system model with slots normalized Michael J. Neely is with the Department of Electrical Engineering, University of Southern California, Los Angeles, CA 90089 USA (email: [email protected], web: http://www-rcf.usc.edu/mjneely). E. Modiano is with the Laboratory for Information and Decision Systems, Massachusetts Institute of Technology, Cambridge, MA 02139 USA (email: [email protected]). C. Li is with the Department of Electrical Engineering, University of Southern California. 1 2 U n c (t) valve R n c (t) λ n c node n exogenous input to node n A C B 0 3 4 5 6 7 8 9 λ 91 λ 93 λ 48 λ 42 Fig. 1. (a) A heterogeneous network with wireless and wireline data links, and (b) a close-up of one node, illustrating the internal queues and the storage reservoir for exogenous arrivals. to integral units t ∈{0, 1, 2,...}. Channels hold their state for the duration of a timeslot, and potentially change states on slot boundaries. We assume there are a finite number of channel state vectors S. For each S, let Γ S denote the set of link transmission rates available for resource allocation decisions when S(t)= S. In particular, every timeslot t the network controllers are constrained to choosing a transmission rate vector μ(t)=(μ 1 (t),...,μ L (t)) such that μ(t) Γ S(t) (where μ l (t) is the transmit rate over link l and has units of bits/slot). Use of this abstract set of transmission rates Γ S maintains a simple separation between network layer and physical layer concepts, yet is general enough to allow network control to be suited to the unique capabilities of each data link. We assume all sets Γ S are compact. As an example, consider the heterogeneous network of Fig. 1 consisting of three separate groups of links A, B, and C: Set A represents a wireless sensor system that connects to a wired infrastructure through two uplink access points, set B represents the wired data links, and set C represents the two downlink channels of a basestation that transmits to two different users 1 and 2. For a given channel state S, the set of feasible transmission rates Γ S reduces to a product of rates corresponding to the three independent groups: Γ S A S A × Γ B × Γ C S C Set Γ A S A might contain a continuum of link rates associated with the channel interference properties and power allocation options of the sensor nodes, and depends only on the link states S A of these nodes. Set Γ B might contain a single vector (C 1 ,...,C k ) representing the fixed capacities of the k wired links. Set Γ C S C might represent a set of two vectors

Upload: lamngoc

Post on 23-May-2018

214 views

Category:

Documents


1 download

TRANSCRIPT

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 1

Fairness and Optimal Stochastic Controlfor Heterogeneous Networks

Michael J. Neely , Eytan Modiano , Chih-Ping Li

Abstract— We consider optimal control for general networkswith both wireless and wireline components and time varyingchannels. A dynamic strategy is developed to support all trafficwhenever possible, and to make optimally fair decisions aboutwhich data to serve when inputs exceed network capacity. Thestrategy is decoupled into separate algorithms for flow control,routing, and resource allocation, and allows each user to makedecisions independent of the actions of others. The combinedstrategy is shown to yield data rates that are arbitrarily close tothe optimal operating point achieved when all network controllersare coordinated and have perfect knowledge of future events. Thecost of approaching this fair operating point is an end-to-enddelay increase for data that is served by the network. Analysisis performed at the packet level and considers the full effects ofqueueing.

Index Terms— Stochastic Optimization, Queueing Analysis,Multi-Hop Wireless, Distributed Computing, Satellite Networks

I. INTRODUCTION

Modern data networks consist of a variety of heterogeneouscomponents, and continue to grow as new applications aredeveloped and new technologies are integrated into the existingcommunication infrastructure. While network resources areexpanding, the demand for these resources is also expanding,and it is often the case that data links are loaded with moretraffic than they were designed to handle. In order to providehigh speed connectivity for future personal computers, hard-ware devices, wireless units, and sensor systems, it is essentialto develop fair networking techniques that take full advantageof all resources and system capabilities. Such techniques mustbe implemented through simple, localized message passingprotocols between neighboring network elements.

In this paper, we design a set of decoupled algorithmsfor resource allocation, routing, and flow control for generalnetworks with both wireless and wireline data links and timevarying channels. Specifically, we treat a network with Nnodes and L links. The condition of each link at a given time tis described by a link state vector ~S(t) = (S1(t), . . . , SL(t)),where Sl(t) is a parameter characterizing the communicationchannel for link l. For example, if l is a wireless link, Sl(t)may represent the current attenuation factor or noise level.In an unreliable wired link, Sl(t) may take values in thetwo-element set ON, OFF, indicating whether link l isavailable for communication. For simplicity of exposition,we consider a slotted system model with slots normalized

Michael J. Neely is with the Department of Electrical Engineering,University of Southern California, Los Angeles, CA 90089 USA (email:[email protected], web: http://www-rcf.usc.edu/∼mjneely).

E. Modiano is with the Laboratory for Information and Decision Systems,Massachusetts Institute of Technology, Cambridge, MA 02139 USA (email:[email protected]). C. Li is with the Department of Electrical Engineering,University of Southern California.

1

2

Unc(t)

valve

Rnc(t)

λnc

node n

exogenous input to node n

A CB

0

34

5

6

7

8

9

APPENDIX B—PROOF OF THEOREM 2

Proof: Define the Lyapunov function L(U,Z) =∑nc U (c)

n + 1N

∑nc Znc. The drift expression for this function

is given by summing the drift of the U (c)n (t) queues and

the Znc(t) queues using the general formula (16), where thequeueing laws are given by (6) and (26). Omitting arithmetic

details for brevity, we have the following drift expression:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2 − Φ(U(t))

+2∑nc

E

U (c)n (t)Rnc(t) + Ync(t)

Znc(t)N

| U,Z

∑nc

E

2Znc(t)

Nγnc(t)− V hnc(γnc(t)) | U,Z

∑nc

V E hnc(γnc(t)) | U,Z

where we have added and subtracted the optimization metric∑nc V E hnc(γnc(t)) | U,Z in the right hand side of the

above expression. The CLC2 policy is designed to minimize

the third, fourth, and fifth terms on the right hand side

of the above expression over all possible policies. Indeed,

we already know that the routing and resource allocation

policy maximizes Φ(U(t)). The fourth term in the right

hand side is minimized by the strategy (28) that chooses

Rnc(t) (considering the definition of Ync(t) in (25)). The fifthterm is minimized by the strategy (29) that chooses γnc(t)(considering the definition of hnc(γ) given in (27)).For a given ε ∈ (0, µsym), a bound on Φ(U(t)) is given

by Lemma 2 in terms of values (r∗nc(ε) + ε). Now con-

sider the following alternative flow control strategies: Fix

γnc(t) = Rmaxn − r∗nc(ε)

!=γ∗nc(ε) for all slots t. Then, everytimeslot independently admit all new arrivals Anc(t) withprobability pnc = r∗nc(ε)/λnc (this is a valid probability (≤ 1)by problem (21), and the admitted data satisfies the Rmax

n

constraint by the deterministic arrival bound). This yields

E Rnc(t) | U,Z = pncE Anc(t) = r∗nc(ε), and henceE Ync(t) | U,Z = Rmax

n − r∗nc(ε)!=γ∗nc(ε). Plugging these

expectations into the third, fourth, and fifth terms of the above

drift expression maintains the bound and creates many terms

that can be cancelled. The simplified drift expression becomes:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − 2ε

∑nc

U (c)n (t)

+V∑nc

hnc(γ∗nc(ε))− V∑nc

E hnc(γnc(t)) | U,Z

Plugging in the definitions of γ∗nc(ε) and hnc(γ) yields:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − V

∑nc

gnc(r∗nc(ε))

−2ε∑nc

U (c)n (t) + V

∑nc

E gnc(Rmaxn − γnc(t)) | U,Z

The above expression is in the exact form for application of

Lemma 1, and it follows that unfinished work satisfies:∑nc

U (c)n ≤ NB + 2

∑n(Rmax

n )2 + V NGmax

and performance satisfies:∑nc

gnc(Rmaxn − γnc) ≥

∑nc

gnc(r∗nc(ε))

−NB + 2∑

n(Rmaxn )2

V

However, it can similarly be shown that all Znc(t) queuesare stable, and hence rnc ≥ Rmax

n − γnc must hold [recall

discussion after (27)]. The result of Theorem 2 follows by

optimizing the performance bounds over 0 < ε < µsym in a

manner similar to the proof of Theorem 1.

λ91

λ93

λ48

λ42

REFERENCES

[1] M. J. Neely. Dynamic Power Allocation and Routing for Satellite

and Wireless Networks with Time Varying Channels. PhD thesis,Massachusetts Institute of Technology, LIDS, 2003.

[2] J. W. Lee, R. R. Mazumdar, and N. B. Shroff. Downlink powerallocation for multi-class cdma wireless networks. IEEE Proceedings ofINFOCOM, 2002.

[3] R. Berry, P. Liu, and M. Honig. Design and analysis of downlinkutility-based schedulers. Proceedings of the 40th Allerton Conference

on Communication, Control, and Computing, Oct. 2002.[4] P. Marbach and R. Berry. Downlink resource allocation and pricing for

wireless networks. IEEE Proc. of INFOCOM, 2002.[5] D. Julian, M. Chiang, D. O’Neill, and S. Boyd. Qos and fairness

constrained convex optimization of resource allocation for wirelesscellular and ad hoc networks. Proc. INFOCOM, 2002.

[6] L. Xiao, M. Johansson, and S. Boyd. Simultaneous routing and resourceallocation for wireless networks. Proc. of the 39th Annual Allerton Conf.on Comm., Control, Comput., Oct. 2001.

[7] B. Krishnamachari and F. Ordonez. Analysis of energy-efficient, fairrouting in wireless sensor networks through non-linear optimization.IEEE Vehicular Technology Conference, Oct. 2003.

[8] P. Marbach. Priority service and max-min fairness. IEEE Proceedings

of INFOCOM, 2002.[9] F.P. Kelly, A.Maulloo, and D. Tan. Rate control for communication

networks: Shadow prices, proportional fairness, and stability. Journ. ofthe Operational Res. Society, 49, p.237-252, 1998.

[10] F. Kelly. Charging and rate control for elastic traffic. European

Transactions on Telecommunications, 1997.[11] R. Johari and J. N. Tsitsiklis. Network resource allocation and a

congestion game. Submitted to Math. of Oper. Research, 2003.[12] S. H. Low. A duality model of tcp and queue management algorithms.

IEEE Trans. on Networking, Vol. 11(4), August 2003.[13] X. Liu, E. K. P. Chong, and N. B. Shroff. A framework for opportunistic

scheduling in wireless networks. Computer Networks, vol. 41, no. 4, pp.451-474, March 2003.

[14] R. Cruz and A. Santhanam. Optimal routing, link scheduling, andpower control in multi-hop wireless networks. IEEE Proceedings of

INFOCOM, April 2003.[15] L. Tassiulas and A. Ephremides. Stability properties of constrained

queueing systems and scheduling policies for maximum throughput inmultihop radio networks. IEEE Transacations on Automatic Control,Vol. 37, no. 12, Dec. 1992.

[16] M. J. Neely, E. Modiano, and C. E Rohrs. Dynamic power allocation androuting for time varying wireless networks. IEEE Journal on Selected

Areas in Communications, January 2005.[17] M. J. Neely, E. Modiano, and C. E. Rohrs. Power allocation and routing

in multi-beam satellites with time varying channels. IEEE Transactions

on Networking, Feb. 2003.

APPENDIX B—PROOF OF THEOREM 2

Proof: Define the Lyapunov function L(U,Z) =∑nc U (c)

n + 1N

∑nc Znc. The drift expression for this function

is given by summing the drift of the U (c)n (t) queues and

the Znc(t) queues using the general formula (16), where thequeueing laws are given by (6) and (26). Omitting arithmetic

details for brevity, we have the following drift expression:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2 − Φ(U(t))

+2∑nc

E

U (c)n (t)Rnc(t) + Ync(t)

Znc(t)N

| U,Z

∑nc

E

2Znc(t)

Nγnc(t)− V hnc(γnc(t)) | U,Z

∑nc

V E hnc(γnc(t)) | U,Z

where we have added and subtracted the optimization metric∑nc V E hnc(γnc(t)) | U,Z in the right hand side of the

above expression. The CLC2 policy is designed to minimize

the third, fourth, and fifth terms on the right hand side

of the above expression over all possible policies. Indeed,

we already know that the routing and resource allocation

policy maximizes Φ(U(t)). The fourth term in the right

hand side is minimized by the strategy (28) that chooses

Rnc(t) (considering the definition of Ync(t) in (25)). The fifthterm is minimized by the strategy (29) that chooses γnc(t)(considering the definition of hnc(γ) given in (27)).For a given ε ∈ (0, µsym), a bound on Φ(U(t)) is given

by Lemma 2 in terms of values (r∗nc(ε) + ε). Now con-

sider the following alternative flow control strategies: Fix

γnc(t) = Rmaxn − r∗nc(ε)

!=γ∗nc(ε) for all slots t. Then, everytimeslot independently admit all new arrivals Anc(t) withprobability pnc = r∗nc(ε)/λnc (this is a valid probability (≤ 1)by problem (21), and the admitted data satisfies the Rmax

n

constraint by the deterministic arrival bound). This yields

E Rnc(t) | U,Z = pncE Anc(t) = r∗nc(ε), and henceE Ync(t) | U,Z = Rmax

n − r∗nc(ε)!=γ∗nc(ε). Plugging these

expectations into the third, fourth, and fifth terms of the above

drift expression maintains the bound and creates many terms

that can be cancelled. The simplified drift expression becomes:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − 2ε

∑nc

U (c)n (t)

+V∑nc

hnc(γ∗nc(ε))− V∑nc

E hnc(γnc(t)) | U,Z

Plugging in the definitions of γ∗nc(ε) and hnc(γ) yields:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − V

∑nc

gnc(r∗nc(ε))

−2ε∑nc

U (c)n (t) + V

∑nc

E gnc(Rmaxn − γnc(t)) | U,Z

The above expression is in the exact form for application of

Lemma 1, and it follows that unfinished work satisfies:∑nc

U (c)n ≤ NB + 2

∑n(Rmax

n )2 + V NGmax

and performance satisfies:∑nc

gnc(Rmaxn − γnc) ≥

∑nc

gnc(r∗nc(ε))

−NB + 2∑

n(Rmaxn )2

V

However, it can similarly be shown that all Znc(t) queuesare stable, and hence rnc ≥ Rmax

n − γnc must hold [recall

discussion after (27)]. The result of Theorem 2 follows by

optimizing the performance bounds over 0 < ε < µsym in a

manner similar to the proof of Theorem 1.

λ91

λ93

λ48

λ42

REFERENCES

[1] M. J. Neely. Dynamic Power Allocation and Routing for Satellite

and Wireless Networks with Time Varying Channels. PhD thesis,Massachusetts Institute of Technology, LIDS, 2003.

[2] J. W. Lee, R. R. Mazumdar, and N. B. Shroff. Downlink powerallocation for multi-class cdma wireless networks. IEEE Proceedings ofINFOCOM, 2002.

[3] R. Berry, P. Liu, and M. Honig. Design and analysis of downlinkutility-based schedulers. Proceedings of the 40th Allerton Conference

on Communication, Control, and Computing, Oct. 2002.[4] P. Marbach and R. Berry. Downlink resource allocation and pricing for

wireless networks. IEEE Proc. of INFOCOM, 2002.[5] D. Julian, M. Chiang, D. O’Neill, and S. Boyd. Qos and fairness

constrained convex optimization of resource allocation for wirelesscellular and ad hoc networks. Proc. INFOCOM, 2002.

[6] L. Xiao, M. Johansson, and S. Boyd. Simultaneous routing and resourceallocation for wireless networks. Proc. of the 39th Annual Allerton Conf.on Comm., Control, Comput., Oct. 2001.

[7] B. Krishnamachari and F. Ordonez. Analysis of energy-efficient, fairrouting in wireless sensor networks through non-linear optimization.IEEE Vehicular Technology Conference, Oct. 2003.

[8] P. Marbach. Priority service and max-min fairness. IEEE Proceedings

of INFOCOM, 2002.[9] F.P. Kelly, A.Maulloo, and D. Tan. Rate control for communication

networks: Shadow prices, proportional fairness, and stability. Journ. ofthe Operational Res. Society, 49, p.237-252, 1998.

[10] F. Kelly. Charging and rate control for elastic traffic. European

Transactions on Telecommunications, 1997.[11] R. Johari and J. N. Tsitsiklis. Network resource allocation and a

congestion game. Submitted to Math. of Oper. Research, 2003.[12] S. H. Low. A duality model of tcp and queue management algorithms.

IEEE Trans. on Networking, Vol. 11(4), August 2003.[13] X. Liu, E. K. P. Chong, and N. B. Shroff. A framework for opportunistic

scheduling in wireless networks. Computer Networks, vol. 41, no. 4, pp.451-474, March 2003.

[14] R. Cruz and A. Santhanam. Optimal routing, link scheduling, andpower control in multi-hop wireless networks. IEEE Proceedings of

INFOCOM, April 2003.[15] L. Tassiulas and A. Ephremides. Stability properties of constrained

queueing systems and scheduling policies for maximum throughput inmultihop radio networks. IEEE Transacations on Automatic Control,Vol. 37, no. 12, Dec. 1992.

[16] M. J. Neely, E. Modiano, and C. E Rohrs. Dynamic power allocation androuting for time varying wireless networks. IEEE Journal on Selected

Areas in Communications, January 2005.[17] M. J. Neely, E. Modiano, and C. E. Rohrs. Power allocation and routing

in multi-beam satellites with time varying channels. IEEE Transactions

on Networking, Feb. 2003.

APPENDIX B—PROOF OF THEOREM 2

Proof: Define the Lyapunov function L(U,Z) =∑nc U (c)

n + 1N

∑nc Znc. The drift expression for this function

is given by summing the drift of the U (c)n (t) queues and

the Znc(t) queues using the general formula (16), where thequeueing laws are given by (6) and (26). Omitting arithmetic

details for brevity, we have the following drift expression:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2 − Φ(U(t))

+2∑nc

E

U (c)n (t)Rnc(t) + Ync(t)

Znc(t)N

| U,Z

∑nc

E

2Znc(t)

Nγnc(t)− V hnc(γnc(t)) | U,Z

∑nc

V E hnc(γnc(t)) | U,Z

where we have added and subtracted the optimization metric∑nc V E hnc(γnc(t)) | U,Z in the right hand side of the

above expression. The CLC2 policy is designed to minimize

the third, fourth, and fifth terms on the right hand side

of the above expression over all possible policies. Indeed,

we already know that the routing and resource allocation

policy maximizes Φ(U(t)). The fourth term in the right

hand side is minimized by the strategy (28) that chooses

Rnc(t) (considering the definition of Ync(t) in (25)). The fifthterm is minimized by the strategy (29) that chooses γnc(t)(considering the definition of hnc(γ) given in (27)).For a given ε ∈ (0, µsym), a bound on Φ(U(t)) is given

by Lemma 2 in terms of values (r∗nc(ε) + ε). Now con-

sider the following alternative flow control strategies: Fix

γnc(t) = Rmaxn − r∗nc(ε)

!=γ∗nc(ε) for all slots t. Then, everytimeslot independently admit all new arrivals Anc(t) withprobability pnc = r∗nc(ε)/λnc (this is a valid probability (≤ 1)by problem (21), and the admitted data satisfies the Rmax

n

constraint by the deterministic arrival bound). This yields

E Rnc(t) | U,Z = pncE Anc(t) = r∗nc(ε), and henceE Ync(t) | U,Z = Rmax

n − r∗nc(ε)!=γ∗nc(ε). Plugging these

expectations into the third, fourth, and fifth terms of the above

drift expression maintains the bound and creates many terms

that can be cancelled. The simplified drift expression becomes:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − 2ε

∑nc

U (c)n (t)

+V∑nc

hnc(γ∗nc(ε))− V∑nc

E hnc(γnc(t)) | U,Z

Plugging in the definitions of γ∗nc(ε) and hnc(γ) yields:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − V

∑nc

gnc(r∗nc(ε))

−2ε∑nc

U (c)n (t) + V

∑nc

E gnc(Rmaxn − γnc(t)) | U,Z

The above expression is in the exact form for application of

Lemma 1, and it follows that unfinished work satisfies:∑nc

U (c)n ≤ NB + 2

∑n(Rmax

n )2 + V NGmax

and performance satisfies:∑nc

gnc(Rmaxn − γnc) ≥

∑nc

gnc(r∗nc(ε))

−NB + 2∑

n(Rmaxn )2

V

However, it can similarly be shown that all Znc(t) queuesare stable, and hence rnc ≥ Rmax

n − γnc must hold [recall

discussion after (27)]. The result of Theorem 2 follows by

optimizing the performance bounds over 0 < ε < µsym in a

manner similar to the proof of Theorem 1.

λ91

λ93

λ48

λ42

REFERENCES

[1] M. J. Neely. Dynamic Power Allocation and Routing for Satellite

and Wireless Networks with Time Varying Channels. PhD thesis,Massachusetts Institute of Technology, LIDS, 2003.

[2] J. W. Lee, R. R. Mazumdar, and N. B. Shroff. Downlink powerallocation for multi-class cdma wireless networks. IEEE Proceedings ofINFOCOM, 2002.

[3] R. Berry, P. Liu, and M. Honig. Design and analysis of downlinkutility-based schedulers. Proceedings of the 40th Allerton Conference

on Communication, Control, and Computing, Oct. 2002.[4] P. Marbach and R. Berry. Downlink resource allocation and pricing for

wireless networks. IEEE Proc. of INFOCOM, 2002.[5] D. Julian, M. Chiang, D. O’Neill, and S. Boyd. Qos and fairness

constrained convex optimization of resource allocation for wirelesscellular and ad hoc networks. Proc. INFOCOM, 2002.

[6] L. Xiao, M. Johansson, and S. Boyd. Simultaneous routing and resourceallocation for wireless networks. Proc. of the 39th Annual Allerton Conf.on Comm., Control, Comput., Oct. 2001.

[7] B. Krishnamachari and F. Ordonez. Analysis of energy-efficient, fairrouting in wireless sensor networks through non-linear optimization.IEEE Vehicular Technology Conference, Oct. 2003.

[8] P. Marbach. Priority service and max-min fairness. IEEE Proceedings

of INFOCOM, 2002.[9] F.P. Kelly, A.Maulloo, and D. Tan. Rate control for communication

networks: Shadow prices, proportional fairness, and stability. Journ. ofthe Operational Res. Society, 49, p.237-252, 1998.

[10] F. Kelly. Charging and rate control for elastic traffic. European

Transactions on Telecommunications, 1997.[11] R. Johari and J. N. Tsitsiklis. Network resource allocation and a

congestion game. Submitted to Math. of Oper. Research, 2003.[12] S. H. Low. A duality model of tcp and queue management algorithms.

IEEE Trans. on Networking, Vol. 11(4), August 2003.[13] X. Liu, E. K. P. Chong, and N. B. Shroff. A framework for opportunistic

scheduling in wireless networks. Computer Networks, vol. 41, no. 4, pp.451-474, March 2003.

[14] R. Cruz and A. Santhanam. Optimal routing, link scheduling, andpower control in multi-hop wireless networks. IEEE Proceedings of

INFOCOM, April 2003.[15] L. Tassiulas and A. Ephremides. Stability properties of constrained

queueing systems and scheduling policies for maximum throughput inmultihop radio networks. IEEE Transacations on Automatic Control,Vol. 37, no. 12, Dec. 1992.

[16] M. J. Neely, E. Modiano, and C. E Rohrs. Dynamic power allocation androuting for time varying wireless networks. IEEE Journal on Selected

Areas in Communications, January 2005.[17] M. J. Neely, E. Modiano, and C. E. Rohrs. Power allocation and routing

in multi-beam satellites with time varying channels. IEEE Transactions

on Networking, Feb. 2003.

APPENDIX B—PROOF OF THEOREM 2

Proof: Define the Lyapunov function L(U,Z) =∑nc U (c)

n + 1N

∑nc Znc. The drift expression for this function

is given by summing the drift of the U (c)n (t) queues and

the Znc(t) queues using the general formula (16), where thequeueing laws are given by (6) and (26). Omitting arithmetic

details for brevity, we have the following drift expression:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2 − Φ(U(t))

+2∑nc

E

U (c)n (t)Rnc(t) + Ync(t)

Znc(t)N

| U,Z

∑nc

E

2Znc(t)

Nγnc(t)− V hnc(γnc(t)) | U,Z

∑nc

V E hnc(γnc(t)) | U,Z

where we have added and subtracted the optimization metric∑nc V E hnc(γnc(t)) | U,Z in the right hand side of the

above expression. The CLC2 policy is designed to minimize

the third, fourth, and fifth terms on the right hand side

of the above expression over all possible policies. Indeed,

we already know that the routing and resource allocation

policy maximizes Φ(U(t)). The fourth term in the right

hand side is minimized by the strategy (28) that chooses

Rnc(t) (considering the definition of Ync(t) in (25)). The fifthterm is minimized by the strategy (29) that chooses γnc(t)(considering the definition of hnc(γ) given in (27)).For a given ε ∈ (0, µsym), a bound on Φ(U(t)) is given

by Lemma 2 in terms of values (r∗nc(ε) + ε). Now con-

sider the following alternative flow control strategies: Fix

γnc(t) = Rmaxn − r∗nc(ε)

!=γ∗nc(ε) for all slots t. Then, everytimeslot independently admit all new arrivals Anc(t) withprobability pnc = r∗nc(ε)/λnc (this is a valid probability (≤ 1)by problem (21), and the admitted data satisfies the Rmax

n

constraint by the deterministic arrival bound). This yields

E Rnc(t) | U,Z = pncE Anc(t) = r∗nc(ε), and henceE Ync(t) | U,Z = Rmax

n − r∗nc(ε)!=γ∗nc(ε). Plugging these

expectations into the third, fourth, and fifth terms of the above

drift expression maintains the bound and creates many terms

that can be cancelled. The simplified drift expression becomes:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − 2ε

∑nc

U (c)n (t)

+V∑nc

hnc(γ∗nc(ε))− V∑nc

E hnc(γnc(t)) | U,Z

Plugging in the definitions of γ∗nc(ε) and hnc(γ) yields:

∆(U(t)) ≤ NB + 2∑

n

(Rmaxn )2 − V

∑nc

gnc(r∗nc(ε))

−2ε∑nc

U (c)n (t) + V

∑nc

E gnc(Rmaxn − γnc(t)) | U,Z

The above expression is in the exact form for application of

Lemma 1, and it follows that unfinished work satisfies:∑nc

U (c)n ≤ NB + 2

∑n(Rmax

n )2 + V NGmax

and performance satisfies:∑nc

gnc(Rmaxn − γnc) ≥

∑nc

gnc(r∗nc(ε))

−NB + 2∑

n(Rmaxn )2

V

However, it can similarly be shown that all Znc(t) queuesare stable, and hence rnc ≥ Rmax

n − γnc must hold [recall

discussion after (27)]. The result of Theorem 2 follows by

optimizing the performance bounds over 0 < ε < µsym in a

manner similar to the proof of Theorem 1.

λ91

λ93

λ48

λ42

REFERENCES

[1] M. J. Neely. Dynamic Power Allocation and Routing for Satellite

and Wireless Networks with Time Varying Channels. PhD thesis,Massachusetts Institute of Technology, LIDS, 2003.

[2] J. W. Lee, R. R. Mazumdar, and N. B. Shroff. Downlink powerallocation for multi-class cdma wireless networks. IEEE Proceedings ofINFOCOM, 2002.

[3] R. Berry, P. Liu, and M. Honig. Design and analysis of downlinkutility-based schedulers. Proceedings of the 40th Allerton Conference

on Communication, Control, and Computing, Oct. 2002.[4] P. Marbach and R. Berry. Downlink resource allocation and pricing for

wireless networks. IEEE Proc. of INFOCOM, 2002.[5] D. Julian, M. Chiang, D. O’Neill, and S. Boyd. Qos and fairness

constrained convex optimization of resource allocation for wirelesscellular and ad hoc networks. Proc. INFOCOM, 2002.

[6] L. Xiao, M. Johansson, and S. Boyd. Simultaneous routing and resourceallocation for wireless networks. Proc. of the 39th Annual Allerton Conf.on Comm., Control, Comput., Oct. 2001.

[7] B. Krishnamachari and F. Ordonez. Analysis of energy-efficient, fairrouting in wireless sensor networks through non-linear optimization.IEEE Vehicular Technology Conference, Oct. 2003.

[8] P. Marbach. Priority service and max-min fairness. IEEE Proceedings

of INFOCOM, 2002.[9] F.P. Kelly, A.Maulloo, and D. Tan. Rate control for communication

networks: Shadow prices, proportional fairness, and stability. Journ. ofthe Operational Res. Society, 49, p.237-252, 1998.

[10] F. Kelly. Charging and rate control for elastic traffic. European

Transactions on Telecommunications, 1997.[11] R. Johari and J. N. Tsitsiklis. Network resource allocation and a

congestion game. Submitted to Math. of Oper. Research, 2003.[12] S. H. Low. A duality model of tcp and queue management algorithms.

IEEE Trans. on Networking, Vol. 11(4), August 2003.[13] X. Liu, E. K. P. Chong, and N. B. Shroff. A framework for opportunistic

scheduling in wireless networks. Computer Networks, vol. 41, no. 4, pp.451-474, March 2003.

[14] R. Cruz and A. Santhanam. Optimal routing, link scheduling, andpower control in multi-hop wireless networks. IEEE Proceedings of

INFOCOM, April 2003.[15] L. Tassiulas and A. Ephremides. Stability properties of constrained

queueing systems and scheduling policies for maximum throughput inmultihop radio networks. IEEE Transacations on Automatic Control,Vol. 37, no. 12, Dec. 1992.

[16] M. J. Neely, E. Modiano, and C. E Rohrs. Dynamic power allocation androuting for time varying wireless networks. IEEE Journal on Selected

Areas in Communications, January 2005.[17] M. J. Neely, E. Modiano, and C. E. Rohrs. Power allocation and routing

in multi-beam satellites with time varying channels. IEEE Transactions

on Networking, Feb. 2003.

Fig. 1. (a) A heterogeneous network with wireless and wireline data links,and (b) a close-up of one node, illustrating the internal queues and the storagereservoir for exogenous arrivals.

to integral units t ∈ 0, 1, 2, . . .. Channels hold their statefor the duration of a timeslot, and potentially change stateson slot boundaries. We assume there are a finite number ofchannel state vectors ~S. For each ~S, let Γ~S denote the setof link transmission rates available for resource allocationdecisions when ~S(t) = ~S. In particular, every timeslot t thenetwork controllers are constrained to choosing a transmissionrate vector ~µ(t) = (µ1(t), . . . , µL(t)) such that ~µ(t) ∈ Γ~S(t)

(where µl(t) is the transmit rate over link l and has unitsof bits/slot). Use of this abstract set of transmission ratesΓ~S maintains a simple separation between network layer andphysical layer concepts, yet is general enough to allow networkcontrol to be suited to the unique capabilities of each data link.We assume all sets Γ~S are compact.

As an example, consider the heterogeneous network of Fig.1 consisting of three separate groups of links A, B, and C:Set A represents a wireless sensor system that connects toa wired infrastructure through two uplink access points, setB represents the wired data links, and set C represents thetwo downlink channels of a basestation that transmits to twodifferent users 1 and 2. For a given channel state ~S, the setof feasible transmission rates Γ~S reduces to a product of ratescorresponding to the three independent groups:

Γ~S = ΓA~SA× ΓB × ΓC

~SC

Set ΓA~SA

might contain a continuum of link rates associatedwith the channel interference properties and power allocationoptions of the sensor nodes, and depends only on the linkstates ~SA of these nodes. Set ΓB might contain a singlevector (C1, . . . , Ck) representing the fixed capacities of thek wired links. Set ΓC

~SCmight represent a set of two vectors

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 2

(φS1 , 0), (0, φS2), where φSiis the rate available over link i

if this link is selected to transmit on the given timeslot t whenSi(t) = Si. We further note that the ground network shown inthe figure can be augmented to include a collection of satellitenodes, increasing route diversity and enabling connectivity toother sub-networks.

Data is transmitted from node to node over potentiallymulti-hop paths to reach its destination. Let (λnc) representthe matrix of exogenous arrival rates, where λnc is the rate ofnew arrivals to source node n intended for destination nodec (in units of bits/slot). The network layer capacity regionΛ is defined as the closure of the set of all arrival matricesthat are stably supportable by the network, considering allpossible routing and resource allocation policies (possiblythose with perfect knowledge of future events). The set Λ canbe shown to be compact and convex [1]. In [18], a routing andpower allocation policy was developed to stabilize a generalwireless network whenever the rate matrix (λnc) is within thecapacity region Λ. The purpose of our current paper is to treatheterogeneous networks and develop distributed algorithmsfor flow control, routing, and resource allocation that provideoptimal fairness in cases when arrival rates are either insideor outside the network capacity region.

Specifically, we define a set of utility functions gnc(r),representing the ‘satisfaction’ received by sending data fromnode n to node c at a time average rate of r bits/slot. The utilityfunctions are assumed to be non-decreasing and concave. Thegoal is to support a fraction of the traffic demand matrix (λnc)to achieve throughputs (rnc) that maximize the sum of userutilities. We thus have the optimization:

Maximize:∑

n,c gnc(rnc) (1)Subject to: (rnc) ∈ Λ (2)

(0) ≤ (rnc) ≤ (λnc) (3)

where the matrix inequality in (3) is considered entrywise.Inequality (2) is the stability constraint and ensures that theadmitted rates are stabilizable by the network. Inequality (3) isthe demand constraint that ensures the rate provided to session(n, c) is no more than the incoming traffic rate of this session.

Let (r∗nc) represent the solution of the above optimization.Such a solution exists because the set Λ is compact andcontains the origin [31]. Because the functions gnc(r) are non-decreasing, it is clear that (r∗nc) = (λnc) whenever (λnc) ∈ Λ.If (λnc) /∈ Λ there must be at least one value r∗nc that is strictlyless than λnc. The above optimization could in principle besolved if the arrival rates (λnc) and the capacity region Λwere known in advance, and all users could coordinate bysending data according to the optimal solution. However, thecapacity region depends on the channel dynamics, which areunknown to the network controllers and to the individual users.Furthermore, the individual users do not know the data ratesor utility functions of other users. In this paper, we developa practical dynamic control strategy that yields a resulting setof throughputs (rnc) that are arbitrarily close to the optimalsolution of (1)-(3). The distance to the optimal solution isshown to decrease like 1/V , where V is a control parameteraffecting a tradeoff in average delay for data that is served by

the network.Previous work on network fairness and optimization is

found in [3]-[14]. In [3], an optimization problem similarto (1)-(2) is considered for a static wireless downlink withinfinite backlog, and pricing schemes are developed to enableconvergence to a fair power allocation vector. Further staticresource allocation problems for wireless systems and sensornetworks are treated in [4]-[8], and game theory approaches forwired flow networks are treated in [9]-[12]. These approachesuse convex optimization and Lagrangian duality to achievea fixed resource allocation that is optimal with respect tovarious utility metrics. In [10] [11], pricing mechanisms areconstructed to enable proportionally fair routing. Related workin [9] considers max-min fairness, and recent applications tothe area of internet congestion control are developed in [14].

We note that fixed allocation solutions may not be appropri-ate in cases when optimal control involves dynamic resourceallocation. Indeed, in [16] it is shown that energy optimalpower allocation in a static ad-hoc network with interferenceinvolves the computation of a periodic transmission schedule.A similar scheduling problem is shown to be NP-completein [32]. The capacity of a multi-user wireless downlink withrandomly varying channels is established in [33], and utilityoptimization in a similar system is treated in [15]. Theseformulations do not consider stochastic arrivals and queueing,and solutions require perfect knowledge of channel statistics(approximate policies can be implemented based on long-termmeasurements).

Stochastic control policies for wireless queueing networksare developed in [17]-[23] based on a theory of Lyapunov drift.This theory has been extremely powerful in the development ofstabilizing control laws for data networks [17]-[25], but cannotbe used to address performance optimization and fairness.Dynamic algorithms for fair scheduling in wireless downlinksare addressed in [27] [28] [29], but do not yield optimalperformance for all input rates, as discussed in the next section.A wireless downlink with deterministic ON/OFF channels andarbitrary input rates is developed in [30], and a modifiedversion of the Serve-the-Longest-ON-Queue policy is shownto yield maximum throughput. However, the analysis in [30]is closely tied to the channel modeling assumptions, and doesnot appear to offer solutions for more general networks orfairness criteria.

The main contribution of our work is the developmentof a novel control policy that yields optimal performancefor general stochastic networks and general fairness metrics.The policy does not require knowledge of channel statistics,input rates, or the global network topology. Our analysisuses a new Lyapunov drift technique that enables stabilityand performance optimization to be achieved simultaneously,and presents a fundamental approach to stochastic networkoptimization [1] [2]. We note that an alternate Lyapunovapproach was recently developed in [26] for scheduling in awireless downlink with infinite backlog. There, the authors useLyapunov theory to prove stability, and demonstrate fairnessby relating the system dynamics to that of a correspondingstatic fluid model.

In the next section, we consider a simple wireless down-

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 3

link and describe the shortcomings of previously proposedalgorithms in terms of fairness. In Section III we developa fair scheduling algorithm for general networks under thespecial case when all active input reservoirs are ‘infinitelybacklogged.’ The algorithm is simple and has a natural net-work pricing interpretation. In Section V we construct a mod-ified algorithm that yields optimal performance without theinfinite backlog assumption. Example simulations for wirelessnetworks and N×N packet switches are presented in SectionVI.

II. A SATELLITE DOWNLINK EXAMPLE

Consider a satellite node (or wireless basestation) thattransmits data to two downlink users 1 and 2 over two differentchannels (as illustrated by considering only the triangle-nodeof the network in Fig. 1). Time is slotted and packets foreach user arrive to the basestation according to independentBernoulli processes with rates λ1 and λ2. Let U1(t) andU2(t) represent the current backlog of packets waiting fortransmission to user 1 and user 2, respectively. Channelsindependently vary between ON and OFF states every slotaccording to Bernoulli processes, with ON probabilities p1 andp2, and we assume that p1 < p2. Every timeslot, a controllerobserves the channel states and chooses to transmit over eitherchannel 1 or channel 2. We assume that a single packet can betransmitted if a channel is ON and no packet can be transmittedwhen a channel is OFF, so that the only decision is whichchannel to serve when both channels are ON.

The capacity region Λ for this system is described by theset of all rates (λ1, λ2) that satisfy:

λ1 ≤ p1 , λ2 ≤ p2

λ1 + λ2 ≤ p1 + (1− p1)p2

These conditions are necessary for stability because theoutput rate from any channel i is at most pi, and the maximumsum rate out of the system is p1 +(1− p1)p2. Furthermore, itis shown in [21] that the ‘Maximum Weight Match’ (MWM)policy of serving the ON queue with the largest backlogachieves stability whenever input rates are strictly interior tothe above region.

Now define g1(r) = g2(r) = log(r), and consider the pro-portional fairness control objective of maximizing log(r1) +log(r2), where r1 and r2 are the delivered throughputs overchannels 1 and 2 (see [11] for a discussion of proportionalfairness). We evaluate three well known algorithms withrespect to this fairness metric: The Borst algorithm [27], the‘proportionally fair’ Max µi/ri algorithm [28] [29], and theMWM policy [21].

The Borst algorithm chooses the non-empty channel i withthe largest µi(t)/µi index, where µi(t) is the current channelrate and µi is the average of µi(t). This algorithm is shown in[27] to provide optimal fairness for wireless networks with an‘infinite’ number of channels, where each incoming packet isdestined for a unique user with its own channel. Althoughthe algorithm was not designed for the 2-queue downlinkdescribed above, it is closely related to the Max µi/ri policy,and it is illuminating to evaluate its performance in this

0.1 0.3 0.5

0.3

0.5

0.1

λ2

λ1

λ2

λ1

proportionally fair point

0.1 0.3 0.5

0.3

0.5

0.1

a

b

c

d

e

c

d' e'

d

b

a

e"

d'e'

Borst Stability Region

µ/r StabilityRegion

MWM path

µ/r path

Borst path

Fig. 2. The downlink capacity region Λ and the stability regions of the Borstpolicy and the Max µi/ri policy. Input rates (λ1, λ2) are pushed toward point(0.5, 1.0), and the simulated throughputs under the Borst, Max µi/ri, andMWM policies are illustrated.

context. Applied to the 2-queue downlink, the Borst algorithmreduces to serving the non-empty ON queue with the largestvalue of 1/pi. Because p1 < p2, this algorithm effectivelygives packets destined for channel 1 strict priority over channel2 packets. Thus, the service of queue 1 is independent of thestate of channel 2, and conditioning on the event that a packetis served from channel 1 during a particular timeslot does notchange the probability that channel 2 is ON. It follows thatthe rate of serving channel 1 packets while channel 2 is ON isgiven by λ1p2 (assuming queue 1 is stable so that all λ1 trafficis served). Thus, the stability region of the Borst algorithm isgiven by:

λ1 ≤ p1 (4)λ2 ≤ p2 − λ1p2 (5)

which is a strict subset of the capacity region (see Fig. 2).Consider now the related policy of serving the non-empty

queue with the largest value of µi(t)/ri(t), where ri(t)is the empirical throughput achieved over channel i. Thisdiffers from the Borst algorithm in that transmission ratesare weighted by the throughput actually delivered rather thanthe average transmission rate that is offered. This Max µi/ri

policy is proposed in [28] [29] and shown to have desirableproportional fairness properties when all queues of the down-link are infinitely backlogged. To evaluate its performance forarbitrary traffic rates (λ1, λ2), suppose the running averagesr1(t) and r2(t) are accumulated over the entire timeline, andsuppose the system is stable so that r1(t) and r2(t) convergeto λ1 and λ2. It follows that the algorithm eventually reducesto giving channel 1 packets strict priority if λ1 < λ2, andgiving channel 2 packets strict priority if λ2 < λ1. Thus, ifλ1 < λ2 then these rates must also satisfy the inequalities(4) and (5), while λ2 < λ1 implies the rates must satisfy theinverted inequalities λ2 ≤ p2 and λ1 ≤ p1 − λ2p1. Thus, atfirst glance it seems that the stability region of this policy is asubset of the stability region of the Borst algorithm. However,its stability region has the peculiar property of including allfeasible rate pairs (λ, λ) (see Fig. 2).

In Fig. 2 we consider the special case when p1 = 0.5, p2 =0.6, and plot the achieved throughput of the Borst, Maxµi/ri, and MWM policies when the rate vector (λ1, λ2) is

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 4

scaled linearly towards the vector (0.5, 1.0), illustrated by theray in Fig. 2(a). One hundred different rate points on thisray were considered (including example points a - e), andsimulations were performed for each point over a period of 5million timeslots. Fig 2(a) illustrates the resulting throughputof the Borst algorithm, where we have included example pointsd′ and e′ corresponding to input rate points d and e. Notethat the Borst algorithm always results in throughput that isstrictly interior to the capacity region, even when input ratesare outside of capacity. Fig. 2(b) illustrates performance ofthe Max µi/ri and MWM policies. Note that the MWMpolicy supports all (λ1, λ2) traffic when this rate vector iswithin the capacity region. However, when traffic is outsideof the capacity region the achieved throughput moves alongthe boundary in the wrong direction, yielding throughputsthat are increasingly unfair because it favors service of thehigher traffic rate stream. Like the Borst policy, the Max µi/ri

policy leads to instability for all (stabilizable) input rates onthe ray segment c-d, and yields throughput that is strictlyinterior to the capacity region even when inputs exceed systemcapacity (compare points e and e′). However, the throughputeventually touches the capacity region boundary, reachingthe proportionally fair point (0.4, 0.4) when input rates aresufficiently far outside of the capacity region.

It is clear from this simple downlink example that there isa need for a ‘universally fair’ algorithm, one that performswell regardless of whether inputs are inside or outside of thecapacity region. For this example, such an algorithm wouldyield throughput that increases toward the point d of the figure,and then moves on the boundary of the capacity region towardthe fair operating point thereafter. In the following, we developsuch an algorithm for general multihop networks.

III. CONTROL OF HETEROGENEOUS NETWORKS

Consider a heterogeneous network with N nodes, L links,and time varying channels ~S(t), as shown in Fig. 1. Eachlink l ∈ 1, . . . , L represents a directed communicationchannel for transmission from one node to another, and wedefine tran(l) and rec(l) as the corresponding transmittingand receiving nodes, respectively. Each node of the networkmaintains a set of output queues for storing data according toits destination. All data (from any source node) that is destinedfor a particular node c ∈ 1, . . . , N is classified as commodityc data, and we let U

(c)n (t) represent the backlog of commodity

c data currently stored in node n (see Fig. 1). At the networklayer, a control algorithm makes decisions about routing,scheduling, and resource allocation in reaction to currentchannel state and queue backlog information. The objectiveis to deliver all data to its proper destination, potentially byrouting over multi-hop paths.

As a general algorithm might schedule multiple commodi-ties to flow over the same link on a given timeslot, wedefine µ

(c)l (t) as the rate offered to commodity c traffic

along link l during timeslot t. 1 The transmission ratesand routing variables are chosen by a dynamic scheduling

1We find that the capacity achieving solution needs only route a singlecommodity over any given link during a timeslot.

and routing algorithm. Specifically, the network makes thefollowing control decisions every slot:• Resource (Rate) Allocation: Choose ~µ(t) =

(µ1(t), . . . , µL(t)) such that ~µ(t) ∈ Γ~S(t)

• Routing/Scheduling: For each link l, choose µ(c)l (t) to

satisfy the link rate constraint:∑c

µ(c)l (t) ≤ µl(t)

A set of flow controllers act at every node to limit thenew data admitted into the network. Specifically, new dataof commodity c that arrives to source node n is first placedin a storage reservoir (n, c). A control valve determinesthe amount of data Rnc(t) released from this reservoir oneach timeslot. The Rnc(t) process acts as the exogenousarrival process affecting behavior of queue backlog U

(c)n (t).

Endogenous arrivals consist of commodity c data transmittedto node n from other network nodes. Define Ωn as the set ofall links l such that tran(l) = n, and define Θn as the setof all links such that rec(l) = n. Every timeslot the backlogU

(c)n (t) changes according to the following queueing law:

U(c)n (t + 1) ≤ max

[U

(c)n (t)−

∑l∈Ωn

µ(c)l (t), 0

]+

∑l∈Θn

µ(c)l (t) + Rnc(t) (6)

The expression above is an inequality rather than an equal-ity because the endogenous arrivals may be less than∑

l∈Θnµ

(c)l (t) if nodes have little or no commodity c data to

transmit. The above dynamics hold for all node pairs n 6= c.Data leaves the network when it reaches its destination, andso we define U

(n)n

M=0 for all n.Define rnc

M= limt→∞1t

∑t−1τ=0 E Rnc(τ) as the time aver-

age admission rate of (n, c) data. The goal is to design a jointstrategy for resource allocation, routing, and flow control thatyields an admitted throughput matrix (rnc) that maximizesthe utility metric (1) subject to the stability constraint (2) andthe demand constraint (3). In order to limit congestion in thenetwork, it is important to restrict flow control decisions sothat

∑c Rnc(t) ≤ Rmax

n for all nodes n and slots t, whereRmax

n is defined as the largest possible transmission rate outof node n (summed over all possible outgoing links of nthat can be activated simultaneously). We note that any timeaverage rate matrix (rnc) that is within the capacity region Λnecessarily satisfies

∑c rnc ≤ Rmax

n for all n. Indeed, rates(rnc) violating this constraint cannot be supported, as theywould inevitably overload the source queues.

A. Dynamic Control for Infinite Demand

Here we develop a practical control algorithm that stabilizesthe network and ensures that utility is arbitrarily close tooptimal, with a corresponding tradeoff in network delay. Recallthat functions gnc(r) represent the utility of supporting rate rcommunication from node n to node c (we define gnc(r) = 0if there is no active session of traffic originating at node nand destined for node c). To highlight the fundamental issuesof routing, resource allocation, and flow control, we assumethat all active sessions (n, c) have infinite backlog in their

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 5

corresponding reservoirs, so that flow variables Rnc(t) canbe chosen without first establishing that this much data isavailable in the reservoir. Flow control is imperative in thisinfinite backlog scenario, and the resulting problem is simpleras it does not involve the demand constraint (3). A modifiedalgorithm is developed in Section V for the general case offinite demand matrices (λnc) and finite buffer reservoirs.

The following control strategy is decoupled into separatealgorithms for resource allocation, routing, and flow control.The strategy combines a novel flow control technique togetherwith a generalization of the DRPC power allocation strategyof [18].

Cross-Layer Control Algorithm 1 (CLC1):• Flow Control — (algorithm FLOW) The flow controller at

each node n observes the current level of queue backlogsU

(c)n (t) for each commodity c ∈ 1, . . . , N. It then sets

Rnc(t) = rnc, where the rnc values are solutions to thefollowing optimization:

Maximize :N∑

c=1

[V gnc(rnc)− 2rncU

(c)n (t)

](7)

Subject to:N∑

c=1

rnc ≤ Rmaxn

where V > 0 is a chosen constant that effects theperformance of the algorithm.

• Routing and Scheduling — Each node n observesthe backlog in all neighboring nodes j to which it isconnected by a link l (where tran(l) = n, rec(l) = j).Let W

(c)l = U

(c)tran(l)(t) − U

(c)rec(l)(t) represent the

differential backlog of commodity c data. DefineW ∗

lM=maxcW (c)

l , 0 as the maximum differentialbacklog over link l (maxed with 0), and let c∗l representthe maximizing commodity. Data of commodity c∗l isselected for (potential) routing over link l wheneverW ∗

l > 0.

• Resource Allocation — The current channel state ~S(t) isobserved, and a transmission rate vector ~µ(t) is selectedby maximizing

∑l W

∗l µl(t) subject to the constraint

~µ(t) ∈ Γ~S(t). The resulting transmission rate of µl(t)is offered to commodity c∗l data on link l. If any nodedoes not have enough bits of a particular commodity tosend over all outgoing links requesting that commodity,null bits are delivered.

The flow control algorithm is decentralized, where thecontrol valves for each node n require knowledge only ofthe queue backlogs in node n. The routing and schedulingalgorithm acts according to a differential backlog strategysimilar to the backpressure strategy developed in [17], and isdecentralized provided that each node i knows the backloglevels of its neighbors. The resource allocation strategy ofmaximizing

∑l W

∗l µl(t) is the most complex part of the

algorithm, but can be distributed over the independent portionsof the network. Specifically, if the network links are groupedinto K independent components, the set constraint for each

channel state ~S has the product form:

Γ~S = Γ1~S1× Γ2

~S2× . . .× ΓK

~SK

Define βk as the set of links contained in component k.It follows that resource allocation is decoupled across net-work components, where each component k independentlychooses transmission rates for its own links to maximize∑

l∈βkW ∗

l µl(t) subject to (µl(t)) | l∈βk∈ Γk

~Sk. In particular,

network components only require knowledge of the channelconditions on their own links.

B. Intuitive Description of the Policy

The flow control policy (7) uses a parameter V that deter-mines the extent to which utility optimization is emphasized.Indeed, if V is large relative to the current backlog in thesource queues, then the admitted rates Rnc(t) will be large,increasing the time average utility while consequently increas-ing congestion. This effect is mitigated as backlog grows atthe source queues and flow control decisions become moreconservative.

The routing and scheduling algorithm uses backpressurefrom neighboring nodes to equalize differential backlog. In-deed, allocating resources to maximize a product of transmis-sion rate and differential backlog ensures that highly congestedlinks receive larger transmission rates. This effect is mostpronounced when congestion is large, so that the algorithm‘learns’ from any past scheduling mistakes. Note that in caseswhen input rates are very low, there may be little informationcontained in the differential backlog values, and hence delaymay be large even though overall congestion small. Thisproblem can be solved by either restricting routing options topaths that make progress to the destination (which may alsorestrict network capacity), or by using an enhanced algorithmthat weights differential backlog of each commodity by a hop-count estimate of the distance to the destination. For simplicityof exposition, here we analyze only the basic algorithm (see[1] for details on the enhanced strategy).

C. Algorithm Performance

To analyze the performance of the above CLC1 algorithm,we define the maximum transmission rate out of any node andinto any node as follows:

µoutmax

M= max[n,~S,~µ∈Γ~S ]

∑l∈Ωn

µl , µinmax

M= max[n,~S,~µ∈Γ~S ]

∑l∈Θn

µl

We further define the value µsym as the largest rate that issimultaneously supportable by all sessions (n, c) :

µsymM= Largest scalar such that (µsym) ∈ Λ (8)

While the parameter µsym does not appear to be relatedto our design objectives, it will unexpectedly arise in thedelay analysis. For simplicity of exposition, we assume chan-nel states are i.i.d. every timeslot,2 and let π~S represent

2The algorithms developed in this paper yield similar results for generalergodic channel processes, with modified but more involved expressions foraverage delay [1].

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 6

the probability that ~S(t) = ~S. Assume utilities gnc(r)are non-negative, non-decreasing, and concave, and defineGmax

M=max[n,P

c rnc≤Rmaxn ]

∑c gnc(rnc).

Theorem 1: If channel states are i.i.d. over timeslots andall active reservoirs have infinite backlog, then for any flowparameter V > 0 the CLC1 algorithm stabilizes the networkand yields time average congestion bound:∑

nc

U(c)n ≤ N(B + V Gmax)

2µsym(9)

where:∑nc U

(c)n

M= lim supt→∞1t

∑t−1τ=0

[∑nc E

U

(c)n (τ)

]B M=

(µin

max + 1N

∑Nn=1 Rmax

n

)2

+ (µoutmax)2 (10)

Further, network performance satisfies:

lim inft→∞

∑nc

gnc(rnc(t)) ≥∑nc

gnc(r∗nc)−BN

V(11)

where (r∗nc) is the optimal solution of (1) subject to constraint(2), and where rnc(t) is defined as the average acceptance rateof (n, c) traffic over t slots:

rnc(t)M=1t

t−1∑τ=0

E Rnc(τ)

The above result holds for all V > 0. Thus, the valueof V can be chosen so that BN/V is arbitrarily small,resulting in achieved utility that is arbitrarily close to optimal.This performance comes at the cost of a linear increase innetwork congestion with the parameter V . By Little’s theorem,average queue backlog is proportional to average bit delay, andhence performance can be pushed towards optimality with acorresponding tradeoff in end-to-end network delay.

We note that although the CLC1 policy assumes all activesessions have unlimited backlog in their reservoirs, in practicethe policy yields similar performance when input rate matrices(λnc) are finite. This holds because for many networks the pol-icy either stabilizes all queues and reservoirs (yielding optimalthroughput performance) or leads to instability in all activereservoirs (creating an effective ‘infinite backlog’ scenariobecause these unstable reservoirs always have sufficient datato be scheduled).

The proof of Theorem 1 follows from a novel Lyapunovdrift argument, where the utility metric is incorporated intothe drift condition so that stability and utility optimizationcan be simultaneously achieved. This analysis is provided inSection IV. In the following we consider the implications ofthis result.

D. Maximum Throughput and the Threshold Rule

Suppose utilities are linear, so that gnc(r) = αncr forsome non-negative weights αnc. The resulting objective is tomaximize the weighted sum of throughput, and the resultingFLOW algorithm has a simple threshold form, where somecommodities receive as much of the Rmax

n delivery rate aspossible, while others receive none. In the special case wherethe user at node n desires communication with a single

destination node cn (so that gnc(r) = 0 for all c 6= cn), theflow control algorithm (7) reduces to maximizing V αncnr −2U

(cn)n r subject to 0 ≤ r ≤ Rmax

n , and the solution is thefollowing threshold rule:

Rncn(t) =

Rmax

n if U(cn)n (t) ≤ V αncn

20 otherwise

The qualitative structure of this flow control rule is intuitive:When backlog in the source queue is large, we should refrainfrom sending new data. The simple threshold form is quali-tatively similar to the threshold scheduling rule developed in[30] for server scheduling in a downlink with ON/OFF chan-nels and deterministic constraints on the channel states andpacket arrivals. Specifically, the analysis of [30] demonstratesthat there exists a threshold T such that serving the longestqueue maximizes throughput, where all queues with backloggreater than T are treated as having backlog that is equal to thisthreshold. Although the structure of the downlink schedulingproblem in [30] is different from our problem structure, as arethe analytical techniques and resulting scheduling rules, theobjective of maximizing a weighted sum of throughput is thesame, and hence it is interesting that both sets of results yieldthreshold-type policies.

E. Proportional Fairness and the 1/U Rule

Consider now utility functions of the form gnc(r) = log(1+rnc). It is shown in [11] that maximizing a sum of such utilitiesover any convex set Λ leads to proportional fairness.3 In thespecial case when there is only one destination cn for each usern, the flow control algorithm reduces to maximizing V log(1+r) − 2U

(cn)n r subject to 0 ≤ r ≤ Rmax

n , which leads to thefollowing ‘1/U ’ flow control function:

Rncn(t) = min

[max

[V

2U(cn)n (t)

− 1, 0

], Rmax

n

]Here we see that the flow control valve restricts flow accordingto a continuous function of the backlog level at the sourcequeue, being less conservative in its admission decisions whenbacklog is low and more conservative when backlog is high.

One drawback of this 1/U policy is that the resulting flowcontrol variables Rnc(t) are real numbers (not necessarilyintegers or integer multiples of a given packet length), andhence it is implicitly assumed that packets can be fragmentedfor admission to the network. This problem arises in theCLC1 algorithm whenever the utility function is non-linear. InSection V, a modified algorithm CLC2 is presented that over-comes this problem by allowing admissions to be restricted tointeger multiples of a common packet length, without loss ofoptimality.

3Strictly speaking, the proportionally fair allocation seeks to maximizePnc log(rnc), leading to

Pnc

roptnc −rnc

roptnc

≥ 0 for any other operating point(rnc) ∈ Λ. We use non-negative utilities log(1 + r), and thereby obtain aproportionally fair allocation with respect to the quantity ropt

nc + 1, leadingto

Pnc

roptnc −rnc

roptnc +1

≥ 0.

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 7

F. Mechanism Design and Network PricingThe flow control policy (7) has a simple interpretation in

terms of network pricing. Specifically, consider a scenariowhere the gnc(r) functions are measured in units of dollars,representing the amount the user at source node n is willingto pay for rate r service to destination c. The social optimumoperating point (r∗nc) is defined as the point that maximizesthe sum of utilities

∑nc gnc(rnc) subject to (rnc) ∈ Λ. Every

timeslot, each user n determines the amount of data Rnc(t)it desires to send based on a per-unit price PRICEnc(t)charged by the network. The transaction between user andnetwork takes place in a distributed fashion at each node n. Weassume all users are ‘greedy’ and send data every timeslot bymaximizing total utility minus total cost, subject to an Rmax

n

constraint imposed by the network. That is, each user n selectsRnc(t) = rnc, where the rnc values solve:

Maximize :∑

c [gnc(rnc)− PRICEnc(t)rnc] (12)Subject to:

∑c rnc ≤ Rmax

n

Consider now the following dynamic pricing strategy usedat each network node n:

PRICEnc(t) =2U

(c)n (t)V

dollars/bit (13)

We note that this pricing strategy is independent of the par-ticular gnc(r) functions, and so the network does not requireknowledge of the user utilities. Using this pricing strategy in(12), it follows that users naturally send according to processesRnc(t) that exactly correspond to the FLOW algorithm (7),and hence the performance bounds (9) and (11) are satisfied.

IV. PERFORMANCE ANALYSIS

Here we prove Theorem 1. We first develop a novel Lya-punov drift result enabling stability and performance optimiza-tion to be performed using a single drift analysis.

A. Lyapunov Drift with Utility Metric

Let U(t) = (U (c)n (t)) represent a process of queue backlogs,

and define the Lyapunov function L(U) =∑

nc(U(c)n )2. Let

Rnc(t) represent the input process driving the system, andsuppose these values are bounded so that

∑c gnc(Rnc(t)) ≤

Gmax for all n and all t (for some value Gmax). Assumeutility functions gnc(r) are non-negative and concave, and let(r∗nc) represent a ‘target throughput’ matrix with ideal utility∑

nc gnc(r∗nc).Lemma 1: (Lyapunov Drift) If there are positive constants

V, ε, B such that for all timeslots t and all unfinished workmatrices U(t), the Lyapunov drift satisfies:

∆(U(t))M=E L(U(t + 1))− L(U(t)) | U(t) ≤B − ε

∑nc U

(c)n (t)− V

∑nc gnc(r∗nc)

+V∑

nc E gnc(Rnc(t)) | U(t)then the system is stable, and time average backlog and timeaverage performance satisfies:∑

nc

U(c)n ≤ (B + V NGmax)/ε (14)

lim inft→∞

∑nc

gnc(rnc(t)) ≥∑nc

gnc(r∗nc)−B/V (15)

where:∑

nc U(c)n

M= lim supt→∞1t

∑t−1τ=0

∑nc E

U

(c)n (τ)

rnc(t)M=

1t

t−1∑τ=0

E Rnc(τ)

Proof: The proof is given in Appendix A.To prove Theorem 1, we first develop an expression for

Lyapunov drift from the queueing dynamics (6). To start, notethat any general queue with backlog U(t) and queueing lawU(t + 1) = max[U(t)− µ(t), 0] + A(t) has a Lyapunov driftgiven by:

EU2(t + 1)− U2(t) | U(t)

≤ µ2

max + A2max

−2U(t)E µ(t)−A(t) | U(t) (16)

where Amax and µmax are upper bounds on the arrivaland server variables A(t) and µ(t). This well known factfollows simply by squaring the queueing equation and takingexpectations. Applying the general formula (16) to the specificqueueing law (6) for queue (n, c) and summing the result overall (n, c) pairs yields the following expression for Lyapunovdrift (see [1] [18] for details):

∆(U(t)) ≤ NB − 2∑nc

U (c)n (t)E

∑l∈Ωn

µ(c)l (t)

−∑l∈Θn

µ(c)l (t)−Rnc(t) | U(t)

(17)

where B is defined in (10).Now define the network function Φ(U(t)) and the flow

function Ψ(U(t)) as follows:

Φ(U(t))M=2∑nc

U (c)n E

∑l∈Ωn

µ(c)l −

∑l∈Θn

µ(c)l | U

(18)

Ψ(U(t))M=∑nc

E

V gnc(Rnc)− 2U (c)n Rnc | U

(19)

where we have represented U(t), µ(c)l (t), and Rnc(t) as

U, µ(c)l , and Rnc for notational convenience. Adding and

subtracting the optimization metric V∑

nc E gnc(Rnc) | Uto the right hand side of (17) yields:

∆(U(t)) ≤ NB − Φ(U(t))−Ψ(U(t))

+V∑nc

E gnc(Rnc(t)) | U (20)

The CLC1 policy is designed to minimize the second andthird terms on the right hand side of (20) over all possiblerouting, resource allocation, and flow control policies. Indeed,it is clear that the flow control strategy (7) maximizes Ψ(U(t))over all feasible choices of the Rnc(t) values (compare (7)and (19)). That the routing and resource allocation policy ofCLC1 maximizes Φ(U(t)) is proven in [1] [18], and can beintuitively understood by switching the sums in the definitionof Φ(U(t)) to express this function in terms of differentialbacklog:

Φ(U(t)) = 2∑

l

∑c

E

µ(c)l (t) | U

[U

(c)tran(l) − U

(c)rec(l)

](21)

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 8

B. A Near-Optimal Operating Point

In order to use the Lyapunov drift result to establish theperformance of the CLC1 algorithm, it is important to firstcompare performance to the utility of a near-optimal solutionto the optimization problem (1)-(3). Specifically, for any ε > 0,we define the set Λε as follows:

ΛεM= (rnc) | (rnc + ε) ∈ Λ, rnc ≥ 0 for all (n, c)

Thus, the set Λε can be viewed as the resulting set of ratematrices within the network capacity region when an “ε-layer”of the boundary is stripped away. Note that this set is compactand non-empty whenever ε < µsym, defined in (8). The near-optimal operating point (r∗nc(ε)) is defined as the optimalsolution to the following optimization problem:4

Maximize :∑

nc gnc(rnc) (22)Subject to: (rnc) ∈ Λε

(rnc) ≤ (λnc)

This optimization differs from the optimization in (1)-(3) inthat the set Λ is replaced by the set Λε.

Lemma 2: If utility functions gnc(r) are non-negative andconcave, and if there is a scalar µsym such that (µsym) ∈ Λ,then: ∑

nc

gnc(r∗nc(ε)) →∑nc

gnc(r∗nc) as ε → 0 (23)

Proof: The proof uses convexity of the capacity region Λ[1], and is given in Appendix C.

C. Derivation of Theorem 1

The proof of Theorem 1 relies on the following two lemmas,proven at the end of this subsection.

Lemma 3: If the channel process ~S(t) is i.i.d. over times-lots, then for any ε in the open interval (0, µsym), allocatingresources and routing according to CLC1 yields:

Φ(U(t)) ≥ 2∑nc

U (c)n (t)(r∗nc(ε) + ε)

where (r∗nc(ε)) is the optimal solution of problem (22). Lemma 4: If the channel process is i.i.d. over timeslots

and all reservoirs are infinitely backlogged, then for anyε ∈ (0, µsym) the flow control algorithm of CLC1 yields:

Ψ(U(t)) ≥ V∑nc

gnc(r∗nc(ε))−2∑nc

U (c)n (t)r∗nc(ε)

Plugging the bounds of Lemmas 3 and 4 directly into thedrift expression (20) yields:

∆(U(t)) ≤ NB − 2∑nc

U (c)n (t)(r∗nc(ε) + ε)

−V∑nc

gnc(r∗nc(ε)) + 2∑nc

U (c)n (t)r∗nc(ε)

+V∑nc

E gnc(Rnc(t)) | U

4Note that the final constraint (rnc) ≤ (λnc) is satisfied automaticallyin the case of infinite traffic demand. We include the constraint here as thisoptimization is also important in the treatment of general traffic matrices(λnc) in Section V.

Canceling common terms yields:

∆(U(t)) ≤ NB − 2ε∑nc

U (c)n (t)− V

∑nc

gnc(r∗nc(ε))

+V∑nc

E gnc(Rnc(t)) | U

The above drift expression is in the exact form specified byLemma 1. Thus, network congestion satisfies:∑

nc

U(c)n ≤ (NB + V NGmax)/(2ε) (24)

and time average performance satisfies:∑nc

gnc(rnc) ≥∑nc

gnc(r∗nc(ε))−NB/V (25)

The performance bounds in (24) and (25) hold for any valueε such that 0 < ε < µsym. However, the particular choice ofε only affects the bound calculation and does not affect theCLC1 control policy or change any sample path of systemdynamics. We can thus optimize the bounds separately overall possible ε values. The bound in (25) is clearly maximizedby taking a limit as ε → 0, yielding by (23):

∑nc gnc(rnc) ≥∑

nc gnc(r∗nc) − NB/V . Conversely, the bound in (24) is

minimized as ε → µsym, yielding:∑

nc U(c)n ≤ (NB +

V NGmax)/(2µsym). This proves Theorem 1. We complete the analysis by proving Lemmas 4 and 3.Proof. (Lemma 4) By definition, the flow control policy (7)

maximizes Ψ(U(t)) over all possible strategies [compare (7)and (19)]. Now plug into (19) the particular strategy Rnc(t) =r∗nc(ε) for all t. This is a valid strategy because 1) all reservoirsare assumed to be infinitely backlogged, so there are alwaysr∗nc(ε) units of data available, and 2)

∑c r∗nc(ε) ≤ Rmax

n

(because (r∗nc(ε)) ∈ Λ). Thus:

Ψ(U(t)) ≥∑nc

[V gnc(r∗nc(ε))− 2U (c)

n (t)r∗nc(ε)]

Proof: (Lemma 3) The routing and resource allocationstrategy of CLC1 maximizes Φ(U(t)) over any other policyfor choosing the µ

(c)l (t) values (recall discussion leading to

equation (21)). Now note that (r∗nc(ε) + ε) ∈ Λ, where Λis the network capacity region. In [1] [18], it is shown thatany rate matrix within the capacity region can be supportedby a stationary randomized resource allocation and routingstrategy that chooses µ

(c)l (t) independent of queue backlog.

The expectations of µ(c)l (t) under this strategy are shown in

[1] [18] to satisfy the following flow conservation equality forall nodes n and commodities c:

E

∑l∈Ωn

µ(c)l −

∑l∈Θn

µ(c)l

= r∗nc(ε) + ε (26)

As the value of Φ(U(t)) under the CLC1 strategy mustbe greater than or equal to its value under the stationaryrandomized algorithm, we have from (18) and (26):

Φ(U(t)) ≥ 2∑nc

U (c)n (t)(r∗nc(ε) + ε)

proving the lemma.

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 9

V. SCHEDULING WITH ARBITRARY INPUT RATES

The algorithm CLC1 assumes there is always an amountof data Rnc(t) available in reservoir (n, c), where the flowvariable Rnc(t) is chosen only with respect to the Rmax

n

constraint. Here we assume that all reservoirs have a finite(possibly zero) buffer for data storage, and let Lnc(t) rep-resent the current backlog in the reservoir buffer. The flowcontrol decisions are now subject to the additional constraintRnc(t) ≤ Lnc(t) + Anc(t) (where Anc(t) is the amount ofnew commodity c data exogenously arriving to node n at slott). Any arriving data that is not immediately admitted to thenetwork is stored in the reservoir, or dropped if the reservoirhas no extra space.

Assume the Anc(t) arrivals are i.i.d. over timeslots witharrival rates λnc = E Anc(t). It can be shown that forany matrix (λnc) (possibly outside of the capacity region),modifying the CLC1 flow algorithm to maximize (7) subjectto the additional reservoir backlog constraint yields the sameperformance guarantees (9) and (11) when utility functionsare linear [1]. For nonlinear utilities, such a strategy can beshown to maximize the time average of

∑nc E gnc(Rnc(t))

over all strategies that make immediate admission/rejectiondecisions upon arrival, but may not necessarily maximize∑

nc gnc(E Rnc(t)), which is the utility metric of interest.We solve this problem with a novel technique of defining ad-ditional flow state variables Znc(t). The result can be viewedas a general framework for stochastic network optimization.

Define flow state variables Znc(t) for each reservoir (n, c),and assume Znc(0) = V Rmax

n /2 for all (n, c). For each flowcontrol process Rnc(t), we define a new process Ync(t) asfollows:

Ync(t)M=Rmaxn −Rnc(t) (27)

and note that Ync(t) ≥ 0 for all t. The Ync(t) variablesrepresent the difference between the maximum value andthe actual value of admitted data on session (n, c). TheZnc(t) state variables are updated every slot according to thefollowing ‘queue-like’ iteration:

Znc(t + 1) = max[Znc(t)− γnc(t), 0] + Ync(t) (28)

where γnc(t) are additional flow control decision variables.Define the ‘cost’ function:

hnc(γ)M=gnc(Rmaxn )− gnc(Rmax

n − γ) (29)

Let γnc represent the time average value of the decisionvariables γnc(t). We design a policy to stabilize the networkqueues U

(c)n (t) and the flow state ‘queues’ Znc(t) while

minimizing the cost∑

nc hnc(γnc). The intuitive interpretationof this goal is as follows: If the Znc(t) queues are stabilized, itmust be the case that the time average of the ‘server process’γnc(t) is greater than or equal to the time average of the‘arrival process’ Ync(t): Y nc ≤ γnc. From (27), this impliesrnc ≥ Rmax

n − γnc, and hence:∑nc

hnc(γnc) =∑nc

gnc(Rmaxn )−

∑nc

gnc(Rmaxn − γnc)

≥∑nc

gnc(Rmaxn )−

∑nc

gnc(rnc)

Thus, minimizing∑

nc hnc(γnc) over all feasible γnc valuesis intimately related to maximizing

∑nc gnc(rnc) over all

feasible rnc values.Cross Layer Control Policy 2 (CLC2): Every timeslot and

for each node n, choose Rnc(t) = rnc to solve:

Maximize:∑

c[Znc(t)

N − U(c)n (t)]rnc (30)

Subject to:∑

c rnc ≤ Rmaxn

rnc ≤ Lnc(t) + Anc(t)

Additionally, the flow controllers at each node n choose γnc(t)for each session (n, c) to solve:

Maximize: V gnc(Rmaxn − γnc) + 2Znc(t)

N γnc (31)Subject to: 0 ≤ γnc ≤ Rmax

n

The flow states Znc(t) are then updated according to (28).Routing and resource allocation within the network is the sameas in CLC1.

The optimization of Rnc(t) in (30) is solved by a simple‘bang-bang’ control policy, where no data is admitted fromreservoir (n, c) if U

(c)n (t) > Znc(t)/N , and otherwise as

much data as possible is delivered from the commodities ofnode n with the largest non-negative values of [Znc(t)/N −U

(c)n (t)], subject to the Rmax

n constraint. These bang-bangdecisions also enable the strategy to be implemented optimallyin systems where admitted data is constrained to integralunits, a feature that CLC1 does not have. The γnc(t) variableassignment in (31) involves maximizing a concave functionof a single variable, and can be solved easily by findingthe critical points over 0 ≤ γnc ≤ Rmax

n . For example, ifgnc(r) = log(1 + r), it can be shown that:

γnc = min[max

[1 + Rmax

n − V N

2Znc(t), 0

], Rmax

n

]Suppose channels and arrivals are i.i.d. over timeslots, and

let λnc = E Anc(t). For simplicity of exposition, we furtherassume that new arrivals to node n are deterministicallybounded by Rmax

n , so that∑

c Anc(t) ≤ Rmaxn every slot.

Theorem 2: For arbitrary rate matrices (λnc) (possibly out-side of the capacity region), for any V > 0, and for anyreservoir buffer size (possibly zero), the CLC2 algorithmstabilizes the network and yields a congestion bound:∑

nc

Unc ≤NB + 2

∑n(Rmax

n )2 + V NGmax

2µsym

Further, the time average utility satisfies:

lim inft→∞

∑nc

gnc(rnc(t)) ≥∑nc

gnc(r∗nc)

−NB + 2

∑n(Rmax

n )2

VThe proof is given in Appendix B. Although the reservoir

buffer size does not impact the above result, in practice alarge reservoir buffer helps to ‘smooth out’ any dropped data(preferably by buffering all data corresponding to the samefile) so that FIFO admission can be maintained amongst thevarious network flows.

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 10

0 0.1 0.2 0.3 0.4 0.50

0.1

0.2

0.3

0.4

0.5

0.6

(a) Throughput region

λ1

λ2

0 0.1 0.2 0.3 0.4 0.50

0.1

0.2

0.3

0.4

0.5

0.6

(b) Throughput region

λ1

λ2

100

101

102

103

104

100

101

102

103

104

105

(c) Average backlog v.s. V

V (log scale)

E(U

1+U

2) (l

og s

cale

)

0.1 0.2 0.3 0.4 0.50.2

0.3

0.4

0.5

0.6

0.7(d) Throughput region

λ1

λ2

Proportionalfair point

Optimal point

Theoretical bound

V=10

V=100

V=1000

Optimal point V=10

V=100V=1000

Fig. 3. Simulation of CLC2: (a) Linearly increasing (λ1, λ2) to (0.5, 1.0)for V = 10000 and g1(r) = g2(r) = log(1 + r). (b) Modifying utility2 to: g2(r) = 1.28 log(1 + r). (c)-(d) Fixing (λ1, λ2) = (0.5, 1.0) andillustrating delay and throughput versus V .

VI. SIMULATION RESULTS

Here we simulate the CLC2 policy for three simple networkexamples. We begin with the 2-queue downlink example ofSection II. Packets arrive from each stream according toBernoulli processes, and we assume they are placed into infi-nite buffer storage reservoirs. As before, we assume channelprobabilities are given by p1 = 0.5, p2 = 0.6, and consider onehundred different rate pairs (λ1, λ2) that are linearly scaledtowards the point (0.5, 1.0). For each point we simulate theCLC2 algorithm for 3 million timeslots, using V = 10000,Rmax

n = 2, and g1(r) = g2(r) = log(1 + r). Note that inthis case, we have µin

max = 0, µoutmax = 1, so by (10) we have

B = 5. Thus, for V = 10000 we are ensured by Theorem2 that the resulting utility associated with each rate vector(λ1, λ2) differs from the optimum utility by no more than(5+8)/V = 0.0013 (note that N = 1 for this simple example,as there is only 1 transmitting node). The simulation results areshown in Fig. 3(a), where the achieved throughput increasesto the capacity boundary and then moves directly to the fairpoint (0.4, 0.4).

In Fig. 3(b) we treat the same situation with the exceptionthat utility for user 2 is modified to 1.28 log(1 + r). Thisillustrates the ability to handle priority service, as user 2 trafficis given favored treatment without starving user 1 traffic. Fromthe figure, we see that as input rates are increased the resultingthroughput reaches the capacity boundary and then moves ina new direction, settling and remaining on the new optimaloperating point (0.23, 0.57) once input rates dominate thispoint.

Note that for this example, we have µsym = 0.4 andGmax = 0.784. Thus, by Theorem 2, we know:

U1 + U2 ≤13 + 0.784V

0.8(32)

The above bound holds for any input rate vector (λ1, λ2),including vectors that are far outside of the capacity region.We next keep the same utility as in Fig. 3(b) but fix theinput rate to (λ1, λ2) = (0.5, 1.0), which dominates the

Rates (λij) Throughput (rij) Backlog (U ij).45 .1 .4.1 .7 .15.4 .15 .4

.450 .100 .399

.100 .695 .148

.399 .149 .400

3.3 2.4 3.62.4 2.9 2.73.6 2.7 3.4

(a) Simulation of a switch with feasible traffic

Rates (λij) Throughput (rij) Backlog (U ij).9 .2 .30 .4 .20 .5 0

.598 .100 .2980 .399 .2000 .500 0

31.6 45.3 32.10 14.1 .290 14.2 0

(b) Simulation of an overloaded switch

Fig. 4. Simulation results for the CLC2 algorithm with V = 100 and zeroreservoir buffers. Simulations were run over four million timeslots.

optimal operating point (0.23, 0.57) (so that utility optimalcontrol should achieve this point). In Fig. 3(c) we plot theresulting average queue congestion as V is varied from 1to 104, together with the bound (32). As suggested by thebound, the delay grows linearly with V . In Fig. 3(d) we seehow the achieved throughput of CLC2 approaches the optimaloperating point (0.23, 0.57) as V is increased.

A. Packet Switches

Here we consider a simple 3 × 3 packet switch with acrossbar switch fabric [24] [25]. Packets arrive from threedifferent input ports, and each packet is destined for one ofthree output ports. We let λij represent the rate of packetsarriving to input i and destined for output j. All packets arestored in virtual input queues according to their destinations,and we let Uij represent the current number of backloggedpackets waiting at input i to be delivered to output j. Thesystem is timeslotted, and the crossbar fabric limits schedulingdecisions to permutation matrices, where no input can transfermore than one packet per slot, and no output can receivemore than one packet per slot. Thus, the following feasibilityconstraints are required for stability:

3∑i=1

λij ≤ 1 ∀j ∈ 1, 2, 3 ,3∑

j=1

λij ≤ 1 ∀i ∈ 1, 2, 3

We consider i.i.d. Bernoulli arrivals, and apply the CLC2algorithm using log(1 + r) utility functions, V = 100, andRmax = 3 (the maximum number of arrivals to a single inputduring a slot). In this example we assume that all reservoirshave zero buffers, so that admission/rejection decisions mustbe made immediately upon packet arrival. In Fig. 4(a) wepresent simulation results for a case when the sum rate toevery input port and every output port is exactly 0.95. Notethat average queue backlog is kept very low, while the resultingthroughput is almost identical to the input rate. This illustratesthat the CLC2 algorithm accepts almost all packets into thesystem, and accomplishes this without a-priori knowledge thatthe input traffic is feasible.

We next apply the same CLC2 algorithm to a switch whereinput port 1 and output port 2 are overloaded, as shown in Fig.4(b). The resulting throughput from the simulation is givenin the figure, and is almost indistinguishable from the utilitymaximizing solution of the optimization problem (1)-(3). The

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 11

average backlog in all queues is less than or equal to 45.3packets.

B. Heterogeneous Multi-hop Networks

Here we consider the multi-hop network of Fig. 1, consist-ing of wireless sensor nodes (nodes 6, . . . , 9), a wirelinenetwork, and a wireless basestation that transmits to twomobile users. All packets have fixed lengths. The wireline linksare bidirectional and can transmit 3 packets in each directionduring a single slot. The basestation node 0 can transmit toonly one mobile user per slot, and the downlinks to each userindependently vary between ON and OFF states according toBernoulli processes, with equal likelihood of being ON orOFF. The wireless links of the sensor network are always ON,and can support one packet transfer per slot. However, due tointerference between the various sensor nodes, we assume thatonly one sensor link can be activated per slot (including theoutgoing wireless links of the access nodes 4 and 5).

We assume there are four independent sessions using thenetwork: Two sessions originate from node 9 and consist ofpackets destined for nodes 3 and 1, and two sessions originatefrom node 4 and consist of packets destined for nodes 8 and2. All arrival processes are i.i.d. and Bernoulli, with arrivalrates λ93 = λ91 = λ48 = λ42 = 0.7.

These arrival rates are not supportable by the network.Indeed, note that all packets originating at node 9 must travelover at least 2 sensor links before reaching a wireline accessnode. Likewise, all data from the λ48 stream requires at leasttwo hops through the sensor network. Because at most onesensor link can be activated on any timeslot, it follows that2r93 + 2r91 + 2r48 ≤ 1 is a necessary condition for networkstability, where rij is the throughput of (i, j) traffic. Thebasestation places the following additional constraints on thenetwork flows: r91 ≤ 1/2, r42 ≤ 1/2, and r91 + r42 ≤ 3/4.It is not difficult to verify that these necessary conditionsdescribe the feasible flows for the network, as the wiredlinks to not impose further constraints. Assuming that allsessions have identical utility functions gij(r) = log(1 + r),the optimally fair flows are thus given by r∗91 = r∗93 = r∗48 =1/6 = 0.1667, r∗42 = 0.5.

We implement CLC2 for this network, using V = 1000,Rmax = 2, and assuming infinite buffer reservoirs. Note thatsensor link activations are determined every slot by choosingthe link with the largest differential backlog. The resultingaverage queue length, summed over all queues in the system,is 858.9 packets. The throughputs are: r91 = 0.1658, r93 =0.1662, r48 = 0.1678, r42 = 0.5000. We note that thisperformance is not possible unless almost all packets take theiroptimal 2-hop paths through the sensor network, and hence thebackpressure routing learns the optimal routes.

VII. CONCLUSIONS

We have presented a fundamental approach to stochasticnetwork control for heterogeneous data networks. Simplestrategies were developed that perform arbitrarily close tothe optimally fair throughput point (regardless of the inputtraffic matrix), with a corresponding tradeoff in end-to-end

network delay. The strategies involve resource allocation androuting decisions that are decoupled over the independentportions of the network, and flow control algorithms that aredecoupled over independent control valves at every node. Flowcontrollers require knowledge only of the queue backlog intheir respective source nodes. We note that this techniqueof implementing flow control only at the sources is crucialto ensure no network resources are wasted transmitting datathat will eventually be dropped. It is remarkable that theoverall strategy does not require knowledge of input rates,channel statistics, or the global network topology. Althoughi.i.d. assumptions were made to simplify exposition, the samepolicies can be shown to offer similar performance (withmodified delay expressions) for arbitrary ergodic arrivals andchannels, and are robust to cases when channel probabilitiesor arrival rates change over time [1]. We believe that suchtheory-driven networking strategies will impact the design andoperation of future data networks.

APPENDIX A—PROOF OF LEMMA 1

Proof: The drift condition for ∆(U(t)) in Lemma 1 holdsfor all timeslots t. Taking expectations over the distribution ofU(t) and summing over t ∈ 0, . . . ,M − 1 yields:

E L(U(M))− L(U(0)) ≤ BM

−ε∑M−1

τ=0

∑nc E

U

(c)n (τ)

− V M

∑nc gnc(r∗nc)

+V∑M−1

τ=0

∑nc E gnc(Rnc(τ)) (33)

Using non-negativity of the Lyapunov function and the utilityfunctions as well as the fact that

∑nc gnc(Rnc(τ)) ≤ NGmax,

we rearrange the terms of (33) and divide by Mε to yield:

1M

M−1∑τ=0

∑nc

E

U (c)n (τ)

− E L(U(0))

Mε≤ B + V NGmax

ε

Taking the lim sup as M →∞ yields the backlog bound (14).This backlog bound implies stability of all queues [1] [18].

The utility bound (15) is proved similarly. Indeed, we againrearrange (33) and divide by MV to yield:∑

nc1M

∑M−1τ=0 E gnc(Rnc(τ)) ≥

∑nc gnc(r∗nc)

−B+EL(U(0))/MV (34)

By concavity of gnc(r) together with Jensen’sinequality, it follows that 1

M

∑M−1τ=0 E gnc(Rnc(τ)) ≤

gnc

(1M

∑M−1τ=0 E Rnc(τ)

). Using this fact in (34) and

taking the lim inf as M →∞ yields the result.

APPENDIX B—PROOF OF THEOREM 2

Proof: Define the Lyapunov function L(U,Z) =∑nc(U

(c)n )2 + 1

N

∑nc(Znc)2. The drift expression for this

function is given by summing the drift of the U(c)n (t) queues

and the Znc(t) queues using the general formula (16), wherethe queueing laws are given by (6) and (28). Omitting

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 12

arithmetic details for brevity, we have the following driftexpression:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2 − Φ(U(t))

+2∑nc

E

U (c)n (t)Rnc(t) + Ync(t)

Znc(t)N

| U,Z

∑nc

E

2Znc(t)

Nγnc(t)− V hnc(γnc(t)) | U,Z

∑nc

V E hnc(γnc(t)) | U,Z (35)

where we have added and subtracted the optimization metric∑nc V E hnc(γnc(t)) | U,Z in the right hand side of the

above expression. The CLC2 policy is designed to minimizethe third, fourth, and fifth terms on the right hand sideof the above expression over all possible policies. Indeed,we already know that the routing and resource allocationpolicy maximizes Φ(U(t)). The fourth term in the righthand side is minimized by the strategy (30) that choosesRnc(t) (considering the definition of Ync(t) in (27)). The fifthterm is minimized by the strategy (31) that chooses γnc(t)(considering the definition of hnc(γ) given in (29)).

For a given ε ∈ (0, µsym), a bound on Φ(U(t)) is givenby Lemma 3 in terms of values (r∗nc(ε) + ε). Now con-sider the following alternative flow control strategies: Fixγnc(t) = Rmax

n − r∗nc(ε)M=γ∗nc(ε) for all slots t. Then, every

timeslot independently admit all new arrivals Anc(t) withprobability pnc = r∗nc(ε)/λnc (this is a valid probability (≤ 1)by problem (22), and the admitted data satisfies the Rmax

n

constraint by the deterministic arrival bound). This yieldsE Rnc(t) | U,Z = pncE Anc(t) = r∗nc(ε), and henceE Ync(t) | U,Z = Rmax

n − r∗nc(ε)M=γ∗nc(ε). Plugging these

expectations into the third, fourth, and fifth terms of the abovedrift expression maintains the bound and creates many termsthat can be cancelled. The simplified drift expression becomes:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2 − 2ε

∑nc

U (c)n (t)

+V∑nc

hnc(γ∗nc(ε))− V∑nc

E hnc(γnc(t)) | U,Z

Plugging in the definitions of γ∗nc(ε) and hnc(γ) yields:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2 − V

∑nc

gnc(r∗nc(ε))

−2ε∑nc

U (c)n (t) + V

∑nc

E gnc(Rmaxn − γnc(t)) | U,Z

The above expression is in the exact form for application ofLemma 1, and it follows that unfinished work satisfies:∑

nc

U(c)n ≤

NB + 2∑

n(Rmaxn )2 + V NGmax

2ε(36)

and performance satisfies:

lim inft→∞

∑nc

gnc(Rmaxn − γnc(t)) ≥

∑nc

gnc(r∗nc(ε))

−NB + 2

∑n(Rmax

n )2

V(37)

where γnc(t)M= 1

t

∑t−1τ=0 E γnc(t).

However, it can similarly be shown that all Znc(t) queuesare stable, and in particular that E Znc(t) /t → 0 as t →∞(see Lemma 5 below). Hence, the time average arrival rateinto the Znc(t) queues must be less than or equal to the timeaverage server rate. Specifically, the queueing law (28) impliesthat the accumulated arrivals are less than or equal to the totalservice opportunities plus the current backlog for any time t:

t−1∑τ=0

Ync(τ) ≤t−1∑τ=0

γnc(t) + Znc(t)

Taking expectations of the above inequality, dividing by t, andusing the fact that Ync(t) = Rmax

n −Rnc(t) yields:

Rmaxn − rnc(t) ≤ γnc(t) + E Znc(t) /t

Plugging this inequality directly into (37) and using the non-decreasing property of the gnc(r) functions yields:

lim inft→∞

∑nc

gnc(rnc(t) + E Znc(t) /t) ≥∑nc

gnc(r∗nc(ε))

−NB + 2

∑n(Rmax

n )2

V(38)

By continuity of the gnc(r) functions together with the factthat E Znc(t) /t → 0, it follows that the left hand side aboveinequality is equal to lim inft→∞

∑nc gnc(rnc(t)). The result

of Theorem 2 follows by optimizing the right hand sides ofthe performance bounds (36) and (38) over 0 < ε < µsym ina manner similar to the proof of Theorem 1.

We complete the analysis by proving the following lemma.Lemma 5: Under the assumptions of Theorem 2, all Znc(t)

queues are stable and satisfy:

lim supt→∞

1t

t−1∑τ=0

∑nc

E Znc(t) ≤ D + V NGmax/(2µsym)

(39)where D M=N2B/(2µsym) + N

µsym

∑n(Rmax

n )2. Furthermore,for all (n, c) pairs we have E Znc(t) /t → 0 as t →∞.

Proof: The third, fourth, and fifth terms of the driftexpression (35) are minimized under the CLC2 policy. Inparticular, these terms are smaller than they would be undera control policy that uses a fixed value γnc(t) = Rmax

n forall t, and that makes random flow control decisions yieldingE Rnc(t) = µsym every timeslot t (so that E Ync(t) =Rmax

n − µsym). Further, because (µsym) ∈ Λ, we have thatΦ(U(t)) ≥ 2

∑nc U

(c)n (t)µsym (recall discussion leading to

equation (21)). Using these substitutions in (35) yields:

∆(U(t), Z(t)) ≤ NB + 2∑

n

(Rmaxn )2

− 2N

∑nc

Znc(t)µsym + V Gmax

where we have used the fact that 0 ≤ hnc(r) ≤ Gmax.The above expression is in the exact form for application

of Lemma 1, proving (39). The fact that E Znc(t) /t → 0follows from (39) together with a simple fact about sequenceswith bounded variation, given below.

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 13

Lemma 6: Let z(t) be a sequence of non-negative valuesindexed by time t ∈ 0, 1, 2, . . ., and suppose that there arepositive constants D, θ such that:• lim supt→∞

1t

∑t−1τ=0 z(τ) ≤ D

• |z(t + 1)− z(t)| ≤ θ for all t

Then z(t)/t → 0 as t →∞.By defining z(t) = E Znc(t), using (39), and noting that

the one-step variation in z(t) is no more than Rmaxn , this

lemma implies that E Znc(t) /t → 0 for all (n, c).Proof: (Lemma 6) Suppose it is not true that z(t)/t → 0.

Then there exists a value ε > 0 and a sequence of timest1, t2, . . . , tn, . . . such that tn → ∞ as n → ∞, andz(tn)/tn ≥ ε for all n. Define M M=2Dθ/ε. At any time tnsuch that εtn > M , we have that z(tn) ≥ εtn, and becausez(t) can increase by at most θ every timestep, it must be thecase that z(t) ≥ M for all t such that tn − T ≤ t ≤ tn,where T ≥ (z(tn) − M)/θ. It follows that over the interval0 ≤ t ≤ tn, the fraction of time that z(t) ≥ M is at leastT/tn. Hence:

1tn + 1

tn∑τ=0

z(τ) ≥ MT/tn

≥ M(z(tn)−M)θtn

≥ M(εtn −M)θtn

Taking the lim sup as n →∞ yields:

lim supn→∞

1tn + 1

tn∑τ=0

z(τ) ≥ Mε/θ = 2D

But, by assumption, the left hand side of the above inequalityis less than or equal to D, a contradiction.

APPENDIX C — PROOF OF LEMMA 2

Let (r∗nc(ε)) represent the optimal solution to problem (22)(optimized over the set Λε), and let (r∗nc) represent the solutionof the problem (1)-(3) (optimized over the set Λ). Lemma 2follows as an immediate consequence of the following claim.

Claim: If the gnc(r) functions are non-negative and concave,and if (µsym) ∈ Λ, then for any ε such that 0 < ε < µsym,we have:∑

nc

gnc(r∗nc) ≥∑nc

gnc(r∗nc(ε))

≥∑nc

gnc(r∗nc)− ε∑nc

gnc(r∗nc)µsym

Proof: The inequality∑

nc gnc(r∗nc) ≥∑

nc gnc(r∗nc(ε))follows by the fact that Λε ⊂ Λ, and hence the maximumutility over the larger set Λ is greater than or equal to themaximum utility over the smaller set Λε.

To prove the second inequality, note that (r∗nc) ∈ Λ and(µsym) ∈ Λ, and hence by convexity of the capacity regionΛ we have (1 − ε

µsym)(r∗nc) + ε

µsym(µsym) ∈ Λ (assuming

0 < ε < µsym). It follows that (1 − εµsym

)(r∗nc) ∈ Λε. By

definition of (r∗nc(ε)) as the utility maximizer of the problem(22), we have:∑

nc

gnc(r∗nc(ε)) ≥∑nc

gnc

((1− ε

µsym)r∗nc

)(40)

Now note that for any non-negative concave function g(r)and any positive values r, δ such that r − δ ≥ 0, we havethat g(r− δ) ≥ g(r)− δg(r)/r. Hence, the right hand side ofthe inequality (40) is greater than or equal to

∑nc gnc(r∗nc)−∑

ncεr∗ncgnc(r

∗nc)

µsymr∗nc, proving the result.

REFERENCES

[1] M. J. Neely. Dynamic Power Allocation and Routing for Satelliteand Wireless Networks with Time Varying Channels. PhD thesis,Massachusetts Institute of Technology, LIDS, 2003.

[2] M. J. Neely, E. Modiano, and C. Li. Fairness and optimal stochasticcontrol for heterogeneous networks. Proceedings of IEEE INFOCOM,March 2005.

[3] J. W. Lee, R. R. Mazumdar, and N. B. Shroff. Downlink powerallocation for multi-class cdma wireless networks. IEEE Proceedings ofINFOCOM, 2002.

[4] R. Berry, P. Liu, and M. Honig. Design and analysis of downlinkutility-based schedulers. Proceedings of the 40th Allerton Conferenceon Communication, Control, and Computing, Oct. 2002.

[5] P. Marbach and R. Berry. Downlink resource allocation and pricing forwireless networks. IEEE Proc. of INFOCOM, 2002.

[6] D. Julian, M. Chiang, D. O’Neill, and S. Boyd. Qos and fairnessconstrained convex optimization of resource allocation for wirelesscellular and ad hoc networks. Proc. INFOCOM, 2002.

[7] L. Xiao, M. Johansson, and S. Boyd. Simultaneous routing and resourceallocation for wireless networks. Proc. of the 39th Annual Allerton Conf.on Comm., Control, Comput., Oct. 2001.

[8] B. Krishnamachari and F. Ordonez. Analysis of energy-efficient, fairrouting in wireless sensor networks through non-linear optimization.IEEE Vehicular Technology Conference, Oct. 2003.

[9] P. Marbach. Priority service and max-min fairness. IEEE Proceedingsof INFOCOM, 2002.

[10] F.P. Kelly, A.Maulloo, and D. Tan. Rate control for communicationnetworks: Shadow prices, proportional fairness, and stability. Journ. ofthe Operational Res. Society, 49, p.237-252, 1998.

[11] F. Kelly. Charging and rate control for elastic traffic. EuropeanTransactions on Telecommunications, 1997.

[12] R. Johari and J. N. Tsitsiklis. Network resource allocation and acongestion game. Submitted to Math. of Oper. Research, 2003.

[13] X. Lin and N. B. Shroff. The impact of imperfect scheduling on cross-layer rate control in wireless networks. IEEE Proceedings of INFOCOM,2005.

[14] S. H. Low. A duality model of tcp and queue management algorithms.IEEE Trans. on Networking, Vol. 11(4), August 2003.

[15] X. Liu, E. K. P. Chong, and N. B. Shroff. A framework for opportunisticscheduling in wireless networks. Computer Networks, vol. 41, no. 4, pp.451-474, March 2003.

[16] R. Cruz and A. Santhanam. Optimal routing, link scheduling, andpower control in multi-hop wireless networks. IEEE Proceedings ofINFOCOM, April 2003.

[17] L. Tassiulas and A. Ephremides. Stability properties of constrainedqueueing systems and scheduling policies for maximum throughput inmultihop radio networks. IEEE Transacations on Automatic Control,Vol. 37, no. 12, Dec. 1992.

[18] M. J. Neely, E. Modiano, and C. E Rohrs. Dynamic power allocation androuting for time varying wireless networks. IEEE Journal on SelectedAreas in Communications, January 2005.

[19] M. J. Neely, E. Modiano, and C. E. Rohrs. Power allocation and routingin multi-beam satellites with time varying channels. IEEE Transactionson Networking, Feb. 2003.

[20] E. M. Yeh and A. S. Cohen. Throughput and delay optimal resourceallocation in multiaccess fading channels. Proceedings of the Interna-tional Symposium on Information Theory, May 2003.

[21] L. Tassiulas and A. Ephremides. Dynamic server allocation to parallelqueues with randomly varying connectivity. IEEE Trans. on Inform.Theory, vol. 39, pp. 466-478, March 1993.

JOURNAL VERSION OF INFOCOM (2005) [2] AND CHAPTER 5 OF PH.D. DISSERTATION (2003) [1] 14

[22] M. Andrews, K. Kumaran, K. Ramanan, A. Stolyar, and P. Whiting.Providing quality of service over a shared wireless link. IEEE Commu-nications Magazine, 2001.

[23] N. Kahale and P. E. Wright. Dynamic global packet routing in wirelessnetworks. IEEE Proceedings of INFOCOM, 1997.

[24] N. McKeown, V. Anantharam, and J. Walrand. Achieving 100%throughput in an input-queued switch. Proc. INFOCOM, 1996.

[25] E. Leonardi, M. Melia, F. Neri, and M. Ajmone Marson. Bounds onaverage delays and queue size averages and variances in input-queuedcell-based switches. Proc. INFOCOM, 2001.

[26] A. Eryilmaz and R. Srikant. Fair resource allocation in wireless networksusing queue-length-based scheduling and congestion control. IEEEProceedings of INFOCOM, March 2005.

[27] S. Borst. User-level performance of channel-aware scheduling algo-rithms in wireless data networks. IEEE INFOCOM, 2003.

[28] D. N. Tse. Optimal power allocation over parallel broadcast channels.Proceedings of the International Symposium on Information Theory,June 1997.

[29] H. Kushner and P. Whiting. Asymptotic properties of proportional-fairsharing algorithms. 40th Annual Allerton Conference on Communica-tion, Control, and Computing, 2002.

[30] V. Tsibonis, L. Georgiadis, and L. Tassiulas. Exploiting wireless channelstate information for throughput maximization. IEEE Proceedings ofINFOCOM, April 2003.

[31] D. P. Bertsekas, A. Nedic, and A. E. Ozdaglar. Convex Analysis andOptimization. Boston: Athena Scientific, 2003.

[32] U. C. Kozat, I. Koutsopoulos, and L. Tassiulas. A framework for cross-layer design of energy-efficient communication with qos provisioning inmulti-hop wireless networks. INFOCOM, 2004.

[33] L. Li and A. Goldsmith. Capacity and optimal resource allocation forfading broadcast channels: Part i: Ergodic capacity. IEEE Trans. Inform.Theory, ppl. 1083-1102, March 2001.