**** 1 - nslab

GARUDA: Achieving Effective Reliability for
Downstream Communication in
Wireless Sensor Networks
Seung-Jong Park et al
IEEE Transactions on mobile computing
Feb, 2008
presented by jae-hong Kim
Contents

Transport Layer Issues for ad hoc WSN
 Reliable

bi-directional transport protocol
Characteristics of GARUDA
 Pulsing
based solution
 Virtual infrastructure called core
 Two-Phase Loss Recovery
 Multiple Reliability Semantics


Evaluation
Discussion
2 / 31
Transport Layer Issues for ad hoc
WSN

Vision Statement
 Reliable
and Robust bi-directional (sink to sensors
and sensors to sink) transport protocol for Ad-hoc
Wireless Sensor Networks
3 / 31
To the knowledge …


Up to this point Reliability and Robustness has
been ignored;
Possible reason:
 WSN
is low-cost;
 Not necessary (due to redundant data)
 And also difficult

But …
 We
require reliability …
 Disaster
Recovery
 Military Applications etc
4 / 31
Focus

To achieve reliability
 Reliable
Transport Layer
 No packet loss
 Bi-directional Reliability
Figure from Akyildiz et al, “Wireless Sensor Networks: A Survey”, Computer Networks, 38(4):393-422, 2002.
5 / 31
Is it challenging?
 Limitations
of sensor nodes
 Application specific requirements

Objectives
 Reliable
Transport
 Flow Control
 Congestion Control
 Self Configuration
 Energy Awareness
6 / 31
Types of Data



Single Packet
Block of packets
Stream of Packets
7 / 31
Today’s Situation

Downstream Reliability: from sink to Sensors
 Reliability
semantics are different
 PSFQ (Block of packets data)
 MOAP (block of packets data)
 GARUDA (Block of packets data) (Single Packet)
8 / 31
Introduction

Reliable downstream point-to-multipoint data delivery

The need for the reliability is dependent on the type of
applications.


Ex) security application
Reliability in multihop wireless networks vs Reliability
in wireless sensor networks

Environment considerations


Message considerations


Limited life time, bandwidth, energy, size of the network
In a sensor networks, small-sized queries
Reliability considerations

Dependent on reliability semantics
9 / 31
GARUDA

GARUDA is a large mythical
bird or bird-like creature th
at appears in both Hindu a
nd Buddhist mythology
 Transport reliably
10 / 31
Characteristics of GARUDA
1.
2.
3.
4.
An efficient pulsing-based solution for reliable
short message delivery
A virtual infrastructure called the core, which
approximates an optimal assignment of local
designated servers
A two-stage negative acknowledgment
(NACK) based recovery process and out-ofsequence forwarding
A simple candidacy based solution to support
the different notions of reliability
11 / 31
ACK / NACK Paradox (1)

NACKs
 Well
established as an effective loss
advertisement in multi-hop wireless networks
 In
 Not
lost
case loss probabilities are not inordinately high
for single-packet delivery or all packets are
 It
cannot possibly advertise a NACK to request
retransmissions
12 / 31
ACK / NACK Paradox (2)

ACK implosion
13 / 31
Pulsing based solution (1)

It incorporates an efficient pulsing based
solution, which informs the sensor nodes
about an impending reliable short-message
delivery by transmitting a specific series of
pulses at a certain amplitude and period
 Amplitude
 Much

: at least 3dB larger
larger than that of a regular data transmission
Reliability of pulsing mechanism?
 Proved
by “A Power Control MAC Protocol for Ad
Hoc Networks”.
14 / 31
Pulsing based solution (2)

WFP (Wait-for-First-Packet) pulses
Used only for first packet reliability
 Short duration pulses
 Single radio
 Advertisement of incoming packets
 Negative ACK
 Simple energy detection


Different types of WFP
Forced pulses
 Carrier sensing pulses
 Piggybacked pulses

15 / 31
Pulsing based solution (3)

A sink sends WFP pulses periodically
Before it sends the first packet
 For a deterministic period


A sensor sends WFP pulses periodically
After it receives WFP pulses
 Until it receives the first packet


WFP merits
Prevents ACK implosion with small overhead
 Addresses the single or all packet lost problem
 Less energy consumption
 Robust to wireless errors or contentions

16 / 31
Pulsing based solution (4)
17 / 31
Pulsing based solution (5)
Implicit NACK
18 / 31
Pulsing based solution (6)

3 modes in delivery procedure for single/first
packet
 1.
the advertisement that notifies the ensuring
single/first packet to all nodes with the forced
WFP pulses
 2. the delivery that sends the single/first packet
through simple forwarding (for (ex)CSMA)
 3. the recovery that sends NACKs using WFP
pulses to request for the retransmission of the
single/first packet
19 / 31
Virtual infrastructure called core (1)

The Core
 An
approximation of the minimum dominating set
(MDS) of the network sub graph to which the
reliable message delivery is desired.
 the
set of local designated loss recovery servers that
help in the loss recovery process.
 Constructing
the core during the course of a
single packet flood.
20 / 31
Virtual infrastructure called core (2)

Principle

The retransmission by
neighbor is sufficient
to recover the loss of
the same packet of all
neighbors around it
21 / 31
Virtual infrastructure called core (3)

Instantaneous Core Construction
 To approximate the MDS problem, we select a node at 3i hop
distance as a core node
Approximate
number of hops
from the sink to
the sensor
22 / 31
Two-Phase Loss Recovery (1)


Core recovery – first phase recovery
Out-of-sequence Packet
Forwarding with A-map
Propagation



Out-of-sequence : NACK
implosion
Solve the above problem :
uses a scalable A-map
(Available Map)
Overhead?


The ratio of the
number of core
nodes (10 – 30%)
A map request ratio
(less than 1 %)
23 / 31
Two-Phase Loss Recovery (2)


Non-core recovery – second phase recovery
Starts only when a noncore
node overhears an A-map from
the core node indicating that it
has received all the packets in a
message
24 / 31
Multiple Reliability Semantics (1)
25 / 31
Multiple Reliability Semantics (2)


Involving nodes employing a
candidacy check before
participating in the core
construction algorithm
The candidacy check is where
nodes, upon receiving the first
packet, determine whether or
not they belong in the subset
G(s)
26 / 31
Evaluation (1)

For n2-based experiments
 100
nodes in 650 m * 650 m square area
 Randomly deployed within that area
 Sink is located in center
 Transmission range of each node is 67 m
 Channel capacity is 1Mbps
 Each message : 100 packets (25 pkts/ sec)
 Size of packet : 1Kbyte
27 / 31
Evaluation (2)

Evaluation of single-packet delivery
28 / 31
Evaluation (3)

Evaluation of multiple-packet delivery
29 / 31
Discussion


Considerations for upstream?
Network model
 Sink
and sensors static?
 There is exactly one sink coordinating the sensors?

Congestion control?
 If
congestions are appeared, how can GARUDA
control them?

Loss recovery for noncore nodes
 How
can we reduce snooping overheads?
30 / 31
Q&A
31 / 31