1 / 26

Internet as a Dynamic System

Internet as a Dynamic System. Polly Huang NTU, EE http:/cc.ee.ntu.edu.tw/~phuang. Modeling TCP. Outlines: Reno TCP Queuing network approach Control theoretical approach Engineering approach. Reno TCP. Increase congestion window size slow start (cwnd < ssh): cwnd += 1

johnda
Download Presentation

Internet as a Dynamic System

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Internet as a Dynamic System Polly Huang NTU, EE http:/cc.ee.ntu.edu.tw/~phuang

  2. Modeling TCP Outlines: Reno TCP Queuing network approach Control theoretical approach Engineering approach

  3. Reno TCP • Increase congestion window size • slow start (cwnd < ssh): cwnd += 1 • steady state (cwnd  ssh): cwnd += 1/cwnd • Decrease congestion window size • duplicated acknowledges: cwnd = cwnd/2 • timeout: cwnd = 1 • ssh = cwnd/2

  4. TCP With Different ssh cwnd=1 cwnd=2 cwnd=4 ssh = 20 source sink cwnd=1 cwnd=2 cwnd~3 ssh = 2 source sink 2+1/2 = 5/2 5/2 + 2/5 = 29/10

  5. cwnd/RTT (Round Trip Time) cwnd/packet 10-second Quiz Both curves represent some TCP attribute’s behavior. What are they? ssh ssh

  6. Queuing Approach Assume fixed packet size: MSS BW = A*MSS/(Te-Ts) cwnd ssh A Time Ts Te

  7. The Magical (1/p)1/2 • Show in a simplified analysis • infinitely long TCP connections • only in the steady state • cwnd += 1 per RTT • no timeouts • only duplicated acknowledges • cwnd /= 2 per drop • Average Bandwidth = • MSS/RTT * (3/2p)1/2

  8. W3 W1 W2 W3/2 W1/2 W2/2 Saw Tooth Behavior

  9. Deriving BW W: average tooth tip W/2: average tooth dip Total number of packets sent between two packet drops is: (W/2 + W) * (W/2) /2 = (3/8)W2 W W/2 p: probability of packet loss (3/8) W2 = 1/p W = (8/3p)1/2 BW = MSS * (3/8) W2 / (RTT * W/2) = MSS/RTT * (3/2p)1/2 RTT * W/2

  10. Lakshman (Bell Lab) Jun 97’ Floyd (LBL) Oct 91’ Ott (Bellcore) Aug 96’ Mathis (PSC) Jul 97’ Padhye (U Mass) Sep 98’ Heidemann (ISI) Jun 97’ Cardwell (U Wash) Jul 00’ A Brief History Steady Connections Constant RTT! Short Connections

  11. Control Theory Approach • A set of coupled differential equations • dW(t) as a function of RTT(t) • dRTT(t) as a function of W(t)

  12. Dynamics of Window Size • steady state • cwnd += 1 per RTT • no timeouts • cwnd /=2per drop • dW(t) = 1/RTT(t) - W(t)/2 * p(drop)

  13. Dynamics of RTT • dRTT(t) = Tfixed + dq(t) • In a bottleneck queue • Packets coming in : W(t)/RTT(t) • Packets going out : C (link rate) • dq(t) = -C + W(t)/RTT(t)

  14. Deriving W(t), RTT(t), q(t) • 3 equations • dW(t) = 1/RTT(t) - W(t)/2 * p(drop) • dRTT(t) = Tfixed + dq(t) • dq(t) = -C + W(t)/RTT(t) • 4 variables? • W(t), RTT(t), q(t), p(drop) • p(drop): function of q(t)

  15. Hybrid Modeling • p(drop) = 1, q(t)=qmax/C • dq(t) = 0 • non-stable state • p(drop) = 0, q(t)<qmax/C • dq(t) = -C + W(t)/RTT(t) • stable state

  16. Normalization • Non-linear • dq(t) = -C + W(t)/RTT(t) • Take RTT as time unit, T • dt/dT = RTT(t) = Tfixed + q(t)/C • Linear • dq(T) = -C Tfixed – q(T) + W(T) • Can calculate # of steps to leave non-stable state

  17. A Brief History Steady Connections Shenker (Xerox) Aug 90’ Keshav (UCB) Aug 91’ Misra (U Mass) Aug 00’ Hespanha (USC) Mar 01’ Steady state! TCP as smooth fluid!

  18. Engineer’s Approach • Take results of traffic analysis seriously • Closed-loop control (fractal scaling) • Back-to-back packets (burstiness) • Model these two properties explicitly • TCP as packet trains • Use exhaustive tests to obtain • sizes and schedules of the trains • Represented as a finite state machine

  19. n0 n1 TCP • A batch of packets per RTT or Timeout

  20. 2 4 ... ... 2 2 2 1 ... win=1, ssh=2 Constructing a Finite State Automata win=1, ssh=20 1

  21. Light-weight TCP • Coarse-grain TCP behavior • FSA for Short TCP connections • Numbers of packets sent per round trip time or timeout • Combinations of packet drops • Preservation of the close-loop feedback control (the KEY property)

  22. 1 2 4 8 16 28-30 15-27 12 14 1 7 10 (7,7) 6 8 1 6 7 (6,6) 4 6 4 6 1 5 6 7 (5,5) 2+2 2 2 4 4 5 6 (4,4) 3 3 4 5 6 (3,3) 1 2 2 3 4 5 6 7 7 (wnd, ssh) = (1,2) Reno TCP (Partial)

  23. Evaluation

  24. Self-similar Periodic Multifractal Traffic Fingerprint FSA TCP’s delay difference is ~10msec!! Time series are taken every 10msec!! Not appropriate for multifractal analysis!!!

  25. Quick Summary • Analyzing Internet • Characteristics • Efficient high-fidelity simulations • Performance analysis and protocol design • Modeling TCP • Queuing: average, fixed RTT • Control: variable RTT, smooth fluid • Engineering: bursty packet train, fractal

  26. Questions? Polly Huang NTU, EE http://cc.ee.ntu.edu.tw/~phuang

More Related