Title: A Feedback Based Scheme For Improving TCP Performance in AdHoc Wireless Networks
1A Feedback Based Scheme For Improving TCP
Performance in Ad-Hoc Wireless Networks
2What are Ad-Hoc Networks?
- Set of mobile hosts that communicate with each
other without the support of fixed infrastructure
like base stations - Possible uses Battlefields, Rescue missions
- Also known as MANETs (Mobile Ad-Hoc Networks) or
Multihop wireless networks - Open areas of research QoS, Multicast routing
3What is the problem with MANETs?
- We would like to use transport layer protocols
over such networks obvious choice is TCP - But MANETs are prone to sudden route changes and
disconnections - Physical medium is also wireless
- Results in LOTS of packet losses
- TCP does not fly if packet losses are caused by
anything other than congestion
4TCP-F (TCP with feedback)
- Uses explicit route failure notification to
inform the source of route failures - Assumptions
- Wireless links are bi-directional
- Reliable link layer protocol
- Suitable routing protocol
- Finite time within which routes are
re-established - All packets carry source and destination ID
- Connection is unidirectional
5The Details
Source
Dest
6The Details
Source
FP
Dest
7The Details
Source
RFN
FP
Dest
8The Details
Source
Discard RFN
Reroute packets
FP
Dest
9The Details
RFN
Source
Dest
10The Details
Zzz...
Source
- Stop sending further packets
- Freeze all timers, window
- Starts a route failure timer
Dest
11The Details
RRN
Source
Dest
12The Details
Yawn...
- Restarts timers from frozen values
- Resumes transmission
Source
Dest
13Simulation
- Very simple event driven simulation
- Treat the Ad-Hoc network as a black box with 10
hops - Randomly generate route failures
- Route re-establishment time and frequency of
failures are parameters of simulation - No congestion
14Results
15Results
16Results
17Discussions
- Multiple failures along the same route?
- Congestion?
- How to inform multiple sources affected by a
route failure? - Notify only when the FP receives a packet from a
source
18Future extensions
- Buffering of packets at intermediate nodes
- Save retransmissions
- Expected overhead at intermediate node is low
- RRN can be used to flush buffered packets
- Selective acknowledgement policies might have
better performance (SACK TCP)
19Analysis of TCP Performance over Mobile Ad Hoc
Networks
- Gavin Holland and Nitin Vaidya
- TAMU
20What is this paper about?
- Better simulation platform
- Extensive study of TCP over MANETs
- Study of TCP with Explicit Link Failure
Notification (ELFN) techniques
21Simulation Environment
- ns with extensions from MONARCH project at CMU
- routing and 802.11 MAC layer
- ARP
- Node mobility modeled using pre-computed mobility
patterns - TCP Reno
22Dynamic Source Routing (DSR)
- Source specified path
- Path obtained by route discovery
- Route discovery initiated by broadcasting a route
request - Route request is propagated through the network
until it reaches a node that knows of a route to
the destination
23DSR
- Route reply is sent back to requester with the
new route concatenated with the source route in
the request - TTL is used to ensure that request does not
travel far - Every request has a unique request id used to
ensure no loops - Routes are cached at intermediate nodes
- Cache updation is done via route error messages
that are generated when a packets source route is
invalid
24More DSR!
- Packets can be salvaged by a node that detects
that the next link is broken and if it knows of
another route to destination - CMU extensions have two phases
- Local broadcast
- Propagating ring search
25Performance metric
- TCP throughput
- Upper bound on TCP throughput Expected
throughput - First compute throughput versus number of hops
for fixed wireless hosts in a linear chain - Ti is the throughput when the number of hops is i.
26Static throughput
27Expected throughput
ti is the time for which the shortest path from
the sender to the receiver has i hops
28Effect of node speed on throughput
- For a given mobility pattern, expected throughput
is independent of speed (Why?)
- Throughput can increase or decrease!
- Mostly throughput degrades as speed is increased
- Sometimes, throughput can increase
29Speed effects
30Mobility induced behaviors
- Some mobility patterns yield very low throughput
31Anomaly
- Increase in throughput with speed increase
32Observations
- Characteristics of routing protocol have
significant effects on TCP performance - Routing protocol that responds faster to mobility
induced changes improves TCP performance - Most problems with DSR are due to stale cache
entries - Solution turn off caching! Improves performance
for a single connection
33TCP with ELFN
- Piggybacked TCP/IP headers on DSR route failure
messages - When TCP sender receives ELFN, it enters standby
mode - Packet sent at periodic intervals to see if a
route has been re-established
34Results
35Effect of varying time between probe packets
- The smaller the gap between packets, the better
the throughput
36Effect of modifying RTO and window size upon
restoration
37Effect of choosing different probe packets
- Intuitive - Send the first packet in window
- Optimistic - Send the packet with lowest sequence
number among the packets signaled as lost - No significant difference observed ?
- Routes once broken, are rarely restored quickly
38Conclusions
- TCP throughput drops significantly when node
movement causes link failures - Expected throughput is a better means of
comparing throughput - ELFN techniques improve TCP performance
- Study performance in congested networks