optimal adaptive feedback control of a network buffer
play

Optimal Adaptive Feedback Control of a Network Buffer V. Guffens, - PowerPoint PPT Presentation

Optimal Adaptive Feedback Control of a Network Buffer V. Guffens, G. Bastin UCL/CESAME (Belgium) American control conference 2005 Portland, Oregon, USA - Juin 8-10 2005 Optimal Adaptive Feedback Control of a Network Buffer p.1/19


  1. Optimal Adaptive Feedback Control of a Network Buffer V. Guffens, G. Bastin UCL/CESAME (Belgium) American control conference 2005 Portland, Oregon, USA - Juin 8-10 2005 Optimal Adaptive Feedback Control of a Network Buffer – p.1/19

  2. Principle w Threshold DROP EXCESS v Optimal Adaptive Feedback Control of a Network Buffer – p.2/19

  3. Principle w Threshold 7.5 7.5 DROP Cost versus threshold EXCESS 7.4 7.4 7.3 7.3 HIGH HIGH LOST RETENTION 7.2 7.2 TIME 7.1 7.1 v × 7.0 7.0 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 Optimal Adaptive Feedback Control of a Network Buffer – p.2/19

  4. Principle w Find an adaptive threshold strategy that gives good trade-off Threshold 7.5 7.5 DROP Cost versus threshold EXCESS 7.4 7.4 7.3 7.3 HIGH HIGH LOST RETENTION 7.2 7.2 TIME 7.1 7.1 v × 7.0 7.0 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 Optimal Adaptive Feedback Control of a Network Buffer – p.2/19

  5. Outline Model of a fifo queue with tail drop policy Optimal control (Pontryagin principle) Practical Implementation Optimal Adaptive Feedback Control of a Network Buffer – p.3/19

  6. PART I Model of a fifo queue Optimal Adaptive Feedback Control of a Network Buffer – p.4/19

  7. Fluid flow model of a FIFO buffer service rate (average ) µ x average λ pps asynchronous arrival asynchronous departure How many packets in the queue (average) ? Optimal Adaptive Feedback Control of a Network Buffer – p.5/19

  8. Fluid flow model of a FIFO buffer service rate (average ) µ x average λ pps asynchronous arrival asynchronous departure How many packets in the queue (average) ? λ µ 50 Queueing system 40 theory µ x 30 λ= 1+x 20 For M/M/1 system 10 buffer occupancy [packet] 0 10 20 30 40 50 Optimal Adaptive Feedback Control of a Network Buffer – p.5/19

  9. Dynamical model (single queue) x v(t) w(t) service rate (average ) µ x = v ( t ) − w ( t ) ˙ Optimal Adaptive Feedback Control of a Network Buffer – p.6/19

  10. Dynamical model (single queue) x v(t) w(t) service rate (average ) µ x = v ( t ) − r ( x ( t )) ˙ r(x) [pps] − x µx µ 50 λ w ( t ) = r ( x ( t )) = Equilibrium 40 a + x 30 For M/M/1 system 20 10 (a=1) buffer occupancy [packet] 0 10 20 30 40 50 Optimal Adaptive Feedback Control of a Network Buffer – p.6/19

  11. Dynamical model (single queue) x v(t) w(t) service rate (average ) µ x = v ( t ) − r ( x ( t )) ˙ Approximate dynamical extension to queueing theory Optimal Adaptive Feedback Control of a Network Buffer – p.6/19

  12. Experimental validation u(t) x [pps] 10 15 service rate ( =40[pps]) µ 10 [s] Optimal Adaptive Feedback Control of a Network Buffer – p.7/19

  13. Experimental validation u(t) x [pps] 10 15 service rate ( =40[pps]) µ 10 [s] 7 [p] 70 [s] Optimal Adaptive Feedback Control of a Network Buffer – p.7/19

  14. Experimental validation u(t) x [pps] 10 15 service rate ( =40[pps]) µ 10 [s] 7 [p] 70 [s] Optimal Adaptive Feedback Control of a Network Buffer – p.7/19

  15. Experimental validation u(t) x [pps] 10 15 service rate ( =40[pps]) µ 10 [s] x [p] 0.7 0.6 0.5 0.4 0.3 0.2 Fluid flow model 0.1 discrete event simulator time [s] 0 0 10 20 30 40 50 60 70 Optimal Adaptive Feedback Control of a Network Buffer – p.7/19

  16. Influence of parameter a µx Fluid flow model: ˙ x = u ( t ) − µ = 15[ pps ] a + x buffer load [p] x 9 24 [pps] 8 20 input rate 7 16 u(t) 12 6 8 5 4 4 0 0 1 2 3 4 5 3 [s] a=1 2 a=0.01 1 decreasing value 0 of a −1 0 1 2 3 4 5 time [s] Optimal Adaptive Feedback Control of a Network Buffer – p.8/19

  17. PART II Optimal control Optimal Adaptive Feedback Control of a Network Buffer – p.9/19

  18. Optimal control : Cost function x µx arriving departing x = f ( x, t ) = u ( t ) − ˙ packets packets a + x w u v Buffer d 0 � u ( t ) � w dropped packets L ( x, t, u ) = waiting packets + weight X lost packets = x ( t ) + R ( w ( t ) − u ( t )) Optimal Adaptive Feedback Control of a Network Buffer – p.10/19

  19. Optimal control : Cost function x µx arriving departing x = f ( x, t ) = u ( t ) − ˙ packets packets a + x w u v Buffer d 0 � u ( t ) � w dropped packets L ( x, t, u ) = waiting packets + weight X lost packets = x ( t ) + R ( w ( t ) − u ( t )) � t f J ( x, t f , u ) = 0 L ( x, t, u ) dt COST Optimal Adaptive Feedback Control of a Network Buffer – p.10/19

  20. x Problem Resolution w u v Buffer d HAMILTONIAN PONTRYAGIN OPTIMAL TRAJECTORY Optimal Adaptive Feedback Control of a Network Buffer – p.11/19

  21. x Problem Resolution w u v Buffer d H ( x, t, u ) = L ( x, t, u ) + pf ( x, t ) µx � � � � = x ( t ) + R w − u ( t ) + p u ( t ) − a + x PONTRYAGIN OPTIMAL TRAJECTORY Optimal Adaptive Feedback Control of a Network Buffer – p.11/19

  22. x Problem Resolution w u v Buffer d H ( x, t, u ) = L ( x, t, u ) + pf ( x, t ) µx � � � � = x ( t ) + R w − u ( t ) + p u ( t ) − a + x u ∗ arg.min 0 ≤ u ( t ) ≤ w H ( x ∗ , t, u ) = aµ OPTIMAL TRAJECTORY ˙ = − 1 + p p ( t f ) = 0 p ( a + x ) 2 ˙ = f ( x, t ) x Optimal Adaptive Feedback Control of a Network Buffer – p.11/19

  23. x Problem Resolution w u v Buffer d H ( x, t, u ) = L ( x, t, u ) + pf ( x, t ) µx � � � � = x ( t ) + R w − u ( t ) + p u ( t ) − a + x u ∗ arg.min 0 ≤ u ( t ) ≤ w H ( x ∗ , t, u ) =  0 p > R  aµ   ˙ = − 1 + p p ( t f ) = 0 p  u ∗ = ( a + x ) 2 w p < R  ˙ = f ( x, t ) x  p = R  singular  Optimal Adaptive Feedback Control of a Network Buffer – p.11/19

  24. Singular arc Obtained by setting : d 2 s dt 2 ( x ∗ , p ∗ ) p = R = 0 s ( t ) = p ( t ) − R Characterised by µx sing � p = ˙ ˙ x = 0 x sing = u sing = aRµ − a a + x sing Optimal Adaptive Feedback Control of a Network Buffer – p.12/19

  25. Example: Max-Sing-Max 6 Average buffer load 5 4 3 2 1 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1 [s] 60 Input rate u(t) 60 50 x µ = 50 40 30 20 10 d(t) 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 0.20 0.18 costate p 0.16 0.14 0.12 0.10 0.08 0.06 0.04 0.02 0 t1 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 t2 time[s] Optimal Adaptive Feedback Control of a Network Buffer – p.13/19

  26. Example: Max-Sing-Max 6 Average buffer load 5 4 3 2 1 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1 [s] 60 Input rate u(t) 60 50 x µ = 50 40 30 20 10 d(t) 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 0.20 0.18 costate p 0.16 0.14 0.12 0.10 0.08 0.06 0.04 0.02 0 t1 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 t2 time[s] Optimal Adaptive Feedback Control of a Network Buffer – p.13/19

  27. Example: Max-Sing-Max 6 Average buffer load 5 4 3 2 1 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 60 Input rate u(t) 50 Need to integrate the 40 30 costate, starting from t f 20 10 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 0.20 0.18 costate p 0.16 0.14 0.12 0.10 0.08 0.06 0.04 0.02 0 t1 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 t2 time[s] Optimal Adaptive Feedback Control of a Network Buffer – p.13/19

  28. Example: Max-Sing-Max 6 Average buffer load 5 4 3 2 1 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 60 Input rate u(t) 50 40 t 2 ≈ t f − R 30 20 10 0 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 0.20 0.18 costate p 0.16 0.14 0.12 0.10 0.08 0.06 0.04 0.02 0 t1 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 t2 time[s] Optimal Adaptive Feedback Control of a Network Buffer – p.13/19

  29. Example: Max-Sing-Max w 6 Average buffer load 5 4 3 Threshold 2 = x 1 DROP sing EXCESS 0 x(t) 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 60 Input rate u(t) 50 40 v 30 20 10 0 Ignore the [ t 2 , t f ] 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 0.20 0.18 costate p interval 0.16 0.14 0.12 0.10 Use tail drop policy to 0.08 0.06 0.04 0.02 control x at x sing 0 t1 0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 t2 time[s] Optimal Adaptive Feedback Control of a Network Buffer – p.13/19

  30. PART III Implementation Optimal Adaptive Feedback Control of a Network Buffer – p.14/19

  31. Implementation Obtain fluid-flow measures of x, ˆ needed variables: ˆ λ Obtain an estimate ˆ a of the ^ a parameter a Compute the singular values: x sing = √ Rµ ˆ Threshold = x a − ˆ a and sing ^ x(t) � a ˆ u sing = µ (1 − Rµ ) ^ λ if ˆ λ > u sing , drop packets so as to control ˆ x at its singular value x sing Optimal Adaptive Feedback Control of a Network Buffer – p.15/19

  32. Fluid flow measures ∆ = Sampling time interval N = number of packets = total retention time τ Optimal Adaptive Feedback Control of a Network Buffer – p.16/19

  33. Fluid flow measures λ = N ˆ : average rate ∆ τ ˆ = T : average retention time N The average buffer length is calculated using the Little’s formula T = τ x = ˆ λ ˆ ˆ ∆ Optimal Adaptive Feedback Control of a Network Buffer – p.16/19

Recommend


More recommend