our theoretical claims.

A wireless ad hoc network consists of a collection of wireless nodes without a fixed infrastructure.Each node in the network forwards packets for its peer nodes, and each end-to-end flow traverses multiplehops of wireless links from a source to a destination. Compared with wireline networks where flowsonly contend at the router that performs flow scheduling (contention in the time domain), the uniquecharacteristics of multi-hop wireless networks show that flows also compete for shared channel if they are

Yuan Xue, Klara Nahrstedt are affiliated with the Department of Computer Science, University of Illinois at Urbana-Champaign. Their emailaddresses are {xue,klara}@cs.uiuc.edu. Baochun Li is affiliated with the Department of Electrical and Computer Engineering, University ofToronto. His email address is bli@eecg.toronto.edu. 2

within the interference ranges of each other (contention in the spatial domain). This presents the problemof designing a topology-aware resource allocation algorithm that is both optimal with respect to resourceutilization and fair across contending multi-hop flows. In previous work, fair packet scheduling mechanisms have been proposed [1], [2], [3] and shown toperform effectively in providing fair shares among single-hop flows in wireless ad hoc networks, andin balancing the trade-off between fairness and resource utilization. However, none of the previouslyproposed algorithms has considered end-to-end flows spanning multiple hops, which reflect the realityin wireless ad hoc networks. While these mechanisms may be sufficient for maintaining basic fairnessproperties among localized flows, they do not coordinate intra-flow resource allocations between upstreamand downstream hops of an end-to-end flow, and thus will not be able to achieve global optimum withrespect to resource utilization and fairness. Due to the complexities of such intra-flow coordinations, we are naturally led to a price-based strategy,where prices are computed as signals to reflect relations between resource demands and supplies, and areused to coordinate the resource allocations at multiple hops. Previous research in wireline network pricing(e.g., [4], [5], [6]) has shown that pricing is effective as a means to arbitrate resource allocation. In theseresearch results, a shadow price is associated with a wireline link to reflect relations between the trafficload of the link and its bandwidth capacity. A utility is associated with an end-to-end flow to reflect itsresource requirement. Transmission rates are chosen to respond to the aggregated price signals along end-to-end flows such that the net benefits (the difference between utility and cost) of flows are maximized. Ithas been shown that [4], [5] at equilibrium, such a price-based strategy of resource allocation may achieveglobal optimum, where resource is optimally utilized. Moreover, by choosing appropriate utilities, variousfairness models can be achieved. Unfortunately, there exist fundamental differences between multi-hop wireless ad hoc networks andtraditional wireline networks, preventing verbatim applications of the existing pricing theories. In multi-hop wireless networks, flows that traverse the same geographical vicinity contend for the same wirelesschannel capacity. This is in sharp contrast with wireline networks, where only flows that traverse the samelink contend for its capacity. When it comes to pricing, we may conveniently associate shadow priceswith individual links in wireline networks to reflect their resource demand and supply. This is not feasiblein wireless networks with the presence of location dependent contention. Due to the decentralized and 3

self-organizing nature of ad hoc networks, the quest for a fully distributed and adaptive algorithm furtherexacerbates the problem. In this paper, we address these unique characteristics of wireless ad hoc networks, and follow a price-based strategy to allocate channel bandwidth to competing multi-hop flows. The fundamental questionwe seek to answer is: how much bandwidth should we allocate to each of the end-to-end flows, so thatscarce resources in a wireless network may be optimally and fairly utilized? Towards this goal, our originalcontributions are two-fold. First, we build a pricing framework specifically tailored to the contention modelof wireless networks, and establish shadow prices based on the notion of maximal cliques in wireless linkcontention graphs, rather than individual links as in wireline networks. In such a price-based theoreticalframework, the price of an end-to-end multi-hop flow is the aggregate of prices of all its subflows, whilethe price of each of the subflows is the sum of shadow prices of all maximal cliques that it belongs to.With our new pricing framework, by choosing the appropriate utility functions, the optimality of resourceallocations — in terms of both fairness and utilization — may be achieved by maximizing the aggregatedutility across all flows. Second, we present a two-tier distributed algorithm to compute the bandwidthallocation for each of the end-to-end flows based on our price-based theoretical framework. The first tierof the algorithm constitutes an iterative algorithm that determines per-clique shadow prices and end-to-end flow resource allocations. We show that this algorithm converges to the unique equilibrium wherethe aggregated utility is maximized. The second tier of the algorithm constructs the maximal cliques in adistributed manner. To facilitate its deployment in practical network environments, the algorithm is furtherimproved to accommodate asynchronous communications. We have performed extensive simulations undera variety of network settings and showed that our solution is practical for multi-hop wireless networks. The remainder of this paper is organized as follows. We first present our price-based theoreticalframework in wireless ad hoc networks (Sec. II and Sec. III). We then proceed to design a two-tierdecentralized algorithm in Sec. IV, which is further refined to accommodate asynchrony in Sec. V. Finally,we evaluate the performance of our algorithm in a simulation-based study (Sec. VI), discuss related work(Sec. VII) and conclude the paper (Sec. VIII).

II. R ESOURCE C ONSTRAINTS IN W IRELESS A D H OC N ETWORKS

In this paper, we consider a wireless ad hoc network that consists of a set of nodes V . Each nodei ∈ V has a transmission range dtx and an interference range dint , which can be larger than dtx . Packet 4

transmission in such a network is subject to location-dependent contention. There exist two models forpacket transmission in wireless networks in the literature [7], generally referred to as the protocol modeland the physical model. In the case of a single wireless channel, these two models are presented as follows.

1) The Protocol Model: In the protocol model, the transmission from node i to j, (i, j ∈ V ) is successful if (1) the distance between these two nodes dij satisfies dij < dtx ; (2) any node k ∈ V , which is within the interference range of the receiving node j, dkj ≤ dint is not transmitting. This model can be further refined towards the case of IEEE 802.11-style MAC protocols, where the sending node i is also required to be free of interference as it needs to receive the link layer acknowledgment from the receiving node j. Specifically, any node k ∈ V , which is within the interference range of the nodes i or j (i.e., dkj ≤ dint or dki ≤ dint ), is not transmitting. 2) The Physical Model: This model is directly related to the physical layer characteristics. The trans- mission from node i to j is successful if the signal-to-noise ratio at the node j, SN Rij , is not smaller than a minimum threshold: SN Rij ≥ SN Rthresh .

In this paper, we focus our attention on solving problems of resource allocation based on the protocolmodel, with particular interest in IEEE 802.11-style MAC protocols due to their popular deployment inrealistic wireless systems. The problems of resource allocation under the physical model is beyond thescope of this paper, and left as a future research direction. Under the protocol model, a wireless ad hocnetwork can be regarded as a bidirectional graph G = (V, E). E ⊆ 2V denotes the set of wireless links,which are formed by nodes that are within the transmission range of each other. A wireless link e ∈ Eis represented by its end nodes i and j, i.e., e = {i, j}. In such a network, there exists a set of end-to-end flows, denoted as F . Each flow f ∈ F goes throughmultiple hops in the network, passing a set of wireless links E(f ). A single-hop data transmission in theflow f along a particular wireless link is referred to as a subflow of f . Obviously, there may exist multiplesubflows along the same wireless link. We use the notation S(S ⊆ E) to represent a set of wireless linksin G, such that each of the wireless links in S carries at least one subflow, i.e., the wireless link is notidle. Based on the protocol model, flows in a wireless ad hoc network contend for shared resources in alocation-dependent manner: two subflows contend with each other if either the source or destination ofone subflow is within the interference range (dint ) of the source or destination of the other. Among a set 5

