lattice routing: a 4d routing scheme for multiradio multichannel ad hoc networks

13
Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks Sandeep Kakumanu a, * , Stephan Eidenbenz b , Raghupathy Sivakumar a a Georgia Institute of Technology, 5174 Centergy One, Atlanta, GA 30308, United States b Information Sciences (CCS-3), Los Alamos National Laboratory, Los Alamos, NM-87545, United States article info Article history: Received 23 March 2009 Received in revised form 17 March 2010 Accepted 22 June 2010 Available online 1 July 2010 Keywords: Ad hoc network Multiradio multichannel wireless network Routing protocol abstract An efficient channel assignment strategy ensures capacity maximization in a multiradio, multichannel ad hoc network. Existing mechanisms either use a static channel assignment or a centralized process intensive system that assigns channels to individual nodes. These are not effective in a dynamic environment with multiple flows that are active at different time instants. The protocol proposed in this work (Lattice routing) manages channels of the radios for the different nodes in the network using information about current channel con- ditions and adapts itself to varying traffic patterns in order to efficiently use the multiple channels. Further the protocol uses multipathing, a key mechanism that is found to allevi- ate bottlenecks present in single path routes in such an environment. Results indicate that Lattice routing consistently outperforms it closest competitor ((MCR) Kyasanur and Vaidya (2006) [1]) across a large number of experiments. Ó 2010 Elsevier B.V. All rights reserved. 1. Introduction Multichannel wireless data networks have garnered increasing attention over the last few years because of the great promise they hold in terms of the achievable spectral efficiencies. This work focuses on a sub-topic of the above general area: ad hoc networks with individual nodes equipped with multiple radios or interfaces that can switch between the available multiple orthogonal channels. In such networks a good channel assignment strategy is re- quired to utilize the capacity of all channels efficiently. The problem has been answered at various levels by related works [2–4]. However, the protocols proposed in some of these works are based on direct extensions of a single radio, single channel ad hoc network architecture [3,4] where a flow between a single source and destination node uses a single path to route all the traffic while others [2,5,6] are based on complex centralized linear programming algo- rithms that are not practical to implement. This work intro- duces a new protocol known as Lattice routing that is shown to effectively combat capacity related issues in such multiradio, multichannel environments. It is a completely distributed protocol and uses local information from neigh- boring nodes to adapt the paths. A bottleneck, identified in this work as the interface insufficiency bottleneck, arises in such networks. The bottle- neck, as the name suggests, is the result of insufficient number of interfaces at the intermediate nodes in a single path for a flow between a source and destination node. This bottleneck reduces the throughput capacity of the network. One way to alleviate this bottleneck is to use multiple paths (or routes) for each flow. Multipath routing is not new in ad hoc network literature [7–10]. However these works focus on multipath routing for reasons of reli- ability, QoS requirements, or load balancing. The current work, on the other hand, focuses on improving aggregate end-to-end throughput in multiradio multichannel net- works. We call the routing in such networks as 4D routing because multipathing is a two-dimensional problem in space, and the multiple radios and channels provide two additional dimensions for routing. 1570-8705/$ - see front matter Ó 2010 Elsevier B.V. All rights reserved. doi:10.1016/j.adhoc.2010.06.007 * Corresponding author. Tel.: +1 404 229 8294. E-mail address: [email protected] (S. Kakumanu). Ad Hoc Networks 9 (2011) 95–107 Contents lists available at ScienceDirect Ad Hoc Networks journal homepage: www.elsevier.com/locate/adhoc

Upload: sandeep-kakumanu

Post on 26-Jun-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

Ad Hoc Networks 9 (2011) 95–107

Contents lists available at ScienceDirect

Ad Hoc Networks

journal homepage: www.elsevier .com/locate /adhoc

Lattice routing: A 4D routing scheme for multiradio multichannelad hoc networks

Sandeep Kakumanu a,*, Stephan Eidenbenz b, Raghupathy Sivakumar a

a Georgia Institute of Technology, 5174 Centergy One, Atlanta, GA 30308, United Statesb Information Sciences (CCS-3), Los Alamos National Laboratory, Los Alamos, NM-87545, United States

a r t i c l e i n f o a b s t r a c t

Article history:Received 23 March 2009Received in revised form 17 March 2010Accepted 22 June 2010Available online 1 July 2010

Keywords:Ad hoc networkMultiradio multichannel wireless networkRouting protocol

1570-8705/$ - see front matter � 2010 Elsevier B.Vdoi:10.1016/j.adhoc.2010.06.007

* Corresponding author. Tel.: +1 404 229 8294.E-mail address: [email protected] (S. Kak

An efficient channel assignment strategy ensures capacity maximization in a multiradio,multichannel ad hoc network. Existing mechanisms either use a static channel assignmentor a centralized process intensive system that assigns channels to individual nodes. Theseare not effective in a dynamic environment with multiple flows that are active at differenttime instants. The protocol proposed in this work (Lattice routing) manages channels of theradios for the different nodes in the network using information about current channel con-ditions and adapts itself to varying traffic patterns in order to efficiently use the multiplechannels. Further the protocol uses multipathing, a key mechanism that is found to allevi-ate bottlenecks present in single path routes in such an environment. Results indicate thatLattice routing consistently outperforms it closest competitor ((MCR) Kyasanur and Vaidya(2006) [1]) across a large number of experiments.

� 2010 Elsevier B.V. All rights reserved.

1. Introduction

Multichannel wireless data networks have garneredincreasing attention over the last few years because of thegreat promise they hold in terms of the achievable spectralefficiencies. This work focuses on a sub-topic of the abovegeneral area: ad hoc networks with individual nodesequipped with multiple radios or interfaces that can switchbetween the available multiple orthogonal channels. Insuch networks a good channel assignment strategy is re-quired to utilize the capacity of all channels efficiently.The problem has been answered at various levels by relatedworks [2–4]. However, the protocols proposed in some ofthese works are based on direct extensions of a single radio,single channel ad hoc network architecture [3,4] where aflow between a single source and destination node uses asingle path to route all the traffic while others [2,5,6] arebased on complex centralized linear programming algo-rithms that are not practical to implement. This work intro-

. All rights reserved.

umanu).

duces a new protocol known as Lattice routing that isshown to effectively combat capacity related issues in suchmultiradio, multichannel environments. It is a completelydistributed protocol and uses local information from neigh-boring nodes to adapt the paths.

A bottleneck, identified in this work as the interfaceinsufficiency bottleneck, arises in such networks. The bottle-neck, as the name suggests, is the result of insufficientnumber of interfaces at the intermediate nodes in a singlepath for a flow between a source and destination node.This bottleneck reduces the throughput capacity of thenetwork. One way to alleviate this bottleneck is to usemultiple paths (or routes) for each flow. Multipath routingis not new in ad hoc network literature [7–10]. Howeverthese works focus on multipath routing for reasons of reli-ability, QoS requirements, or load balancing. The currentwork, on the other hand, focuses on improving aggregateend-to-end throughput in multiradio multichannel net-works. We call the routing in such networks as 4D routingbecause multipathing is a two-dimensional problem inspace, and the multiple radios and channels provide twoadditional dimensions for routing.

