40
1 EnviroTrack and JAM Presented by Chien-Liang Fok

1 EnviroTrack and JAM Presented by Chien-Liang Fok

Embed Size (px)

Citation preview

Page 1: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

1

EnviroTrack and JAM

Presented by Chien-Liang Fok

Page 2: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

2

EnviroTrack

A entity-tracking middleware for sensor networks

Provides an single context label abstraction that is dynamically created and logically associated with an entity Abstracts details of inter-node communication Performs of group maintenance Programmer interacts with context label rather

than changing set of nodes

Page 3: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

3

Context Label

A form of attribute-based naming Serves as an address to the entity Is distinguished by type (e.g., fire or car)

Contains aggregate state about the entity Hosts application-defined tracking objects

Active elements that perform context-specific computation or action

Abstracts a group of nodes that can sense the entity

Page 4: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

4

Problem Definition

Maintain context labels such that Each entity has one context label Context label follows the entity

Group management, leader maintenance Approximate aggregate state is maintained

Freshness constraint, Le

Critical mass constraint, Ne

Simplify application development Language support for defining context labels, aggregate

state variables, and tracking objects Directory service

Page 5: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

5

Programming Model

Page 6: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

6

Context Label Specification

To declare a context label of type e, the following must be provided: sensee() – specifies a pattern in the environment

to watch for statee() – the state data to be maintained within

the context label EnviroTrack provides a library of statee() functions Accessible by all tracking objects

Which tracking objects to associate with the label

Page 7: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

7

Group Maintenance

A group of sensors that detect the entity should produce a single context label for it

The algorithm must be lightweight and dynamic

All members of the group must satisfy sensee()

There is at most one majority leader within the group

Page 8: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

8

Group Maintenance Algorithm

If a leader exists, the leader sends heartbeat containing e Propagates h hops beyond group boundary Tells member nodes leader is still present Notifies non-members of the existence of context

label e

Page 9: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

9

G. M. Algorithm Cont.

When a member receives a heartbeat, it sets a timer. If timer expires before receiving another heartbeat, a leadership takeover protocol is triggered This is a backup to the standard leadership

handoff

Page 10: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

10

G. M. Algorithm Cont.

When a non-member node receives a heartbeat, it sets a timer If the entity is sensed before expiration, the node

joins the group If the entity is sensed after timer expires, the node

creates a new group (and context label) and declares itself leader

Page 11: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

11

Spurious Leaders

The group member algorithm may result in more than one leader

Solution: Each context label’s leader contains a weight,

initially zero Increment weight each time data is received from

the members Weight is inherited during leadership handoff Context label with greater weight wins

Unlikely for spurious leaders attain Ne

Page 12: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

12

Approximate Aggregate State

The leader of the group maintains the approximate aggregate data state

Leader sends each member Le

The member periodically sends sensor data to leader with a period of Pe = Le – d d = network delay + processing time

The leader performs aggregation every Pe A valid flag is set if Ne is not met

Page 13: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

13

Directory Service

Provides access to a particular type of context label

Use a hash function context label type physical location (x,y) Nodes within one hop of (x,y) are called directory

object Context labels periodically send their state

and location to directory object

Page 14: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

14

Language

EnviroTrack provides a language for declaring context labels and aggregate data state

Example code:

Page 15: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

15

Evaluation

Theoretical example scenario: A T-72 tank moves through a sensor field Sensors can detect tank 100m away Sensors arranged in grid 140m apart At max speed, tank moves one hop every 11.2

seconds (45km/h) Actual test setup:

1000:1 model of the above scenario 10s/hop (50km/h) and 15s/hop (33km/h)

Page 16: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

16

Tracked tank trajectory

Nodes located at integer coordinates Actual path: y = 0.5 Nodes have no notion of proximity

Page 17: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

17

Leadership Handover

Page 18: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

18

Communication Performance

System handles message loss Message loss not due to link usage Protocol uses very little bandwidth

Scalable to greater tracking difficulty

Page 19: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

19

Maximum Trackable Speed

Affected most by heartbeat period Best results when

Receive timer = 2.1 HB Time to take over leadership

Wait timer = 4.1*HB Time to create new group

