Title: Solutions for Improving TCP Performance over Emerging Networks
1Solutions for Improving TCP Performance over
Emerging Networks
- K.R.Renjish Kumar
- kaleelaz_at_comp
- Centre for Internet Research
2Outline
- Introduction
- Emerging Networks
- TCP
- TCP over Emerging Networks
- Issues
- Solutions
- TCP HACK
- MBM
-
3Introduction
- Internet has come a long way with
- Different kinds of networks
- increasing number of users
- innumerable applications which require better
quality of service.
4Emerging Networks
- Lossy Link networks
- Wireless networks like wavelans
- Satellite networks
- Quality of Service(QoS) model based networks
- Integrated Services (IntServ) Provides QoS in a
per connection basis - Differentiated Services (DiffServ) Provides QoS
for an aggregate flow. Much more scalable
compared to IntServ.
5Transmission Control Protocol (TCP)
- De facto Transport layer Protocol
- 95 of data byte share in the Internet
- Common applications like Telnet,FTP and HTTP uses
TCP
6TCP contd
- TCP Header
- Sequence Number the first byte of data in this
segment. - Options For any additional features.
- Rate Control
- Slow start,fast retransmit,recovery,
- congestion avoidance.
- Segments send equal to the minimum of the
senders window(cwnd) and receivers window.
7Emerging Networks-Lossy Networks
- Access Networks are increasingly becoming
wireless eg wavelans - Acts as bottlenecks. Bandwidth limited.
- Prone to higher rate of corruption
8TCP over Lossy Links
- Issues
- performs poorly in lossy links where the rate of
corruption of packets are higher - Reason TCP assumes that loss of packets are due
to congestion and not corruption, thus reducing
the cwnd and thus reducing the throughput.
9Solution
- TCP HACK TCP Header Checksum Option to Improve
Performance over Lossy Links. - IEEE INFOCOM 2001,Anchorage,Alaska
- R.K.Balan,B.P.Lee,K.R.R.Kumar,L.Jacob,W.K.G.
Seah, - A.L.Ananda, IEEE INFOCOM
2001,Anchorage,Alaska -
10TCP HACK
- Key Observations
- For most data transfers, the data portion of a
TCP packet is much larger than the header portion
of the packet (may not be true for interactive
traffic) - As such, corruptions are far more likely to occur
in the data portion and not the header portion - Given this scenario, can we make use of the
intact header to make TCP perform better?
11TCP Hack Algorithm contd..
- On receiving this specially marked ACK packet,
the sender will know that packet corruption and
not congestion has occurred - As such, the sender will retransmit the corrupted
packet and will not half its congestion window
12Header Checksum option
TCP Header Checksum option
TCP Header Checksum ACK option
13TCP Sender
14TCP Receiver
Data segment received
No
TCP segment corrupted?
Continue as per normal
Yes
Header portion corrupted?
Yes
Discard Packet
No
- ) Recover sequence number of corrupted segment
from header. - ) Generate special ACK (option 15) containing
the sequence - number of the corrupted segment.
15ACK Processing
ACK segment received
No
Option 15 present in the segment?
Yes
Modification to the ACK processing
16Note
- For TCP HACK to be effective, link layer
retransmissions and error recovery should be
turned off - Corrupted packets should be sent up to the TCP
layer where TCP HACK will do the retransmissions
17Experimental Setup
- Implemented into the Linux 2.2.10 kernel
- Test bed was set up comprising of 3 machines
- Client and server were running TCP HACK
- 2 different models were used
- Single packet corruption.
- Burst corruption with differing burst lengths
18Low Latency Links
19High Latency Links
20Number of slow starts
21Observations
- Both SACK and TCP-HACK are better than NewReno
- Hence NewReno was removed from the tests when
burst errors were introduced
22Burst errors
Throughput for 2 burst error for various burst
lengths
Throughput for 5 burst error for various burst
lengths
23Throughput vs Time
24Inference
- How is TCP HACK doing retransmissions a good
idea? - Could help stabilize TCP and prevent its RTT
calculation from fluctuating widely (especially
useful when using a long latency link) - Provides more information to TCP, thus preventing
it from unnecessarily timing out - Distinguishes between congestion and corruption
- Improves overall TCP performance
25Emerging QoS Network Architecture
- Differentiated Services (DiffServ)
- Provides QoS for aggregate flows using different
per hop forwarding behaviours at the core
routers. - Basic building blocks of DiffServ
- Classifiers
- Meters
- Markers
- Policers
26DiffServ
Meter
Packet
Classifier
Marker
Policer
Logical View of a Packet Classifier and Traffic
Conditioner
27TCP over QoS based Networks
- Issues
- Bias against connections with long Round Trip
Time (RTT) - ReasonLong RTT flows takes longer time to ramp
up. - Bias against connections with smaller window
sizes - Reason Smaller windows mean smaller throughput
- Protection from unruly traffic like UDP traffic.
- Reason UDP traffic has no rate control mechanism
and hence kills TCP traffic.
28Solution
- A Memory-Based Approach for a TCP-Friendly
Traffic Conditioner in DiffServ Networks.to
appear in Proc. of the 9th IEEE International
Conference on Network Protocols (ICNP 2001),
Riverside, California. - K.R.R.Kumar, A.L.Ananda, Lillykutty
Jacob
29Topology
30Memory-Based Marker (MBM)
- Key observations
- Markers, one of the building blocks of a traffic
- conditioner play a major role for resource
allocation - in a DiffServ network.
- TCP performance is highly influenced by two
- parameters, namely RTT, and window size.
- Markers are mostly deployed at the edge routers,
- which cannot easily decide the window size and
RTT of the various TCP connections passing
through.
31What is needed?
- Marking algorithm
- Least sensitive to both the marker and TCP
parameters - Should be transparent to end hosts.
- Maintain optimum marking
- Tracks the TCP dynamics
32Why memory-based marker?
- During the period when TCP flows experience
- congestion, either or both of the following
occurs - a) The cwnd reduces reducing the value of W
- b) The RTT increases
- causing a decrease in throughput or rate of
flow. -
33Why memory-based marker?
- The TCP window size W and the round trip time RTT
are related to the throughput by the equation - BW ¾(MSSW)/(RTT) where W is expressed in
- number of segments.
- Any variation in W or RTT is reflected as
subsequent changes in BW, i.e., in our case, the
avg_rate. - The parameter previous average rate (par) is
compared with the present average rate to track
any change in the rate of flow and thus
indirectly extract the variations in RTT or W.
34MBM Algo. explained
- In the expression for the marking probability mp,
- (par avg?rate)/avg?rate tracks the variations
in RTT and window size (W) and thus increases or
decreases the marking probability according to
the changes in the flow rate. - (1- avg?rate)/cir constantly compares the
average rate observed with the target rate to
keep the rate closer to the target. -
35MBM Algorithm
- For each packet arrival
- If avg_rate ? cir
- then
- mpmp(1-avg_rate/cir)(par-
avg_rate)/avg_rate - par avg_rate
- mark the packet using
- cp 11 w.p. mp
- cp 00 w.p. (1-mp)
-
- else if avg_rate gt cir
- then
- mp mp (par avg_rate)/avg_rate
- paravg_rate
- mark the packet using
- cp 11 w.p. mp
- cp 00 w.p. (1-mp)
36MBM Algo. Contd
- where,
- avg_rate the rate estimate upon each packet
arrival - mp marking probability (?1)
- cir committed information rate (i.e., the
target rate) - par previous average rate
- cp denotes codepoint and w.p. denotes with
- probability.
37Experiments
- We used FTP bulk data transfer for the TCP
traffic in all our experiments. - We conducted simulation studies in NS for
- Assured service for aggregates with different
target rates. - Effect of different RTTs
- Effect of different window sizes
- Protection from best effort UDP flows
- Effect of UDP flows with target rates.
38Results
Achieved Rates (Ra) for different Target Rates
(Rt).
39Results.
Achieved Rates (Ra) for different RTT values
Achieved Rates (Ra) for different window sizes
40More results
Achieved Rates in presence of BE UDP and TCP
Achieved Rates in presence of AS UDP and BE TCP
41Inference
- MBM
- Achieves transparency from the end hosts,
simplicity, and least sensitivity to parameters
of both TCP as well as its own parameters. - helps in achieving the target rate, with a better
fairness in terms of sharing the excess bandwidth
among flows. - provides the TCP flows, a greater degree of
insulation - from differences in RTT and window sizes.
- The overall link utilization also seems to be
much better.
42Future work
- Working on a 3 colour marker, Memory-Based Three
color Marker (MBTCM) which is apt for DiffServ
with AF per hop behaviour in its core. - Study of TCP dynamics and its performance
improvements over broadband networks. -
43Related Links..
- http//www.comp.nus.edu.sg/srijith/cir/papers.htm
l - http//www.comp.nus.edu.sg/kaleelaz