Page 2: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

96 S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107

In single channel environments paths are assigned atthe start of every flow and this is sufficient because theunderlying MAC layer takes care of scheduling the trans-missions belonging to the different flows in the network.Given the requirement to form multiple paths for everyflow, a fundamental question arises, ‘‘is it sufficient to assignmultiple paths at the start of the flow?” The answer to thisquestion turns out to be no. This is because routing andscheduling of packets cannot be decoupled in multiradiomultichannel environments. The formation of paths mustbe an informed decision based on existing traffic condi-tions at various stages of the flow.

Based on the above observations a new protocol calledLattice routing is proposed in this work that uses multiplepaths for every flow (when possible) and is also dynamic inadjusting the various paths based on changing traffic con-ditions. The protocol works as a cross layer solution for ratecontrol, and routing. It uses a back-pressure based algo-rithm [11] for rate control. The architecture can be realizedas a completely distributed protocol, with the individualnodes taking purely local decisions about forwarding data.Each node uses the following principle to route traffic to adestination node: ‘‘serve as much as possible”. Nodes canforward traffic through any or all of the possible paths toa destination to serve the traffic they receive from a previ-ous node.

Extensive ns-2 based simulations show the benefits ofthe proposed architecture as opposed to related work onmultiradio, multichannel ad hoc networks. Results indicatethat Lattice routing can adapt to a wide variety of networkconditions such as density of nodes and number of flows.Since Lattice routing is proposed as a cross layer solutionbetween routing and rate control, it can be used with exist-ing off-the-shelf components such as 802.11 a/b/g cardsusing pure software modifications. Further the architecturehas an added benefit of security against eavesdropping at-tacks because of its inherent multipath characteristics.

2. Motivation

In this section, the proposed Lattice routing architecturewill be motivated using three important requirements inmultiradio multichannel ad hoc networks. These require-ments are used to design the protocol that realizes the pro-posed architecture.

2.1. 4D routing

In a multihop flow from a source node to a destinationnode, the source and destination nodes have only one func-tion of either transmitting packets or receiving packets,while the forwarding nodes in between have two functionsof both transmission and reception. If the forwarding nodehas a single radio, it cannot transmit and receive data atthe same time because of the half-duplex nature of theradios.

If each node in the flow has two radios, then in a singlepath (assuming only the top path in Fig. 2) the intermedi-ate nodes can utilize one radio each for transmission andreception. But the source and destination node will have

an additional radio that cannot be utilized. Thus the inter-mediate nodes experience an ‘‘interface insufficiency bottle-neck”. If W is the capacity of a channel, then assuming eachlink on a different channel, it can be shown that such a sin-gle path can achieve a flow throughput of W. The addi-tional radios at the source and destination can be utilizedif an additional path can be formed as shown in the figure.In this case the flow using two paths can result in athroughput of 2W. Thus, for every radio that a source anda destination node provide for a path, every intermediatenode should be able to provide two radios for each pathto fully utilize the capacity. We refer to a path as a set ofnodes from source to destination, irrespective of the num-ber of radios each node provides for the path. So, if all thenodes in the network have the same number of radios (sayr), then a single path between source and destination willhave a capacity of rW. However, this will leave r/2 radiosfree at both source and destination node. A second pathwill achieve the maximum capacity of 2rW for the path.We call such a multipath routing in multiradio multichan-nel networks as 4D routing because multipathing is a two-dimensional problem in space, and the multiple radios andchannels provide two additional dimensions for routing.

The above discussion was for a single source destinationpair. An ad hoc network will likely have a number of suchsource destination pairs. From the above discussion, it isclear that every source destination needs only two pathsto achieve maximum capacity. This requires every inter-mediate node in every path to provide all its radios exclu-sively for one path between some source destination pair.However, in the presence of multiple source destinationpairs, paths can intersect each other. When paths intersecteach other, the nodes at the intersections will not be ableto provide all their radios exclusively to a single path as re-quired. In such a scenario, additional paths can be addedfor the source destination pairs to add capacity. Thus, mul-tiple paths may be required for every source destinationpair to get maximum capacity out of the network.

On similar lines, one might argue that multipathingshould benefit single radio, single channel environmentsas well. There are several related works [7–10] that dealwith multipathing in single channel ad hoc networks.However, in single channel environments, hops belongingto the flow using multiple paths that are close to the sourcenode (or the destination node) contend with each otherand only one such hop can operate at any given time. Ifthe nodes in Fig. 2 are operating on a single channel, thenhops 1, 2, 4 and 5 contend with each other and only one ofthem can operate at a time. This reduces the benefit ofmultipathing in single channel environments. In fact mult-pathing does not help in the presence of multiple flowseither. Fig. 1a shows ns-2 based results of aggregatethroughput in a single channel ad hoc network using bothsingle path and multipath routing. The results are for a net-work of size 1000 m � 1000 m with 150 nodes in the net-work and the channel datarate of 2 Mbps. The results showlittle improvement in aggregate throughput by using mul-tiple paths. All the related works focus on multipathing forreasons other than increasing aggregate throughput.

To study the impact of multiple flows, ns-2 simulationsare used. Fig. 1b and c show the performance benefits of 4D

Page 3: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

0

100

200

300

400

500

600

700

800

20105

Aggr

egat

e Th

roug

hput

Number of flows

Number of flows vs Aggregate throughput,

Single pathMultipath

(a)Single channel performance

0

1000

2000

3000

4000

5000

6000

7000

0 2 4 6 8 10 12

Thro

ughp

ut (K

bps)

Number of channels

Channels Vs Throughput 5 flows,

single pathmultipath

(b)Throughput for 5 flows

0 1000 2000 3000 4000 5000 6000 7000 8000 9000

0 2 4 6 8 10 12

Thro

ughp

ut (K

bps)

Number of channels

Channels Vs Throughput 20 flows,

single pathmultipath

(c)Throughput for 20 flows

2Mbps single channel 1000mx1000m, 2Mbps/chan 1000mx1000m, 2Mbps/chan

Fig. 1. Aggregate throughputs for single channel (a) and multiradio multichannel (b and c) networks.

Fig. 2. Illustration of 4D routing.

S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107 97

