Data Center TCP(DCTCP)

Similar documents
Data Center TCP (DCTCP)

Data Center TCP (DCTCP)

Data Center TCP (DCTCP)

Congestion Control in Datacenters. Ahmed Saeed

Cloud e Datacenter Networking

Transport Protocols for Data Center Communication. Evisa Tsolakou Supervisor: Prof. Jörg Ott Advisor: Lect. Pasi Sarolahti

Lecture 15: Datacenter TCP"

A Method Based on Data Fragmentation to Increase the Performance of ICTCP During Incast Congestion in Networks

Master Course Computer Networks IN2097

Preprint. Until published, please cite as:

EXPERIENCES EVALUATING DCTCP. Lawrence Brakmo, Boris Burkov, Greg Leclercq and Murat Mugan Facebook

Attaining the Promise and Avoiding the Pitfalls of TCP in the Datacenter. Glenn Judd Morgan Stanley

Advanced Computer Networks. Datacenter TCP

DIBS: Just-in-time congestion mitigation for Data Centers

TCP. The TCP Protocol. TCP Header Format. TCP Flow Control. TCP Congestion Control Datacenter TCP

Computer Networks Spring 2017 Homework 2 Due by 3/2/2017, 10:30am

Packet Scheduling in Data Centers. Lecture 17, Computer Networks (198:552)

Implementation of PI 2 Queuing Discipline for Classic TCP Traffic in ns-3

On the Effectiveness of CoDel in Data Centers

Computer Networking

COSC4377. Network milestones

TCP Incast problem Existing proposals

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

Data Center Transmission Control Protocol an Efficient Packet Transport for the Commoditized Data Center

TCP improvements for Data Center Networks

Wireless TCP Performance Issues

BSDCan 2015 June 13 th Extensions to FreeBSD Datacenter TCP for Incremental Deployment Support. Midori Kato

Router s Queue Management

DAQ: Deadline-Aware Queue Scheme for Scheduling Service Flows in Data Centers

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Congestion Control In the Network

Extensions to FreeBSD Datacenter TCP for Incremental Deployment Support

Coping with network performance

Bandwidth Allocation & TCP

arxiv: v1 [cs.ni] 26 Apr 2016

Linux Plumbers Conference TCP-NV Congestion Avoidance for Data Centers

Random Early Detection (RED) gateways. Sally Floyd CS 268: Computer Networks

Advanced Computer Networks. Flow Control

Chapter III: Transport Layer

ADVANCED TOPICS FOR CONGESTION CONTROL

TCP Bandwidth Allocation for Virtual Networks

Internet Protocols Fall Lecture 16 TCP Flavors, RED, ECN Andreas Terzis

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

Congestion / Flow Control in TCP

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

This is a repository copy of M21TCP: Overcoming TCP Incast Congestion in Data Centres.

Advanced Computer Networks. Datacenter TCP

CS644 Advanced Networks

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

A Mechanism Achieving Low Latency for Wireless Datacenter Applications

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

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Internet Networking recitation #10 TCP New Reno Vs. Reno

DIBS: Just-in-time Congestion Mitigation for Data Centers

TCP so far Computer Networking Outline. How Was TCP Able to Evolve

Request for Comments: S. Floyd ICSI K. Ramakrishnan AT&T Labs Research June 2009

CS268: Beyond TCP Congestion Control

CSC 4900 Computer Networks: TCP

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

CS321: Computer Networks Congestion Control in TCP

CS244 Advanced Topics in Computer Networks Midterm Exam Monday, May 2, 2016 OPEN BOOK, OPEN NOTES, INTERNET OFF

CS 349/449 Internet Protocols Final Exam Winter /15/2003. Name: Course:

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015

TCP. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli)

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

The Transport Layer Congestion control in TCP

Principles of congestion control

15-744: Computer Networking TCP

Mid Term Exam Results

Master of Thesis Academic Year Improving transmission performance with one-sided datacenter TCP