of mutually contending subflows, only one of them may transmit at any given time. Thus the aggregatedrate of all subflows in such a set may not exceed the channel capacity. Formally, we consider a wirelesslink contention graph [3] Gc = (Vc , Ec ), in which vertices correspond to the wireless links (i.e., Vc = S),and there exists an edge between two vertices if the subflows along these two wireless links contend witheach other. In a graph, a complete subgraph is referred to as a clique. A maximal clique is defined as a cliquethat is not contained in any other cliques. In a wireless link contention graph, the vertices in a maximalclique represent a maximal set of mutually contending wireless links, along which at most one subflowmay transmit at any given time. We proceed to consider the problem of allocating rates to wireless links. We claim that a rate allocationy = (ys , s ∈ S) is feasible, if there exists a collision-free transmission schedule that allocates ys to s.Formally, if a rate allocation y = (ys , s ∈ S) is feasible, then the following condition is satisfied [2]:

∀q ∈ Q, ys ≤ C (1) s∈V (q)

where Q is the set of all maximal cliques in Gc , and C is the channel capacity. For a clique q in thewireless link contention graph Gc , V (q) ⊆ S is the set of its vertices. Eq. (1) gives an upper bound on the rate allocations to the wireless links. In practice, however, sucha bound may not be tight, especially with carrier-sensing-multiple-access-based wireless networks (suchas IEEE 802.11). In this case, we introduce Cq , the achievable channel capacity at a clique q. More

formally, if s∈V (q) ys ≤ Cq then y = (ys , s ∈ S) is feasible. To this end, we observe that each maximalclique may be regarded as an independent channel resource unit with capacity Cq . It motivates the useof a maximal clique as a basic resource unit for pricing in wireless ad hoc networks, as compared to thenotion of a link in wireline networks. We now proceed to consider resource constraints on rate allocations among flows. To facilitate discus-sions, we define a clique-flow matrix R = {Rqf }, where Rqf = |V (q) ∩ E(f )| represents the number ofsubflows that flow f has in the clique q. If we treat a maximal clique as an independent resource, then theclique-flow matrix R represents the “resource usage pattern” of each flow. Let the vector C = (Cq , q ∈ Q)be the vector of achievable channel capacities in each of the cliques. In a wireless ad hoc networkG = (V, E) with a set of flows F , there exists a feasible rate allocation x = (xf , f ∈ F ), if and only if 6

And when dint = 2 · dtx ,

4 2 3 1 x ≤ C . 7

In summary, the unique characteristics of location-dependent contention in wireless ad hoc networks

imply a fundamentally different resource model compared to the case of wireline networks. In wirelinenetworks, the capacity of a link represents the constraint on flows contending for its bandwidth, which isindependent from other links. However, in the case of wireless ad hoc networks, the capacity of a wirelesslink is interrelated with other wireless links in its vicinity. Such a fundamental difference calls for a newtreatment with respect to the models of resource constraints and allocations in wireless networks. Ouroriginal contribution towards this direction is one of the highlights of this paper.

We now formally present our new pricing framework based on previous observations with respect toresource constraints in wireless ad hoc networks.

A. Primal problem: optimal resource allocation

We associate each end-to-end flow f ∈ F with a utility function Uf (xf ) : R+ → R+ , which representsthe degree of satisfaction of its corresponding end user. Moreover, we make the following assumptionsabout Uf .

We investigate the problem of optimal rate allocation in the sense of maximizing the aggregated utilityfunction, which is also referred to as the social welfare in the literature. Such an objective achieves Paretooptimality with respect to the resource utilization, and also realizes different fairness models — includingproportional and max-min fairness [6] — when appropriate utility functions are specified. We argue that,the problem of optimal resource allocation in wireless ad hoc networks may be formulated as the followingnon-linear optimization problem (primal problem):

P : maximize Uf (xf ) (2) f ∈F subject to Rx ≤ C (3)

over x f ∈ If (4) 8

The objective function in Eq. (2) of the optimization problem maximizes the aggregated utility of allflows. The constraint of the optimization problem (Inequality (3)) is the resource constraint from theshared wireless channel as discussed in Sec. II. By optimizing towards such an objective, both optimalresource utilization and fair resource allocations may be achieved among end-to-end flows spanningmultiple hops.

B. Dual problem: clique-based pricing framework

We proceed to study how the solution to the problem P may be derived, so that optimal resourceallocation in terms of both utilization and fairness may be achieved. By the assumption A1, the objectivefunction of P in Eq. (2) is differentiable and strictly concave. In addition, the feasible region of theoptimization problem in Inequality (3) and (4) is convex and compact. By non-linear optimization theory,there exists a maximizing value of argument x for the above optimization problem. Let us consider theLagrangian form of the optimization problem P:

L(x; µ) = (Uf (xf ) − xf µq Rqf ) + µq Cq (5) f ∈F q∈Q q∈Q

where µ = (µq , q ∈ Q) is a vector of Lagrange multipliers.

Now we seek a decentralized solution where knowledge of utility functions of all flows is not needed.The key to decentralization is to investigate its dual problem, and to decompose the problem via pricing.Let us first consider the dual problem D of the primal problem P as follows.

D : min D(µ) (6)

µ≥0

where

D(µ) = max L(x; µ) (7)

xf ∈If

= max (Uf (xf ) − xf µq Rqf ) + µq Cq xf ∈If f ∈F q:E(f )∩V (q)=∅ q∈Q

Let us also define

λf = µq Rqf (8) q:E(f )∩V (q)=∅

In this equation, the Lagrange multipliers µq may be interpreted as the implied cost of a unit flow 9

accessing the channel in the maximal clique q. More straightforwardly, µq is the shadow price of theclique q. λf , on the other hand, may be interpreted as the shadow price of the flow f . From Eq. (8), wemay observe that flow f needs to pay for all the maximal cliques that it traverses. For each clique, theprice to pay is the product of the number of wireless links that f traverses in this clique and the shadowprice of the clique. Alternatively, since

λf = µq Rqf = µq (9) q:E(f )∩V (q)=∅ s:s∈E(f ) q:s∈V (q)

the shadow price of a flow is also the aggregated price of all its subflows. For each subflow, its price isthe aggregated price of all the maximal cliques that it belongs to. We illustrate these observations with an example, shown in Fig. 2. The wireline network shown inFig. 2(a) has a chain topology consisting of four links, associated with prices µ1 , µ2 , µ3 , µ4 . In this case,

the price of the flow f is λf = 4l=1 µl . In comparison, though the wireless ad hoc network in Fig. 2(b)(in this example dint = dtx ) has the same topology, its maximal cliques q1 = {{1, 2}, {2, 3}, {3, 4}} andq2 = {{2, 3}, {3, 4}, {4, 5}} are, in effect, its units for resource allocations. Let the shadow prices of thesetwo cliques be µ1 and µ2 . The price of flow f that traverses these two cliques is given by λf = 3µ1 + 3µ2 ,which is the sum of the product of the number of subflows of f in each clique and the shadow price ofthis clique. Alternatively, the price can also be written as λf = µ1 + (µ1 + µ2 ) + (µ1 + µ2 ) + µ2 , which isthe sum of the prices of its subflows. The price of each subflow is the aggregated price of all the maximalcliques that it belongs to.

