TCP Westwood (TCPW) and Bandwidth Estimation cs218 – fall 2003 Claudio E. Palazzi tutor: Dr. Giovanni Pau.

Slides:



Advertisements
Similar presentations
Milano 25/2/20031 Bandwidth Estimation for TCP Sources and its Application Prepared for QoS IP 2003 R. G. Garroppo, S.Giordano, M. Pagano, G. Procissi,
Advertisements

TCP Variants.
1 TCP Vegas: New Techniques for Congestion Detection and Avoidance Lawrence S. Brakmo Sean W. O’Malley Larry L. Peterson Department of Computer Science.
TCP Vegas: New Techniques for Congestion Detection and Control.
1 TCP Congestion Control. 2 TCP Segment Structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement.
Networking TCP-DCR: Making TCP Robust to Non-Congestion Events Sumitha Bhandarkar A. L. Narasimha Reddy
1 End to End Bandwidth Estimation in TCP to improve Wireless Link Utilization S. Mascolo, A.Grieco, G.Pau, M.Gerla, C.Casetti Presented by Abhijit Pandey.
1 Service Differentiation at Transport Layer via TCP Westwood Low- Priority (TCPW-LP) H. Shimonishi, M.Y. Sanadidi and M. Geria System Platforms Research.
Introduction 1 Lecture 14 Transport Layer (Transmission Control Protocol) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer.
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
TCP in Wireless Ad Hoc Networks
18 Nov 2009 TCP VEGAS Mohammad AlKurbi CMPT – 771: Internet Architecture and Protocols.
Chapter 3 Transport Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 12.
Transport Layer 3-1 Fast Retransmit r time-out period often relatively long: m long delay before resending lost packet r detect lost segments via duplicate.
Transport Layer3-1 Congestion Control. Transport Layer3-2 Principles of Congestion Control Congestion: r informally: “too many sources sending too much.
CS215 TCP Westwood Control Model Development and Stability Analysis Hu, Kunzhong Dong, Haibo Mentor: Wang, Ren Professor:
Open Issues on TCP for Mobile Computing Ibrahim Matta Computer Science, Boston University Vassilis Tsaoussidis Computer Science, Northeastern University.
TCP Westwood with Agile Probing: Handling Dynamic Large Leaky Pipes.
Week 9 TCP9-1 Week 9 TCP 3 outline r 3.5 Connection-oriented transport: TCP m segment structure m reliable data transfer m flow control m connection management.
RCS: A Rate Control Scheme for Real-Time Traffic in Networks with High B X Delay and High error rates J. Tang et al, Infocom 2001 Another streaming control.
Comparison between TCPWestwood and eXplicit Control Protocol (XCP) Jinsong Yang Shiva Navab CS218 Project - Fall 2003.
1 TCP Bulk Repeat CS218 Fall 2003 Students: Ricardo Oliveira, Joshua Choi, William So Tutor: Guang Yang 11/24/2003.
1 Design study for multimedia transport protocol in heterogeneous networks Haitao Wu; Qian Zhang; Wenwu Zhu; Communications, ICC '03. IEEE International.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
TCP Westwood (with Faster Recovery) Claudio Casetti Mario Gerla Scott Seongwook Lee Saverio.
Transport: TCP Manpreet Singh (Slides borrowed from various sources on the web)
Data Communication and Networks
EEC-484/584 Computer Networks Lecture 14 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
TCP in Heterogeneous Network Md. Ehtesamul Haque # P.
TCP Congestion Control
Introduction 1 Lecture 14 Transport Layer (Congestion Control) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Transport Layer 4 2: Transport Layer 4.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer3-1 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles.
A Simulation of Adaptive Packet Size in TCP Congestion Control Zohreh Jabbari.
TCP in Wireless Ad Hoc Networks TCP on Wireless Ad Hoc Networks TCP overview Ad hoc TCP and network layer: mobility, route failures and timeout.
TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model CS 218 W 2003 Oct 29, 2003.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
CA-RTO: A Contention- Adaptive Retransmission Timeout I. Psaras, V. Tsaoussidis, L. Mamatas Demokritos University of Thrace, Xanthi, Greece This study.
TCP with Variance Control for Multihop IEEE Wireless Networks Jiwei Chen, Mario Gerla, Yeng-zhong Lee.
TCP Westwood: Efficient Transport for High-speed wired/wireless Networks 2009.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
1 Transport Layer Lecture 10 Imran Ahmed University of Management & Technology.
TCP on Wireless Ad Hoc Networks CS 218 Oct 22, 2003 TCP overview Ad hoc TCP : mobility, route failures and timeout TCP and MAC interaction study TCP fairness.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
1 John Magee 20 February 2014 CS 280: Transport Layer: Congestion Control Concepts, TCP Congestion Control Most slides adapted from Kurose and Ross, Computer.
Advance Computer Networks Lecture#09 & 10 Instructor: Engr. Muhammad Mateen Yaqoob.
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
TCP Westwood: Efficient Transport for High-speed wired/wireless Networks 2008.
1 Advanced Transport Protocol Design Nguyen Multimedia Communications Laboratory March 23, 2005.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
1 ICCCN 2003 Modelling TCP Reno with Spurious Timeouts in Wireless Mobile Environments Shaojian Fu School of Computer Science University of Oklahoma.
Chapter 3 outline 3.1 transport-layer services
Chapter 6 TCP Congestion Control
COMP 431 Internet Services & Protocols
Chapter 3 outline 3.1 Transport-layer services
Mario Gerla, Medy Sanadidi, Ren Wang and Massimo Valla
TCP Westwood(+) Protocol Implementation in ns-3
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Chapter 6 TCP Congestion Control
TCP Congestion Control
Improving TCP Start-up over High Bandwidth Delay Paths
Transport Layer: Congestion Control
Chapter 3 outline 3.1 Transport-layer services
TCP flow and congestion control
Presentation transcript:

TCP Westwood (TCPW) and Bandwidth Estimation cs218 – fall 2003 Claudio E. Palazzi tutor: Dr. Giovanni Pau

Outline Background: TCP and wireless environment TCP Westwood overview New bandwidth estimation algorithm Simulations results with NS-2 Conclusions

TCP Congestion Control (1/2) end-end control (no network assistance) sender limits transmission: LastByteSent-LastByteAcked  CongWin Roughly, CongWin is dynamic, function of perceived network congestion How does sender perceive congestion? loss event = timeout or 3 duplicate acks TCP sender reduces rate ( CongWin ) after loss event two mechanisms: –AIMD –slow start rate = CongWin RTT Bytes/sec

TCP Congestion Control (2/2)

Problems Affecting Current TCP Error losses in wireless environment: –wrong congestion assumption. Random errors results in low performance: –Congestion window cut too much –If happens during slow start, cause TCP premature exits

Related TCP + Bdw estimation work TCP Vegas monitors bandwidth and RTT to infer the bottleneck backlog; then, from backlog it derives feedback to congestion window. Keshav’s Packet Pair scheme also monitors bandwidth to estimate the bottleneck backlog and compare to common target; it adjusts source rate. … TCP-Probing discriminates between error losses, congestion losses, handoffs and disconnections using probing cycles after each loss. WTCP estimates the bandwidth at the receiver considering the packets received, then calculates the new sending ratio and communicates it to the sender (SACK and no more T.O.) …

Enhance congestion control via Eligible Rate Estimate (ERE) Samples are derived from ACK arrival statistics, and info in ACKs regarding bytes delivered ERE is used by sender to set cwnd and ssthresh after packet loss indication Receiver Sender Internet Bottleneck packets ACKs measure TCP Westwood

TCP Westwood: Control After Packet Loss Indication When three duplicate ACKs are received : set ssthresh=ERE*RTTmin (instead of ssthresh=cwin/2 as in Reno and NewReno) if (cwin > ssthresh) set cwin=ssthresh When a TIMEOUT expires : set ssthresh=ERE*RTTmin (instead of ssthresh=cwnd/2 as in Reno) and set cwin=1

TCP Westwood: Eligible Rate Estimate BE Sampling : Packet pair, effective under random loss, overestimates under congestion Under Congestion Under No Congestion TkTk TkTk RE Sampling: Packet train, fair estimate under congestion, underestimates under random loss To obtain ERE: adapt the sample interval T k according to congestion level Congestion level is similar to that in Vegas: Expected Rate-Achieved Rate T k ranges from one ‘interACK’ interval to RTT

TCP Westwood and random losses Reno overreacts to random loss (cwin cut by half) TCPW less sensitive to random loss a small fraction of “randomly” lost packets minimally impacts the rate estimate RE Thus, cwin = RE x RTT remains unchanged As a result, TCPW throughput is higher than Reno and SACK But…

Current BW Estimation Weakness Principle behind Westwood (and others): BW estimation = Bytes_acked / time NOT ALWAYS CORRECT ! It doesn’t consider idle time at sender… 1 TCP Westwood Agile connection - 70 ms RTT - queue = pipesize Multiple losses caused by UDP flows which start when the queue is almost full

Rationale of the idea Time line chunked into slots Pckts departure Corresponding acks arrival Effective tx timeSender idle time Bandwidth estimation mechanism that rely on byte transmitted on time, should take into account the unused time at sender.

New BW estimation algorithm At sender side, divide time into slots In each slot, N packets are sent to destination The corresponding N acks will return back in a certain amount of time T The bandwidth computation considers also the time the sender was idle (it hasn’t sent anything because he was waiting for ACKS…) BWE sample: Slot size is computed at the starting of the new one as a multiple of the RTO Bwe sample is averaged (k less or equal than 1): BWES = Bytes_in_slot / (Time_for_acks – Time_sender_idle) BWE i = (1-k)*BWE i-1 + k*BWES

