Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms,...

31
Cheng Jin David Wei Steven Low http:// netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance
  • date post

    20-Dec-2015
  • Category

    Documents

  • view

    223
  • download

    0

Transcript of Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms,...

Page 1: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Cheng Jin David Wei Steven Low

http://netlab.caltech.edu

FAST TCP:Motivation, Architecture, Algorithms, Performance

Page 2: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Difficulties at large window

Equilibrium problem Packet level: AI too slow, MD too drastic. Flow level: requires very small loss

probability. Dynamic problem

Packet level: must oscillate on a binary signal.

Flow level: unstable at large window.

Page 3: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Problem: binary signal

TCP

oscillation

Page 4: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Solution: multibit signal

FAST

stabilized

Page 5: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Queueing Delay in FAST

Queueing delay is not used to avoid loss Queueing delay defines a target number

of packets ( to be buffered for each flow

Queueing delay allows FAST to estimate the distance from the target

Page 6: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Problem: no target

ACK: W W + 1/W

Loss: W W – 0.5W

Reno: AIMD (1, 0.5)

ACK: W W + a(w)/W

Loss: W W – b(w)W

ACK: W W + 0.01

Loss: W W – 0.125W

HSTCP: AIMD (a(w), b(w))

STCP: MIMD (1/100, 1/8)

Page 7: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Solution: estimate target FAST

Scalable to any w*

Slow Start

FAST Conv

Equil

Loss Rec

Page 8: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Implementation Strategy

Common flow level dynamics

)(

)(1 )( )(

' tU

tqttw

i

ii

windowadjustment

controlgain

flow levelgoal=

Small adjustment when close, large far away Need to estimate how far current state is from tarqet Scalable

Queueing delay easier to estimate compared with extremely small loss probability

Page 9: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Window Control Algorithm

RTT: exponential moving average with weight of min {1/8, 3/cwnd}

baseRTT: latency, or minimum RTT determines fairness and convergence

rate

Page 10: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

FAST and Other DCAs

FAST is one implementation within the more general primal-dual framework

Queueing delay is used as an explicit feedback from the network

FAST does not use queueing delay to predict or avoid packet losses

FAST may use other forms of price in the future when they become available

Page 11: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Architecture

Each component designed independently upgraded asynchronously

DataControl

WindowControl

Burstiness Control

Estimation

TCP Protocol Processing

Page 12: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Experiments

In-house dummynet testbed PlanetLab Internet experiments Internet2 backbone experiments ns-2 simulations

Page 13: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Dummynet Setup

Single bottleneck link, multiple path latencies Iperf for memory-to-memory transfers Intra-protocol testings Dynamic network scenarios Instrumentation on the sender and the router

Page 14: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

What Have We Learnt?

FAST is reasonable under normal network conditions

Well-known scenarios where FAST doesn’t perform well

Network behavior is important Dynamic scenarios are important Host implementation (Linux) also

important

Page 15: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Dynamic sharing: 3 flowsFAST Linux

HSTCP STCP

Steady throughput

Page 16: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Aggregate Throughput

Dummynet: cap = 800Mbps; delay = 50-200ms; #flows = 1-14; 29 expts

large windows

Ideal CDF

Page 17: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Stability

Dummynet: cap = 800Mbps; delay = 50-200ms; #flows = 1-14; 29 expts

stable underdiverse scenarios

Page 18: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Fairness

Dummynet: cap = 800Mbps; delay = 50-200ms; #flows = 1-14; 29 expts

Reno and HSTCPhave similar fairness

Page 19: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

FAST Linux

throughput

loss

queue

STCPHSTCP

30min

Room for mice !

HSTCP

Page 20: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Known Issues

Network latency estimation route changes, dynamic sharing does not upset stability

Small network buffer at least like TCP Reno adapt on slow timescale, but how?

TCP-friendliness friendly at least at small window how to dynamically tune friendliness?

Reverse path congestion

Page 21: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Acknowledgments Caltech

Bunn, Choe, Doyle, Newman, Ravot, Singh, J. Wang UCLA

Paganini, Z. Wang CERN

Martin SLAC

Cottrell Internet2

Almes, Shalunov Cisco

Aiken, Doraiswami, Yip Level(3)

Fernes LANL

Wu

Page 22: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

FAST TCP: motivation, architecture, algorithms, performance. IEEE Infocom 2004

Code reorganization, ready for integration with web100.

-release: summer 2004Inquiry: [email protected]

http://netlab.caltech.edu/FAST

Page 23: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

The End

Page 24: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

FAST TCP v.s. Buffer SizeSanjay Hegde & David Wei

Page 25: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Backward Queueing Delay IIBartek Wydrowski

1 fw flow1 bk flow

2 fw flows1 bk flows

2 fw flows2 bk flows

Page 26: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

PlanetLab Internet Experiment

Throughput v.s. loss and delayqualitatively similar results

FAST saw higher loss due to large alpha value

Jayaraman & Wydrowski

Page 27: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Linux Related Issues

Complicated state transition Linux TCP kernel documentation

Netdev implementation and NAPI frequent delays between dev and TCP layers

Linux loss recovery too many acks during fast recovery high CPU overhead per SACK very long recovery times Scalable TCP and H-TCP offer enhancements

Page 28: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

TCP/AQM

Congestion control has two components TCP: adjusts rate according to congestion AQM: feeds back congestion based on utilization

Distributed feed-back system equilibrium and stability properties determine

system performance

pl(t)

xi(t)TCP: Reno Vegas FAST

AQM: DropTail RED REM/PI AVQ

Page 29: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Optimization Model

Network bandwidth allocation as utility maximization

Optimization problem

Primal-dual componentsx(t+1) = F(q(t), x(t)) Sourcep(t+1) = G(y(t), p(t)) Link

Llcy

xU

ll

sss

x s

, subject to

)( max0

Page 30: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Network Model

Components: TCP and AQM algorithms, and routing matrices

Each TCP source sees an aggregate price, q Each link sees an aggregate incoming rate

x y

F1

FN

G1

GL

Rf(s)

Rb(s)

TCP Network AQM

q p

Page 31: Cheng Jin David Wei Steven Low ://netlab.caltech.edu FAST TCP: Motivation, Architecture, Algorithms, Performance.

Packet Level

ACK: W W + 1/W Loss: W W – 0.5 W

Reno AIMD(1, 0.5)

ACK: W W + a(w)/WLoss: W W – b(w) W

HSTCP AIMD(a(w), b(w))

ACK: W W + 0.01Loss: W W – 0.125 W

STCP MIMD(a, b)

RTT

baseRTT W W :RTT FAST