270 likes | 422 Views
Analysis of DCTCP: Stability, Convergence, and Fairness. Mohammad Alizadeh Adel Javanmard and Balaji Prabhakar. Stanford University. Data Center Packet Transport. Transport inside the DC TCP rules (99.9% of traffic in some DCs) But, TCP: Needs large buffers for high throughput
E N D
Analysis of DCTCP: Stability, Convergence, and Fairness Mohammad Alizadeh Adel Javanmard and BalajiPrabhakar Stanford University
Data Center Packet Transport • Transport inside the DC • TCP rules (99.9% of traffic in some DCs) • But, TCP: • Needs large buffers for high throughput • Induces large queuing delays • Does not handle bursty traffic well (Incast) • DCTCP was proposed to address these shortcomings (SIGCOMM’10).
TCP Buffer Requirement • Bandwidth-delay product rule of thumb: • A single flow needs C×RTT buffers for 100% Throughput. B = C×RTT B Buffer Size B > C×RTT B < C×RTT B To lower the buffering requirements, we must reduce sending rate variations. Buffer Size Buffer Size B Throughput loss! More latency!
DCTCP: Main Ideas • React in proportion to the extent of congestion. • Reduce window size based on fractionof marked packets. 2. Mark based on instantaneous queue length. • Fast feedback to better deal with bursts. • Simplifies hardware.
DCTCP: Algorithm B K Don’t Mark Mark Switch side: • Mark packets whenQueue Length > K. • Sender side: • Maintain running average of fractionof packets marked (α). • Adaptive window decreases: • Note: decrease factor between 1 and 2.
DCTCP vs TCP (Kbytes) Setup: Win 7, Broadcom 1Gbps Switch Scenario: 2 long-lived flows, K = 30KB
Steady State Analysis • What is the effect of the various network and algorithm parameters on system throughput and latency? • Network: Capacity, Round-trip Time, Number of flows • Algorithm: Marking threshold (K), Averaging parameter (g) • The standard approach is to study control loop behavior via fluid models. • Kelly et al., Low et al., Misra et al., Srikant et al, …
DCTCP Fluid Model p(t) p(t – R*) Delay α(t) LPF N/RTT(t) C − W(t) + q(t) AIMD × 1 0 K Switch Source
Fluid Model vs ns2 simulations N = 2 N = 10 N = 100 • Parameters: N = {2, 10, 100}, C = 10Gbps, d = 100μs, K = 65 pkts, g = 1/16.
Normalization of Fluid Model • We make the following change of variables: • The normalized system: • The normalized system depends on only two parameters:
Equilibrium CharacterizationCase 1: • Very large N: system (globally) converges to a unique fixed point: Example:
Equilibrium CharacterizationCase 1: • Very large N: system (globally) converges to a unique fixed point: Example:
Equilibrium CharacterizationCase 2: • System has a periodic limit cycle solution. Example:
Equilibrium CharacterizationCase 2: • System has a periodic limit cycle solution. Example:
Stability of Limit Cycles • Let X* = set of points on the limit cycle. • A limit cycle is locally asymptotically stable if δ > 0 exists s.t.:
Poincaré Map x1 x2 x2 = P(x1) x*α= P(x*α) Stability of Poincaré Map ↔ Stability of limit cycle
Stability Criterion • Theorem: The limit cycle of the DCTCP system: is locally asymptotically stable if and only if ρ(Z1Z2) < 1. • JFis the Jacobian matrix with respect to x. • T = (1 + hα)+(1 + hβ) is the period of the limit cycle. • Proof: Show that P(x*α+ δ) = x*α + Z1Z2δ + O(|δ|2). We have numerically checked this condition for:
Parameter Guidelines K B • How big does the marking threshold K need to be to avoid queue underflow?
Throughput-Latency Tradeoff • Parameters: C = 10Gbps, d = 480μs, g = 0.05. Throughput > 94% as K 0 For TCP: Throughput → 75%
Convergence Analysis • How long does it take for DCTCP sources to converge to their “fair share” rate (C/N)? • DCTCP is slower to converge than TCP since it cuts its window by smaller factors. • The fluid model is not suitable for transient analyses. • We use a hybrid (continuous- and discrete-time) model. • The model is inspired by the AIMD models of Baccelli et al. and Shorten et al.
The Hybrid Model Window Sizes Time 1 RTT p(t) (Marking Prob.) Time
Rate of Convergence (Theorem) Assume N DCTCP flows with arbitrary Wi(0) and αi(0), evolving according to the Hybrid Model, with: Define function , and let 0 < α*≤ 1 be the unique positive solution to Then: Also: where:
Consequences • DCTCP converges at most 40% slower than TCP: • The parameter g should not be too small:
(g = 0.025) (g = 0.005) (g = 0.07) Convergence: ns2 Simulations
Conclusion • Our analysis shows DCTCP: • requires 17% of C×RTT for full throughput • achieves 94% throughput as K → 0. • converges at most 1.4 times slower than TCP. • We provide guidelines for setting the DCTCP parameters. • The analysis suggests a simple modification that improves the RTT-fairness of DCTCP. • Achieves linear-RTT fairness (ThrputRTT-1), like TCP-RED