340 likes | 718 Views
LOCI: Local Clustering Service for Large Scale Wireless Sensor Networks. Vineet Mittal. Committee Members: Dr. Anish Arora (advisor) Dr. Hakan Ferhatosmanoglu.
E N D
LOCI: Local Clustering Service for Large Scale Wireless Sensor Networks Vineet Mittal Committee Members: Dr. Anish Arora (advisor) Dr. Hakan Ferhatosmanoglu
Challenges in Sensor Networks • Self-configuration • ad hoc node deployment • Self-healing • node failures, message loss and corruption • Scalability • large scale deployment and limited resources
Hierarchical Clustering • Advantages • Network specific • facilitates distribution of control over the network • abstracts network state information: insulates changes and failures/joins in one part of the network from other parts • Application specific • energy efficient
Challenges in Clustering • Scalability • Local self-healing • Similar size clusters • Optimum number of overlaps between clusters • Minimum number of non-clustered nodes • Optimum number of clusters • Minimum communication overhead
Problem Statement • Design a distributed, local, scalable, and self-stabilizing clustering program, LOCI, that given a cluster radius interval [R, mR],where R is the physical radius and m ≥ 2, constructs network partitions such that • a unique node is designated as a leader of the cluster • all nodes in the R-neighborhood of each leader belong to that cluster • maximum distance of a node from its leader is mR • each node belongs to the cluster of the closest clusterhead
Outline • Model • LOCI Program • LOCI Correctness Proof • Theoretical Performance Analysis • Simulations based Performance Analysis • Conclusions
Model • Wireless sensor network • 2-D coordinate plane • Bi-directional links • Each node has a unique ID and unit transmission range • Distance estimation capability relative to other nodes • Density: nodes are distributed as per a homogeneous spatial Poisson process of intensity λ, such that at an average within a unit area circular region there are λ nodes • Fault model: nodes and links can fail-stop, new nodes and links can join the system, and state of a node can be arbitrarily corrupted.
Outline • Model • LOCI Program • LOCI Correctness Proof • Theoretical Performance Analysis • Simulations based Performance Analysis • Conclusions
LOCI Program Grow the cluster iteratively Wait for a random amount of time Timeout and elect itself as a clusterhead Legitimate Cluster Valid cluster Network partition constructed R mR R mR mR R R mR
LOCI Program Legitimate cluster constructed Problem: Neighboring clusters overlap Dynamic Priority : <Radius, - #Overlaps> R j A B k Radius: maximum distance d, such that all nodes ≤ d from the leader belong to the same cluster as that of the leader Overlaps: # of overlaps of a cluster with neighboring clusters of equal radius
LOCI Abstract Program • timeout(can_lead(j)) →start_cluster(j) [] • can_join(j, S) → join(j, S) [] (3) j and k are clusterheads Λ overlapping_clusters(j, k) → resolve_overlap(j, k)
Local Healing using LOCI • node join • may be subsumed by neighboring clusters if it is within mR distance of a neighboring clusterhead d = 1 ( ( ) ( ) ) ( ) cascading ) ( ) ( ) ( ) ( R = [1, 1] A B new node ( ) ( ) ( ) ( ) R = [1, 2] new node subsumed
Local Healing using LOCI • node join • may create a new cluster, affecting only neighboring clusters by subsuming nodes contained in them that are farther than R distance from their respective clusterheads d = 2 ( ( ) ( ) ) ( ) ) ( ( ) ( ( ) ) ( ) R = [1, 2] new cluster
Local Healing using LOCI • node fail-stops • new leader may be found in the original cluster, without affecting neighboring clusters, or • remaining nodes in the original cluster may affect neighboring clusters by joining them, or • may create new cluster(s), affecting only neighboring clusters by subsuming nodes contained in them
Hierarchical clustering Legitimate cluster at level 1 Legitimate cluster at level 0 Clustering at Level 0 Represent clusters by a single node, the clusterhead R 1 R 0 Neighboring clusters at level 0 → Corresponding clusterheads are neighbors at level 1 Clustering at Level 1 i+1 i (2mR) - 1 ] [ ) ( mR R (2mR) , = R i 2mR – 1
Outline • Model • LOCI Program • LOCI Correctness Proof • Theoretical Performance Analysis • Simulations based Performance Analysis • Conclusions
LOCI correctness proof • Variables • d.j = distance of node j from the clusterhead • r.j = circular radius of the cluster • c.j = ID of the cluster to which j belongs • o.j = set of tuples that contains ID and radius of the overlapping clusters • State predicates • Valid Cluster (VC.j) = circular radius of the cluster is r.j and all the nodes in the cluster have correct values • Legitimate Cluster (LC.j) = circular radius of the cluster is R and all the nodes in the cluster have correct values
LOCI correctness proof • Theorem 1:I is an invariant of LOCI I(Invariant)Ξif a node belongs to a cluster then that cluster is a valid cluster and the values of all the nodes in that cluster are correct • Theorem 2:F is a fixpoint of LOCI F (Fixpoint) Ξall nodes belong to a legitimate cluster and there is a legitimate path from every node to its clusterhead • Theorem 3: Starting from an invariant state I, the system eventually reaches a state in F • Theorem 4: Starting at an arbitrary state, every computation of the system reaches a state in I
Outline • Model • LOCI Program • LOCI Correctness Proof • Theoretical Performance Analysis • Simulations based Performance Analysis • Conclusions
Performance Analysis • Theorem 5: The convergence time of LOCI from invariant state to fixpoint state is O(R4) rounds • Communication complexity • Cluster formation O(R3) • Individual node O(R3)
Percentage of uncovered nodes • For m≥2, LOCI constructs network partitions • For m<2, in the worst case the percentage of uncovered nodes using LOCI is
Number of clusters constructed • Overhead in number of clusters constructed is 3 √3R R 2R (√2/3)R Maximum number of clusters (LOCI) = 3n Minimum number of clusters = n
Outline • Model • LOCI Program • LOCI Correctness Proof • Theoretical Performance Analysis • Simulations based Performance Analysis • Conclusions
Simulation Results • Assumptions • Nodes are in a regular grid • Nodes are aware of their neighbor set (unit transmission range)
Simulation Results Overhead in the number of clusters (1-D network) Overhead in the number of clusters (2-D network) R: Radius of the cluster N:Number of nodes
Conclusions • A distributed, local, scalable, and self-stabilizing clustering scheme, LOCI, is presented that partitions the network into bounded radius clusters • Convergence time and self-healing in LOCI are scalable both in time and space • LOCI bounds the overhead in the number of clusters constructed by a constant • Clusters constructed by LOCI form a Voronoi tessellation
Future Work • Convergence time of O(R2 log(R)) • Integrating LOCI in the “Line in the Sand” tracking service to achieve scalability and fault tolerance
Number of clusters constructed • R (Radius) ≈ D (Diameter of the network) • Overhead in number of clusters constructed is 6 R R 2R R R R
Cluster assignment • Assign clusterheads in surrounding region • Priority < n, id > • n: [0, 6] R 2R+1
LOCI correctness proof • Variables • d.j = distance of node j from the clusterhead • r.j = circular radius of the cluster • c.j = ID of the cluster to which j belongs • o.j = set of tuples that contains ID and radius of the overlapping clusters • State predicates • VC.j = j is the clusterhead of a valid cluster • LC.j = j is the clusterhead of a legitimate cluster • H.j = variables stored at a node j have correct values • LP.j = legitimate path from a node j to its clusterhead