lecture 5: topology control

62
Lecture 5: Topology Control Anish Arora CIS788.11J Introduction to Wireless Sensor Networks Material uses slides from Paolo Santi and Alberto Cerpa

Upload: indira-evans

Post on 31-Dec-2015

42 views

Category:

Documents


3 download

DESCRIPTION

Lecture 5: Topology Control. Anish Arora CIS788.11J Introduction to Wireless Sensor Networks Material uses slides from Paolo Santi and Alberto Cerpa. Problems affected by link quality. Topology Control Neighborhood Management Routing Time Synchronization Aggregation - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Lecture 5:  Topology Control

Lecture 5: Topology Control

Anish Arora

CIS788.11J

Introduction to Wireless Sensor Networks

Material uses slides from Paolo Santi and Alberto Cerpa

Page 2: Lecture 5:  Topology Control

2

Problems affected by link quality

• Topology Control

• Neighborhood Management

• Routing

• Time Synchronization

• Aggregation

• Application Management

Page 3: Lecture 5:  Topology Control

3

References

• Topology Control tutorial, Mobihoc’04, Paolo Santi

• SPAN, Benjie Chen, Kyle Jamieson, Robert Morris, Hari Balakrishnan, MIT

• GAF/CEC, Y. Xu, S. Bien, Y. Mori, J . Heidemann & D. Estrin, USC/ISI – UCLA

• ASCENT, Alberto Cerpa and Deborah Estrin, UCLA

• GS3: Scalable Self-configuration and Self-healing in Wireless Networks, PODC 2002, Hongwei Zhang, Anish Arora

• M. Demirbas, A.Arora, V.Mittal, FLOC: A Fast Local Clustering Service for Wireless Sensor Networks DIWANS 2004

Page 4: Lecture 5:  Topology Control

4

• High density deployment is common

• Even with minimal sensor coverage, we get a high density communication network (radio range > typical sensor range)

• Energy constraints

• When not easily replenished

• Power usage

• Observation: radios consume about the same power in idle state than Tx and Rx state

• Chicken & egg problem: to save energy, radios must be turned off (not simply reduce packet transmissions); but if radios are turned off, nodes cannot receive messages

Why Control Communications Topology

Page 5: Lecture 5:  Topology Control

5

Problem Statement(s)

1. Find an MCDS, i.e. a minimum subset of nodes that is both:

Set cover

Connected

2. Choose a transmit-power level whereby network is connected

• per node or same for all nodes

• with per node there is the issue of avoiding asymmetric links

• cone-based algorithm:

node u transmits with the minimum power ρu s.t. there is at least

one neighbor in every cone of angle x centered at u

k-neighbors algorithm: each node chooses nearest k neighbors for its subgraph

k is chosen s.t. the graph generated is connected w.h.p.

Page 6: Lecture 5:  Topology Control

6

Problem Statement(s)

3. Find a minimum subset of nodes that provides some density

in each geographic region connectivity

we’ll look at the examples of GAF, SPAN, GS3, ASCENT

4. Given a connected graph G, find a subgraph G’ which can

route messages between nodes in energy-efficient way both unicast and broadcast spanners

reduces interference as well

Sub-problems:• Prune asymmetric links

• Tolerate node perturbations

• Load balance

Page 7: Lecture 5:  Topology Control

7

Where should TC be positioned in the protocol stack?

No clear answer in the literature

One view:Routing Layer TC Layer MAC Layer

Routing protocol may trigger TC execution (to get better routes) Routing (structure) involves only active nodes

MAC protocol may trigger TC execution (if neighborhood changes) TC controls coarse-grain duty-cycling, MAC controls fine-grain Mode changes need to be coordinated to avoid conflicts

Page 8: Lecture 5:  Topology Control

8

Assumptions: Radio/MAC

• Circular or Isotropic Models: GS3

• Grid-based connectivity: GAF, GS3

• Radio/MAC dependencies:

802.11 Power Saving mode: Span

Promiscuous mode: ASCENT, CEC

Page 9: Lecture 5:  Topology Control

9

Assumptions: Neighbor Information

• Locality:

