A Clustering Scheme for Hierarchical Control in Wireless Networks Suman Banerjee, Samir Khuller Department of Computer Science, University of Maryland at College Park Slides by James Flemer Department of Computer Science, Rensselaer Polytechnic Institute October 21, 2002 – p.1
Introduction Miniaturization and proliferation of wireless devices Creation of rapidly deployable wireless sensor networks Smart Dust project at UC Berkeley Wireless Integrated Network Services (WINS) at UCLA Sensors placed arbitrarily Mobility of network nodes create changing topology/connectivity Dynamic addition/removal of sensor nodes October 21, 2002 – p.2
Problems How can we ... Address nodes Control nodes Route messages to/between nodes Maintain scalability Existing large scale networks use a hierarchical design Need hierarchical clustering of wireless nodes October 21, 2002 – p.3
Layered Hierarchy G Layer 2 B K Layer 1 G H B K Layer 0 A J E C F D G Figure 1: Example layered hierarchical clustering. October 21, 2002 – p.4
Clustering Goals Complete coverage of the graph. No missed nodes. Each cluster must be connected. Clusters should be moderately sized. Small clusters are inefficient. Large clusters overburden the controlling node. e.g. k ≤ n < 2 k , for some k . Clusters should have minimal overlap. Each node should be in a minimal number of clusters. October 21, 2002 – p.5
Clustering in a Star Graph Each of such k-1 vertices and the center vertex make a cluster of size k. Figure 2: The center vertex is a member of all clusters, violating requirement (5). October 21, 2002 – p.6
Graphs for Wireless Networks Connectivity based on transmission range. Nodes may have different transmission ranges. Only consider nodes that are mutually in range. This type of graph is called a Disk Graph, because the nodes are disks with a certain radius, and edges are determined by overlapping disks. For a unit disk graph (all radii the same), the maximum independent set in the neighborhood of u , N ( u ) , has at most 5 vertices. For a disk graph with radii bounded by R max and R min , the maximum independent set has at most � � log R max O vertices. R min October 21, 2002 – p.7
Clustering in a Disk Graph Total n vertices Segment L4 has 0.01n vertices L4 k = 0.45n Each of L1, L2 and L3 segments has 0.03n vertices L1 L3 L2 A 0.3n vertices C 0.3n vertices B 0.3n vertices Figure 3: All the vertices in L 2 are shared, violating clus- ter overlap requirement (4). October 21, 2002 – p.8
Formal Clustering Goals Given a graph G = ( V , E ) , and a positive integer, k (1 ≤ k ≤ | V | ), find a collection of subsets V 1 ,..., V l of V , such that: 1. The clusters cover the graph. ∪ l i = 1 V i = V 2. G [ V i ] , the subgraph of G induced by V i , is connected. 3. The subsets are bounded in size. ∀ i , | V i | < 2 k ∀ i (except one) , k ≤ | V i | 4. There is minimal cluster overlap. | V i ∩ V j | ∼ O ( 1 ) 5. Each vertex is in a minimal number of clusters. | S ( v ) | ∼ O ( 1 ) , where S ( v ) = { V i | v ∈ V i } October 21, 2002 – p.9
Theoretical Solution 1. Find a (rooted) spanning tree, T , of the graph G . Let T ( v ) be the subtree of T rooted at v , and C ( v ) be the children of v in T . 2. Find a vertex, u , such that | T ( u ) | ≥ k and ∀ v ∈ C ( u ) , | T ( v ) | < k . 3. Group the subtrees rooted at the children of u into clusters of size between k and 2 k , including u if necessary for connectivity. 4. Remove T ( u ) from T . 5. Terminate if T is empty, else goto 2. October 21, 2002 – p.10
October 21, 2002 – p.11 ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✁ ✂ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✂ ✂ ✁ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✄ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✂ ✁ ✁ ✄ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✄ ✄ ✁ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ☎ ☎ ✆ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✆ ✆ ☎ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ✆ ☎ ☎ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✄ ☎ ✄ ✄ ✄ ✄ ✄ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ☎ ✁ ✁ ✁ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ✁ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ � ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ � � � � � � � � � � � � � � � � ✁ � � � � � � � � � � � � � � � � � � � � � � ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ � ✁ ✁ ✁ ✁ � � � � � � � ✁ � � � � ✁ ✁ ✁ ✁ ✁ Figure 4: Example cluster forming operation. s Cluster with 1.1k 0.5k members C with 0.7k+1 members retained in the tree 0.6k Partial cluster r |T(u)| = 4.7k + 1 after v is processed has been deleted from the tree 0.7k z during processing at v Cluster formed at v F 1.3k A v q 0.7k Cluster Forming Cluster with 1.5k members B u 0.8k p y 0.6k Cluster with 1.4k+1 D members 0.8k x
Distributed Solution Tree Discovery Protocol (TDP) Constructs a spanning tree. Similar to Spanning Tree Protocol (STP) used by Ethernet switches. All nodes have unique identifiers (ID). All advertisements send the senders node ID, their distance from the root, and the ID of the root. All nodes start by assuming they are the root, and advertise themselves as the root. Nodes change their parent if they hear a distance less than their current distance or hear of another root with a lower ID. October 21, 2002 – p.12
Distributed Solution (cont.) Cluster Formation Protocol (CFP) Leaves begin by forming trivial clusters containing only themselves. Nodes then report their partial clusters (less than k in size) to their parents. Each node, receives reports from its children and merges the partial trees into clusters if possible. After a node has processed reports from all of its children, it then reports itself to its parent including a partial cluster of its children if one exists. October 21, 2002 – p.13
Distributed Protocol Layers Cluster Formation Protocol Tree Discovery Protocol Wireless MAC Protocol October 21, 2002 – p.14
Cluster Maintenance Relax cluster size upper bound to 3 k . Causes the one remaining partial cluster to merge immediately. New node, v , joins: If any of its neighbors, u ∈ N ( v ) , belong to a cluster with less than 3 k − 1 nodes, it joins that cluster. Else, one neighboring cluster of size 3 k − 1 splits, and the CFP is rerun on those nodes and the new node. October 21, 2002 – p.15
Cluster Maintenance (cont.) Existing node, v , leaves: May cause a cluster to become disconnected. Any of the created connected components w/ size ≥ k is made into a cluster. All other nodes in that cluster disband, and then join as if they were new nodes. Link outages: Only matters if it partitions cluster, in which case use the node-leaves maintenance method. October 21, 2002 – p.16
Questions? Original Paper Available at: http://www.cs.umd.edu/users/samir/grant/bk01.ps http://www.cs.umd.edu/Library/TRs/CS-TR-4103/CS-TR-4103.ps.Z Slides produced with Prosper and L A T EX. http://prosper.sourceforge.net/ October 21, 2002 – p.17
Recommend
More recommend