0% found this document useful (0 votes)
54 views27 pages

TCP Congestion Control in Wired and Wireless Networks

The document is a presentation that summarizes TCP congestion control algorithms such as slow start, congestion avoidance, fast retransmit, and fast recovery. It also compares TCP variants including Tahoe, Reno, New Reno, and SACK. Simulation results using ns-2 and Opnet Modeler are shown for scenarios like a point-to-point connection with single and double packet drops, a WAN topology, and a wireless topology. The conclusion states that TCP algorithms do not perform satisfactorily in wireless networks due to signal attenuation issues.

Uploaded by

sankum0
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views27 pages

TCP Congestion Control in Wired and Wireless Networks

The document is a presentation that summarizes TCP congestion control algorithms such as slow start, congestion avoidance, fast retransmit, and fast recovery. It also compares TCP variants including Tahoe, Reno, New Reno, and SACK. Simulation results using ns-2 and Opnet Modeler are shown for scenarios like a point-to-point connection with single and double packet drops, a WAN topology, and a wireless topology. The conclusion states that TCP algorithms do not perform satisfactorily in wireless networks due to signal attenuation issues.

Uploaded by

sankum0
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 27

TCP Congestion Control in Wired

and Wireless Networks

ENCS 835 Course Project


Spring 2008
April 7, 2008

Presented by: Mohamadreza Najiminaini


Professor: Ljiljana Trajkovic

4/16/2008 1
Roadmap
„ Introduction
„ Related Work
„ Slow-Start and Congestion Avoidance
„ Fast Retransmit and Fast Recovery
„ Various TCP Congestion Control Algorithms
„ Simulation Results
„ Conclusion

4/16/2008 2
Introduction
„ TCP mechanism for congestion control is
implemented at the sender
„ The congestion window size at the sender is set as:
Send Window = MIN (flow control window, congestion window)
„ flow control window is advertised by the receiver
„ congestion window is set based on feedback from the
network

4/16/2008 3
Introduction
„ Two significant parameters of TCP congestion control
are:
„ Congestion Window size(cwnd)
„ Slow-start threshhold Value (ssthresh)
„ Congestion control works in two phases:
„ slow start: cwnd < ssthresh
„ congestion avoidance: cwnd ≥ ssthresh

4/16/2008 4
Related Work
„ Comparison of TCP Tahoe, Reno, NewReno, SACK
using ns-2:
„ K. Fall and S. Floyd, “Simulation based comparisons of
Tahoe, Reno and SACK TCP,” Computer Communications
Review, vol. 26, no. 3, July 1996, pp. 5-21
„ Modified Tahoe and comparison with other TCP
congestion control algorithms using Opnet Modeler:
„ M. N. Akhtar, M. A. O. Barry and H. S. Al-Raweshidy
“Modified Tahoe TCP for wireless networks using OPNET
simulator,” Proc of the London Communications Symposium
(LCS2003), London, Sept 2003

4/16/2008 5
Slow Start
„ Initial value: cwnd = 1(MSS)
„ When the sender receives an ACK, the congestion
window is increased by 1 segment:
cwnd = cwnd + 1
ƒ an ACK for two segments, cwnd is incremented by only 1
segment
ƒ an ACK for a segment that is smaller than MSS bytes,
cwnd is incremented by 1

4/16/2008 6
Congestion Avoidance
„ Congestion avoidance phase initiates after cwnd
reaches the slow-start threshold value
„ If cwnd ≥ ssthresh then every time an ACK reaches
to the sender, increase cwnd as:
„ cwnd = cwnd + 1/ cwnd

4/16/2008 7
Slow-Start Algorithm with
Congestion Avoidance
packet loss packet loss packet loss

Window size
SENDER RECEVER

CWND=1
Packet 0
CWND=2 ACK1

Packet 1
Packet 2
CWND=4 ACK2 ACK3

Packet 3
Packet 4
Packet 5
Packet 6

Time

SlowStart SlowStart Congestion Congestion


avoidance avoidance

4/16/2008 8
Fast Retransmit
„ Three and more duplicate ACKs indicate a lost
segment
„ Then TCP performs a retransmission of the lost
segment, without waiting for a timeout to happen
„ Enter slow start:
ssthresh = cwnd/2
cwnd = 1

4/16/2008 9
Fast Recovery
„ Fast recovery avoids slow start after a fast
retransmit
„ After three duplicate ACKs set:
„ Retransmit the lost segment
„ ssthresh = cwnd/2
„ cwnd = ssthresh+3
„ Increase cwnd by one for each additional duplicate ACK
„ When it receives an ACK for a new packet
cwnd=ssthresh
enter congestion avoidance

