10
IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 1, FEBRUARY 2012 153 Independent Directed Acyclic Graphs for Resilient Multipath Routing Sangman Cho, Theodore Elhourani, and Srinivasan Ramasubramanian, Senior Member, IEEE Abstract—In order to achieve resilient multipath routing, we in- troduce the concept of independent directed acyclic graphs (IDAGs) in this paper. Link-independent (node-independent) DAGs satisfy the property that any path from a source to the root on one DAG is link-disjoint (node-disjoint) with any path from the source to the root on the other DAG. Given a network, we develop polyno- mial-time algorithms to compute link-independent and node-inde- pendent DAGs. The algorithm developed in this paper: 1) provides multipath routing; 2) utilizes all possible edges; 3) guarantees re- covery from single link failure; and 4) achieves all these with at most one bit per packet as overhead when routing is based on des- tination address and incoming edge. We show the effectiveness of the proposed IDAGs approach by comparing key performance in- dices to that of the independent trees and multiple pairs of inde- pendent trees techniques through extensive simulations. Index Terms—Directed acyclic graphs (DAGs), failure recovery, independent trees, IP fast rerouting, multipath routing, network protection. I. INTRODUCTION T HE INCREASING use of streaming multimedia and voice-over-IP, precipitated by decreasing cost of hand- held multimedia devices and netbooks, necessitates increased bandwidth provisioning and fast recovery from network fail- ures. Thus, present-day IP networks employ several different strategies for improved end-to-end bandwidth and load bal- ancing (using multipath routing) and fast recovery from link and node failures (using fast rerouting strategies). Multipath routing is a promising routing scheme to accom- modate these requirements by using multiple pairs of routes between a source and a destination. With the scheme, we can achieve robustness [2], load balancing [3], bandwidth aggrega- tion [4], congestion reduction [5], and security [6] compared to the single shortest-path routing that is usually used in most net- works. Multipath routing in today’s IP networks is merely lim- ited to equal-cost multipaths [24], [25]. Techniques developed for multipath routing are often based on employing multiple spanning trees or directed acyclic graphs (DAGs) [7]. When multiple routing tables are employed, a packet has to carry in Manuscript received July 16, 2010; revised January 25, 2011; accepted May 10, 2011; approved by IEEE/ACM TRANSACTIONS ON NETWORKING Editor P. Van Mieghem. Date of publication August 30, 2011; date of current version February 15, 2012. This work was supported by the National Science Founda- tion under Grant CNS-0325979 and the Cisco Collaborative Research Initiative. Parts of this paper appeared in the IEEE International Conference on Commu- nications (ICC), Cape Town, South Africa, May 23–27, 2010. The authors are with the Department of Electrical and Computer Engineering at the University of Arizona, Tucson, AZ 85721 USA (e-mail: csmcho@ece. arizona.edu; [email protected]; [email protected]). Color versions of one or more of the gures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identier 10.1109/TNET.2011.2161329 its header the routing table to be used for forwarding. When the corresponding forwarding edge is not available, the packet needs to be dropped. This dropping is forced due to the potential looping of packets when transferred from one routing table to another. In the case of DAGs, computed by adding edges to the shortest-path tree, one cannot guarantee that a single-link failure will not disconnect one or more nodes from the destination. Techniques developed for fast recovery from single-link fail- ures provide more than one forwarding edge to route a packet to a destination. The techniques may be classied depending on the nature in which the backup edges are employed. In [8], the authors develop a method to augment any given tree rooted at a destination with “backup forwarding ports.” Whenever the default forwarding edge fails or a packet is received from the node attached to the default forwarding edge for the destination, the packets are rerouted on the backup ports. In [9], the authors present a framework for IP fast reroute detailing three candidate solutions for IP fast reroute that have all gained considerable at- tention. These are multiple routing congurations (MRCs) [10], failure insensitive routing (FIR) [11], [12], and tunneling using Not-via addresses (Not-via) [13]. The common feature of all these approaches is that they employ multiple routing tables. However, they differ in the mechanisms employed to identify which routing table to use for an incoming packet. The readers are referred to [14] for a detailed description of the above tech- niques. It is certainly possible to use fast recovery techniques (irrespective of whether they guarantee recovery from single link failure or not) for multipath routing. However, all the above techniques require a signicantly large number of routing tables, hence a large number of additional bits in the packet header. One approach that offers resiliency to single-link failure and provides multipath routing to some degree is “colored trees” [15], [16]. In this approach, two trees are constructed per destination node such that the paths from any node to the root on the two trees are disjoint. The trees may be constructed to obtain link-disjoint or node-disjoint paths if the network is two-edge or two-vertex connected, respectively. This approach is similar to those employing multiple routing tables, except that only two tables are required. Every packet may carry an extra bit in its header to indicate the tree to be used for routing. This overhead bit may be avoided by employing a routing based on the destination address and the incoming edge over which the packet was received, as every incoming edge will be present on exactly one of the trees. The colored tree approach allows every node to split its trafc between the two trees, thus offering disjoint multipath routing. In addition, when a forwarding link on a tree fails, the packet may be switched to the other tree. A packet may be transferred from one tree to another at most once as the colored tree approach is guaranteed to recover from only a single-link failure. The colored trees are 1063-6692/$26.00 © 2011 IEEE http://ieeexploreprojects.blogspot.com

Independent directed acyclic graphs for resilient multipath routing.bak

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Independent directed acyclic graphs for resilient multipath routing.bak

IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 1, FEBRUARY 2012 153

Independent Directed Acyclic Graphs for ResilientMultipath Routing

Sangman Cho, Theodore Elhourani, and Srinivasan Ramasubramanian, Senior Member, IEEE

Abstract—In order to achieve resilient multipath routing, we in-troduce the concept of independent directed acyclic graphs (IDAGs)in this paper. Link-independent (node-independent) DAGs satisfythe property that any path from a source to the root on one DAGis link-disjoint (node-disjoint) with any path from the source tothe root on the other DAG. Given a network, we develop polyno-mial-time algorithms to compute link-independent and node-inde-pendent DAGs. The algorithm developed in this paper: 1) providesmultipath routing; 2) utilizes all possible edges; 3) guarantees re-covery from single link failure; and 4) achieves all these with atmost one bit per packet as overhead when routing is based on des-tination address and incoming edge. We show the effectiveness ofthe proposed IDAGs approach by comparing key performance in-dices to that of the independent trees and multiple pairs of inde-pendent trees techniques through extensive simulations.

