TCP Congestion Control in Wired and Wireless Networks

Similar documents
TCP Congestion Control in Wired and Wireless networks

Internet Networking recitation #10 TCP New Reno Vs. Reno

OPNET M-TCP model. Modupe Omueti

TCP Congestion Control

TCP Congestion Control

TCP congestion control:

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

ENSC 835: COMMUNICATION NETWORKS

ENRICHMENT OF SACK TCP PERFORMANCE BY DELAYING FAST RECOVERY Mr. R. D. Mehta 1, Dr. C. H. Vithalani 2, Dr. N. N. Jani 3

TCP based Receiver Assistant Congestion Control

Investigations on TCP Behavior during Handoff

ECE 461 Internetworking. Problem Sheet 6

image 3.8 KB Figure 1.6: Example Web Page

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

TCP Flavors Simulation Evaluations over Noisy Environment

cs/ee 143 Communication Networks

TCP over Wireless PROF. MICHAEL TSAI 2016/6/3

An analytical model for evaluating utilization of tcp reno

STUDY OF TCP THROUGHPUT ON NETWORK SIMULATOR OPNET++ BY USING DIFFERENT PARAMETERS

Computer Networking Introduction

Performance Analysis of TCP Variants

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 30, 2018

Section #6 Handout. B has processed this packet and updated its position of its sliding window. Everything is in terms of bytes.

Performance Analysis of TCP Variants under MANET Environment and using NS-2

TCP Congestion Control

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP

Networked Systems and Services, Fall 2018 Chapter 3

Networked Systems and Services, Fall 2017 Reliability with TCP

TCP Congestion Control 65KB W

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput

CS321: Computer Networks Congestion Control in TCP

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

Improving Host-to-Host Congestion Control Protocols by Dynamic Bandwidth Estimation of the Network

CMPE 257: Wireless and Mobile Networking

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission

An Issue in NewReno After Fast Recovery. Yoshifumi Nishida

Performance Analyses of TCP Westwood

Rate Based Pacing with Various TCP Variants

Mid Term Exam Results

Flow and Congestion Control Marcos Vieira

Advanced Computer Networks

8. TCP Congestion Control

Study of TCP Variants Compression on Congestion Window and Algorithms in Dynamic Environment

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service

CSCI Topics: Internet Programming Fall 2008

The Transport Layer Congestion control in TCP

Fuzzy based Tuning Congestion Window for Improving End-to-End Congestion Control Protocols

Transmission Control Protocol (TCP)

COMP/ELEC 429/556 Introduction to Computer Networks

TCP. Second phase of the project. Connection management. Flow control and congestion. Emphasizing on the followings: Three parameters: At any time

Performance Evaluation of TCP over WLAN with the Snoop Performance Enhancing Proxy

Selective-TCP for Wired/Wireless Networks

King Fahd University of Petroleum & Minerals

Fall 2012: FCM 708 Bridge Foundation I

MEASURING PERFORMANCE OF VARIANTS OF TCP CONGESTION CONTROL PROTOCOLS

Cross-layer TCP Performance Analysis in IEEE Vehicular Environments

SharkFest'17 US. Understanding Throughput & TCP Windows. A Walk-Through of the Factors that can limit TCP Throughput Performance

Lecture 4: Congestion Control

CPSC 441 COMPUTER COMMUNICATIONS MIDTERM EXAM SOLUTION

UNIT IV -- TRANSPORT LAYER

CS 356: Introduction to Computer Networks. Lecture 16: Transmission Control Protocol (TCP) Chap. 5.2, 6.3. Xiaowei Yang

ENSC 835 project TCP performance over satellite links. Kenny, Qing Shao Grace, Hui Zhang

100 Mbps. 100 Mbps S1 G1 G2. 5 ms 40 ms. 5 ms

Advanced Computer Networks

Homework 3 1 DNS. A root. A com. A google.com

COMPUTER NETWORK. Homework #3. Due Date: May 22, 2017 in class

Improving TCP End to End Performance in Wireless LANs with Snoop Protocol

Dynamic Deferred Acknowledgment Mechanism for Improving the Performance of TCP in Multi-Hop Wireless Networks

Q23-5 In a network, the size of the receive window is 1 packet. Which of the follow-ing protocols is being used by the network?

IJSRD - International Journal for Scientific Research & Development Vol. 2, Issue 03, 2014 ISSN (online):

EVALUATING THE DIVERSE ALGORITHMS OF TRANSMISSION CONTROL PROTOCOL UNDER THE ENVIRONMENT OF NS-2

TRANSMISSION CONTROL PROTOCOL

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Transport Layer (Congestion Control)

Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University

Improving TCP Performance over Wireless Links with Periodic Disconnection CMPT 885-3: SPECIAL TOPICS: HIGH-PERFORMANCE NETWORKS

Congestion / Flow Control in TCP

Experimental Study of TCP Congestion Control Algorithms

Transport Protocols and TCP

SharkFest 17 Europe. My TCP ain t your TCP. Simon Lindermann. Stack behavior back then and today. Miele & Cie KG.

TCP CONGESTION CONTROL PROTOCOLS OVER UMTS WCDMA NETWORK

Improved Selective Acknowledgment Scheme for TCP

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data?

Outline. CS5984 Mobile Computing

TCP OVER AD HOC NETWORK

Problems and Solutions for the TCP Slow-Start Process

TCP Congestion Control

Performance Enhancement Of TCP For Wireless Network

PERFORMANCE COMPARISON OF THE DIFFERENT STREAMS IN A TCP BOTTLENECK LINK IN THE PRESENCE OF BACKGROUND TRAFFIC IN A DATA CENTER

ECE4110, Internetwork Programming, QUIZ 2 - PRACTICE Spring 2006

Chapter III: Transport Layer

ENSC 835 project (2002) TCP performance over satellite links. Kenny, Qing Shao Grace, Hui Zhang

CS 421: COMPUTER NETWORKS FALL FINAL January 12, minutes

ENSC 835 project (2002) TCP performance over satellite links. Kenny, Qing Shao Grace, Hui Zhang

TCP over Wireless. Protocols and Networks Hadassah College Spring 2018 Wireless Dr. Martin Land 1

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology

ROBUST TCP: AN IMPROVEMENT ON TCP PROTOCOL

Transcription:

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 SENDER RECEVER Window size CWND=1 CWND=2 Packet 0 ACK1 CWND=4 ACK2 Packet 1 Packet 2 ACK3 Packet 3 Packet 4 Packet 5 Packet 6 Time SlowStart SlowStart Congestion avoidance Congestion 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 noncontinuous 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