µ1 µ2 µ3 µ4 µ1 µ2

1 2 3 4 5 1 2 3 4 5 f f

(a) Wireline network (b) Wireless ad hoc network

Fig. 2. Price-based framework: a comparison.

IV. T WO - TIER P RICE - BASED A LGORITHM FOR R ESOURCE A LLOCATIONS

With an objective of promoting theory to practice, we proceed to present a decentralized two-tier

algorithm based on the clique-based theoretical pricing framework that we have presented. The objectiveof the algorithm is to achieve optimal resource allocation in wireless ad hoc networks. In the first tier, we 10

design an iterative algorithm that determines per-clique prices and flow rate allocations. In the second tier,we present a decentralized algorithm to construct maximal cliques. Finally, we discuss the implementationchoices to integrate these two tiers.

A. First tier: per-clique price calculation

Treating cliques as units of resource allocation, we first present an iterative algorithm that solves theproblem P. The iterative algorithm we propose applies the gradient projection method to the dual problemD. Let

φf (xf ) = Uf (xf ) − λf xf (10)

As λf is the shadow price of the flow f , φf (xf ) may be considered as the net benefit of the flow f ,which is the difference between its utility and its cost. By assumption A1, φf (xf ) is strictly concave andtwice continuously differentiable. Therefore, a unique maximizer of φf (xf ) exists when

xf (λf ) = arg max {φf (xf )} (12)

reflects the optimal rate for flow f , where its net benefit is maximized with a flow price of λf . Now we solve the dual problem D using the gradient projection method [8]. In this method, µ isadjusted in the opposite direction to the gradient ∇D(µ):

∂D(µ(t)) + µq (t + 1) = [µq (t) − γ ] (13) ∂µq

where γ is the step size. D(µ) is continuously differentiable since Uf is strictly concave [8]. Thus, basedon Eq. (7), the q-dimension of the gradient is given as follows.

∂D(µ) = Cq − xf (λf )Rqf (14) ∂µq f :E(f )∩V (q)=∅ 11

Eq. (14) gives the difference between the resource capacity Cq and its load demand f :E(f )∩V (q)=∅ xf (λf )Rqf ,which are the rates of all flows that pass this clique multiplied by the number of subflows they have inthis clique. Substituting Eq. (14) into (13), we have

Eq. (15) reflects the law of supply and demand. If the demand for bandwidth at clique q exceeds its supplyCq , the resource constraint is violated. Thus, the clique price µq is increased. Otherwise, µq is reduced. We summarize the first-tier iterative algorithm in Table I, where clique q and flow f are considered asabstract entities capable of computing and communicating. In the second tier of the algorithm, details ofsuch entities will be presented.

the “longest” path. We further define Z(q) = f ∈F Rqf , leading to the definition of Z̄ = maxq∈Q Z(q)as the number of subflows at the most “congested” clique. Let κ̄ = maxf ∈F κf , where κf is the boundon the curvature of Uf (·) (see assumption A2). Theorem 1. Assume that 0 < γ < 2/κ̄Ȳ Z̄, starting from any initial rates x(0)(xf ∈ If ) and pricesµ(0) ≥ 0, every limit point (x∗ , µ∗ ) of the sequence (x(t), µ(t)) generated by the algorithm in Table Iis primal-dual optimal. Proof: The reader is referred to Appendix B for a detailed proof.

12

B. Second tier: decentralized clique construction

The first tier of the algorithm treats maximal cliques as entities that are able to perform the com-munication and computation tasks. Obviously, these tasks need to be performed by the network nodesthat constitute the maximal clique. As a starting point, a decentralized algorithm to construct maximalcliques is required. Since the existing maximal clique construction algorithms are centralized in nature [9],they can not be directly applied here. Nevertheless, the unique graphical properties of the wireless linkcontention graph may have the potential to facilitate efficient clique construction. Hereafter, we presenta decentralized maximal clique construction algorithm that explores the characteristics of wireless linkcontention graphs. In this algorithm, the network topology is decomposed into overlapping subgraphs, andmaximal cliques are constructed based only on local topological information within each of the subgraphs.Since only wireless links that are geographically close to each other will form an edge in the wirelesslink contention graph, the communication and computational overhead is significantly reduced. We first show the implication of topological characteristics of wireless link contention graphs when itcomes to constructing maximal cliques. Let us denote the maximal clique that contains wireless link s ∈ Sas q(s) (i.e., s ∈ V (q)), and the set of all maximal cliques that contain the wireless link s as Q(s) = {q(s)}.We now give the subgraph of G on which Q(s) can be constructed. To facilitate discussions, we introducethe following terms. Definition 1 (neighbor sets). The wireless link neighbor set LN(e) of a wireless link e ∈ E is definedas LN(e) = {e |e ∩ e = ∅, e ∈ E}. Similarly, the wireless link k-neighbor set LNk (e) of e is defined byinduction: (1) LN1 (e) = LN(e); and (2) LNk (e) = LN(LNk−1 (e)) for k > 1. For s ∈ S ⊆ E, we furtherdefine SNk (s) = LNk (s) ∩ S. Theorem 2. Let graph Gc [Vc (s)] be an induced subgraph of Gc with Vc (s) = SN2 (s) ⊆ Vc . ThenGc [Vc (s)] contains sufficient and necessary topological information to construct Q(s), when dint = dtx .And Gc [Vc (s)] contains necessary topological information to construct Q(s), when dint > dtx . Let graphG(s) be G(s) = (V (s), E(s)) with E(s) = LS3 (s) and V (s) = {i|∃s such that i ∈ s and s ∈ SN2 (s)}.G(s) is a subgraph G, and G(s) contains sufficient and necessary topological information to constructGc [Vc (s)]. Proof: When dint = dtx by the definitions of the wireless link contention graph and clique, it is obviousthat ∪q∈Q(s) V (q) = SN2 (s). This shows that Gc [Vc (s)] contains sufficient and necessary topological 13

information to construct Q(s). Also, for any pair of s , s ∈ SN2 (s), we need to know whether they contendwith each other to determine whether they are connected in Gc [Vc (s)]. Apparently, LN3 (s) contains allthe topological information to construct Gc [Vc (s)]. When dint > dtx , there may exist wireless links whichinterfere with each other, yet not connected by any other wireless links in the network topology. ThusGc [Vc (s)] only contains necessary topological information.

For wireless link s ∈ S, one of its vertices will be selected as its delegation node, denoted as v(s).The delegation node v(s) constructs all maximal cliques q ∈ Q(s) by applying the Bierstone algorithm[9] on graph Gc [Vc (s)].

7 13

3 5 8 14 f1 9 1 2 12 4 6

10 11 f2

Fig. 3. Example of decentralized clique construction