routing under different number of flows. As before the re-sults are for a network of size 1000 m � 1000 m with 150nodes in the network and a per-channel datarate of2 Mbps. Each node has four radios and the number of avail-able channels are changed. The channel assignment strat-egy is based on the proposed protocol. The 4D routingresults are for the proposed architecture. The single pathresults are for a related work known as MCR [1]. It is foundthat 4D routing gives substantial improvements (50–100%)in aggregate throughput when compared to a single pathrouting. When there a large number of flows, the defaultshortest path routing leads to a number of common nodesin the network. The common nodes have to use the sameradios for multiple links and thus become bottlenecks inthe network. 4D routing, on the other hand, distributesthe flows across the network. Thus 4D is beneficial evenwhen there are a large number of flows.

2.2. Micro-decoupling

Consider a toy topology of two flows as shown in Fig. 3aand b. In Fig. 2a, both the flows intersect at a common nodewhile in the other the flows use different intermediatenodes. In either scenario there are four different links inthe network. In a single channel environment all the fourdifferent links in either scenario contend with each otherand at any given time only one of the four links can oper-ate. The underlying MAC layer will ensure that each ofthese links get equal opportunity to operate. Thus theaggregate throughput in either scenario will be identical.

However, in a multichannel multiradio environment(assuming two radios per node), the two scenarios will re-sult in different throughput. In the first scenario, the com-mon node in the middle has to serve four different links

but it has only two radios. So even if the two radios operateon different channels only two of the links can operate atthe same time. The second scenario, on the other hand, willresult in higher throughput because each link can now use adifferent channel as every node has at most two links (andhence its two radios can be assigned to each of the links). Allthe four links can be used at the same time. Thus the rout-ing protocol should be aware of existing traffic patterns andbe able to decouple paths such that throughput is maxi-mized. We call this ability of the routing protocol to decou-ple paths as micro-decoupling. When a new flow is addedto the network, the multiple paths that will be chosen forthe new flow have to be aware of all the existing paths.

2.3. Rapid-rerouting

Fig. 4a shows two nonintersecting flows as in previouscase. Now if one of the flows finishes its transmission aftersome time, the scenario will be as in Fig. 4b. In a single chan-nel environment, the level of contention on the links belong-ing to the remaining flow reduces. This results in an increasein throughput of the remaining flow. In a multichannel envi-ronment, such a situation leads to a scope for an additionalpath to be formed between the source and destination nodesof the existing flow as in Fig. 4c using the idle node and addi-tional radios at the source and destination node. Thus capac-ity for existing flows can be increased if existing flows arerapidly rerouted when some flows cease to exist.

It can be argued that such rapid-rerouting can be help-ful in any ad hoc network. It is possible to find scenarios ina single channel environment, in which a flow that be-comes inactive can allow better new paths for existingflows. These better paths can result in higher throughputs.In a single channel environment however, nodes are theonly available resources for rapid-rerouting. In a multira-dio multichannel environment, nodes, radios and channelsare available resources. The available resources increasesto the product of the number of nodes, radios and chan-nels. These available resources present a huge opportunityfor dynamic re-allocation.

2.4. Interrelationship among the requirements

Given the above requirements of 4D routing, micro-decoupling and rapid-rerouting, the natural question that

Page 4: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

Fig. 3. Illustration of micro-decoupling.

Fig. 4. Illustration of rapid-rerouting.

98 S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107

arises, ‘‘Is it possible to use or adapt existing multipathschemes proposed for single channel ad hoc networks ?” Therelated works [7–10] do multipath routing for differentreasons like reliability, QoS requirements, or load balanc-ing. None of these meet the current requirements. Furtherall these works consider only node disjoint paths fromsource to destination node. However a node might be serv-ing multiple flows and thus may not be able to provide tworadios for each path (requirement for multipathing as de-scribed above). In such a case the node previous to this par-ticular node can initiate a multipath (as in Fig. 5). Thismeans that it is not enough to just pick complete node dis-joint paths and use them. This leads to potentially a largepool of paths to pick from and a source routing techniquewhere the source picks the necessary paths is prohibitive.Further owing to the micro-decoupling requirement, chan-nel assignment has to be done in conjunction to pickingthe multiple paths. This means that local decisions haveto be made depending on existing traffic conditions at a

Fig. 5. Illustration of lattice routing.

node. Since the radios can potentially switch across multi-ple channels, it might be possible to use the same radio tooperate on multiple channels at different time instants.However, the state-of-art radios have a finite switching de-lay [12], that makes it necessary to switch the radios as fewtimes as possible.

3. Lattice routing

Based on the above observations, a new protocol (‘Lat-tice routing’) is proposed in this work that uses 4D pathsfor every flow (when possible) and is also dynamic inadjusting the various paths based on changing traffic con-ditions. The protocol is completely distributed and has avery low complexity overhead on individual nodes. Thecore component of the protocol is the control channel. Gi-ven C channels that can be used, one channel is assigned asthe default control channel. Every node has one of its Rradios (R 6 C) always on the control channel. The controlchannel prevents the ‘‘multichannel hidden terminal prob-lem” [13]. The control channel is also used to serve datawhen it is not used for control messages. The other(R � 1) radios can switch between the remaining (C � 1)channels. The radios have a non-negligible switching delaywhen they switch from one channel to another. To preventthe impact of switching delay the protocol uses very fewswitches. There are two phases of the algorithm: (1) a mul-tipath route detection phase, which identifies possiblemultiple paths from source to destination; and (2) a data

Page 5: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107 99

transmission phase, which selects traffic aware routesdetermined in the first phase and performs rate controlto allow micro-decoupling and rapid-rerouting.

3.1. Multipath route detection

A distance vector multipath routing scheme is pro-posed, in order to provide routing tables to each node inthe path of a flow. At the end of the routing phase, thesource node of a flow and intermediate nodes in the multi-ple paths to the destination build routing tables. The rout-ing tables contain entries of possible next hop nodes toreach the destination along with the shortest hop lengthfrom that next hop. The actual hop length through a nexthop is not known as the next hop may decide to send dataalong any of its known paths. Loops are prevented fromoccurring in the paths. All the paths identified by the rout-ing phase may not be used for actually routing traffic.Rather, a subset of traffic aware routed would be used.The distance vector approach also allows intermediatenodes to change routes for allowing the dynamic rear-rangement of paths.

The pseudo code of the multipath routing is given inFig. 6. All the routing messages are sent on the controlchannel so that all nodes in the network can participatein the routing process. When the source node of a flowwants to send data to a destination node, it first broadcastsa route request message (RREQ) on the control channel.The RREQ message has a time to live field (ttl) that canbe set to find all possible paths with a hop count of lessthan or equal to ttl. Each node, upon receiving a RREQpacket, rebroadcasts the packet, with a certain probability,to its neighbors after adding its own node address on the

Fig. 6. Routing

