tcp in manet

32
1 ATP: A Reliable Transport Protocol for Ad-hoc Networks Sundaresan, Anantharam, Hseih, Sivakumar

Upload: channer

Post on 07-Feb-2016

62 views

Category:

Documents


2 download

DESCRIPTION

ATP: A Reliable Transport Protocol for Ad-hoc Networks Sundaresan, Anantharam, Hseih, Sivakumar. TCP in MANET. TCP performance degrades significantly in MANET TCP assumes the packet losses as an indication of network congestion. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: TCP in MANET

1

ATP: A Reliable Transport Protocol for Ad-hoc Networks

Sundaresan, Anantharam, Hseih, Sivakumar

Page 2: TCP in MANET

2

TCP in MANET

TCP performance degrades significantly in MANET– TCP assumes the packet losses as an indication of network

congestion.– But link failures due to mobility are the primary reason for

most of packet losses. Some approaches as TCP variation to alleviate the

performance degradation– Use cross layer notifications to report route failure– TCP-ELFN: Explicit Link Failure Notification– TCP-EPLN&BEAD

The authors have more to say:– TCP mechanisms are fundamentally inappropriate for ad-hoc

networks

Page 3: TCP in MANET

3

Outline

TCP in mobile ad-hoc networks and drawbacks

ATP (Ad-hoc Transport Protocol) Performance evaluation

– TCP, TCP-ELFN, ATP Conclusions

Page 4: TCP in MANET

4

Reliable Transportation in TCP (1)

Window based transmission Slow-start Loss based congestion detection Linear increase multiplicative decrease Dependence on Acks

Page 5: TCP in MANET

5

Reliable Transportation in TCP (2)

Window Based Transmissions– Flow control: rwind

How many more packets can the receiver handle?– Congestion control: cwind

How many more packets can the network handle?– Sending rate is determined by min( rwind, cwind )

Page 6: TCP in MANET

6

Window Based Transmissions - Burstiness

Leads to burstiness Bunch of ACKs arrive together is quite common in

MANET– Short-term unfairness of the CSMA/CA mechanism– Burstiness: bunch of ACKs trigger bunch of packets in a

very short period. Why is burstiness bad?

– Varying round-trip time estimates cause RTO inflation Potentially leads to delayed loss recovery

– Bursty transmissions can result in higher contention at MAC layer; pose a problem especially under the heavy-load conditions

Page 7: TCP in MANET

7

Burstiness in RTT measurements

The value of RTT changes dramatically.

Page 8: TCP in MANET

8

Slow Start

Exponential growth to available capacity– It takes several RTT periods to reach available bandwidth

Slow start is not a serious problem for wireline network – associations are expected in the congestion avoidance phase for

most of the time. Not good for wireless ad hoc network

– Due to the dynamic nature of ad hoc networkfrequent packet losses → frequent timeouts → more slow start

phasesAgain, packet loss does not necessarily mean congestion. – During the lifetime of an association, considerable amount of

time is spent in slow start phase– Under-utilization of network resources

Page 9: TCP in MANET

9

Time spent in Slow-Start phase

Average time in Slow-Start phase.Total simulation time: 100sTCP New Reno

1. The time spent in Slow-Start increases with the increasing of the mobility.

2. The proportion of time goes above 50% for the higher load situation.

3. The connections spend a large portion of the lifetime probing for the available bandwidth.

50%

Page 10: TCP in MANET

10

Loss Based Congestion Indication

TCP detects congestion through the occurrence of losses– Either three duplicate ACKs or a timeout– Congestion is by far the main source of packet

losses in wireline network.

Losses in ad-hoc networks can occur due to either congestion or route failures

Loss on wireless links means try harder, loss on wired means backoff

Page 11: TCP in MANET

11

Losses due to route failure

Significant portion of losses “perceived” to be due to route failures

50%

Page 12: TCP in MANET

12

Multiplicative Decrease

Multiplicative decrease on congestion window when TCP detects congestion

In MANET, losses can happen by route failure– A new route might be used instead– Slow start to reach available bandwidth

TCP-ELFN freezes the TCP sender while a new route is being calculated, but still uses the old congestion windows state after freezing

– Congestion window state for previous route is not appropriate for the new route

Page 13: TCP in MANET

13

Dependence on ACKs

TCP relies on ACK very much– The acknowledgement of the correct receiving.– The progression of its congestion window

Acks can amount to 10-20% of data stream rate

Large volume of ACKs introduces more contention in MAC layer if the same path is used as reverse path.

Large volume of ACKs increases the probability of experiencing route failures (loss of ACKs) if different path is used.

Page 14: TCP in MANET

14

Outline

TCP in mobile ad-hoc networks and drawbacks

ATP (Ad-hoc Transport Protocol) Performance evaluations

– TCP, TCP-ELFN, ATP Conclusions

Page 15: TCP in MANET

15

Key design elements of ATP

Cross layer coordination

Rate based transmissions– This is the core of ATP

Decoupled congestion control and reliability

Page 16: TCP in MANET

16

Layer Coordination

Similar to TCP-ELFN

– Utilize explicit feedback from intermediate nodes.

