1-1 Transport Layer. 1-2 Motivation What is expected out of a transport protocol for sensor...

Preview:

Citation preview

1-1

Transport Layer

1-2

Motivation

What is expected out of a transport protocol for sensor networks ? • Reliability, • QoS (e.g., delay guarantees, priority

delivery),• Congestion and flow control,• Energy efficiency,• Fairness.

1-3

Transport-Layer Challenges in WSNs

Variety of communication models including many-to-one.

Wireless communications. Energy constraints. Data centric QoS.

Instead of source-destination specificic. E.g., “provide to sink sufficient quality of

information about an event”.

1-4

Motivation ..cont’d.

Application specific. Spectra for known constraints:

Low data Rate High data Rate

Power limited Not Power limited

Storage limited Not Storage limited

Bursty samples Periodic samples

1-5

Motivation ..cont’d.

In general,

Low data Rate High data Rate

Power limited Not power limited

Storage limited Not storage limited

Sink

user

1-6

Trend

Departure from TCP-like model. Relies almost exclusively on end-to-end

involvement. In general, proposed protocols engage

intermediate nodes. Transport layer? Cross-layer approach.

1-7

Existing Solutions

Reliable delivery. Congestion control. Real-time scheduling.

1-8

Reliable Delivery

1-9

PSFQ

Pump Slowly, Fetch Quickly. Wan et al., ACM WSNA 2002.

1-10

Motivation

Most sensor network applications do not need 100% reliability. Sources => sink.

But applications like re-tasking of sensors need reliable delivery. Sink => sources.

Current sensor networks are application specific and optimized for that purpose.

Future sensor networks may be general purpose to some extent – ability to re-program functionality.

1-11

Goals

Provide lossless delivery. Minimize control overhead. Provide delay guarantee for delivery to

all intended nodes.

1-12

Probability of successful delivery using end-to-end model

1

2

n-1

n

(1-p)

(1-p)n-1

(1-p)n

p is the error rate of wireless link between two hops

1-13

PSFQ’s Main Principle

“Slow” data propagation (pump). Enough time for hop-by-hop error

recovery (fetch).

1-14

Multi-hop packet forwarding

1 2 3 4

1

11

22 2

33 3

When no link Loss – multi-hop forwarding takes place

1-15

Recovering from errors

2 431

2 lost

1 1 1

33

3

Recover 2

Recover 2

Recover 2

Error recovery messages are wasted

1-16

How PSFQ recovers from errors:“store and forward”

2 31 4

2 lost

Recover 2

1

22

3

11

33 2

2

No waste of error recovery messages

1-17

PSFQ operation

Alternate between multi-hop forwarding when low error rates and store-and-forward when error rates are higher.

3 functions: Pump: message relaying. Error recovery: fetch. Status reporting: report.

1-18

PSFQ Pump Schedule

If not duplicate and in-order and TTL not 0 then Cache and schedule for forwarding at time t (Tmin<t<Tmax)

Tmin

TmaxTmin

Tmax

21

1

1

1

t

1-19

“Fetch Quickly” Operation

21

11

2 lost2

3

Tmin

Tmax

TrRecover 2Tr 2

2

When loss detected,then fetch mode.

Loss aggregation: try to recover a windowof lost packets.

1-20

“Proactive Fetch”

Tproc

1 2

last-1

last

last

1-21

Report

Report aggregation. Carries status information: node id, seq.

#. Triggered by user.

Inject data message with “report” bit set.

1-22

Performance evaluation

Compare with SRM (Scalable Reliable Multicast)

Performance Metrics Average Delivery Ratio Average Latency Average Delivery Overhead

1-23

Experimental setup

2 Mbps CSMA/CA Channel AccessTmax = 100ms Tmin = 50ms Tr = 20ms

1-24

Error tolerance

1-25

Average latency

1-26

Overhead

1-27

Conclusion - PSFQ

Light weight and energy efficient Simple mechanism Scalable and robust Need to be tested for high bandwidth

applications Cache size limitation

1-28

RMST

1-29

RMST

Reliable Multi-Segment Transport.

Where to do reliability? MAC. Transport. Application.

1-30

MAC reliability

802.11. RTS/CTS, Data, Ack. Basic stop-and-wait ARQ. No ARQ when in broadcast or multicast

modes.• Random slot selection.

Options: No ARQ. AEQ always. Selective ARQ.

1-31

MAC reliability (cont’d)

Without ARQ: Use broadcast mode. For unicast: address screening at routing layer. +’s: no overhead.

With ARQ: Unicast transmissions. For broad- & multicast, use multiple unicast. Number of retries is configurable.

Selective ARQ: Unicast uses ARQ. Broad- and multicast use no ARQ.

• E.g., route discovery.

1-32

Transport reliability

Strictly e2e. Initiated by sink.

Local recovery. Intermediate nodes trigger repair when loss

is detected. Nodes cache packets.

NACK-based.

1-33

Application-layer reliability

Directed-diffusion based. Sink sends out request (“interest”). When complete data received, sink removes

request.

1-34