RREQ, if the ttl counter is still valid. A RREQ message willbe dropped by a node if it finds that its address is alreadypart of the message. This prevents routing loops. A singlenode might however rebroadcast multiple RREQ messagesbelonging to the same source destination pair. This allowsmultiple possible paths to be found. However, allowingevery node to rebroadcast every RREQ will lead to broad-cast storms. Broadcast storms in ad hoc networks are awell studied in literature. Ref. [14] provides a detailedanalysis of the problem and provides several solutions forpreventing such storms. We use one such scheme knownas probabilistic forwarding. This is achieved by defining aprobability p, with which the intermediate nodes forwardRREQ packets they receive. If the nodes are uniformly dis-tributed in the network, the number of RREQs received bya node will increase as the number of hops already tra-versed by the packet (d), from the source node, increases.This is because, there will be more nodes at a larger dis-tance. Hence, we choose p / 1/d to forward the RREQmessages.

When the destination node receives the RREQ mes-sages, it sends out route replies (RREP) to each of theRREQs. The RREP is sent, using unicast on the control chan-nel, along the reverse path of the corresponding RREQ mes-sage. Routing table entries are created in the nodes as theRREP propagates back to the source node. A single routingtable entry has the following fields: src_ID, dst_ID,next_hop, hops_to_dst. The src_ID and dst_ID are the ad-dresses of the source and destination nodes respectively.The next_hop is the address of the next hop to the destina-tion node. The hops_to_dst field indicates the shortest hoplength to the destination from the next hop. This field willbe updated as more RREP messages pass through a node. A

phase.

Page 6: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

100 S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107

new routing table entry is created for every new next hopnode to the destination. Once the RREP messages reach thesource node, the source can start sending data packets. Atthe end of this routing phase the source node should ide-ally have entries corresponding to all possible next hopsto the destination that satisfy the ttl condition. Howeversince the RREQ messages are probabilistically dropped,some paths may not be found. Further the hops_to_dst fieldmay not have the shortest hop count to the destinationnode from the next hop. The memory footprint on eachnode to maintain the routing tables is not high. This is be-cause each node has to maintain routing table entries thatcontain only next hop information for a particular destina-tion. The number of entries for a single destination cannotgrow beyond the maximum node degree (number ofimmediate neighbors) of the network.

3.2. Data transmission phase

The previous phase allowed the nodes to identify thepossible multiple paths from source to the destination. Inthis phase, the exact 4D paths are found and data packetsare sent along. The pseudo code for the data transmissionphase is given in Fig. 7. Three kinds of control messagesare designed to aid the data transmission. These messagesare used to select traffic aware routes from the pool ofpaths that are identified as a result of the routing process.Further, these messages aid in dynamically re-allocatingroutes when traffic conditions change.

� HELLO message – Each node periodically broadcasts itsperceived available rates. The perceived rate on a chan-nel is a rough estimate of how much traffic the node can

Fig. 7. Data transm

sustain in the channel. This message is a one hop broad-cast on control channel. The period of transmitting theHELLO message (HELLOint) is defined empirically. Avalue of 2 s was found to be sufficient. The rationalebehind such a value of the HELLOint is that it should besmall enough to provide recent information about per-ceived rate and large enough to prevent a huge over-head on the control channel. If a node has a radio on achannel the perceived rate is estimated as the differ-ence between the maximum possible rate on the chan-nel and the amount of traffic in the previous HELLOint.The amount of traffic in the previous HELLOint can becalculated by allowing the promiscuous mode of theradio. On the other hand if the node does not have aradio on a channel the estimate for that channel is cal-culated as the average of the perceived rates of all theone hop neighbor nodes. The HELLO messages neednot be synchronized with each other, since only a roughestimate is needed.� SORRY message – This message is a unicast message

sent by a node to its previous node along a path of a flow.This message requests the previous node to reduce itsrate of transmission of packets. This message is used tocreate a back-pressure. The use of the SORRY messagewill become evident in the following paragraphs.� Channel-change message – This message is used by a

node to request a neighbor node to change its channelfor a particular radio. This message results in the othernode sending an acknowledgement message back. Thisacknowledgement prevents channel conflicts when twocompeting channel-change messages are received forthe same radio and only one channel-change messagewill be honored.

ission phase.

Page 7: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107 101

There are two parts in the data transmission phase andthey are explained below:

3.2.1. 4D route selection and micro-decouplingEvery node knows the current traffic conditions at its

neighbors on each channel as a result of the HELLO mes-sage. The 4D route selection algorithm, shown in Fig. 7, isperformed by every node once every ALGOint. The algo-rithm states that every node should follow the principle‘‘serve as much as possible”. The algorithm allocates thenumber of packets to be sent to every neighbor in the nextALGOint and also the channel and radio to be used. The AL-GOint should be small enough to adapt to the received HEL-LO messages and large enough to prevent the intermediatenodes from spending too many computation cycles tocompute the routes. There are several aspects of thealgorithm.

� Randomized next-hop selection: The source node tries toaccommodate the maximum possible datarate throughthe possible next hops determined by the routingphase. Every intermediate node tries to accommodatethe data it received in the previous ALGOint for the nextALGOint. Thus the nodes have to select next hop node(s)to forward the packets. The next hops are selected in arandomized fashion. The rationale behind the random-ized selection of the next hop nodes is that it resultsin load balancing among the different flows in the net-work. Similar randomized routing solutions have beenproposed in the context of sensor networks [15]. Nor-malized probabilities are given to each of the possiblenext hops (i) based their number of hops to the destina-tion (hops_to_dst). Each of the next hop node is given avalue vi given by the following equation:

v i ¼ 1=hops to dst

If we define V as

V ¼X

8nexthops

pi

Then the normalized probability for each next hop canbe given by

pi ¼ v i=V

Thus a probability value that is inversely proportionalto the distance to the destination node is given to eachof the next hop nodes. These probabilities are used topick the next hop(s) which will be used to forwardthe packets. The probabilities result in favoring nodeswith shorter hop lengths.� Channel and radio selection: Once a node picks a next

hop node to forward packets, it has to chose the channelto be used and the radios that will be used at the cur-rent node and the next hop node. To prevent the impactof switching delay radios will not be allowed to switchduring an ALGOint. If there is free radio available at boththe current node and the next hop node then the freeradios will be selected for allocating the packets. Oncethe radio for each node is selected, the next task is tofind the channel, the radios will operate on. To do this,