We consider an example shown in Fig. 3. When dint = dtx , the set of wireless links SN2 ({1, 2}) ={{8, 3},{3, 1}, {1, 2}, {2, 5}, {5, 14}, {6, 11}, {6, 12}} represents all the vertices that appear in Gc [Vc ({1, 2})]. Toconstruct all the maximal cliques Q({1, 2}), the algorithm also needs to determine which wireless linksin SN2 ({1, 2}) contend with each other. For example, in Fig. 3, whether subflow {5, 14} contends with{6, 12} needs to be known to determine whether they are within the same clique. This implies that theknowledge of the wireless link {12, 14} needs to be known by the algorithm for correct clique construction.Thus LN3 ({1, 2}) = SN2 ({1, 2}) ∪ {12, 14} needs to be known. When dint > dtx , the network topologygraph does not have sufficient information to infer all the interferences among wireless links. In this case,the clique construction algorithm only provides an approximation solution. For practical deployment, itwill work with the measurement-based bandwidth estimation technique presented in Sec. VI, which takesinto account the interferences among wireless communications.

C. Two-tier algorithm: integration choices

In the first tier of the algorithm, maximal clique q is considered as an entity that is able to perform thefollowing tasks: 14

After presenting the decentralized clique construction algorithm, we now proceed to discuss how thesetasks are distributed to the network nodes that constitute the maximal clique. There are two implementationchoices. In implementation I, one delegation node in clique q serves as a master that performs the task of pricecalculation, denoted as v(q). At time t, each delegation node v(s) collects the rate of flow f which passes

V. T OWARDS A SYNCHRONY: I MPROVING THE T WO -T IER A LGORITHM

Our two-tier algorithm assumes that updates at the sources and the relaying nodes are synchronized tooccur at times t = 1, 2, . . .. In realistic ad hoc network environments, however, such synchronization isdifficult to achieve. In this section, we improve the algorithm to an asynchronous setting, where sendingrates and clique prices are updated at different times at different nodes. First, we briefly introduce the asynchronous model that will be used for our algorithm in the contextof implementation I. Let T = {0, 1, 2, ...} be the set of time instances at which either rates or prices areupdated. In particular, we define

1) Tq ⊆ T — the set of time instances at which master node v(q) updates µq ;

2) Tsλ ⊆ T — the set of time instances at which delegation node v(s) updates λs ; 3) Tf ⊆ T — the set of time instances at which the source of flow f updates xf ; 4) Tsy ⊆ T — the set of time instances at which delegation node v(s) updates ys .

The asynchronous model further makes the following assumption.

1) For every flow f , clique q and wireless link s, the time between consecutive updates is bounded by B for both price and rate updates. 2) One-way communication delay between any two nodes is at most B time units.

This partial asynchronism model is first discussed in [10] and is then adopted by Low et al. in thecontext of wireline networks [5]. Now we improve our two-tier resource allocation algorithm and analyzeits convergence under this asynchronous model. In the asynchronous environment, node v(q), which updates the price µq (t) at time t ∈ Tq , may nothave the knowledge of rate information ys (t). Instead, it only knows a sequence of recent rate updatesys ((τsq )1 ), ys ((τsq )2 ), . . ., that satisfy1 :

t − B ≤ (τsq )1 ≤ (τsq )2 ≤ ... ≤ t (18)

Thus, node v(q) estimates the rate ŷsq (t) by using a weighted average of recent values as follows:

/ Tf , xf is unchanged, i.e., xf (t + 1) = xf (t).

/ Tsy , ys (t + 1) = ys (t).At time t ∈ In this algorithm, the elements of T can be viewed as the indices of the sequence of physical timesat which updates to either prices or rates occur. The sets Tf , Tq , Tsf , Tsq as well as the physical timesthey represent need not be known to any other nodes, since their knowledge is not required in the priceand rate computation. Thus, there is no requirement for synchronizing the local clocks at different nodes.We are able to show that, under assumption A4 our resource allocation algorithm converges to globaloptimality even in asynchronous environments. Our main result is formally presented in the followingtheorem. Theorem 4. Assume that the step size γ is sufficiently small, then starting from any initial ratex(0)(xf ∈ If ) and prices µ(0) ≥ 0, every limit point (x∗ , µ∗ ) of the sequence (x(t), µ(t)) generated bythe asynchronous price-based resource allocation algorithm is primal-dual optimal. Proof: The reader is referred to Appendix C for a detailed proof.

The improvements on implementation II towards asynchrony is similar to implementation I. The onlydifference is that it does not need the communication between delegation nodes and master node of aclique for its price update, as the clique prices are computed independently at delegation nodes. Weshow via simulation that the asynchronous algorithm under implementation II closely matches the globaloptimum at equilibrium, if the step size γ is sufficiently small, and the initial prices µq(v(s)) (0) at differentdelegation nodes v(s) are the same for a clique q.

VI. E MPIRICAL S TUDIES

In this section, we present deployment issues of our price-based resource allocation algorithm in realisticwireless networking environments, and evaluate its performance in an empirical study involving a set ofsimulation environments.

A. Simulation Environments

We study the price-based resource allocation algorithm in three different simulation environments.The first environment, referred to as synsim for convenience, assumes bounded communication delay and 18

synchronized message updates. The second environment, referred to as asynsim for convenience, considersthe asynchronous environments in wireless ad hoc networks. In both environments, we assume that thetransmission range is the same as the interference range, both of which are 250m. We further assumethat the MAC layer scheduling is ideal in the sense that it can achieve the wireless channel capacity of2Mbps, and the routing algorithm selects the shortest path. The third environment, referred to as realsim,considers realistic wireless networking environments. Realsim, implemented using the ns-2 simulator,adopts the two-ray ground reflection model as the radio propagation model and uses IEEE 802.11 DCFas the MAC protocol. The transmission range in realsim is smaller than the interference range, which are250m and 550m, respectively. The data transmission rate in realsim is 1Mbps. With respect to routing,the AODV routing protocol [11] is used in realsim. In all simulation environments, the utility functionUf (xf ) = ln(xf ) is used, which enforces proportional fairness.

B. Deployment Issues in Realistic Wireless Environments

Realistic physical and MAC layers in wireless ad hoc networks — that are reflected in realsim —presents several challenges to deploy our price-based resource allocation algorithm. First, the achievablechannel capacity varies at different contention regions (cliques) depending on the MAC protocol. Itis usually much smaller than the ideal channel capacity and can not be known a priori. Dynamicallyestimating the achievable channel capacity at different contention regions is a critical problem to deployour algorithm in realistic wireless environments. Second, the two-tier decentralized clique constructionand price calculation algorithm requires communication among nodes, which may introduce additionaloverhead to the network. Designing an efficient communication protocol that still ensures appropriate algo-rithm convergence is also a challenging problem. To address these challenges, we present two deploymenttechniques: measurement-based bandwidth estimation and lightweight communication protocol. 1) Measurement-based bandwidth estimation: The measurement-based bandwidth estimation is basedon the approach presented in [12]. It measures the achievable bandwidth of each wireless link based onits historical data transmission results. As shown in Fig. 4, under the IEEE 802.11 MAC protocol, at time tr , when a packet from a particularwireless link becomes the head-of-line packet (i.e., the first packet waiting to be transmitted), we claimthat the packet is ready. At time td , when the link layer acknowledgment is received, the packet departs.The transmission delay of this packet is then given as td − tr , which includes a contention period. The 19

contentions period

RTS CTS DATA ACK

tr td packet ready packet departs

Fig. 4. Measurement-based bandwidth estimation.

contention period indicates the channel bandwidth used by packet transmissions of other wireless linkswithin the contention region. The achievable bandwidth observed by this wireless link is then calculated zas td −tr , where z is the size of the packet. To achieve more accurate measurement results, we use awindow of w packets to conduct the bandwidth estimation, i.e., the bandwidth is estimated as w w·zi i . i=1 td −tr

