clustering murat demirbas suny buffalo. 2 challenges for scalability of wireless sensor networks...

36
Clustering Murat Demirbas SUNY Buffalo

Upload: rashad-hollins

Post on 16-Dec-2015

218 views

Category:

Documents


0 download

TRANSCRIPT

Clustering

Murat Demirbas

SUNY Buffalo

2

Challenges for scalability of wireless sensor networks

• Energy constraint :

Sending a message is expensive; depletes battery 1000x faster

Communication-efficient programs are needed

• Distribution of controller :

Centralized solutions or predefined controllers are unsuitable

Ad hoc and efficient distribution of control are needed

• Faults :

Message losses & corruptions, nodes fail in complex ways

Locally self-healing programs are needed

3

Clustering for scaling: why and how?

• Why ?

Enables efficient and scalable distribution of controllers

Saves energy and reduces network contention by enabling locality of communication

• How ?

Should be locally-healing

To confine faults and changes within that part of the network

Should produce approximately equal-sized clusters

To achieve an even distribution of controllers Should result in minimum overlaps

To avoid overhead of reporting to many clusterheads

4

Solid-disc clustering

• Solid-disc clustering:

All nodes within a unit distance of the clusterhead belong only to that cluster

All clusters have a nonoverlapping unit radius solid-disc

• Why ?

Reduces intra-cluster signal contention

clusterhead is shielded at all sides with members, does not have to endure over-hearing nodes from other clusters

Yields better spatial coverage with clusters

aggregation at clusterhead is more meaningful since it is median of the cluster

Results in a guaranteed upper bound on the number of clusters

5

Challenges for local healing of solid-disc clustering

• Equi-radius solid-disc clustering with bounded overlaps is not achievable in a distributed and local manner

)( ( ( () ) )

(( ( ())))cascading

new nodeA B

6

Our contributions

• Solid-disc clustering with bounded overlaps is achievable in a distributed and local manner for approximately equal radius

Stretch factor, m≥2, produces partitioning that respects solid-disc

Each clusterhead has all the nodes within unit radius of itself as members, and is allowed to have nodes up to m away of itself

• FLOC is locally self-healing, for m≥2

Faults and changes are contained within the respective cluster or within the immediate neighboring clusters (precisely within m+1 units)

7

Our contributions …

• By taking unit distance to be the reliable communication radius and m be the maximum communication radius, FLOC

exploits the double-band nature of wireless radio-model achieves communication- and energy-efficient clustering

• FLOC achieves clustering in O(1) time regardless of the size of the network

Time, T, depends only on the density of nodes and is constant

Through analysis, simulations, and implementations, we suggest a suitable value for T for achieving fast clustering without compromising the quality of resulting clusters

8

Outline

• Model

• Justification for m≥2

• Basic FLOC program

• Extended FLOC program

• Simulation & implementation results

• Concluding remarks

9

Model

• Undirected graph topology

• Radio model is double-band *

Reliable communication within unit distance = in-band Unreliable communication within 1 < d < m = out-band

• Nodes have i-band/ o-band estimation capability

Time of flight of audio for ranging, or RSSI-based using signal-strength as indicator of distance

• Fault model

Fail-stop and crash New nodes can join the network Transient corruption of state and messages

*Zhao-Govindan(03), Woo-Tong-Culler(03)

10

Self-stabilization

• A program is self-stabilizing iff after faults stop occurring the program eventually recovers to a state from where its specification is satisfied.

• A self-stabilizing program is fault-local self-stabilizing if the time and number of messages required for stabilization are bounded by functions of perturbation size rather than the network size.

Perturbation size for a given state is the minimum number of nodes whose state must change to achieve a consistent state of the network.

11

Problem statement

• A distributed, local, scalable, and self-stabilizing clustering program, FLOC, to construct network partitions such that

a unique node is designated as a leader of each cluster

all nodes in the i-band of each leader belong to that cluster

maximum distance of a node from its leader is m

each node belongs to a cluster

no node belongs to multiple clusters

12

Justification for stretch factor > 2

• For m≥2 local healing is achieved: a new node is

either subsumed by one of the existing clusters,

or allowed to form its own cluster without disturbing neighboring clusters

( ( () ) ))

new node subsumed

( ( ( () ) ))

