tcp in manet
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 PresentationTRANSCRIPT
1
ATP: A Reliable Transport Protocol for Ad-hoc Networks
Sundaresan, Anantharam, Hseih, Sivakumar
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
3
Outline
TCP in mobile ad-hoc networks and drawbacks
ATP (Ad-hoc Transport Protocol) Performance evaluation
– TCP, TCP-ELFN, ATP Conclusions
4
Reliable Transportation in TCP (1)
Window based transmission Slow-start Loss based congestion detection Linear increase multiplicative decrease Dependence on Acks
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 )
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
7
Burstiness in RTT measurements
The value of RTT changes dramatically.
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
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%
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
11
Losses due to route failure
Significant portion of losses “perceived” to be due to route failures
50%
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
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.
14
Outline
TCP in mobile ad-hoc networks and drawbacks
ATP (Ad-hoc Transport Protocol) Performance evaluations
– TCP, TCP-ELFN, ATP Conclusions
15
Key design elements of ATP
Cross layer coordination
Rate based transmissions– This is the core of ATP
Decoupled congestion control and reliability
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
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
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
19
Detailed ATP
ATP Intermediate Node ATP Receiver ATP Sender
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
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
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
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).
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.
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.
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.
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
28
Congestion window/rate progression vs. time (1 flow)
Default TCP TCP-ELFN
ATP
Route failure
29
Congestion window/rate progression vs. time (25 flow)
Default TCPTCP-ELFN
ATP
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
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
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?