COSC4377. Network milestones

Size: px
Start display at page:

Download "COSC4377. Network milestones"

Transcription

1 Lecture Network milestones ARPANet TCP/IP TCP Backbone speed: Cutover to TCP/IP Tahoe HTTP 50 56kbps, ARPANet T1 NSFNet T3, NSFNet Network is exploding TCP Cambridge.pptx 622 Mbps OC12 MCI 2.5 Gbps OC48 vbns 2 10 Gbps OC192 Abilene 1

2 Congestion collapse October 1986, the first congestion collapse on the Internet was detected Link between UC Berkeley and LBL 400 yards, 3 hops, 32 Kbps throughput dropped to 40 bps factor of ~1000 drop! 1988, Van Jacobson proposed TCP congestion control throughput load TCP Cambridge.pptx 3 TCP congestion control ARPANet Network Mail TCP 50 56kbps, ARPANet Telnet TCP/IP Flow control: File Prevent Transfer overwhelming receiver Low TCP Cambridge.pptx Cutover Tahoe TCP Tahoe to TCP/IP congestion collapse detected at LBL Internet Talk Radio HTTP Internet Phone Whitehouse T1 online NSFNet T3, NSFNet Napster music OC12 MCI OC48 + Congestion control: vbns Prevent overwhelming network AT&T VoIP itunes video YouTube OC192 Abilene 4 2

3 Recall: TCP Slow Start when connection begins, increase rate exponentially until first loss event: initially cwnd = 1 MSS double cwnd every RTT done by incrementing cwnd for every ACK received summary: initial rate is slow but ramps up exponentially fast Host A RTT Host B time Slide from Kurose & Ross, 6 th Ed 5 Recall: TCP switching from slow start to CA Q: when should the exponential increase switch to linear? A: when cwnd gets to 1/2 of its value before timeout. Implementation: variable ssthresh on loss event, ssthresh is set to 1/2 of cwnd just before loss event Slide from Kurose & Ross, 6 th Ed 6 3

4 Recall: TCP detecting, reacting to loss loss indicated by timeout: cwnd set to 1 MSS; window then grows exponentially (as in slow start) to threshold, then grows linearly loss indicated by 3 duplicate ACKs: TCP RENO dup ACKs indicate network capable of delivering some segments cwnd is cut in half window then grows linearly TCP Tahoe always sets cwnd to 1 (timeout or 3 duplicate acks) Slide from Kurose & Ross, 6 th Ed 7 Recall: TCP Futures TCP over long, fat pipes example: 1500 byte segments, 100ms RTT, want 10 Gbps throughput requires W = 83,333 in flight segments throughput in terms of segment loss probability, L [Mathis 1997]: TCP throughput = MSS RTT L to achieve 10 Gbps throughput, need a loss rate of L = a very small loss rate! new versions of TCP for high speed Slide from Kurose & Ross, 6 th Ed 8 4

5 TCP congestion control history (incomplete) ARPANet TCP Cutover to TCP/IP Flow control: Prevent overwhelming receiver Derived from Low TCP Cambridge.pptx TCP Tahoe TCP Reno TCP SACK TCP Vegas TCP New Reno + Congestion control: Prevent overwhelming network BICTCP Fast TCP HSTCP STCP DCTCP 9 TCP Performance Congestion Control Congestion is inevitable Internet does not reserve resources in advance TCP actively tries to push the envelope Congestion can be handled Additive increase, multiplicative decrease Slow start, and slow start restart Active Queue Management can help (discussed in some detail in Network Layer lectures) Random Early Detection (RED) Explicit Congestion Notification (ECN) Fundamental tensions Feedback from the network? Enforcement of TCP friendly behavior? Source congestion.ppt 10 5

6 TCP Recovery Time (Simplistic Model) Recovery Rate of Recovery Time Bytes to Recover Recovery Time Bytes to Recover Rate of Recovery BW * RTT MTU RTT BW * RTT MTU RTT (BWDP) 2 RTT * BW MTU Globus Allcock/ParallelTCP.pdf 11 Recovery Time for a Single Congestion Event (Simplistic Model) T1 (1.544 Mbs) with 50ms RTT 10 KB Recovery Time (1500 MTU): 0.16 Sec GigE with 50ms RTT 6250 KB Recovery Time (1500 MTU): 104 Seconds GigE to Amsterdam (100ms) 1250 KB Recovery Time (1500 MTU): 416 Seconds GigE to CERN (160ms) 2000 KB Recovery Time (1500 MTU): 1066 Sec (17.8 min) Globus Allcock/ParallelTCP.pdf 12 6

7 TCP over High Speed Networks A TCP connection with 1250 Byte packet size and 100ms RTT is running over a 10Gbps link (assuming no other connections, and no buffers at routers) cwnd 1.4 hours 1.4 hours 1.4 hours slow Packet loss increase Packet loss Packet loss Packet loss 100,000 10Gbps big decrease TCP 50,000 5Gbps Slow start Congestion avoidance Time (RTT) 13 Link Utilization TCP Performance Utilization of a link with 5 TCP connections Cannot fully utilize the huge capacity of highspeed networks! Link Capacity (Mbps) NS 2 Simulation (100 sec) Link Capacity = 155Mbps, 622Mbps, 2.5Gbps, 5Gbps, 10Gbps, Drop Tail Routers, 0.1BDP Buffer 5 TCP Connections, 100ms RTT, 1000 Byte Packet Size

8 Linux 2.4 New Reno (1994) Low performance on fast long distance paths AIMD (add a=1 pkt to cwnd / RTT, decrease cwnd by factor b=0.5 in congestion) 700 Throughput Mbps Abilene/Internet2 10 Gbps Reno RTT ms RTT (~70ms) s SLAC to Univ of Florida Network Services Interoperability Labs Information courtesy of Les Cottrell from the SLAC group at Stanford Source: TCP alternatives hicks.ppt 15 Parallel TCP Reno TCP Reno with 16 streams Parallel streams heavily used in HENP (High Energy and Nuclear Physics) & elsewhere to achieve needed performance, so it is today s de facto baseline However, hard to optimize both the window size AND number of streams since optimal values can vary due to network capacity, routes or utilization changes Information courtesy of Les Cottrell from the SLAC group at Stanford Source: TCP alternatives hicks.ppt 16 8

9 Parallel TCP: Does it Help? Reduces the severity of a congestion event Buffers are divided across streams so faster recovery Probably get more than your fair share in the router Globus Allcock/ParallelTCP.pdf 17 Reduced Severity from Congestion Events Normal TCP your BW Reduction is 50% 1000 Mbps * 50% = 500 Mbps Reduction In Parallel TCP BW Reduction for single Stream packet loss is: Total BW / N Streams * 50% Example 1 of four streams congested 1000 / 4 * 50% = 125 Mbps Reduction Globus Allcock/ParallelTCP.pdf 18 9