Congestion Avoidance

More Accurate ECN Feedback in TCP draft-ietf-tcpm-accurate-ecn-04

Introduc)on to Computer Networks

6.888 Lecture 5: Flow Scheduling

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

CS 356: Computer Network Architectures Lecture 19: Congestion Avoidance Chap. 6.4 and related papers. Xiaowei Yang

One More Bit Is Enough

SDN-based TCP Congestion Control in Data Center Networks

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness

Internet Engineering Task Force. Intended status: Experimental University Politehnica of Bucharest Expires: January 21, 2016 July 20, 2015

image 3.8 KB Figure 1.6: Example Web Page

This is a repository copy of Efficient UDP-Based Congestion Aware Transport for Data Center Traffic.

Handles all kinds of traffic on a single network with one class

Congestion Control. Brighten Godfrey CS 538 January Based in part on slides by Ion Stoica

15-744: Computer Networking. Overview. Queuing Disciplines. TCP & Routers. L-6 TCP & Routers

Congestion Control for High Bandwidth-delay Product Networks

RAMPS REAL-TIME APPLICATION MEASUREMENT and PLACEMENT SYSTEM

Chapter 6 Congestion Control and Resource Allocation

Reliable Transport II: TCP and Congestion Control

Cross-Layer Flow and Congestion Control for Datacenter Networks

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs

TCP SIAD: Congestion Control supporting Low Latency and High Speed

CS 268: Computer Networking

Computer Networks. Course Reference Model. Topic. Congestion What s the hold up? Nature of Congestion. Nature of Congestion 1/5/2015.

Router participation in Congestion Control. Techniques Random Early Detection Explicit Congestion Notification

Chapter 3 Transport Layer

Enhancing TCP Incast Congestion Control Over Large-scale Datacenter Networks

Introduc)on to Transport Protocols

Design and Evaluation of Schemes for More Accurate ECN Feedback

Transcription:

Data Center TCP(DCTCP) Mohammad Alizadeh * +, Albert Greenberg *, David A. Maltz *, Jitendra Padhye *, Parveen Patel *, Balaji Prabhakar +, Sudipta Sengupta *, Murari Sridharan * * + Microsoft Research Stanford University 1

Contributions 1. Identify impairments hurting performance in data center environment -- Incast -- Queue buildup -- Buffer Pressure 2. Propose Data Center TCP(DCTCP) -- Explicit Congestion Notification(ECN) -- A control scheme at the sources in order to lower switch buffer queue length while achieving high throughput 2

Traffic Characterization 1. Partition/Aggregate design pattern 2. Throughput-sensitive large flows, latencycritical short flows co-exist 3

Traffic Characterization 1. Partition/Aggregate design pattern Partition Aggregate 2. Throughput-sensitive large flows, latencycritical short flows co-exist 4

Traffic Characterization 1. Partition/Aggregate design pattern 2. Throughput-sensitive large flows, latencycritical short flows co-exist -- query traffic: integrated with urgent short message traffic -- background traffic: organize the massive data for query response 5

Performance Impairments (a). Incast (b). Queue buildup (c). Buffer Pressure 6

Performance Impairments (a). Incast -- Exhaust the maximum permitted buffer for the interface Packet losses (b). Queue buildup (c). Buffer Pressure 7

Performance Impairments (a). Incast (b). Queue buildup Incast or great latency! --When long and short flows traverse the same queue If a short flow is behind a large flow? (c). Buffer Pressure 8

Performance Impairments (a). Incast (b). Queue buildup (c). Buffer Pressure They share memory pool! -- The loss rate of short flow depends on the large flows traversing other ports, Why? 9

DCTCP Algorithm 1. Simple Marking at the Switch 2. ECN-Echo at the Receiver 3. Controller at the Sender 10

