map: multi-constrained anypath routing in wireless mesh...

18
MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networks Xi Fang, Member, IEEE, Dejun Yang, Member, IEEE, and Guoliang Xue, Fellow, IEEE Abstract— Anypath routing has been proposed to improve the performance of unreliable wireless networks by exploiting the spatial diversity and broadcast nature of the wireless medium. Previous studies on anypath routing have been concentrated on finding an anypath which optimizes a single quality of service (QoS) parameter. In this paper, we study anypath routing subject to multiple con- straints. We first prove that the problem is NP-hard when the number of constraints is larger than one. We then present a polynomial time K-approximation algorithm MAP (Multi-constrained AnyPath), where K denotes the number of constraints. Our algorithm is as simple as Dijkstra’s shortest path algorithm. Therefore it is suitable for implementation in wireless routing protocols. Index Terms—Wireless mesh networks, anypath routing, multiple constraints, provably good approximation algorithms. 1 Introduction T RADITIONAL routing algorithms and protocols for wireless networks often follow the design methodol- ogy for wired networks by abstracting the wireless links as wired links and looking for the shortest delay, least cost, or widest bandwidth path(s) between a pair of source and destination nodes [31]. However, for unreliable wireless networks, due to the broadcast nature of the wireless medium, it is usually less costly to transmit a packet to one of the nodes in a set of neighbors than to one specific neighbor. This observation motivated the emergence of a new technology, known as opportunistic routing, which takes advantage of the intermediate nodes overhearing the transmissions. It has been shown that opportunistic routing can help improve the performance of wireless networks [1], [2]. Dubois-Ferri` ere [10] generalized opportunistic routing and introduced the concept of anypath routing, which was subsequently studied in [11], [20], [21], [25], [32]. In anypath routing, each packet is broadcast to a forwarding set composed of several neighbors (called forwarders), and the packet is retransmitted only if none of the forwarders in this set receives it. As long as one of the forwarders receives this packet, it will be forwarded. One of the key research issues in anypath routing is finding an anypath which optimizes one or more QoS Fang, Yang, and Xue are all affiliated with Arizona State University, Tempe, AZ 85281. Email: {xi.fang, dejun.yang, xue}@asu.edu This research was supported in part by ARO grant W911NF-09-1-0467 and NSF grants 0905603 and 1115129. The information reported here does not reflect the position or the policy of the federal government. A preliminary version of this paper appeared in IEEE SECON’2010[12]. metrics, such as delay or cost. The anypath computation often reduces to the selection of forwarders for each node. However, there is a tradeoff in selecting forwarders. On one hand, a node with more forwarders can have less forwarding delay or cost to reach one of the these forwarders. On the other hand, a neighbor not on the optimal single path does not make as much progress as the next hop on the optimal single path. Therefore, having too many forwarders may increase the likelihood of a packet veering away from the optimal single path, and ultimately even result in loops in the routing topology [11]. Previous works on anypath routing are focused on com- puting a shortest delay or least cost anypath, with only one QoS metric taken into account for route selection [10], [11], [20], [21]. However, many applications are associated with multiple QoS constraints. For instance, usually the energy consumption affects the network lifetime or the cost of the pair of source-destination nodes charged by the interme- diate nodes providing forwarding service. Obviously, both delay and energy consumption should be taken into account when we are computing a route between a pair of source- destination nodes. There have been extensive studies on multi-constrained single path routing. Since the problem is NP-hard [27], many heuristics and approximation algorithms have been proposed [3], [14], [22], [27], [28], [29]. However, to the best of our knowledge, multi-constrained anypath routing has not been studied. In this paper, we formulate and study the problem of anypath routing subject to multiple (K) constraints. We show that the problem is NP-hard when the number of constraints is larger than one. We then present a polynomial time K-approximation algorithm (called MAP) for this problem. Our algorithm is very simple and is similar to Dijkstra’s algorithm for computing a shortest path. Thus it is suitable for implementation in wireless routing protocols. The rest of this paper is organized as follows. In Sec- tion 2, we briefly review related works. In Section 3, we review anypath routing, describe our system model, and define the problem to be studied. In Section 4, we present our approximation algorithm and analyze its performance. We prove the NP-hardness of multi-constrained anypath routing problem in Section 5. We present our numerical results in Section 6. We conclude this paper in Section 7.

Upload: others

Post on 24-Sep-2020

10 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

MAP: Multi-Constrained Anypath Routing inWireless Mesh Networks

Xi Fang, Member, IEEE, Dejun Yang, Member, IEEE, and Guoliang Xue, Fellow, IEEE

Abstract — Anypath routing has been proposed to improve theperformance of unreliable wireless networks by exploiting the spatialdiversity and broadcast nature of the wireless medium. Previousstudies on anypath routing have been concentrated on finding ananypath which optimizes a single quality of service (QoS) parameter.In this paper, we study anypath routing subject to multiple con-straints. We first prove that the problem is NP-hard when the numberof constraints is larger than one. We then present a polynomialtime K-approximation algorithm MAP (Multi-constrained AnyPath),where K denotes the number of constraints. Our algorithm is assimple as Dijkstra’s shortest path algorithm. Therefore it is suitablefor implementation in wireless routing protocols.

Index Terms —Wireless mesh networks, anypath routing, multipleconstraints, provably good approximation algorithms.

1 Introduction

TRADITIONAL routing algorithms and protocols forwireless networks often follow the design methodol-

ogy for wired networks by abstracting the wireless links aswired links and looking for the shortest delay, least cost,or widest bandwidth path(s) between a pair of source anddestination nodes [31]. However, for unreliable wirelessnetworks, due to the broadcast nature of the wirelessmedium, it is usually less costly to transmit a packet toone of the nodes in a set of neighbors than to one specificneighbor. This observation motivated the emergence of anew technology, known asopportunistic routing, whichtakes advantage of the intermediate nodes overhearing thetransmissions. It has been shown that opportunistic routingcan help improve the performance of wireless networks [1],[2]. Dubois-Ferriere [10] generalized opportunistic routingand introduced the concept ofanypath routing, which wassubsequently studied in [11], [20], [21], [25], [32]. Inanypath routing, each packet is broadcast to a forwardingset composed of several neighbors (called forwarders), andthe packet is retransmitted only if none of the forwardersin this set receives it. As long as one of the forwardersreceives this packet, it will be forwarded.

One of the key research issues in anypath routing isfinding an anypath which optimizes one or more QoS

Fang, Yang, and Xue are all affiliated with Arizona State University,Tempe, AZ 85281.Email: {xi.fang, dejun.yang, xue}@asu.edu Thisresearch was supported in part by ARO grant W911NF-09-1-0467 andNSF grants 0905603 and 1115129. The information reported here does notreflect the position or the policy of the federal government.A preliminaryversion of this paper appeared in IEEE SECON’2010[12].

metrics, such asdelay or cost. The anypath computationoften reduces to the selection of forwarders for each node.However, there is a tradeoff in selecting forwarders. On onehand, a node with more forwarders can have less forwardingdelay or costto reach one of the these forwarders.On theother hand,a neighbor not on the optimal single path doesnot make as much progress as the next hop on the optimalsingle path.Therefore, having too many forwarders mayincrease the likelihood of a packet veering away from theoptimal single path, and ultimately even result in loops inthe routing topology [11].

Previous works on anypath routing are focused on com-puting a shortest delay or least cost anypath, with only oneQoS metrictaken into account for route selection [10], [11],[20], [21]. However, many applications are associated withmultiple QoS constraints. For instance, usually the energyconsumption affects the network lifetime or the cost of thepair of source-destination nodes charged by the interme-diate nodesproviding forwarding service.Obviously,bothdelay and energy consumption should be taken into accountwhen we are computing a route between a pair of source-destination nodes.

There have been extensive studies on multi-constrainedsingle path routing. Since the problem is NP-hard [27],many heuristics and approximation algorithms have beenproposed [3], [14], [22], [27], [28], [29].However, to thebest of our knowledge, multi-constrained anypath routinghas not been studied.

In this paper, we formulate and study the problem ofanypath routing subject to multiple (K) constraints. Weshow that the problem is NP-hard when the number ofconstraints is larger than one. We then present a polynomialtime K-approximation algorithm (called MAP) for thisproblem. Our algorithm is very simple and is similar toDijkstra’s algorithm for computing a shortest path. Thus itis suitable for implementation in wireless routing protocols.

The rest of this paper is organized as follows. In Sec-tion 2, we briefly review related works. In Section 3, wereview anypath routing, describe our system model, anddefine the problem to be studied. In Section 4, we presentour approximation algorithm and analyze its performance.We prove the NP-hardness of multi-constrained anypathrouting problem in Section 5. We present our numericalresults in Section 6. We conclude this paper in Section 7.

Page 2: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

2

2 Related WorkWe now review the works on opportunistic routing andanypath routing theory. Biswas and Morris [1] designed andimplemented ExOR, an opportunistic routing protocol forwireless mesh networks. Chachulskiet al. [2] introducedMORE by combining opportunistic routing and networkcoding. Dubois-Ferriere [10] introduced the concept ofanypath routing and studied the shortest anypath problem.Dubois-Ferriereet al. [11] addressed the least-cost anypathrouting problem.The authors of [20] and [21] presented anoptimal algorithm for computing a shortest anypath whendifferent nodes are allowed to use different transmissionrates.Schaeferet al. [25] proposed a coordinated anypathrouting for energy-constrained wireless sensor networks.Zorzi and Rao [33] combined opportunistic and geographicrouting for wireless sensor networks.

For multi-constrained QoS routing algorithms, there aretwo lines of research. One line is the design of provablygood algorithms. The authors of [22], [23], [26], [28], [29]presented fully polynomial time approximation schemes(FPTASs) for the delay constrained least cost single pathproblem. For the decision version of MCP, Xueet al. [29]improved the algorithm proposed in [3]. Xueet al. [28]introduced a metric to compare multiple feasible solutionsto the decision version of MCP. Based on this metric theystudied an optimization version of MCP, and proposedK-approximation algorithms for computing a provably goodsingle path. Tsaggouris and Zaroliagis [26] presented anFPTAS for a class of multiobjective optimization problems.The other line of research is the development of effectiveheuristic algorithms [3], [16], [30]. Two excellent surveyscan be found in [4], [18]. A comparison of approximationand heuristic algorithms can be found in [17].

Our work differs from the aforementioned works sincewe study anypath routing subject to multiple constraints.

3 System Model and Problem FormulationWe first review the concept of anypath routing introducedin [10]. We then describe the network model and assump-tions. Finally we define the problem studied in this paper.

3.1 Anypath Routing

In traditional wireless networks, a packet is sent from anode to one of its neighbors with unicast forwarding. Inunreliable wireless networks, due to the broadcast natureof the wireless medium, it is usually less costly to transmita packet toone of the nodes (any node)in a set of neighborsthan to one specific neighbor.

In anypath routing, each node broadcasts a packet toone or more next hopneighbors. As long as one of theseneighbors receives this packet, the packet will be forwardedon. We call this set of next hop neighbors aforwarding set,which is similar to “next hop” for each node in classicrouting. We also call nodev a forwarder of node u ifv is in the forwarding set ofu. Since more than onenode in a forwarding set may receive the same packet,

unnecessary redundant forwarding should be avoided. Inorder to suppress redundant forwarding, the nodes in aforwarding set are each given a priority in relaying thereceived packets. Higher priorities are assigned to the nodeswith shorter distances (or less costs) to the destination.A node forwards a received packet only when all higherpriority nodes in the same forwarding set fail to receive it.As a result, this node will forward the packet towards thedestination while other lower priority nodes suppress theirtransmissions,even if they also receive the packet. For eachpacket, the source keeps rebroadcasting it until some nodein its forwarding set receives it or a threshold is reached.Once a neighbor receives this packet, it will repeat the sameprocedure until the packet is delivered to the destination.

As defined in [10], ananypath from a source to adestination is a directed acyclic graph where every node(but the source) is a successor of the source, and every node(but the destination) is a predecessor of the destination.Since an anypath is acyclic, all of its potential paths aresimple, hence no packet will traverse a forwarder more thanonce.We use Fig. 1(a) to illustrate how an anypath works.s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11

(a) Illustration of anypathPs

v 1( 3 , 1 ) v 3( 2 , 4 ) v 5( 1 , 2 ) t( 1 , 3 )(b) Subanypath ofPs at v1

Fig. 1. Illustration of anypaths and subanypaths. Thelink labels show link delivery probabilities; the vertexlabels show (w1,w2) pairs, which are explained in Sec-tion 3.2. For example, w1 and w2 represent the averagetransmission time and the average energy consump-tion of the node for each transmission, respectively.

An anypath is shown in bold arrows. For instance,s, v1,andv2 have forwarding sets<v1, v2>, <v3>, and<v3, v5>,respectively.Note that we use the notation< j1, j2, . . . , jy>to denote a forwarding set with node forwarding prioritiesordered in decreasing order, i.e., j1 has the highest priority,j2 has the second highest priority,. . ., jy has the lowestpriority. Since at every hop only one node in the forwardingset forwards the packet, every packet from the sourcestraverses only one of the paths in the anypath to reachthe destinationt. The dashed red line in Fig. 1(a) showsa possible path that a particular packet froms to t willtravel within the given anypath. Different packets may takedifferent paths within the given anypath, thus paths aredetermined on-the-fly, depending on which nodes in theforwarding sets successfully receive the packet at each hop.In Fig. 1(a), the anypath is composed of the union of 5different paths froms and t.

Let Pv be an anypath from nodev to nodet. Let u beany node onPv. The links and nodes that are reachablefrom u along Pv form an anypath fromu to t. We callthis anypath fromu to t (induced from Pv and u) thedownstream subanypathof Pv at nodeu, and denote it by

Page 3: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

3

Pv,u. Clearly, the forwarding set ofu alongPv,u is the sameas the forwarding set ofu alongPv. For example, Fig. 1(a)shows the anypathPs from s to t (denoted by the thicksolid lines).v1 is a node onPs. The subanypath ofPs atnodev1 is illustrated in Fig. 1(b).

Note that a MAC which provides such anycastis neededto support anypath routing.Any of the following threeMAC designs can be used to implement anypath routing.In [19], a transmitter includes a multicast address in thedata packet. Neighbors of the node that are included inthis multicast group reply an ACK serially. The transmitterchooses one of its neighbors, and transmits a “forwardingorder” to request this node to forward the packet further.The chosen neighbor replies to this request with a “for-warding order ACK”. In [5], the network layer specifiesmultiple downstream nodes, from which the MAC layerchooses a suitable nodeas the next hop node, based on in-stantaneous network conditions. Jain and Das [15] proposedan enhancement to IEEE802.11, which uses a variant ofthe IEEE 802.11 handshaking scheme to realize a reliableanycast MAC. Note that our work is MAC-independent,and that the routing algorithm only uses the informationreported by the MAC. Therefore, we assume that theMAC supporting anypath routing has been implementedand can periodically notify the network layer to update thenecessary information.

3.2 System Model

We model a wireless mesh network by a directed graphG = (V,E), whereV is the set ofn vertices, andE is the setof m edges. We use the following terms interchangeably:edge and link, vertex and node. Each edge (v, u) ∈ E isassociated with apacket delivery probability p(v, u). LetJ be a forwarding set of nodev. The hyperlink deliveryprobability p(v, J) is defined as the probability that a packettransmitted by nodev is received by at least one of thenodes in setJ. As demonstrated in [20], [24], the lossof a packet at different receivers occurs independentlyin practice, such as in light load regimes.Therefore,the hyperlink delivery probability can be computed asp(v, J) = 1−

j∈J (1− p(v, j)). For example, consider theforwarding setJ = {v1, v2} of node s in the network inFig. 1(a). We havep(s, J) = 1− (1− p(s, v1))(1− p(s, v2)) =1− (1− 0.2)(1− 0.5) = 0.6.

Each nodev ∈ V is also associated withK vertex weightswk(v), 1 ≤ k ≤ K, where K is a given integer. We usethe following examples to explainsome possiblephysicalmeaning of vertex weights. For example, whenK = 1, w1(v)may representaverage time required for nodev to finishone transmission on average(we call it transmission time).When K = 2, w1(v) may represent the transmission timeandw2(v) may representthe energy consumed by nodev tofinish one transmission on average(we call it transmissionenergy consumption).

Based on vertex weights and link delivery probabilities,we define a new metric, calledexpected weight of anypathtransmissions(EWATX), as wk(v)

p(v,J) , 1 ≤ k ≤ K. Consider the

example ofK = 2 mentioned before, wherew1(v) representsthe average transmission time for each transmission andw2(v) represents the average energy consumption for eachtransmission. The first (second, respectively) EWATX rep-resents the expected transmission time (the expected energyconsumption, respectively) for a packet sent by nodev to besuccessfully received by at least one node inJ. Considerthe example shown in Fig.1(a). The expected number oftransmissions for a packet sent by nodes to J = {v1, v2} is

11−(1−0.2)(1−0.5) ≈ 1.667. If w1(s) = 2 (which means that theaverage transmission time for each transmission of nodes is2) the expected transmission time for a packet sent by nodes to J = {v1, v2} is 2

1−(1−0.2)(1−0.5) ≈ 3.334 time units. Notethat this computation actually is an approximation and doesnot consider the waiting time between two transmissions.

Recall that the hyperlink delivery probability from a nodev to its forwarding set (on the anypathPs from sources todestinationt) J(v,Ps) = < j1, j2, . . .> is

p(v, J(v,Ps)) = 1−∏

jβ∈J(v,Ps)

(1− p(v, jβ))

=

jβ∈J(v,Ps)

p(v, jβ)β−1∏

q=1

(1− p(v, jq)).

We define the coefficientα(jβ,Ps) as follows:

α(jβ,Ps)=p(v, jβ)

∏β−1q=1(1− p(v, jq))

p(v, J(v,Ps)),∀ jβ∈J(v,Ps). (1)

The numerator of the right hand side ofEquation(1) isthe probability that a node in the forwarding set withpriority β successfully forwards a packet. Recall that itforwards a packet only when it receives this packet andnone of the higher priority nodes receives it. The denom-inator in Equation(1) is the normalizing constant so that∑

jβ∈J(v,Ps) α(jβ,Ps) = 1.We definethe kth anypath weight of the forwarding set

J(v,Ps) = < j1, j2, . . .> along anypathPs as

Wk(J(v,Ps),Ps) =∑

jβ∈J(v,Ps)

α(jβ,Ps)Wk(jβ,Ps). (2)

It is a weighed average ofthe anypath weights from thenodes(defined below) in the forwarding setJ(v,Ps) to thedestination alongPs.

Based onEquations(1) and (2), we define thekth anypathweight from v to talong an anypathPs as

Wk(v,Ps) =wk(v)

p(v, J(v,Ps))+Wk(J(v,Ps),Ps),

k = 1, 2, . . . ,K. (3)

Clearly, fromEquations(1)-(3) we know that

Wk(v,Ps)

=

wk(v)+∑

jβ∈J(v,P)Wk(jβ,Ps)p(v, jβ)∏β−1

q=1(1−p(v, jq))

p(v, J(v,Ps)),

k = 1, 2, . . . ,K. (4)

Page 4: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

4

Note that we define thekth anypath weight in a recursivemanner. The boundary condition isWk(t,Ps) = 0(1≤ k ≤K) for destination nodet.

Consider the example ofK = 2 mentioned before,where w1(v) represents the average transmission timefor each transmission andw2(v) represents the aver-age energy consumption for each transmission.W1(v,Ps)(

W2(v,Ps), respectively)

represents the expected totaltransmission time (the expected total energy consumption,respectively) necessary for a packet sent byv to be suc-cessfully received by the destination nodet along anypathPs. Since an anypath is a directed acyclic graph, oncethe anypath froms to t is given, we can compute theanypath weights of all the nodes on this anypath in areversed topological order. As an example, let us considerthe network depicted in Fig. 2 which is slightly differentfrom Fig. 1(a) and focus on the transmission time (k = 1).s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11Fig. 2. An example to illustrate the computation ofanypath weight

An anypathPs is shown by bold red lines. The topolog-ical order for this anypath iss→ v2 → v3 → v5 → t. Theboundary condition isW1(t,Ps) = 0. We can first computethe first anypath weight ofv5 (i.e. the expected transmissiontime of a packet sent fromv5 to t via the forwarding setJ = <t>) as follows:

W1(v5,Ps) =w1(v5)

p(v5, <t>)+W1(<t>,Ps)

=w1(v5) + p(v5, t)W1(t,Ps)

p(v5, <t>)=

1+ 0.5 ∗ 00.5

= 2.

Based on the values att andv5, we can then compute thefirst anypath weight ofv3 (i.e. the expected transmissiontime of a packet sent fromv3 to t via the forwarding setJ = <t, v5>) as follows:

W1(v3,Ps)

=w1(v3)

p(v3, <t, v5>)+W1(<t, v5>,Ps)

=w1(v3)+p(v3, t)W1(t,Ps)+(1−p(v3, t))p(v3, v5)W1(v5,Ps)

1−(1−p(v3, t))(1−p(v3, v5))

=2+ 0.5× 0+ (1− 0.5)× 1× 2

1− (1− 0.5)(1− 1)= 3.

Continuing this process, we can computeW1(v2,Ps) =3.9, andW1(s,Ps) = 5.9 (assuming that the forwarding setof v2 is <v5, v3>).

3.3 Problem Definition

Having defined the anypath weight, one would be inter-ested in finding a minimum weight anypath for a source-

destination pair, with respect to a given selected weight.Theauthors of [10], [11], [20], [21] have studied theshortest-delayor least-costanypath routing problem.In particular,a polynomial time algorithm is presented in [20], [21] forcomputing an anypath subject to a single QoS parameter.However, to the best of our knowledge, anypath routingsubject to multiple QoS constraints has not been studied.

A decision versionof the multi-constrained anypathproblem, denoted by DMCAP, is defined as follows:

Definition 3.1: DMCAP(G, s, t,−→W,−→w,−→p,K): Instance:

A directed graphG = (V,E,−→w,−→p), with a packet deliv-ery probability p(e) ∈ (0, 1] associated with each edgee ∈ E and K positive vertex weightswk(v)(k ∈ [1,K])associated with each vertexv ∈ V; a constraint vector−→W = (W1,W2, . . . ,WK) where each element is a positiveconstant; and a source-destination node pair (s, t). Problem:Find an anypathPs from sources to destinationt such thatWk(s,Ps) ≤Wk,∀k ∈ [1,K]. 2

The inequalityWk(s,Ps) ≤ Wk is called the kth QoSconstraint. An anypathPs from s to t satisfying allK con-straints is called afeasiblesolution to the given instance ofDMCAP. While computing a feasible solution to DMCAPis useful, it is computationally intractable, as stated in thefollowing theorem, whose proof can be found in Section 5.

Theorem 3.1: For any given integerK ≥ 2, DMCAP isNP-hard. The problem remains NP-hard when no link inthe network has packet delivery probability equal to 1.2

Given the hardness of DMCAP, we study OMCAP, anoptimization version of DMCAP, which approximates allKconstraints simultaneously. We introduce a metric, calledanypath length, which is similar to the concept ofpathlength used in [28]. The anypath length from a nodev tothe destination nodet along an anypathPs is defined as

l(v,Ps) = max1≤k≤K

Wk(v,Ps)Wk

. (5)

Now we formally define OMCAP as follows.Definition 3.2: OMCAP(G, s, t,

−→W,−→w,−→p,K): Instance:

A directed graphG = (V,E,−→w,−→p), with a packet deliv-ery probability p(e) ∈ (0, 1] associated with each edgee ∈ E and K positive vertex weightswk(v)(k ∈ [1,K])associated with each vertexv ∈ V; a constraint vector−→W = (W1,W2, . . . ,WK) where each element is a positiveconstant; and a source-destination node pair (s, t). Problem:Find ans-t anypathPs with minimum l(s,Ps). 2

We briefly explain the relationship between DMCAP andOMCAP. If an instance of OMCAP has a solutionPs suchthat l(s,Ps) ≤ 1, then the corresponding instance of DM-CAP has a feasible solution. Otherwise, the correspondinginstance of DMCAP does not have a feasible solution.

In Section 4, we will present an efficient approximationalgorithm for OMCAP with provably good performance.

4 An Efficient K-Approximation AlgorithmIn this section we present an algorithmnamed MAP,which computes ans-t anypath in polynomial time. Fur-thermore, we prove that the anypath so computed is aK-approximation to the OMCAP problem. In other words, the

Page 5: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

5

length of the anypath returned by our algorithm is withina factorK of the length of an optimal solution.

In order to simplify the notations, we assume thatW1=W2=· · ·=WK=1 in this section. This is equivalent tonormalize all of the vertex weights (fromwk(v) to wk(v)/Wk

for all v ∈ V andk = 1, 2, . . . ,K). Therefore the algorithmand all the proofs can be straightforwardly extended to thecase without this assumption.

4.1 Description of the Algorithm

Before presenting our algorithm, we define anauxiliaryvertex weightωm(v) (the subscriptm means “max”) foreach nodev ∈ V by ωm(v) = max1≤k≤K wk(v). We define theauxiliary anypath weight(AAW ) from nodev to destinationt along an anypathPs as:

Wm(v,Ps) =ωm(v)

p(v, J(v,Ps))+Wm(J(v,Ps),Ps), (6)

where

Wm(J(v,Ps),Ps) =∑

jβ∈J(v,Ps)

α(jβ,Ps)Wm(jβ,Ps). (7)

HereWm(J(v,Ps),Ps) is the auxiliary anypath weight ofthe forwarding setJ(v,Ps) along the anypathPs. Recallthat α(jβ,Ps) and p(v, J(v,Ps)) are defined in Section 3.The boundary condition isWm(t,Ps) = 0.

We introduce AAW because it can be used to bridgel(s, πopt

s ) andl(s, πms ), whereπopt

s denotes an optimal anypathfrom s to t and πm

s denotes the anypath computed byAlgorithm 1. More specifically, in Theorem 4.1 we willprove thatπm

s is a shortests–t anypath with respect toAAW ;in Theorem 4.2, we will prove thatl(v, πm

v ) ≤ K · l(v, πoptv ),

which implies that Algorithm 1 is a K-approximationalgorithm for OMCAP.

Table 1 lists frequently used notations.

TABLE 1Frequently Used Notations

wk(v) kth vertex weight of nodevWk(v, P) kth anypath weight from nodev to destinationt along

anypathPωm(v) auxiliary vertex weight of nodevWm(v, P)orWm(J, P)

auxiliary anypath weight from nodev or a set ofnodesJ (aggregated vertex) to destinationt alonganypathP

W(J)m (v) auxiliary anypath weight fromv to destinationt via

the forwarding setJWk kth QoS constraintl(v, P) length fromv to destinationt along anypathPJ(v, P) forwarding set of nodev along anypathPp(v, u) orp(v, J)

packet delivery probability of link (v, u) or hyperlink(v, J)

We now present our MAP algorithm for the OMCAPproblem. For every nodev ∈ V, we keep a variableWm(v),a set J(v), and K variablesWk(v), k = 1, · · · ,K. Wm(v) isthe AAW of the currently computed anypath fromv to t,J(v) is the forwarding set ofv on this currently computedanypath, andWk(v) is the currently computedkth anypath

weight from v to t. We keep two data structures:L andQ. L is a list, which is used to store the nodes for whichwe have already found the shortest AAW anypaths.Q is apriority queue, in which we store all the other nodes keyedby their currentWm values. In addition, we also useWm(J)and Wk(J), respectively, to denote the currently computedAAW and the currently computedkth anypath weight ofthe setJ.

Algorithm 1 MAPInput: graphG, destination nodet, vertex weight vector−→w, delivery probability vector−→p, and the number ofconstraintsK

Output: an anypath from each node to destination nodet1: for each nodev in V do2: ωm(v)←max1≤k≤K wk(v), Wm(v)←∞, J(v)←∅3: end for4: Wm(t)← 0, L← ∅, Q← V5: while Q , ∅ do6: j ← Extract-Min(Q), L← L ∪ { j}7: l( j,P)← max1≤k≤K Wk( j)8: for each incoming link (v, j) in E do9: F← J(v) ∪ { j}, W′m(v)← ωm(v)

p(v,F)+Wm(F)10: if W′m(v) < Wm(v) then11: Wm(v) ← W′m(v), updateQ (i.e. decrease key

for v), J(v)← F12: for k = 1, 2, . . . ,K do13: Wk(v)← wk(v)

p(v,J(v))+ Wk(J(v))

14: end for15: end if16: end for17: end while

The algorithm MAP is presented in Algorithm 1. MAPconsists of two major phases. In the first phase, it calculatesthe AAW for each node and initializes the data structures(Lines 1-4). In the second phase, it computes theshortestAAW anypathsfrom all nodes to the given destinationt(Lines 5-17). Our algorithm for computing the shortestAAW anypaths is similar to the Shortest Anypath First(SAF) algorithm proposed by [20], [21].We will prove thatthe shortest AAW anypath actually is aK-approximation toOMCAP.

Now we explain the second phase (the while-loop) indetail. Each time Line 6 is executed,from the set of nodesfor which we have not found the shortest AAW anypaths,we extract the one (denoted byj) that has the smallestWm value and insert this node intoL. We then performrelaxation for each of its incoming neighbors (denoted byv) as shown in Lines 8-16. In the relaxation operationfor node v, we check whether adding nodej into v’sforwarding set can reducev’s Wm value (Lines 9-10). Ifso, we updatev’s forwarding set, the priority queueQ andthe corresponding data structures as shown in Lines 11-14.Algorithm 1 repeats this procedure until the priority queueQ becomes empty. In this way we can find the shortestAAW anypath from each node tothe given destination.

Page 6: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

6s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 )( 9 0 ) ( 0 , 0 )( 0 )( 4 , 8 )( 8 ) ( 2 , 4 )( 4 )(a) t is inserted intoL

s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 )( 9 0 ) ( 0 , 0 )( 0 )( 3 , 6 )( 6 ) ( 2 , 4 )( 4 )( 1 2 , 1 4 )( 1 4 )(b) v5 is inserted intoL

) s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 )( 9 0 ) ( 0 , 0 )( 0 )( 3 , 6 )( 6 ) ( 2 , 4 )( 4 )( 3 . 9 , 6 . 8 )( 6 . 8 )( 6 , 7 )( 9 )(c) v3 is inserted intoL

s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 )( 9 0 ) ( 0 , 0 )( 0 )( 3 , 6 )( 6 ) ( 2 , 4 )( 4 )( 3 . 9 , 6 . 8 )( 6 . 8 )( 6 , 7 )( 9 )( 5 . 9 , 8 . 8 )( 8 . 8 )(d) v2 is inserted intoLs( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 )( 9 0 ) ( 0 , 0 )( 0 )( 3 , 6 )( 6 ) ( 2 , 4 )( 4 )( 3 . 9 , 6 . 8 )( 6 . 8 )( 6 , 7 )( 9 )( 5 . 9 , 8 . 8 )( 8 . 8 )

(e) s is inserted intoL

s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 )( 9 0 ) ( 0 , 0 )( 0 )( 3 , 6 )( 6 ) ( 2 , 4 )( 4 )( 3 . 9 , 6 . 8 )( 6 . 8 )( 6 , 7 )( 9 )( 5 . 9 , 8 . 8 )( 8 . 8 )(f) v1 is inserted intoL

s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 )( 9 0 ) ( 0 , 0 )( 0 )( 3 , 6 )( 6 ) ( 2 , 4 )( 4 )( 3 . 9 , 6 . 8 )( 6 . 8 )( 6 , 7 )( 9 )( 5 . 9 , 8 . 8 )( 8 . 8 )(g) v4 is inserted intoL

s( 1 , 1 ) v 1( 3 , 1 )v 2( 1 , 1 ) v 3( 2 , 4 ) v 4( 9 , 9 )v 5( 1 , 2 ) t( 1 , 3 )0 . 50 . 2 1 0 . 1 0 . 50 . 510 . 3 0 . 7 0 . 11 ( 9 0 , 9 0 ) ( 0 , 0 )( 3 , 6 ) ( 2 , 4 )( 3 . 9 , 6 . 8 )( 6 , 7 )( 5 . 9 1 , 8 . 5 )(h) Optimal s− t anypath

Fig. 3. Execution of Algorithm 1 from every node to t. The link labels show link delivery probabilities; thevertex labels show (w1,w2) pairs of the vertices; the labels next to each vertex show the currently computedanypath weights (W1, W2) (the first row) and the AAW (Wm) (the second row). (a)-(g) show the situations aftereach successive iteration of the algorithm. (h) shows the optimal s− t anypath.

4.2 Illustration of the Algorithm

We illustrate the steps of the algorithm using the exampleshown in Fig. 3, whereK = 2. The original graphG isshown in Fig. 1(a).

In the initialization phase (Lines 1-4), we calculate theauxiliary vertex weight for each node and initialize thenecessary data structures.Wm(t) is set to 0 andWm(v)is set to∞ for all v ∈ V \ {t}. Since now t has thesmallestWm value, in the first iteration, Line 6 extractst from Q and inserts it intoL, as shown in Fig. 3(a). ThenLines 8-16 perform relaxations for its incoming links andupdate the values ofWm of its incoming neighbors. Foreach incoming neighbor, Line 10 checks whether addingtinto the forwarding set can decrease itsWm value. If so,Lines 11-14 update its forwarding set, AAW and anypathweights. Therefore, at the end of the current iteration, nodesv3, v4 and v5 get updated labels:

(

W1(v3), W2(v3))

= (4, 8),

Wm(v3) = 8,(

W1(v4), W2(v4))

= (90, 90), Wm(v4) = 90,(

W1(v5), W2(v5))

= (2, 4), andWm(v5) = 4. Since nowv5

has the smallestWm value, Line 6 will extractv5 from Qand insert it intoL in the second iteration and performrelaxations for its incoming links. Nodesv2 and v3 getupdated labels due to the relaxations. This is shown inFig. 3(b). As shown in Fig. 3(c)-3(g), Algorithm 1 repeatsthis procedure until all the nodes have been inserted intoL. Note that the algorithm calculates anypaths from all thenodes tot. If we just look for ans-t anypath, our algorithmcan terminate onces is inserted intoL.

Note that thes–t anypath computed by our algorithm hasa length of max{ 5.91 ,

8.81 } = 8.8, while as shown in Fig. 3(h)

the optimal anypath has a length of max{ 5.911 , 8.5

1 } = 8.5.Although the anypath computed by Algorithm 1 is notoptimal, its length is within a factor of 2 of that of theoptimal anypath.

4.3 Analysis of the Algorithm

In this subsection, we analyze the performance of Algo-rithm 1. We useπopt

v to denotean optimal anypath from

v to t, and useπmv to denote the anypath computed by

Algorithm 1. Note that when the algorithm terminates,Wm(v, πm

v ) = Wm(v), andWk(v, πmv ) = Wk(v),∀k ∈ [1,K].

Theorem 4.1: Let v be any node that can reach thedestinationt. The anypathπm

v computed by Algorithm 1is a shortest AAW anypath. This computation is done inO(|V| log |V| + K|E|) time. 2

Our proof of this theorem uses a similar logic as that usedin [20], [21], although there are differences in details sincethe problems studied are different. The complete proof ofthis theorem can be found in the appendix.

Theorem 4.1 states that the anypath so computed is ashortest AAW anypath. In other words, the forwarding setof each node computed by Algorithm 1 is actually anoptimal forwarding set with respect to AAW, namelyAAWoptimal forwarding set(AOFS).

The next theorem is the main result of this paper. Itcharacterizes how good Algorithm 1 is, compared with theoptimal solution to OMCAP(G, s, t,

−→W,−→w,−→p,K).

Theorem 4.2: Let πms be the anypath froms to t com-

puted by Algorithm 1, andπopts be any optimal solution to

OMCAP(G, s, t,−→W,−→w,−→p,K). We have

l(s, πms ) ≤ K · l(s, πopt

s ). (8)

In other words, Algorithm 1 is aK-approximation algorithmfor OMCAP(G, s, t,

−→W,−→w,−→p,K). 2

Proof. For an arbitrary nodev in the network, weuse πm

v to denote the anypath fromv to t computed byAlgorithm 1, and useπopt

v to denote an optimal solution toOMCAP(G, v, t,

−→W,−→w,−→p,K). To prove the truth of the theo-

rem, it suffices to prove that the following three inequalitieshold for every nodev in the network.

l(v, πmv ) ≤ Wm(v, πm

v ), (9)

Wm(v, πmv ) ≤ Wm(v, πopt

v ), (10)

Wm(v, πoptv ) ≤ K · l(v, πopt

v ). (11)

It follows from Theorem 4.1 thatπmv is a shortest AAW

anypath fromv to t. Therefore we have Inequality (10).

Page 7: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

7

Next we will prove Inequality (9). According to Algo-rithm 1, nodes are inserted intoL one by one. We index allthe nodes onπm

v in this order. Therefore the index of nodet is 0, andv has the largest index (at the timev is insertedinto L). We usevi to denote the vertex with indexi, andclaim that for eachvi , we have

l(vi , πmv ) ≤ Wm(vi , π

mv ). (12)

We will use mathematical induction to prove Inequality(12). For nodev1, only the destinationt is in its forwardingset. Therefore we have

Wm(v1, πmv ) =

ωm(v1)p(v1, t)

+Wm(<t>, πmv )

=ωm(v1)p(v1, t)

= max1≤k≤K

wk(v1)p(v1, t)

.

On the other hand, by the definition of anypath length, wehave

l(v1, πmv ) = max

1≤k≤KWk(v1, π

mv )

=max1≤k≤K

wk(v1)p(v1, t)

+Wk(<t>, πmv )=max

1≤k≤K

wk(v1)p(v1, t)

.

Therefore we havel(v1, πmv ) ≤ Wm(v1, π

mv ).

Assume that the claim (12) is true for all the nodes withindices in the range [1, η]. We will prove that the claim isstill true for vη+1. By the definition ofWm, we have

Wm(vη+1, πmv )

=ωm(vη+1)

p(vη+1, J(vη+1, πmv ))+

jβ∈J(vη+1,πmv )

α(jβ, πmv )Wm(jβ, π

mv ). (13)

According to Algorithm 1, beforevη+1 is inserted intoL,all its forwarders alongπm

v have been inserted intoL. Thus,the assumption that the claim (12) is true for all the nodeswith indices in the range [1, η] can be applied to all itsforwarders. Therefore we have

Wm(jβ, πmv ) ≥ l(jβ, π

mv )

= max1≤k≤K

Wk(jβ, πmv ),∀jβ ∈ J(vη+1, π

mv ).

Substituting the above inequality and the definition ofωm(vη+1) into (13), we have

Wm(vη+1, πmv )

≥ max1≤k≤K

wk(vη+1)

p(vη+1, J(vη+1, πmv ))

+

jβ∈J(vη+1,πmv )

α(jβ, πmv ) max

1≤k≤KWk( jβ, π

mv )

≥ max1≤k≤K

(

wk(vη+1)

p(vη+1, J(vη+1, πmv ))

+

jβ∈J(vη+1,πmv )

α(jβ, πmv )Wk(jβ, π

mv )

= max1≤k≤K

Wk(vη+1, πmv ) = l(vη+1, π

mv ).

Therefore, we have proved claim (12), which implies In-equality (9).

Now we prove Inequality (11). Recall that the anypathsconsidered are directed acyclic graphs. We can index all thenodes on the optimal anypathπopt

v of nodev in a reversedtopological order [7]. In other words, the index oft is 0,v has the largest index, and the index of every node isalways greater than the indices of its forwarders. We usevi to denote the vertex with indexi, andclaim that for anynodevi on πopt

v , we have∑

1≤k≤K

Wk(vi , πoptv ) ≥Wm(vi , π

optv ). (14)

We prove this claim using mathematical induction oni.For v1, since onlyt is in its forwarding set, we have

1≤k≤K

Wk(v1, πoptv )

=

1≤k≤K

wk(v1)p(v1, t)

+Wk(<t>, πoptv ) =

1≤k≤K

wk(v1)p(v1, t)

≥1

p(v1, t)max1≤k≤K

wk(v1) =ωm(v1)p(v1, t)

=Wm(v1, πoptv ).

Assume that the claim (14) is true for all the nodes withindices in the range [1, η]. We will prove that the claim isstill true for vη+1 as follows. Forvη+1, we have

1≤k≤K

Wk(vη+1, πoptv ) =

K∑

k=1

wk(vη+1)

p(vη+1, J(vη+1, πoptv ))+

jβ∈J(vη+1,πoptv )

α(jβ, πoptv )Wk(jβ, π

optv )

≥ max1≤k≤K

wk(vη+1)

p(vη+1, J(vη+1, πoptv ))

+

jβ∈J(vη+1,πoptv )

α(jβ, πoptv )

1≤k≤K

Wk(jβ, πoptv ).

Since the indices of the forwarders ofvη+1 are smaller thanthat of vη+1, the assumption that the claim (14) is true forall the nodes with indices in the range [1, η] can be appliedto all its forwarders, which means

1≤k≤KWk(jβ, πoptv ) ≥

Wm(jβ, πoptv ),∀jβ ∈ J(vη+1, π

optv ). Hence, we have

1≤k≤K

Wk(vη+1, πoptv ) ≥ max

1≤k≤K

wk(vη+1)

p(vη+1, J(vη+1, πoptv ))

+

jβ∈J(vη+1,πoptv )

α(jβ, πoptv )Wm(jβ, π

optv )

=ωm(vη+1)

p(vη+1, J(vη+1, πoptv ))

+

jβ∈J(vη+1,πoptv )

α(jβ, πoptv )Wm(jβ, π

optv )

=Wm(vη+1, πoptv ).

Therefore we have proved Claim (14), which implies thefollowing.

Wm(v, πoptv ) ≤

1≤k≤K

Wk(v, πoptv ). (15)

According to (5), we haveWk(v, πoptv ) ≤ l(v, πopt

v ), ∀k ∈[1,K]. Therefore Inequality (15) implies the following.

Wm(v, πoptv ) ≤

1≤k≤K

Wk(v, πoptv ) ≤ K · l(v, πopt

v ), (16)

Page 8: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

8

which implies Inequality (11).Substitutingv with s in Inequalities (9)-(11), we obtain

Inequality (8). This completes the proof of the theorem.Remark. For the caseK = 1, Algorithm 1 computes an

optimal solutionto the corresponding problem in polyno-mial time. WhenK ≥ 2, the problem becomes NP-hard,and Algorithm 1 computes aK-approximation solution inpolynomial time.

5 PROOF OF THEOREM 3.1In the following, we will prove the (weak) NP-hardnessof DMCAP for a special caseK = 2 by a reduction fromthe Partition problem [7], which implies that DMCAP is(weakly) NP-hard for any givenK ≥ 2.

An instance of Partition is given by a finite setA, whereeach elementa∈A is associated with a positive integers(a),called as thesizeof a. It asks for the existence of a subsetA′ of A such that

a∈A′ s(a) =∑

a∈A\A′ s(a). This problemis known to be (weakly) NP-hard [7].

In the following, we show how to construct an instanceI2 of DMCAP for K = 2 from an instanceI1 of Partition,given by A = {a1, a2, . . . , an} and size functions(·). Anillustrative example is shown in Fig. 4.x 1y 1u 0 ( 1 , 1 ) ( 1 , 1 )( s m + s ( a 1 ) , s m ½ 0 . 5 s ( a 1 ) )

( s m ½ 0 . 5 s ( a 1 ) , s m + s ( a 1 ) )x 2y 2 u 2 ( 1 , 1 )u 1 ( 1 , 1 ) x ny n u n ( 1 , 1 )u n Æ 1p = 0 .5 p = 0 .5 p = 0 .5p = 0 .5 p = 0 .5 p = 0 .5p = 0 . 5 p = 0 . 5 p = 0 . 5p = 0 . 5 p = 0 . 5 p = 0 . 5

( s m + s ( a 2 ) , s m ½ 0 . 5 s ( a 2 ) ) ( s m + s ( a n ) , s m ½ 0 . 5 s ( a n ) )( s m ½ 0 . 5 s ( a 2 ) , s m + s ( a 2 ) ) ( s m ½ 0 . 5 s ( a n ) , s m + s ( a n ) )

Fig. 4. Reduction from Partition to DMCAP for K = 2.

The set of nodes of graphG(V,E) is given byV = {u0, u1, . . . , un; x1, x2, . . . , xn; y1, y2, . . . , yn}. The vertexweights of nodes in the sets{u0, u1, . . . , ui, . . . , un} are allset to (1, 1). The vertex weights of nodexi ∈ {x1, x2, . . . , xn}

are set to (sm+ s(ai), sm− 0.5s(ai)), wheresm is the largestsize of the elements inA (i.e. sm = maxa∈A s(a)). Thevertex weights of nodeyi ∈ {y1, y2, . . . , yn} are set to(sm − 0.5s(ai), sm + s(ai)). Note that the sizes of all theelements inA are positive. Therefore all the vertex weightsso constructed are positive. The set of directed links is givenby {(ui−1, xi), (xi, ui), (ui−1, yi), (yi, ui)|i ∈ [1, n]}. The packetdelivery probabilities of all the links are set to 0.5. We setW1 = W2 =

1≤i≤n s(ai )2 + 2nsm +

4n3 . In I2, we are looking

for an anypath fromu0 to un which satisfies the above twoconstraints. The construction ofI2 is complete and takespolynomial time.

Clearly, for each nodeui (i = 0, · · · , n − 1), we havethe following four forwarding set candidates:<xi+1, yi+1>,<yi+1, xi+1>, <xi+1>, and<yi+1>. One of them is selectedand used as the forwarding set forui (i = 0, ..., n−1). Next,let us compute the corresponding anypath weights of nodeui corresponding to these four forwarding sets.

We useW1(ui) andW2(ui) to denote the first and thesecond anypath weights fromui to un along an anypath,

respectively. Clearly,W1(un) = W2(un) = 0. GivenW1(ui+1) andW2(ui+1) (i = 0, ..., n− 1), we can computeW<J>

k (ui) for k = 1, 2, which denotes thekth anypathweight fromui to un if we use J as the forwarding set ofnodeui. Based on (3), we derive the following equations:

W<xi+1,yi+1>

1 (ui) =43+ 2sm+ s(ai+1) +W1(ui+1); (17)

W<yi+1,xi+1>

1 (ui) =43+ 2sm+W1(ui+1); (18)

W<xi+1>

1 (ui) = 2+ 2sm+ 2s(ai+1) +W1(ui+1); (19)

W<yi+1>

1 (ui) = 2+ 2sm− s(ai+1) +W1(ui+1); (20)

W<xi+1,yi+1>

2 (ui) =43+ 2sm+W2(ui+1); (21)

W<yi+1,xi+1>

2 (ui) =43+ 2sm+ s(ai+1) +W2(ui+1); (22)

W<xi+1>

2 (ui) = 2+ 2sm− s(ai+1) +W2(ui+1); (23)

W<yi+1>

2 (ui) = 2+ 2sm+ 2s(ai+1) +W2(ui+1). (24)

We use binary variablesZxy(ui), Zy

x(ui), Zx(ui), andZy(ui)to denote the following four forwarding set selections ofnodeui(i = 0, ..., n− 1), respectively.

• If forwarding set<xi+1, yi+1> is used as the forwardingset of ui , then Zx

y(ui) = 1 and Zyx(ui) = Zx(ui) =

Zy(ui) = 0.• If forwarding set<yi+1, xi+1> is used as the forwarding

set of ui , then Zyx(ui) = 1 and Zx

y(ui) = Zx(ui) =Zy(ui) = 0.

• If forwarding set<xi+1> is used as the forwarding setof ui , thenZx(ui) = 1 andZx

y (ui) = Zyx(ui) = Zy(ui) = 0.

• If forwarding set<yi+1> is used as the forwarding setof ui , thenZy(ui) = 1 andZx

y (ui) = Zyx(ui) = Zx(ui) = 0.

According to (17)-(24), we can start from nodeun andcompute the anypath weights fromul(l = 0, ..., n− 1) to un

using notationZxy(ul), Zy

x(ul), Zx(ul), andZy(ul), as follows:

W1(ul) =n−1∑

i=l

(

Zxy(ui)(

43+ 2sm + s(ai+1)) + Zy

x(ui)(43+ 2sm)

+Zx(ui)(2+ 2sm+ 2s(ai+1)) + Zy(ui)(2+ 2sm − s(ai+1)) ) ,(25)

and

W2(ul) =n−1∑

i=l

(

Zxy(ui)(

43+ 2sm) + Zy

x(ui)(43+ 2sm+ s(ai+1))

+Zx(ui)(2+ 2sm − s(ai+1)) + Zy(ui)(2+ 2sm + 2s(ai+1))) .(26)

We then prove the following two lemmas by leveraging(25) and (26).

Lemma 5.1: If instanceI2 has a solution, then instanceI1 also has a solution. 2

Proof: If instanceI2 has a solution, we know

W1(u0) ≤W1 =

1≤i≤n s(ai)

2+ 2nsm+

4n3

(27)

and

W2(u0) ≤W2 =

1≤i≤n s(ai)2

+ 2nsm+4n3. (28)

Page 9: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

9

Therefore, we have

W1(u0) +W2(u0) ≤∑

1≤i≤n

s(ai) + 4nsm+8n3. (29)

According to (25), (26), and (29), we know thatZx(ui) andZy(ui) have tobe zero fori = 0, 1, ..., n−1. Otherwise, (29)can never be satisfied. In other words, for nodeui only<xi+1, yi+1> and <yi+1, xi+1> are possible forwarding setsin the solution to instanceI2. Therefore, according to (25)and (26), we have

W1(u0)

=

n−1∑

i=0

(

Zxy (ui)(

43+ 2sm+ s(ai+1)) + (1− Zx

y (ui))(43+ 2sm)

)

=4n3+ 2nsm+

n−1∑

i=0

Zxy(ui)s(ai+1), (30)

and

W2(u0)

=

n−1∑

i=0

(

Zxy (ui)(

43+ 2sm) + (1− Zx

y(ui))(43+ 2sm+ s(ai+1))

)

=4n3+ 2nsm+

n−1∑

i=0

(1− Zxy(ui))s(ai+1). (31)

According to (30) and (31), we know that

W1(u0) +W2(u0) =∑

1≤i≤n

s(ai) + 4nsm+8n3. (32)

Considering (27), (28), and (32) we know that

W1(u0) =W2(u0) =4n3+ 2nsm+

1≤i≤n s(ai)2

. (33)

According to (30), (31), and (33), we thus can constructa solution to instanceI1 according to the solution toinstanceI2 as follows. If <xi+1, yi+1> (i.e. Zx

y (ui) = 1)is the forwarding set ofui in the solution to instanceI2,s(ai+1) is added toA′. If <yi+1, xi+1> (i.e. Zx

y(ui) = 0) isthe forwarding set ofui , s(ai+1) is added toA \ A′. Dueto (30), (31), and (33), this assignment can ensure that∑

a∈A′ s(a) =∑

a∈A\A′ s(a) =∑

1≤i≤n s(ai )2 .

Lemma 5.2: If instanceI1 has a solution, then instanceI2 also has a solution. 2

Proof. We can construct a solution to instanceI2 accordingto the solution toI1 as follows. If ai is in A′, <xi , yi> ischosen as the forwarding set for nodeui−1 (i.e.Zx

y(ui−1) = 1,Zy

x(ui−1) = 0, Zx(ui−1) = 0, and Zy(ui−1) = 0); otherwise<yi , xi> is chosen as the forwarding set for nodeui−1 (i.e.Zx

y(ui−1) = 0, Zyx(ui−1) = 1, Zx(ui−1) = 0, andZy(ui−1) = 0).

Therefore, according to (25) and (26), we have

W1(u0)

=

n−1∑

i=0

(

Zxy (ui)(

43+ 2sm+ s(ai+1) + (1− Zx

y(ui))(43+ 2sm)

)

=4n3+ 2nsm+

n−1∑

i=0

Zxy(ui)s(ai+1)

=4n3+ 2nsm+

a∈A′s(a) =W1 (34)

and

W2(u0)

=

n−1∑

i=0

(

Zxy(ui)(

43+ 2sm) + (1− Zx

y(ui))(43+ 2sm + s(ai+1))

)

=4n3+ 2nsm+

n−1∑

i=0

(1− Zxy(ui))s(ai+1)

=4n3+ 2nsm+

a∈A\A′s(a) =W2. (35)

Note that (34) and (35) hold since we have a solution to in-stanceI1 that ensures

a∈A′ s(a) =∑

a∈A\A′ s(a) =∑

1≤i≤n s(ai )2 .

Combining our reduction, the two lemmas above, andthe fact that the Partition problem is (weakly) NP-hard,we know that DMCAP is (weakly) NP-hard whenK = 2,which implies that DMCAP is (weakly) NP-hard for anygivenK ≥ 2. Hence, the proof for Theorem 3.1 is complete.

6 Performance EvaluationIn this section, we present numerical results to demonstratethe performance of our approximation algorithm MAP.

Since there is no previous algorithm for solving theOMCAP problem and it takes exponential time to obtain anoptimal solution, we compared MAP with some variants ofthe SAF algorithm proposed in [20], [21]. Note that SAF isdesigned based on EATX, rather than EWATX. However,we can extend the SAF algorithm to support EWATX bycomputing EWATX instead of EATX in the SAF algorithm.Since SAF is designed to optimize a single metric, we useSAF-k (k = 1, . . . ,K) to represent the implementation ofSAF only taking into account thekth weight, using EWATXinstead of EATX. Using ideas similar to those in the proofof Theorem 4.1, we can prove that SAF-k computes anoptimal anypath with respect to thekth EWATX.

6.1 Simulation Setup

All tests were performed on a 1.8GHz Linux PC with2G bytes of memory. In the simulation, we uniformlydistributed nodes in a 1000m× 1000m square region andevaluated different network sizes that will be describedlater. For each network size, we randomly generated 1000test cases by randomly choosing the coordinates for allthe nodes and the source-destination pair in each test.As in [31], it is assumed the link delivery probability

Page 10: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

10

is inversely proportional to the distance with a randomGaussian deviation of 0.1.

For the generation of vertex weights, we used two set-tings: apractical settingand arandom setting. For the prac-tical setting, we used two vertex weights which representaverage transmission time and power consumption for eachtransmission, respectively. All the nodes were equippedwith 802.11 wireless LAN client adapters.Since anypathrouting needs a MAC that supports anycast with relaypriority enforced, we can use the anycast MAC proposed byJain and Das [15], which is an enhancement to IEEE802.11.This scheme uses a variant of the IEEE 802.11 handshakingscheme to realize a reliable anycast MAC, andreduces to802.11 when there is only one next hop forwarder. Webriefly describe this scheme in the following. Please refer to[15] for details. This scheme follows the 802.11 DistributedCoordination Function. The transmitter broadcasts to itsforwarders an RTS (called MRTS) with all the forwarderaddresses (ordered according to their priorities). Intendedforwarders use the following rules to reply CTSs if theyreceive this MRTS. These CTS transmissions must bestaggered in time in order of their priorities. The highestpriority forwarder replies the CTS after an SIFS, the secondone replies after (CTS+3×SIFS) time, the third one after(2×CTS+5×SIFS) time and so on. Once the transmitterreceives a CTS, it sends the DATA to the sender of thisCTS after an SIFS interval. Other lower priority forwardershearing this DATA suppress their CTS replies. If DATA issuccessfully received, this forwarder replies an ACK. Anyother node that overhears the MRTS or a CTS will set theircorresponding network allocation vectors to avoid sendingpackets which may result in collision or interference.Each node in our simulation can choose one of the usabletransmit power levels: 63, 50, 30, 20 and 10mW [6]. Inaddition, every node can use 18, 11, 6 or 1Mbps asits transmission rate. According to [6], the correspondingmaximum transmission rangesRmax are 122, 149, 198 and213m when the adapter is being used at the maximumtransmit power. Since the wireless card may operate ondifferent power levels, the actual transmission range of eachtransmission rate configuration satisfiesRmax× ( Pt

Pmax)

1γ [13],

where the path loss exponent isγ = 2, the maximumtransmit power isPmax = 63mW, and its actual transmitpower Pt is 63, 50, 30, 20 or 10mV. The two constraintswere defined byW1 = 30(ms) andW2 = 375(mW). Sincethe first weight and the second weight represent delay andcost, respectively, we use SAF-D to represent SAF-1 andSAF-C to represent SAF-2 in this setting.

For the random setting, we consideredK = 2 andK = 3.All the vertex weights of each node were uniformly chosenbetween [1, 10] and all the QoS constraints were definedby Wk = 30 (k = 1, . . . ,K). The node transmission rangewas set to 200m.

6.2 Simulation Results

We report simulation results about the algorithm runningtime, the lengths of the anypaths obtained by MAP and

SAF-k, and some properties of the anypaths obtained byMAP.

6.2.1 Evaluation of Running TimeThe running times of MAP and SAF are almost identical.Fig. 5 shows the running time of MAP. Note that therunning times of MAP for the random setting and thepractical setting are similar. We observe that the averagerunning time is no more than 3.5ms in all cases studied.

150 200 250 300 3500

1

2

3

4

Number of Nodes

Run

ning

Tim

e(m

s)

MAP

Fig. 5. Running Time

6.2.2 Evaluation of Anypath LengthWe evaluated the lengths of the anypaths obtained by MAPand SAF-k for both the practical setting and the randomsetting. The number of nodes was chosen to be 150, 200,. . . ,and 350.

For the practical setting, Fig. 6(a) shows the anypathlengths computed by MAP, SAF-D, and SAF-C. We ob-serve that compared with SAF-D and SAF-C, MAP reducesthe average anypath length by 5%-30%. This is as expected,because SAF-D (SAF-C) uses only one metric in decision-making, while MAP uses both metrics in decision-making.Essentially, MAP seeks for some tradeoff between the twometrics.

In order to have a closer look at this tradeoff, wecompared the delays of the anypaths computed by MAPand SAF-D and also compared the costs of the anypathscomputed. Fig. 6(b) shows that the anypath computed byMAP has a higher delay than the anypath computed bySAF-D. This is as expected, since SAF-D aims to findthe anypath with the shortest delay. However, the anypathcomputed by SAF-D has much a larger cost than theanypath computed by MAP, as shown in Fig. 6(c). Whenmultiple constraints are taken into account, MAP can finda tradeoff (although the delay of the anypath it computes islarger than that computed by SAF-D), so that the anypathlength computed has a smaller anypath length than theanypath computed by SAF-D.

Fig. 6(a) also shows that on average the anypath foundby MAP is more likely to be a feasible solution to DMCAPthan the anypath found by either SAF-D or SAF-C. Recallthat an anypath is a feasible solution to DMCAP if andonly if its anypath length is less than or equal to 1.

Fig.6(d) and Fig. 6(e) show the comparison of theanypath lengths for the random setting. We observe thatcompared with SAF-k (k = 1, . . . ,K), MAP reduces theanypath length by 29%-49%. As in the case of practicalsetting, we observe that MAP is more likely to find afeasible solution to DMCAP than SAF-k (k = 1, . . . ,K).

Page 11: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

11

150 200 250 300 3500

0.5

1

1.5

Number of Nodes

Any

path

Len

gth

MAPSAF−DSAF−C

(a) Anypath length (practical setting)

150 200 250 300 3500

0.5

1

1.5

Number of Nodes

Any

path

Del

ay

MAPSAF−D

(b) Anypath delay (practical setting)

150 200 250 300 3500

0.5

1

1.5

Number of Nodes

Any

path

Cos

t

MAPSAF−D

(c) Anypath cost (practical setting)

150 200 250 300 3500

0.5

1

1.5

2

Number of Nodes

Any

path

Len

gth

MAPSAF−1SAF−2

(d) Anypath length (random setting:K = 2)

150 200 250 300 3500

0.5

1

1.5

2

2.5

Number of Nodes

Any

path

Len

gth

MAPSAF−1SAF−2SAF−3

(e) Anypath length (random setting:K = 3)

Fig. 6. Anypath Lengths

25 50 75 1000

0.5

1

1.5

2

2.5

Number of Nodes

Siz

e of

For

war

ding

Set

s

AverageMaxMin

(a) Practical setting

25 50 75 1000

1

2

3

4

5

Number of Nodes

Siz

e of

For

war

ding

Set

s

AverageMaxMin

(b) Random setting: K=2

25 50 75 1000

1

2

3

4

5

Number of Nodes

Siz

e of

For

war

ding

Set

s

AverageMaxMin

(c) Random setting: K=3

Fig. 7. Size of Forwarding Sets

6.2.3 Analysis of Anypath Properties

In the following, we report the simulation results whichreveal some important properties of the anypath computedby MAP. First, we analyze the size of the forwarding sets.Second, we analyze the properties of the single paths withinan anypath that a packet may traverse. Recall that differentpackets may take different single paths within a givenanypath. Since the number of single paths within a givenanypath may be exponential, we only studied four smallnetwork sizes, i.e., the number of nodes was chosen to be25, 50, 75, and 100.

Figs. 7(a)-7(c) report the size of the forwarding setscomputed by MAP. In these figures, “Average”, “Max”,and “Min” represent the average size, the maximum size,and the minimum size of all the forwarding sets of acomputed anypath, respectively. Note that these parametersare computed once for each test case and the resultsreported here are the averages over 1000 test cases. Weobserve that the maximum size is no more than 5 in all thecases studied and the average size is between 1 and 2.2.This indicates that in practice a node does not use too manyforwarders. We also observe that as the number of nodesincreases, the average size of forwarding sets increases aswell. This is as expected, because a higher node densityimplies that a node may have more forwarder candidatesto choose from.

The experimental results on the size of the forwardingsets reveal another property of anypaths–the overhead of

anypath routing compared to that of traditional routing.Recall that we can use the anycast scheme proposed in[15] as a MAC protocol to support anypath routing (seeour discussion in Section 6.1). Compared with the overheadof traditional routing based on 802.11, we will have thefollowing two types of overheads due to the use of anypath:1) the handshaking packet MRTS should have the addressesof all the forwarders and 2) a forwarder receiving an MRTShas to wait for a longer time before replying a CTS, inorder to make sure that higher priority forwarders alsoreceiving the MRTS will reply CTS first. Both types ofoverheads increase as the size of the forwarding sets in-creases. Fortunately, according to our simulation, in practicethe average size is between 1 and 2.2, which implies thatthe overhead introduced is fairly small. In other words,compared with the traditional routing protocols that abstractwireless links as wired links to compute link states, anypathrouting leverages the broadcast nature of wireless mediumto increase the transmission and reception opportunity, withfairly small overhead introduced.

Recall that an anypath is composed of the union ofmany different paths. For example, there exist five singlepaths in the anypath shown in Fig. 1(a). Figs. 8(a), 9(a),and 10(a) show the hop counts of the single paths withinthe computed anypath. In these figures, “Average”, “Max”,and “Min” represent the average hop count, the maximumhop count, and the minimum hop count of all the singlepaths existing in an anypath, respectively. Like before, these

Page 12: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

12

25 50 75 1000

2

4

6

8

Number of Nodes

Any

path

Hop

Cou

nt

AverageMaxMin

(a) Anypath hop count

25 50 75 1000

0.5

1

1.5

2

Number of Nodes

Any

path

Hop

Cou

nt D

ispa

rity

Rat

io

(b) Anypath hop count disparity ratio

25 50 75 10010

0

101

102

Number of Nodes

Sin

gle

Pat

h C

ount

ing

(c) Single path counting

[1, 1.2)[1.6, 1.8)

[2.2, 2.4)[2.8, ) 255075100

0

0.1

0.2

0.3

0.4

0.5

Number of NodesDisparity ratio range

Per

cent

age

(d) Delay disparity ratio distribution

[1, 1.2)[1.6, 1.8)

[2.2, 2.4)[2.8, ) 255075100

0

0.1

0.2

0.3

0.4

0.5

Number of NodesDisparity ratio range

Per

cent

age

(e) Cost disparity ratio distribution

Fig. 8. Single Path Property (Practical Setting)

25 50 75 1000

5

10

15

Number of Nodes

Any

path

Hop

Cou

nt

AverageMaxMin

(a) Anypath hop count

25 50 75 1000

1

2

3

Number of Nodes

Any

path

Hop

Cou

nt D

ispa

rity

Rat

io

(b) Anypath hop count disparity ratio

25 50 75 10010

0

102

104

Number of Nodes

Sin

gle

Pat

h C

ount

ing

(c) Single path counting

[1, 1.4)[2.2, 2.6)

[3.4, 3.8)[4.6, ) 255075100

0

0.2

0.4

0.6

0.8

1

Number of NodesDisparity ratio range

Per

cent

age

(d) Single path weight disparity ratio distribution(k = 1)

[1, 1.4)[2.2, 2.6)

[3.4, 3.8)[4.6, ) 255075100

0

0.2

0.4

0.6

0.8

1

Number of NodesDisparity ratio range

Per

cent

age

(e) Single path weight disparity ratio distribution(k = 2)

Fig. 9. Single Path Property (Random Setting: K = 2)

25 50 75 1000

5

10

15

Number of Nodes

Any

path

Hop

Cou

nt

AverageMaxMin

(a) Anypath hop count

25 50 75 1000

1

2

3

Number of Nodes

Any

path

Hop

Cou

nt D

ispa

rity

Rat

io

(b) Anypath hop count disparity ratio

25 50 75 10010

0

102

104

Number of Nodes

Sin

gle

Pat

h C

ount

ing

(c) Single path counting

[1, 1.4)[2.2, 2.6)

[3.4, 3.8)[4.6, ) 255075100

0

0.1

0.2

0.3

0.4

0.5

Number of NodesDisparity ratio range

Per

cent

age

(d) Single path weight disparity ratio distribution(k = 1)

[1, 1.4)[2.2, 2.6)

[3.4, 3.8)[4.6, ) 255075100

0

0.1

0.2

0.3

0.4

0.5

Number of NodesDisparity ratio range

Per

cent

age

(e) Single path weight disparity ratio distribution(k = 2)

[1, 1.4)[2.2, 2.6)

[3.4, 3.8)[4.6, ) 255075100

0

0.1

0.2

0.3

0.4

0.5

Number of NodesDisparity ratio range

Per

cent

age

(f) Single path weight disparity ratio distribution(k = 3)

Fig. 10. Single Path Property (Random Setting: K = 3)

Page 13: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

13

parameters are computed once for each test case and theresults reported here are the averages over 1000 test cases.We observe that the maximum hop count is no more than 7in the practical setting and no more than 12 in the randomsetting. Furthermore, as the number of nodes increases, theaverage hop count increases as well. This is because in ahigher node density setting, a node may prefer shorter linksthat may have higher packet delivery probabilities, whichmakes longer paths (in terms of hops) involved.

Recall that in order to compute the results shown inFigs. 8(a), 9(a), and 10(a), we computed these parametersonce for each test case and then averaged them over 1000test cases. In order to better understand the relationshipbetween the maximum hop count and the minimum hopcount for the anypath obtained in each test case, we usea new metric, calledanypath hop count disparity ratio.Specifically, we first compute the ratio of the maximum hopcount over the minimum of all the single paths existing inthe anypath obtained in each test case, and then computethe anypath hop count disparity ratio, by averaging theseratios over the 1000 test cases. We observe that this ratio isno more than 1.5 for the practical setting and no more than3 for the random setting. This implies that in the anypathso computed the longest single path is not too much longerthan the shortest single path in terms of hop counts.

Figs. 8(c), 9(c), and 10(c) show the number of singlepaths existing in the anypath computed by MAP. Weobserve that the number of single paths increases fast asthe number of nodes increases. This is because the numberof single paths within a given anypath may be exponential.Although there may exist a large number of single paths inan anypath, the maximum anypath hop count is no morethan 12 and the average anypath hop count is no morethan 8 in all the cases studied. This shows that a packetmay have many path choices in an unreliable wirelessenvironment but the number of hops it will take to reachthe destination is still small. Note that the path taken by apacket is determined on-the-fly, depending on which nodesin the forwarding sets successfully receive the packet ateach hop.

Note that there may be many single paths within a givenanypath. For a given value ofk, one of these single pathsis shortest with respect to thekth weight, where thekthweight of a single pathP is defined as

(v,w)∈Pwk(v)p(v,w) . We

use Figs. 8(d), 8(e), 9(d), 9(e), 10(d), 10(e), and 10(f) toillustrate the distribution of the actual weights of the singlepaths existing in the anypath. Since different anypaths indifferent test cases may have different lengths, we introducethe following metric, calledsingle path weight disparityratio, which is computed in the following way. For thekthweight, we first find the one with the smallestkth pathweight among all the single paths existing in the obtainedanyapth. Then for each single path we compute itskth pathweight disparity ratio by dividing itskth path weight bythe kth path weight of the shortest one we have found.Therefore, a ratio close to 1 means that this single pathis almost as good as the best single path. Fig. 8(d), 8(e),9(d), 9(e), 10(d), 10(e), and 10(f) show the distributions

of the disparity ratios. More specifically, in the practicalsetting, the distributions of the disparity ratios with respectto single path delay and single path cost are shown in Fig.8(d) and Fig. 8(e), respectively. The disparity ratio rangesin these two figures are [1, 1.2), [1.2, 1.4), · · · , [2.6, 2.8),and [2.8,∞). In the random setting, the disparity ratiosreported in Fig. 9(d) and Fig. 9(e) are the first and thesecond path weight disparity ratios for the caseK = 2,respectively. The disparity ratios reported in Fig. 10(d),Fig. 10(e), and Fig. 10(f) are the first, second, and thirdpath weight disparity ratios for the caseK = 3, respec-tively. The disparity ratio ranges in these five figures are[1, 1.4), [1.4, 1.8), · · · , [4.2, 4.6), and [4.6,∞).

We observe that the majority of the single paths haveweights close to that of the shortest one. Furthermore, thepercentage of the disparity ratio decreases significantly asits value increases. The percentages of the disparity ratioslocated in [2.8,∞) for the practical setting and [4.6,∞) forthe random setting are almost zero. This indicates that mostof the single paths actually are good enough compared withthe best one. If the packets take these single paths, the delayor cost is just slightly worse compared with that by takingthe best single path. However, as explained in Section 3,in an unreliable wireless environment, opportunisticallyexploiting many single paths is usually less costly andcan improve the network performance. Therefore, thesesub-optimal but good enough single paths provide suchopportunities.

7 ConclusionsIn this paper, we have studied anypath routing subjectto K ≥ 2 constraints. We have proved its NP-hardnessand presented a polynomial timeK-approximation routingalgorithm. Numerical results show that our algorithm isvery fast and therefore suitable for implementation in wire-less routing protocols. Our NP-hardness proof proves theproblem to be weakly NP-hard, as opposed to strongly NP-hard. Therefore, possible future research topics along thisline include either designing better approximation algorithmor establishing stronger hardness result.

ACKNOWLEDGMENT

We thank the editor and the anonymous reviewers whosecomments on earlier versions of this paper have helped tosignificantly improve our paper.

REFERENCES

[1] S. Biswas and R. Morris, “ExOR: Opportunistic Multi-HopRoutingfor Wireless Networks,”ACM SIGCOMM’05, Philadelphia, PA,USA, Aug.2005, pp. 133-143.

[2] S. Chachulski, M. Jennings, S. Katti, and D. Katabi, “TradingStructure for Randomness in Wireless Opportunistic Routing,” ACMSIGCOMM’07.

[3] S. Chen and K. Nahrstedt, “On finding multi-constrained paths,”IEEE ICC’98, Atlanta, GA, USA, pp.874-879.

[4] S. Chen and K. Nahrstedt, “An overview of quality of service routingfor next-generation high-speed networks: problems and solutions,”IEEE Network, Vol. 12(1998), pp. 64-79.

Page 14: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

14

[5] R.R. Choudhury, and N.H. Vaidya, “MAC-layer AnycastinginAd hoc Networks,” ACM SIGCOMM Computer CommunicationReview’04.

[6] Cisco, “Cisco Aironet 802.11a/b/g Wireless LAN Client Adapters(CB21AG and PI21AG) Installation and Configuration Guide”,2007.

[7] T. H. Cormen, C. E. Leiserson, R. L. Rivest and C. Stein, “Intro-duction to Algorithms,” The MIT Press.

[8] D. D. Couto, D. Aguayo, J. Bicket, and R. Morris, “A High-Throughput Path Metric for Multi-Hop Wireless Routing,”ACMMobiCom’03 Conference, San Diego, CA, USA, Sep. 2003, pp. 134-146.

[9] R. Draves, J. Padhye, and B. Zill, “Routing in Multi-Radio, Multi-Hop Wireless Mesh Networks,”ACM MobiCom’04 Conference,Philadelphia, PA, USA, Sep.2004, pp. 114-128.

[10] H. Dubois-Ferriere, “Anypath Routing,” Ph.D dissertation, EcolePoly-technique Federale de Lausanne, Lausanne, Switzerland, Nov.2006.

[11] H. Dubois-Ferriere, M. Grossglauser and Martin Vetterli, “Least-cost Opportunistic Routing,”Allerton Conference’07, Monticello, IL,USA, Sep.2007.

[12] X. Fang, D. Yang, P. Gundecha, and G. Xue, “Multi-ConstrainedAnypath Routing in Wireless Mesh Networks”,IEEE SECON’10,Bostan, MA, USA, June 2010, pp. 475-483.

[13] A. Goldsmith, “Wireless Communications,” Cambridge UniversityPress, Aug.2005.

[14] J.M. Jaffe, “Algorithms for finding paths with multipleconstraints,”Networks, vol.14, no.1, Oct. 2006, pp. 95-116.

[15] S. Jain and S. R. Das, “Exploiting Path Diversity in the Link Layer inWireless Ad Hoc Networks,”Ad Hoc Networks, vol.6, no.5, Jul.2008.

[16] T. Korkmaz and M. Krunz, “A randomized algorithm for findinga path subject to multiple QoS requirements,”Computer Networks,Vol. 36(2001), pp. 251-268.

[17] F.A. Kuipers, A. Orda, D. Raz, and P. Van Mieghem, “A comparisonof exact and A-approximation algorithms for constrained routing,”IFIP Networking’06, Coimbra, Portugal, May 15-19, 2006.

[18] F. Kuipers, P. Van Mieghem, T. Korkmaz, M. Krunz “An overviewof constraint-based path selection algorithms for QoS routing,” IEEECommunications Magazine, Vol.40(2002), pp. 50-55.

[19] P. Larsson, “Selection Diversity Forwarding in a Multihop PacketRadio Network with Fading Channel and Capture,”SIGMOBILEMob. Comput. Commun. Rev., vol.5, no.4, Oct.2001, pp. 47-54.

[20] R. Laufer, H. Dubois-Ferriere and L. Kleinrock, “Multirate AnypathRouting in Wireless Mesh Networks,”IEEE INFOCOM’09, Rio deJaneiro, Brazil, Apr.2009, pp.37-45.

[21] R. Laufer and L. Kleinrock, “Multirate Anypath Routingin WirelessMesh Networks,” UCLA Computer Science Department, Tech. Rep.UCLA-CSD-TR080025, Aug. 2008.

[22] D.H. Lorenz and D. Raz; “A simple efficient approximation schemefor the restricted shortest path problem,”Operations Research Let-ters, vol.28, no.5, Jun. 2001, pp. 213-219.

[23] A. Orda and A. Sprintson, “Precomputation schemes for QoSrouting,” IEEE/ACM Transactions on Networking, Vol. 11(2003), pp.578-591

[24] C. Reis, R. Mahajan, M. Rodrig, D. Wetherall, and J. Zahorjan,“Measurement-based models of delivery and interference instaticwireless networks,”ACM SIGCOMM’06 Conference, Vancouver,British Columbia, Canada, Sep. 2006, pp.51-62.

[25] G. Schaefer, F. Ingelrest, and M. Vetterli, “Potentials of Opportunis-tic Routing in Energy-Constrained Wireless Sensor Networks,” 6thEuropean Conference on WSNs, Cork, Ireland, Feb. 2009, pp. 118-133.

[26] G. Tsaggouris and C. Zaroliagis, “Multiobjective Optimization:Improved FPTAS for Shortest Paths and Non-Linear Objectiveswith Applications,”Theory of Computing Systems, vol.45, no.1, Apr.2009, pp.162-186

[27] Z. Wang and J. Crowcroft, “Quality-of-service routingfor support-ing multimedia applications,”IEEE Journal on Selected Areas inCommunications, vol.14, no.7, Sep. 1996 pp.1228-1234.

[28] G. Xue, A. Sen, W. Zhang, J. Tang and K. Thulasiraman, “Find-ing a path subject to many additive QoS constraints,”IEEE/ACMTransactions on Networking, vol.15, no.1, Feb.2007, pp. 201-211.

[29] G. Xue, W. Zhang, J. Tang and K. Thulasiraman, “Polynomialtime approximation algorithms for multi-constrained QoS routing,”IEEE/ACM Transactions on Networking, vol. 16, no.3, Jun.2008, pp.656-669.

[30] X. Yuan, “Heuristic algorithms for multiconstrained quality-of-service routing,” IEEE/ACM Transactions on Networking, Vol.10(2002), pp. 244-256.

[31] K. Zeng, W. Lou, and H. Zhai, “On End-to-end Throughput of Op-portunistic Routing in Multirate and Multihop Wireless Networks,”IEEE Infocom’08 Conference, Phoenix, AZ, USA, Apr. 2008.

[32] Z. Zhong, J. Wang, S. Nelakuditi, and G.-H. Lu, “On Selection ofCandidates for Opportunistic AnyPath Forwarding,”ACM SIGMO-BILE Mob Comp. and Com. Rev., vol.10, no.4, Oct. 2006, pp.1-2.

[33] M. Zorzi and R. R. Rao, “Geographic Random Forwarding (GeRaF)for Ad Hoc and Sensor Networks: Multihop Performance,”IEEETransactions on Mobile Computing, vol. 2, no. 4, Oct. 2003, pp.337-348.

Xi Fang (S’09) received the B.S. and M.S.degrees from Beijing University of Postsand Telecommunications, China, in 2005 and2008 respectively. Currently he is a Ph.D stu-dent in the School of Computing, Informat-ics, and Decision Systems Engineering atArizona State University. He has received aBest Paper Award at IEEE ICC’2012, a BestPaper Award at IEEE MASS’2011, a BestPaper Award at IEEE ICC’2011, and a BestPaper Award Runner-up at IEEE ICNP’2010.

His research interests include algorithm design and optimization inwireless networks, optical networks, cloud computing, and powergrids.

Dejun Yang (Student Member 2008) re-ceived his B.S. from Peking University, Bei-jing, China, in 2007. Currently he is a PhDstudent in the School of Computing, Infor-matics, and Decision Systems Engineering(CIDSE) at Arizona State University. His re-search interests include economic and op-timization approaches to wireless networksand social networks. He has received a BestPaper Award at IEEE ICC’2012, a Best Pa-per Award at IEEE ICC’2011, a Best Paper

Award at IEEE MASS’2011 and a Best Paper Award Runner-up atIEEE ICNP’2010.

Guoliang Xue (Member 1996, Senior Mem-ber 1999, Fellow, 2011) is a Professor ofComputer Science and Engineering at Ari-zona State University. He received the BSdegree (1981) in mathematics and the MSdegree (1984) in operations research fromQufu Normal University, Qufu, China, andthe PhD degree (1991) in computer sciencefrom the University of Minnesota, Minneapo-lis, USA. His research interests include sur-vivability, security, and resource allocation

issues in networks ranging from optical networks to wireless meshand sensor networks and social networks. He has published over200 papers (including over 100 journal papers) in these areas. He re-ceived Best Paper Awards at IEEE Globecom’2007, IEEE ICC’2010,IEEE MASS’2011, IEEE Globecom’2011, and a Best Paper AwardRunner-up at IEEE ICNP’2010. He received the NSF ResearchInitiation Award in 1994, and has been continuously supported byfederal agencies including NSF and ARO. He is an Associate Editorof IEEE/ACM Transactions on Networking and IEEE Network maga-zine. He was a Keynote Speaker at IEEE LCN’2011, and served asa TPC co-Chair of IEEE INFOCOM’2010. He is a Fellow of the IEEE.

Page 15: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

Supplenmentary Document: Page 1 of 4

APPENDIX APROOF OF THEOREM 4.1Although the rigorous proof of Theorem 4.1 is very in-tricate, this complexity is an aspect of the analysis, notof the algorithm itself. As we have seen in Section 4, ouralgorithm is as simple as Dijkstra’s algorithm for computinga shortest path.

Although the properties of forwarding sets revealed byLemma A.2 and Lemma A.4 seem related to those in [20],[21], there are two major differences. The first one isthat our paper deals with EWATX, which is more generalthan EATX used in [20], [21]. The second one is that weintroduce the concept ofminimum full AOFS, and basedon that we obtain more rigorous properties of forwardingsets. Thus, our proofs are novel and nontrivial. We presentthe details of the analysis here for the completeness of thepaper.

In the following proofs, we omit the notationP of theanypath for simplicity. Instead, we useW(J)

m (v) to denotethe AAW of v via the forwarding setJ if all the nodes inJare using their shortest AAW anypaths. In addition, we useθ(v) to denote the AAW ofv alongπm

v (i.e. the optimal AAWof v). Before proving Theorem 4.1,need the following fourlemmas.

Lemma A.1: Consider a forwarding set J =< j1, j2, . . . , jy> of a node v with Wm( j1) ≤

Wm( j2) ≤ · · · ≤ Wm( jy) and a positive integer∆ ≤ y. We can arbitrarily divideJ into ∆ subsetsof nodes with contiguous priorities:<J1, J2, . . . , J∆>=<< jτ1, jτ1+1, . . . , jτ2−1>,< jτ2, jτ2+1, . . . , jτ3−1>,. . . ,< jτ∆ ,jτ∆+1, . . . , jτ∆+1−1>>, where jτ1 = j1, jτ1+1 =

j2, . . . , jτ∆+1−1 = jy. For instance, let us consider∆ = 2. < j1, j2, j3, j4, j5> can be divided into<< j1>,< j2, j3, j4, j5>>,<< j1, j2>,< j3, j4, j5>>,<< j1, j2, j3>,< j4, j5>>, or << j1, j2, j3, j4>, < j5>>.We have

W(J)m (v) =

ωm(v)

1−∏

δ=1(1− p(v, Jδ))

+

Jδ∈J

p(v, Jδ)∏δ−1

q=1(1− p(v, Jq))

1−∏

δ=1(1− p(v, Jδ))Wm(Jδ).

We call theseJ1, J2, . . . , J∆ contiguous priority forwardingsubsets. 2

Proof. By (1), (6) and (7),

W(J)m (v)

=ωm(v)p(v, J)

+

jβ∈J

p(v, jβ)∏β−1

q=1(1− p(v, jq))Wm( jq)

p(v, J)

=ωm(v)

1−∏

δ=1(1− p(v, Jδ))

+

∆∑

δ=1

p(v, Jδ)Wm(Jδ)∏τδ−1

q=1 (1− p(v, jq))

1−∏

δ=1(1− p(v, Jδ))

=ωm(v)

1−∏

δ=1(1− p(v, Jδ))

+

∆∑

δ=1

p(v, Jδ)∏δ−1

q=1(1− p(v, Jq))

1−∏

δ=1(1− p(v, Jδ))Wm(Jδ).

Intuitively, this lemma implies that we can group to-gether the nodes with contiguous priorities as an “aggre-gated vertex”. In other words, each contiguous priorityforwarding subset is an aggregated vertex. For instance,when∆ = 3, < j1, j2, j3, j4, j5> can form three aggregatedvertices:< j1, j2>, < j3>, < j4, j5>. Note that an aggregatedvertex can consist of a single node or a set of nodeswith contiguous priorities. Thus ifJ1, J2, . . . , Jβ, . . . arecontiguous priority forwarding subsets, we can rewrite (6)and (7) as

Wm(v,Ps) =ωm(v)

p(v, J(v,Ps))+Wm(J(v,Ps),Ps), (36)

where

Wm(J(v,Ps),Ps) =∑

Jβ∈J(v,Ps)

α(Jβ,Ps)Wm(Jβ,Ps), (37)

and

α(Jβ,Ps) =p(v, Jβ)

∏β−1q=1(1− p(v, Jq))

p(v, J(v,Ps)). (38)

Note thatβ can be considered the forwarding priority ofthis aggregated vertex, and that the boundary condition isWm(t,Ps) = 0.

Lemma A.2: For all the neighborsj1, j2, . . . , jz of anode v, where z is the number of neighbors, ifθ( j1) ≤θ( j2) ≤ · · · ≤ θ( jz), then there must exist an AOFS of theform < j1, j2, . . . , jb> for someb ∈ {1, 2, . . . , z}, called afullAAW optimal forwarding set (FAOFS). 2

Proof. We index all the neighbors ofv in increasing orderof their optimal AAWs. In other words, a nodej with alarger θ( j) should have a largerpriority index. Now eachneighbor has a unique index which will be used in thisproof. For a single metric, Dubois-Ferriere [10] indicatesthat a lower priority should be assigned to a forwarder witha larger anypath weight. Thus, a forwarder with a largerpriority index (i.e. a larger AAW) should have a lowerpriority. Since each node has a finite number of neighbors,there must exist at least one AOFS for each node. Amongall the AOFSs ofv, we compare the priority indices of theirlowest priority nodes, and select the AOFS whose lowestpriority node has the smallest priority index. We usejbto denote this node. If there are multiple such sets, wearbitrarily select one (denoted byψ). For instance, thereare three AOFSs:< j1, j2, j3>, < j1, j2, j4> and< j1, j3, j5>.The lowest priority node in< j1, j2, j3> has the smallestpriority index. Thusb = 3. We call the nodes with priorityindices smaller thanb potential AAW optimal forwarders(PAOFs). In the example above,j1 and j2 are PAOFs.

Based onψ, we will construct an FAOFS which iscomposed of all the PAOFs andjb. The outline of ourproof is as follows. We will prove that inserting an arbitraryPAOF into the forwarding set, whose lowest priority nodeis jb, will not increase the AAW ofv. This implies that if aPAOF is not inψ, we can add it intoψ without increasing

Page 16: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

Supplenmentary Document: Page 2 of 4

the AAW of v. Repeat this procedure until the forwardingset contains all the PAOFs andjb. Take b = 5 as anexample. Assume the AOFSψ is of the form< j1, j3, j5>.We will prove that the AAW ofv via ψ ∪ { j2} or ψ ∪ { j4}is not larger than that viaψ. After j2(or j4) is added intothe forwarding set, we will prove that the AAW ofv viaψ∪{ j2}∪{ j4} is not larger than that viaψ∪{ j2}(or ψ∪{ j4}).Clearly, the forwarding set< j1, j2, j3, j4, j5> is not worsethanψ, thus it is also an AOFS. The termhole is used torepresent the PAOFs which are not in the forwarding setψ. For instance,j2 and j4 in the example above are holes.From now on, we deal with the case thatψ has at least onehole, since for the caseψ has no hole,ψ is naturally anFAOFS.Among all the PAOFs, wearbitrarily select onesubset of PAOFs, which has one hole (denoted byjh). WeuseSh to denote the union of this selected set andjb. Thentaking this hole jh as apivot, we divide this set into twosubsetsSl andSr such that the optimal AAW of nodes inSl (Sr ) are not greater (less) thanθ( jh). Considering theexample above, we select a set of PAOFs< j1, j2, j3> andj2 is a hole. ThenSh is < j1, j2, j3, j5>. Taking j2 as a pivot,we can obtain two subsetsSl = < j1> and Sr = < j3, j5>.Note thatSl could be empty since the hole could be thehighest priority node inSh, while Sr is always nonemptysince it contains at leastjb. Now we prove some propertiesof Sl , Sr and PAOFs.

First, for a nonempty setSr , we know θ( jh) ≤

θ( jr i ),∀ jr i ∈ Sr , i ∈ [1, |Sr |]. Thus, if each node inSr usesits shortest AAW anypath, by (7) the AAW ofSr can becalculated as follows:

Wm(Sr) =∑

jri ∈Sr

p(v, jr i )∏i−1

q=1(1− p(v, jrq))

p(v,Sr)θ( jr i )

≥ θ( jh)∑

jri ∈Sr

p(v, jr i )∏i−1

q=1(1− p(v, jrq))

1−∏|Sr |

i=1(1− p(v, jr i ))= θ( jh). (39)

Second, for any nonempty setS composed of PAOFs,we claim that if all the nodes inS use their shortest AAWanypaths, the AAW ofv via this forwarding setS satisfies

W(S)m (v) =

ωm(v)p(v,S)

+Wm(S) > θ( jb). (40)

We will prove this claim by contradiction. Assume thatthere exists a setS′a such that ωm(v)

p(v,S′a) +Wm(S′a) ≤ θ( jb).We useψ′ to denote the setψ \ { jb}. SinceS′a is composedof PAOFs, it does not containjb. Let Sa denote the setS′a ∪ { jb} (i.e. S′a = Sa \ { jb}). Sinceψ is optimal withrespect to AAW, we have

ωm(v)+p(v,S′a)Wm(S′a)+(1− p(v,S′a))p(v, jb)θ( jb)

p(v,Sa)≥

ωm(v)+p(v, ψ′)Wm(ψ′)+(1−p(v, ψ′))p(v, jb)θ( jb)p(v, ψ)

. (41)

By (36)(37)(38), the left side of (41) is the AAW ofv viathe forwarding setSa, and the right side is that ofv via the

AOFS ψ. We can transform (41) to

(ωm(v)+p(v, ψ′)Wm(ψ′))(1−(1−p(v,S′a))(1−p(v, jb)))

−(ωm(v)+p(v,S′a)Wm(S′a))(1−(1−p(v, ψ′))(1−p(v, jb)))

+p(v, jb)θ( jb)(p(v,S′a) − p(v, ψ′)) ≤ 0. (42)

According to the assumptionωm(v)p(v,S′a) +Wm(S′a) ≤ θ( jb) and

p(v, jb) > 0 (by the definition of OMCAP), (42) implies

(ωm(v)+p(v, ψ′)Wm(ψ′))(1−(1−p(v,S′a))(1−p(v, jb)))

≤ θ( jb)p(v, ψ′)(1− (1− p(v,S′a))(1− p(v, jb))). (43)

Sincep(v, jb) > 0, we know 1− (1− p(v,S′a))(1− p(v, jb)) >0. Thus, we can divide both sides of (43) by 1− (1 −p(v,S′a))(1− p(v, jb)) and derive the AAW ofv via ψ′

W(ψ′)m (v) =

ωm(v)p(v, ψ′)

+Wm(ψ′) ≤ θ( jb). (44)

We can now prove (40) by contradiction. Whenv usesψas its forwarding set, by (36-38), we know

W(ψ)m (v)

=ωm(v)+p(v,ψ′)Wm(ψ′)+p(v, jb)(1−p(v, ψ′))θ( jb)

1− (1− p(v, jb))(1− p(v, ψ′)). (45)

Whenv usesψ′ as its forwarding set, its AAW is

W(ψ′)m (v) =

ωm(v) + p(v, ψ′)Wm(ψ′)p(v, ψ′)

. (46)

Combining (45) and (46), we have

W(ψ)m (v)=

W(ψ′)m (v)p(v,ψ′)+p(v, jb)(1−p(v,ψ′))θ( jb)

1− (1− p(v, jb))(1− p(v, ψ′)). (47)

According to (44) and (47), we can deriveW(ψ)m (v) ≥

W(ψ′)m (v). This is a contradiction considering the following

two cases. In the first case:W(ψ)m (v) > W

(ψ′)m (v). This

implies ψ′ is better and thusψ is not an AOFS, whichis a contradiction. In the second case:W(ψ)

m (v) =W(ψ′)m (v).

We can therefore safely removejb from ψ to obtain anotherAOFSψ′, whose lowest priority node has a smaller priorityindex than that ofjb. Recall thatψ is the AOFS whoselowest priority nodejb has the smallest priority index. Thisis also a contradiction. Therefore, the inequality (40) isproved.

Third, sinceS is an arbitrary set composed of PAOFs,according to (40), we know that whenSl is not empty(recall thatSl is composed of PAOFs),W(Sl )

m (v) = ωm(v)p(v,Sl)

+

Wm(Sl) > θ( jb). We know thatθ( jb) is not smaller than theoptimal AAW of any PAOF and thatjh is a PAOF. Thus

W(Sl )m (v) =

ωm(v)p(v,Sl)

+Wm(Sl) > θ( jh). (48)

Based on the three properties above, we will show thatwe can safely fill the hole jh. We now compare the AAWof v via Sh with that via S′h = Sh \ { jh}. By (36)(37)(38),we have

W(S′h)m (v)

=ωm(v)+p(v,Sl)Wm(Sl)+(1−p(v,Sl))p(v,Sr)Wm(Sr )

1− (1− p(v,Sl))(1− p(v,Sr)),

Page 17: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

Supplenmentary Document: Page 3 of 4

and

W(Sh)m (v)

=ωm(v) + p(v,Sl)Wm(Sl) + (1− p(v,Sl))p(v, jh)θ( jh)

1− (1− p(v,Sl))(1− p(v,Sr))(1− p(v, jh))

+(1− p(v,Sl))(1− p(v, jh))p(v,Sr)Wm(Sr )1− (1− p(v,Sl))(1− p(v,Sr))(1− p(v, jh))

.

Sincep(v,S′h) = 1−(1−p(v,Sl))(1−p(v,Sr)) andp(v,Sh) =1− (1− p(v,Sl))(1− p(v,Sr))(1− p(v, jh)), we can have

W(Sh)m (v) −W

(S′h)m (v) =

=−(1−p(v,Sl))p(v, jh)(ωm(v)+p(v,Sl)Wm(Sl))(1−p(v,Sr))

p(v,Sh)p(v,S′h)

−(1−p(v,Sl))p(v, jh)p(v,Sr)Wm(Sr)

p(v,Sh)p(v,S′h)

+(1−p(v,Sl))p(v, jh)θ( jh)(p(v,Sl)+p(v,Sr)−p(v,Sl)p(v,Sr))

p(v,Sh)p(v,S′h).

(49)

We now consider two cases. The first case is thatSl isempty. Obviously, we can setp(v,Sl) = p(v,Sl)Wm(Sl) =0. Recall thatSr is always nonempty. Thus, we can substi-tute (39) andp(v,Sl) = 0 into (49). We must have

W(Sh)m (v) −W

(S′h)m (v)

≤−p(v, jh)ωm(v)(1− p(v,Sr))

p(v,Sh)p(v,S′h)≤ 0. (50)

The second case is that bothSl andSr are nonempty. Sub-stituting (39) and (48) into (49), after some mathematicalmanipulation, we have

W(Sh)m (v) −W

(S′h)m (v)

≤−(1−p(v,Sl))p(v, jh)ωm(v)(1−p(v,Sr))

p(v,Sh)p(v,S′h)≤ 0. (51)

Recall thatSh is the union of jb and anarbitrary setcomposed of PAOFs. Inequalities (50) and (51) imply thatif ψ has at least one hole, we can first safely fill a hole inψ without increasing the AAW ofv. Then we can safelycontinue to fill another hole in the forwarding set obtainedin the step above without increasing the AAW ofv. Theprocedure is repeated until all the holes are filled. Now, wehave a forwarding set, which is composed ofjb and all thePAOFs. Furthermore, the AAW ofv via this forwarding setis not larger than that viaψ. Thus, we obtain an FAOFS.

Lemma A.2 implies that if we want to find an AOFS,we only have to check forwarding sets< j1>, < j1, j2>, . . . .Thus the complexity of the algorithm can be reduced topolynomial time from exponential time. We call the fullAAW optimal forwarding set so constructed aminimumfull AAW optimal forwarding set(MFAOFS). Recall thatthe AAW of the lowest priority node in the MFAOFS isnot greater than that of the lower priority node in any otherAOFS. Therefore, if we check the forwarding sets in theorder < j1>, < j1, j2>, . . . , the MFAOFS would be foundearliest among all the AOFSs. If all the nodes on a shortest

AAW anypath fromv to t are using their MFAOFSs, wecall it a full shortest AAW anypath.

Lemma A.3: The MFAOFS ofv is < j1, j2, . . . , jb> withoptimal AAWsθ( j1)≤θ( j2)≤. . .≤θ( jb). We useSµ to denotethe forwarding set< j1, j2, . . . , jµ>, 1 ≤µ≤b. Then we haveW

(S1)m (v) >W(S2)

m (v) > . . . >W(Sb)m (v) = θ(v). 2

Proof. Consider an arbitrary integerµ in the range of [1, b−1]. By the definition of AAW, we have

W(Sµ)m (v) =

ωm(v) + p(v,Sµ)Wm(Sµ)

p(v,Sµ).

By (36-38), we have

W(Sµ+1)m (v) =

ωm(v)+p(v,Sµ)Wm(Sµ)+p(v, jµ+1)(1−p(v,Sµ))θ( jµ+1)

1− (1− p(v,Sµ))(1− p(v, jµ+1)).

Combining these two equalities, we have

W(Sµ+1)m (v) =

W(Sµ)m (v)p(v,Sµ)+p(v, jµ+1)(1−p(v,Sµ))θ( jµ+1)

1− (1− p(v,Sµ))(1−p(v, jµ+1)). (52)

Since the nonempty forwarding setSµ is composed ofPAOFs, by (40) we haveW(Sµ)

m (v) > θ( jb). According toθ( jb) ≥ θ( jµ+1), we haveW

(Sµ)m (v) > θ( jµ+1). In addition, we

claim p(v,Sµ) < 1. Otherwise, according to the definitionof AAW, if p(v,Sµ) = 1, jb has no chance to forwarda received packet. Thusjb can be safely removed. Thiscontradicts the fact that< j1, j2, . . . , jb> is an MFAOFS.Substitutingp(v,Sµ) < 1, p(v, jµ+1) > 0 (by the definitionof OMCAP) andW

(Sµ)m (v) > θ( jµ+1) into (52), we have

W(Sµ+1)m (v)<

p(v,Sµ)+p(v, jµ+1)(1−p(v,Sµ))

1− (1− p(v,Sµ))(1− p(v, jµ+1))W

(Sµ)m (v)

=W(Sµ)m (v). (53)

Sinceµ is an arbitrary integer in the range of [1, b−1], wehaveW(S1)

m (v) >W(S2)m (v) > · · · >W(Sb)

m (v) = θ(v).Lemma A.4: The optimal AAW θ(v) of a nodev is

always larger than the optimal AAWθ( j) of any node j(other thanv) on the full shortest AAW anypath ofv. 2

Proof. First, we consider an arbitrary nodej in v’sMFAOFS ψ. We useψ′ to denote the setψ \ { jb} andthusψ′ is composed of PAOFs. According to (40), we haveW

(ψ′)m (v) > θ( jb). By (47) andp(v, ψ′) > 0, we have

W(ψ)m (v)

=W

(ψ′)m (v)p(v, ψ′) + p(v, jb)(1− p(v, ψ′))θ( jb)

1− (1− p(v, jb))(1− p(v, ψ′))

>p(v, ψ′) + p(v, jb)(1− p(v, ψ′)1− (1− p(v, jb))(1− p(v, ψ′))

θ( jb) = θ( jb).

Since jb is the node with the largest AAW inψ, we musthaveθ(v) =W(ψ)

m (v) > θ( j) for every nodej in ψ.We can inductively apply the same proof to all the nodes

in ψ. Repeating this procedure, eventually we will have theconclusion that the optimal AAWθ(v) of a nodev is alwayslarger than the optimal AAWθ( j) of any nodej (other thanv) on the full shortest AAW anypath ofv.

Page 18: MAP: Multi-Constrained Anypath Routing in Wireless Mesh Networksinside.mines.edu/~djyang/doc/TMC2012-MAP.pdf · 2012. 11. 26. · MAP: Multi-Constrained Anypath Routing in Wireless

Supplenmentary Document: Page 4 of 4

Proof of Theorem 4.1. We show that for each nodev ∈ V, when it is inserted intoL, we haveWm(v) = θ(v).

For the purpose of contradiction, letu be the first nodeadded to L for which Wm(u) > θ(u). We claim thatthe MFAOFS of u contains at least one node, which hasnot been added into L. Otherwise if all the nodes in itsMFAOFS have been added intoL, Algorithm 1 must havefound this MFAOFS foru for the following reason. ByLemma A.2, we know that there exists an MFAOFS of theform < j1, j2, . . . , jb> for u. Moreover,u is the first nodeadded toL for which Wm(u) > θ(u). This implies thatall the nodes already in its MFAOFS were inserted intoL in the increasing order of their optimal AAWs, sincethey satisfiedWm(u) = θ(u) when they were added intoL,and Algorithm 1 always chooses the node with the smallestWm(u) and adds it intoL. Thus< j1>, < j1, j2>. . . have beenchecked by Algorithm 1. By Lemma A.3, ifj1 and j2 are inthe MFAOFS ofu, using< j1, j2> always provides a smallerAAW than just using< j1>. Thus the condition in Line 10 ofAlgorithm 1 will be true and the forwarding set is updatedto < j1, j2>. The same procedure is repeated until theMFAOFS is found. Note that by Lemma A.2 the MFAOFSwill be found earliest. This implies that whenu is addedinto L, it is using its MFAOFS. Furthermore, the AAWs ofthe nodes in the MFAOFS ofu are equal to their optimalvalues sinceu is the first one for whichWm(u) > θ(u). Wetherefore knowWm(u) = θ(u). However, this contradictsWm(u) > θ(u). Hence, the MFAOFS ofu contains at leastone node, which has not been added intoL.

We arbitrarily select one of these nodes, denoted byu1.By Lemma A.4, we haveθ(u1) < θ(u). Since we assumeWm(u) > θ(u), we must haveθ(u1) < Wm(u). Let usconsider a full shortest AAW anypathπm

u1from u1 to t.

Without loss of generality, assume that nodeu2 has thesmallest optimal AAW tot among all nodes onπm

u1which

have not been inserted intoL. Thusθ(u1) ≥ θ(u2). Claim(1): all the nodes in u2’s MFAOFS must be in L. To provethis claim, let us assume thatu3, which is inu2’s MFAOFS,is not in L. By Lemma A.4, we know that in this case wemust haveθ(u2) > θ(u3). However, since we assume thatu2

has the smallest optimal AAW (note thatu3 is also onπmu1

),then θ(u2) ≤ θ(u3), which contradictsθ(u2) > θ(u3). Thus,all the nodes inu2’s MFAOFS are inL. Sinceu is also inL, we next consider whetheru is u2’s MFAOFS.

Claim (2): u is not in u2’s MFAOFS. We also prove thisclaim by contradiction. Assume thatu is in u2’s MFAOFS.By Lemma A.4, we therefore knowθ(u2) > θ(u). On theother hand, since we have deduced thatθ(u2) ≤ θ(u1) andθ(u1) < θ(u), we know θ(u2) < θ(u), which contradictsθ(u2) > θ(u). Thusu in not in u2’s MFAOFS.

Claims (1) and (2) imply that at the time just beforeuis inserted intoL, all the nodes in the MFAOFS ofu2 havebeen inserted intoL. Recall how we proved that if all thenodes in the MFAOFS ofu have been added intoL, this setmust be found by Algorithm 1. We can use the same proofto prove that the MFAOFS ofu2 must have been found byAlgorithm 1. Thus, at that timeWm(u2) = θ(u2).

We now derive the contradiction based on our first

assumption thatu is the first node added toL for whichWm(u) > θ(u). Since we have deducedθ(u2) ≤ θ(u1)and θ(u1) < Wm(u), we haveθ(u2) < Wm(u). Addition-ally, we deducedWm(u2) = θ(u2). We therefore knowWm(u2) < Wm(u). However this is a contradiction, sincethis inequality implies thatu2, which is a node outside ofL at the timeu is inserted intoL, should be inserted intoL beforeu.

We therefore conclude that for each nodev in L, we haveWm(v) = θ(v). This implies that when a node is insertedinto L, its shortest AAW anypath has been found and willbe returned by Algorithm 1.

We now analyze the running time of Algorithm 1.Lines 1-4 takeO(K|V|) to finish initializations. If we usea Fibonacci heap [7], each of the Extract-Min operationstakesO(log |V|) in Line 6, with a total ofO(|V| log |V|). Eachof the max-operations in Line 7 takesO(K), with a total ofO(K|V|). Note that the for-loop of Lines 8-16 is executedO(|E|) times in total, since there are a total number of|E|incoming links. If we use the technique proposed by [21],Lines 9 and 13 take constant time respectively. Thus eachexecution of the for-loop of Lines 12-14 takesO(K), witha total ofO(K|E|). Evaluating the condition in Line 10 andthe operations in Line 11 takeO(|E|) in total, respectively.UpdatingQ requiresO(|E|) in total if a Fibonacci heap isused. Thus the total running time isO(|V| log |V| + K|E|).