10 Faster Recovery from Congestion Events Optimum TCP Buffer Size is now BWDP/N where N is number of Streams Since Buffers are reduced in size by a factor of 1/N so is the recovery time. This can also help work around host limitations. If the maximum buffer size is too small for max bandwidth, you can get multiple smaller buffers. Globus Allcock/ParallelTCP.pdf 19 More than your Fair Share Routers apply fair sharing algorithms to the streams being processed. Since your logical transfer now has N streams, it is getting N times the service it otherwise normally would, unless a router discover that a logical stream has been parallelized. Globus Allcock/ParallelTCP.pdf 20 10

11 What about Striping? Typically used in a cluster with a shared file system, but it can be a multi homed host All the advantages of Parallel TCP Also get parallelism of CPUs, Disk subsystems, buses, NICs, etc.. You can, in certain circumstances, also get parallelism of network paths This is a much more complicated implementation and beyond the scope of what we are primarily discussing here. Globus Allcock/ParallelTCP.pdf 21 Affect of Parallel Streams ANL to ISI (n=5) Bandwidth (Mbs) 70 Notes: 60 1) Error bars represent +/- 1 standard deviation, n=5 2) Variance in the bandwidth decreases with number of streams 50 - More streams means lower impact per stream 40 - More streams to spread the lost packets over 3) Nearly linear climb followed by sharp knee is characteristic 30 - Where the knee is tends to depend on RTT and loss rate 20 - Higher RTT or Higher loss means more streams to reach the knee - generally between 2 and 8, with 4 being a good rule of thumb 10 - As you can see, more streams is not always good Number of Streams Globus Allcock/ParallelTCP.pdf 22 11

12 Affect of TCP Buffer Size (iperf) RTT BW (Mbs) Calculated RTT (ms) Buffer Size (MB) 0 Globus Allcock/ParallelTCP.pdf 23 When should you use Parallel TCP? Engineered, private, semi private, or very over provisioned networks are good places to use parallel TCP. Bulk data transport. It makes no sense at all to use parallel TCP for most interactive apps. QOS: If you are guaranteed the bandwidth, use it Community Agreement: You are given permission to hog the network. Lambda Switched Networks: You have your own circuit, go nuts. Globus Allcock/ParallelTCP.pdf 24 12

13 Scalable TCP (2002) Uses exponential increase everywhere (in slow-start and congestion avoidance) Multiplicative decrease factor b = Introduced by Tom Kelly of Cambridge Information courtesy of Les Cottrell from the SLAC group at Stanford Source: TCP alternatives hicks.ppt 25 High-Speed TCP (2002) Behaves like Reno for small values of cwnd Above a chosen value of cwnd (default 38) a more aggressive function is used Uses a table to indicate by how much to increase cwnd when an ACK is received Available with web100 Introduced by Sally Floyd Information courtesy of Les Cottrell from the SLAC group at Stanford Source: TCP alternatives hicks.ppt 26 13

14 Binary Increase Control TCP (BIC TCP)(2004) Combine: Additive increase for large cwnd Binary increase for small cwnd Developed by Injong Rhee at NC State University Information courtesy of Les Cottrell from the SLAC group at Stanford Source: TCP alternatives hicks.ppt 27 Fast TCP FAST Fast AQM Scalable TCP FAST attempts to keep the number of packets queued in the network constant by adjusting the congestion window based on estimates of the current RTT and the minimum RTT. FAST differs from Vegas that also use current and minimum RRTs to adjust the congestion window in how the adjustment is made. FAST unlike most TCP variants has been patented as opposed to being standardized through IETF and commercialized through FastSoft that was acquired by Akamai in

15 FAST vs Linux TCP Test results (2002) Linux TCP txqueulen=100 Linux TCP txqueulen=10000 FAST Linux TCP txqueulen=100 Linux TCP txqueulen=10000 FAST flows Bmps Peta Thruput Mbps Distance km Delay ms MTU B Duration s Transfer GB , , CERN - Sunnyvale , , CERN - Sunnyvale , , CERN - Sunnyvale , , CERN - Sunnyvale , , CERN - Sunnyvale ,797 10, , CERN - Sunnyvale Path Mbps = 10 6 b/s; GB = 2 30 bytes; Delay = propagation delay Linux TCP expts: Jan 28 29, 2003 netlab.caltech.edu 29 Network Details for FAST vs Linux Test 7, 9, 10 FAST flows 3,948 km (Sylvain Ravot, caltech/cern) 1, 2 Linux/FAST flows 10,037 km ppt 30 15

16 FAST vs Linux Aggregate Throughput FAST Standard MTU Utilization averaged over 1hr 2G 92% Average utilization 1G 95% 48% 19% 27% 16% txq=100 txq=10,000 txq=100 txq=100 txq=10,000 txq=100 Linux TCP Linux TCP FAST Linux TCP Linux TCP FAST netlab.caltech.edu 31 FAST Aggregate Throughput FAST Standard MTU Utilization averaged over > 1hr 90% 88% 90% Average utilization 95% 92% 1hr 1hr 6hr 1.1hr 6hr 1 flow 2 flows 7 flows 9 flows 10 flows netlab.caltech.edu

17 Packet level Reno AIMD(1, 0.5) ACK: W W + 1/W Loss: W W 0.5W HSTCP (High Speed TCP) AIMD(a(w), b(w)) ACK: W Loss: W W + a(w)/w W b(w)w STCP (Stratified TCP) MIMD(a, b) FAST ACK: W W Loss: W W 0.125W basertt RTT : W W RTT basertt = minimum RTT observed determines fairness and convergence rate 33 Dynamic sharing: 3 flows 10 x FAST 10 x Linux throughput (Kbps) throughput (Kbps) sec Dynamic sharing on Dummynet capacity = 800Mbps delay=120ms iperf throughput Linux 2.4.x (HSTCP: UCL) sec 34 17

18 10 x FAST Steady throughput 10 x Linux 7 7 throughput (Kbps) throughput (Kbps) sec sec 10 x HSTCP 10 x STCP throughput (Kbps) throughput (Kbps) sec netlab.caltech.edu/fast/publications/i nfocom2004.ppt sec 35 Is large queue necessary for high throughput? research.microsoft.com/en us/.../tcpsummit/.../fast 30min microsoft.ppt 36 18

19 Ultrascale protocol development: FAST TCP FAST TCP Based on TCP Vegas Uses end to end delay and loss to dynamically adjust the congestion window Defines an explicit equilibrium Capacity = OC Gbps; 264 ms round trip latency; 1 flow BW use 30% BW use 40% BW use 50% BW use 79% Linux TCP Westwood+ BIC TCP FAST research.microsoft.com/en us/.../tcpsummit/.../fast 30min microsoft.ppt (Yang Xia, Caltech) 37 RTT Parallel and FAST TCP Parallel TCP appears to dramatically affect the RTT E.g. increases by RTT by 200ms (factor 20 for short distances) Implication: P TCP would impact apps. like Voice/IP Throughput (Mbps) 0 SLAC-Caltech P-TCP 16 stream RTT Time (secs) RTT (ms) Throughput (Mbps) SLAC-Caltech FAST TCP 1 stream RTT Time (secs) 1200 RTT (ms) 38 19

20 Lots of Small Files (LOSF) Optimization Megabit/sec Send 1 GB partitioned into equi sized files over 60 ms RTT, 1 Gbit/s WAN John Bresnahan et al., Argonne File size (Kbyte) (16MB TCP buffer) 39 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 40 20