Index Terms—Directed acyclic graphs (DAGs), failure recovery,independent trees, IP fast rerouting, multipath routing, networkprotection.

I. INTRODUCTION

T HE INCREASING use of streaming multimedia andvoice-over-IP, precipitated by decreasing cost of hand-

held multimedia devices and netbooks, necessitates increasedbandwidth provisioning and fast recovery from network fail-ures. Thus, present-day IP networks employ several differentstrategies for improved end-to-end bandwidth and load bal-ancing (using multipath routing) and fast recovery from linkand node failures (using fast rerouting strategies).Multipath routing is a promising routing scheme to accom-

modate these requirements by using multiple pairs of routesbetween a source and a destination. With the scheme, we canachieve robustness [2], load balancing [3], bandwidth aggrega-tion [4], congestion reduction [5], and security [6] compared tothe single shortest-path routing that is usually used in most net-works. Multipath routing in today’s IP networks is merely lim-ited to equal-cost multipaths [24], [25]. Techniques developedfor multipath routing are often based on employing multiplespanning trees or directed acyclic graphs (DAGs) [7]. Whenmultiple routing tables are employed, a packet has to carry in

Manuscript received July 16, 2010; revised January 25, 2011; accepted May10, 2011; approved by IEEE/ACM TRANSACTIONS ON NETWORKING Editor P.Van Mieghem. Date of publication August 30, 2011; date of current versionFebruary 15, 2012. This work was supported by the National Science Founda-tion under Grant CNS-0325979 and the Cisco Collaborative Research Initiative.Parts of this paper appeared in the IEEE International Conference on Commu-nications (ICC), Cape Town, South Africa, May 23–27, 2010.The authors are with the Department of Electrical and Computer Engineering

at the University of Arizona, Tucson, AZ 85721 USA (e-mail: [email protected]; [email protected]; [email protected]).Color versions of one or more of the figures in this paper are available online

at http://ieeexplore.ieee.org.Digital Object Identifier 10.1109/TNET.2011.2161329

its header the routing table to be used for forwarding. Whenthe corresponding forwarding edge is not available, the packetneeds to be dropped. This dropping is forced due to the potentiallooping of packets when transferred from one routing table toanother. In the case of DAGs, computed by adding edges to theshortest-path tree, one cannot guarantee that a single-link failurewill not disconnect one or more nodes from the destination.Techniques developed for fast recovery from single-link fail-

ures provide more than one forwarding edge to route a packetto a destination. The techniques may be classified dependingon the nature in which the backup edges are employed. In [8],the authors develop a method to augment any given tree rootedat a destination with “backup forwarding ports.” Whenever thedefault forwarding edge fails or a packet is received from thenode attached to the default forwarding edge for the destination,the packets are rerouted on the backup ports. In [9], the authorspresent a framework for IP fast reroute detailing three candidatesolutions for IP fast reroute that have all gained considerable at-tention. These are multiple routing configurations (MRCs) [10],failure insensitive routing (FIR) [11], [12], and tunneling usingNot-via addresses (Not-via) [13]. The common feature of allthese approaches is that they employ multiple routing tables.However, they differ in the mechanisms employed to identifywhich routing table to use for an incoming packet. The readersare referred to [14] for a detailed description of the above tech-niques. It is certainly possible to use fast recovery techniques(irrespective of whether they guarantee recovery from singlelink failure or not) for multipath routing. However, all the abovetechniques require a significantly large number of routing tables,hence a large number of additional bits in the packet header.One approach that offers resiliency to single-link failure

and provides multipath routing to some degree is “coloredtrees” [15], [16]. In this approach, two trees are constructedper destination node such that the paths from any node to theroot on the two trees are disjoint. The trees may be constructedto obtain link-disjoint or node-disjoint paths if the network istwo-edge or two-vertex connected, respectively. This approachis similar to those employing multiple routing tables, exceptthat only two tables are required. Every packet may carry anextra bit in its header to indicate the tree to be used for routing.This overhead bit may be avoided by employing a routingbased on the destination address and the incoming edge overwhich the packet was received, as every incoming edge will bepresent on exactly one of the trees. The colored tree approachallows every node to split its traffic between the two trees,thus offering disjoint multipath routing. In addition, when aforwarding link on a tree fails, the packet may be switched tothe other tree. A packet may be transferred from one tree toanother at most once as the colored tree approach is guaranteedto recover from only a single-link failure. The colored trees are

1063-6692/$26.00 © 2011 IEEE

http://ieeexploreprojects.blogspot.com

Page 2: Independent directed acyclic graphs for resilient multipath routing.bak

154 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 1, FEBRUARY 2012

Fig. 1. Illustration of node-independent trees for the example network. (a) Redtree. (b) Blue tree. Node A is the root (destination) node.

also referred to as “independent trees” in the literature [17].We will refer to the colored trees approach as the independenttrees (ITrees) approach in the rest of this paper.Fig. 1 shows an example network where red and blue trees,

rooted at node A, are constructed. This tree construction enablesrecovery from a single-link failure by switching from one tree toanother. For example, consider a packet that is forwarded fromnode F to node A on the blue tree. When there are no failures,the packet would take the path F–C–B–A. If link C–B fails,then node C would reroute the packet on the red tree, thus thepacket will follow the path F–C–F–I–H–G–D–A. Assume thata second link failure occurs on link I–H. As only two indepen-dent trees were constructed and recovery from arbitrary two linkfailures cannot be guaranteed, the packet will be dropped whenthe second link failure is encountered.1

One approach to enhance the robustness is to allow thepacket to be switched multiple times between the trees. Suchan approach will fail in the example considered above. Thepacket will be rerouted back and forth on the path I–F–C. Wemay analyze when switching back to a tree would guaranteenot encountering a previous failure again [18] by observingthe properties of the independent tree construction process.However, the inherent limitation of the tree-based approachis that it utilizes only directed edges to route toa destination, where denotes the number of nodes in thenetwork. Our goal is therefore to utilize the additional linksavailable in the network to improve robustness. To this end, weseek to construct independent directed acyclic graphs rooted ateach node. Fig. 2(a) and (b) shows two independent directedacyclic graphs rooted at node A. Observe that node I has twored forwarding edges available. Thus, in the earlier example,if link I–H fails, the packet may be forwarded on link I–E toreach the destination.Maximum Alternative Routing Algorithm (MARA) [19]