ATP uses layer coordination for – Path failure notification– Initiating a sending-rate estimation for the new

route

Page 17: TCP in MANET

17

Rate based transmissions

What is rate based transmission– Transmit fixed size of data in each time interval.

GSM example, 260bits from speech codec in every 20ms– Use timer to clock the new data, not the sending window

Avoids drawbacks due to burstiness

The need for self-clocking by the arrival of ACKs is eliminated

– Allows decoupling of congestion control mechanism from the reliability mechanism

Timer granularity in low bandwidth MANETS large enough to be realized without significant overheads

Page 18: TCP in MANET

18

Decoupling of Congestion Control & Reliability

For congestion control:– Intermediate nodes provide the feedback of

available rate.– The feedback is piggybacked on forward path and

sent back from receiver to sender.– The sender adjusts the sending rate accordingly.

For reliability:– The receiver uses SACK to report any new holes

in the data stream.– Only use SACK, no cumulative ACK

Page 19: TCP in MANET

19

Detailed ATP

ATP Intermediate Node ATP Receiver ATP Sender

Page 20: TCP in MANET

20

ATP Intermediate Node (1)

Two parameters are measured– Qt , the average queuing delay per packet at the node itself– Tt , the average transmission delay at the node’s transmitter– Qt and Tt are maintained on a per-node basis– Update after every instantaneous measurement

– D = Qt +Tt , the total delay at current node, 1/D is the rate that the current node can handle.

(1 )

(1 )t t sample

t t sample

Q Q Q

T T T

Page 21: TCP in MANET

21

ATP Intermediate Node (2)

ATP header has an additional field other than TCP header: the rate feedback D

Update the D in each outgoing packet

Source Destination

Node i-1

Node i

Node i+1

Di-1

Di

1

1 1

( ) ( )( )

i t t i t t i i

i i t t i i

D Q T if Q T DD D if Q T D

Max Delay

Page 22: TCP in MANET

22

ATP Receiver (1)

The receiver provides periodic feedback to the sender for reliability and congestion control purpose

– Feedback is triggered by an epoch timer of period E Congestion & Flow Control feedback

– Calculate the average delay for one flow

– Application reading rate Rapp --- flow control– Send rate feedback to the sender

(1 )avg avgD D D

1/1/avg avg app

app

D if D RR otherwise

The value of feedback

Page 23: TCP in MANET

23

ATP Receiver (2)

Reliability feedback– Selective ACKs– Send out periodically to the sender– Contain at most 20 SACK blocks in every

feedback packet (report 20 holes in the received data stream).

Page 24: TCP in MANET

24

ATP Sender (1)

Quick Start– Send a probe packet to the receiver in order to

get back the initial sending rate– After rate feedback comes back, the sender

adjusts the sending rate accordingly.– The sender reaches available rate after 1 RTT.– Quick-start is performed both during

Associate establishment New path takes place of the original path due to link

failures.

Page 25: TCP in MANET

25

ATP Sender (2)

Congestion Control– Three phases: (rate) increase phase, decrease

phase, maintain phase– Update the sending rate S

R SS S if S R Sk

S R else if S Runchange otherwise

R : the new feedback rate; Φ : a small constant used to prevent fluctuations;k : a scale to reduce the increasing amount since increasing 1 pkt per sec in upper layer can introduce more control pkts in MAC layer.

Page 26: TCP in MANET

26

ATP Sender (3)

In case of the loss of feedback packets– Multiplicative decrease of sending rate if feedback

does not appear in every epoch time– If no feedback till the end of the third epoch, send

a probe packet to the receiver

Reliability: Process the SACK information– Mark the packets for retransmission accordingly.– Data for retransmission have higher preference

than new data.

Page 27: TCP in MANET

27

Performance Evaluation

Simulation environment– ns2 simulator– 1000m*1000m square, 100 nodes– Random way point mobility with 3 speeds

1 m/s, 10 m/s, 20 m/s– DSR routing– IEEE802.11b MAC– Network load: 1 flow, 5 flows and 25 flows, resp.– Packet size: 512 bytes– Epoch time: 1 sec

Page 28: TCP in MANET

28

Congestion window/rate progression vs. time (1 flow)

Default TCP TCP-ELFN

ATP

Route failure

Page 29: TCP in MANET

29

Congestion window/rate progression vs. time (25 flow)

Default TCPTCP-ELFN

ATP

Page 30: TCP in MANET

30

Reasoning

ATP does not decrease its rate on route failures unless dicated by the rate feedback mechanism

Owing to quick-start, it quickly catches upto the available bandwidth

Once it reaches avalable capacity, it maintains a steady rate

Page 31: TCP in MANET

31

Throughput vs. Mobility

5 flows 25 flows

ATP

It would be interesting to see the comparison between ATP and TCP-EPLN&BEAD.

TCP defaultTCP ELFN

Page 32: TCP in MANET

32

Conclusions

TCP not appropriate for MANETs

ATP looks promising – Rate based transmissions– Quick start– Decoupling of congestion control and reliability– Layer coordination– Avoid use of retransmission timeouts

What about VANETs?