Queue Dynamics with Window Flow Control Karl Henrik Johansson Håkan Hjalmarsson Steven Low Kevin Tang Lachlan Andrew Krister Jacobsson – krister@caltech.edu Queue Dynamics with Window Flow Control TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA
Introduction Window = Outstanding Packets 1001 1001 0101 0101 1101 BASIC PROBLEM Transfer data over a communication network PACKET SWITCHED NETWORK File divided into chunks---packets. Packets transmitted to the receiver. Data ACKed. FEEDBACK MECHANISM CONTROL PROBLEM In what pace should packets be transmitted Network operates at a favorable region of the state space Stable (TCP/RED) Decentralized Etc. CONGESTION WINDOW ROUND TRIP TIME ACK ACK
Background TCP is window based TCP carries >80% of the Internet traffic TCP limitations Bandwidth scalability issues Wireless links Delay dependent resource allocation New designs needed! Window based? Tractable flow-level models valuable
Fluid Flow Modeling Packet-level Internet is extremely complex Abstract away packet level detail Model flows of packets as fluids Feedback mechanism ODEs Powerful analysis frameworks Used to reverse engineer TCP PROBLEMS WITH QUEUEING MODELS FEEDBACK SYSTEM
Motivation
WindoW Based Congestion Control Window = Outstanding Packets 1101 ACK 1101 SHOPPING CART ANALOGY INPUT ONE WINDOW AMOUNT OF PACKETS PER RTT DEFINE ROUND TRIP TIME
WindoW Based Congestion Control Round Trip Time (RTT) SHOPPING CART ANALOGY INPUT ONE WINDOW AMOUNT OF PACKETS PER RTT DEFINE ROUND TRIP TIME
WindoW Based Congestion Control Sending rate is dependent on the network state! Sending rate per RTT = Window 1101 1101 SHOPPING CART ANALOGY INPUT ONE WINDOW AMOUNT OF PACKETS PER RTT DEFINE ROUND TRIP TIME
Window Based Congestion Control Routers operate buffers Queuing delay RTT = Propagation delay + Queuing delay Control system ACK-Clocking Load increase Larger delay Lower rate Load decrease Smaller delay Higher rate
Window Based Congestion Control EXPLAIN KEY OBSERVATION: Two loops FOCUS ON THE OUTER LOOP Design of window update mechanism
Modeling Input: Window size Output: Queue size Assumptions No loss FIFO buffering Single link No forward propagation delay Operate far from static nonlinearities
Modeling a queue Integrates the link excess rate Rate of change:
Modeling the Instantaneous Rate What is xn(t)??? Common approximation: xn(t)¼ wn(t)/¿n(t) Does not consider ACK-clocking! NO CROSS TRAFFIC Single window based source, single bottleneck Capacity 50 Mbit/s Window control disabled Step of size 10 packets in window at t=20 s CROSS TRAFFIC 40 Mbit/s UDP traffic present
Modeling the Instantaneous Rate 1101 t0
Model Summary Queue integration: Instantaneous rates: Round trip time = Prop. Delay + Queuing Delay:
Model Validation Step response, single source, single bottleneck UDP cross traffic!
Analyzing the effect of cross traffic LINEAR DISCRETE SYSTEM POLE IN x_c/c No cross traffic: Proportional response Cross traffic: Smooth response
Analyzing the stepwise convergence
More Model Validation
Equilibrium Unique equilibrium Rates xn(t) non-unique By solving a convex problem
Stability Single bottleneck locally stable from windows to queue Rate (FFT) Queue (FFT) Single bottleneck locally stable from windows to queue Not stable from windows to rates when flows’ RTT ratios are rational Marginally stable from windows to rates when flows’ RTTs are multiples of each other FFT of rate x_1 and queue Upper: rational RTT ratios. Lower non-rational RTT rations. Captures burstiness rate phenomenon, sub-RTT dynamics.
Stability Multilink networks may be unstable from windows to the queues! RTT = 400 ms Forward RTT = RTT/4 ms Poles at j2/RTT -> frequency = 2/RTT=5 Hz
Approximations and Previous Work Previous models appears as approximations of the integral Numerical quadrature Taylor approximations, Padé approximations Low order models valid for small RTTs
Closing the Loop FAST TCP Queuing Delay
Case study: FAST TcP Previous models: locally asymptotically stable Proposed model: system destabilizes for Heterogeneous RTTs Rational RTT ratios NS simulations and testbed experiments confirms predictions
Some remarks FAST TCP designed to be stable for all delays Scale down gain inversely proportional to RTT Feedback on the scale of other flows’ RTT Need to scale down gain inversely proportional to other flows’ RTTs Alternatively: attenuate the large delay feedback Gain is dependent on sending rate Punish large delay flows TCP Reno: RTT biased resource allocation!!! It exists stabilizing controllers using locally available information only (cancel the ACK-clocking)
Conclusions New accurate model of the ACK-clocking mechanism Unstable for certain configurations!!! Dynamics more complex than previously known May have impact on existing (stability) results Model validation is crucial Equally fair window based congestion control problematic Window based or rate based congestion control?
WindoW Based Congestion Control Window size = 2 Window size = 1 1101 1101 SHOPPING CART ANALOGY INPUT ONE WINDOW AMOUNT OF PACKETS PER RTT DEFINE ROUND TRIP TIME
Outline Window Based Congestion Control Modeling Model Properties Model Application Conclusions