Data Structure RTT 0 RTT 1 RTT 2 RTT 3 RTT 9 Element of the array: Seq no. of first pkt tx in that rtt Seq no. of last pkt tx in that rtt Dep. time first pkt tx in that rtt Dep. time last pkt tx in that rtt Start time receiving slot Arr. time last ack rec in that rtt Every slot change element where insert new departures Every slot compute new bandwidth estimation Just after last bwe calculation

Simulation Environment 100 Mbps 1 ms delay Min RTT: 70 ms 100 Mbps 1 ms delay Bottleneck (various bw value) 33 ms delay Errors in the Bottleneck: 0 or 0.1% PER Queue = pipe size 1 flow TCP New estimator tested above Westwood Agile

Simulations 1/4 1 TCP Westwood Agile connection - 70 ms RTT - queue = pipesize Multiple losses caused by UDP flows which start when the queue is almost full new bwe: no more big drop due to idle time at sender side

Simulations 2/4 1 TCP Westwood Agile connection - 70 ms RTT - queue = pipesize Bottleneck BW = 1Mb - pipe size = 9pkts PER = 0% PER = 0.1% Slot=3RTO k_avg=0.5

Simulations 3/4 1 TCP Westwood Agile connection - 70 ms RTT - queue = pipesize Bottleneck BW = 5Mb - pipe size = 44pkts PER = 0% PER = 0.1% Slot=2RTO k_avg=0.2

Simulations 4/4 1 TCP Westwood Agile connection - 70 ms RTT - queue = pipesize Bottleneck BW = 10Mb - pipe size = 88pkts PER = 0% PER = 0.1% Slot=3RTO k_avg=0.2

Conclusions With one flow, our proposed algorithm: - provides a bandwidth estimation comparable with TCP Westwood (both with or without random errors) - detects initial available bandwidth as fast as (or faster than) AGILE does - is lighter to calculate than TCP Westwood’s formula - performs better than TCP Westwood in conditions characterized by long sender-side idle time period, as during long Fast Retransmit – Fast Recovery We think that, our algorithm: - differently than TCP Westwood, detects the total bandwidth at the bottleneck, and not the shared bandwidth - could really be effective if integrated with TCP Westwood and/or a mechanism for queue estimation

Work Done Created the new bwe_computationPP function for bwe estimation Modified tcp module in the NS-2 simulator Added tcp-westwood-nr-pp module in the NS-2 simulator Simulated various cases with different bandwidth and PER

Future Work slots and bwe-sample parameters tradeoff analysis simulate cases with more than one single flow to: - determine if the algorithm measures the bottleneck total bandwidth or the shared one. - evaluate effective integration with TCP Westwood - study efficiency vs fairness and friendlyness

Some Bibliography 1/2 [1] S. Mascolo, C. Casetti, M. Gerla, M. Y. Sanadidi, R. Wang, "TCP Westwood: Bandwidth Estimation for Enhanced Transport over Wireless Links", MOBICOM 2001, July [2] R. Wang, M. Valla, M.Y. Sanadidi, and M. Gerla, "Adaptive Bandwidth Share Estimation in TCP Westwood", UCLA Technical Report, submitted to Globecom 2002 [3] M. Gerla, B. K. F. Ng, M. Y. Sanadidi, M. Valla, R. Wang, "TCP Westwood with Adaptive Bandwidth Estimation to Improve Efficiency/Friendliness Tradeoffs", to appear in Computer Communication Journal, [4] H. Balakrishnan, V. N. Padmanabhan, S. Sehan, and R. H. Katz, "A comparison of mechanism for improving TCP performance over wireless links", IEEE/ACM Trans. Networking, vol. 5, no. 6, pp , december [5] Lawrence Brakmo, Sean O'Malley, and Larry Peterson, " TCP Vegas: New Techniques for Congestion Detection and Avoidance “, ACM SIGCOMM, pages , August 1994.

Some Bibliography 2/2 [6] C. E. Palazzi, “Protocolli di Trasporto in Ambiente Wireless”, Bachelor Degree Thesis, University of Bologna, July [7] P. Sinha, N. Venkitaraman, R. Sivakumar, V. Bharghavan, "WTCP: A Reliable Transport Protocol for Wireless Wide-Area Networks", ACM Mobicom '99, August [8] V. Tsaoussidis, H. Badr, "TCP-Probing: Towards an Error Control Schema with Energy and Throughput Performance Gains", The 8th IEEE Conference on Network Protocols, November [9] S. Keshav, “Packet-Pair Flow Control", IEEE/ACM Transaction on Networking, February 1995.

Questions ?