The measurement-based bandwidth estimation takes into account the effect of physical layer interferenceand the inefficiency of MAC protocols, as it is based on the scheduling results of packet transmissions. 2) Lightweight communication protocol: To calculate the price of each clique, only its gradient (i.e., thedifference between achievable capacity and traffic demand) needs to be known. Based on this observation,each wireless link calculates its local gradient by monitoring its achievable bandwidth and its traffic load.Instead of communicating both load and bandwidth information, only the gradient information is sentalong with the connectivity information to construct cliques and compute their prices. To achieve lowoverhead communication, the information is sent via piggybacking. First, the local gradient informationof each wireless link is piggybacked onto the data packets of the flows passing by to notify the downstreamnodes. Second, working with the AODV routing protocol, the connectivity and local gradient informationis also piggybacked onto HELLO packets and sent at a certain time interval. Based on Theorem 2, endnodes of subflow s cache the information within LS3 (s) and transmit information within LS2 (s) to theirneighboring nodes. The prices are also piggybacked onto data packets so that the destination of a flow cannotify its source via FEEDBACK packets. Such protocol provides an asynchronous information updatefor price calculation and communication. As we have shown in Theorem 3, the price-based algorithmconverges to the global optimum even in such asynchronous environments. Using the above deployment techniques, we have implemented realsim in ns-2. As shown in Fig. 5(a), theprice-based resource allocation algorithm is implemented as several components at different levels in ns-2.At the MAC level, the bandwidth estimator measures the local achievable bandwidth to each neighboringnode. At the interface queue level, the monitor observes the backlogged traffic to each neighboring node.Working with the bandwidth estimator, the monitor generates the local gradient for each wireless link to 20

its neighbors. At the routing level, HELLO messages of the AODV routing protocol communicate thegradient information to its neighbors. The local gradient information, together with the gradient informationreceived from HELLO messages, is maintained in a gradient cache table. The changes at the gradientcache table trigger the price update component, which reads the gradient information and calculates theclique prices. These clique prices are maintained at a price cache table. The price aggregation componentreceives data packets from the routing layer. Depending on the data packet’s next hop, the price aggregationcomponent calculates the per hop price, and adds it to the aggregated price from the upstream hops. Atthe end nodes, the receiving component retrieves the aggregated price information from the data packetsand sends back FEEDBACK packets if it observes a price change. Upon receiving FEEDBACK packets,the sending component adjusts its sending rate based on the new price via the rate update algorithm, asshown in Fig. 5(b).

Fig. 6. 4-hop chain topology

1) Convergence speed: With appropriately tuned step sizes, we first evaluate how rapidly our algorithmconverges to the global optimum. We simulate the algorithm on chain topologies from 4 hops to 10 hopsin synsim. As an example, the 4-hop chain topology and its traffic pattern is shown in Fig. 6. In all theexperiments, the initial values of sending rates are 2 Mbps and the initial prices are 2. The results areshown in Table II along with their corresponding step sizes, which are tuned to ensure the most efficientconvergence2 . From these results, we observe that the best step sizes and the convergence time apparentlycorrespond to the scale of the network. In particular, the larger number of cliques through which thelongest flow passes (i.e., Ȳ ), the smaller step sizes and the more iterations are required for convergence. We have also carried out this experiment with different initial settings of prices and rates. We observethat the algorithm always converges regardless of the initial settings. In particular, the sending rates alwaysconverge to a unique optimum regardless of the initial rates, and the prices may converge to differentvalues — all of which are dual optimal — if different initial prices are used. This is because that, atequilibrium, only the flow price λ∗f is constrained by Uf (x∗f ) = λ∗f , and different price vectors µ∗ maylead to the same value of λ∗f . 2) Convergence in asynchronous environments: With asynsim, we evaluate the convergence behavior ofour algorithm in asynchronous environments. We first show the convergence behavior of implementationI. Recall that in asynchronous models, recent updates are averaged to accommodate delayed and out-of-order messages. In the simulation, we adopt a moving average method to specify the weight parameters.In particular, let 0 ≤ (τ )1 ≤ (τ )2 ≤, ..., ≤ (τ )m be the time instances of the received updates, then αsq isspecified as

αsq (t , t) = 1 if m = 1, t = (τ )1 (28)

αsf , αfs , and αqs are defined in the same way. α is a unified parameter that represents the weight of the 2 The termination criteria in synsim are |xf (t) − x∗f | ≤ ε for all f ∈ F and |µq (t) − µ∗q | ≤ ε for all q ∈ Q with ε = 10−4 . 22

history in estimation. When α = 0, only the most recently received update is used for estimation. Weevaluate the impact of α and step size γ on the convergence. We conduct the experiments on a 4-hopchain topology (Fig. 6) using different values of γ and α. The experimental results are shown in Fig. 7and Fig. 8, respectively. From the results, we have the following observations. First, at equilibrium, withsufficient small step size (γ ≤ 0.05), independent of the choices of α, rate allocation in asynchronousenvironments achieves the global optimum as in synchronous settings. This validates the theoretical claimin Theorem 3. Second, the value of the step size that ensures the convergence and optimal rate allocationis much smaller than the synchronous case. For example, as shown in Fig. 7, the resource allocation doesnot converge to the optimum when the step size γ = 0.5, while in synchronous settings, the algorithmconverges to optimum when γ = 1. Further, the value of α affects the convergence speed, with a larger αleading to a longer convergence time. This means that in implementation I, α = 0 can ensure the fastestconvergence to the global optimum. 3 3 3 x1 x1 x1 x2 x2 x2 2.5 x3 2.5 x3 2.5 x3 x4 x4 x4 x5 x5 x5 2 optimal x1 2 optimal x1 2 optimal x1 rate (Mbps)

(a) α = 0.1 (b) α = 0.4 (c) α = 0.6

We now repeat these experiments using implementation II, with step size γ = 0.05. The results areshown in Fig. 9. From these results, we have the following observations. First, the equilibrium rateallocation closely matches the optimal values. Second, the value of α affects the convergence speed and 23

how close the equilibrium rate allocation matches the optimum. The reason behind this observation canbe intuitively explained as follows. In implementation II, different delegation nodes have different rateestimations for clique price calculation, depending on the value of α. Although the clique price changeswill converge to zero at each individual node, the difference between clique prices at these nodes doesnot. Such difference may vary with the value of α. Yet, no matter what value α is set to, the equilibriumrate allocation always closely matches the optimum in the simulations. This is because nodes within aclique have relative small communication delays, hence small rate estimation differences. 2 2 2 x1 x1 x1 x2 x2 x2 x3 x3 x3 x4 x4 x4 1.5 x5 1.5 x5 1.5 x5 optimal x1 optimal x1 optimal x1 rate (Mbps)

0.5 0.5 0.5

(a) α = 0.1 (b) α = 0.4 (c) α = 0.6

Fig. 9. Asynchronous experiments with implementation II.