1-hop neighbor: GS3, ASCENT

n-hop neighbor (with various n > 1): GAF, CEC, Span …

Dependency on routing: GS3, Span

• Measurement-based: ASCENT, CEC

Page 10: Lecture 5:  Topology Control

10

Properties: Reactivity to dynamics & load balancing

• Local re-calculation of state: GS3

• Global re-calculation of state: Span

• Local recovery: GS3, GAF, CEC, ASCENT

• Explicit load balancing mechanisms: GS3, Span, GAF, CEC

Page 11: Lecture 5:  Topology Control

11

SPAN

• Goal: preserve fairness and capacity & still provide energy savings

• SPAN elects “coordinators” from all nodes to create backbone topology

• Other nodes remain in power-saving mode and periodically check if they

should become coordinators

• Tries to minimize # of coordinators while preserving network capacity

• Depends on an ad-hoc routing protocol to get list of neighbors & the

connectivity matrix between them

• Runs above the MAC layer and “alongside” routing

Page 12: Lecture 5:  Topology Control

12

Coordinator Election & Announcement

• Rule: if 2 neighbors of a non-coordinator node cannot reach each other

(either directly or via 1 or 2 coordinators), node becomes coordinator

• Announcement contention is resolved by delaying coordinator

announcements with a randomized backoff delay

• delay = ((1 – Er/Em) + (1 – Ci/(Ni pairs)) + R)*Ni*T

Er/Em: energy remaining/max energy

Ni: number of neighbors for node i

Ci: number of connected nodes through node i

R: Random[0,1]

T: RTT for small packet over wireless link

Page 13: Lecture 5:  Topology Control

13

Coordinator Withdrawal

• Each coordinator periodically checks if it should withdraw as a coordinator

• A node withdraws as coordinator if each pair of its neighbors can reach

each other directly of via some other coordinators

• To ensure fairness, after a node has been a coordinator for some period of

time, it withdraws if every pair of nodes can reach each other through

other neighbors (even if they are not coordinators)

• After sending a withdraw message, the old coordinator remains active for

a “grace period” to avoid routing loses until the new coordinator is elected

Page 14: Lecture 5:  Topology Control

14

Performance Results

Page 15: Lecture 5:  Topology Control

15

GAF/CEC: Geographical Adaptive Fidelity

• Each node uses location information (provided by some orthogonal

mechanism) to associate itself to a virtual grid

• All nodes in a virtual grid must be able to communicate to all nodes

in an adjacent grid

• Assumes a deterministic radio range, a global coordinate system

and global starting point for grid layout

• GAF is independent of the underlying ad-hoc routing protocol

Page 16: Lecture 5:  Topology Control

16

Virtual Grid Size Determination

• r: grid size, R: deterministic radio range

• r2 + (2r)2 R2

• r R/sqrt(5)

Page 17: Lecture 5:  Topology Control

17

Parameters settings

• enat: estimated node active time

• enlt: estimated node lifetime

• Td,Ta, Ts: discovery, active,

and sleep timers

• Ta = enlt/2

• Ts = [enat/2, enat]

• Node ranking:

Active > discovery (only one node active per grid)

Same state, higher enlt --> higher rank (longer expected time first)

Node ids to break ties

Page 18: Lecture 5:  Topology Control

18

Performance Results

Page 19: Lecture 5:  Topology Control

19

CEC

• Cluster-based Energy Conservation

• Nodes are organized into overlapping clusters

• A cluster is defined as a subset of nodes that are

mutually reachable in at most 2 hops

Page 20: Lecture 5:  Topology Control

20

Cluster Formation

• Cluster-head Selection: longest lifetime of all its neighbors

(breaking ties by node id)

• Gateway Node Selection:

primary gateways have higher priority

gateways with more cluster-head neighbors have higher priority

gateways with longer lifetime have higher priority

Page 21: Lecture 5:  Topology Control

21

Network Lifetime

Page 22: Lecture 5:  Topology Control

22

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

Page 23: Lecture 5:  Topology Control

23

FLOC protocol

• 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

Page 24: Lecture 5:  Topology Control

24

FLOC program …