constructs a DAG that utilizes all edges in the network toincrease the number of paths significantly. However, the algo-rithm does not provide a mechanism for backup forwardingwhen encountering a single link or node failure. Anotherapproach is to employ multiple pairs of colored (independent)trees, however such a technique will require the packet to carryinformation on which pair is being used for routing. Our goalin this paper is to develop an elegant solution to: 1) achievemultipath routing; 2) utilize all possible edges; 3) guarantee

1The packet will also need to carry the information of howmany prior failuresit has seen. The color of the tree to be used for routing may be obtained fromthe incoming interface over which the packet was received. Thus, every packetneeds to carry only one overhead bit.

Fig. 2. Illustration of node-independent DAGs in an example network wherenode A is the root (destination) node. (a) Red DAG. (b) Blue DAG.

recovery from single-link failures; and 4) reduce the number ofoverhead bits required in the packet header. Moreover, the useof multiple nondisjoint paths is advantageous in load balancingand preventing snooping on data, in addition to improvingresiliency to multiple link failures.

A. Contributions

In this paper, we develop a new approach for resilientmultipath routing. We introduce the concept of independentdirected acyclic graphs (IDAGs), an extension of independenttrees. Link-independent (node-independent) DAGs satisfy theproperty that any path from a source to the root on one DAGis link-disjoint (node-disjoint) with any path from the sourceto the root on the other DAG. Given a network, we developalgorithms to compute link-independent and node-independentDAGs. The algorithm guarantees that every edge other thanthe ones emanating from the root may be used in either of thetwo node-disjoint DAGs in a two-vertex-connected network.Similarly, we show that only a small number of edges willremain unused when link-independent DAGs are constructed.The edges that will remain unused in both DAGs are defined bythe topological limitation of the network. Thus, the algorithmsdeveloped in this paper employ the maximum possible edgesin the DAGs. The approach developed in this paper requiresat most two bits (and may be reduced to one bit when routingis based on destination address and incoming link) even whenboth DAGs are used simultaneously.Finally, we introduce another approach to exploit all possible

links, that is, multiple pairs of colored trees technique to eval-uate the performance of the IDAGs scheme. In themultiple pairsof colored trees technique, the red and blue trees are indepen-dent in a given pair, however we cannot guarantee that treesfrom different pairs are independent.We demonstrate the effectiveness of the proposed IDAGs

approach by comparing key performance indices to that ofthe independent trees and multiple pairs of independent treestechniques.

B. Organization

The rest of the paper is organized as follows. Section II in-troduces the concept of IDAGs and routing with two IDAGs.Sections III and IV describe the construction of node-indepen-dent and link-independent DAGs, respectively. In Section V,we propose an alternative IDAG construction approach usinggraph expansion. Section VI presents the construction of mul-tiple pairs of colored trees that are used to exploit all possible

http://ieeexploreprojects.blogspot.com

Page 3: Independent directed acyclic graphs for resilient multipath routing.bak

CHO et al.: INDEPENDENT DIRECTED ACYCLIC GRAPHS FOR RESILIENT MULTIPATH ROUTING 155

edges. Section VII evaluates the performance of the IDAGs ap-proach and compares it to that of the independent trees approachand the multiple pairs of colored trees approach. Section VIIIconcludes the paper.

II. INDEPENDENT DIRECTED ACYCLIC GRAPHS

We consider a network with a set of nodes and links denotedby and , respectively.We assume that links are bidirectionalin nature, which may be realized using two unidirectional links.We denote a bidirectional link between nodes and as ,while the directed link from to is denoted by . When alink fails, we assume that both directed edges and

have failed.We say that a DAG is rooted at if is the only node in the

DAG that has no outgoing edges. Every other node has at leastone outgoing edge. If we traverse a sequence of edges startingfrom any node, the path will terminate at node and will beloop-free. Consider two directed acyclic graphs that are rootedat . The two DAGs are said to be link-independent if for everynode , , any path from to on one DAG is link-disjoint with any path from to on the other DAG. Similarly,the two DAGs are said to be node-independent if for every node

, , any path from to on one DAG is node-disjointwith any path from to on the other DAG. Let anddenote any two paths from to , one from each DAG. Thelink-independent DAGs satisfy the following property

The node-independent DAGs satisfy the following property:

A. Resilient Routing With IDAGs

The network is assumed to employ link-state protocol, henceevery node has the view of the entire network topology. Everynode computes two DAGs, namely red and blue , foreach destination and maintains one or more forwarding entriesper destination per DAG. The DAGs may be used in two dif-ferent ways to achieve resilient routing. In the first approach, re-ferred to as Red DAG first (RDF), the packets are assumed to beforwarded on the red DAG first. When no forwarding edges areavailable on the red DAG, the packet is transferred to the blueDAG. When no blue forwarding edges are available, the packetis dropped. The DAG to be employed for routing is carried inan overhead bit (DAG bit) in every packet header. In the secondapproach, referred to as Any DAG first (ADF), a packet may betransmitted by the source on the red or blue DAG. In addition tothe DAG bit, every packet also carries an additional bit that indi-cates whether the packet has been transferred from one DAG toanother (Transfer bit). A packet is routed on the DAG indicatedin its packet header. If no forwarding edges are available in thatDAG and if the packet has not encountered a DAG transfer al-ready, it is transferred to the other DAG. If no forwarding edgesare available on the DAG indicated in the packet header andthe packet has already encountered a DAG transfer, the packetis dropped. In both of the approaches described above, a nodemay forward the packet along any of the available forwardingedges in the DAG indicated in the packet header.

Note that if the red and blue DAGs are (link- or node-) inde-pendent, then the network is guaranteed to recover from a single(-link or -node) failure when the packet is transferred from oneDAG to the other. In addition, the network may tolerate mul-tiple failures as some nodes may have many forwarding entriesin each DAG.Given a destination node in the network, we seek to con-

struct two independent DAGs rooted at the destination. Ourgoal in the construction process is to utilize every edge avail-able in the network in either of the two DAGs. Observe that theedges emanating from cannot be utilized in the DAGs as werequire the paths to terminate at . To this end, we first con-struct two node-independent DAGs in a two-vertex-connectednetwork involving every edge, other than the edges emanatingfrom the destination, in either of the two DAGs. We then con-struct link-independent DAGs in two-edge-connected networksemploying all but a few edges emanating from the articulationnodes.2