3) Impact of measurement window size on convergence: Now we study the convergence behavior ofour algorithm with bandwidth estimation and evaluate the impact of measurement parameters in realsim.We experiment with different measurement window sizes w on the 4-hop chain topology (Fig. 6). Theresults are shown in Fig. 10. From the results we have the following observation. The algorithm convergesfaster in the case of w = 5 than the case of w = 20, because a smaller measurement window gives fasterfeedback on the channel condition. On the other hand, too small w results in imprecise measurement. Thisleads to slight fluctuations at the equilibrium as shown in Fig. 10 in the case of w = 5. In what follows,we use w = 20 as the default measurement window size, because it gives stable and precise measurementresults with acceptable convergence speed. 4) Impact of HELLO interval on convergence: We experiment with different lengths of HELLOintervals and evaluate its impact on convergence. As shown in Fig. 11, large HELLO intervals (e.g.interval = 20 seconds) increase the convergence time and may cause small fluctuations. The results alsoshow that in a static environment, a HELLO interval of less than 10 seconds can ensure convergencewith satisfactory speed and can achieve stability at equilibrium. Obviously, different lengths of HELLOintervals also affect the overhead. Long HELLO intervals can significantly reduce the overhead. In the 24

5) Convergence in random networks: Now we study the convergence behavior of our algorithm withrespect to both transmission rate and throughput in a randomly generated wireless network as shown inFig. 12(a). This network consists of 30 nodes deployed over a 600 × 600 m2 region. In the experiment,5 flows are established between 5 different pairs of nodes to start at different time instants. Fig. 12(b)and (c) plot the instantaneous transmission rate and throughput of each flow respectively. From theseresults, we have the following observations: (1) our algorithm converges with satisfactory speed even inrelatively large scale networks (e.g., 30 node over 600 × 600 region); (2) our algorithm converges whentraffic dynamically joins the network.

D. Impact of Realistic Wireless Interference

In the next set of experiments, we are interested in studying the impact of realistic wireless interferenceon our algorithm. 1) Special scenarios: First, using realsim, we perform our experiments in a set of special networktopologies: the hidden terminal scenario, the exposed terminal scenario, and the race condition scenario. 25

(a) random topology (b) transmission rate (c) throughput

Fig. 12. Convergence in random networks.

• Hidden terminal. Fig. 13 shows one example of the hidden terminal scenario, as well as experimental results on the convergence of the transmission rate and the throughput of our algorithm. From the results, we observe that the algorithm performs as expected: at equilibrium, two flows share the resource fairly. The result is obvious because the sending nodes of both flows are able to obtain the information from each other, thus correctly constructing the clique and calculating its price. In contrast, we also show the performance of our algorithm over a different hidden terminal scenario as shown in Fig. 14. In this scenario, the sending nodes of the two flows are unable to communicate, though their transmissions still interfere with each other. Thus, each wireless link treats itself as the only link within the clique, though the correct clique construction should consist of both wireless links. In this case, the price of a clique relies on the gradient of one wireless link, which is in turn calculated based on the bandwidth estimation at either node 2 or node 3. Node 2 can sense the interference from node 3, when it sends FEEDBACK packets to node 1. Similarly, node 3 can sense the interference from node 2, when it sends the data packets. But due to their asymmetric traffic loads, their bandwidth estimation results are different. As a result, the rate allocation of these two flows is not fair at equilibrium. 800 800 flow 1 flow 1 700 flow 2 700 flow 2

(0,0) (250,0) (550,0) (800,0) 100 100

(a) hidden termial topology II (b) transmission rate (c) throughput

Fig. 14. Convergence in the hidden terminal scenario II.

• Exposed terminal. Due to the coordination of RTS/CTS at the MAC layer, the sending nodes are able to communicate with each other to exchange necessary load and topology information. Fig. 15 shows that the algorithm performs correctly in the exposed terminal scenario. 800 800 flow 1 flow 1 700 flow 2 700 flow 2

(a) exposed terminal topology (b) transmission rate (c) throughput

Fig. 15. Convergence in the exposed terminal scenario.

• Race condition. The result under the race condition is shown in Fig. 16. We observe that the performance of our algorithm under the race condition is different from the hidden terminal scenario in its delayed convergence. This is because flow f1 is unable to capture the wireless channel at the beginning due to the unawareness of the RTS/CTS signals from the transmission of the other flow and the unfair backoff of IEEE 802.11. Once it gets the chance to transmit, the load change will be detected by flow f2 via bandwidth estimation, which in turn leads to the price increase of this contention region and the rate decrease of flow f2 . Via the communication between their receiving nodes, these two flows share the same view of the network condition and the price, thus converge to an equilibrium, where their transmission rates are the same. Although they have approximately the same throughput at equilibrium, slight difference and fluctuation can still be observed on their instantaneous throughput, especially compared with the results in the hidden terminal scenario in Fig. 13. This is caused by the imprecise measurement under the race condition: IEEE 802.11 has short-term unfairness 27

in its scheduling even when both flows send at the same rate, which is achievable. This problem is rooted at the MAC protocol, and can not be resolved by our algorithm. However, as we may observe from the results, the long term fairness can be guaranteed at the equilibrium via our price-based algorithm.

(0,0) (250,0) (500,0) (750,0)

(a) race condition topology (b) transmission rate (c) throughput

Fig. 16. Convergence in the race condition scenario.

2) Comparison studies: To further illustrate the meaning of contention region and the impact ofinterference, we compare the equilibrium resource allocations of an ad hoc network with a wirelinenetwork of the same topology and two ad hoc networks with different interference ranges. First, the rate allocation and the equilibrium prices of the wireline network and the wireless ad hocnetwork with a 4-hop chain topology are compared under synsim. The cliques of the ad hoc networkunder synsim are the same as in Fig. 2. The results are listed in Table III. From these results we have thefollowing observations. First, the rate allocated to each flow in the ad hoc network is less than the rateallocated to the corresponding flow in wireline networks. The difference lies in their different definitionsof contention regions. In the wireline network, a wireline link represents a contention region, whosecapacity is the link bandwidth. In the ad hoc network, a wireless link is no longer a contention region.Instead, the set of wireless links, formally represented by a clique, constitutes the contention region, andshares the channel capacity. Thus, with the same capacity of the wireless channel and the wireline link,the throughput of the ad hoc network is lower than that of the wireline network. Second, in the wirelinenetwork, the rates of all single-hop flows are the same. In the ad hoc network, the rates of these flowsare different. The reason is that, in the wireline network, flows f2 through f5 enjoy the same amount ofresources; while in the ad hoc network, due to location-dependent contention, f3 suffers higher contentionthan f2 . This is also reflected through the prices that f2 and f3 need to pay. For f2 , the price is λ2 = µ1 ,which equals to 1.25 at equilibrium, while the price for f3 is λ3 = µ1 + µ2 , which equals to 2.5. Third, 28

in both networks, the equilibrium rate allocations for flows with different lengths are different. This isactually the result of proportional fairness. In particular, the longer the flow, the less the rate allocated.This observation is natural from the perspective of maximizing the aggregated utility. When the utilityfunctions of all flows are the same, long flows consume more resources for an unit of utility increase.Hence, the short flows are favored. To further illustrate the impact of interference, we compare the resource allocation on two ad hocnetworks with different interference ranges. The results are shown in Fig. 17(b) and (c). We observe thatthe resource allocations are different for two networks. The reason behind this observation is that differentinterference ranges lead to different contention regions as shown in Fig. 17(a). When the interference rangeis 550m, the network only consists of one contention region. On the other hand, when interference rangeis 250m, there are two overlapping contention regions in the network.

(a) topology and clique (b) transmission rate (c) throughput