21 Data Center Packet Transport Large purpose built DCs Huge investment: R&D, business Transport inside the DC TCP rules (99.9% of traffic) How s TCP doing? 41 TCP in the Data Center We ll see TCP does not meet demands of apps. Suffers from bursty packet drops, Incast [SIGCOMM 09],... Builds up large queues: Adds significant latency. Wastes precious buffers, esp. bad with shallow buffered switches. Operators work around TCP problems. Ad hoc, inefficient, often expensive solutions No solid understanding of consequences, tradeoffs 42 21

22 Roadmap What s really going on? Interviews with developers and operators Analysis of applications Switches: shallow buffered vs deep buffered Measurements A systematic study of transport in Microsoft s DCs Identify impairments Identify requirements Our solution: Data Center TCP 43 Case Study: Microsoft Bing Measurements from 6000 server production cluster Instrumentation passively collects logs Application level Socket level Selected packet level More than 150TB of compressed data over a month 44 22

23 TLA Partition/Aggregate Application Structure Picasso Art is 1. Deadline = 250ms 2. Art is a lie 3... Picasso Time is money 1. Strict deadlines (SLAs) 2. MLA MLA Deadline = 50ms 1. Art is a lie 2. The chief Missed deadline Lower quality result TLA = Top Level Aggregator MLA = Mid Level Aggegator simula.stanford.edu/~alizade/site/ DCTCP_files/DCTCP talk.pptx Everything The It I'd is Art Computers Inspiration your chief like Bad is to you a work enemy lie live artists can that in as are does of life imagine a makes copy. useless. creativity poor that exist, man is the real. is Deadline = 10ms They but can it ultimate with Good must realize only good lots artists find give seduction. the of sense. money. you truth. steal. working. answers. Worker Nodes 45 Generality of Partition/Aggregate The foundation for many large scale web applications. Web search, Social network composition, Ad selection, etc. Example: Facebook Partition/Aggregate ~ Multiget Aggregators: Web Servers Workers: Memcached Servers Internet Memcached Protocol Web Servers Memcached Servers 46 23

24 Partition/Aggregate (Query) Workloads Delay sensitive Short messages [50KB 1MB] (Coordination, Control state) Delay sensitive Large flows [1MB 50MB] (Data update) Throughput sensitive 47 Traffic Statistics for Bing Cluster Time between arrival of new work for the Aggregator (queries) and between background flows between servers (updates and short messages). research.microsoft.com/pubs/121386/dctcp public.pdf 24

25 Traffic Statistics for Bing Cluster PDF (Probability Distribution Function) of flow size distribution for background traffic. PDF of Total Bytes shows probability a randomly selected byte would come from a flow of given size. research.microsoft.com/pubs/121386/dctcp public.pdf Traffic Statistics for Bing Cluster The number of concurrent flows in which a Mid Level Aggregator (MLA) or worker node participates during 50 msec. The median for all flows is 36 (recall the MLA partitions queries among up to 43 worker nodes) and the percentile is over 1,600. One server was observed to have a median over 1,200 flows. For flows >1MB the median is 1 and the 75 percentile is 2. research.microsoft.com/pubs/121386/dctcp public.pdf 25

26 Impairments Incast (many to one communications) Incast increases the queuing delay of flows, and decreases application level throughput to far below the link bandwidth. The problem especially affects computing paradigms in which distributed processing cannot progress until all parallel threads in a stage complete. Examples of such paradigms include distributed file systems, web search, advertisement selection, and other applications with partition or aggregation semantics pdf Queue Buildup Buffer Pressure Derived from 51 Incast Worker 1 Worker 2 Synchronized mice collide. Caused by Partition/Aggregate. Aggregator Worker 3 Worker 4 TCP timeout RTO min = 300 ms RTO = Retransmission Time Out 52 26

27 Flows and switch buffer scenarios 6(a). Many small flows may overflow buffers and cause packet drops. 6(b). Large flows can cause large delays for small flows even if there is no packet loss. 6(c). Buffer allocation to large flows from the shared switch multi ported (expensive) memory can cause small allocation to short flows with consequent packet loss for short flows. research.microsoft.com/pubs/121386/dctcp public.pdf 53 Traffic Statistics for Bing Cluster A real incast event measured in a production environment. Timeline shows queries forwarded over 0.8ms, with all but one response returning over 12.4ms. That response is lost, and is retransmitted after RTO min (300ms). RTT+Queue estimates queue length on the port to the aggregator. Application limited responses to 2kB/query and added 10 ms jitter in worker responses to limit risk of buffer overflow. research.microsoft.com/pubs/121386/dctcp public.pdf 54 27

28 Incast Really Happens MLA Query Completion Time (ms) Requests are jittered over 10ms window. Jittering switched off around 8:30 am. 55 Incast Really Happens MLA Query Completion Time (ms) Jittering trades off median against high percentiles

29 Sender 1 Queue Buildup Big flows buildup queues. Increased latency for short flows. Receiver Sender 2 Measurements in Bing cluster For 90% packets: RTT < 1ms For 10% packets: 1ms < RTT < 15ms 57 Latency Queuing Delay Bing Cluster 3.pdf 58 29

30 Data Center Transport Requirements 1. High Burst Tolerance Incast due to Partition/Aggregate is common. 2. Low Latency Short flows, queries 3. High Throughput Continuous data updates, large file transfers The challenge is to achieve these three together. 59 Tension Between Requirements High Throughput High Burst Tolerance Low Latency Deep Buffers: Queuing Delays Increase Latency Reduced RTO min (SIGCOMM 09) Doesn t Help Latency Shallow Buffers: Bad for Bursts & Throughput DCTCP AQM RED: Avg Queue Not Fast Enough for Incast 60 30

31 Tension Between Requirements High Throughput High Burst Tolerance Low Latency Deep Buffers: Shallow Buffers: Queuing Delays Bad for Bursts & Objective: Increase Latency Throughput Low Queue Occupancy & High DCTCP Throughput Reduced RTO min (SIGCOMM 09) Doesn t Help Latency AQM RED: Avg Queue Not Fast Enough for Incast 61 The DCTCP Algorithm 62 31

32 Review: The TCP/ECN Control Loop Sender 1 ECN = Explicit Congestion Notification ECN Mark (1 bit) Receiver Sender 2 63 Small Queues & TCP Throughput: The Buffer Sizing Story Bandwidth delay product rule of thumb: A single flow needs buffers for 100% Throughput. Cwnd Buffer Size B Throughput 100% 64 32

33 Small Queues & TCP Throughput: The Buffer Sizing Story Bandwidth delay product rule of thumb: A single flow needs buffers for 100% Throughput. Appenzeller rule of thumb (SIGCOMM 04): Large # of flows: is enough. Cwnd Buffer Size B Throughput 100% 65 Small Queues & TCP Throughput: The Buffer Sizing Story Bandwidth delay product rule of thumb: A single flow needs buffers for 100% Throughput. Appenzeller rule of thumb (SIGCOMM 04): Large # of flows: is enough. Can t rely on stat mux benefit in the DC. Measurements show typically 1 2 big flows at each server, at most