the perceived rates of all possible channels for eachnode are compared with each other. For any channel,the achievable rate would be the minimum of the per-ceived rates for the two nodes. The channel with themaximum achievable rate is chosen for selected radios.Once a channel is selected the current node sends achannel-change message to the next hop node on thecontrol channel. Both the nodes will then switch theselected radios on the selected channel. If one of thenodes does not have a free radio, then the least usedradio for that node is selected and its current channelis selected. The other node will switch its free radio tothe channel. If both nodes do not have a free radio, acommon channel where both the nodes have a radiois selected. If such a channel cannot be selected thenanother next hop is picked and the process is repeated.After the radios and channel are picked, the number ofpackets that can be allocated in the next ALGOint isdecided using the perceived rates of both the nodeson the channel. If there are more packets that have tobe allocated another next hop is picked and the processis repeated. The next hop node, the radios used and thechannel are preserved for future slots. Only excess rateswill be accommodated in future slots (excess rate isnew extra rate received by a node that was not alreadyallocated in a previous slot). This process of channelselection should not result in a deadlock where no radioor channel is found. This is guaranteed because of tworeasons: (1) every node has a radio always on the con-trol channel. Thus a common channel can always befound between two nodes and, (2) even if the controlchannel cannot accommodate any traffic, then a SORRYmessage will be generated and hence the onus ofaccommodating traffic is transferred to the previousnode. A radio on a node becomes free if it does not serveany packet for a few consecutive slots (the simulationresults in this paper use a value of 10 slots to determinethat a radio is free). Thus, the 4D routes are selected as aresult.� Back-pressure: It may not always be possible to accom-

modate all the datarate that a node receives. In such ascenario the node will send a SORRY message back tothe previous node, asking it to reduce the rate it sends.The previous node on the other hand will try to accom-modate this excess rate through another node using thesame process. If this node is also not able to accommo-date the excess rate, it will in turn send a SORRY mes-sage to its own previous node. The process cancontinue till the source node receives a SORRY messagewhen it will decide to reduce its outgoing rate. Thus asimple back-pressure is created to control the maxi-mum rate that can be served along any path. The reasonfor using the back-pressure algorithm is its simplicity.The routing protocol has to be run on each individualnode that forwards packets belonging to various flowsin the network. The use of back-pressure algorithmsfor rate control is not new. The seminal work of Tassiu-las et al. [11] introduced the concept of back-pressureunder a control theoretic framework. Also, in Ref. [16],the authors describe a multicast bandwidth schedulingscheme using back-pressure. As a result of this back-

Page 8: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

102 S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107

pressure, micro-decoupling of routes is performed andsuitable routes are used for forwarding traffic at everyintermediate node.

3.2.2. Rapid-rerouting using forward pressureIt was motivated in Section 2 that rapid-rerouting of

traffic can make use of new paths as and when they arepossible. This will result in better incremental throughputwhen possible. The back-pressure results in the source set-tling for a maximum possible datarate. Periodically, thesource node tries to push more data than in previous slotsto see if new accommodation is possible. If new paths be-come available, they can be now utilized.

As a result of performing the above algorithm everynode comes up with a packet allocation strategy for thenext ALGOint, during which the node tries to send all theallocated packets. If all the packets are not sent in the slotthey will be carried over for accommodation during thenext pass of the algorithm. This ends the discussion ofthe Lattice routing algorithm. The next section discussesthe performance results of the algorithm.

3.3. Illustration of Lattice routing

We now present an illustration of the entire algorithmof Lattice routing, using a simple toy topology (Fig. 8).The figure shows a source node S wanting to transmit datato a destination node D. Nodes A, B, C, E and F are interme-diate nodes. The network itself might have other nodes inthe vicinity of these nodes. We assume that the multipathroute detection has already taken place and that there arethree possible paths from S to D namely S–A–B–D, S–A–C–D, and S–E–F–D. Further, we assume that each node isequipped with two radios and that there are four channelsavailable. Let the bandwidth of each channel be bw. Duringthe data transmission phase, each node determines theperceived datarate on each channel available and periodi-cally broadcasts these rates through a HELLO message. Ini-tially, all nodes are free and there is no other datatransmission across other background nodes also. Node Shas two free radios and there are two possible next hopsnamely A and E. So, S will try to accommodate bw worthof data to both A and E for every ALGOint. To accommodatethis data, S will choose different channels for each of thesetwo links (S–A and S–E). Now each of A and E have one freeradio and they need accommodate only bw data that theyreceive from S. Node A can choose one of the two possibil-ities B or C as its next hop to accommodate bw worth of

Fig. 8. Illustration of complete algorithm.

data. Let us assume that A chooses B as the next hop (ran-domized next-hop selection). E can choose only F for itsnext hop. Each of B and F can then forward bw worth dataeach to the final destination. Note that of the links consid-ered above will use different channels so that maximumthroughput can be achieved. Now let us assume that nodeB cannot accommodate bw worth data to D because ofsome other background transmission on one of itschannels. Now, B will send a SORRY message back to Aindicating the amount of data it can actually serve(back-pressure). Node A has an alternative path to the des-tination through C. So it will try to accommodate theremaining rate (bw less the amount that B is able to accom-modate) through C. If node C can accommodate this datathe flow it does. If C is not able to accommodate this newrate, it will also send a SORRY message to node A. In thisscenario, A will not have any other forward path to reachthe destination. Hence, A will send another SORRY messageto the source node S. If S can accommodate the remainingrate through some other path, it will. Else, S will simply re-duce its rate. Fig. 8 shows the different channels that eachof the links can potentially use. In this fashion, S performs4D routing, to transmit data to D.

4. Performance evaluation

This section provides the performance evaluation of theproposed Lattice routing multipathing architecture. First,comparisons with Lattice routing architecture are providedfor the Multi Channel Routing Protocol (MCR) [1], a relatedwork on multiradio, multichannel ad hoc networks. MCR isa fully distributed protocol that uses hybrid channel alloca-tion. Given a set of radios at each node, MCR allocates a fewradios as receiving radios that constantly listen on prede-termined channels and are used only to receive data. Theother radios are used for transmitting data. When a nodewants to send data to a neighboring node, it changes thechannel of a transmitting radio to one of the channels ofthe neighboring radio. The protocol uses a single path forevery flow. Results are also provided for specific propertiesof Lattice routing architecture like time taken for dynamicrearrangement and effect of number of nodes.

The simulations were performed using ns-2 simulator.In all simulations the size of the network is kept at1000 m � 1000 m. The nodes have an omni-directionalrange of 250 m. Unless otherwise specified the number ofnodes in the network is set to 150. 802.11 DCF is used asthe MAC layer. RTS/CTS are disabled. By default, a 2Mbpsper-channel datarate is used. But other datarates of 5.5and 11 Mbps are also studied. Unless otherwise specifiedthe number of radios is set to be 4. All traffic is constantbit rate traffic over UDP. The traffic rates of the flows inthe network are kept sufficiently high to saturate the net-work, i.e., no more increase in aggregate throughput can beachieved by further increasing the flow rates. The perfor-mance metrics used to evaluate the protocols are aggregateend-to-end throughput, average end-to-end delay, and de-lay jitter. Each simulation scenario is repeated for 10 ran-dom seeds and results are averaged. The simulations areeach performed for 200 s. Source destination pairs are ran-

Page 9: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107 103