Fig. 17. Comparison of different interference ranges.

29

E. Overhead

Now we evaluate the overhead of our algorithm under different mobility degrees. In the simulation, 30mobile nodes are randomly deployed on a 600 × 600 m2 network. They move according to the randomwaypoint mobility model with an average node speed of 20m/s. The pause time interval is varied in theexperiment. For each simulation, the results are averaged over 10 randomly generated mobile scenarioswith the same pause time interval. 2 0.42 pricebased tcp 0.4 1.8

(c) HELLO packet overhead in bits per second (d) overall overhead in bits per second

Fig. 18. Overhead.

Fig. 18(a) plots the normalized overall packet overhead, which is the ratio between the number of non-data packets and the data packets delivered at each hop. The overall overhead includes the FEEDBACKpackets sent by the receiver of each flow, and the AODV routing packets, which include HELLO packetsthat carry the price calculation information. We compare the overhead of our algorithm with the overheadof the TCP protocol3 running over AODV. From the results, we observe that our algorithm has lower packetoverhead than TCP. This is mainly because our price-based resource allocation algorithm generates fewerFEEDBACK packets than the ACK packets of TCP. Fig. 18(b) plots the ratio between the number of 3 TCP is also considered as a form of resource allocation for end-to-end flows in existing literature [4]. 30

FEEDBACK packets sent at the receivers of the flows and the data packets that they receive. We observethat fewer FEEDBACK packets are generated with lower mobility. This is because at the equilibriumwhere the price is unchanged, no FEEDBACK packet needs to be sent. Moreover, because the lightweightcommunication protocol uses packet piggybacking as its information delivery method, it does not introducemany additional control packets (AODV packets) at the routing layer into the network. We proceed to study the overhead of our algorithm in bits per second. From Fig. 18(d), we observethat the overhead of our algorithm in bits per second is also comparable to TCP over AODV, althoughour algorithm uses larger AODV HELLO packets. To further reduce the overhead, we introduce a set of k-hop heuristic algorithms. In these heuristics,end nodes of subflow s cache the information within LSk (s) (k ≤ 3) and transmit information within

LSk (s) (k = k − 1) to their neighbor nodes. Based on such partial knowledge of the network topologyand load, cliques are constructed, and their prices are computed approximately. The result in Fig. 18(c) shows the overhead in bits per second incurred by HELLO packets whenheuristics with different information propagation ranges are used. Fig. 18(d) compares the overall overheadin bits per second of the original price-based resource allocation algorithm with its heuristics. From theresults, we observe that the 2-hop heuristic has similar overhead as TCP over AODV, while 1-hop heuristichas even smaller overhead in bits per second than TCP. We further study the performance of these heuristics in terms of rate allocation. First we study theaggregated utilities achieved by different heuristics and compare them with the original algorithm andTCP. In the experiment, we consider wireless ad hoc networks at two scales. At the smaller scale, thenetworks have 20 nodes deployed over a 500 × 500 m2 . At the larger scale, the networks have 30 nodesdeployed over a 600 × 600 m2 region. For each network scale, 10 topologies are randomly generated. Theoriginal algorithm and its heuristics are simulated and compared with TCP over the same topology. Theresults are shown in Fig. 19(a) and Fig. 19(b) respectively, corresponding to each network scale. From these results, we have the following observations. First, the price-based resource allocationalgorithm and its heuristics all outperform TCP in terms of aggregated utility. In networks with asmaller scale, the performance of the heuristics closely matches the original algorithm. This observationis because in networks with smaller scales, the hop counts between any two nodes are small. Thusheuristics with smaller information propagation ranges are sufficient to communicate the information for 31

clique construction and price calculation. In some topologies, 1-hop heuristic can provide even betterperformance than the original algorithm due to its lower overhead. In networks with larger scales, the2-hop heuristic and the original algorithm give better performance than the 1-hop heuristic owing to moreprecise clique construction. Moreover, 2-hop heuristic can sometimes outperform the original algorithmdue to its lower communication overhead. Larger aggregated utility indicates more fair resource allocation and better resource utilization. Tofurther understand the results in terms of aggregated utility in Fig. 19, we plot in Fig. 20 the throughputof each flow from the simulation result of one randomly generated 600 × 600 m2 network. The resultclearly reflects the fairness improvement achieved by our price-based resource allocation algorithms incomparison with TCP. 25 22 21 24 aggregated utility

In this section, we study the behavior of our algorithm over mobile ad hoc networks. In particular, weseek to find the threshold of mobility where the convergence speed of the algorithm is not fast enoughto ensure a sufficient portion of time at equilibrium. We experiment on a specially designed mobile 32

scenario as shown in Fig. 21(a). In this mobile scenario, nodes 1 is moving between location (150, 1000)and (150, 500) observing the random waypoint model, and node 2 is moving between (150, 500) and(150, 0). During the simulation, these two nodes will serve as the relaying nodes for flow f1 in aninterwoven fashion. The convergence behavior and the throughput under different node speeds and pausetime intervals are plotted in Fig. 21. From the figure, we can observe that the new convergence occurs afterbroken routes are re-established. The results show that the algorithm converges and stays at equilibriumfor a large portion of time when the node moves at 10m/s without pause. When the node speed increasesto 20m/s, the flow spends approximately the same amount of time during the convergence and at theequilibrium. Further increasing the node speed under this scenario may result in insufficient amount ofequilibrium time where resource is optimally allocated. Obviously, if the pause time interval is increased,the algorithm can support higher node speeds. This is illustrated in the figure, when node speeds are50m/s with the pause time interval as 20 seconds. To study the impact of mobility on our algorithm over random networks, we organized the simulatednetwork scenarios into mobility patterns. Each mobility pattern, generated randomly, specifies a sequenceof movements. Within each mobility pattern, the mobility index specifies the average node speed andpause time of each mobile scenario. For example, under one mobility pattern, if with index 1 a nodetakes time t to move from location a to location b, then with index 2, this node will take 2 × t to traversethis distance. Our experiment ranges from mobility index 1, which corresponds to an average node speedof 100m/s and pause time interval of 10 seconds, to mobility index 6, which corresponds to an averagenode speed of 16.67m/s and pause time interval of 60 seconds. Fig. 22(a) plots the aggregated utilityof our algorithm with varied mobility indices under 4 different mobility patterns. To better understandthe performance indicated by the aggregated utility, Fig. 22(b) plots the throughput of each flow underpattern 1 with varied mobility indices. From these results, we observe that the difference from mobilityindex 4, which corresponds to an average node speed of 25m/s and pause time interval of 40 seconds, tomobility index 6 is quite small. Moreover, even in highly mobile environments such as the ones indicatedby mobility indices smaller than 3, the performance of our algorithm still degrades reasonably with theincreased mobility.

VII. R ELATED W ORK

We evaluate and highlight our original contributions in light of previous related work. 33

(b) transmission rate (c) throughput

Fig. 21. Impact of node mobility.

The problem of optimal and fair resource allocation has been extensively studied in the context ofwireline networks. Among these works, pricing has been shown to be an effective approach to achievedistributed solution for rate allocation (e.g., [4], [5], [13]). The role of price in our work is similar to [4],[5], which reflects the relation of the demand and the supply of resources. Nevertheless, the fundamentaldifferences in contention models between ad hoc and wireline networks deserve a fresh treatment to thistopic. As we have emphasized, these resource allocation strategies employed in the wireline network maynot be applied directly in the context of ad hoc networks due to the unique characteristics of the sharedwireless channel. A collection of papers have studied the use of pricing in the context of wireless networks (e.g., [14],[15]). In these works, pricing has been used as a mechanism for optimal distributed power control. Incomparison, our work is towards different objectives and in different wireless environments. For example, 34