( ( () )) )() (new cluster

13

Basic FLOC program

• Status variable at each node j:

idle : j is not part of any cluster and j is not a candidate cand : j wants to be a clusterhead, j is a candidate c_head : j is a clusterhead, j.cluster_id==j i_band : j is an inner-band member of a clusterhead j.cluster_id o_band :j is an outer-band member of j.cluster_id

• The effects of the 6 actions on the status variable:

14

FLOC actions

1. idle Λ random wait time from [0…T] expired become a cand and bcast cand msg

2. receiver of cand msg is within in-band Λ its status is i_band receiver sends a conflict msg to the cand

3. candidate hears a conflict msg candidate becomes o_band for respective cluster

4. candidacy period Δ expires cand becomes c_head, and bcasts c_head message

5. idle Λ c_head message is heard become i_band or o_band resp.

6. receiver of c_head msg is within in-band Λ is o_band receiver joins cluster as i_band

15

FLOC is fast

• Assumption: atomicity condition of candidacy is observed by T

• Theorem: Regardless of the network size FLOC produces the partitioning in T+ Δ time.

• Proof:

An action is enabled at every node within at most T time

Once an action is enabled at a node, the node is assigned a clusterhead within Δ time

Once a node is assigned to a clusterhead, this property cannot be violated

action 6 makes a node change its clusterhead to become an i-band member, action 2 does not cause clusterhead to change

16

Selection of T

• To achieve atomicity of elections, ensure (with a high probability) that for a node j whose idle-timer expires, the idle timers of none of the nodes within 2 units of j expire within next Δ time

• The probability of atomicity of elections is (1- Δ/T)w

w is the maximum number of nodes within 2 units of a node

• As seen from the formula T is independent of network size

17

Self-stabilization of FLOC

Invariant of FLOC

• For all j,k

1. j.idle \/ j.cand ≡ j.cluster_id=┴

2. j.c_head ≡ j.cluster_id=j

3. j.i_band Λ j.cluster_id=k k.c_head Λ j in i-band of k

4. j.o_band Λ j.cluster_id=k k.c_head Λ j in o-band of k

5. k.c_head Λ j in i-band of k j.i_band Λ j.cluster_id=k

18

Stabilization actions

1. I1 is locally corrected

2. I2 is locally corrected

3. Clusterhead send heartbeats for detecting any violation of I3 & I4

4. For correcting I3 & I4 leases are used, on expiration node returns to idle state

5. Violation of I5 is detected when node receives a c_head_msg as an i-band; a demote message is sent to both clusterheads

6. Upon receiving demote, the clusterheads return to idle state

19

FLOC is fault-locally stabilizing

• I1 and I2 are locally detected and corrected

• Correction of I3 and I4 are local to the node

• A violation of I5 is reduced to violation of I3 and I4 for the nodes that are at most m+1 distance to j

Once the invariant is satisfied due to locality of clustering reclustering is achieved locally

20

FLOC is locally-healing…

• Node failures

inherently robust to failure of non-clusterhead members

clusterhead failure dealt via S3 and S4

effects contained within at most m

• Node additions

either join existing cluster, or

form a new cluster without disturbing immediate neighboring clusters, or

if the new node is within i-band of multiple clusterheads, S5 and S6 ensure stabilization

21

Extensions to basic FLOC algorithm

• The extended FLOC algorithm ensures that solid-disc property is satisfied even when atomicity of candidacy are violated occassionally

• Insight: Bcast is an atomic operation

The candidate that bcasts first locks the nodes in the vicinity for Δ time

The later candidates become idle again by dropping their candidacy when they find some of the nodes are locked

• 4 additional actions to implement this idea

22

Simulation for determining T

• Prowler, realistic wireless sensor network simulator

MAC delay 25ms

• Tradeoffs in selection of T

Short T leads to network contention, and hence, message losses Tradeoff between faster completion time and quality of clustering

• Scalability wrt network size

T depends only on the node density

In our experiments, the degree of each node is between 4-12

a constant T is applicable for arbitrarily large-scale networks

• Code is at www.cse.buffalo.edu/~demirbas/floc

23

Tradeoff in selection of T

0

5

10

15

20

25

30

35

40

05101520T (sec)

Nu

mb

er of ato

micity vio

lation

s

24

Constant T regardless of network size

25

Implementation

• Mica2 mote platform, 5-by-5 grid

• Confirms simulation

26

Sample clustering with FLOC

27

Related work

• LEACH does not satisfy solid-disc clustering

• FLOC complements LEACH

FLOC addresses network contention problem at clusterheads

LEACH style load-balancing readily applicable in FLOC

via probabilistic rotation function for determining the waiting-times for candidacy announcements

• FLOC is the first time the solid-disc property is achieved

28

Concluding remarks

• FLOC is

Fast : clustering is achieved in constant time, T+Δ

Locally self-healing : changes and faults are confined within the immediate cluster

Energy-efficient communication protocol for WSN

Wendi Rabiner Heinzelman, Anantha Chandrakasan,

and Hari Balakrishnan

30

Model• The base station is fixed and located far from the sensors

Communication with the base station is expensive

• All nodes in the network are homogeneous and energy constrained

No high-energy nodes

• Transmit and receive costs are approximately equal

the energy to power the radio dominates both costs

31

• Adaptive clustering:

Nodes take turn to be cluster-heads.

After a fixed period (round) cluster heads are changed.

• Dynamic clusters for different rounds

Some nodes become the cluster head.

Other nodes choose a cluster to join.

LEACH protocol

32

Percentage of clusterheads

• Optimal percentage of clusterheads is determined empirically

33

LEACH Algorithm

• Each round is divided into 4 phases– Advertisement phase

– Cluster set up phase

– Schedule Creation phase

– Data transmission phase

• Multiple Clusters problem– Transmission in one cluster may corrupt transmission in a nearby

cluster.

– Use CDMA to solve.

– But CDMA is unavailable in almost any of the platforms.

34

Advertisement

Phase

Cluster Set up

Phase

Schedule Creation

Phase

Data Transmission

Phase

“Me Head !!!”

(CSMA-MAC)

“I am with you”

(CSMA-MAC)

“Here’s your time slot”“Thanks for the time slot, Here’s

my data”(TDMA)

After decide which cluster it joins, each node informs the cluster-head Based on the number of nodes in the

cluster, the cluster-head node creates a TDMA schedule telling each node when it can transmit. This schedule is broadcast back to the nodes in the cluster.

To reduce energy consumption non- cluster-head nodes:

• Use minimal amount of energy chosen based on the strength of the cluster-head advertisement.

• Can turn off the radio until their allocated transmission time.

• Every node chooses a random number (R) and compute a threshold T(n).

• T(n) = P/(1-P*(r mod(1/P)) if n element of G,

= 0 else

P – desired percentage of cluster heads (e.g. 5%)

r – the current round

G – set of nodes that have not been cluster head in the last 1/P rounds

• It elects itself as a cluster-head if R < T(n)

• Every cluster-head broadcast an advertisement message, with the same transmit energy.

• Non-cluster-head node decide which cluster it joins in this round based on the received signal stregth.

• Largest strength closer minimal enery needed for communication.

35

Simulation results

36

Simulation results…

Direct MTE LEACH