AGSMR: Adaptive Geo-Source Multicast Routing ... - Semantic Scholar

2 downloads 306 Views 333KB Size Report
Computer Science and Electrical Engineering. University of Missouri ... multicast routing path at a multicast source node (or rendezvous point. (RP)) rather than ... build large self-organizing wireless sensor networks (WSNs). The sensor nodes.
AGSMR: Adaptive Geo-Source Multicast Routing for Wireless Sensor Networks Sejun Song†, Daehee Kim†, and Baek-Young Choi‡ †Dept. Electrical and Computer Engineering Wichita State University Wichita, KS {sejun.song,dxkim3}@wichita.edu ‡Dept. Computer Science and Electrical Engineering University of Missouri Kansas City, MO [email protected]

Abstract. We propose Adaptive Geo-Source Multicast Routing (AGSMR) for WSNs. It addresses the scalability issue of previous location based stateless multicast protocols in WSNs. AGSMR is a novel stateless multicast protocol that optimizes the location-based and source-based multicast approaches in various ways. First, it saves the cost of a tree building by using receiver’s geographic location information during the receiver’s the membership establishment stage without flooding. Second, it decreases computation time, in turn, energy usage by determining the multicast routing path at a multicast source node (or rendezvous point (RP)) rather than calculating and selecting neighbors at each forwarding node. Third, it reduces packet overhead by encoding with a small node ID instead of potentially large location information, and by adaptively using branch geographic information for common source routing path segments. Key words: Wireless Sensor Network, Geographic Multicast, Source Multicast

1

Introduction

The marriage of wireless communication and sensing technology into a selfpowered, low-cost, and tiny processing node provides an enabling method to build large self-organizing wireless sensor networks (WSNs). The sensor nodes can be deployed randomly close to or inside of the terrain of interest to create a cooperative and self-organizing wireless ad hoc network. The sensed data and control messages are exchanged between sensor nodes and the control (sink) nodes relayed by the neighbor nodes via a multi-hop routing protocol. Applications of WSN are countless including environmental monitoring, industrial monitoring and control, and military surveillance to name a few. To build practical services over WSNs, especially considering that sensor nodes’ limitations in power, computation, and local storage, it is both critical and challenging to support network communications efficiently. Multicast routing

is one of the most promising and essential routing services, as it provides an efficient means of distributing data to multiple recipients to minimize the network resource consumption using in-network duplication. In fact, many WSN applications such as mission assignment, configuration update, and phenomenon report are one-to-many group communication scenarios between sensor nodes and a sink node. Various tree-based multicast algorithms including MAODV [12], ADMR [8], ODMRP [9], AMRoute [15], AMRIS [14], and PAST-DM [6] have been developed for the traditional wireless ad hoc networks and have evolved in support of WSNs. However, those traditional multicast routing techniques are designed as controlcentric approaches focused on solving the mobility issues under the assumption of enough processing and local storage capacity on each node. They maintain a forwarding table on each node through a multicast routing tree for a group. The distributed group forwarding states should be updated via periodic control flooding messages. Due to the capacity limitations on sensor nodes, they may not be the most efficient choice for WSNs. Several location-based multicast protocols such as DSM [1], PBM [10], and LGT [2] have been proposed to perform a centralized membership management on a multicast root instead of distributed states. The multicast root builds a multicast tree using the locally maintained network topology information, and encodes the tree information into the packet header. The forwarding nodes relay the packet according to the tree path information carried by the packet header. Although the stateless multicast protocols are considered to be better than stateful distributed tree based protocols, those stateless multicast protocols are not suitable for the large-scale networks due to the packet encoding constraint and flooding based location exchange. Recently, various enhanced approaches such as GMR [7], HGMR [3], and HRPM [4], SPBM [13] have been proposed to resolve those WSN multicast issues. However, carrying all the group locations and the forwarding neighbor information in each data packet and calculating the next forwarding neighbors on each node, still cause scalability and performance problems. In this paper, we present Adaptive Geo-Source Multicast Routing (AGSMR) protocol for WSNs. AGSMR is a novel stateless multicast protocol based on path information that optimizes the previous location-based multicast approaches in various ways. The unique contributions of the proposed protocol are as follows. 1) It builds a common path multicast tree during the group membership establishment period. This on-demand approach reduces the location flooding overhead of the network topology maintenance on each node. 2) It decreases the computational overhead of each forwarding node such as the forwarding decision and packet de/encoding, with simple serialized path information. 3) It reduces the packet encoding overhead by adaptively using geographic unicast and source multicast. Geographic unicast is more efficient for long non-branching path segments, and source multicast is desirable with branching path segments. 4) It further decreases the packet header size by using the multicast packet with a small node ID instead of potentially large position information.