Fig. 22. Impact of node mobility.

we study rate allocation in multi-hop wireless networks with time-slotted MAC, while most of the workin this group study base-station-based single-hop wireless networks with CDMA. In addition, Liao et al.[16] use price as an incentive for service class allocation in wireless LAN. Their solution, however, isapplicable in scenarios where centralized management is readily available. There also exists work to use pricing as incentives to encourage packet relays in wireless ad hoc networks(e.g., [17], [18]). Our work is fundamentally different from these results in the following aspects. First, in[17] a simplified wireless ad hoc network model is used, where each node i in the network has a capacityof Ci , which is independent from other nodes. We have shown that such a network model is not ableto correctly characterize the unique characteristics of location dependent contention in ad hoc networks.Second, in [17], [18] a user is assumed to have limited transmission resources, and the role of pricing isto provide adequate user incentives to forward packets for other users. The goal of optimal price setting ateach node is to maximize its net benefit. In contrast, the role of pricing in our work is to regulate channelaccess and to provide globally optimal resource allocation in the sense of maximizing aggregated utility. Resource allocation, using MAC-layer fair scheduling for single-hop MAC layer flows, has also beenstudied in wireless ad hoc networks [1], [2], [3]. In comparison, we address end-to-end multi-hop flows.It can be shown that fair resource allocation among single-hop flows may not be optimal for multi-hopflows, due to the unawareness of bottlenecks and lack of coordination among upstream and downstreamhops. Moreover, global optimal resource allocation among multi-hop flows can not be completely reachedonly by MAC-layer scheduling, which is only based on local information. Price is needed as a signalto coordinate the global resource allocation. Finally we argue that our proposed solution for end-to-endflows is complementary to any MAC-layer solutions, and can be implemented based on them. 35

VIII. C ONCLUDING R EMARKS

In this paper, we have presented a novel price-based resource allocation algorithm based on an analyticalpricing model that is specifically designed for the unique characteristics of multi-hop wireless ad hocnetworks. The original contribution incorporated in the pricing model is the association of shadow priceswith the maximal cliques in the contention graph model, rather than with individual links as in wirelinenetworks. Based on insights brought forth by such strategies, the algorithms proposed are fully distributed,and arbitrate the contention among end-to-end multi-hop flows with respect to fair resource allocation.The validity of our claims is supported by both theoretical studies and extensive simulation results. To thebest of our knowledge, there does not exist any previous work that addresses the problem of enforcingfairness among multi-hop flows in wireless ad hoc networks, especially when a price-based approach isutilized to design fully distributed algorithms to achieve this goal.

||∇D(ν) − ∇D(µ)||2 ≤ ||RH(ω)RT ||2 · ||ν − µ||2 (34)

||RH(ω)RT ||2 ≤ ||RH(ω)RT ||∞

Thus, the dual objective function D is lower bounded and ∇D is Lipschitz. Then, limit point µ∗ ofthe sequence {µ(t)} generated by the gradient projection algorithm for the dual problem is dual optimal. Provided 0 < γ < 2/κ̄Ȳ Z̄, let {µ(t)} be a subsequence converging to µ∗ . Note that Uf (xf ) isdefined on a compact set [mf , Mf ], it is continuous and one-to-one. Thus, its inverse is continuous andxf (µ) is continuous. Therefore, the subsequence {x(t) = x(µ(t))} converges to the primal optimal ratex∗ = x(µ∗ ). This establishes the result of Theorem 2.

A PPENDIX C: P ROOF OF T HEOREM 4

The proof of of Theorem 4 follows similar approach as in [10] (Section 7.5) and [5]. The key tothe proof is to show that the price adjustment remains in the descent direction. The proof of our caseis more complicated, because our two-tier algorithm has two-tier asynchrony: inter-clique asynchrony,where clique price and flow rate updates are asynchronous, and intra-clique asynchrony, where differentdelegation nodes have different estimations of a clique price. Define vector π(t) as π(t) = µ(t + 1) − µ(t). We first show that the error in rate calculation of flowf is bounded by the successive price change π. Lemma C.1

4 As a convention, we use t to represent the time instance between [t − B, t]; t to represent time instance between [t − 2B, t]; and tto represent time instance between [t − 4B, t]. 39

≤ κf Rqf max |µq (t) − µq (t )| t−2B≤t ≤t q∈Q

t−1 ≤ κf Rqf |πq (t )| t =t−2B q∈Q

Further, by the mean value theorem we have that

|Uf−1 (λf (t)) − Uf−1 (λf (τ ))|

≤ κf Rqf |µq (t) − µq (τ )| q∈Q

t−1 ≤ κf Rqf |πq (t )| q∈Q t =τ

which completes the proof of Lemma C.1

The gradient estimation used in our asynchronous algorithm is calculated as

ξq (t) = Cq − ŷsq (t) (42) s:s∈V (q)

where ŷsq (t) is as in Eq. (19). We further denote vector ξ(t) as ξ(t) = (ξq (t), q ∈ Q). Next we give thebound of error in gradient estimation in terms of the successive price change π(t). Lemma C.2: There exists a constant K1 > 0 such that

Now we show that π(t) converges to zero in the following lemma. Lemma C.3: Provided γ is sufficiently small we have π(t) → 0 as t → ∞. Proof: First, by Lemma 5.1 in [10] (Section 7.5), we have that for all t, ξT (t)π(t) ≤ −(1/γ)π(t)2 .By the descent lemma [10] (Proposition A.32) and Eq. (32), we have that there exists K2 such that

which by (46) converges to zero as t → ∞. Because xf (t) and xf (t) are projections of Uf−1 onto [mf , Mf ]and projection is nonexpansive [8] (Proposition 2.1.3), we have

|xf (t) − xf (t)| ≤ |Uf−1 (λ̂f (t)) − Uf−1 (λf (t))|

t−1 ≤ Y (f )κf π(t )1 t =t−2B

Hence, by Eq. (46), |xf (t) − xf (t)| → 0 for all f .

We now show that every limit point of the sequence {µ(t)} generated by the asynchronous algorithmminimizes the dual problem. Let µ∗ be a limit point of {µ(t)}. At least one exists, as it is constrainedto lie in a compact set, provided γ is sufficiently small. Moreover, since the interval between consecutiveupdates is bounded (assumption A4), it follows that there exists a sequence of elements of T along whichµ converges. Let {tk } be a subsequence such that {µ(tk )} converges to µ∗ . By Lemma C.2, we have

lim ξ(tk ) = lim ∇D(µ(tk )) = ∇D(µ∗ )

Then by the projection theorem [8] (Proposition 2.1.3) and [10] (Proposition 3.3 in Section 3.3), wehave that µ∗ minimizes D over µ ≥ 0. By duality x∗ = x(µ∗ ) is the unique primal optimal rate. Wenow show that it is a limit point of {x(t)} generated by asynchronous algorithm. Consider a subsequence 42

{x(tm )} of {x(tk )} such that {x(tm )} converges. Since x(t) − x(t) → 0, we have