algorithms for bandwidth efficient multicast routing in

Upload: mazhaic-maham

Post on 02-Apr-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/27/2019 Algorithms for Bandwidth Efficient Multicast Routing In

    1/6

    Algorithms for Bandwidth Efcient Multicast Routing inMulti-channel Multi-radio Wireless Mesh Networks

    Hoang Lan Nguyen, Uyen Trang NguyenDepartment of Computer Science and Engineering, York University

    4700 Keele Street, Toronto, Canada M3J 1P3Email: {lan,utn }@cse.yorku.ca

    Abstract Traditional multicast routing algorithms such asshortest path tree (SPT) and Steiner tree (MST) do not considerthe wireless broadcast advantage or the underlying channelassignments in a multi-channel multi-radio (MCMR) wirelessmesh network (WMN). We propose multicast routing algorithmsthat take into account the above factors in order to minimizethe amount of network bandwidth consumed by a routing tree.Experimental results show that routing trees constructed by theproposed algorithms outperform traditional trees such as SPTs,MSTs and minimum number of forwarders trees (MFTs) withrespect to packet delivery ratio, throughput and end-to-end delay.

    I. INTRODUCTION

    Traditional multicast routing algorithms such as SPT orSteiner tree do not consider the wireless broadcast advan-tage (WBA) or the channel assignments (CA) (i.e. channeldiversity) in a MCMR WMN. The WBA refers to the factthat the delivery of a data packet from a given node toany number of its neighbors can be done with a singletransmission. Two nodes are said to be neighbors if they cancommunicate directly with one another without going throughintermediate nodes. We propose multicast routing algorithms

    that minimize the amount of network bandwidth consumedby a routing tree by taking into consideration the WBAand channel diversity. Given a MCMR network and a CAscheme, the algorithms construct multicast routing trees thatminimize the total number of transmissions required to delivera data packet from the source to all multicast destinations.Experimental results show that our routing trees outperformcommonly used/cited trees such as SPTs, MSTs and MFTs [1]in terms of packet delivery ratio, throughput and end-to-enddelay.

    The remainder of the paper is organized as follows. Wediscuss related work in Section II, and dene the problemto be solved in Section III. In Section IV, we rst describe

    the proposed algorithm and then a distributed implementationof the algorithm. Experimental results comparing the perfor-mance of the proposed routing trees with that of SPTs, MSTsand MFTs are presented in Section V. Section VI concludesthe paper and outlines our future work.

    II . R ELATED W ORK

    Research work on multicast in single-channel WMNs fo-cuses mainly on multicast routing and performance study of routing approaches [1], [2], [3], [4]. The topic of channel

    assignment and routing for multicast in multi-channel multi-radio networks has been studied only recently [5], [6], [7],[8], [9], [10], [11]. The algorithms proposed in [5], [6], [7], [8]aim at minimizing the interference among multicast nodes andmaximizing throughput using the routing rst, CA secondapproach wherein a multicast routing tree is rst constructed,and a CA scheme minimizing interference is then appliedto the tree. Using this approach, a node may have more

    assigned channels than the number of available radios, whichrequires channel switching. However, currently no channelswitching algorithm for multicast is available. Furthermore,channel switching adds considerable delay to data routing inMCMR networks [12].

    In this paper, we consider the CA rst, routing secondapproach. Given a MCMR network with a pre-determinedCA scheme and a multicast group, we construct a multicastrouting tree with a minimized number of transmissions, andthus minimize the bandwidth consumption of the tree. Ruiz etal. [1] propose algorithms that build multicast trees with min-imized numbers of forwarding nodes, and hence minimizednumbers of transmissions, in single-channel networks. Our

    proposed algorithms, on the other hand, minimize the numberof transmissions incurred by a multicast tree in a multi-channelmulti-radio network. Also using the CA rst, routing secondapproach, Lim et al. [9] consider the existing CA to minimizethe number of channel conicts within two-hop distance, buttheir algorithm requires channel switching.

    There exist also algorithms that consider both routing andCA simultaneously [10], [11]. Cheng et al.s algorithm [10]constructs a multicast tree and a CA scheme with minimizedchannel conict and minimal tree cost (dened as the totalnumber of radios used by the nodes in the tree). Chiu et al. [11]propose a CA and tree construction scheme that satises abandwidth constraint. The main limitation of the scheme isthe assumption of a perfect , no-collision MAC scheduler.

    III. P ROBLEM D EFINITION

    We consider MCMR WMNs with stationary wireless routers(nodes). Two nodes are directly connected and form a com-munication link if they are within the transmission radiorange of each other and share a common channel. We assumethat a CA scheme [12], [13], [14], [15], [16], [17], [18] isindependently applied to the network prior to the constructionof the multicast tree. We also make the following assumptions,

    IEEE WCNC 2011 - Network

    978-1-61284-254-7/11/$26.00 2011 Crown 1107

  • 7/27/2019 Algorithms for Bandwidth Efficient Multicast Routing In

    2/6

    S

    AB

    C

    D

    E

    F G

    H

    I

    JKL

    M N

    O

    3

    1

    1

    2

    3

    1

    32

    33

    1

    1 22

    3

    1

    1

    2

    3

    3

    1

    11 1

    (a) Multicast tree 1

    S

    AB

    C

    D

    E

    F G

    H

    I

    JKL

    M N

    O

    3

    1

    1

    2

    3

    1

    32

    33

    1

    1 2

    23

    1

    1

    2

    3

    3

    11

    1 1

    (b) Multicast tree 2

    Fig. 1. A network with three channels and two radios per node. Each link is labeled with the assigned channel.

    which are common constraints imposed by MCMR wirelessmesh networking.

    The channels are orthogonal (non-overlapping). The channel assigned to a link is used for transmissions

    in both directions of the link. The radio antennas are omnidirectional. For any node, the number of distinct channels assigned

    to the node is less than or equal to the number of radiosthe node possesses. As a result, each radio is bound to aspecic channel and no channel switching is needed.

    Following is an informal denition of the problem by meansof an example. A formal denition can be found in [19].

    Consider the MCMR network shown in Fig. 1. Assume thatthe network has three orthogonal channels and each node hastwo radios. Given a multicast group with source and sixdestinations , , , , and , we show two possiblerouting trees for this multicast group in Fig. 1.

    The problem focuses on the number of transmissions aforwarding node requires to multicast a packet to its one-hop

    neighbors in the routing tree. For example, in both trees, node is used as a forwarding node to deliver multicast data to

    destinations and . In tree 1 (Fig. 1(a)), has to transmittwo copies of every packet (i.e., two transmissions), one onchannel 1 to and the other on channel 3 to , which willforward the packet to . However, in tree 2 (Fig. 1(b)), needs to perform only one transmission on channel 1 to reachboth and , which will forward the packet to . This showsthat the choice of route affects the number of transmissions anode has to perform to forward a data packet.

    If we sum up the numbers of transmissions that all for-warding nodes in a routing tree need to perform to delivera packet to their multicast neighbors in , the result is thetotal number of transmissions the tree incurs to deliver apacket from the source to all the destinations, denoted by ( ). (We do not consider retransmissions caused by packet

    loss or errors.) For the example trees 1 and 2 in Fig. 1, ( 1) = 9 while ( 2) = 6 . Tree 2 is preferred because it

    requires less transmissions per packet and thus consumes lessnetwork bandwidth. Among the possible trees connecting thesource to the destinations, our goal is to nd a tree with theminimum ( ). Finding such a tree is an NP-hard problem[19]. We thus propose heuristic algorithms to nd approximate

    solutions, which constructs Multi-Channel Minimal Number of transmissions Trees (MCMNTs).

    IV. T HE MCMNT A LGORITHMS

    We present the MCMNT algorithm in Section IV-B, fol-lowed by its distributed implementation in Section IV-C. Werst dene link and path costs.

    A. Denitions of Link Cost and Path Cost Consider a connected graph = ( , ), where is the

    set of stationary mesh routers (nodes), and is the set of communication links (edges) with pre-assigned channels. Foreach node , ( ) denotes the number of links that areincident on and assigned channel . For example, for nodeA in the graph shown in Fig. 1, (1) = 0 , (2) = 1 and

    (3) = 2 . Value ( ) can be considered as the channelutilization of channel by node : the higher the value, themore neighbors can reach with a single transmission onchannel .

    Since a high channel utilization value is desirable while the

    heuristic selects paths based on minimum costs, we convertchannel utilization to a metric whose smaller values are morefavorable than higher values in order to perform least cost pathselection. In our heuristic, we take the inverse of the channelutilization value ( ) and assign it to a new channel metricdenoted by ( ) = 1 / ( ). For any link (u,v) , both

    ( ) and ( ) are greater or equal to 1, making the inversefunction always dened.

    Each directional link ( , ) is associated with a link cost( , ) dened as: ( , ) = ( )/ ( ), (1)

    where is the channel used by link ( , ). The originatingnode of the directional link ( , ) is termed the transmitter ,while the ending node , the receiver . We favor a transmitter

    with a channel highly utilized so that the channel can be usedfor as many receivers as possible in the nal tree. This explainsthe term ( ) in the link cost.

    If a link ( , ) using channel has been added to the tree,the next link ( , ) to be added should avoid using channelso that transmissions from and do not interfere becauseand are one-hop neighbors of each other. Therefore, givena transmitter and an assigned channel , we should choosea receiver whose channel is lowly utilized so that nodewill have less chance of being selected next as a transmitteron channel . Hence the term 1/ ( ) in the link cost.

    Finally, let ( , ) denote a path connecting a source toa destination . The path cost ( ( , )) of path ( , ) isthe sum of the costs of the (directional) links on the path. Let( , ) be the set of all possible paths connecting to . Theleast cost path ( , ) is dened as the path whose cost isthe lowest among all paths in set ( , ).

    B. The MCMNT Algorithm

    Given a MCMR network with pre-assigned channels, theMCMNT algorithm operates by increasing the initial solutiontree using least cost paths based on link costs. The heuristicworks in a similar manner to the Dijkstras [20] and Prims

    1108

  • 7/27/2019 Algorithms for Bandwidth Efficient Multicast Routing In

    3/6

    Algorithm 1 The MCMNT Algorithm1: Input : = ( , ); source ; destination set = { 1 ,..., }

    ;2: Output : tree connecting to with minimized ( ); set of

    forwarding nodes .3: Other global variables : current set of unconnected destinations ;

    current set of forwarding nodes ; current tree .4: Initialization : = ; = { }; = { , } ; compute the

    costs of all directional links in ;5: START6: while = do7: = NULL; {least cost path (LCP) in this round }8: ( ) = ; {cost of this path }9: = NULL; {destination of this LCP }

    {Find an unconnected destination that can be connected to the currenttree with the minimum cost. }

    10: for all nodes do11: Compute the LCP connecting to each node in using

    Dijkstras algorithm.12: Among these LCPs, select the path ( , ) with the smallest cost,

    where is some node in .{Keep ( , ) if it is better than current }

    13: if ( ( , )) < ( ) then14: = ( , ); = ;15: end if 16: end for

    { can be connected to the current tree with the minimum costamong the unconnected destinations. Add and to tree. }

    17: = { nodes and links on };18: = { intermediate nodes on };19: = ;

    {Update applicable link costs to take advantage of the WBA in thenext round. }

    20: for all link ( , ) in do21: { denotes the set of one-hop neighbors of a node .}22: for all do23: if / and ( , ) = ( , ) then24: ( , ) = 0 {link cost set to zero }25: end if 26: end for27: end for28: end while {terminates when all destinations are connected to }29: = ; = ; return [ , ];30: END

    algorithms [21] to some extent. The algorithm is summarizedin Algorithm 1 shown below. Initially, the initial solution treeconsists only the source, . Multicast destinations are thenadded to the tree one by one using the least cost path from eachdestination to the current tree (the while loop on line 6). Inparticular, for each node in the current tree , we nd theleast cost path connecting to each node in the current set of unconnected destinations using the Dijkstras algorithm(line 11). We then consider all the computed least cost paths ( , ), , , and select the path

    with the minimum cost (lines 13-14). This path and thecorresponding destination are then added to the solutiontree (lines 17-19).

    We then update the applicable link costs to take advantage of the WBA in the next round of inserting a new destination to thetree (lines 20-27). Specically, for each directional link ( , )on path just selected, and for each one-hop neighborof that currently resides outside the tree, if link ( , ) isassigned the same channel as link ( , ), we update the costof link ( , ) to zero (lines 23-24). By doing this, we increase

    the chance of link ( , ) being selected in the next round.If ( , ) is later added to the solution tree, will be ableto reach without requiring one more transmission. Theselink cost updates aim at exploiting the WBA, as suggested byWieselthier et al. [22]. The above procedure is repeated untilall the destinations are added to the solution tree. The timecomplexity of Algorithm 1 is ( 2) as proved in [19].

    C. The Distributed MCMNT AlgorithmLike the centralized algorithm, the distributed algorithm

    builds a multicast tree such that the source is connected tomulticast destinations via the least cost paths (using link costs

    ( , ) dened by Eq. (1)) and takes into account both theWBA and the underlying channel assignments. Unlike thecentralized algorithm, it uses local information only, i.e., anode uses only the information received from its neighbors. Weassume that prior to the start of the algorithm, each node hascomputed the costs of its outgoing links using Eq. (1) basedon the channel information exchanged with its neighbors.

    The algorithm works in two phases. In the rst phase, abroadcast tree containing the least cost paths from to all theother nodes in the network is constructed. In the second phase,the resulting broadcast tree is pruned to create a multicast tree.

    1) Phase I: The broadcast tree is constructed in a similarmanner to the least cost path algorithm by Chandy et al. [23],which is based on distance-vector routing [24]. It uses the thelink costs ( , ) dened by Eq. (1), which considers both theWBA property and channel diversity in the computations of path costs. Phase I requires two types of messages: EXPLOREand ACK. An EXPLORE message is a two-tuple ( , ),where is the node sending the message and is the cost of the current best path, as seen by node , from the source to sneighbor(s) that is (are) using channel . After a node broad-

    casts an EXPLORE message to its neighbors, it waits for ACKmessages from all of its neighbors, then sends its own ACKto the node(s) from which it received an EXPLORE message.The EXPLORE and ACK messages, besides propagating pathcosts, ensure that all nodes in the network are covered in theprocess of constructing the broadcast tree.

    Each node maintains the following local variables: : the cost of the current best path from the

    source to as currently seen by . : the parent node of on the best path from which

    received the cost . : the set of channels that are assigned to . For

    example, in Fig. 1(a), node M has = {1, 2}. ( ): the set of s neighbors that communicate with

    via channel . Node M above has (1) = { , , }.Phase I starts when the multicast source broadcasts an EX-

    PLORE message ( , min ( )

    { ( , )}) on every channel

    . When a node receives an EXPLORE message ( , )from a node via channel , if < , this indicates thatthe path { ,..., , } is better than the path currently buffers.Thus node sets to , and to , and then broadcasts anEXPLORE message ( , + min

    ( ){ ( , )}) on each

    1109

  • 7/27/2019 Algorithms for Bandwidth Efficient Multicast Routing In

    4/6

    channel . The function is used to exploit the WBAproperty. For example, suppose there are two link costs ( , )and ( , ) where ( , ) < ( , ), then it is sufcient fornode to reach both neighbors and at a cost of ( , ),provided that both links ( , ) and ( , ) are assigned the samechannel. This is similar to the maximum power transmissiontechnique introduced in [22]. If , then simplysends an ACK message to to indicate that has already gota path better than the path { ,..., , }.

    Phase I terminates when the source has received ACKmessages from all of its neighbors. Variable of a node thenindicates the parent of that node in the broadcast tree. Note thatloops do not exist in the resulting broadcast tree since our link costs are positive [24]. Phase I is summarized in Algorithm2 below.

    Algorithm 2 The Distributed MCMNT Algorithm: Phase I1: if receives an EXPLORE message ( , ) then2: if < then3: sends an ACK to the current , if it has not done so;4: = ; = ; {updates new and ;}5: {broadcasts EXPLORE messages to neighbors; }6: for all channel do7: broadcasts EXPLORE ( , + min

    ( ){ ( , )});

    8: end for9: else

    10: sends an ACK to ;11: end if 12: end if 13: if receives an ACK message then14: saves this ACK;15: if has received ACK from all neighbors then16: sends an ACK to ;17: end if 18: end if

    2) Phase II: The source uses the broadcast tree to notify allnodes to start the pruning process. Each multicast destinationsends a KEEP message to its parent . A node , upon receiv-ing a KEEP message from a node , records as its child,and then forwards the message to its parent. The forwardingprocess continues until the KEEP message reaches the source.Non-leaf nodes that do not receive a KEEP message aftera pre-determined period, and non-destination leaf nodes willremove themselves from the tree.

    V. E XPERIMENTAL R ESULTS

    Using the QualNet simulator version 4.0 [25], we comparethe performance of the centralized and distributed MCMNTs(C-MCMNT and D-MCMNT, respectively) with that of SPTs,MSTs [26] and MFTs. We simulate a medium-size MCMRnetwork of 100 wireless routers uniformly distributed overa 1700m 1700m area with random channel assignments.Each wireless router (node) has a transmission range of 350m.We use PHY802.11b at the physical layer with a data rateof 11 Mbits/s. The IEEE802.11 CSMA/CA protocol withoutRTS/CTS exchange is chosen as the multicast medium accesscontrol protocol. At the transport layer, we do not use anyow or congestion control mechanisms in order to test thenetwork performance under very high loads. The packet size

    excluding the headers is 512 bytes. The multicast group hasone source placed at the center sending data at a constantbit rate (CBR), while the destinations are randomly scatteredaround the network. (Destinations are wireless routers of theWMN backbone.) In each experiment, the source transmits ata specied CBR for 600 seconds of simulated time. Each datapoint in the graphs is averaged from ve runs using differentrandom seeds and plotted with a condence interval of 95%.

    For each type of tree, we measure the total number of trans-missions per packet ( ) (as dened in Section III), averagepacket delivery ratio (PDR), average throughput, and averagepacket end-to-end delay (averaged over all destinations) asfunctions of

    multicast group size . The number of multicast destina-tions varies from 20 to 80 nodes. The number of radiosper node and the number of available channels are set to3. The source transmits at a rate of 200 packets/s.

    multicast trafc load . The multicast source rate at theapplication layer varies from 100 to 300 packets/s . Thenumber of channels is 3 and the group size is 40.

    number of channels . The number of channels is set to 1,3, 5, and 7. The group consists of 40 destinations and themulticast rate is set to 200 packets/s.

    The graphs in Figs. 2, 3, and 4 show that in most cases theC-MCMNT and D-MCMNT trees give similar results. In thefollowing discussion, we treat both types of MCMNTs as one.

    A. Function of Group Size

    The graph in Fig. 2(a) conrms that the MCMNTs requirethe least numbers of transmissions, followed by the MFT,MST and SPT in that order. For example, the number of transmissions incurred by the MCMNTs in the 80-destinationtrees are about 22%, 42% and 42% less than by the MFT, MST

    and SPT, respectively. For all types of trees, as the group sizeincreases, more forwarding nodes are added and the numberof transmissions per packet goes up, as expected.

    The graph in Fig. 2(b) shows that the MCMNTs offer thehighest PDRs in all cases. For instance, the MCMNT PDRs are12%, 17%, and 40% higher than those of the SPT, MST andMFT, respectively, when there are 20 destinations. The perfor-mance gap between the MCMNTs and the MST/MFT narrowsdown as the group size increases. However, the MCMNTPDR is still signicantly higher than the PDRs of the othertrees. In Fig. 2(c), a similar trend is observed for the averagethroughput. For example, for a group of size 20, the MCMNTsoffer 15%, 19% and 85% higher throughputs than the SPT,MST and MFT, respectively. When a forwarding node usesless channels (i.e., less transmissions) to multicast a datapacket, that reduces the probability of packet collision withthe packets its neighboring nodes transmitting on s unusedchannels. That explains the higher PDRs of the MCMNTs.

    The MCMNTs also incur the lowest end-to-end delay inmost cases, as shown in Fig. 2(d). When a forwarding nodeuses more channels to multicast a data packet, more neighbor-ing nodes may have to defer their transmissions if they alsouse the same channels, resulting in higher packet end-to-end

    1110

  • 7/27/2019 Algorithms for Bandwidth Efficient Multicast Routing In

    5/6

  • 7/27/2019 Algorithms for Bandwidth Efficient Multicast Routing In

    6/6