Transcript Document
An Enhanced Top-Down Cluster and Cluster Tree Formation Algorithm for Wireless Sensor Networks H. M. N. Dilum Bandara, Anura P. Jayasumana [email protected], [email protected] Department of Electrical and Computer Engineering, Colorado State University, USA. ICIIS 2007 - Peradeniya, Sri Lanka 1 Outline Wireless Sensor Networks (WSN) Motivation GTC – Generic Top-down Clustering algorithm Control of cluster & cluster tree characteristics Simulation results Simulator Conclusions & future work ICIIS 2007 - Peradeniya, Sri Lanka 2 Wireless Sensor Networks (WSN) ICIIS 2007 - Peradeniya, Sri Lanka 3 Clustering e-SENSE project Underwater Acoustic Sensor Networks project [1] H R T I B G Q J A P A C F U [2] K B D C E G F D E L H I O J K L M P O Q M U Plume tracking ICIIS 2007 - Peradeniya, Sri Lanka [1] www.ist-esense.org [2] http://www.ece.gatech.edu/research/labs/bwn/UWASN/work.html 4 R Motivation Some structure is required in future large scale WSNs, even if they are randomly deployed An algorithm that is independent of Neighbourhood information Location awareness Time synchronization Network topology Top-down clustering allow better control Ease of administration Better utilization of resources Simplified routing Controlled cluster size, controlled tree formation, hierarchical naming, etc. An algorithm that supports the existence of multiple WSNs in the same physical region ICIIS 2007 - Peradeniya, Sri Lanka 5 Generic Top-down Clustering (GTC) algorithm Form_cluster(NID, CID, T, N, MaxHops, TTL) { Wait(T) Broadcast_cluster(NID, CID, MaxHops, TTL) ack_list ← Receive_ack(CNID, hops, timeout, P1, P2) For i = 1 to N { CCHi ← Select_candidate_CH(TTL, ack_list, P1, P2) CIDi ← Select_next_CID() Ti ← Select_delay() Request_form_cluster(CCHi, CIDi, Ti, N, MaxHops, TTL) } } Join_cluster() { Listen_broadcast_cluster(NID, CID, MaxHops, TTL) If(hops ≤ MaxHops & MyCID = 0) MyCID ← CID, MyCH ← NID Send_ack(CNID, Hops) TTL ← TTL -1 If(TTL > 0) Forward_broadcast_cluster(NID, CID, MaxHops, TTL) Else { Listen_form_cluster(CCH, CID, T, N, MaxHops, TTL, timeout) Form_cluster(CCH, CID, T, N, MaxHops, TTL) } } ICIIS 2007 - Peradeniya, Sri Lanka 6 Cluster formation C4 C2 C1 C3 Form_cluster(NID, CID, T, N, MaxHops, TTL) { Wait(T) Broadcast_cluster(NID, CID, MaxHops, TTL) ack_list ← Receive_ack(CNID, hops, timeout, P1, P2) For i = 1 to N { CCHi ← Select_candidate_CH(TTL, ack_list, P1, P2) CIDi ← Select_next_CID() Ti ← Select_delay() Request_form_cluster(CCHi, CIDi, Ti, N, MaxHops, TTL) } } Join_cluster() { Listen_broadcast_cluster(NID, CID, MaxHops, TTL) If(hops ≤ MaxHops & MyCID = 0) MyCID ← CID, MyCH ← NID Send_ack(CNID, Hops) TTL ← TTL -1 If(TTL > 0) Forward_broadcast_cluster(NID, CID, MaxHops, TTL) Else { Listen_form_cluster(CCH, CID, T, N, MaxHops, TTL, timeout) Form_cluster(CCH, CID, T, N, MaxHops, TTL) } } ICIIS 2007 - Peradeniya, Sri Lanka 7 Cluster tree formation Cluster tree is formed by keeping track of parent & child relationships C4 C1 C2 C1 C5 C3 C3 C2 ICIIS 2007 - Peradeniya, Sri Lanka C6 C7 C4 C8 C9 C10 8 Control of cluster & cluster tree characteristics By varying parameters of the algorithm clusters & cluster tree with desirable properties can be achieved Parameters that can be varied MaxHops – Maximum distance to a child node within a cluster TTL – No of hops to propagate the cluster formation broadcast N – No of candidate cluster heads Ti – Time delay before forming cluster i CIDi – New cluster ID ICIIS 2007 - Peradeniya, Sri Lanka 9 Controlling MaxHops & TTL MaxHops determine the size of a cluster MaxHops = 1 – Single-hop clusters MaxHops ≥ 2 – Multi-hop clusters Two variants of the GTC algorithm 1. Simple Hierarchical Clustering (SHC) 2. TTL = MaxHops New clusters heads are selected from nodes that are within the parent cluster This is similar to the IEEE 802.15.4 clustering Hierarchical Hop-ahead Clustering (HHC) TTL = 2 × MaxHops + 1 New clusters heads are selected from nodes that are outside the parent cluster ICIIS 2007 - Peradeniya, Sri Lanka 10 Ideal SHC & HHC clusters 7 CID 9 CID 6 CID 5 3 CID 1 5 9 CID 5 CID 1 4 CID 10 CID 7 CID 8 CID 2 2 5 1 7 10 10 2 12 13 8 CID 9 CID 3 CID 2 CID 8 CID 3 9 6 11 CID 7 CID 4 SHC – Simple Hierarchical Clustering MaxHops = TTL = 1 N = 3 1 3 4 11 CID 6 CID 4 CID 10 6 7 12 HHC – Hierarchical Hop-ahead Clustering MaxHops = 1 TTL = 3 N = 6 ICIIS 2007 - Peradeniya, Sri Lanka 11 Controlling time delay (T) Each candidate cluster head waits sometime before forming a cluster This delay prevents collisions By varying time delay shape of the cluster tree can be controlled Breadth-first, depth-first or some scheme in between 5 2 3 9 10 11 4 4 6 7 8 1 5 14 15 3 … … … … … 28 (a) Breadth first cluster formation 7 8 9 12 10 11 2 13 1 C2 12 13 6 C3 … … … … … … TL(i)<TL(i+1) ICIIS 2007 - Peradeniya, Sri Lanka … 14 15 16 … 17 … (b) Depth first cluster formation TB(i)<TB(i+1) 12 New cluster ID New cluster ID can be assigned as a sequence of numbers – 1, 2, 3 based on node ID of the candidate cluster head CID = NID Root node must assign cluster ID Parent cluster heads can assign cluster ID 0 based on hierarchical naming Parent cluster heads can assign cluster ID Simplified routing Much easier with the top-down approach 000 ICIIS 2007 - Peradeniya, Sri Lanka 00 10 100 010 20 110 020 13 Simulation Results ICIIS 2007 - Peradeniya, Sri Lanka 14 Simulator A discrete event simulator was developed using C Nodes were randomly placed on a 100×100 square grid with a given probability e.g. 1, 0.5 & 0.25 100 sample runs based on pre-generated networks were considered N was selected such that N=3 for SHC & N=6 for HHC Circular communication model Within clusters - Multi-hop Cluster head to cluster head - Single-hop Assumptions Nodes were homogeneous Stationary Fixed transmission range ICIIS 2007 - Peradeniya, Sri Lanka 15 Physical shape of the clusters . l l . . . h h . . . . h . L h $ K . h.. . K K . K K K H H H . H . H . H H H . H . . H . . H H H H . . . H . . . f.. . I I I . . . . . I . . I f . I . . c ? ? d ? . . ? ? . ? ? . . j . + . j j $ L + l.L L L L . . . . . . . K E . K j.E . . . K $.L.. . K . . . K . E . . . H K.. . H . . . . . . E . 7 . H 6 6 6 H H.. . . H 6 . . 6 H . . . . . 6 . . 6 H . . 6 6 . 6 . . . . . . . . I I I.. 6 . . c.. I I I . . . I I I . I I . . d.. ?.. . c c . d ?.. d . d . d . d . d d . ? . . . . + + + + + ! . < . & - . . ? + . . + + + & < < < W . . . . L + . + + - . W . . ?.. . . . L + . + W . !.. . . . . . +.. E E . . . . <.. . . . 7 . 5 5 . . 5 5 . <.< . . . 7 . . 5 5 5 . . . . W.. . . . . 5 5 . 5 5 5 . 5 B B . . 7 E.. 5 . . . . G.. . B B . 5 . 7.. 2 5.. . 5 F.. . B . 2 . . . . . 2 . 2 . 4 . B.4 . 2 . . 1 1 . . 1 1 1 . . . . . 2 . 1 1 1 1 . 1 . 1 . . . . . 1 2.. . 1 1 1 . 1 . 4 . 2 2 . 1 1 . 1 1 1 4.. . 3 . . . . 1 . . 1.. 1 . . 1 3 6.. . . 1 1 1 1 1 1 . 1 A.. 6 . 2 1 . . 1 1 . . 1 1 . . . 6 6 1 1 1 1 1 1 1 3.1 . 3 . 6 6 . 1 1 . 1 . 1 . 3 . . . 6 . 6 . . 3 . 3 . 3 . . . 6 I . . 8 . 3 3 8.3 . . . . . I P . . 8 8 . 3 . 3 . . . I . P P 8 P.. 8 8 8 3 . . . . P P . 8 8 8 . . 8 8 . O.. c . . P N . . 8 . N.. . . 9 d . . P P N N . 8 . N N . . . d P u.P . . . N N N . N N d . . . q N q.N N . . . . N . u . q p p N N N p.. . . R ? ? . . . ? ? ? ? ? ? ? . . . ? . . ? ? . . ?.. . ?.? ? W ?.. . ? . ? W . . . . . . B . Y Y . . . . . B Y ?.Y Y B . . C ?.?.. . . . *.. . . . . . Y.C . X 4 . B C . T . C.A X.. C . U 4 T.. . C S . . . A C C S S . . U.. C S S . . . A S . . 3 . . S.. S . . 3 . 9 9 S . 3 9 9 9 9 . S 3 9 . . 9 S . 9.. . 9 9 9 Q . . 9 . . Q Q 9 . 9 . . . . . . . . 9 . Q 9 . . Q.Q . . R.. . . Q . . O . O . . . . O O . . . Q . . Q Q Q Q Q . . . . . . . ?. Y . . . . X Y . S S S . S . . . Q . . Q . . . . . f . Q Q . . . Q Q . ? . . . T . T T T . . . W . W W W W f . f . . Q Q Q Q Q . Q ? T T T T . . . T . . . . . W . W W f . f . . f f.E . f Q E . . . . Q . . E Q Q Q E . . Q E Q . Q.. Q Q . 6 Q . Q 6 Q Q . . . . . 6 ?.. Q 6 . T T . . T T . T T . . . . T . T T.. . . . T . . . . . T T T T . . . T Z . Z . Z W Z.Z W W . . W W . . W . W W . . W . . W.. W . W . . E E E . E . E . . . . . 6 . . . . A . . . . . . W W . W W . . E E . . . . . . . . 6 6 . 6 . A A . . A A . Z . W W . . . E E . . . E E . 6 6 6 . . . . . A A . . . A . Z . 8 8 . 8 . E E E . . E E E . . E E E.. E . E E . . E . 6 6 6 . 3 . 6 . . . . 6.. . . 6 . . . 1 6 6 . . . . . . . . A.1 A A 1 A A . A . 2 A . . . A . . 2 2 8 8 . . . 2 . . 2 8 8 8 . . . 8 . 8 (a) SHC clusters E F E E E E . E E . . . 3 3 . 3 . . 3 3 . . 1 1 1 1 1 . 1 1 1 . 1 1 . . 1 1 1 1 . . 2 . . 2 2 2 2 2 2 . 2 2 2 . 8.8 8 8 . F . F F F F F F.. F . F . 3 . . . . 3 3 3 . 3 . . . . 3 3 . 3 . . 3.. . . 3 3 3 . 3 . . . 1 1 1 1 . 1 . 1 1 1 . 1 1 1 . 1.. 1 1 1 1 1 1 1 . . 1 1 1 1 . 1 . 1 2 . 2 . 2 2 2 2 2 . 2 . . 2.2 2 2 . . 2 . 2 . 2 2 . 2 . . . 2 2 8 2 8 . 8 8 8 D F F . . . 3 3 3 . . 3 1 . . 1 . . 1 1 . 2 . 2 2 2 . 2 2 . . . . F . . . . 3 3 . . . 1 1 . . 1 1 1 4 . . . . . . 2 . . . l l . . . . . . 3 3 3 . . . . 1 4 . . . . . . . D . . D . . l.I . . I I . . I . . I I I I . I.. . I . . . . . G . . . . G . . . G . . G G G G G G . . 4 . . . . . . 4 . 4 . 4 . 4.4 . 4 4 . 4 . . . . . 4 . . . . D D . . D . D D . D.D D D . D . . I I . . . . . . . . I I G I . G . G . G G G G.. . . G G 4 . . 4 . 4 . 4 4 4 . . . 4 4 . 4 . . . . D . . D . . . D D . x x . x.. . . I x . . I v v . I . v . . . . . . . . v I v v v. G G . . . . . . G . G . . G . . G . G G G G . O G G G . G G G O 4 . . O. . O . O 4 O . . 4 . O O 4 O . . 4 ! ! . . ! !.. . . . ! ! . ! . ! . . . ! . . ! . . . . . a . . a a.. . Grid size = 30×30 D = 450 R = 30 For (a): MaxHops = 1 TTL = 1 N= 3 For (b): MaxHops = 1 TTL = 3 N= 6 * CHs are indicated by circles (b) HHC clusters * Cluster heads are highlighted with circles HHC produce more circular & uniform clusters ICIIS 2007 - Peradeniya, Sri Lanka 16 Why clusters needs to be circular? Efficient coverage of the sensor filed[3] Minimum number of clusters Reduce the depth of the cluster tree Better load balancing Topology becomes more predictable Reduce intra-cluster signal contention Aggregation is more meaningful when cluster head is in the middle Measuring circularity Maximum Achievable Circularity (MAC) MACi = No of nodes in cluster i ×100 Total no of nodes in the range of CHi ICIIS 2007 - Peradeniya, Sri Lanka 17 [3] M. Demirbas, A. Arora, V. Mittal and V. Kulathumani, “A fault-local self-stabilizing clustering service for wireless ad hoc networks”, IEEE Trans. Parallel and Distributed Systems, vol. 17, no. 9, Sept. 2006, pp. 912-922 Circularity 80 SHC-Cir HHC-Cir SHC-STD HHC-STD 70 Circularity / STD 60 50 40 30 20 10 0 12 15 18 21 24 27 30 Communication range MaxHops = 1, 5000 nodes HHC produce more circular clusters than SHC ICIIS 2007 - Peradeniya, Sri Lanka 18 No of nodes/Clusters 3000 2500 2000 HHC produces lesser number of clusters HHC produces much larger clusters than SHC High STD in HHC is due to smaller clusters at the edge of the sensor field Larger clusters are formed as the communication range is increased 1500 1000 500 0 12 15 18 21 24 27 30 Communication range 25 SHC - Ave. cluster size HHC - Ave. cluster size SHC - STD HHC - STD 20 Average cluster size / STD Number of clusters / Cluste heads SHC HHC 15 10 5 0 12 15 18 21 24 27 30 Communication range MaxHops = 1, 5000 nodes ICIIS 2007 - Peradeniya, Sri Lanka 19 Node distribution 900 SHC 800 HHC 700 No of clusters 600 500 400 300 200 100 0 0 5 10 15 20 25 30 35 40 45 Cluster size MaxHops = 1, R= 30, 5000 nodes HHC produces smaller number of large clusters SHC produces larger number of small clusters ICIIS 2007 - Peradeniya, Sri Lanka 20 Node depth distribution - Breadth-first tree formation Simple Hierarchical Clustering Hierarchical Hop-ahead Clustering 1400 Number of nodes 600 500 400 300 R=12 R=15 R=18 R=21 R=24 R=27 R=30 1200 1000 Number of nodes R=12 R=15 R=18 R=21 R=24 R=27 R=30 700 800 600 400 200 200 100 0 0 0 10 5 15 20 25 30 35 40 45 50 55 0 5 10 15 25 20 Node depth Node depth MaxHops = 1, 5000 nodes Nodes in HHC have a lower depth than SHC Depth reduces as the communication range increases ICIIS 2007 - Peradeniya, Sri Lanka 21 Node depth distribution - Multi-hop clusters (breadth-first tree formation) Simple Hierarchical Clustering Hierarchical Hop-ahead Clustering 500 900 MaxHops=1 N=3 MaxHops=2 N=3 MaxHops=3 N=4 700 Number of nodes Number of nodes 400 MaxHops=1 N=6 MaxHops=2 N=6 MaxHops=3 N=6 800 300 200 600 500 400 300 200 100 100 0 0 0 5 10 15 20 25 30 Node depth 35 40 45 50 55 0 5 10 15 20 25 Node depth R = 12, 5000 nodes Depth reduces as the MaxHops increases ICIIS 2007 - Peradeniya, Sri Lanka 22 Node depth distribution - Depth-first tree formation 300 MaxHops=1 N=3 MaxHops=2 N=3 MaxHops=3 N=4 MaxHops=4 N=5 250 No of nodes 200 150 100 50 0 0 20 40 60 80 Depth R = 12, 5000 nodes 100 120 Depth reduces as the MaxHops increases ICIIS 2007 - Peradeniya, Sri Lanka 23 Hierarchical routing A(0) H I J K Q B E B(00) F L H (000) D L I J K M (100)(010) (110) (210) (020) G O D(20) E(30) F(40) G(50) C A N C(10) M P Q (0100) N (030) O (050) P (0210) Routing through cross links Reduce burden on the root node Lower latency ICIIS 2007 - Peradeniya, Sri Lanka 24 Hierarchical routing & routing with cross links No of messages delivered for HHC 35000 Without cross links With cross links No of messages 30000 25000 20000 15000 10000 5000 12 15 18 21 24 27 30 Communication Range N = 6, 5000 nodes Routing with cross links significantly increase the number of messages delivered ICIIS 2007 - Peradeniya, Sri Lanka 25 Conclusions & future work The proposed algorithm is independent of neighbourhood information, location awareness, time synchronization & network topology Algorithm scales well into large networks The HHC outperforms SHC We are currently working on Further optimizing clusters after they are formed Energy aware routing that will further increase the number of messages delivered Balancing the cluster tree Further reducing node depth Increased network lifetime Determining suitable parameter values (MaxHops, TTL, N, T, etc.) for optimum performance of the algorithm. ICIIS 2007 - Peradeniya, Sri Lanka 26 Q&A ...? ICIIS 2007 - Peradeniya, Sri Lanka 27 Thank you …. ICIIS 2007 - Peradeniya, Sri Lanka 28