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

FAST TCP: Motivation, Architecture, Algorithms, Performance

  • Upload
    doris

  • View
    28

  • Download
    1

Embed Size (px)

DESCRIPTION

Cheng Jin David Wei Steven Low. FAST TCP: Motivation, Architecture, Algorithms, Performance. http://netlab.caltech.edu. Difficulties at large window. Equilibrium problem Packet level : AI too slow, MD too drastic. Flow level : requires very small loss probability. Dynamic problem - PowerPoint PPT Presentation

Citation preview

Page 1: FAST TCP: Motivation, Architecture, Algorithms, Performance

Cheng Jin David Wei Steven Low

http://netlab.caltech.edu

FAST TCP:Motivation, Architecture, Algorithms, Performance

Page 2: 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: FAST TCP: Motivation, Architecture, Algorithms, Performance

Problem: binary signal

TCP

oscillation

Page 4: FAST TCP: Motivation, Architecture, Algorithms, Performance

Solution: multibit signal

FASTstabilized

Page 5: 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: FAST TCP: Motivation, Architecture, Algorithms, Performance

Problem: no target

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

Reno: AIMD (1, 0.5)

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

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

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

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

Page 7: FAST TCP: Motivation, Architecture, Algorithms, Performance

Solution: estimate target FAST

Scalable to any w*

Slow Start

FAST Conv

Equil

Loss Rec

Page 8: FAST TCP: Motivation, Architecture, Algorithms, Performance

Implementation Strategy Common flow level dynamics

)()(1 )( )(

' tUtqttw

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: 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: 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: FAST TCP: Motivation, Architecture, Algorithms, Performance

ArchitectureEach component designed independently upgraded asynchronously

DataControl

WindowControl

Burstiness Control

Estimation

TCP Protocol Processing

Page 12: FAST TCP: Motivation, Architecture, Algorithms, Performance

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

Page 13: 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: 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: FAST TCP: Motivation, Architecture, Algorithms, Performance

Dynamic sharing: 3 flowsFAST Linux

HSTCP STCP

Steady throughput

Page 16: 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: FAST TCP: Motivation, Architecture, Algorithms, Performance

Stability

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

stable underdiverse scenarios

Page 18: 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: FAST TCP: Motivation, Architecture, Algorithms, Performance

FAST Linux

throughput

loss

queue

STCPHSTCP

30min

Room for mice !

HSTCP

Page 20: 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: 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: 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: FAST TCP: Motivation, Architecture, Algorithms, Performance

The End

Page 24: FAST TCP: Motivation, Architecture, Algorithms, Performance

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

Page 25: 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: 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: 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: 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: 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: 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: 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