The rest of the paper is organized as follows. Section 2 describes the AGSMR protocol. Section 3 evaluates AGSMR, and compare with GMR and SMR in various scenarios. Section 4 offers the conclusions and future work.

2

Adaptive Geo-Source Multicast Routing

In this section, first we give a brief background on two types of stateless multicast routing algorithms which we compare the performance of the proposed AGSMR with. We then provide an overview of AGSMR, and describe the proposed AGSMR for the following three main issues: 1) construction of a multicast tree, 2) state information encoding, and 3) forwarding methodology. 2.1

Background

The proposed AGSMR is a hybrid of geographic multicast routing (GMR) and source based multicast routing (SMR) approaches. Thus we provide a brief background on the algorithms. GMR assumes a centralized membership management at the multicast root like other stateless protocols. However, it does not build an entire multicast tree on the root. The root node only selects a subset of its neighbors as forwarding nodes to the destinations according to the cost and progress ratio and it encodes selected neighbor IDs and a list of the destination sensor locations into the data message header. The message is broadcasted to all the neighbor nodes. Upon receiving the message, the selected forwarding nodes calculate a subset of its neighbors again, which eventually propagates multicast packets to the destinations. Each forwarding node performs approximately O(min(neighbors, destinations)3 ) calculations to select forwarding neighbors. SMR constructs a multicast tree on the root node based upon either the entire network topology or the partial path information for the destinations. For example, DSM assumes each node has an entire network topology by location flooding. The source node locally computes a Steiner tree for the multicast group. It encodes the tree path information (node IDs) by using Pr¨ ufer sequence [5] to the packet header. The packet is broadcasted to all the neighbor nodes. Upon receiving the packet, each child node, which is inside of the tree path, creates a subtree, encodes its Pr¨ ufer sequence to the header, and relays the packet to its children until the subtree path reaches the end of the tree path. The subtree encoding complexity is O(path node3 ) on each child node. 2.2

Overview of AGSMR

AGSMR addresses the scalability issues of geographic routing and source based routing. It constructs a multicast tree on the root node based upon path information for the destinations. Instead of maintaining entire network topology on each node via location flooding, the path information is sent to the source node through the group management scheme. Each join request message carries its

path information in addition to the location information. For example, when a member node joins by using geographic unicast, the source receives the reverse geographic shortest path information to the destination. According to the path information of each destination, the source builds a multicast tree with common path segments among the destinations. It encodes the multicast tree into the packet header by using LCRS (Left Child Right Sibling) binary tree [11], that serializes the subtree path information. To optimize the encoding size, it identifies long non-branching routing path segments and uses the branch locations for the source routing information instead of many node IDs along the path. Each forwarding node uses geographic unicast to the next branching node, if the next node is provided by location information. If the next node is given by the node IDs, a forwarding node relays the subtree path segment information to the neighbor nodes. In this case, there is no additional calculation overhead except the simple packet truncation for the next subtree.

2.3

Construction of Multicast Tree