Page 20: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

20

Maximum Trackable Speed

Page 21: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

21

Communication Radius & Sensing Radius Ratio

Page 22: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

22

Conclusions

EnviroTrack is a middleware for tracking entities

Relieves applications from details of Group management Directory service Data aggregation

Page 23: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

23

JAM

A protocol that allows applications to view a jammed region as an entity rather than a collection of broken links and congested nodes

Allows data to be rerouted around a jammed region and other evasive actions

Page 24: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

24

General Algorithm

Nodes within the jammed area notify nodes outside of the jammed area that they are jammed

Border nodes just outside jammed area coordinate to form groups of jammed nodes

jammed area

Page 25: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

25

Architecture

Page 26: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

26

Jam Detection

A node considers itself jammed when the utility of its communication link falls below a certain threshold Based on local data (failed channel access,

protocol violations, low SNR) When a node considers itself jammed, it

periodically sends a JAMMED message Modify MAC to bypass carrier sense phase Hopefully an un-jammed neighbor receives it

Page 27: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

27

Mapping protocol

Border nodes receive a JAMMED messages from its jammed neighbors and calculates normal direction vector to the jammed nodes These nodes are called mapping nodes

If it is not aware of a compatible group, it creates a new one with a random ID, waits a while, and broadcasts a BUILD message Two groups are compatible if the angular

difference between their direction vectors is below some threshold

Page 28: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

28

Group Coalescing

If two groups are compatible, they are coalesced after a certain time

The group with the larger group ID dominates Jammed nodes in the subordinate group is

merged with the dominant group Dominant group’s BUILD message is augmented

with subordinate group ID

Page 29: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

29

BUILD Message

Contains: ID of original sender Group ID Sequence number List of known jammed nodes List of subordinate group IDs

When received If a regular node, store data locally If a mapping node, update the list of known jammed nodes

and rebroadcast it

Page 30: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

30

Eager Eavesdropping

JAM attempts to quickly diffuse knowledge of jammed region: Forward information diffusion: As a BUILD

message is relayed around mapping nodes, each node updates list of jammed nodes

Back Flooding: When a a BUILD message is rebroadcasts, the single hop upstream mapping node processes it Updates its list of jammed nodes Does not relay it

Page 31: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

31

Edge Nodes

A mapping node that does not have a neighbor left or right of the direction vector

If a neighbor is not discovered within some time, it periodically sends a PROBE message to detect neighboring mapping node(s) or form bridge nodes

jammed area

edge node

Page 32: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

32

Bridge Nodes

Does not actually receive any JAMMED messages

Connects two edge nodes Masks areas of low connectivity A node becomes a bridge node when it

detects a PROBE message from a group it knows about A bridge node’s coalescing timer is longer to

prevent spurious bridging nodes

Page 33: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

33

Recovery

When a jammed node becomes un-jammed, it periodically sends an UNJAMMED message

When a mapping node receives it, it updates the list of jammed nodes and propagates an TEARDOWN message The opposite of a BUILD message

When all of a mapping node’s jammed neighbors are un-jammed, the mapping node becomes a regular node

Page 34: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

34

Example

[1] [2]

[3] [4]

Page 35: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

35

Example (Cont.)

[5] [6]

[7] [8]

Page 36: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

36

Simulation Methodology

GloMoSim simulator 4000 x 4000 meter field 400 nodes placed at 200m interval grid Radio settings inbetween MICA2 and WaveLAN MACA & IEEE802.11 MAC layer

Jammed area ranged from 5-144 nodes Connectivity

Low: 4 neighbors Moderate: 8 and 12 neighbors

Page 37: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

37

Simulation Results

Varying jammer range

Page 38: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

38

Simulation Results Cont.

Time to map region, 12 neighbor case 90% of mapping nodes know 1/3 of jammed region in

0.5-3 seconds

Page 39: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

39

Simulation Results Cont.

Node failure rate

Page 40: 1 EnviroTrack and JAM Presented by Chien-Liang Fok

40

Conclusions

JAM provides a protocol for mapping a jammed region Loose group semantics and eager eavesdropping Quick convergence and tolerance to failures when

network is moderately connected