34 Small Queues & TCP Throughput: The Buffer Sizing Story Bandwidth delay product rule of thumb: A single flow needs buffers for 100% Throughput. Appenzeller rule of thumb (SIGCOMM 04): Large # of flows: is enough. Can t rely on stat mux benefit in the DC. Measurements show typically 1 2 big flows at each server, at most 4. B Real Rule of Thumb: Low Variance in Sending Rate Small Buffers Suffice 67 Two Key Ideas 1. React in proportion to the extent of congestion, not its presence. Reduces variance in sending rates, lowering queuing requirements. ECN Marks TCP DCTCP Cut window by 50% Cut window by 40% Cut window by 50% Cut window by 5% 2. Mark based on instantaneous queue length. Fast feedback to better deal with bursts

35 This image cannot currently be displayed. 10/11/2013 Switch side: Data Center TCP Algorithm Mark packets when Queue Length > K. B Mark K Don t Mark Sender side: Maintain running average of fraction of packets marked (α). In each RTT: Adaptive window decreases: Note: decrease factor between 1 and pdf 70 35

36 DCTCP in Action (Kbytes) Setup: Win 7, Broadcom 1Gbps Switch Scenario: 2 long lived flows, K = 30KB 71 Why it Works 1.High Burst Tolerance Large buffer headroom bursts fit. Aggressive marking sources react before packets are dropped. 2. Low Latency Small buffer occupancies low queuing delay. 3. High Throughput ECN averaging smooth rate adjustments, low variance

37 Analysis How low can DCTCP maintain queues without loss of throughput? How do we set the DCTCP parameters? Need to quantify queue size oscillations (Stability). Window Size W*+1 W* (W*+1)(1 α/2) Time 73 Analysis How low can DCTCP maintain queues without loss of throughput? How do we set the DCTCP parameters? Need to quantify queue size oscillations (Stability). Window Size Packets sent in this RTT are marked. W*+1 W* (W*+1)(1 α/2) Time 74 37

38 Analysis How low can DCTCP maintain queues without loss of throughput? How do we set the DCTCP parameters? Need to quantify queue size oscillations (Stability). 85% Less Buffer than TCP 75 Evaluation Implemented in Windows stack. Real hardware, 1Gbps and 10Gbps experiments 90 server testbed Broadcom Triumph 48 1G ports 4MB shared memory Cisco Cat G ports 16MB shared memory Broadcom Scorpion 24 10G ports 4MB shared memory Numerous micro benchmarks Throughput and Queue Length Multi hop Queue Buildup Buffer Pressure Fairness and Convergence Incast Static vs Dynamic Buffer Mgmt Cluster traffic benchmark 76 38

39 Experiment implement 45 1G servers connected to a Triumph, a 10G server extern connection 1Gbps links K=20 10Gbps link K=65 Generate query, and background traffic 10 minutes, 200,000 background, 188,000 queries Metric: Flow completion time for queries and background flows. We use RTO min = 10ms for both TCP & DCTCP. 77 DCTCP Performance Queue length on 1 Gbps switch ports Throughput for 10 Gbps switch ports research.microsoft.com/pubs/121386/dctcp public.pdf 78 39

40 DCTCP Fairness and Convergence One receiver and 5 senders connected to a 1 Gbps 48 port 4 MB shared memory switch. Flows added and removed with 30 sec intervals. research.microsoft.com/pubs/121386/dctcp public.pdf DCTCP Incast Assessment Fixed buffers Static switch buffers of 100 packets and RTO either 10 ms (min possible in test setup) and 300 ms (standard in production cluster). One receiver aggregating 1MB from n servers with 1MB/n per server. 8ms is the minium delay caused by the 1 Gbps receiver connection to the switch (8 1000Mbps) research.microsoft.com/pubs/121386/dctcp public.pdf 40

41 DCTCP Incast Assessment Dynamic buffers One receiver aggregating 1MB from n servers with 1MB/n per server. 8ms is the minium delay caused by the 1 Gbps receiver connection to the switch (8 1000Mbps). Switch has 48 1 Gbps ports and 4 MB of shared multi ported memory. The dynamic shared switch memory allocation allocates 700kB (of 4MB) to the receiver port queue.) research.microsoft.com/pubs/121386/dctcp public.pdf DCTCP Incast Assessment: All to All Incast with Dynamic buffers Each node requests 25kB from each of 40 other nodes (1MB total). research.microsoft.com/pubs/121386/dctcp public.pdf 41

42 Baseline Background Flows Query Flows 83 Baseline Background Flows Query Flows Low latency for short flows

43 Background Flows Baseline Query Flows Low latency for short flows. High throughput for long flows. 85 Baseline Background Flows Query Flows Low latency for short flows. High throughput for long flows. High burst tolerance for query flows

44 Conclusions DCTCP satisfies all our requirements for Data Center packet transport. Handles bursts well Keeps queuing delays low Achieves high throughput Features: Very simple change to TCP and a single switch parameter. Based on mechanisms already available in Silicon. 87 Chapter 3: summary principles behind transport layer services: multiplexing, demultiplexing reliable data transfer flow control congestion control instantiation, implementation in the Internet UDP TCP next: leaving the network edge (application, transport layers) into the network core Slide from Kurose & Ross, 6 th Ed

45 References Congestion Avoidance and Control, V. Jacobson, M. J. Karels, Proc. of SIGCOMM 88, ACM, vol 18, no. 4, pp , August 1988, ftp://ftp.ee.lbl.gov/papers/congavoid.ps.z (TCP Tahoe) Modified TCP Congestion Avoidance Algorithm, V Jacobson, end2end interest mailing list, mail sent by V Jacoson Apr 30, 1990, ftp://ftp.isi.edu/end2end/end2end interest 1990.mail (TCP Reno) Startup Dynamics of TCP s Congestion Control and Avoidance Schemes, J. Hoe, MS Thesis, MIT, papers/hoe thesis.ps TCP Slow Start, Congestion Avoidance, Fast Retransmit, and Fast Recovery Algorithms, RFC 2001, January 1997, The NewReno Modification to TCP's Fast Recovery Algorithm, RFC 2582, April, 1999, TCP Vegas: end to end congestion avoidance on a global Internet, L.S. Barkmo, L. L. Peterson, vegas.ps Understanding Vegas: a duality model, S. H. Low, L. Peterson, L. Wang, J. of the ACM, Vol 49, no. 2, pp , March 2002, A Comparative Analysis of TCP Tahoe, Reno, New Reno, SACK and Vegas, 89 References cont d FAST TCP A new TCP/AQM for Stable Operation in Fast Networks, F. Paganini, Z. Wang, S. H. Low, J. C. Doyle, infocom03.pdf FAST Kernel: Background Theory and Experimental Results, C. Jin, D. Wei, S. H. Low, G. Buhrmaster, J. Bunn, D. H. Choe, R. L. A. Cottrell, J. C. Doyle, H. Newman, F. Paganini, S. Ravot, S. Singh, Scalable TCP: Improving Performance in Highspeed Wide Area Networks, T. Kelly, pdf (2002) HighSpeed TCP for Large Congestion Windows, S. Floyd, RFC 3649, December 2003, Binary Increase Congestion Control for Fast, Long Distance Networks, (BICTCP), L. Xu, K. Harfoush, I. Rhee, Infocomm 2004, DCTCP, DCTCP: Efficient Packet Transport for the Commoditized Data Center, M. Alizadeh, A. Greenberg, D. A. Maltz, J. Padhye, P. Patel, B. Prabhakar, S. Sengupta, M. Sridharan, research.microsoft.com/pubs/121386/dctcp public.pdf Analysis of DCTCP: Stability, Convergence, and Fairness, M. Alizadeh, A. Javanmard, B. Prabhakar,

