You are on page 1of 35

Transport Layer for Mobile Ad

hoc Networks

CS – 647: Advanced Topics in


Wireless Networks

Drs. Baruch Awerbuch and Amitabh Mishra


Computer Science Department
Johns Hopkins

5-1
Reading
 Chapter 7 – Ad Hoc & Sensor Networking,
Cordeiro & Agrawal, 2007
 One of the suggested text for the course

5-2
Outline
 Overview of TCP
 The problems of TCP over MANETs
 Overview of best transport protocols
 In depth
 Specific problems of TCP over MANETs
 Details of major TCP variants
 Discussion - other efforts

 Conclusion

5-3
TCP in Wired Network and
MANET
Data stream in Wired Network

ACKs stream

Data stream in a MANET


TCP TCP
Source 1 2 3 N Sink
4

ACKs stream

5-4
Introduction
Network Architecture at a
Crossroads
 Wireline-centric network design is “obsolete”
 New network environments have emerged
 Ad hoc, sensors, consumer-owned, delay-tolerant
 New networking technologies have emerged
 UWB, cooperative approaches, MIMO, directed antennas
 The R&D community recognizes the need for
change

5-5
Introduction
Revisiting the Current Transport
Architecture
 The vision:
 Wireless as an integral part of the network
 Multiple wireless hops: not just the last mile
(Cellular)
 Pockets of wireless ad hoc connectivity

 A new protocol stack is required


 Is TCP/IP capable of delivering?

5-6
Problem Statement
 Why does TCP perform poorly in MANETs?
 Developed for Wireline networks
 Assumes all losses congestion related

 Many TCP variants have been proposed


 How good are they?
 Are they sufficient?

 Are there any other alternatives?


 Are non-tcp protocols the solution?

5-7
Our Goal
 Identify the problems of TCP in MANETs.
 Evaluate various major TCP variants.
 12 TCP variants, 7 improvement techniques

 Observations:
 Most TCP variants are NOT sufficient.
 A new transport layer protocol may be/is
needed.

5-8
TCP Basics
 Byte Stream Delivery

 Connection-Oriented: Two communicating TCP


entities (the sender and the receiver) must first
agree upon the willingness to communicate

 Full-Duplex: TCP almost always operates in full-


duplex mode,
 TCP exhibit asymmetric behavior only during connection
start and close sequences (i.e., data transfer in the
forward direction but not in the reverse, or vice versa)

5-9
Reliable TCP Guarantees
 A number of mechanisms help provide the guarantees:

 Checksums: To detect errors with either the TCP header or data

 Duplicate data detection: Discard duplicate copies of data that


has already been received

 Retransmissions:
• For lost and damaged data
• Due to lack of positive acknowledgements
• Timeout period calls for a retransmission

 Sequencing: To deliver the byte stream data to an application in


order

 Timers: Various static and dynamic timers used for deciding


when to retransmit

 Window: For flow control in the form of a data


transmission window size
5-10
Overview

Overview of TCP Concepts


 Conventional TCP: Tahoe, Reno, New-Reno
 Sending rate is controlled by 34
Congestion
 Congestion window (cwnd): limits the #32 detected

of packets in flight 30
28
2

 Slow-start threshold (ssthresh): when 26


CA start 24

Congestion windows size


22 3 n
io
st c e
 Loss detection
e 4
20 ng an
Co oid Fast retransmit/
18 av
 3 duplicate ACKs (faster, more
fast recovery
16 n
io
threshold e st c e
efficient) 14 ng an
Co oid
av
12
 Retransmission timer expires (slower, 10

rt

rt
sta

sta
1 threshold
less efficient) 8

w
Slo

Slo
6
 Overview of congestion control mechanisms4
2
 Slow-start phase: cwnd start from 1 0
and increase exponentially 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Time

 Congestion avoidance (CA): increase Slow-start Congestion


linearly
avoidance
 Fast retransmit and fast recovery:
Trigger by 3 duplicate ACKs
5-11
TCP Basics
34
Congestion
32 detected
30
2
28
26
24
Congestion windows size