III. CONSTRUCTING NODE-INDEPENDENT DAGS

Two-vertex-connectivity is the necessary and sufficientrequirement for constructing two node-independent DAGsutilizing all the edges except those emanating from the givendestination node. This necessary part of the requirement fol-lows directly from the condition required for constructing twonode-independent trees—a special case of DAG. We show thesufficiency part of the requirement by constructing the desiredDAGs.We first compute two base DAGs using the path augmentation

technique, introduced in [20] and later employed in [21] and[22] to construct two independent trees. We then add the edgesthat are not present in either DAG. We maintain a partial order(precedence relation) among the nodes in both the red and blueDAGs. A node precedes , denoted by , on a DAG ifnode uses node in at least one of its paths to . The partialorder on a DAG may be viewed simply as reachability on theDAG, i.e., implies that is reachable on the DAG by .This relationship is key to the construction as it avoids any cycleformation, hence the DAGs. Thus, maintaining partial orderingon a DAG is the same as maintaining the reachability for everynode in the DAG.Fig. 3 shows the procedure to construct two node-indepen-

dent DAGs rooted at node . Step 1 initializes the partial orderfor the nodes on the two DAGs. Step 2 computes the first cycleto be augmented. Step 3 computes successive paths to be aug-mented. The path starts and ends at distinct nodes that are al-ready added to the DAGs, hence the paths from every node tothe root of the DAG are node-disjoint. Note that the differencebetween the path augmentation employed for DAG constructionhere and that employed for tree construction in [21] and [22] isthe use of links and . As nodes and arealready added to the DAGs before computing this path, addingthese edges provides multiple forwarding edges for nodes and. As nodes and are distinct nodes and at least one new nodeis included in the path, the above step does not result in cycles.Steps 3 and 4 ensure that all the nodes are included in the twobase DAGs.

2An articulation node is one whose removal would disconnect the graph.

http://ieeexploreprojects.blogspot.com

Page 4: Independent directed acyclic graphs for resilient multipath routing.bak

156 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 1, FEBRUARY 2012

Fig. 3. Procedure to construct two node-independent DAGs rooted at destina-tion in a two-vertex-connected network.

Given the partial orders defined by the red DAG, a globalordering that is consistent with the partial ordering is computedin Step 5. We denote precedes in the global order as .Note that if , then . However, if , then either

, or there is no partial ordering between and on thebase red DAG. Both these scenarios imply that the edgemay be used on the red DAG or may be used on thered DAG. Given the global ordering, the unused links that arenot incident on the destination may be assigned to the DAGs asshown in Step 6. Finally, Step 7 assigns all the incoming edgeson the destination that are not already on the DAG. It is worthnoting that these edges may be assigned arbitrarily to the red orblue DAG.Theorem 1: The procedure NI-DAGs construction: 1) assigns

every edge other than the edges emanating from the destina-tion to one of the two DAGs; and 2) any path from a sourceto the root in the red DAG is node-disjoint with any path fromthe source to the root in the blue DAG.

Proof: The global order computation defines an orderingacross all the nodes in the network. Thus, given a link – ( ,

), either or . Thus, by Step 6, every link inthe network that is not incident on is assigned to either the redor the blue DAG. Step 7 assigns every incoming edge to toeither the red or blue DAG. Thus, only the outgoing edges fromare unused in the DAG. This proves part 1) of the theorem.The global ordering is similar to the voltage levels used

in [23]. Therefore, every path on the base red DAG will follow

Fig. 4. Illustration of the construction of node-independent DAGs. (a) Examplenetwork. (b) Base red DAG. (c) Base blue DAG. Fig. 2(a) and (b) shows the finalred and blue DAGs, respectively.

a sequence of nodes that is decreasing in the global ordering.Similarly, every path on the base blue DAG will follow asequence of nodes that is increasing in the global ordering.Thus, the path from a node to the root on the base red DAG isnode-disjoint with a path from the source to the root on the baseblue DAG. Step 6 of the algorithm ensures that any unusededges on the DAGs are assigned such that any red (blue) pathwould always follow a sequence of nodes that are decreasing(increasing) in the global ordering. As Step 7 considers onlydirected edges and every edge is assigned only one color, thedisjointedness of the red and blue paths is preserved.3

Complexity: The construction of the base DAGs may beachieved in time using depth-first-search numberingand low-point values [16]. The global ordering may be com-puted in time. The addition of every other link (Step6) may be completed in time (an computation foreach link). Step 7 takes time. Thus, the complexity ofthe NI-DAG construction is .Example: Consider the nine-node network shown in

Fig. 4(a), where we seek to compute IDAGs rootedat node . The base DAGs are computed by consid-ering the cycle A–D–E–B followed by paths D–G–H–Eand H–I–F–C–B for augmentation and are shown inFig. 4(b) and (c). These paths result in the following par-tial orders: 1) ; 2) ; and3) . Out of many possible global orderingsthat satisfy these partial orders, we obtain one global order as:

. Withthis global ordering, we compute the direction of the edges thatwere not considered in the base DAGs. Fig. 2(a) and (b) showsthe final independent DAGs that are constructed.

IV. CONSTRUCTING LINK-INDEPENDENT DAGS

Two-edge connectivity is a necessary and sufficient conditionfor constructing two link-independent DAGs. Similar to the re-quirement of node-independent DAGs, the necessary part of therequirement follows from the independent tree construction.Weshow the sufficiency part of the requirement by constructing thedesired DAGs.Fig. 5 shows the procedure to construct two link-indepen-

dent DAGs. We first divide the network into two-vertex-con-nected (2V) components (Step 1). A node may appear in morethan a 2V-component, and the removal of such a node (articu-lation node) would disconnect the graph. In addition, any two2V-components may share at most one node in common. Given

3Note that the root node may be viewed as being on either extreme of theglobal order. Alternatively, we may ignore the root from the global ordering.

http://ieeexploreprojects.blogspot.com

Page 5: Independent directed acyclic graphs for resilient multipath routing.bak

CHO et al.: INDEPENDENT DIRECTED ACYCLIC GRAPHS FOR RESILIENT MULTIPATH ROUTING 157