• By taking unit distance to be reliable comm. radius & m

be maximum comm. 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 & is constant

Through simulations and implementations, we suggest a

suitable value for T for achieving fast clustering without

compromising the quality of resulting clusters

Page 25: Lecture 5:  Topology Control

25

Model

• Geometric network, e.g., 2-D coordinate plane

• 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 RSSI-based using signal-strength as indicator of distance Statistics-based using average link quality as an indicator

• Fault model Fail-stop and crash New nodes can join the network

Page 26: Lecture 5:  Topology Control

26

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

Page 27: Lecture 5:  Topology Control

27

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

Page 28: Lecture 5:  Topology Control

28

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; a clusterhead itself is an i_band member o_band :j is an outer-band member of j.cluster_id

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

Page 29: Lecture 5:  Topology Control

29

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

Page 30: Lecture 5:  Topology Control

30

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

Page 31: Lecture 5:  Topology Control

31

FLOC is locally-healing

• Node failures

inherently robust to failure of non-clusterhead members

clusterhead failure detected via “lease” mechanism, the

orphaned nodes execute clustering ---see node additions

• Node additions

either join existing cluster, or

form a new cluster without disturbing immediate neighboring

clusters

Page 32: Lecture 5:  Topology Control

32

Extensions to basic FLOC algorithm

• Extended FLOC algorithm ensures that solid-disc property is satisfied even when atomicity of candidacy is violated occasionally

• Insight: Bcast is an atomic operation Candidate that bcasts first locks the nodes in the vicinity for Δ time 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

Page 33: Lecture 5:  Topology Control

33

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

Page 34: Lecture 5:  Topology Control

34

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

Page 35: Lecture 5:  Topology Control

35

Constant T regardless of network size

Page 36: Lecture 5:  Topology Control

36

Implementation

• Mica2 mote platform, 5-by-5 grid• Confirms simulation

Page 37: Lecture 5:  Topology Control

37

Sample clustering with FLOC

Page 38: Lecture 5:  Topology Control

38

GSGS33: Scalability via locality

• Locality is hard for some graph problems e.g., self-configuration and self-healing of

routing tree

• An ideal goal for locality: self-healing should be a function of the size of perturbation (in time, space, and energy)

• Locality depends on model

6

5

4

3 3

2 2

1

6

5

4

3

1

2

0 14

5 0

7

2

8

10

1

3

6

12

9

4 11

13

Page 39: Lecture 5:  Topology Control

39

System model

• System multiple “small” nodes and one “big” node, on a plane node distribution

density: ( Rt s.t. with high probability,

there are multiple nodes in any circular area of radius Rt)

localization: relative location between nodes can be estimated

• Perturbations dynamic nodes

joins, leaves (deaths), state corruptions

mobile nodes

Page 40: Lecture 5:  Topology Control

40

Problem: Geography-aware self-configuration

• Geographic radius of clusters is crucial

for communication quality, energy dissipation, data aggregations &

applications

• Problem statement

Given

R: ideal cell radius (R > Rt)

Construct a set of cells , connected via a “head” node in each cell s.t.

radius of each cell is in [ R-c , R+c ] , where c = f (Rt)

each node belongs to only one cell

cells and the connectivity graph over head nodes self-heal locally

Page 41: Lecture 5:  Topology Control

41

Static networks

• An ideal case:

• In reality: no node may exist at some geometric centers (ILs), but, with high probability there are nodes no more than Rt away from

any IL

R R3IL1

IL2

(IL = Ideal Location)

Rt

Page 42: Lecture 5:  Topology Control

42

How to find the set of cell heads

• Bottom-up ?

hard to guarantee the

placement and size of

clusters

• Top-down w.r.t. big node

use diffusing computation

but, accumulation in

deviation of head location

from IL is a problem

H0

GAP

R t

i

Page 43: Lecture 5:  Topology Control

43

Organizing neighboring clusters & heads

Deviation problem is handled locally

instead of using real locations, node i uses its

and its parent’s ILs

i calculates the ILs of next band cells in its

search region < LD , RD >

big node: <0o , 360o>