DCTCP Algorithm 1. Simple Marking at the Switch -- Only one parameter, the marking threshold K, based on instantaneous queue length -- while arriving packet Pn : if Queue length > K : Pn s CE codepoint marked 2. ECN-Echo at the Receiver 3. Controller at the Sender Recommended: K=20 for 1Gbps K=65 for 10Gbps 11

DCTCP Algorithm 1. Simple Marking at the Switch 2. ECN-Echo at the Receiver -- Convey the CE codepoint back to the sender. -- Using delayed ACKs to set ECN-Echo bit ECN=1 -- Twostates, correspond to whether the last received packet was marked with the CE ECN=0 codepoint or not only difference from TCP receiver 3. Controller at the Sender 12

DCTCP Algorithm 1. Simple Marking at the Switch 2. ECN-Echo at the Receiver 3. Controller at the Sender -- The sender maintain an estimate of the fraction of packets that are marked, called α, updated for every window of data α (1-g) α +g F -- 0<g<1 is the weight given to new samples -- F is the fraction of packets that marked in the last window of data α estimates the probability that the queue size is greater than K 13

DCTCP Algorithm 1. Simple Marking at the Switch 2. ECN-Echo at the Receiver 3. Controller at the Sender -- react when receiving an ACK with the ECN-Echo flag set cwnd cwnd (1- α/2) Only difference from TCP sender 14

Theoretical Benefits (a). Incast -- Scenario: In practice, each packet drop occurs in subsequent RTTs -- DCTCP starts marking early + measure instantaneous queue length that receive enough marks before the following bursts which lead to packet drop (b). Queue buildup (c). Buffer Pressure Numerous flows + Slow start! Queue length > K 15

Theoretical Benefits (a). Incast (b). Queue buildup -- senders of large flow starts reacting as soon as queue length > K, short flow doesn t need to wait too long -- more buffer space is available to absorb transient micro-bursts (c). Buffer Pressure 16

Theoretical Benefits (a). Incast (b). Queue buildup (c). Buffer Pressure -- A congested port s queue length does not grow exceedingly large, thus will not exhaust the buffer resources 17

Experiment Results (1). Examine basic properties of the DCTCP -- throughput, convergence, fairness (2). Microbenchmarks for specific performance --Incast, queue buildup, buffer pressure (3). Evaluate DCTCP All comparisons are between DCTCP and TCP New Reno! 18

Experiment Results (1). Examine basic properties of the DCTCP -- throughput, convergence, DCTCP fairness TCPand behavior in a multi-hop Maximum environment Throughput(1 Gbps links) 0.95G/1G(K=20) Queue length(1 Gbps links) Stable around 20 packets (K=20) Fairness and convergence (a single long-lived flow) Quick, fair Maximum 0.95G/1G 10 times larger and varies widely Quick, fair but higher variation (2). Microbenchmarks for specific performance (3). Evaluate DCTCP 19

Experiment Results (1). Examine basic properties of the DCTCP (2). Microbenchmarks for specific performance -Incast (RTO = 10ms) -CDF of the response time (3). Evaluate DCTCP 20

Experiment Results (1). Examine basic properties of the DCTCP (2). Microbenchmarks for specific performance -Queue buildup -CDF of completion times for 1000 20KB transfers Data transferred is small, the completion time is dominated by the RTT, which is dominated by the queue length at the switch. (3). Evaluate DCTCP 21

Experiment Results (1). Examine basic properties of the DCTCP (2). Microbenchmarks for specific performance --buffrer pressure (3). Evaluate DCTCP 22

Experiment Results (1). Examine basic properties of the DCTCP (2). Microbenchmarks for specific performance (3). Evaluate DCTCP(RTO=10ms) 23

Summary Why Data center choose DCTCP as their transport protocols? -- Implementable with mechanisms in existing hardware (ECN) -- Achieve low latency for small flows and high throughput for large flows -- DCTCP requires only 30 lines of code change to TCP 24

Questions? 25

Thank you! 26