Bufferbloat, die Büchse von Pandora
-
Heyho, ich bins mal wieder. Lange nichts hier geschrieben. War auch lange weg leider :(
Ich wollte mich mal wieder an das Thema Bufferbloat ran wagen und hab nachdem Update viel auch gelesen, dass viele sich beschweren und sagen, dass es seitdem Update bei denen schlechter geworden ist.
Ich hab dazu leider nach wie vor keine Besserung erzielen können.
Kann mir vielleicht jemand kurz und knapp erläutern wie ich wo ansetzten muss um bessere Werte zu erzielen?Ich habe folgende Traffic Shaper settings aktuell, welche mir im Bufferbloat test beim DOwnload +20 - +25 und beim Upload +30 - +35 einbringenkleider. Idle liegt der Ping bei 10 - 15ms.
Limiters: 00001: 110.000 Mbit/s 0 ms burst 0 q131073 1000 sl. 0 flows (1 buckets) sched 65537 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN sched 65537 type FIFO flags 0x0 0 buckets 0 active 00002: 40.000 Mbit/s 0 ms burst 0 q131074 1000 sl. 0 flows (1 buckets) sched 65538 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN sched 65538 type FIFO flags 0x0 0 buckets 0 active Schedulers: 00001: 110.000 Mbit/s 0 ms burst 0 q65537 50 sl. 0 flows (1 buckets) sched 1 weight 0 lmax 0 pri 0 droptail sched 1 type FQ_CODEL flags 0x0 0 buckets 0 active FQ_CODEL target 5ms interval 25ms quantum 300 limit 10240 flows 1024 ECN Children flowsets: 1 00002: 40.000 Mbit/s 0 ms burst 0 q65538 50 sl. 0 flows (1 buckets) sched 2 weight 0 lmax 0 pri 0 droptail sched 2 type FQ_CODEL flags 0x0 0 buckets 0 active FQ_CODEL target 5ms interval 25ms quantum 300 limit 10240 flows 1024 ECN Children flowsets: 2 Queues: q00001 1000 sl. 0 flows (1 buckets) sched 1 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN q00002 1000 sl. 0 flows (1 buckets) sched 2 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN
Neben dem Traffic Shaper Limiters habe ich auch ein Traffic Shaping per Interface mit PriQ damit der Traffic entsprechend priorisiert raus kann, dafür gibt es viele Floating rules welche den Traffic den entsprechenden Queues hinzufügt.
Soweit ich das verstehe sollte das ineinandergreifen, richtig?
Hier trotzdem mal die regeln:match out on pppoe0 inet all label "USER_RULE" label "id:1679600508" ridentifier 1679600508 dnqueue(2, 1) match out on pppoe0 inet6 all label "USER_RULE" label "id:1679600538" ridentifier 1679600538 dnqueue(2, 1) match inet proto udp all tos 0xb8 label "USER_RULE: DiffServ/Lowdelay/Upload EF" label "id:1657888444" ridentifier 1657888444 queue qVoIP match inet6 proto udp all tos 0xb8 label "USER_RULE: DiffServ/Lowdelay/Upload EF" label "id:1657888444" ridentifier 1657888444 queue qVoIP match inet proto tcp all flags S/SA tos 0xb8 label "USER_RULE: DiffServ/Lowdelay/Upload EF TCP" label "id:1657888498" ridentifier 1657888498 queue(qVoIP, qACK) match inet6 proto tcp all flags S/SA tos 0xb8 label "USER_RULE: DiffServ/Lowdelay/Upload EF TCP" label "id:1657888498" ridentifier 1657888498 queue(qVoIP, qACK) match inet proto udp all tos 0x48 label "USER_RULE: DiffServ/Lowdelay/Upload AF21" label "id:1657888459" ridentifier 1657888459 queue qVoIP match inet6 proto udp all tos 0x48 label "USER_RULE: DiffServ/Lowdelay/Upload AF21" label "id:1657888459" ridentifier 1657888459 queue qVoIP match inet proto tcp all flags S/SA tos 0x48 label "USER_RULE: DiffServ/Lowdelay/Upload AF21 TCP" label "id:1657888512" ridentifier 1657888512 queue(qVoIP, qACK) match inet6 proto tcp all flags S/SA tos 0x48 label "USER_RULE: DiffServ/Lowdelay/Upload AF21 TCP" label "id:1657888512" ridentifier 1657888512 queue(qVoIP, qACK) match inet proto udp all tos 0x88 label "USER_RULE: DiffServ/Lowdelay/Upload AF41" label "id:1657888470" ridentifier 1657888470 queue qVoIP match inet6 proto udp all tos 0x88 label "USER_RULE: DiffServ/Lowdelay/Upload AF41" label "id:1657888470" ridentifier 1657888470 queue qVoIP match inet proto tcp all flags S/SA tos 0x88 label "USER_RULE: DiffServ/Lowdelay/Upload AF41 TCP" label "id:1657888527" ridentifier 1657888527 queue(qVoIP, qACK) match inet6 proto tcp all flags S/SA tos 0x88 label "USER_RULE: DiffServ/Lowdelay/Upload AF41 TCP" label "id:1657888527" ridentifier 1657888527 queue(qVoIP, qACK) match inet proto udp all tos 0xe0 label "USER_RULE: DiffServ/Lowdelay/Upload CS7" label "id:1657888484" ridentifier 1657888484 queue qVoIP match inet6 proto udp all tos 0xe0 label "USER_RULE: DiffServ/Lowdelay/Upload CS7" label "id:1657888484" ridentifier 1657888484 queue qVoIP match inet proto tcp all flags S/SA tos 0xe0 label "USER_RULE: DiffServ/Lowdelay/Upload CS7 TCP" label "id:1657888541" ridentifier 1657888541 queue(qVoIP, qACK) match inet6 proto tcp all flags S/SA tos 0xe0 label "USER_RULE: DiffServ/Lowdelay/Upload CS7 TCP" label "id:1657888541" ridentifier 1657888541 queue(qVoIP, qACK) match inet proto udp from any to any port 50000:50060 label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams UDP" label "id:1657888572" ridentifier 1657888572 queue qVoIP match inet proto udp from any to any port 3478:3481 label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams UDP" label "id:1657888572" ridentifier 1657888572 queue qVoIP match inet6 proto udp from any to any port 50000:50060 label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams UDP" label "id:1657888572" ridentifier 1657888572 queue qVoIP match inet6 proto udp from any to any port 3478:3481 label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams UDP" label "id:1657888572" ridentifier 1657888572 queue qVoIP match inet proto tcp from any to any port 50000:50060 flags S/SA label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams TCP" label "id:1657888598" ridentifier 1657888598 queue(qVoIP, qACK) match inet proto tcp from any to any port 3478:3481 flags S/SA label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams TCP" label "id:1657888598" ridentifier 1657888598 queue(qVoIP, qACK) match inet6 proto tcp from any to any port 50000:50060 flags S/SA label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams TCP" label "id:1657888598" ridentifier 1657888598 queue(qVoIP, qACK) match inet6 proto tcp from any to any port 3478:3481 flags S/SA label "USER_RULE: DiffServ/Lowdelay/Upload MSTeams TCP" label "id:1657888598" ridentifier 1657888598 queue(qVoIP, qACK) match on pppoe0 inet proto tcp from any to any port 6111 >< 6120 flags S/SA label "USER_RULE: m_Game Battle.NET-game1-tcp outbound" label "id:1657888321" ridentifier 1657888321 queue(qGames, qACK) match on pppoe0 inet6 proto tcp from any to any port 6111 >< 6120 flags S/SA label "USER_RULE: m_Game Battle.NET-game1-tcp outbound" label "id:1657888321" ridentifier 1657888321 queue(qGames, qACK) [...]
Ist das vielleicht ein Grundsätzlicher Denkfehler von mir das ich die beiden verknüpfe und die haben eigentlich nichts miteinander zutun und es liegt "nur" am Traffic Shaper Limiters?
ich wäre sehr sehr dankbar wenn mir das jemand unabhängig von der Netgate Doku erklären könnte denn scheinbar verstehe ich diese ncht richtig oder mein Anschluss ist schlecht
-
@sysadminfromhell Was hast du denn überhaupt für Werte, dass man mit dem Shaper da ran muss? Ich muss gestehen, dass ich das immer vor mir her geschoben habe und als ichs mal anschauen wollte konnte ich es auf keiner Leitung nachvollziehen oder nachstellen Daher wundere ich mich über die ganzen Reports dass das so schlimm ist und man unbedingt was shapen muss etc. Mein eigener Anschluß schwankt zwischen A und B in den Tests je nachdem was für einer. Hmm.
-
Der Limiter ist ja erstmal unabhängig vom QoS, was du noch mit eingerichtet hast.
Ich komme mit dem Limitier stabil auf ein A Rating, mit einem Kabel Anschluss, da ist A+ kaum zu schaffen, da musst schon Glas auffahren. Ohne hätte ich hier D.
http://www.dslreports.com/faq/toolquestion/2_Speed_Test#17930
5ms zwischen Idel und Last, das kannst mit DSL kaum schaffen, da brauchst Glas weil jedes Bit was neu übertragen werden muss, weil die Pakete auf der letzten strecke schadhaft waren, kostet dich Zeit du du hier nicht hast.
Zudem muss es auch auf Provider Seite passen was den Downstream angeht.Was bekommst du denn beim Test hier für Werte?
http://www.dslreports.com/speedtest -
@jegr So ich habs jetzt mal mit 2 Tools getestet:
http://www.dslreports.com/speedtest/71779006
https://www.waveform.com/tools/bufferbloat?test-id=b00af6af-8263-44c1-aa29-b2bcdfef5507Beide Sagen B aus aktuell, ich weiß nicht genau woran es hier liegen kann aber nach der Erläuterung von @NOCling sollte ja zumindest mit VDSL A möglich sein, oder nicht?
Wie sehen denn eure Limiters hierzu aus? -
A solltest du schon schaffen können, aber da haut halt auch der Provider mit dem Pairing mit rein.
Ich fahre aktuell mit den Parametern ganz gut, aber das kann sich auch immer wieder mal ändern.
Nutze in der Queue auch CoDel, nicht tail drop, mit aktivem ECN.Am Client (Win 10) habe ich ECN aktiviert.
https://www.waveform.com/tools/bufferbloat?test-id=716b8177-6482-498e-b3d9-5d31fc9efe7a
http://www.dslreports.com/speedtest/71779063
http://www.dslreports.com/speedtest/71779101Getestet mit Edge, den ich so nicht fürs Surfen verwende, aber die Werte Schwanken halt zum Teil recht stark. Hängt halt immer davon ab wie gut es im Cabel Segment gerade den ganzen Verstärker, Abzweigern geht. Ist da einer bei der Witterungsabhängig ist, kannst die Ergebnisse würfeln.
netsh interface tcp show global netsh int tcp set global ecncapability=enabled netsh int tcp set global ecncapability=disabled
Limiters: 00001: 1.000 Gbit/s 0 ms burst 0 q131073 50 sl. 0 flows (1 buckets) sched 65537 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN sched 65537 type FIFO flags 0x0 0 buckets 0 active 00002: 52.480 Mbit/s 0 ms burst 0 q131074 50 sl. 0 flows (1 buckets) sched 65538 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN sched 65538 type FIFO flags 0x0 0 buckets 0 active Schedulers: 00001: 1.000 Gbit/s 0 ms burst 0 q65537 50 sl. 0 flows (1 buckets) sched 1 weight 0 lmax 0 pri 0 droptail sched 1 type FQ_CODEL flags 0x0 0 buckets 1 active FQ_CODEL target 5ms interval 25ms quantum 1514 limit 10240 flows 1024 ECN Children flowsets: 1 BKT Prot ___Source IP/port____ ____Dest. IP/port____ Tot_pkt/bytes Pkt/Byte Drp 0 ip 0.0.0.0/0 0.0.0.0/0 1 1428 0 0 0 00002: 52.480 Mbit/s 0 ms burst 0 q65538 50 sl. 0 flows (1 buckets) sched 2 weight 0 lmax 0 pri 0 droptail sched 2 type FQ_CODEL flags 0x0 0 buckets 1 active FQ_CODEL target 5ms interval 25ms quantum 1514 limit 10240 flows 1024 ECN Children flowsets: 2 0 ip 0.0.0.0/0 0.0.0.0/0 1 1428 0 0 0 Queues: q00001 50 sl. 0 flows (1 buckets) sched 1 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN q00002 50 sl. 0 flows (1 buckets) sched 2 weight 0 lmax 0 pri 0 AQM CoDel target 5ms interval 25ms ECN
-
Habe A bei dslreports.com, die andere Site ist zu schlecht angebunden zu hier meine ich.
Ich habe 1zu1 die Anleitung von Netgate übernommen und sonst nix verstellt.
Hardware ist virtualisiert. -
@nocling warum verwendest du ein quantom von 1514?
Ich hab hier im Forum gelesen, dass gerade Gaming wie auch VoIP Pakete von einem kleineren Quantom profitieren, Viele verwenden da 300, damit hatte ich aber gerade bei "großen" Seiten Probleme mit Medieninhalten wie YouTube oder Twitch.
DAher hatte ich auf 762 bzw 750 gestellt. Damit lief das für mich gut.Ich übernehme aber erstmal testweise deine Limiter (bisauf die Q Länge und die Bandbreite Natürlich) und schaue dann mal ob das bei mir besser wird.
Was für eine Hardware hat deine Box denn?VG
-
Ich verwende hier die 6100 Netgate Appliance.
Queue Länge habe ich nicht eingetragen, das ist der Default Wert.Mit quantum 300 hatte ich auch mal getestet, das lief wie bei dir auch nicht gescheit.
Aber ich setzten den CoDel im Grunde nur ein, weil ich über VPN Backups zum remote NAS weg schreibe und wen das läuft soll hier das Internet normal weiter laufen.
Das ich die Leitung im Download ausgelastet bekomme ist selten und wenn sind das Peaks für Sekunden bis ein paar Minuten. Damit kannst 10GB in 3min runter laden, das reicht für die meisten Games und Updates.
-
@bob-dig aber soweit ich das verstehe hast du die Action "Pass" drin was ja jeglichen Traffic erlaubt und damit ja jede Firewall Regel aus deinen Regeln "übergeht". Das würde also auch hier bei dir bedeuten das du Ports nach draußen erlaubst welche ggf. (je nachdem wie du deine Regeln aufbaust) erlaubst welche Verboten/nicht freigegeben sind oder sehe ich das falsch?
Daher soll man doch "Match" und nicht "Pass" nehmen als Aktion. -
@bob-dig said in Bufferbloat, die Büchse von Pandora:
Habe A bei dslreports.com, die andere Site ist zu schlecht angebunden zu hier meine ich.
Witzig, ich bekomme auf der Seite bei einem Speedtest überall NUR Probleme, keine Gegenstellen verfügbar blafasel. Die ist für mich completely broken.
-
@jegr Komisch, wo wir doch beide beim selben Verein sind?
Edit: Sehe gerade, jetzt geht es auch hier nicht mehr. Speed und Ping waren aber gut gewesen, als es noch ging, deutlich besser als waveform.com.@sysadminfromhell Wie gesagt, genau die Anleitung. Da das ausgehend auf dem WAN ist, muss ich das eh schon erlaubt haben, also deine Sorge ist unbegründet. Andernfalls wäre die Netgate Anleitung auch sehr dürftig.
-
Dann teste mal den http Link:
http://www.dslreports.com/speedtest -
@nocling said in Bufferbloat, die Büchse von Pandora:
Dann teste mal den http Link:
http://www.dslreports.com/speedtestJa von dem rede ich doch, dass da alles offline ist. Jetzt ist wohl gerade Zurich mal wieder online, aber der Rest der Sinn machen würde wie Frankfurt und Co sind tot.
-
Heute sogar A+
-
@bob-dig Hmm würd ich gern messen, bringt mir aber nix wenn das "Beste" gegen das ich messen kann in Zürich steht. Alles andere ist tot...
Klar CH/Z ist cool und von mir aus sogar recht gut angebunden, aber sind halt doch ein paar 100km mehr als Frankfurt oder Darmstadt von hier aus.
-
@jegr Gerade mal mit waveform.com getestet, auch dort ein A bekommen. Damals mit der Telekom war das unmöglich.
-
@nocling Welche Einstellungen hast du denn für die Kabelfritzen wo mit/für FQ_CoDel gemacht? Muss das spaßeshalber hier einfach mal reinwerfen und ggf. auch auf der DSLline mal durchtesten.
-
Das sollte alles aus dem Codeblock hervor gehen, ich habe ja hier die Provider Box die im Modem Mode arbeitet und damit bekommt die pfSense den Dual Stack direkt aufgeschaltet.
-
@nocling Jein, ich hab den Brocken ja noch nicht konfigurieren müssen aber wir können das gern nächste Woche Freitag mal machen
-
Gern, kann das nur empfehlen, wenn man das einmal halbwegs parametriert hat.