Transport Layer for Mobile Ad hoc Networks Wireless Networks

advertisement
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
Source 1
2
3
4
TCP
N Sink
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

Timers: Various static and dynamic timers used for deciding

Window: For flow control in the form of a data
transmission window size
order
when to retransmit
5-10
Overview
Overview of TCP Concepts
 Conventional TCP: Tahoe, Reno, New-Reno
 Sending rate is controlled by
34
Congestion window (cwnd): limits the #32
30
of packets in flight
28
 Slow-start threshold (ssthresh): when 26
24
CA start
22
20
 Loss detection
18
 3 duplicate ACKs (faster, more
16
14
efficient)
12
 Retransmission timer expires (slower, 10
8
less efficient)
6
 Overview of congestion control mechanisms4
2
 Slow-start phase: cwnd start from 1
0
0
and increase exponentially
 Congestion avoidance (CA): increase
linearly
 Fast retransmit and fast recovery:
Trigger by 3 duplicate ACKs
Congestion
detected

Congestion windows size
2
n
io
st c e
e
ng an
Co oid
av
3
1
2
sta
rt
n
io
st c e
e
ng an
Co oid
av
threshold
Slo
w
Slo
w
1
sta
rt
threshold
4
Fast retransmit/
fast recovery
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-11
TCP Basics
34
Congestion
detected
32
30
2
28
24
n
tio e
s
e
c
ng an
Co oid
av
22
3
20
18
16
threshold
14
6
Fast retransmit/
fast recovery
n
tio e
s
e
c
ng dan
o
i
C
o
av
sta
rt
1
8
4
threshold
Slo
w
10
sta
rt
12
Slo
w
Congestion windows size
26
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

2.
High bit error rate

3.
Difficult to estimate time-out, RTT, bandwidth
Contention: packets compete for airtime

5.
Packets can be lost due to “noise”
Unpredictability/Variability

4.
Route stability and availability
Intra-flow and inter-flow contentions
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.
2.
3.
4.
TCP misinterprets route failures as congestion
TCP misinterprets wireless errors as congestion
Intra-flow and inter-flow contention reduce
throughput and fairness
Delay spike causes TCP to invoke unnecessary
retransmissions

5.
RTO too small  unnecessary retransmissions.
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
S
B
C
P
X
Y
Z
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
Download