Fig. 5. Procedure to construct two link-independent DAGs rooted at destina-tion in a two-edge-connected network.

a destination node , we identify the root node for every com-ponent—the unique node through which every path connectinga node in that component and must traverse (Step 2). In com-ponents that contain node , the root node is assumed to be .In components that do not contain node , there is a unique ar-ticulation node that will be assigned the root of that component.Let denote the root node of component that does not con-tain the destination node . Observe that a link , where

, may not be used as a forwarding edge on any DAG. Asevery path from to has to traverse , the addition ofwould result in a cycle. Thus, the only edges that cannot be as-signed to any DAG are those edges emanating from the rootnode of a component. In each 2V-component, we compute twonode-independent DAGs to the root of that component (Step 3).We then merge these node-independent DAGs to obtain the de-sired link-independent DAGs (Step 4).As every network has a unique two-vertex-connected decom-

position, hence unique root nodes for every 2V-component, thenumber of edges that cannot be used in either DAG is uniqueand is a property of the given network topology. It is straight-forward to see that the procedure LI-DAGs construction avoidsonly the edges emanating from the articulation. Although everynetwork topology has a unique two-vertex-connected decompo-sition, irrespective of the destination node considered, the nodeselected to be the root node in a component is dependent on thedestination node and is unique for a given destination node.The decomposition of a network into two-vertex-connected

components and identifying the root node of every componentfor a given destination may be achieved in time usingdepth-first-search numbering starting from the destination node.If a node has a DFS-child whose low point is the same as

, then node is an articulation node. In addition, nodemay divide its neighbors belonging to different components by:1) arranging them in the increasing order of their DFS indices;2) identifying the DFS indices of its children; and 3) groupingthe nodes that fall within the DFS index of two children se-quentially into a component. Therefore, the complexity of con-structing LI-DAGs is the same as that of NI-DAGs.

V. ALTERNATIVE APPROACH TO IDAG CONSTRUCTION USINGGRAPH EXPANSION

We now present an alternative algorithm to construct IDAGssuch that Steps 5–7 of the NI-DAGs construction may be

Fig. 6. Procedure to construct two node-independent DAGs rooted at destina-tion using virtual graph expansion.

Fig. 7. Illustration of the construction of node-independent DAGs using a vir-tual node. (a) Expansion with virtual node. (b) Contraction to remove virtualnode.

completely avoided. Observe that Steps 5–7 in the NI-DAGsconstruction are required because not all links are consideredby the base IDAG construction (Steps 1–4). If, however, wecan modify the graph such that the base IDAG constructionwould consider all links, then Steps 5–7 can be eliminated. Tothis end, we develop a graph expansion technique that resultsin an expanded graph with nodes and links,where and denote the number of nodes and links in theoriginal graph.Fig. 6 shows the procedure to construct two node-indepen-

dent DAGs rooted at destination using graph expansion. Con-sider a link that connects nodes and in the originalgraph. We replace this link with a node and two links –and – . Fig. 7(a) shows the expansion of link . Since everylink in the original graph results in a new node, the total numberof nodes in the expanded graph is . Since every linkin the original graph results in two links in the expanded graph,the total number of links in the expanded graph is . Observethat all the nodes that correspond to a link in the original graphhave exactly two outgoing links.Now, consider the base IDAG construction on the expanded

the graph. Since Steps 1–4 must account for all nodes beingadded, all the nodes corresponding to the links in the originalgraph must be added in steps 1–4, thus all links in the originalgraph are considered. As the number of links in the originalgraph has been doubled, the complexity of construction of thebase IDAG remains the same, , using DFS numberingand low-point values [16].Finally, we obtain the colors on the original link – by

deleting the virtual node and merging the two edges asshown in Fig. 7(b).

http://ieeexploreprojects.blogspot.com

Page 6: Independent directed acyclic graphs for resilient multipath routing.bak

158 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 1, FEBRUARY 2012

Fig. 8. Procedure to construct multiple pairs of colored trees rooted at nodeutilizing the maximum number of links.

Correctness: Observe that the base IDAG construction using[16] is similar to that of the path augmentation approach. Thus,with the use of partial ordering, it can be easily shown that anyred path would traverse a sequence of nodes with decreasingpartial order, while the blue path would traverse a sequence ofnodes with increasing partial order. Thus, any red path and anyblue path from a node are node-disjoint. The construction ofLIDAGs is performed in the same way as explained before, thusretaining the same correctness property.

VI. PROCEDURE FOR CONSTRUCTION OF MULTIPLE RED–BLUETREES

Our key goal in this paper is to use the maximum possiblenumber of network edges for data transmission. As mentionedearlier, one possible solution is to construct multiple pairs ofcolored trees. We would like to compare our IDAGs approachto the multiple pairs of colored trees approach. In this section,we introduce the procedure for constructing multiple pairs ofcolored trees. In order to use the maximum number of edges,we construct multiple colored tree pairs that share as few edgesas possible. Note that for a given pair, the red and blue trees areindependent, however trees from different pairs are not neces-sarily independent.Let the number of pairs of colored trees needed be . It is

necessary and sufficient for a network to be two-vertex (edge)connected to compute at least one pair of vertex (edge) indepen-dent trees . Given a network we construct a pair of in-dependent trees using the procedure described in [15] and [16].We record the link usage frequency of all links and sort linksin the descending order of usage frequency. We then considerlinks in the given order, removing a link while the network re-mains two-vertex (edge) connected and compute a pair of inde-pendent trees. We repeat this procedure until the desired numberof colored tree pairs is obtained.4 Fig. 8 shows the procedure toconstruct multiple pairs of colored trees rooted at node . Weprovide several simulation results of the multiple pairs of col-ored trees technique in Section VII.Correctness and Complexity: It is straightforward to show

that the above algorithm uses every possible edge. If a givennetwork is minimally two-vertex (edge) connected, then everyedge is utilized at least once in two colors even if is equal to

4Note that under this method, a link may not be used in any of the independenttrees as it may never be needed to maintain the two-connectivity of a graph.

one. Otherwise, all unused edges are utilized by the constructionalgorithm if is sufficiently large.Step 2 takes time—for each link removal, we need

to check for two-edge-connectivity, which takes time(using DFS numbering and low-point value checks). Step 3 canbe achieved with time using depth-first-search numberingand low-point values [16]. Therefore, the complexity of the pro-cedure is . Once the trees are constructed, we require