Question?

Benefits of lower-layer reliability? Additional overhead?

1-35

RMST overview

Functions: Fragmentation/reassembly. Guaranteed delivery.

Unique identifiers: “No fragments”. Fragment id’s and number of fragments.

Loss detection and repair: Sequence # holes and timers. Loss detection at either sinks or

intermediate nodes. NACKs.

1-36

Preliminary analysis

Demonstrate the benefits of hop-by-hop reliability.

1-37

RMST evaluation

MAC-only reliability. Local recovery.

With and without MAC reliability. End-to-end reliability.

With and without MAC reliability.

1-38

Observations

When there is no transport reliability: MAC reliability critical in lossy links.

Hop-by-hop transport reliability: Adds little to reliable MAC. But, hop-by-hop transport reliability only more

efficient than adding MAC reliability.• MAC ARQ overhead incurred in every packet.

E2E transport reliability: When no MAC reliability is used, simulation does not

terminate: hop-by-hop recovery is critical. If MAC reliability used, hop-by-hop and e2e transport

reliability are equivalent.

1-39

Observations (cont’d)

Experiments with high error rates: Hop-by-hop transport reliability without MAC

reliability. Hop-by-hop transport reliability+Sel. ARQ. E2e transport reliability+ Sel. ARQ.

Hbh transport reliability without ARQ breaks down at high error rates. Routing has hard time establishing routes.

1-40

SWSP

Simple Wireless Sensor Protocol. Design challenges:

Limited capabilities. Assumptions:

“Fixed network” topology. Access points as data collectors.

1-41

Why not TCP?

Too heavy-duty. Congestion control and wireless links.

Disable congestion control? Low bandwidth.

Buffer size. Small windows.

Multiple connections. Single connection.

1-42

SWSP overview

1-43

SWSP overview

Disconnected Connecting

Disconnecting

Ack wait

Connected

Requested

Poweroff

On

Ack received

Data request

Datasent

Leave

Leave

Ack rec’d Datasent

1-44

Observations

Sensor registers with an AP. Listens for RR messages. Sends registration. Waits for ACK => “connected” state.

Window size? Periodic KA from sensors. Data retransmitted after 3 retries. ACKS piggybacked onto RR messages. Data piggybacked onto KA messages.

1-45

SWSP evaluation

Methodology: Platform:

• PC with Linux• Simulated different sensors as different

processes.• AP simulated using another PC.• Wireless communication.

Metrics:• Throughput: # of bytes received by AP/time.• Delay: time(ACK-recv’d) – time(data-sent).

1-46

SWSP evaluation (cont’d)

Throughput increases up to certain number of sensors; then decreases as sink gets overrun.

Delay increases substantially beyond a given number of sensors.

Solutions?

1-47

Congestion Control

Limited bandwidth. Congestion is likely, e.g., when an event

is detected.

1-48

Event-to-Sink Reliable Transport (ESRT) for Wireless Sensor Networks

Akyildiz et al., ACM Mobihoc 2003 Event-to-sink reliability. Self-adjusting. Energy awareness [low power

consumption requirement!]. Congestion control. Different complexity at source and

sink.

S

1-49

ESRT’s definition of reliability

Reliability is measured in terms of the number of packets received. Or reporting frequency i.e., number of packets/decision interval.

Observed reliability: number of received data packets in decision interval at the sink.

Desired reliability: number of packets required for reliable event detection.

Reporting rate: number of packets sent by sensor over time interval.

Normalized reliability: observed/desired.

1-50

ESRT problem definition

Determine reporting frequency of source nodes to achieve required reliability at sink with minimum resource consumption.

1-51

Preliminary observations:

Reliability increases as reporting frequency increases up to a certain threshold.

Why?

1-52

ESRT operation

1-53

Algorithm for ESRT

If congestion and low reliability: decrease reporting frequency aggressively. (exponential decrease).

If congestion and high reliability: decrease reporting to relieve congestion. No compromise on reliability (multiplicative increase).

If no congestion and low reliability: increase reporting frequency aggressively (multiplicative increase).

If no congestion and high reliability: decrease reporting slowing (half the slope).

1-54

Components of ESRT

In sink: Normalized reliability computation. Congestion detection mechanism.

In source: Listen to sink broadcast Overhead free local congestion detection

mechanismE.g., buffer level monitoring, CN – Congestion

Notification

1-55

Performance results (based on simulations)

Starting with no congestion and low reliability:

1-56

Performance results cont’d

Starting with no congestion and high reliability:

1-57

Performance results cont’d

Starting with congestion and high reliability:

1-58

Performance results cont’d

Starting with congestion and low reliability:

1-59

Performance results cont’d

Average power consumption while starting with no congestion and high reliability:

1-60

Challenges with ESRT

Multiple concurrent events. Is there a way to slow down the nodes

causing the congestion ? Others?

1-61

CODA

1-62

COngestion Detection and Avoidance Importance of congestion control.

1-63

What is CODA ?

Energy efficient congestion control. Three mechanisms are involved:

