an axiomatic fluid flow model for congestion control
play

An axiomatic fluid-flow model for congestion control analysis - PowerPoint PPT Presentation

Introduction Modeling networks Building Blocks Examples Conclusion An axiomatic fluid-flow model for congestion control analysis Corentin Briat H. Hjalmarsson, K.H. Johansson, U.T. Jnsson, G. Karlsson, H. Sandberg and E.A. Yavuz KTH,


  1. Introduction Modeling networks Building Blocks Examples Conclusion An axiomatic fluid-flow model for congestion control analysis Corentin Briat H. Hjalmarsson, K.H. Johansson, U.T. Jönsson, G. Karlsson, H. Sandberg and E.A. Yavuz KTH, Stockholm, Sweden December 13 th 2011 CDC 2011, Orlando, USA C. Briat [KTH / ] 1/33

  2. Introduction Modeling networks Building Blocks Examples Conclusion Outline ◮ Introduction ◮ Modeling networks ◮ Building blocks ◮ Simulations ◮ Conclusion and Future Works C. Briat [KTH / ] 2/33

  3. Introduction Modeling networks Building Blocks Examples Conclusion Introduction C. Briat [KTH / ] 3/33

  4. Introduction Modeling networks Building Blocks Examples Conclusion Communication principle in networks Network Elements ◮ Buffers/Servers/Routers (queuing delays, loss) ◮ Transmission channels (delays, limited capacity) ◮ Users (senders, receivers) Transmission principle ◮ Information split into packets ◮ User A sends packets destined to User B ◮ Packets routed through the network ◮ User B receives packets and acknowledges them (ACK packet) ◮ User A receives ACK packets → transmission successful C. Briat [KTH / ] 4/33

  5. Introduction Modeling networks Building Blocks Examples Conclusion The congestion problem in networks Reason ◮ Network infrastructure ’small’ Consequence: QoS deterioration ◮ Presence of bottlenecks ◮ Large delays ◮ Data loss Congestion control ? C. Briat [KTH / ] 5/33

  6. Introduction Modeling networks Building Blocks Examples Conclusion Congestion control mechanisms Concepts and variables ◮ Flight-size: controlled variable ◮ Congestion window: reference ◮ Congestion measure: measurement Congestion measures ◮ Data loss: simple but aggressive ◮ Delay: complex but preventive Objectives ◮ Stability ◮ Performance criteria C. Briat [KTH / ] 6/33

  7. Introduction Modeling networks Building Blocks Examples Conclusion Modeling networks C. Briat [KTH / ] 7/33

  8. Introduction Modeling networks Building Blocks Examples Conclusion Modeling Networks: Communication Network (1) Small star topology C. Briat [KTH / ] 8/33

  9. Introduction Modeling networks Building Blocks Examples Conclusion Modeling Networks: Communication Network (2) Internet C. Briat [KTH / ] 9/33

  10. Introduction Modeling networks Building Blocks Examples Conclusion Model must scale ! C. Briat [KTH / ] 10/33

  11. Introduction Modeling networks Building Blocks Examples Conclusion Why the model for electrical circuits so successful ? 1. Only two universal concepts: current and voltage (Kirchhoff’s laws) 2. Local description of the elements (modularity) 3. Easy transcription of the electrical network into a topologically identical diagram/model, and vice-versa. 4. New models corresponding to new devices may be freely added without compromising existing ones. 5. Model prediction fits very well the reality 6. Systematic way of analysis by hand calculations or simulators. Similar properties are desired for congestion control modeling C. Briat [KTH / ] 11/33

  12. Introduction Modeling networks Building Blocks Examples Conclusion Building Blocks C. Briat [KTH / ] 12/33

  13. Introduction Modeling networks Building Blocks Examples Conclusion Fluid-flow models The last ingredient. . . ◮ Flight-size: controlled variable ◮ Congestion window: reference ◮ Congestion measure: measurement ◮ Flow: control input Flow definition ◮ Quantity of information: N [bit] ◮ Flow: φ [bit/s] ◮ Quantity of information having passed through point x between t 0 and t : � t N x ( t 0 , t ) := φ ( x, s ) ds t 0 C. Briat [KTH / ] 13/33

  14. Introduction Modeling networks Building Blocks Examples Conclusion Modeling procedure Core idea ◮ Information conservation law (Axiom 1) Independent models ◮ Transmission channels ◮ Buffers/Queues ◮ Users Properties of the model ◮ Obtained model is explicit, modular and scalable ◮ Similar to electrical networks C. Briat [KTH / ] 14/33

  15. Introduction Modeling networks Building Blocks Examples Conclusion Information conservation law (Axiom 1) Observations ◮ If a packet is in transit in a network element, it must have entered it in the past. ◮ We can count the number of packets P E ( t ) in an element E at time t simply by counting the entering packets during a certain amount of time. Conservation law statement There exists t 0 ( t ) ≤ t such that the following equality holds: � t P E ( t ) = φ ( s ) ds. t 0 ( t ) C. Briat [KTH / ] 15/33

  16. Introduction Modeling networks Building Blocks Examples Conclusion Information conservation law - Example Balance equation P ′ − φ o ( t ) E ( t ) = φ ( t ) ���� � �� � input output = φ ( t ) − t 0 ( t ) ′ φ ( t 0 ( t )) Output flow model The output flow of element E , φ o ( t ) , is given by φ o ( t ) := t 0 ( t ) ′ φ ( t 0 ( t )) . C. Briat [KTH / ] 16/33

  17. Introduction Modeling networks Building Blocks Examples Conclusion Transmission Channel model Assumptions ◮ Lossless ◮ Constant propagation delay T > 0 Quantity of information � t P E ( t ) = φ ( s ) ds t − T I/O Relationship and output flow P ′ E ( t ) = φ ( t ) − φ ( t − T ) φ o ( t ) = φ ( t − T ) C. Briat [KTH / ] 17/33

  18. Introduction Modeling networks Building Blocks Examples Conclusion Basic queue model (Axiom 2)   1 � τ ( t ) ˙ = φ j ( t ) − r ( t )  c j  c if C ( t )  � r ( t ) = φ j ( t ) otherwise  j Buffer model ◮ Flow integrator ◮ Hybrid system Model inaccuracies ◮ Aggregate output flows r ( t ) ! ◮ How to connect buffers to other buffers ? ◮ Does this model describe a FIFO queue ? C. Briat [KTH / ] 18/33

  19. Introduction Modeling networks Building Blocks Examples Conclusion FIFO Buffer Model - Output flow separation (1) Difficulties ◮ Integration destroys the information ◮ Indistinguishability of the output flows due to aggregation Solution ◮ Apply the conservation law ’around’ the buffer P E ( t ) = cτ ( t ) � t (1) = φ ( s ) ds g ( t ) where g ( t ) = t − τ ( g ( t )) . C. Briat [KTH / ] 19/33

  20. Introduction Modeling networks Building Blocks Examples Conclusion Internal FIFO Model - Output flow separation (2) FIFO buffer model 1 � τ ( t ) ˙ = [ φ j ( t ) − r j ( t )] c j  φ j ( g ( t )) c  if C ( t ) � r j ( t ) = k φ k ( t )  φ j ( t ) otherwise g ( t ) = t − τ ( g ( t )) C. Briat [KTH / ] 20/33

  21. Introduction Modeling networks Building Blocks Examples Conclusion User protocol model Description variables ◮ Window size w : number of desired outstanding packets ◮ Congestion measure µ : delays, packet loss, etc ◮ Sending flow φ o ( t ) and ACK flows φ ( t ) Continuous-time model of user protocol (Axiom 3) Protocol state : z ( t ) ˙ = P ( z ( t ) , µ ( t )) Window size : w ( t ) = W ( z ( t ) , µ ( t )) ◮ How to relate flows, flight-size and window size ? φ o ( t ) = U ( w ( t ) , φ ( t )) ? C. Briat [KTH / ] 21/33

  22. Introduction Modeling networks Building Blocks Examples Conclusion Complete user model Protocol Equations z ( t ) ˙ = P ( z ( t ) , µ ( t )) w ( t ) = W ( z ( t ) , µ ( t )) Sending flow model � w i ( t ) + φ ( t ) ˙ if T i ( t ) φ o ( t ) = 0 otherwise � 0 if T i ( t ) π i ( t ) ˙ = w i ( t ) + φ ( t ) ˙ otherwise . T i ( t ) = ([ π i ( t ) = 0] ∧ [ ˙ w i ( t ) + φ ( t ) ≥ 0]) C. Briat [KTH / ] 22/33

  23. Introduction Modeling networks Building Blocks Examples Conclusion Examples C. Briat [KTH / ] 23/33

  24. Introduction Modeling networks Building Blocks Examples Conclusion Single buffer - Two Users 0.04 0.035 0.03 Queue size [sec] 0.025 0.02 Proposed model Ratio link model 0.015 Static link model Joint link model Scenario 1 NS−2 0.01 2.8 3 3.2 3.4 3.6 3.8 4 4.2 Time [sec] ◮ c = 100 Mb/s, ρ = 1590 bytes ◮ Propagation delays: T 1 = 3 . 2 ms and T 2 = 117 ms ◮ Initial congestion window sizes: w 0 1 = 50 and w 0 2 = 550 packets ◮ At 3s, w 1 is increased to 150 packets. C. Briat [KTH / ] 24/33

  25. Introduction Modeling networks Building Blocks Examples Conclusion Single buffer - Two Users 0.085 0.08 Queue size [sec] 0.075 0.07 Proposed model 0.065 Ratio link model Static link model Joint link model Scenario 2 NS−2 0.06 4.8 5 5.2 5.4 5.6 5.8 6 6.2 Time [sec] ◮ c = 100 Mb/s, ρ = 1590 bytes, no cross-traffic ◮ Propagation delays: T 1 = 10 ms and T 2 = 90 ms ◮ Initial congestion window sizes: w 0 1 = 210 and w 0 2 = 750 packets ◮ At 5s, w 1 is increased to 300 packets. C. Briat [KTH / ] 25/33

  26. Introduction Modeling networks Building Blocks Examples Conclusion Two buffers - Three Users Queue size 1 [sec] 0.09 0.08 0.07 9.5 10 10.5 11 11.5 12 12.5 13 Time [sec] Queue size 2 [sec] 0.07 0.065 0.06 0.055 Proposed Model Scenario 3 0.05 NS−2 0.045 9.5 10 10.5 11 11.5 12 12.5 13 Time [sec] ◮ c 1 = 72 Mb/s, c 2 = 180 Mb/s, ρ = 1448 bytes, no cross-traffic ◮ Propagation delays: T 1 = 120 ms, T 2 = 80 ms and T 3 = 40 ms ◮ Initial congestion window sizes: w 0 1 = 1600 , w 0 2 = 1200 and w 0 3 = 5 packets ◮ At 10s, w 2 is increased to 1400 packets. C. Briat [KTH / ] 26/33

Recommend


More recommend