domly selected. The average shortest path hop length isaround 4–5. The parameters used for Lattice routing areas follows: HELLOint, the refresh interval between two suc-cessive HELLO packets is set to be 2 s. ALGOint, the refreshinterval between two successive instances of performingthe Lattice routing algorithm is set to be 250 ms. The dif-ferent nodes in the network are not synchronized witheach other.

4.1. Effect of number of flows

Fig. 9a–c show the aggregate throughput comparisonsof Lattice routing and MCR for varying number of flows.It can be observed that the relative performance improve-ment of Lattice routing is significantly better than MCR.There are two primary reasons for the better performanceof Lattice routing. The first reason is the increase in capac-ity because of multipathing. The second reason is that un-der heavy load, i.e., large number of flows, MCR, which usessingle path routing results in nodes that are common tomultiple flows. These common nodes result in a capacitybottleneck. Lattice routing, on the other hand, tries to bal-ance the traffic across nodes. Hence common nodes do notform a significant capacity bottleneck.

4.2. Effect of channel rates

Fig. 10a and b show the aggregate throughput for vary-ing channel rates. The channel rates analyzed are 2 Mbps,5.5 Mbps and 11 Mbps reflecting realistic 802.11 datarates.It is observed that the absolute improvement of both theschemes reduces with increasing datarates. In particularLattice routing gives a maximum improvement of almost15 times single channel throughput for 2 Mbps channels,while it gives only about 9.5 improvement for 11 Mbpschannels. This is because of the sifs and difs intervals usedby the 802.11 standard. These values are constant and theirimpact on throughput is higher at higher datarates becauseof low transmission times. In all cases however, Latticerouting gives better results when compared to MCR.

4.3. Effect of number of radios

Fig. 10c shows the effect of number of radios on thethroughput capacity. We keep the number of flows to a

0

1000

2000

3000

4000

5000

6000

7000

0 2 4 6 8 10 12Number of channels

Channels Vs Throughput 5 flows,

Lattice routingMCR

(a) Throughput for 5 flows

0

1000

2000

3000

4000

5000

6000

0 2 4

Thro

ughp

ut (K

bps)

Number

Channels Vs Throu

(b) Through

Thro

ughp

ut (K

bps)

1000mx1000m, 2Mbps/chan 1000mx1000m,

Fig. 9. Average throughput (Kbps) vs. No. of channels for varyin

constant 10 and the number of channels used is 12. We ob-serve that Lattice routing scales well with increasing num-ber of radios. However, MCR works only for even numberof radios (this is because MCR gives equal number of radiosfor transmission and reception). Lattice routing alwaysperforms better than MCR.

4.4. Effect of number of nodes

Fig. 11a shows the throughput of Lattice routing forvarying number of nodes in the network. The number offlows in the network is fixed at 20. It can be observed thatthe absolute improvement of Lattice routing is higher forlarger number of nodes in the network for the same totalnumber of flows. This is because with larger number ofnodes more paths become available for use for the differ-ent flows, thus increasing the absolute improvement.

4.5. Fairness of flows

Fig. 11b and c show the per flow throughput for a singlecase of 12 channels and 10 flows in the network. It is ob-served that Lattice routing shows a balanced throughputacross flows. On the other hand MCR shows uneventhroughput across flows. Lattice routing balances the loadbecause of the inherent multipath nature. Multiple pathsin single channel networks are used to load balance thetraffic. It is observed that this load balancing effect of mul-tipath routing carries over to multiple channels as well.

4.6. End-to-end delay

Fig. 12a shows the average end-to-end delay per packetfor Lattice routing and MCR for 10 flows, and 2 Mbps chan-nels. Delay is calculated only for those packets that reachthe destination nodes. The results indicate that MCR showsa lower end-to-end delay when compared to Lattice rout-ing. Packets experience an initial delay in Lattice routingscheme because rates are allocated in slots of ALGOint. Con-sidering one 5 hop path from a source node to destinationnode, the source node allocates the data in the first slot, thenext node allocates the data in second slot and so on. Thisleads to an initial delay that carries on to other packets ofthe flow. Hence Lattice routing experiences a higher end-

6 8 10 12 of channels

ghput 10 flows,

Lattice routingMCR

put for 10 flows

0

2000

4000

6000

8000

10000

0 2 4 6 8 10 12Number of channels

Channels Vs Throughput 20 flows,

Lattice routingMCR

(c) Throughput for 20 flows

Thro

ughp

ut (K

bps)

2Mbps/chan 1000mx1000m, 2Mbps/chan

g number of flows for single-path and multipath routing.

Page 10: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

0

2000

4000

6000

8000

10000

12000

14000

16000

0 2 4 6 8 10 12Number of channels

Channels Vs Throughput 20 flows,

Lattice routingMCR

(a) 5.5Mbps/channel

0

5000

10000

15000

20000

25000

30000

35000

0 2 4 6 8 10 12

Thro

ughp

ut (K

bps)

Number of channels

Channels Vs Throughput 20 flows,

Lattice routingMCR

(b) 11Mbps/channel

0

1000

2000

3000

4000

5000

6000

7000

4 3 2 1 0Number of radios

Radios vs Throughput 12 channels,

OTFMCR

(c) Effect of radios

Thro

ughp

ut (K

bps)

Thro

ughp

ut (K

bps)

1000mx1000m, 5.5Mbps/chan 1000mx1000m, 11 Mbps/chan 1000mx1000m, 2Mbps/chan

Fig. 10. Effect of datarate and number of radios.

0

2000

4000

6000

8000

10000

12000

0 2 4 6 8 10 12Number of channels

Channels Vs Throughput 20 flows,

150 nodes200 nodes

(a) Effect of nodes

0

100

200

300

400

500

600

700

800

900

0 2 4 6 8 10

Thro

ughp

ut (K

bps)

Thro

ughp

ut (K

bps)

Thro

ughp

ut (K

bps)

Flow number

Flow number Vs Throughput 10 flows,

Lattice routing

(b) Per flow throughput for

0

200

400

600

800

1000

1200

1400

1600

0 2 4 6 8 10Flow number

Flow number Vs Throughput 10 flows,

MCR

(c) Per flow throughput for MCR

1000mx1000m, 2Mbps/chan 1000mx1000m, 2Mbps/chan 1000mx1000m, 2Mbps/chan

Lattice routing

Fig. 11. Effect of number of nodes and fairness results.

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

0 2 4 6 8 10 12

Aver

age

Del

ay (s

)

Number of channels

Lattice routingMCR

(a) Average end-to-end delay

0 0.2 0.4 0.6 0.8

1 1.2 1.4 1.6 1.8

0 2 4 6 8 10 12

Aver

age

Del

ay (s

)

Number of channels

Lattice routingMCR

(b) Delay jitter

0

5

10

15

20

25

0 200 400 600 800 1000 1200

Con

verg

ence

tim