In constructing a multicast tree, AGSMR does not assume every node has others’ location information. That is, unlike dynamic source multicast routing, flooding of the location information among the nodes is not required. In our scheme, path information is created on-demand during the join stage in the request message. Then the source builds a multicast tree based on the received path information in O(path). Intermediate nodes keep states only during the join stage temporarily, and do not need any state for forwarding. The small temporary states on intermediate nodes enable the source to make compressed path information to destinations. The scheme works as follows. First a destination node, dst sends a join message, join msg, toward the source, src. The message is sent only to next hops that are closer to src. Intermediate nodes keep simple information of [dst, hop cnt] in a table called MState. dst is a destination node ID whose path to src goes through the intermediate node, and the hop count, hop cnt from itself to the destination down the path, i.e., [dst, hop cnt]. When a join msg message arrives at an intermediate node, if dst is already recorded on the MState of the intermediate node and the number of hops down the path to the member is smaller than the new message, then the join message is dropped. Otherwise the state of [dst, hop cnt] is updated or added in MState. A join msg includes path segments so far, and the number of destinations that use the intermediate nodes on their paths to the src (e.g. [< n1 − n2 >: 3dsts, < n2 − n3 >: 4dsts]). Once the join msgs are received, the src computes a multicast tree starting with a path segment that is used by the highest number of destinations, until it includes all the destinations. The algorithms used in the intermediate nodes and source are depicted in Algorithms 1 and 2, respectively.

MState: multicast state table, contains dst and hop cnt pairs ; if join msg ∈ M State then if hop cnt < M State(dst) then MState(dst) := hop cnt; Add the path segment information to join msg; Send the join msg to prog next hops toward src; end end else Add [dst, hop cnt] to M State ; Add the path segment information to join msg ; Send the join msg to prog next hops toward src ; end Algorithm 1: Group Management at Intermediate Nodes D: the set of destinations; while Set of dsts, D 6= ∅ do Send mcast data onto a path that includes the most number of dsts; Remove dsts from D; end Algorithm 2: Multicast Path Selection at Source node

2.4

State Information Encoding & Forwarding Methodology

The source node creates a serialized path into the packet header by using the common paths of a multicast tree. First, the encoding algorithm translates the original n-ary multicast tree to a LCRS (Left Child Right Sibling) binary tree. Starting from the original root node, each node’s leftmost child in the original tree is made its left child in the binary tree, and its nearest sibling to the right in the original tree is made its right child in the binary tree. Second, a serialized path information is created by walking along the LCRS binary tree in the order of ’sibling first, then child node.’ Figure 1 illustrates an example to show how to translate the original spanning tree into the LCRS binary tree. By walking through the LCRS, the serialized path {d,i,j,e,f,g,h,a,c,b} is created. The state information is encoded as a ’serialized path,’ that is consecutive data of the same size (given as 2 bytes) information block. The block can be a node ID, a location coordinate, and a delimiter. A 2-byte delimiter can be distinguished from other information blocks by setting 1 in the most significant bit. Each delimiter has two 7-bit offsets. The node ID block can be identified by setting 00 in the left 2 bits. With a 2 byte information block, the maximum number of node IDs can be about 16K (use only 14 bits). Branch delimiters are inserted next to the original tree branches’ serialized path to indicate the original tree’s sibling relationship (the subtree information for each sibling node). The root node broadcasts the multicast packet after encoding the final serialized path into the packet header. When the multicast packet is received at a forwarding node, the node selects the serialized path for its own subtree according

Fig. 1. Multicast Tree, LCRS Binary Tree, and a Serialized Path

to the branch delimiter information. The delimiter format is shown in Figure 2. Figure 3 illustrates how to utilize the serialized path information along the R to h forwarding track. For example, node d can make a new serialized path for its subtree by checking the offset from the first delimiter (R).

Fig. 2. 2 bytes Delimiter Format

A longer non-branching path segment can be identified during the serialized path creation. The serialized path can be minimized using the location information (i.e., x and y coordinates) instead of putting the entire path node IDs. If a forwarding node finds the location information (delimiter value is 01) in the serialized path, it uses geographic unicast. Although it requires computations to find the next neighbor, geographic unicast algorithm complexity is very low unlike the original geographic multicast. In the example shown in Figure 4, there is a long (n nodes) non-branching path segment between node e and h. The serialized path segment size is represented by only 2 bytes, thus the information is reduced by 2(n − 2) bytes resulting in a huge saving of packet size along the path. Comparing with the pure source multicast scenarios of the spanning tree with n number of nodes, the encoding ratio (n − 2) of the Pr¨ ufer sequence