22 n
tio e
3
e s c 4
20 ng an
Co oid Fast retransmit/
18 av
fast recovery
16 n
threshold s tio e
e c
14 o ng dan
C oi
12 av
rt

rt

10
sta

sta

1 threshold
8
w

w
Slo

Slo

6
4
2
0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Time
Slow-start Congestion
avoidance
5-12
Congestion Control
 Slow Start (SS): A mechanism to control the transmission rate)
 When TCP connection starts (Initial Value): CWND =1,
 congestion window increases by one segment for each
acknowledgement returned

 Congestion Avoidance(CA): Used to reduce the transmission


rate
 When Slow Start drops one or more packets due to
congestion

 Fast Retransmit: Sender receiving triple duplicate ACKs


 Immediate transmission of missing packet without waiting
for the Retransmission Timeout to expire

 Fast Recovery: In SS or CA when sender receiving triple


duplicate ACKs  Sender only enters Congestion Avoidance
mode

5-13
Overview

What is Different in MANETs?


1. Mobility
 Route stability and availability
2. High bit error rate
 Packets can be lost due to “noise”
3. Unpredictability/Variability
 Difficult to estimate time-out, RTT, bandwidth
4. Contention: packets compete for airtime
 Intra-flow and inter-flow contentions
5. Long connections have poor performance
 More than 4 hops thruput drops dramatically

5-14
Overview

Overview of Best Protocols


 TCP-Westwood [Casetti et. al.]

 Estimate bandwidth to alleviate the effect of wireless errors.


 TCP-Jersey [Xu et. al.]
 Estimate bandwidth to alleviate the effect of wireless errors.
 Congestion warning assists the determination of packet loss due to
wireless error from congestion.
 ATP [Sundaresan et. al.]

 Rate based transmission, periodic rate feedback, no timeout concept,


reliability provided by SACK.
 Split-TCP [Kopparty et. al.]
 Separating congestion control from reliability.
 Dropped packets are recovered from the most recent proxy instead of
the source.

5-15
Why Does TCP Fail in MANETs?
Specific problems are identified:
1. TCP misinterprets route failures as congestion
2. TCP misinterprets wireless errors as congestion
3. Intra-flow and inter-flow contention reduce
throughput and fairness
4. Delay spike causes TCP to invoke unnecessary
retransmissions
 RTO too small  unnecessary retransmissions.
5. Inefficiency due to the loss of retransmitted packet
 When retransmitted packet is lost timer expires 
performance drops

5-16
Specific problems of TCP over MANETs

TCP in MANET
 TCP misinterprets route failures as congestion
 Effects: Reduce sending rate
 Buffered packets (Data and ACKs) at intermediate
nodes are dropped.
 Sender encounters timeout.
• Under prolonged disconnection, a series of timeouts may be
encountered.

5-17
Specific problems of TCP over MANETs

TCP in MANET
 TCP misinterprets wireless errors as
congestion
 Effects: Incorrect execution of congestion control
 Performance drops.
 Wireless channel is error-prone compared to wireline
• Fading, interference, noise

5-18
Specific problems of TCP over MANETs

TCP in MANET
 Intra-flow and inter-flow contention
 Effects: Increased delay, unpredictability, and unfairness.
 Inter-flow contention: contention of nearby flows.
 Intra-flow contention: between packets of the same flow (e.g.
forward data and reverse ACKs).
 Wireline: only packet on same link “compete”
 Wireless: all close by devices compete for the channel

Two nearby flows


Data stream

ACKs stream

5-19
Drawback of TCP Exponential Back Off

5-20
Impact of Partition on Throughput

A X Y
S P Z
B C
D
Link Failure
Data transfer continues
in spite of failure

No communication between the partitions

5-21
Effects of Partitions on TCP

Node 5 moves away from node 3 (short-term partition)

5-22
Reestablishing Path

5
2
8

1 7
3
9

6
4

The routing protocol reestablishes the path through node 6

5-23
Long Term Partition

Node 5 moves away from node 3 (long-term partition)

5-24
Long Term Network Partition

No communication between the partitions

5-25
TCP Throughput
 Larger the number of nodes a TCP connection needs to span, lower is
the end-to-end throughput, as there will be more medium contention
taking place in several regions of the network

 TCP throughput is inversely proportional to the number of