bits in the packet header to identify the pair of inde-pendent trees to be employed for routing.

VII. PERFORMANCE EVALUATION

We evaluate the performance of two independent DAGsagainst two colored trees and multiple pairs of coloredtrees on four real-life network topologies: 1) ARPANET;2) ITALIAN-NET; 3) MESH-4 4; and 4) NJ-LATA shownin Fig. 9. We select one of the nodes to be the destination andcompute independent trees and DAGs rooted at that node. Wepresent simulation results for the multiple pairs of colored treestechnique, which is another ITrees application and is used toexploit all possible links in a network. We believe that theseanalyses expand our understanding of the resilient multipathrouting.We consider four performance metrics: 1) average path

length; 2) number of paths; 3) number of scenarios where anintruder can observe two distinct links and observe all trafficsent by a source; and 4) average link load. For IDAGs, the ex-pected path length from a source to the destination is computedby assuming that the source and an intermediate node wouldforward a packet on one of its outgoing DAG edges with equalprobability. We then average the expected path length over allnodes in the network. In the case of two independent trees,every node has exactly one path on each tree, thus the averagepath length computation is straightforward. The number ofpaths from a source to the destination is computed as the sumof the number of paths from each of its forwarding neighbor tothe destination, in a recursive fashion.We define an edge on a DAG as the critical edge if its removal

would disconnect a node from the root. For every node, we com-pute the number of critical edges in each DAG. We assume thata source would equally split its traffic to the root across the twoDAGs/trees. Thus, any intrusion involving observation of onlyone link will not expose all the traffic from the source to desti-nation. However, it is possible to observe two critical links andobtain all the traffic from a source to the destination. If anddenote the number of critical edges for node on the two

DAGs, we compute the number of scenarios of two-link intru-sions that will expose all the traffic from node as the product

. Observe that in the case of two independent trees,the number of two-link intrusions that will expose all the trafficfrom is given by , where and denote the pathlength from to the root on the two trees. The use of DAGsincreases the number of paths available in the network, thus re-ducing the number of critical links.Average link load is given by , where is

the amount of traffic existing in a link when a node transmitson one color. This measure reflects the effect of load distributionper link. Intuitively, the metric will have relatively low value ifas many links as possible are used to transmit data traffic.

http://ieeexploreprojects.blogspot.com

Page 7: Independent directed acyclic graphs for resilient multipath routing.bak

CHO et al.: INDEPENDENT DIRECTED ACYCLIC GRAPHS FOR RESILIENT MULTIPATH ROUTING 159

Fig. 9. Four real-life network topologies used in the simulations: (a) ARPANET (20 nodes, 32 links); (b) ITALIAN-NET (32 nodes, 69 links); (c) MESH-4 4(16 nodes, 32 links); (d) NJ-LATA (11 nodes, 23 links).

Fig. 10. Number of paths from a source to destination on the four networks using IDAGs approach. (a) MESH-4 4. (b) NJ-LATA. (c) ARPANET.(d) ITALIAN-NET.

A. Results and Discussion

Fig. 10 shows the number of paths available from a sourceto the destination on the four network topologies (plotted in thelog-scale) with the IDAGs approach. As all the topologies con-sidered are two-vertex-connected, the number of paths from anynode to the destination (together on both the trees) is at least thedegree of the node. We observe that when the number of linksin the network increases, the number of paths increases signifi-cantly. For example, in the ITALIAN network, some nodes havethousands of paths.Fig. 11 shows the number of path available froma source to the

destination on the four real-life networks when employing mul-tiple pairs of colored trees approach. Assume that the number ofpairs of colored trees is . According to our simulation, at least

pairs of colored trees are needed to utilize all possibleedges on the four real-life networks. Table I shows the four min-imum values required to exploit all possible edges on each ofthe networks. If all available paths on one color at a node are dis-tinct, the maximum number of paths on one color is simply .In theworst case, all the paths available on one color at a node arethe same, and the number of paths available on one color from asource to the root is one. The number of distinct paths dependson the network connectivity and topology. For example, manynodescanhave differentpathsononecolor in adensenetwork.The number of paths available on one color is between 1 and 6on the four real-life networks since we use in the simula-tion.Note thatwe observed fromFig. 10(d) that some nodes havethousandsofpathson the ITALIANnetworkwhen the IDAGsap-proach is applied. We see that the approach with multiple pairs

http://ieeexploreprojects.blogspot.com

Page 8: Independent directed acyclic graphs for resilient multipath routing.bak

160 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 1, FEBRUARY 2012

Fig. 11. Number of paths from a source to destination on the four networks using the six pairs of colored trees approach. (a) MESH-4 4. (b) NJ-LATA.(c) ARPANET. (d) ITALIAN-NET.

TABLE IMINIMUM VALUE TO UTILIZE ALL POSSIBLE EDGES ON EACH REAL-LIFE

NETWORK

of colored trees has a drawback in terms of the number of pathsavailable from Fig. 11.In Fig. 12, we plot the product of the number of critical

edges using the six pairs of colored trees, IDAGs, and ITreesapproaches. We observe that the IDAGs approach reduces thenumber of two-link intrusion scenarios that will expose alltraffic by a source by up to a factor of six compared to the ITreesapproach. Also, the figure shows that the metric can be reducedwith the multiple pairs of colored trees approach compared tothe ITrees approach and even the IDAGs approach. The intuitionbehind this result is that many nodes can find multiple node(link) disjoint paths by the construction procedure of multiplepairs of colored trees if the given network is dense. If a nodehas at least two node (link) disjoint paths on one color, it has nocritical links on the color. In a dense network, the product of thenumber of critical edges can be reduced drastically. As shownin the figure, the metric using six pairs of colored trees approachhas zero value on MESH 4 4 and ARPANET networks. Onthe ITALIAN network, the value is 0.03.In Fig. 13, we show the product of the number of critical

edges using the multiple pairs colored trees approach withincreasing on the four real-life networks. Notice that if isequal to one, the pairs of colored trees are simply ITrees. The

Fig. 12. Product of the number of critical links using six pairs of colored trees,IDAGs, and ITrees approaches.

product of the number of critical edges is reduced significantlywith larger . However, with greater than three, the valuesare almost the same. That is because the construction algorithmcannot find multiple node (link) disjoint paths any more forlarger values of .Fig. 14 shows the ratio of the average path length between a