Fig. 3. R-h path Forwarding

algorithm used in DSM can be better than our RSLC based serialized path encoding algorithm (n - 1 + # of branch delimiters). However, comparing with the geo-source multicast with several long paths, our algorithm is comparable to the Pr¨ ufer sequence algorithm. Furthermore, our algorithm is designed to have less computation overhead on the forwarding node. The computation complexity of our algorithm is O(1) while Pr¨ ufer sequence algorithm has O(n2 ).

Fig. 4. Geo-Source Multicast Forwarding

3

Performance Evaluation

In this section, we evaluate and compare the performance of AGSMR with GMR and SMR. To verify the efficiency, we have implemented AGSMR in ns2 (v2.33) simulator and compared with GMR and SMR. In the network setting, we use a grid topology and the maximum number of neighbor nodes is fixed as 12 nodes (fixed signal length). We assume no packet loss due to the packet collision. We use metrics of total packet size and computation time for the various system settings.

The simulations were performed with 50 iterations for each system setting. The locations of a source and destinations are chosen randomly. We assume that the location coordinate of a node is 2 times bigger than the node identification.

10000

Total Packet Sizes ( bytes )

9000 8000 7000 6000 5000 4000 GMR SMR AGSMR

3000 2000 1000

(a) Packet size vs. # of destinations

0

500 1000 1500 2000 Network Size ( number of nodes )

2500

(b) Packet size vs. network size

Fig. 5. Packet size overhead

We first evaluate the packet processing overhead on each multicast forwarding node. To see the overall system efficiency and scalability we use total packet size that is the accumulated packet usage of the entire multicast tree nodes. Figure 5 (a) shows the total packet sizes with varied number of destinations. The percentages of destinations are from 1% to 30% of the fixed network size (1024 sensor nodes). The results depict that AGSMR has smaller total packet sizes than other protocols, as it minimizes the packet size for the non-branching path nodes. Meanwhile, the total packet size of GMR is always bigger than others, as GMR encodes its multicast packet with the destination locations. SMR’s total packet size is larger than AGSMR’s, because SMR encodes the packet with entire multicast path node ID. Figure 5 (b) depicts the total packet sizes with varied network sizes. The network size ranges from 100 to 2000 while the destination number is fixed as 30 nodes. The results illustrate that the total packet size of GMR is bigger than that of SMR in the smaller network size, but SMR’s packet size becomes bigger in case of the larger network size. It is because that SMR is more sensitive to the network size than other protocols, as SMR encodes the packet with the path information. Meanwhile, AGSMR has smaller total packet size and is less sensitive to the network size than other protocols, as it has more chance of having longer non-branching paths. Both Figure 5 (a) and (b) show that the total packet size of AGSMR is less than other protocols in the condition of the larger network with more destinations. It indicates that AGSMR is more scalable than other protocols, as it spends less sensor node resources (i.e. energy) to transmit a multicast packet. Next, we measured the computation time on each forwarding node that is used to process the incoming packet, in order to calculate the next forwarding

(a) Computation time vs. # of destinations (b) Computation time vs. network size Fig. 6. Comparison of computation time

neighbors, and prepare the corresponding packet to forward. To see the overall system performance we use the average computation time which divides total accumulated time by the number of nodes in the multicast tree. Figure 6 (a) shows the average computation time with varied number of destinations. The percentages of destinations are from 1% to 30% of the fixed network size (1024 sensor nodes). The results show that GMR spends much higher computation time than other protocols and the time difference becomes bigger according to the increment of the number of destinations. It is because GMR calculates the next forwarding neighbors on each forwarding node and the algorithm complexity is increased according to the number of destinations. Meanwhile, in both SMR and AGSMR, the average computation time is minimal regardless of the number of destinations, as there is no need for the next forwarding node calculation. For the larger number of destinations, the computation time of ASGMR is slightly higher than that of SMR due to the geographic unicast calculation. Figure 6 (b) shows the average computation time with varied network sizes. The network size is varied from 100 to 1024, while the number of destinations is 30% of the network size. The results depict that GMR spends much higher computation time than other protocols, but the time difference is bounded and not proportional to the increment of the network size. Both SMR and AGSMR spend minimal computation time and have little dependency on the network size. Figures 6 (a) and (b) indicate that AGSMR’s computation time is much less than GMR’s, its geographic unicast routing computation overhead is minimal, and its average computation time is as good as SMR.

4

Conclusions and Future Work

We have presented a novel stateless path information based multicast protocol called AGSMR (Adaptive Geo-Source Multicast Routing) for WSNs. AGSMR

optimizes the previous location-based multicast approaches providing unique features including on-demand path information based tree construction, lightweight forwarding, adaptive usage of geographic unicast and source multicast, and enhanced state encoding capability. Our analysis and simulation results show that AGSMR outperforms GMR in computation time and packet overheads while maintaining the advantages of stateless protocols. Our future work includes two main directions. First, we are working on a structural extension of the proposed algorithm such as supporting hierarchical approaches. Second, we plan to investigate the reliability issues of the proposed multicast protocol.

References 1. S. Basagni, I. Chlamtac, and V. Syrotiuk. Location aware, dependable multicast for mobile ad hoc networks. Computer Networks, 36:659–670, August 2001. 2. K. Chen and K. Nahrstedt. Effective location-guided tree construction algorithms for small group multicast in manet. In IEEE INFOCOM, June 2002. 3. Y. C. Hu I. Stojmenovic D. Koutsonikolas, S. Das. Hierarchical geographic multicast routing for wireless sensor networks. In SENSORCOMM, 2007. 4. S. M. Das, H. Pucha, and Y. C. Hu. Distributed hashing for scalablemulticast in wireless ad hoc networks. IEEE TPDS, 19(3):347–361, March 2008. 5. Jens Gottlieb, Bryant A. Julstrom, G¨ unther R. Raidl, and Franz Rothlauf. Pr¨ ufer numbers: A poor representation of spanning trees for evolutionary search. In the Genetic and Evolutionary Computation Conference (GECCO), 343–350, 2001. 6. C. Gui and P. Mohapatra. Differential destination multicast-a manet multicast routing protocol for small groups. In IEEE WCNC, March 2003. 7. X. Liu J. Sanchez, P. Ruiz and I. Stojmenovic. Gmr: Geographic multicast routing for wireless sensor networks. In IEEE SECON, 2006. 8. J. G. Jetcheva and D. B. Johnson. Adaptive demand-driven multicast routing in multi-hop wireless ad hoc networks. In ACM MobiHoc, October 2001. 9. S.-J. Lee, M. Gerla, and C.-C. Chiang. On-demand multicast routing protocol. In IEEE WCNC, September 1999. 10. M. Mauve, H. Fuessler, J. Widmer, and T. Lang. Positionbased multicast routing for mobile ad-hoc networks. University of Mannheim, CS TR-03-004, 2003. 11. NIST Dictionary of Algorithms and Data Structures. Left child right sibling tree. http://www.itl.nist.gov/div897/sqg/dads/HTML/leftChildrightSiblingBinaryTree.html. 12. E. M. Royer and C. E. Perkins. Multicast operation of the ad-hoc on-demand distance vector routing protocol. In MobiCom, August 1999. 13. M. Transie, H. Fuler, J. Widmer, M. Mauve, and W. Effelsberg. Scalable positionbased multicast for mobile ad-hoc networks. In International Workshop on Broadband Wireless Multimedia: Algorithms, Architectures and Applications (BroadWim), October 2004. 14. C. Wu and Y. Tay. Amris: A multicast protocol for ad hoc wireless networks. In MILCOM, Nov. 1999. 15. J. Xie, R. R. Talpade, A. Mcauley, and M. Liu. Amroute: ad hoc multicast routing protocol. Mobile Networks and Applications, 7(6):429–439, 2002.