bufferbloat is all wet bufferbloat is all wet

Bufferbloat is all wet? Bufferbloat is all wet? Stephen Hemminger - PowerPoint PPT Presentation

Bufferbloat is all wet? Bufferbloat is all wet? Stephen Hemminger Stephen Hemminger s t e p h e n @n e t w o r k p l u mb e r . o r g s t e p h e n @n e t w o r k p l u mb e r . o r g @n e t w


  1. Bufferbloat is all wet? Bufferbloat is all wet? Stephen Hemminger Stephen Hemminger s t e p h e n @n e t w o r k p l u mb e r . o r g s t e p h e n @n e t w o r k p l u mb e r . o r g @n e t w o r k p l u mb e r @n e t w o r k p l u mb e r Linuxcon Europe Oct 2014

  2. B u ff e r b l o a t B u ff e r b l o a t ● Wh Wh a t i s t h e p r o b l e m a t i s t h e p r o b l e m ● Wh Wh a t c a u s e s t h e p r o b l e m a t c a u s e s t h e p r o b l e m ● S S o l u t i o n s o l u t i o n s – D D e mo n s t r a t i o n e mo n s t r a t i o n ● C C u r r e n t s t a t u s u r r e n t s t a t u s – T T h e G o o d h e G o o d – T T h e B a d h e B a d – T T h e U g l y h e U g l y

  3. S i g n s o f B u ff e r b l o a t S i g n s o f B u ff e r b l o a t ● Y Y o u mi g h t h a v e b u ff e r b l o a t i f o u mi g h t h a v e b u ff e r b l o a t i f – T T h r o u g h p u t h r o u g h p u t ● D D o w n l o a d 1 0 % o f a d v e r t i s e d o w n l o a d 1 0 % o f a d v e r t i s e d ● U U p l o a d d o e s n ' t w o r k p l o a d d o e s n ' t w o r k – L L a t e n c y a t e n c y ● l l a r g e ( > 2 0 0 ms ) a r g e ( > 2 0 0 ms ) ● V V a r i a b l e a r i a b l e – A A n d n o p a c k e t l o s s ! ! ! n d n o p a c k e t l o s s ! ! !

  4. H o w b a d i s i t ? H o w b a d i s i t ?

  5. Q u e u i n g T h e o r y B a s i c s Q u e u i n g T h e o r y B a s i c s utilization se rv icerate av e ragetim einque ue = 1 − utilization From Fred Baker: Bufferbloat! Graphic courtesy Sprint, Apricot 2004

  6. N e t w o r k P e r f o r ma n c e N e t w o r k P e r f o r ma n c e F a i r n e s s L a t e n c y T h r o u g h p u t R o u n d T r i p T i me M b i t s / s e c

  7. N e t a l y z r : D o w n s t r e a m N e t a l y z r : D o w n s t r e a m

  8. N e t a l y z r : U p s t r e a m N e t a l y z r : U p s t r e a m

  9. C l a s s i c a l T C P C l a s s i c a l T C P

  10. TCP throughput dynamics TCP throughput dynamics e ffe ctivewindow m e anthroughput = m e anroundtriptim e Increasing Measurable Throughput Bottleneck Capacity “knee” “cliff” Queue Depth Increasing TCP Window From Fred Baker: Bufferbloat!

  11. B l a me L i n u x B l a me L i n u x ● Wi Wi n d o w s X P n d o w s X P – M M a x i mu m w i n d o w 6 4 k a x i mu m w i n d o w 6 4 k ● Wi n d o w s 7 Wi n d o w s 7 – B B a n d w i d t h l i mi t t o 8 0 mb i t s a n d w i d t h l i mi t t o 8 0 mb i t s ● A A n d r o i d n d r o i d – R R e c e i v e w i n d o w l i mi t e d e c e i v e w i n d o w l i mi t e d

  12. B l a me t h e c u s t o me r B l a me t h e c u s t o me r ● C C u s t o me r s c a l l u s t o me r s c a l l s u p p o r t s u p p o r t ● A A p p l i c a t i o n s a r e p p l i c a t i o n s a r e u s i n g mo r e u s i n g mo r e b a n d w i d t h b a n d w i d t h ● B B l o c k a n d c h a r g e l o c k a n d c h a r g e

  13. Back to Reality

  14. B e n c h ma r k i s s u e s B e n c h ma r k i s s u e s ● B B a d a d – B B y t e s / s e c y t e s / s e c – P P a c k e s / s e c a c k e s / s e c – L L a t e n c y a t e n c y

  15. R e a l t i me R e s p o n s e U n d e r L o a d R e a l t i me R e s p o n s e U n d e r L o a d ● U U s e e x i s t i n g t o o l s e e x i s t i n g t o o l – N N e t p e r f e t p e r f ● C C o mb i n e mu l t i p l e s t r e a ms o mb i n e mu l t i p l e s t r e a ms – D D o w n l o a d o w n l o a d – U U p l o a d p l o a d – L L a t e n c y me a s u r e me n t a t e n c y me a s u r e me n t

  16. F I F O – t h e d e f a u l t F I F O – t h e d e f a u l t Ping 1sec! Upload Download Høiland-Jørgensen T., Battling Bufgerbloat

  17. S t o c h a s t i c F a i r Q u e u e S t o c h a s t i c F a i r Q u e u e Høiland-Jørgensen T., Battling Bufgerbloat

  18. C o n t r o l l e d D e l a y - c o d e l C o n t r o l l e d D e l a y - c o d e l Høiland-Jørgensen T., Battling Bufgerbloat

  19. F a i r Q u e u e C o n t r o l l e d D e l a y F a i r Q u e u e C o n t r o l l e d D e l a y Høiland-Jørgensen T., Battling Bufgerbloat

  20. B u ff e r b l o a t s t a t u s B u ff e r b l o a t s t a t u s

  21. Wh e r e i s B u ff e r b l o a t ? Wh e r e i s B u ff e r b l o a t ? Receiver Sender Application Application TCP TCP QDisc Router Router Backbone ISP ISP

  22. B u ff e r b l o a t S o l v e d ? B u ff e r b l o a t S o l v e d ? ● Q Q u e u i n g d i s c i p l i n e s u e u i n g d i s c i p l i n e s – C o d e l , P I E , . . . C o d e l , P I E , . . . ● L L i n u x i n t e r n a l i n u x i n t e r n a l – B Q L , F Q , P a c i n g B Q L , F Q , P a c i n g ● D D e f a u l t q d i s c e f a u l t q d i s c Sysctl -w sys.net.core.default_qdisc=fq_codel Sysctl -w sys.net.core.default_qdisc=fq_codel Y e s , ma n y t i me s o v e r Y e s , ma n y t i me s o v e r

  23. B u ff e r b l o a t : T h e G o o d B u ff e r b l o a t : T h e G o o d ● I I n d u s t r y a w a r e n e s s n d u s t r y a w a r e n e s s ● S S t a n d a r d s p r o g r e s s t a n d a r d s p r o g r e s s ● A A c t i v e r e s e a r c h c t i v e r e s e a r c h ● O O p e n S o u r c e p e n S o u r c e S o l u t i o n s S o l u t i o n s

  24. B u ff e r b l o a t : t h e B a d B u ff e r b l o a t : t h e B a d ● L L e g a c y e q u i p me n t e g a c y e q u i p me n t – O O E M f o c u s o n c o s t n o t A Q M E M f o c u s o n c o s t n o t A Q M ● C C o n g e s t i o n o n b a c k b o n e o n g e s t i o n o n b a c k b o n e – I I t ' s n o t a b u g i t ' s a f e a t u r e ? t ' s n o t a b u g i t ' s a f e a t u r e ? – P P r o b l e m i s p o l i t i c a l n o t t e c h n i c a l r o b l e m i s p o l i t i c a l n o t t e c h n i c a l

  25. B u ff e r b l o a t : t h e U g l y B u ff e r b l o a t : t h e U g l y ● Wi Wi r e l e s s r e l e s s – A A g g r e g a t i o n g g r e g a t i o n – M M u l t i c a s t u l t i c a s t – P P r o p r i e t a r y fi r mw a r e r o p r i e t a r y fi r mw a r e

  26. ? Q u e s t i o n s Dave T<dave.taht@bufferbloat.net>

  27. Thank you S t e p h e n H e mmi n g e r @n e t w o r k p l u mb e r s t e p h e n @n e t w o r k p l u mb e r . o r g

  28. Bufferbloat resources Bufferbloat.net: http://bufferbloat.net Email Lists: http://lists.bufferbloat.net IRC Channel: #bufferbloat on chat.freenode.net CeroWrt: http://www.bufferbloat.net/projects/cerowrt Other talks: http://mirrors.bufferbloat.net/Talks Jim Gettys Blog – http://gettys.wordpress.com RRUL Test- https://github.com/tohojo/netperf-wrapper A big thanks to the bloat mailing list, Jim, Kathie, Van, and Eric, ISC, the C eroWrt contributors, OpenWrt, the Internet Civil Engineering Institute, and the Google Fiber for their interest and support in the work!

Recommend


More recommend


Explore More Topics

Stay informed with curated content and fresh updates.