Congestion detection Open-loop hop-by-hop backpressure. Closed-loop multi-source regulation.

1-64

Congestion detection

Accurate and efficient congestion detection is important Channel loading – sample channel at

appropriate rate to detect congestion.

1-65

Open-loop h-by-h backpressure

6

1 2

4

5

3

Congestion detected

Upstream nodedecides to propagatebackpressure or not.

1-66

Closed loop multi-source regulation

1 2

1,2,3

ACK

4,5,6 Congestion detected

7,8

Regulate bit is set

ACK

1-67

Congestion detection schemes Buffer occupancy.

Not reliable in CSMA networks. Channel loading.

Good for the immediate neighborhood. Energy considerations.

Report rate. Report rate goes down, congestion. Detection based on report rate needs to

react on longer time scale.

1-68

CODA overview

Combination of backpressure (fast time scale) with closed-loop congestion control.

Backpressure targets “local” congestion, whereas closed-loop regulation targets persistent congestion.

Backpressure is cheaper/simpler since it’s open loop.

Congestion control requires a feedback loop. Uses ACK from sink to self-clock.

1-69

CODA performance metrics

Average Energy Tax = Total packets dropped in network / Total packets received at sink

Average Fidelity Penalty = Difference between average

number of packets delivered at sink using CODA and using ideal congestion scheme.

1-70

Simulation Setup

Random network topologies with network size from 30 to 120 nodes.

2Mbps IEEE 802.11 MAC (RTS/CTS are disabled).

Directed diffusion is used as routing core.

Fixed work load, 6 sources and 3 sinks. Source generate data at different rates. Event packet is 64 bytes and interest

packet is 36 bytes.

1-71

Simulation Results(Case 1: Dense Source , High Rate)

1-72

Simulation Results(Case 2: Sparse Sources, Low Rate)

1-73

Simulation ResultsCase 2: Sparse Source, Low Rate

1-74

Simulation Results(Case 3: Sparse Sources, High Rate)

Network Size (#no of nodes)

1-75

Conclusion

CODA’s energy efficiency. CODA’s ability to handle persistent and

transient congestion.

1-76

Real-Time Scheduling

Some mission-critical applications may impose strict deadline delivery.

E.g., control and actuation, emergency response, surveillance.

Goal shifts from delivery reliability to minimizing packet deadline miss ratio.

1-77

Velocity Monotonic Scheduling VMS is packet scheduling mechanism

that schedules forwarding of packets based on: Time until packet deadline expiration (t). Physical distance (d) between current node

and destination. Required velocity v = d/t. Packet priority directly proportional to its

velocity.

1-78

VMS: Observations

Implementation via priority queues or separate FIFO queues.

Drop discipline: drop packets that have missed their deadline.

Cross-layer approach for packet scheduling: Control random backoff at the MAC layer. Packets with higher priority use smaller

backoff.

1-79

Transport protocols: summary

1-80

Pump Slow Fetch Quickly PSFQPump Slow Fetch Quickly PSFQ

For sink-to-source communication (e.g. network reprogramming)

Reliability via retransmissions

Sequence-driven loss detection

C.Y. Wan, A.T. Campbell, and L. Krishnamurthy. PSFQ: A Reliable Transport Protocol for Wireless Sensor Networks. WSNA'02, September 28, 2002, Atlanta, Georgia, USA.

1-81

RMSTRMST

End-to-end or hop-by-hop repair (the latter is generally better)

Suggests that repair could be done at either MAC layer (ARQ retransmissions) or Transport Layer (requests based on fragment numbers etc.)

Timer-driven loss detection and local data caches Fits with the Directed Diffusion API

F. Stann and J. Heidemann. RMST: Reliable Data Transport in Sensor Networks. IEEE SNPA'03.

1-82

ESRTESRT Aim for overall quality of service rather than node-to-node

reliability

Sankarasubramaniam, Y., Akan, O.B., and Akyildiz, I.F., "ESRT: Event-to-Sink Reliable Transport in Wireless Sensor Networks ", In Proc. ACM MobiHoc`03

1-83

CODACODA

Sankarasubramaniam, Y., Akan, O.B., and Akyildiz, I.F., "ESRT: Event-to-Sink Reliable Transport in Wireless Sensor Networks ", In Proc. ACM MobiHoc`03

Receiver based congestion detection Open loop hop-by-hop backpressure Closed-Loop multi-source regulation

1-84

Summarizing Transport IssuesSummarizing Transport Issues Because of harsh conditions and severe

constraints, it may be better to implement reliability in a hop-by-hop rather than end-to-end manner at either the MAC or transport layer

For energy efficiency, it is best to avoid congestion entirely, or have packet losses occur close to the source. Back pressure is a useful technique.

Where possible, scheduled solutions are preferable.

s

1-85

WSN Transport: Considerations

Departure from TCP-like model. Application dictates needed

functionality. Hop-by-hop reliability.

Why have a transport layer? Transport protocol suite or flexible

protocol which can be customized? What kind of functionality?

E.g., for reliability, would link-layer error recovery suffice?

Recommended