e (s

econ

ds)

ALGO_int (milliseconds)

ALGO_int vs Convergence time

5 flows20 flows

(c) Convergence time

Channels Vs delay 10 flows, Channels Vs delay jitter 10 flows, 1000mx1000m, 2Mbps/chan 1000mx1000m, 2Mbps/chan

Fig. 12. Time results.

104 S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107

to-end delay, although this delay is significantly less thanthat of single channel networks.

4.7. Delay jitter

Fig. 12b shows the end-to-end of the packets for Latticerouting and MCR. Delay jitter is defined as the standarddeviation of end-to-end delay. As in the previous case de-lay jitter is calculated only for those packets that reachthe destination nodes. The results show that delay jitterperformance, like the average end-to-end delay, of MCRis lower than that of Lattice routing. In MCR all flows usea single path from source to destination. However in Lat-

tice routing several multiple paths are used for each sourcedestination pair. The multiple paths could potentially be ofvarying lengths. This leads to varying characteristics ofeach paths. This results in a higher delay jitter. However,as in the case of end-to-end delay results, the delay jitterof Lattice routing is still significantly lower than that of sin-gle channel case.

4.8. Convergence time

Fig. 12c shows the convergence times for varying AL-GOint for different number of flows. Convergence time isdefined as the time taken to converge on a channel assign-

Page 11: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107 105

ment over all the nodes in the network when a new flow isadded. As described in Section ALGOint is the refresh inter-val after which the Lattice routing algorithm is performedat each node. A lower convergence time is beneficial as itreduces the switching time and also to maintain consistentthroughput for the flows. The results indicate that lowerthe ALGOint, lower is the convergence time. Further thepresence of a large number of flows leads to higher conver-gence time. This is because when there are a large numberof flows, many nodes participate in forwarding the trafficand hence they take more time to converge to a fixed chan-nel assignment. However traffic is not disrupted during theconvergence process.

4.9. Discussion of results

From the above results, we conclude that Lattice routinggives much better throughput performance when com-pared with single path solutions such as MCR. Further, Lat-tice routing provides flow level fairness and hence all flowsin the network will try to share the available spectrum.Lattice routing is suitable for any application that needslarge bandwidth. However, Lattice routing may be resultin slightly larger delay when compared to MCR. So for de-lay sensitive applications on multichannel multiradio net-works, lattice routing may not be the most best candidate,although the delay in a multichannel network is still lesserthan a single channel scenario. Lattice routing uses a sim-ple first-in-first out packet scheduling. However, since lat-tice routing uses multiple paths, different packets mightexperience different path characteristics and hence differ-ent delays. This might result in packets being receivedout-of-order. A separate mechanism may be required forapplications or higher layer protocols requiring in orderdelivery of packets. This out-of-order delivery might affecttransport protocols such as TCP. As part of our future work,we propose to understand the effects of Lattice routing onhigher layer protocols.

0

100

200

300

400

500

600

700

800

5 10 20

Aggr

egat

e Th

roug

hput

Number of flows

Number of flows vs Aggregate throughput,

Single pathLattice

SMR

2Mbps single channel

Fig. 13. Comparison with SMR.

5. Related work

There has been significant amount of related work deal-ing with channel assignment in multiradio networks. In[2], the authors propose a linear programming model forassigning channels to the multiple radios in an ad hoc net-work. In this work, the authors are interested in finding thecapacity of such networks rather than a feasible practicalsolution for the problem and hence this scheme is very dif-ficult to realize in practical environments. In [6], theauthors describe a joint channel allocation, interfaceassignment and MAC design for multiradio mesh networks,where they formulate a non-linear mixed integer program.As in the previous work, realizing this scheme also requiresa complex central processing unit and hence it is not prac-tical for a realistic network. Similarly works such as[5,17,18] also involve complex scheduling strategies thatare difficult to realize. However, the scheme proposed inthe current work relies purely on local information and iseasily realizable as a practical protocol.

A number of multipath routing protocols for ad hoc net-works have been proposed [7–10,19]. AOMDV [10] is anextension of AODV that computes multiple loop free andlink disjoint paths for every source destination pair. Tamet al propose a multipath scheme for multichannel singleradio Mesh networks [19]. This work uses two node dis-joint paths for every source destination pair and does notconsider traffic conditions at a node location. Further sincethe protocol is only for single radio networks maximumimprovement was shown to be only about two times singlechannel performance. Split multipath routing [7] findsmultiple routes using the flooding behavior of RREQ pack-ets. This is the work that is closest to the routing phase ofLattice routing. However, SMR is valid only for single chan-nel networks and provides only two paths for every flow.SMR does not deal with channel and radio allocation formultiradio networks and hence extending SMR to supportmultichannel networks is nontrivial. On the other handLattice routing is the first protocol that allows for multipa-thing in multichannel, multiradio networks. As discussedin Section 2.1, lattice routing can also help in increasingthe aggregate throughput, even in single channel net-works. In order to compare Lattice routing with other mul-tipath protocols, we provide results for SMR for a singlechannel network. Fig. 13 shows the throughput for differ-ent number of flows in a 1000 m � 1000 m grid. We ob-serve that SMR and lattice routing provide almost similaraggregate throughput for a single channel network. Thisshows that the multipathing provided by Lattice routingis at least as good as SMR in a single channel environment.The reason SMR, with only two paths, and Lattice routingwith potentially more than two paths show similarthroughput is because, in a single channel network, thespectrum is more or less fully used with very limited scopefor spatial reuse. Both SMR and lattice routing showslightly better performance than single path routing. Thehigher throughput is a result of better load balancing onthe multiple paths.

In [3], the authors propose a multiradio routing protocolthat routes traffic based on existing traffic conditions.However, this scheme requires as many radios as thereare channels. Raniwala et al. [4] propose a load aware algo-rithm to dynamically assign channels in a multiradio meshnetwork. This scheme requires that anticipated traffic

Page 12: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

106 S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107

loads and paths traversed by flows are know before chan-nel assignment takes place. Kyasanur et al. [20] propose ahybrid channel assignment solution for multiradio wire-less ad hoc networks, where a subset of radios on a routerare statically assigned channels purely for receiving data.This results in some of the capacity being wasted becausethe receiving radios cannot transmit data. In [21], theauthors propose an interference aware channel assignmentstrategy for multiradio mesh networks. This scheme canresult in dynamic re-allocation of channels depending ontraffic conditions. However this dynamic re-allocationcan occur only at a granularity of 10 min. Further this workuses only one default path from source to the destination.

6. Conclusion

This work introduces a new routing protocol for multi-radio, multichannel ad hoc networks known as ‘Latticerouting’ that uses 4D routes for the flows and that alsodynamically adjusts paths as a result of changing trafficconditions. Extensive ns-2 based simulations show thebenefits of the proposed protocol in terms of applicabilityto various network conditions. Since the protocol is pro-posed as a solution between the rate control and routinglayers it can be implemented as a software only solutionusing off-the-shelf hardware.