node and the root using the IDAGs approach to that using theITrees approach. In the IDAGs approach, a node is assumedto forward a packet on any of the outgoing edges in a DAGwith equal probability. Any multipath routing approach (otherthan equal-length multiple paths) is likely to employ additionalpaths that are longer than the shortest path, thus it is likely toincrease network load. The figure shows that the overall increasein the network load ranges from approximately 10% to no morethan two times the load in the ITrees approach. We observe thatas the number of links in the network increases, the numberof available paths increases resulting in increased average pathlength. Thus, in networks with a large number of links, it may be

http://ieeexploreprojects.blogspot.com

Page 9: Independent directed acyclic graphs for resilient multipath routing.bak

CHO et al.: INDEPENDENT DIRECTED ACYCLIC GRAPHS FOR RESILIENT MULTIPATH ROUTING 161

Fig. 13. Product of the number of critical links using multiple pairs of coloredtrees approach on the four real-life networks.

Fig. 14. Ratio of average IDAGs path length to average ITrees path length.

Fig. 15. Ratio of average six pairs of colored trees and IDAGs path length toaverage ITrees path length.

beneficial to: 1) evaluate the impact of adding an edge to a DAGon the average path length (Step 6 of NI-DAGs constructionalgorithm) before including it in a DAG; and 2) consider onlythose edges that either reduce the average path length or do notincrease the average path length beyond a certain threshold, thuscontrolling the increase in network load.Fig. 15 shows the ratio of the average path length between a

node and the root using the six pairs of colored trees and IDAGsapproaches to that using the ITrees approach. Each histogramin the figure represents the average value of the red and bluecolors of path-length ratio. From the figure, IDAGs approachhas shorter path length than six pairs of colored trees approachon all four real-life networks. The reason is because the con-struction algorithm computes multiple pairs of colored trees thatshare as few edges as possible. The algorithm may construct apair of colored trees with long paths as the number of multiplepairs of colored trees increases.Fig. 16 shows the ratio of the average shortest path length

on the IDAGs to the average path length on the ITrees froma node to the root. The shortest path on an IDAG is definedto be the shortest path among all paths available on the IDAGat a node, and we can find one shortest path on red and blueDAGs at a node, respectively. By the disjointedness of IDAGs,

Fig. 16. Ratio of average shortest path length on the IDAGs to average pathlength on the ITrees.

Fig. 17. Ratio of average six pairs of colored trees and IDAGs link load toaverage ITrees link load.

the two shortest paths at a node are disjoint. We can regard treescomposed of the shortest paths on the IDAGs as another pairof colored (independent) trees. From the figure, we find that thenetwork load can decrease with the shortest paths on the IDAGson the four real-life networks. Since the average shortest path onthe IDAGs is shorter than the average path length on the ITrees,the shortest paths on the IDAGs have an advantage in terms ofthe product of the number of critical edges. Accordingly, wecan achieve better performance with even shortest paths on theIDAGs compared to paths on the ITrees.Fig. 17 shows the ratio of the average link load using the

IDAGs and six pairs of colored trees approaches to that usingthe ITrees approach. From the figure, we find that average linkload decreases with the two methods compared to the ITrees ap-proach and the six pairs of colored trees approach outperformsthe IDAGs approach. Therefore, a link is less heavily loadedwith the IDAGs or multiple pairs of colored tree approachescompared to the ITrees approach.From the simulation results, the approach with multiple

pairs of colored trees performs marginally better in termsof preventing snooping on data and average link load com-pared to IDAGs approach. However, this approach requires

bits in the packet header for routing. The overheadis expensive since header extensions are processed in software,hence increase delay.

VIII. CONCLUSION

In this paper, we introduced the concept of independent di-rected acyclic graphs (IDAGs) and developed a methodologyfor resilient multipath routing using two IDAGs. We developedpolynomial-time algorithms to construct node-independent andlink-independent DAGs using all possible edges in the network.The IDAGs approach was evaluated on four real-life network

http://ieeexploreprojects.blogspot.com

Page 10: Independent directed acyclic graphs for resilient multipath routing.bak

162 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 20, NO. 1, FEBRUARY 2012

topologies and compared to ITrees and multiple pairs of col-ored (independent) trees approaches to prove the validity of thealgorithm. Through simulations, we showed that the IDAGs ap-proach performs significantly better than the independent treesapproach in terms of increasing number of paths offered, re-ducing the probability of a two-link failure disconnecting a nodefrom the destination, and average link load. In addition, thetrees based on the shortest paths on the IDAGs have better per-formance than that of the ITrees approach since the averageshortest path length on the IDAGs is shorter than the averagepath length on the ITrees. Multiple pairs of colored trees ap-proach is better in terms of the product of the number of criticallinks and average link load compared to the ITrees and IDAGsapproaches. However, the method is impractical since it needsmany overhead bits in the packet header.

REFERENCES

[1] S. Cho, T. Elhourani, and S. Ramasubramanian, “Resilient multipathrouting with independent directed acyclic graphs,” in Proc. IEEE Int.Conf. Commun., Cape Town, South Africa, May 2010, pp. 1–5.

[2] Z. Ye, S. V. Krishnamurthy, and S. K. Tripathi, “A framework for re-liable routing in mobile ad hoc networks,” in Proc. IEEE INFOCOM,Apr. 2003, pp. 270–280.

[3] P. P. Pham and S. Perreau, “Performance analysis of reactive shortestpath and multi-path routing mechanism with load balance,” in Proc.IEEE INFOCOM, 2003, pp. 251–259.

[4] J. Tsai and T. Moors, “A review of multipath routing protocols: Fromwireless ad hoc to mesh networks,” in Proc. ACoRN Early Career Res.Workshop Wireless Multihop Netw., Jul. 17–18, 2006, pp. 17–22.

[5] S. Murthy and J. Garcia-Luna-Aceves, “Congestion-oriented shortestmultipath routing,” in Proc. IEEE INFOCOM, Mar. 1996, vol. 3, pp.1028–1036.

[6] W. Lou, W. Liu, and Y. Fang, “A simulation study of security perfor-mance using multipath routing in ad hoc networks,” in Proc. IEEE Veh.Technol. Conf., Oct. 2003, vol. 3, pp. 2142–2146.