Data Center TCP (DCTCP)

Data Center TCP (DCTCP) 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

More information

Data Center TCP (DCTCP)

Data Center TCP (DCTCP) Data Center Packet Transport Data Center TCP (DCTCP) Mohammad Alizadeh, Albert Greenberg, David A. Maltz, Jitendra Padhye Parveen Patel, Balaji Prabhakar, Sudipta Sengupta, Murari Sridharan Cloud computing

More information

Lecture 15: Datacenter TCP"

Lecture 15: Datacenter TCP Lecture 15: Datacenter TCP" CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Mohammad Alizadeh Lecture 15 Overview" Datacenter workload discussion DC-TCP Overview 2 Datacenter Review"

More information

Data Center TCP (DCTCP)

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

More information

Data Center TCP(DCTCP)

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

More information

Congestion Control in Datacenters. Ahmed Saeed

Congestion Control in Datacenters. Ahmed Saeed Congestion Control in Datacenters Ahmed Saeed What is a Datacenter? Tens of thousands of machines in the same building (or adjacent buildings) Hundreds of switches connecting all machines What is a Datacenter?

More information

Cloud e Datacenter Networking

Cloud e Datacenter Networking Cloud e Datacenter Networking Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione DIETI Laurea Magistrale in Ingegneria Informatica Prof.

More information

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

Congestion Control. Daniel Zappala. CS 460 Computer Networking Brigham Young University Congestion Control Daniel Zappala CS 460 Computer Networking Brigham Young University 2/25 Congestion Control how do you send as fast as possible, without overwhelming the network? challenges the fastest

More information

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

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control : Computer Networks Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control TCP performance We ve seen how TCP the protocol works Sequencing, receive window, connection setup and teardown And

More information

TCP on High-Speed Networks

TCP on High-Speed Networks TCP on High-Speed Networks from New Internet and Networking Technologies for Grids and High-Performance Computing, tutorial given at HiPC 04, Bangalore, India December 22nd, 2004 C. Pham University Lyon,

More information

TCP Incast problem Existing proposals

TCP Incast problem Existing proposals TCP Incast problem & Existing proposals Outline The TCP Incast problem Existing proposals to TCP Incast deadline-agnostic Deadline-Aware Datacenter TCP deadline-aware Picasso Art is TLA 1. Deadline = 250ms

More information

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

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data? Congestion Control End Hosts CSE 51 Lecture 7, Spring. David Wetherall Today s question How fast should the sender transmit data? Not tooslow Not toofast Just right Should not be faster than the receiver

More information

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

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2014 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

CSE 123A Computer Networks

CSE 123A Computer Networks CSE 123A Computer Networks Winter 2005 Lecture 14 Congestion Control Some images courtesy David Wetherall Animations by Nick McKeown and Guido Appenzeller The bad news and the good news The bad news: new

More information

15-744: Computer Networking TCP

15-744: Computer Networking TCP 15-744: Computer Networking TCP Congestion Control Congestion Control Assigned Reading [Jacobson and Karels] Congestion Avoidance and Control [TFRC] Equation-Based Congestion Control for Unicast Applications

More information

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

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2014 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2014 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

image 3.8 KB Figure 1.6: Example Web Page

image 3.8 KB Figure 1.6: Example Web Page image. KB image 1 KB Figure 1.: Example Web Page and is buffered at a router, it must wait for all previously queued packets to be transmitted first. The longer the queue (i.e., the more packets in the

More information

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

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste Outline 15-441 Computer Networking Lecture 18 TCP Performance Peter Steenkiste Fall 2010 www.cs.cmu.edu/~prs/15-441-f10 TCP congestion avoidance TCP slow start TCP modeling TCP details 2 AIMD Distributed,

More information

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

Recap. TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness Recap TCP connection setup/teardown Sliding window, flow control Retransmission timeouts Fairness, max-min fairness AIMD achieves max-min fairness 81 Feedback Signals Several possible signals, with different

More information

Communication Networks

Communication Networks Communication Networks Spring 2018 Laurent Vanbever nsg.ee.ethz.ch ETH Zürich (D-ITET) April 30 2018 Materials inspired from Scott Shenker & Jennifer Rexford Last week on Communication Networks We started

More information

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

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD Overview 15-441 Computer Networking Lecture 9 More TCP & Congestion Control TCP congestion control TCP modern loss recovery TCP modeling Lecture 9: 09-25-2002 2 TCP Congestion Control Changes to TCP motivated

More information

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

TCP so far Computer Networking Outline. How Was TCP Able to Evolve TCP so far 15-441 15-441 Computer Networking 15-641 Lecture 14: TCP Performance & Future Peter Steenkiste Fall 2016 www.cs.cmu.edu/~prs/15-441-f16 Reliable byte stream protocol Connection establishments

More information

Chapter III: Transport Layer

Chapter III: Transport Layer Chapter III: Transport Layer UG3 Computer Communications & Networks (COMN) Mahesh Marina mahesh@ed.ac.uk Slides thanks to Myungjin Lee and copyright of Kurose and Ross Principles of congestion control

More information

CS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018

CS 43: Computer Networks. 19: TCP Flow and Congestion Control October 31, Nov 2, 2018 CS 43: Computer Networks 19: TCP Flow and Congestion Control October 31, Nov 2, 2018 Five-layer Internet Model Application: the application (e.g., the Web, Email) Transport: end-to-end connections, reliability

More information

Evaluation of Advanced TCP Stacks on Fast Long-Distance Production Networks p. 1

Evaluation of Advanced TCP Stacks on Fast Long-Distance Production Networks p. 1 Evaluation of Advanced TCP Stacks on Fast Long-Distance Production Networks Hadrien Bullot & R. Les Cottrell {hadrien,cottrell}@slac.stanford.edu Stanford Linear Accelerator Center, Menlo Park Evaluation

More information

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

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015 1 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2015 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

TCP on High-Speed Networks

TCP on High-Speed Networks TCP on High-Speed Networks from New Internet and Networking Technologies for Grids and High-Performance Computing, tutorial given at HiPC 04, Bangalore, India December 22nd, 2004 C. Pham University Lyon,

More information

ADVANCED TOPICS FOR CONGESTION CONTROL

ADVANCED TOPICS FOR CONGESTION CONTROL ADVANCED TOPICS FOR CONGESTION CONTROL Congestion Control The Internet only functions because TCP s congestion control does an effective job of matching traffic demand to available capacity. TCP s Window

More information

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

Congestion Control In The Internet Part 2: How it is implemented in TCP. JY Le Boudec 2015 Congestion Control In The Internet Part 2: How it is implemented in TCP JY Le Boudec 2015 1 Contents 1. Congestion control in TCP 2. The fairness of TCP 3. The loss throughput formula 4. Explicit Congestion

More information

CSCI Topics: Internet Programming Fall 2008

CSCI Topics: Internet Programming Fall 2008 CSCI 491-01 Topics: Internet Programming Fall 2008 Transport Layer Derek Leonard Hendrix College October 22, 2008 Original slides copyright 1996-2007 J.F Kurose and K.W. Ross 1 Chapter 3: Roadmap 3.1 Transport-layer

More information

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Transmission Control Protocol. ITS 413 Internet Technologies and Applications Transmission Control Protocol ITS 413 Internet Technologies and Applications Contents Overview of TCP (Review) TCP and Congestion Control The Causes of Congestion Approaches to Congestion Control TCP Congestion

More information

COMP/ELEC 429/556 Introduction to Computer Networks

COMP/ELEC 429/556 Introduction to Computer Networks COMP/ELEC 429/556 Introduction to Computer Networks The TCP Protocol Some slides used with permissions from Edward W. Knightly, T. S. Eugene Ng, Ion Stoica, Hui Zhang T. S. Eugene Ng eugeneng at cs.rice.edu

More information

Reliable Transport II: TCP and Congestion Control

Reliable Transport II: TCP and Congestion Control Reliable Transport II: TCP and Congestion Control Stefano Vissicchio UCL Computer Science COMP0023 Recap: Last Lecture Transport Concepts Layering context Transport goals Transport mechanisms and design

More information

Computer Networking

Computer Networking 15-441 Computer Networking Lecture 17 TCP Performance & Future Eric Anderson Fall 2013 www.cs.cmu.edu/~prs/15-441-f13 Outline TCP modeling TCP details 2 TCP Performance Can TCP saturate a link? Congestion

More information

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable data transfer 3.5 Connection-oriented transport: TCP segment

More information

RED behavior with different packet sizes

RED behavior with different packet sizes RED behavior with different packet sizes Stefaan De Cnodder, Omar Elloumi *, Kenny Pauwels Traffic and Routing Technologies project Alcatel Corporate Research Center, Francis Wellesplein, 1-18 Antwerp,

More information

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

TCP. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli) TCP CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli) 1 Sources Fall and Stevens, TCP/IP Illustrated Vol. 1, 2nd edition Congestion Avoidance