References

[1] P. Kyasanur, N. Vaidya, Routing and link-layer protocols for multi-channel multi-interface ad hoc wireless networks, MobileComputing and Communications Review 10 (1) (2006) 31–43.

[2] Mansoor Alicherry, Randeep Bhatia, Li (Erran) Li, Joint channelassignment and routing for throughput optimization in multi-radiowireless mesh networks, in: ACM International Conference onMobile Computing and Networking (MOBICOM), September 2005,pp. 58–72.

[3] Richard Draves, Jitendra Padhye, Brian Zill, Routing in multi-radio,multi-hop wireless mesh networks, in: ACM InternationalConference on Mobile Computing and Networking (MOBICOM),September 2004.

[4] A. Raniwala, T. Chiueh, Architecture and algorithms for an IEEE802.11-based multi-channel wireless mesh network, in: IEEEInternational Conference on Computer Communications(INFOCOM), vol. 3, March 2005, pp. 2223–2234.

[5] Jihui Zhang, Haitao Wu, Qian Zhang, Bo Li, Joint routing andscheduling in multiradio multi-channel multi-hop wirelessnetworks, in: IEEE Broadnets, October 2005.

[6] Amir Hamed Mohsenian Rad, Vincent Wong, Joint channelallocation, interface assignment and mac design for multi-channelwireless mesh networks, in: IEEE International Conference onComputer Communications (INFOCOM), May 2007.

[7] Sung-Ju Lee, Mario Gerla, SMR: split multipath routing andmaximally disjoint paths in ad hoc networks, in: IEEE ICC, June 2001.

[8] A. Nsipuri, S.R. Das, On-demand multipath routing for mobile ad hocnetworks, in: IEEE ICCCN’99, October 1999.

[9] Z. Ye, S.V. Krishnamurthy, S.K. Tripathy, A framework for reliablerouting in mobile ad hoc networks, in: IEEE International Conferenceon Computer Communications (INFOCOM), June 2001.

[10] M.K. Marina, S.R. Das, On-demand multipath distance vector routingfor ad hoc networks, in: IEEE ICNP, November 2001.

[11] Leandros Tassiulas, Anthony Ephremides, Stability properties ofconstrained queueing systems and scheduling for maximumthroughput in multihop radio networks, in: IEEE Transactions onAutomatic Control, December 1992.

[12] Ramanuja Vedantham, Sandeep Kakumanu, Sriram Lakshmanan,Raghupathy Sivakumar, Component based channel assignment insingle radio, multi-channel ad hoc networks, in: ACM InternationalConference on Mobile Computing and Networking (MOBICOM),September 2006.

[13] Jungmin So, Nitin H. Vaidya, Multi-channel MAC for ad hocnetworks: handling multi-channel hidden terminals using a singletransceiver, in: ACM International Symposium on Mobile Ad HocNetworking and Computing (MOBIHOC), May 2004.

[14] Sze-Yao Ni, Yu-Chee Tseng, Yuh-Shyan Chen, Jang-Ping Sheu, Thebroadcast storm problem in a mobile ad hoc network, in: MobiCom’99: Proceedings of the 5th Annual ACM/IEEE InternationalConference on Mobile Computing and Networking, 1999.

[15] Matt Nassr, Jangeun Jun, Stephan Eidenbenz, Anders Hansson,Angela Mielke, Scalable and reliable sensor network routing:performance study from field deployment, in: IEEE InternationalConference on Computer Communications (INFOCOM), May 2007.

[16] Saswati Sarkar, Leandros Tassiulas, Back pressure based multicastscheduling for fair bandwidth allocationu, in: IEEE InternationalConference on Computer Communications (INFOCOM), April 2001.

[17] Koushik Kar, Xiang Luo, Saswati Sarkar, Throughput-optimalscheduling in multichannel access point networks underinfrequent channel measurements, in: IEEE InternationalConference on Computer Communications (INFOCOM), May 2007.

[18] Xiaojun Lin, Shahzada Rasool, Distributed joint channel-assignment,scheduling and routing algorithm for multi-channel ad hoc wirelessnetworks, in: IEEE International Conference on ComputerCommunications (INFOCOM), May 2007.

[19] Wai-Hong Tam, Yu-Chee Tseng, Joint multi-channel link layer andmulti-path routing design for wireless mesh networks, in: IEEEInternational Conference on Computer Communications (INFOCOM),May 2007.

[20] P. Kyasanur, N. Vaidya, Routing and interface assignment in multi-channel multi-interface wireless networks, in: IEEE WCNC, vol., 4,2005, pp. 2051–2056.

[21] Krishna N. Ramachandran, Elizabeth M. Belding, Kevin C. Almeroth,Milind M. Buddhikot, Interference-aware channel assignment inmulti-radio wireless mesh networks, in: IEEE InternationalConference on Computer Communications (INFOCOM), April 2006.

Sandeep Kakumanu is a Ph.D. student in theSchool of Electrical and Computer Engineeringat Georgia Institute of Technology. Hisresearch interests are in the areas of wirelessnetworks, broadband networks, and inter-networking. He received his M.S. degree fromthe School of Electrical and Computer Engi-neering at Georgia Institute of Technology in2007 and B.Tech. degree from the Departmentof Electrical Engineering at Indian Institute ofTechnology, Madras in 2004. His emailaddress is [email protected]

Stephan Eidenbenz received the Ph.D. degreein computer science from the Swiss FederalInstitute of Technology (ETH), Zurich, in 2000.He is currently a team leader in the Informa-tion Sciences Group (CCS-3), Los AlamosNational Laboratory, where he leads theMulti-scale Integrated Information and Tele-communications System (MIITS) project thatmodels and simulates large-scale communi-cation networks. His research interests are inwireline and wireless networking, sensornetworks, selfish networking, infrastructure

modeling, discrete event simulation, computational geometry, and algo-rithms. His email address is [email protected]

Page 13: Lattice routing: A 4D routing scheme for multiradio multichannel ad hoc networks

S. Kakumanu et al. / Ad Hoc Networks 9 (2011) 95–107 107

Raghupathy Sivakumar is an Associate Pro-fessor in the School of Electrical and Com-puter Engineering at Georgia Tech. He leadsthe Georgia Tech Networking and MobileComputing (GNAN) Research Group, where heand his students do research in the areas ofwireless networking, mobile computing, andcomputer networks. He is the founder andCTO of Asankya Networks, Inc., and served asa senior technologist for EG Technology, Inc.,between 2001 and 2004. Professor Sivakumarreceived his M.S. and Ph.D. degrees in 1998

and 2000 from University of Illinois at Urbana-Champaign. His emailaddress is [email protected]