4/16/2008 10
Various TCP Congestion Control
Algorithms
„ TCP Tahoe (1988, FreeBSD 4.3 Tahoe)
„ Slow start
„ Congestion avoidance
„ Fast retransmit
„ TCP Reno (1990, FreeBSD 4.3 Reno)
„ Fast recovery
„ New Reno (1996)
„ SACK (1996)

4/16/2008 11
TCP Reno
„ Duplicate ACKs:
„ Fast retransmit
„ Fast recovery
Fast recovery avoids slow start
„ Timeout:
„ retransmit
„ slow start
„ TCP Reno performs better than TCP Tahoe when a
single packet is dropped within a round-trip time.

4/16/2008 12
TCP New Reno
„ When multiple packets drops, Reno can not handle
well
„ Partial ACK:
„ happens if multiple packets are lost
„ A partial ACK does not acknowledge all packets that are
outstanding at the beginning of a fast recovery (this takes
sender out of fast recovery)
Sender must wait until timeout occurs
„ New Reno:
„ Partial ACK does not take sender out of fast recovery
„ New Reno can handle multiple lost segments without
entering slow start

4/16/2008 13
Selective Acknowledgement
(SACK)
„ At most 1 lost segment can be retransmitted in Reno
and NewReno per round trip time
„ Selective acknowledgments: acknowledges non-
continuous blocks of data
„ Multiple blocks can be transmitted in a single
segment
„ TCP SACK:
„ Initiate fast recovery upon 3 duplicate ACKs
„ Sender keeps records of SACKs and understand if segments
are lost. Sender retransmits the subsequently segment from
the list of the lost segments
4/16/2008 14
Simulation
„ Opnet Modeler and IT Guru
„ Simulation results:
„ congestion window size (CWND)
„ sent segment sequence number (SSSN)
„ Simulation scenarios:
„ Point to point client and server connection (PPP)
„ single packet drop
„ two packet drops
„ WAN topology: 0.05% packet drops and 0.001 sec packet
latency
„ Wireless topology: using trajectory for packet drops

4/16/2008 15
Point-to-Point Client Server
connection (PPP)
„ Application
„ FTP
„ constant file size
„ Constant inter-request
time
„ Profile
„ Client
„ Server: FTP server
„ Packet discarder
„ drop packets

4/16/2008 16
CWND in PPP Server-Client: one
drop

4/16/2008 17
Sent Segment Sequence Number
PPP Server-Client: one drop

4/16/2008 18
CWND in PPP Server-Client: two
drops

4/16/2008 19
Sent Segment Sequence Number
PPP Server-Client: two drops

4/16/2008 20
WAN Topology

WAN Topology

West Subnet East Subnet

4/16/2008 21
CWND in WAN: packet drop
(0.05%) packet latency (0.001)

4/16/2008 22
SSSN in WAN, packet drop
(0.05%)-packet latency (0.001)

4/16/2008 23
Wireless Topology

Trajectory

4/16/2008 24
CWND in Wireless Topology

4/16/2008 25
Conclusion
„ Reno performs well only if no loss or one packet drop
within a window
„ NewReno can deal with multiple lost segments
without entering slow start
„ SACK (selective acknowledgement and selective
retransmit)
„ TCP congestion control algorithms do not perform
satisfactory in wireless network due to signal
attenuation in wireless environment.

4/16/2008 26
References
„ K. Fall and S. Floyd, “Simulation based comparisons of Tahoe, Reno
and SACK TCP,” Computer Communications Review, vol. 26, no. 3, July
1996, pp. 5-21.
„ M. N. Akhtar, M. A. O. Barry and H. S. Al-Raweshidy “Modified Tahoe
TCP for wireless networks using OPNET simulator,” Proc of the London
Communications Symposium (LCS2003), London, Sept 2003.
„ W. Stevens, “TCP slow start, congestion avoidance, fast retransmit and
fast recovery algorithms,”. Network Working Group, RFC2001, Jan
1997.
„ M. Omueti and Lj. Trajkovic, “M-TCP+: using disconnection feedback to
improve performance of TCP in wired/wireless networks,” Proc. SPECTS
2007, San Diego, CA, USA, July 2007, pp. 443-450.
„ A. S. Tanenbaum, “Computer Networks,” The Transport Layer, 4rd
Edition.

4/16/2008 27

You might also like