More information

Computer Networking Introduction

Computer Networking Introduction Computer Networking Introduction Halgurd S. Maghdid Software Engineering Department Koya University-Koya, Kurdistan-Iraq Lecture No.11 Chapter 3 outline 3.1 transport-layer services 3.2 multiplexing and

More information

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers Overview 15-441 Computer Networking TCP & router queuing Lecture 10 TCP & Routers TCP details Workloads Lecture 10: 09-30-2002 2 TCP Performance TCP Performance Can TCP saturate a link? Congestion control

More information

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 10

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 10 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 10 1 Midterm exam Midterm next Thursday Close book but one-side 8.5"x11" note is allowed (must

More information

Congestion Collapse in the 1980s

Congestion Collapse in the 1980s Congestion Collapse Congestion Collapse in the 1980s Early TCP used fixed size window (e.g., 8 packets) Initially fine for reliability But something happened as the ARPANET grew Links stayed busy but transfer

More information

CSCI-1680 Transport Layer II Data over TCP Rodrigo Fonseca

CSCI-1680 Transport Layer II Data over TCP Rodrigo Fonseca CSCI-1680 Transport Layer II Data over TCP Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Last Class CLOSED Passive open Close Close LISTEN Introduction to TCP

More information

CSC 4900 Computer Networks: TCP

CSC 4900 Computer Networks: TCP CSC 4900 Computer Networks: TCP Professor Henry Carter Fall 2017 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable

More information

Transport Layer (Congestion Control)

Transport Layer (Congestion Control) Transport Layer (Congestion Control) Where we are in the Course Moving on up to the Transport Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Congestion Collapse Congestion

More information

Flow and Congestion Control (Hosts)

Flow and Congestion Control (Hosts) Flow and Congestion Control (Hosts) 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 6 th edition. J.F. Kurose and K.W. Ross traceroute Flow Control

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer Part c Congestion Control Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley Transport Layer 3-1 Chapter 3 outline 3.1 transport-layer

More information

CS644 Advanced Networks

CS644 Advanced Networks What we know so far CS644 Advanced Networks Lecture 6 Beyond TCP Congestion Control Andreas Terzis TCP Congestion control based on AIMD window adjustment [Jac88] Saved Internet from congestion collapse

More information

TCP congestion control:

TCP congestion control: TCP congestion control: Probing for usable bandwidth: Ideally: transmit as fast as possible (cwnd as large as possible) without loss Increase cwnd until loss (congestion) Loss: decrease cwnd, then begin

More information

Outline. User Datagram Protocol (UDP) Transmission Control Protocol (TCP) Transport layer (cont.) Transport layer. Background UDP.

Outline. User Datagram Protocol (UDP) Transmission Control Protocol (TCP) Transport layer (cont.) Transport layer. Background UDP. Outline User Datagram Protocol (UDP) Transmission Control Protocol (TCP) Matti Siekkinen 22.09.2009 Background UDP Role and Functioning TCP Basics Error control Flow control Congestion control Transport

More information

Mid Term Exam Results

Mid Term Exam Results Mid Term Exam Results v Grade Count Percentage v 20-29 1 2.38% v 40-49 2 4.76% v 50-59 5 11.90% v 60-69 18 42.86% v 70-80 16 38.10% Please hand the paper back to me after this class since we have to update

More information

A Survey on Quality of Service and Congestion Control

A Survey on Quality of Service and Congestion Control A Survey on Quality of Service and Congestion Control Ashima Amity University Noida, U.P, India batra_ashima@yahoo.co.in Sanjeev Thakur Amity University Noida, U.P, India sthakur.ascs@amity.edu Abhishek

More information

Lecture 4: Congestion Control

Lecture 4: Congestion Control Lecture 4: Congestion Control Overview Internet is a network of networks Narrow waist of IP: unreliable, best-effort datagram delivery Packet forwarding: input port to output port Routing protocols: computing

More information

TCP Congestion Control : Computer Networking. Introduction to TCP. Key Things You Should Know Already. Congestion Control RED

TCP Congestion Control : Computer Networking. Introduction to TCP. Key Things You Should Know Already. Congestion Control RED TCP Congestion Control 15-744: Computer Networking L-4 TCP Congestion Control RED Assigned Reading [FJ93] Random Early Detection Gateways for Congestion Avoidance [TFRC] Equation-Based Congestion Control

More information

CS321: Computer Networks Congestion Control in TCP

CS321: Computer Networks Congestion Control in TCP CS321: Computer Networks Congestion Control in TCP Dr. Manas Khatua Assistant Professor Dept. of CSE IIT Jodhpur E-mail: manaskhatua@iitj.ac.in Causes and Cost of Congestion Scenario-1: Two Senders, a

More information

Lecture 14: Congestion Control"

Lecture 14: Congestion Control Lecture 14: Congestion Control" CSE 222A: Computer Communication Networks George Porter Thanks: Amin Vahdat, Dina Katabi and Alex C. Snoeren Lecture 14 Overview" TCP congestion control review Dukkipati

More information

Advanced Computer Networks. Datacenter TCP

Advanced Computer Networks. Datacenter TCP Advanced Computer Networks 263 3501 00 Datacenter TCP Spring Semester 2017 1 Oriana Riva, Department of Computer Science ETH Zürich Today Problems with TCP in the Data Center TCP Incast TPC timeouts Improvements

More information

CS268: Beyond TCP Congestion Control

CS268: Beyond TCP Congestion Control TCP Problems CS68: Beyond TCP Congestion Control Ion Stoica February 9, 004 When TCP congestion control was originally designed in 1988: - Key applications: FTP, E-mail - Maximum link bandwidth: 10Mb/s

More information

cs/ee 143 Communication Networks

cs/ee 143 Communication Networks cs/ee 143 Communication Networks Chapter 4 Transport Text: Walrand & Parakh, 2010 Steven Low CMS, EE, Caltech Recap: Internet overview Some basic mechanisms n Packet switching n Addressing n Routing o

More information

Advanced Congestion Control (Hosts)

Advanced Congestion Control (Hosts) Advanced Congestion Control (Hosts) 14-740: Fundamentals of Computer Networks Bill Nace Material from Computer Networking: A Top Down Approach, 5 th edition. J.F. Kurose and K.W. Ross Congestion Control

More information

Performance Analysis of TCP Variants

Performance Analysis of TCP Variants 102 Performance Analysis of TCP Variants Abhishek Sawarkar Northeastern University, MA 02115 Himanshu Saraswat PES MCOE,Pune-411005 Abstract The widely used TCP protocol was developed to provide reliable

More information

CSCI Topics: Internet Programming Fall 2008

CSCI Topics: Internet Programming Fall 2008 CSCI 491-01 Topics: Internet Programming Fall 2008 Transport Layer Derek Leonard Hendrix College October 20, 2008 Original slides copyright 1996-2007 J.F Kurose and K.W. Ross 1 Chapter 3: Roadmap 3.1 Transport-layer

More information

Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks

Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks Reasons not to Parallelize TCP Connections for Fast Long-Distance Networks Zongsheng Zhang Go Hasegawa Masayuki Murata Osaka University Contents Introduction Analysis of parallel TCP mechanism Numerical

More information

Appendix B. Standards-Track TCP Evaluation

Appendix B. Standards-Track TCP Evaluation 215 Appendix B Standards-Track TCP Evaluation In this appendix, I present the results of a study of standards-track TCP error recovery and queue management mechanisms. I consider standards-track TCP error

More information

Contents. CIS 632 / EEC 687 Mobile Computing. TCP in Fixed Networks. Prof. Chansu Yu

Contents. CIS 632 / EEC 687 Mobile Computing. TCP in Fixed Networks. Prof. Chansu Yu CIS 632 / EEC 687 Mobile Computing TCP in Fixed Networks Prof. Chansu Yu Contents Physical layer issues Communication frequency Signal propagation Modulation and Demodulation Channel access issues Multiple

More information

CS Networks and Distributed Systems. Lecture 10: Congestion Control

CS Networks and Distributed Systems. Lecture 10: Congestion Control CS 3700 Networks and Distributed Systems Lecture 10: Congestion Control Revised 2/9/2014 Transport Layer 2 Application Presentation Session Transport Network Data Link Physical Function:! Demultiplexing

More information

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

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP EEC7B/ECS5C Review: Internet Protocol Stack Review: TCP Application Telnet FTP HTTP Transport Network Link Physical bits on wire TCP LAN IP UDP Packet radio Transport Layer Services Design Issue Underlying

More information

CUBIC. Qian HE (Steve) CS 577 Prof. Bob Kinicki

CUBIC. Qian HE (Steve) CS 577 Prof. Bob Kinicki CUBIC Qian HE (Steve) CS 577 Prof. Bob Kinicki Agenda Brief Introduction of CUBIC Prehistory of CUBIC Standard TCP BIC CUBIC Conclusion 1 Brief Introduction CUBIC is a less aggressive and more systematic

More information

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

Packet Scheduling in Data Centers. Lecture 17, Computer Networks (198:552) Packet Scheduling in Data Centers Lecture 17, Computer Networks (198:552) Datacenter transport Goal: Complete flows quickly / meet deadlines Short flows (e.g., query, coordination) Large flows (e.g., data

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department of Computer Science TU München Master Course Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Chair for Network Architectures and

More information

Congestion Control. Tom Anderson

Congestion Control. Tom Anderson Congestion Control Tom Anderson Bandwidth Allocation How do we efficiently share network resources among billions of hosts? Congestion control Sending too fast causes packet loss inside network -> retransmissions

More information

Equation-Based Congestion Control for Unicast Applications. Outline. Introduction. But don t we need TCP? TFRC Goals

Equation-Based Congestion Control for Unicast Applications. Outline. Introduction. But don t we need TCP? TFRC Goals Equation-Based Congestion Control for Unicast Applications Sally Floyd, Mark Handley AT&T Center for Internet Research (ACIRI) Jitendra Padhye Umass Amherst Jorg Widmer International Computer Science Institute

More information

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

CS 356: Computer Network Architectures Lecture 19: Congestion Avoidance Chap. 6.4 and related papers. Xiaowei Yang CS 356: Computer Network Architectures Lecture 19: Congestion Avoidance Chap. 6.4 and related papers Xiaowei Yang xwy@cs.duke.edu Overview More on TCP congestion control Theory Macroscopic behavior TCP

More information

TCP based Receiver Assistant Congestion Control

TCP based Receiver Assistant Congestion Control International Conference on Multidisciplinary Research & Practice P a g e 219 TCP based Receiver Assistant Congestion Control Hardik K. Molia Master of Computer Engineering, Department of Computer Engineering

More information

Performance Analysis of Loss-Based High-Speed TCP Congestion Control Algorithms

Performance Analysis of Loss-Based High-Speed TCP Congestion Control Algorithms Performance Analysis of Loss-Based High-Speed TCP Congestion Control Algorithms HABIBULLAH JAMAL, KIRAN SULTAN Electrical Engineering Department University Of Engineering and Technology Taxila PAKISTAN

More information

Operating Systems and Networks. Network Lecture 10: Congestion Control. Adrian Perrig Network Security Group ETH Zürich

Operating Systems and Networks. Network Lecture 10: Congestion Control. Adrian Perrig Network Security Group ETH Zürich Operating Systems and Networks Network Lecture 10: Congestion Control Adrian Perrig Network Security Group ETH Zürich Where we are in the Course More fun in the Transport Layer! The mystery of congestion

More information

Where we are in the Course. Topic. Nature of Congestion. Nature of Congestion (3) Nature of Congestion (2) Operating Systems and Networks

Where we are in the Course. Topic. Nature of Congestion. Nature of Congestion (3) Nature of Congestion (2) Operating Systems and Networks Operating Systems and Networks Network Lecture 0: Congestion Control Adrian Perrig Network Security Group ETH Zürich Where we are in the Course More fun in the Transport Layer! The mystery of congestion

More information

Part1: Lecture 2! TCP congestion control!

Part1: Lecture 2! TCP congestion control! Part1: Lecture 2 TCP congestion control Summary of last time End to end principle Net neutrality TCP headers: SEQ and ACK number Transport protocols: UDP and TCP TCP hadnshakes TCP termination Flow control:

More information

Title Problems of TCP in High Bandwidth-Delay Networks Syed Nusrat JJT University, Rajasthan, India Abstract:

Title Problems of TCP in High Bandwidth-Delay Networks Syed Nusrat JJT University, Rajasthan, India Abstract: Title Problems of TCP in High Bandwidth-Delay Networks Syed Nusrat JJT University, Rajasthan, India Abstract: The Transmission Control Protocol (TCP) [J88] is the most popular transport layer protocol

More information

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

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service EEC7B/ECS5C Review: Internet Protocol Stack Review: TCP Application Telnet FTP HTTP Transport Network Link Physical bits on wire TCP LAN IP UDP Packet radio Do you remember the various mechanisms we have

More information

Impact of Short-lived TCP Flows on TCP Link Utilization over 10Gbps High-speed Networks

Impact of Short-lived TCP Flows on TCP Link Utilization over 10Gbps High-speed Networks Impact of Short-lived TCP Flows on TCP Link Utilization over Gbps High-speed Networks Lin Xue, Chui-hui Chiu, and Seung-Jong Park Department of Computer Science, Center for Computation & Technology, Louisiana

More information

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4 Principles of reliable data transfer 3.5 Connection-oriented transport: TCP segment

More information

Congestion Control. Principles of Congestion Control. Network assisted congestion. Asynchronous Transfer Mode. Computer Networks 10/23/2013

Congestion Control. Principles of Congestion Control. Network assisted congestion. Asynchronous Transfer Mode. Computer Networks 10/23/2013 Congestion Control Kai Shen Principles of Congestion Control Congestion: Informally: too many sources sending too much data too fast for the network to handle Results of congestion: long delays (e.g. queueing

More information

Flow and Congestion Control

Flow and Congestion Control CE443 Computer Networks Flow and Congestion Control Behnam Momeni Computer Engineering Department Sharif University of Technology Acknowledgments: Lecture slides are from Computer networks course thought

More information

Investigating the Use of Synchronized Clocks in TCP Congestion Control

Investigating the Use of Synchronized Clocks in TCP Congestion Control Investigating the Use of Synchronized Clocks in TCP Congestion Control Michele Weigle Dissertation Defense May 14, 2003 Advisor: Kevin Jeffay Research Question Can the use of exact timing information improve

More information

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009 Congestion Control Kai Shen Principles of Congestion Control Congestion: informally: too many sources sending too much data too fast for the network to handle results of congestion: long delays (e.g. queueing

More information

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

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 30, 2018 CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala October 30, 2018 Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet

More information

Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 802.3x Flow Control

Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 802.3x Flow Control Report on Transport Protocols over Mismatched-rate Layer-1 Circuits with 82.3x Flow Control Helali Bhuiyan, Mark McGinley, Tao Li, Malathi Veeraraghavan University of Virginia Email: {helali, mem5qf, taoli,

More information

Chapter 3 Transport Layer

Chapter 3 Transport Layer Chapter 3 Transport Layer A note on the use of these ppt slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you can add, modify, and delete

More information

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

Congestion Control. Brighten Godfrey CS 538 January Based in part on slides by Ion Stoica Congestion Control Brighten Godfrey CS 538 January 31 2018 Based in part on slides by Ion Stoica Announcements A starting point: the sliding window protocol TCP flow control Make sure receiving end can

More information

TCP Review. Carey Williamson Department of Computer Science University of Calgary Winter 2018

TCP Review. Carey Williamson Department of Computer Science University of Calgary Winter 2018 TCP Review Carey Williamson Department of Computer Science University of Calgary Winter 2018 Credit: Much of this content came courtesy of Erich Nahum (IBM Research) The TCP Protocol Connection-oriented,

More information

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

Transport Layer PREPARED BY AHMED ABDEL-RAOUF Transport Layer PREPARED BY AHMED ABDEL-RAOUF TCP Flow Control TCP Flow Control 32 bits source port # dest port # head len sequence number acknowledgement number not used U A P R S F checksum Receive window

More information

The Present and Future of Congestion Control. Mark Handley

The Present and Future of Congestion Control. Mark Handley The Present and Future of Congestion Control Mark Handley Outline Purpose of congestion control The Present: TCP s congestion control algorithm (AIMD) TCP-friendly congestion control for multimedia Datagram

More information

Flow and Congestion Control Marcos Vieira

Flow and Congestion Control Marcos Vieira Flow and Congestion Control 2014 Marcos Vieira Flow Control Part of TCP specification (even before 1988) Goal: not send more data than the receiver can handle Sliding window protocol Receiver uses window

More information

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

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 25, 2018 CMSC 417 Computer Networks Prof. Ashok K Agrawala 2018 Ashok Agrawala Message, Segment, Packet, and Frame host host HTTP HTTP message HTTP TCP TCP segment TCP router router IP IP packet IP IP packet IP

More information

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP CS 5520/ECE 5590NA: Network Architecture I Spring 2008 Lecture 13: UDP and TCP Most recent lectures discussed mechanisms to make better use of the IP address space, Internet control messages, and layering

More information

Reliable Transport II: TCP and Congestion Control

Reliable Transport II: TCP and Congestion Control Reliable Transport II: TCP and Congestion Control Brad Karp UCL Computer Science CS 3035/GZ01 31 st October 2013 Outline Slow Start AIMD Congestion control Throughput, loss, and RTT equation Connection

More information

Lecture 14: Congestion Control"

Lecture 14: Congestion Control Lecture 14: Congestion Control" CSE 222A: Computer Communication Networks Alex C. Snoeren Thanks: Amin Vahdat, Dina Katabi Lecture 14 Overview" TCP congestion control review XCP Overview 2 Congestion Control

More information

Transmission Control Protocol (TCP)

Transmission Control Protocol (TCP) TETCOS Transmission Control Protocol (TCP) Comparison of TCP Congestion Control Algorithms using NetSim @2017 Tetcos. This document is protected by copyright, all rights reserved Table of Contents 1. Abstract....

More information

CSCI-1680 Transport Layer III Congestion Control Strikes Back Rodrigo Fonseca

CSCI-1680 Transport Layer III Congestion Control Strikes Back Rodrigo Fonseca CSCI-1680 Transport Layer III Congestion Control Strikes Back Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti, Ion Stoica Last Time Flow Control Congestion Control

More information

Lecture 11. Transport Layer (cont d) Transport Layer 1

Lecture 11. Transport Layer (cont d) Transport Layer 1 Lecture 11 Transport Layer (cont d) Transport Layer 1 Agenda The Transport Layer (continue) Connection-oriented Transport (TCP) Flow Control Connection Management Congestion Control Introduction to the

More information