other nodes: <-60o-a , 60o+a> , where

a Sin-1(Rt / R)

for each IL, i ranks nodes within Rt radius of

the IL (by <D, A>), and selects the highest

ranked node as the corresponding cluster

head

IL(i)

IL(p.i)

RtLD RD

i2

-60o 60o

R3

search region

a

i2

jAD

Rt

GR

Page 44: Lecture 5:  Topology Control

44

Summary: static networks

• Cell structure is hexagonal cell radius:

• Time taken to form the structure is (Db), where Db = the maximum

distance between the big node and the small nodes

• Scalability in self-configuration:

local coordination: only with nodes within range

local knowledge: each node maintains info about a constant number of

nearby nodes

])32(,)32([ tt RRRR

tRR 23

Page 45: Lecture 5:  Topology Control

45

Dynamic networks

• Dynamics include: node join, leave (death), state corruption

• Common vs. rare common perturbations: node density is preserved rare perturbations: node density is destroyed

• Scalable self-healing is achieved via locality in: intra-cell healing inter-cell healing sanity checking of state (invariants)

Page 46: Lecture 5:  Topology Control

46

Local intra-cell healing

• Head shift

upon head leaving (death)

local in a radius of Rt

• Cell shift

upon the death of all the nodes in an area

of radius Rt

local in a radius of R

independent but consistent shift at

individual cells sliding of the global

head level structure

OIL

12

21

0GR

Rt

R

IL

GR

Rt

R

Page 47: Lecture 5:  Topology Control

47

Local inter-cell healing & sanity checking

• Local inter-cell healing :upon failure of intra-cell healing at head j, first, the parent of j tries to find a new head j’ if that fails, the children of j find new parents

• Local sanity checking of state invariants :upon detecting violation of the hexagonality property, node corrects itself after checking with its neighbors when state perturbation includes several nodes, the

perturbed region corrects itself from the outside going in, and all nodes are corrected within time proportional to size of perturbed region

Page 48: Lecture 5:  Topology Control

48

Summary: dynamic networks

• Cell radius for cells not adjoining any gap:

for cells adjoining a gap:

• Head tree is now minimum distance tree rooted at the big node

• Stabilization time from perturbed state: (Dp), where Dp

= diameter of the continuously perturbed area

])32(,)32([ tt RRRR

])32(,)32([ ptt dRRRR

Page 49: Lecture 5:  Topology Control

49

Summary: dynamic networks (contd.)

• Scalability in self-healing: local fault-containment and healing local knowledge

• Local healing and fault-containment enables stable cell structure

lengthened lifetime: (nc) , where nc = the number of nodes

in a cell

Page 50: Lecture 5:  Topology Control

50

Related work

• Cellular hexagon structure (Mac Donald ’79) Preconfigured & not considering self-healing

• LEACH (Heinzelman et al ’00) No guarantee about the placement and size of clusters Perturbations dealt with by globally repeating the whole

clustering process

• Logical-radius based clustering (in Banerjee ’01) non-local cluster maintenance, and no consideration of state

corruption only logical radius long links and link asymmetry are possible multiple rounds of diffusion

Page 51: Lecture 5:  Topology Control

51

ASCENT

• Adaptive Self-Configuring sEnsor Networks Topologies

• Observation: different applications may require the underlying topology to have different characteristics. For example: Minimal

Homogeneous with a certain degree of connectivity

Heterogeneous with different degrees of connectivity in different regions

• Examples of these different regions may be: Along a data flow path Avoiding a data flow path In the border of an event of interest

• Input: application tolerance specified in terms of acceptable loss rate at any node

Page 52: Lecture 5:  Topology Control

52

Model

• Adapt to empirical measurements of link quality: each node assesses

its connectivity & adapts its participation in the multi-hop topology

based on the measured operating region

• Assumptions: ASCENT needs to

turn off the radio (sleep state)

turn the NIC/MAC in promiscuous mode (passive state)

• ASCENT runs on top of MAC and below routing; does not uses any

information gathered by routing

Page 53: Lecture 5:  Topology Control

53

ASCENT Basics

• Node state: active or passive

– Active nodes are in topology & forward data packets (using orthogonal routing mechanism that runs on topology)

– Passive nodes can sleep or collect network measurements

• Each node measures # of neighbors and packet loss locally

• Each node then decides to join the network topology or to adapt

(e.g. reducing its duty cycle to save energy)

(b) Self-configuration transition(a) Communication Hole (c) Final State

Help Messages

Data Message

SinkSource SinkSource

Neighbor AnnouncementsMessages

Data Message

SinkSource

Active NeighborPassive Neighbor

Page 54: Lecture 5:  Topology Control

54

State Transitions

Test

Passive Sleep

Active

after Tt

after Tp

after Ts

neighbors < NTand• loss > LT• loss < LT & help

neighbors > NT (high ID for ties) orloss > loss T0

NT: neighbor threshold

LT: loss threshold

Tx: state timer values (x = p: passive, s: sleep, t: test)

Page 55: Lecture 5:  Topology Control

55

Details

• Each node adds a sequence number per packet (for loss detection)

• Neighbor estimator: based on a neighbor loss threshold (NLT) = 1 – 1/N (N:

number of neighbors in the previous cycle)

• Neighbor threshold value (NT) determines the average degree of

connectivity in the network

• Loss threshold determines the maximum data loss application can tolerate

• Relation between Tp/Ts (passive & sleep timers) determines amount of

energy savings and convergence time

Page 56: Lecture 5:  Topology Control

56

Performance Results

Energy Savings (normalized to the Active case, all nodes turn on) as a function of density. ASCENT provides energy savings up to 5.5 times for high density scenarios

Page 57: Lecture 5:  Topology Control

57

NT: neighbor thresholdTp: passive state timerTs: sleep state timerSleep: power radio offIdle: power radio on = Tp/Ts = Sleep/Idle = 0.004

ASCENT Energy Savings Analysis

TsTpTs

SleepNTnTsTp

TpIdleNTnIdleNT

IdlennES

**)(**)(*

*)(

1*)(

)(

NTnNT

nnES

1lim ESn

Page 58: Lecture 5:  Topology Control

63

Topology Control from a Sensing Perspective

So far we have considered only the communications perspective

Sensing coverage model: typically unit disk sensing note: depends on object being sensed

Node deployment model: deterministic with (no failures or with isolated failures) approximated by a pdf or is random (as a result of rampant errors)

Coverage requirements: Point coverage (deterministic or probabilistic guarantee) Barrier coverage (deterministic or probabilistic guarantee) Worst-case coverage: least exposed path Tracking coverage: any uncovered path has length at most l

Page 59: Lecture 5:  Topology Control

64

Sensing Coverage References

• Survey: “Coverage in Wireless Sensor Network”, Mihaela Cardei, Jie

Wu

• For 1-coverage: Pater Hall, "An Introduction to the Theory of Coverage

Processes”, 1988

• For k-coverage: Santosh Kumar and Balogh, Mobisys 2004

• For k-coverage poisson deployment: Honghai Zhang and Jennifer Hou, Mobihoc 2004

Page 60: Lecture 5:  Topology Control

65

Coverage Results

• 1-point coverage with deterministic placement: hexagonal layout is optimal

• k-point coverage with deterministic placement : question of optimal placement is open

• k-point probabilistic coverage: 

almost always k-coverage for poisson deployment

nr2 ≥ ln(n) + k ln(ln(n)) + … (error term)

where n is #sensors and r is sensing radius almost always k-coverage for random uniform deployment

has essentially same result

Page 61: Lecture 5:  Topology Control

66

Coverage Algorithms

• Checking whether network is not suitably covered point coverage violation check is possible locally

• Maintaining coverage via sleep-wakeup optimal scheme is NP-Complete, if deployment unknown

(so heuristics used) random independent scheduling, if deployment uniformly

random sentry rotation between redundant nodes in each cluster/region

Page 62: Lecture 5:  Topology Control

67

Both Communication and Sensing Topology Control

• Relation between sensing radius and communication radius

• If Comm radius ≥ 2 x Sensing radius

then (k-coverage k-connectivity)