[7] G. Lee and J. Choi, “A survey of multipath routing for trafficengineering,” 2002 [Online]. Available: http://academic.re-search. microsoft.com/Publication/10842993/a-survey-of-multi-path-routing-for-traffic-engineering

[8] K. Xi and J. Chao, “IP fast rerouting for single-link/node failure re-covery,” in Proc. BROADNETS, Internet Technol. Symp., Sep. 2007,pp. 142–151.

[9] M. Shand and S. Bryant, “IP fast reroute framework,” IETF InternetDraft draft-ietf-rtgwg-ipfrr-framework-08.txt, Feb. 2008.

[10] A. Kvalbein, A. F. Hansen, T. Ĉiĉić, S. Gjessing, and O. Lysne, “FastIP network recovery using multiple routing configurations,” in Proc.IEEE INFOCOM, Apr. 2006, pp. 1–11.

[11] S. Lee, Y. Yu, S. Nelakuditi, Z.-L. Zhang, and C.-N. Chuah, “Proac-tive vs. reactive approaches to failure resilient routing,” in Proc. IEEEINFOCOM, Mar. 2004, vol. 1, pp. 176–186.

[12] S. Nelakuditi, S. Lee, Y. Yu, and Z.-L. Zhang, “Failure insensitiverouting for ensuring service availability,” in Proc. IWQoS, Jun. 2003,pp. 287–304.

[13] S. Bryant, M. Shand, and S. Previdi, “IP fast reroute using not-via ad-dresses,” Internet Draft draft-ietf-rtgwg-ipfrr-notvia-addresses-02.txt,Feb. 2008.

[14] S. Kini, S. Ramasubramanian, A. Kvalbein, and A. Hansen, “Fastrecovery from dual-link failures in IP networks,” in Proc. IEEEINFOCOM, Rio de Janeiro, Brazil, Apr. 2009, pp. 1368–1376.

[15] S. Ramasubramanian, M. Harkara, and M. Krunz, “Distributed lineartime construction of colored trees for disjoint multlipath routing,” inProc. IFIP Netw., May 2006, pp. 1026–1038.

[16] G. Jayavelu, S. Ramasubramanian, and O. Younis, “Maintainingcolored trees for disjoint multipath routing under node failures,”IEEE/ACM Trans. Netw., vol. 17, no. 1, pp. 346–359, Feb. 2008.

[17] A. Huck, “Independent trees in graphs,” Graphs Combin., vol. 10, pp.29–45, 1994.

[18] T. Erlebach and A. Mereu, “Path splicing with guaranteed fault toler-ance,” in Proc. 28th IEEE GLOBECOM, 2009, pp. 623–628.

[19] Y. Ohara, S. Imahori, and R. V. Meter, “MARA: Maximum alternativerouting algorithm,” in Proc. IEEE INFOCOM, Rio de Janeiro, Brazil,Apr. 2009, pp. 298–306.

[20] M. Medard, R. A. Barry, S. G. Finn, and R. G. Gallager, “Redundanttrees for preplanned recovery in arbitrary vertex—Redundant or edgeredundant graphs,” IEEE/ACMTrans. Netw., vol. 7, no. 5, pp. 641–652,Oct. 1999.

[21] G. Xue, L. Chen, and K. Thulasiraman, “Quality-of-service andquality-of-protection issues in preplanned recovery schemes usingredundant-trees,” IEEE J. Sel. Areas Commun., vol. 21, no. 8, pp.1332–1345, Oct. 2003.

[22] S. Ramasubramanian, M. Harkara, and M. Krunz, “Linear time dis-tributed construction of colored trees for disjoint multipath routing,”Comput. Netw., vol. 51, no. 10, pp. 2854–2866, Jul. 2007.

[23] G. Xue,W. Zhang, J. Tang, and K. Thulasiraman, “Polynomial time ap-proximation algorithms for multi-constrained qos routing,” IEEE/ACMTrans. Netw., vol. 16, no. 3, pp. 656–669, Jun. 2008.

[24] D. Thaler and C. Hopps, “Multipath issues in unicast and multicastnext-hop selection,” RFC 2991, Nov. 2000 [Online]. Available: http://tools.ietf.org/html/rfc2991

[25] C.Hopps, “Analysis of an equal-cost multi-path algorithm,” RFC 2992,Nov. 2000 [Online]. Available: http://tools.ietf.org/html/rfc2992

Sangman Cho received the B.E. degree in elec-tronics engineering from Inha University, Incheon,Korea, in 2000, and the M.E. degree in computerand communication engineering from POSTECH,Pohang, Korea, in 2003, and is currently pursuing thePh.D. degree in electrical and computer engineeringat the University of Arizona, Tucson.He held research positions at Samsung Elec-

tronics, Suwon, Korea, and Bellwave, Seoul, Korea.His research interests include network monitoring,fault localization, multipath routing, and channel

access schemes in multichannel wireless networks.

Theodore Elhourani received the B.S. and M.S. de-grees in computer engineering from the Universityof Arizona, Tucson, in 2003 and 2006, respectively,and is currently pursuing the Ph.D. degree in com-puter engineering at the University of Arizona.He was a Research Assistant with the Artificial In-

telligence Laboratory, University of Arizona, and anintern with the Enterprise Power Pathfinding Team,Intel Corporation, Chandler, AZ. His areas of interestare network and server reliability, network security,software agents, and software engineering.

Srinivasan Ramasubramanian (S’99–M’02–SM’08) received the B.E. (Hons.) degree in elec-trical and electronics engineering from Birla Instituteof Technology and Science (BITS), Pilani, India, in1997, and the Ph.D. degree in computer engineeringfrom Iowa State University, Ames, in 2002.Since August 2002, he has been an Assistant

Professor with the Department of Electrical andComputer Engineering, The University of Arizona,Tucson. He is a co-developer of the HierarchicalModeling and Analysis Package (HIMAP), a reli-

ability modeling and analysis tool, which is currently being used at Boeing,Honeywell, and several other companies and universities. His research inter-ests include architectures and algorithms for optical and wireless networks,multipath routing, fault tolerance, system modeling, and performance analysis.Dr. Ramasubramanian has served as the TPC Co-Chair of BROADNETS

2005, ICCCN 2008, and ICC 2010 conferences and LANMAN 2010Workshop.He has served on the Editorial Board of Wireless Networks from 2005 to 2009.

http://ieeexploreprojects.blogspot.com