hops
5-26
Impact of Lower Layers on TCP -MAC
 It is intended for providing an efficient shared broadcast
channel through which the involved mobile nodes can
communicate
 In IEEE 802.11, RTS/CTS handshake is only employed when the
DATA packet size exceeds some predefined threshold
 Each of these frames carries the remaining duration of time for
the transmission completion, so that other nodes in the vicinity
can hear it and postpone their transmissions
 The nodes must await an IFS interval and then contend for the
medium again
 The contention is carried out by means of a binary exponential
backoff mechanism which imposes a further random interval
 At every unsuccessful attempt, this random interval tends to
become higher

5-27
Impact of Lower Layers on TCP -MAC
 Consider a linear topology in which each node can only communicate with its
adjacent neighbors
 In addition, consider that in Figures (a) and (b) there exist a single TCP
connection running between nodes 1 and 5

5-28
Capture Conditions

 In Figure (c) where there are two independent connections,(connection 2-


3) (connection 4-5)
 Assuming that connection 2-3 experiences collision due to the hidden node
problem caused by the active connection 4-5 , node 2 will back off and
retransmit the lost frame
 At every retransmission, the binary exponential backoff mechanism
imposes an increasingly backoff interval, and implicitly, this is actually
decreasing the possibility of success for the connection 2-3 to send a
packet as connection 4-5 will “dominate” the medium access once it has
lower backoff value
 In consequence, the connection 2-3 will hardly obtain access to the
medium while connection 4-5 will capture it
5-29
Network Layer Impact
 Routing strategies play a key role on TCP
performance

 There have been a lot of proposed


routing schemes and, typically, each of
them have different effects on the TCP
performance

5-30
DSR
 DSR protocol operates on an on-demand basis in
which a node wishing to find a new route broadcasts
a RREQ packet

 The problem with this approach concerns the high


probability of stale routes in environments where
high mobility as well as medium constraints may be
normally present

 The problem is exacerbated by the fact that other


nodes can overhear the invalid route reply and
populate their buffers with stale route information

 It can be mitigated by either manipulating TCP to


tolerate such a delay or by making the delay shorter
so that the TCP can deal with them smoothly
5-31
Path Asymmetry Impact
 In Ad hoc networks, there are several asymmetries

 Loss Rate Asymmetry: It takes place when the


backward path is significantly more error prone than
the forward path

 Bandwidth Asymmetry: Arises when forward and


backward data follow distinct paths with different
speeds
 Can happen in ad hoc networks when all nodes not have the
same interface speed

 Media Access Asymmetry: Arises when TCP ACKs and


Data are contending for the same

5-32
Route Asymmetry
 Route asymmetry implies having different paths in
both directions

 Route asymmetry is associated with the possibility of


different transmission ranges for the nodes

 The inconvenience with different transmission ranges


is that it can lead to conditions in which the forward
data follow a considerably shorter path than the
backward data (TCP ACK) or vice versa --> affecting
hop counts and delays (RTT)

 Multi-hop paths are prone to have lower throughput


and TCP ACKs may face considerable disruptions

5-33
Overview of Results
 The best TCP variants:
 TCP-Westwood and TCP-Jersey seem the best.
 Both protocols estimate bandwidth more accurately.
 TCP mechanisms:
 Feedback from intermediate nodes leads to big gains.
 The best non-TCP approaches:
 Ad-hoc Transport Protocol (ATP) seems to address most issues
• Non-window based: estimates achievable rate periodically
 Split-TCP: promising new way of looking at transport layer
• Dynamically buffer packets mid-path
 Key: Separation of congestion control from reliability.

5-34
TORA
 TORA has been designed to be highly dynamic by
establishing routes quickly and concentrating control
messages within a small set of nodes close to the place
where the topological change has occurred

 TORA makes use of directed acyclic graphs, where every


node has a path to a given destination and established
initially

 This protocol can also suffer from stale route problem


similar to the DSR protocol

 The problem occurs mainly because TORA does not


prioritize shorter paths, which can yield considerable
amount of out-of-sequence packets for the TCP receiver,
triggering retransmission of packets

5-35

You might also like