Diverses: 6490, 6590, Puma6-Probleme bei anderen Herstellern, Puma7-Design

@error_403:
Mit der Verzögerung meinte ich auch mehr die bisher schon entstandene ... die erste Ankündigung erfolgte ja schon 2015 zur ANGACOM und seither läßt die 6590 auf sich warten. Das ist im Vergleich zu (auch später angekündigten) DSL-Modellen schon recht lange und so kann man eben spekulieren, was die Ursache der Verzögerung am Ende war.

Die anderen Änderungen in der 6590 (MU-MIMO in erster Linie) haben ja bei DSL-Modellen bereits Einzug gehalten - wobei natürlich auch hier mit den Hotspot-Funktionen (sicherlich über WIFI-GW realisiert bei VF und UM?) noch eine Besonderheit bei den DOCSIS-Modellen lauern könnte; aber das ist bei der 6490 auch schon so und das Tunneln spielt sich ja eher auf höheren Layern ab und sollte von den verwendeten WLAN-Chipsets unabhängig sein (mithin auch davon, ob das nun das "alte AC" mit einem Stream ist oder 4x4 mit MU-MIMO). Anders als bei der 7590 (aber das ist ein anderes Thema und ich lasse mich nur zu gerne eines Besseren belehren von AVM) glaube ich bei der 6590 jedoch tatsächlich daran, daß die um die ANGACOM herum in den Einzelhandel kommen könnte.

Die ersten auftauchenden Boxen in der Provisionierung würde ich eher bei AVM selbst bzw. den dortigen Mitarbeitern (auch daheim) "verorten" ... oder meintest Du wirklich, daß bereits KNB die 6590 selbst in ihren eigenen Netzen (in nennenswertem Umfang) durch Kunden oder meinetwegen eigene Mitarbeiter (außerhalb der Labore) testen lassen? An solchen Stellen staune ich immer wieder aufs Neue, wieso sich so etwas dann nicht herumspricht (nicht mal "andeutungsweise") - allen NDA oder ähnlichen Konstruktionen zum Trotz.

Das geht vom Mail-Admin bei einem Provider, wo ein Push-Service so einer Box eine entsprechende E-Mail hinterläßt (die ist m.W. immer noch unverschlüsselt) bis zum SIP-Server bei einem (externen) Anbieter, wo der User-Agent-Header dann in aller Regel nähere Informationen zum Modell enthält - da existieren so viele "Schwachstellen", die auch keinem NDA unterliegen und wo der Datenschutz schon sehr genau genommen werden müßte, wenn das nicht (notfalls anonym) nach außen dringt (logischerweise ohne Details), daß ich wirklich staune. Das heißt nicht, daß ich das schlecht finde ... es ist/wäre nur ungewöhnlich nach meinen eigenen Erfahrungen, auf welchen verschlungenen Wegen die Leute an solche Informationen gelangen. Dagegen sind die bekannten Fotographen für die "Erlkönige" in der Automobil-Industrie ja fast Waisenknaben, wenn es um "Findigkeit" einiger bei der Suche nach solchen Indizien im Netz geht.

@fesc:
Es hat sicherlich auch der Provider seinen Anteil an solchen Ergebnissen, wenn das Segment überlastet ist und es häufiger zu "congestion" am CMTS kommt.

Ich würde hier ohnehin (erneut ohne es zu wissen, nur rein aus "Überlegungen" und auf der Basis von Beobachtungen in den Supportdaten) annehmen, daß da zwei unabhängige QoS-Lösungen (hoffentlich) miteinander arbeiten. Das DOCSIS-QoS (vom Provider konfiguriert) sieht bei mir so aus (VF/KD 100/6):
Code:
DOCSIS QOS
----------
Active Downstream Service Flows: 
-------------------------------- 
* Service Flow -1 (SFID 285dd3) Primary 
    Schedule Type:  Undefined
    MaxTrafficRate  106000000, MaxTrafficBurst  3044, MinReservedRate  0
    MaxConcatBurst  1522, MinReservedPkt  0
* Service Flow -1 (SFID 285dd5) 
    Schedule Type:  Undefined
    MaxTrafficRate  0, MaxTrafficBurst  3044, MinReservedRate  0
    MaxConcatBurst  1522, MinReservedPkt  0
    Priority  4

Active Upstream Service Flows:   
-------------------------------- 
* Service Flow 0 (SFID 285dd2) Primary 
    created 8463 active 50209295
    Schedule Type:  Best Effort
    MaxTrafficRate  6360000, MaxTrafficBurst  28000, MinReservedRate  0
    MaxConcatBurst  28000, MinReservedPkt  0
    TosAndMask  0x0, TosOrMask  0x0
    Pkts 4199763 Bytes 543695200 PolicedDropPkts 0 Delayed 0 UnknownPHS 0
* Service Flow 1 (SFID 285dd4) 
    created 8464 active 50209295
    Schedule Type:  Best Effort
    MaxTrafficRate  0, MaxTrafficBurst  3044, MinReservedRate  0
    MaxConcatBurst  1522, MinReservedPkt  0
    Priority  4
    TosAndMask  0x68, TosOrMask  0x68
    Pkts 466 Bytes 454176 PolicedDropPkts 0 Delayed 0 UnknownPHS 0

Classifiers: 
----------------------- 
Clfy  0: EtherType MAC ==> SF 285dd4
Clfy  1: IPv4 DST 88.134.123.0/255.255.255.0 Proto 17 Ports 0:5060 ==> SF 285dd4
Clfy  2: IPv4 DST 88.134.123.0/255.255.255.0 Proto 17 TosLow 0x50 TosHigh 0x50 Mask 0xff ==> SF 285dd4
Clfy  3: EtherType MAC ==> SF 285dd4
Clfy  4: IPv4 SRC 10.0.0.0/255.0.0.0 Proto 17 Ports 0:67 ==> SF 285dd4
Clfy  5: IPv6 SRC 2a02:8101:1000::/36 DST 2a02:8100::/32 Proto 17 Ports 0:53 ==> SF 285dd4
Clfy  6: IPv6 SRC 2a02:8101:1000::/36 DST 2a02:8100::/32 Proto 17 Ports 0:547 ==> SF 285dd4
Clfy  7: IPv4 DST 10.0.0.0/255.0.0.0 Proto 17 Ports 0:161 ==> SF 285dd5
Clfy  8: IPv4 SRC 88.134.123.0/255.255.255.0 Proto 17 Ports 5060:0 ==> SF 285dd5
Clfy  9: IPv4 DST 10.0.0.0/255.0.0.0 Proto 17 Ports 67:0 ==> SF 285dd5
Clfy 10: IPv6 SRC 2a02:8100::/32 DST 2a02:8101:1000::/36 Proto 17 Ports 53:0 ==> SF 285dd5
Clfy 11: IPv6 SRC 2a02:8100::/32 DST 2a02:8101:1000::/36 Proto 17 Ports 547:0 ==> SF 285dd5
Da sind also nur wenige "classifier" definiert und spaßigerweise auch bei einer Kundenbox, wo die 10.0.0.0/8 gar nicht verwendet wird soweit ich weiß (es gibt jedenfalls kein mta0 und auch kein anderes Interface, was eine solche Adresse hätte), zwei solche für dieses Subnetz (wenn auch nur für DHCP und SNMP in verschiedenen Richtungen). Mit den zwei Queues (oder "service flows") ist dann auch nicht so sehr viel zu priorisieren ... beide "best effort" und halt eine mit "priority 4", die vermutlich vor der anderen bedient werden wird, was sich vielleicht bei SIP (UDP 5060) bemerkbar machen mag, aber schon für RTP sehe ich da nichts mehr.

Das ist dann beim AVM-QoS (NQoS) schon wieder etwas mehr und näher an dem, was man von den DSL-Boxen kennt (nur als Auszug, die Definitionen der Queues stehen entweder an anderer Stelle in den Supportdaten oder im procFS oder in der "ar7.cfg", je nachdem, wo man selbst lieber suchen will):
Code:
##### BEGIN SECTION nqos nqos
appls:
  0: sip (1) => 1
early_recvhook:
   enabled
erouter0 ethervcc_fastrcv(472f725c)
lan:
  0: ip.proto 17 udp.dport 43962,47806 => 2
  0: ip.proto 58 => 2
  0: ip.proto 1 => 2
  0: ip.proto 17 => 2
  1:    udp.dport 53 => 2
  1:    udp.dport 5060 (sip) => 5
  0: ip.proto 6 tcp.dport 5060 (sip) => 5
local:
  0: localmark sip => 1
  0: localmark rtp => 1
  0: localmark sip_internet => 1
  0: localmark rtp_internet => 1
  0: localmark sipdns,ntpdns,tr069dns,tr069 => 2
  0: localmark igmp => 3
  0: localmark webdav => 4
  0: localmark dns => 2
results:
  0: queue 5
  1: queue 2
  2: queue 1
  3: queue 0
  4: queue 6
  5: queue 2 appl sip
##### END SECTION nqos nqos
Ich habe selbst dort nichts weiter eingerichtet, würde aber die Behauptung aufstellen wollen, daß die Einstellungen im GUI genau hier ansetzen und nicht beim DOCSIS-QoS und somit wird hier eigentlich nur geregelt, was zuerst vom eRouter an das eCM übergeben wird, während dieses dann selbst noch einmal klassifiziert und entsprechend priorisiert.

Das ist auch der Grund, warum ich in #13 davon schrieb, daß es ja durchaus auch der PIE-AQM-Algorithmus sein könnte (Proportional Integral Enhanced Active Queue Management), der zumindest für die auftretenden Packet-Drops verantwortlich ist. Wenn das so wäre, müßten m.E. auch die AVM-Boxen davon betroffen sein, weil diese Entscheidungen eben im eCM-Teil getroffen werden (MULPI, Anhang M) und der sollte von Intel stammen.
 
@fesc:
Es hat sicherlich auch der Provider seinen Anteil an solchen Ergebnissen, wenn das Segment überlastet ist und es häufiger zu "congestion" am CMTS kommt.

Das liegt nicht an congestion, datenrate und ping (ohne upstream) ist bei mir rund um die uhr am maximum. Die latenz zum gateway ist normal bei 7ms.
Man sieht beim upstream test gut wie sich der buffer anfangs fuellt. Es geht lost bei 5.5 Mbps und kurz danach runter auf die 4, die ich eigentlich habe. Gleichzeitig geht der ping von 7ms auf 2000-3000ms.

Traffic box intern bzw. von aussen zu den cores bleibt stabil, d.h. es bleibt eigentlich nur noch das eCM als Schuldiger uebrig.
Ich denke dass einfach die upstream queue viel zu gross dimensioniert ist, was, wenn ich die genannten Dokumente richtig verstanden habe, in der Verantwortung des Providers liegt (Cisco CMTS). Andere koennen es laut dslreports auch, insbesondere bei UM (und ich denke das da die eine oder andere 6490 dabei sein sollte).
Kann das evtl mal jemand testen? Wie ist der "bufferbloat" score? Geht die upload rate anfangs auch ueber die line-rate?

Edit: Welche firmware hast du denn? Bei mir sieht das etwas anders aus:
* Service Flow 0 (SFID 79) Primary
created 9004 active 1906057
Schedule Type: Best Effort
MaxTrafficRate 4000000, MaxTrafficBurst 28800, MinReservedRate 0
MaxConcatBurst 1522, MinReservedPkt 0
Priority 3
Pkts 2249968 Bytes 337354081 PolicedDropPkts 0 Delayed 0 UnknownPHS 0
Leider gibt es keine Informationen ueber die buffer size, nur die gebuchte line rate.
 
Zuletzt bearbeitet:
Gibt es vielleicht auch etwas von Arris zu dem Thema? Wenn man da etwas dazu fände, wie deren CMTS "richtig" zu konfigurieren sind, könnte man damit ja mal bei VFKD nachhaken...

Edit: Ufftscha, "DOCSIS 3.0 Bufferbloat" ist wohl eine komplexe Materie. Ich habe diesen Mailinglist-Beitrag mit zwei Links zu einem Vortrag sowie einem Whitepaper von Arris zu dem Thema gefunden:

https://www.ietf.org/mail-archive/web/aqm/current/msg00538.html

Der empfohlene Königsweg war demnach "SFQ [Anm.: Statistical Flow Queueing] with Hashing/Serial Searching coupled with Latency-based RED [Anm.: Random Early Detection]". Mir ist nicht klar, ob das nun im CMTS, Kabelmodem oder beiden implementiert sein muss, und ob das eine Erweiterung von DOCSIS 3.0 erfordert...

Nun ist das schon 3 Jahre her, vielleicht ist man inzwischen weiter?

- - - Aktualisiert - - -

Edit: zu meinem lokalen kabelgateway (ping -i0 -l8 -f -A):
rtt min/avg/max/mdev = 7.874/12.693/19.412/2.573 ms, pipe 8, ipg/ewma 13.025/13.950 ms
Wie lange hast Du das denn laufen lassen? Ich habe es mal bei mir von nachts 3 - 7 Uhr laufen lassen, und das ergab:

$ sudo ping -i0 -l8 -f -A *.*.*.254
PING *.*.*.254 (*.*.*.254) 56(84) bytes of data.
................................................................................................................................................................................^C
--- *.*.*.254 ping statistics ---
1227254 packets transmitted, 1227078 received, 0% packet loss, time 14574700ms
rtt min/avg/max/mdev = 6.898/11.809/144.709/1.925 ms, pipe 11, ipg/ewma 11.875/12.119 ms

Antwortzeiten bis 144ms, 176 Pakete verloren - leider kein Beweis, dass das Puma6-Problem nicht vorhanden ist. Ob es vom Puma6 kommt, kann man so freilich auch nicht sagen, aber zumindest der "Gegenbeweis" ist gescheitert.
 
Zuletzt bearbeitet:
Wie lange hast Du das denn laufen lassen? Ich habe es mal bei mir von nachts 3 - 7 Uhr laufen lassen, und das ergab:

$ sudo ping -i0 -l8 -f -A *.*.*.254
PING *.*.*.254 (*.*.*.254) 56(84) bytes of data.
................................................................................................................................................................................^C
--- *.*.*.254 ping statistics ---
1227254 packets transmitted, 1227078 received, 0% packet loss, time 14574700ms
rtt min/avg/max/mdev = 6.898/11.809/144.709/1.925 ms, pipe 11, ipg/ewma 11.875/12.119 ms

Antwortzeiten bis 144ms, 176 Pakete verloren - leider kein Beweis, dass das Puma6-Problem nicht vorhanden ist. Ob es vom Puma6 kommt, kann man so freilich auch nicht sagen, aber zumindest der "Gegenbeweis" ist gescheitert.

Ich hatte das nur kurz am laufen, bevor mir die Problematik mit dem bufferbloat bekannt war. D.h. es lief auch ohne upload, ich nehme an bei dir auch (vielleicht kommt der ausreiser von 144ms ja dvon dass in der testzeit ein kurzer upload-burst stattfand ..).
Ich bin ja nach wie vor der Meinung dass eine CPU last auf dem Atom, so wie bei der Problembeschreibung vermutet, kein Problem darstellen darf, ausser es handelt sich um WLAN traffic. Und soclhe "lastspitzen" passieren auf der 6490 definitiv (?) nicht.

Bzgl. bufferbloat habe ich mal recherchiert, es gibt in der SNMP MIB "DOCS-QOS3-MIB-2016-08-18.txt" (erhältlich bei cablelabs) die Parameter docsQosParamSetMinimumBuffer/docsQosParamSetTargetBuffer/docsQosParamSetMaximumBuffer.

Diese werden wohl ueber den snmp_agent_cm prozess bedient, zumindest linkt dieser gegen liball_docsis.so, welche das symbol qos_mainDb_GetParamSetBufferControlTargetBytes() enthält. Die API dieser Funktion konnte ich nicht herausfinden, also wollte ich versuchen den SNMP agent so umzukonfigurieren dass er auch auf einem lan interface hoert (per default nur auf 192.168.100.1), um mit einem SNMP browser und den MIBS an die Werte heranzukommen.

"Leider" ist mir jetzt mein Urlaub dazwischengekommen, aber vielleicht weiss ja jemand ob das schon mal anderweitig gemacht wurde. Ich denke ueber /usr/sbin/snmpcmd, wie im skript usr/sbin/productionmode.
 
Danke Euch beiden und Asche über mein Haupt. Das habe ich glatt überlesen/falsch in Erinnerung. Ist die noch auf dem Server? Fündig geworden :doof:
LG
 
Zuletzt bearbeitet:
Bzgl. bufferbloat habe ich mal recherchiert, es gibt in der SNMP MIB "DOCS-QOS3-MIB-2016-08-18.txt" (erhältlich bei cablelabs) die Parameter docsQosParamSetMinimumBuffer/docsQosParamSetTargetBuffer/docsQosParamSetMaximumBuffer.

Diese werden wohl ueber den snmp_agent_cm prozess bedient, zumindest linkt dieser gegen liball_docsis.so, welche das symbol qos_mainDb_GetParamSetBufferControlTargetBytes() enthält. Die API dieser Funktion konnte ich nicht herausfinden, also wollte ich versuchen den SNMP agent so umzukonfigurieren dass er auch auf einem lan interface hoert (per default nur auf 192.168.100.1), um mit einem SNMP browser und den MIBS an die Werte heranzukommen.
Die Arris (C4?) von VFKD scheinen AQM-mässig überhaupt nichts anzufassen. Weder in der config noch in REG-RSP sind TLV 24.35 oder das SNMP QoS-Objekt zu finden...
 
Die Arris (C4?) von VFKD scheinen AQM-mässig überhaupt nichts anzufassen. Weder in der config noch in REG-RSP sind TLV 24.35 oder das SNMP QoS-Objekt zu finden...

Bei der 6490 sieht es aehnlich aus. Man kann den snmp agent auf ein lokales interface binden, dann kommt man mit einem MIB browser ran. Die entsprechenden OIDs sind aber nicht implementiert.

Auch das "showdqos" Kommando scheint das zu bestaeigen. Schaut man sich das binary mit "strings" an, dann bekommt man:
Code:
* Service Flow %d (SFID %x) %s%s
    created %u active %u
    Schedule Type:  %s
    MaxTrafficRate  %u, MaxTrafficBurst  %u, MinReservedRate  %u
[B]    MinBufferBytes  %u, TargetBufferBytes  %u, MaxBufferBytes  %u[/B]
    MaxConcatBurst  %u, MinReservedPkt  %u
    PeakTrafficRate  %u
    MaxLatancy  %u
    Priority  %u
    Downstream Resequencing  %u
    Layer2 VPN related  %u
    NomGrantInterval  %u, TolGrantJitter  %u
    NomPollInterval  %u, TolPollJitter  %u
    UnsolicitGrantSize  %u, GrantsPerInterval  %u
    TosAndMask  0x%x, TosOrMask  0x%x
    Pkts %u Bytes %u PolicedDropPkts %u Delayed %u UnknownPHS %u
Im eigentlichen output sind diese Informationen aber nicht zu finden, scheint also vorgesehen aber nicht implementiert ..

Was mich interresieren wuerde ist wie das arris beim "bufferbloat test" abschneidet (auch im Vergleich zur 6490).
 
Was mich interresieren wuerde ist wie das arris beim "bufferbloat test" abschneidet (auch im Vergleich zur 6490).
Mit "Die Arris (C4?)" meinte ich die Arris CMTS, die Vodafone einsetzt, kein Kundenmodem. Sorry, das habe ich wohl nicht klar genug ausgedrückt. Als Kundenmodem habe ich auch "nur" die Fritz!Box 6490.

Vielleicht gibt "showdqos" diese Zeile nicht aus, weil das CMTS da nichts gesetzt hat?

Man müsste mehr über das Arris CMTS wissen, ob das überhaupt so konfigurierbar ist, dass es AQM macht und/oder den Kabelmodems entsprechende Konfigurationen schickt. Leider finde ich die Handbücher dazu nicht im Netz... Sonst könnte man ja mal gezielt an VFKD herantreten, ob die das nicht mal "richtig" konfigurieren mögen...
 
Mit "Die Arris (C4?)" meinte ich die Arris CMTS, di
Oh, da stand ich ziemlich auf dem Schlauch, sorry.

Mein Provider hat ein Cisco CMTS, ich hatte da mal gefragt ob/was die da was machen, aber nie eine Antwort erhalten. Das gleiche bei AVM ..

Wenn ich richtig rechne muesste der egress buffer im eCM bei 4Mbps upload und bis zu 3000ms RTT ca. 12Mbit gross sein. Wenn ich mal eine "Ziel-RTT" von 100ms zugrunde lege sollte er aber nicht groesser als 400Kbit sein (Formel Bandbreite x RTT).


Nachtrag:

Ich habe noch einen kleinen OpenWRT router hier (VoCore2). Den habe ich jetzt mal zwischen einen Testrechner und die 6490 gehaengt ("WAN" interface ist die Lan verbindung zur 6490). Auf diesem WAN interface habe ich eine QOS rule (mittels sqm-scripts) definiert und den upload auf 4Mbps limitiert, was meiner Kabelbandbreite entspricht.

Wenn ich jetzt einen test starte bekomme ich die gleiche Bandbreite, aber eine note A beim bufferbloat (max. ca 100ms)!
Die OpenWRT implementierung addressiert explizit auch bufferbloat (https://wiki.openwrt.org/doc/uci/qos), was beweist dass es mit einer entsprechenden implementierung auch auf der 6490 funktionieren wuerde.
 
Zuletzt bearbeitet:
Ich habe noch einen kleinen OpenWRT router hier (VoCore2). Den habe ich jetzt mal zwischen einen Testrechner und die 6490 gehaengt ("WAN" interface ist die Lan verbindung zur 6490). Auf diesem WAN interface habe ich eine QOS rule (mittels sqm-scripts) definiert und den upload auf 4Mbps limitiert, was meiner Kabelbandbreite entspricht.

Wenn ich jetzt einen test starte bekomme ich die gleiche Bandbreite, aber eine note A beim bufferbloat (max. ca 100ms)!
Die OpenWRT implementierung addressiert explizit auch bufferbloat (https://wiki.openwrt.org/doc/uci/qos), was beweist dass es mit einer entsprechenden implementierung auch auf der 6490 funktionieren wuerde.
Ach soo, ich dachte bufferbloat wäre etwas Kabelmodem-spezifisches, was man nur auf dieser Ebene lösen könnte.

Wenn ein "vorgeschaltetes" QoS das auch leisten kann, ist das für mich ein Zeichen, dass die "Priorisierung" von AVM nicht richtig funktioniert.

Hast Du einen Shell-Zugang zu Deiner 6490? Dann schau doch mal (auf beiden Prozessoren) mit "tc -s qdisc" nach, ob und wie da ein Traffic Shaping eingerichtet ist. Bei den DSL-Routern findet man da eine Regel, die auf knapp unter die synchronisierte Upstream-Geschwindigkeit begrenzt - also im Prinzip das leisten sollte, was Dein VoCore2 gemacht hat. Ist die Regel nicht da, oder nicht wirksam, oder nicht richtig eingestellt? Da könnte man ja mit experimentieren, und ggf. eine "wirksame" Kombination ermitteln.

Edit: Die tc Konfiguration wird auch in der Support-Datei gespeichert:

qdisc pfifo_fast 0: dev l2sd0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 3085695 bytes 17689 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev adsl root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev cni0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 325680 bytes 1411 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev lbr0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev lan0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev wan0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 1917 bytes 14 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev dsl root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 301867 bytes 1373 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc tbf 2: dev erouter0 root refcnt 2 rate 12573Kbit burst 40637b lat 646us
Sent 322583 bytes 1395 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc llq 10: dev erouter0 parent 2: minq 1 maxq 255 default 6
Sent 322583 bytes 1395 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc sfq 104: dev erouter0 parent 10:4 limit 32p quantum 100b perturb 10sec
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc sfq 105: dev erouter0 parent 10:5 limit 32p quantum 100b perturb 10sec
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc sfq 106: dev erouter0 parent 10:6 limit 32p quantum 100b perturb 10sec
Sent 310732 bytes 1307 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc sfq 107: dev erouter0 parent 10:7 limit 32p quantum 100b perturb 10sec
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev esafe0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
backlog 0b 0p requeues 0

Der fett markierte Eintrag enthält das Upstream-Limit - bei mir "synchronisiert" der Kabelanschluss auf 12700 kbps. Ist da vielleicht nicht genug abgezogen?
 
Zuletzt bearbeitet:
Siehe unten.
Mit tc kenne ich mich nicht aus, d.h. ich kann das nicht interpretieren, aber ich mir nicht vorstellen kann dass man damit den eCM teil beeinflussen kann (reiner Netzwerk Traffic geht ja gar nicht durch irgend einen core).


Code:
qdisc pfifo_fast 0: dev l2sd0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 207242216 bytes 634707 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev adsl root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev cni0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 121251679 bytes 357461 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev lbr0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev lan0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev wan0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 2124 bytes 11 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev dsl root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 116692473 bytes 355281 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc tbf 2: dev erouter0 root refcnt 2 rate 3960Kbit burst 12799b lat 646us
 Sent 121249469 bytes 357449 pkt (dropped 63, overlimits 11743 requeues 0)
 backlog 0b 1p requeues 0
qdisc llq 10: dev erouter0 parent 2: minq 1 maxq 255 default 6
 Sent 121250947 bytes 357450 pkt (dropped 0, overlimits 63 requeues 0)
 backlog 0b 1p requeues 0
qdisc sfq 104: dev erouter0 parent 10:4 limit 32p quantum 100b perturb 10sec
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc sfq 105: dev erouter0 parent 10:5 limit 32p quantum 100b perturb 10sec
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc sfq 106: dev erouter0 parent 10:6 limit 32p quantum 100b perturb 10sec
 Sent 117002932 bytes 319678 pkt (dropped 64, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc sfq 107: dev erouter0 parent 10:7 limit 32p quantum 100b perturb 10sec
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev esafe0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0

Edit:

WLAN traffic geht natuerlich durch den Atom core. Dort gibt es aber gar keine tc rule, und die daten gehen von dort mehr oder weniger direkt an das eCM (via SW bride->interner L2 switch->PP->eCM).

Code:
# /sbin/tc -s qdisc
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 331169976 bytes 1859534 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev wifi0 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev wifi1 root refcnt 2 bands 3 priomap  1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
 Sent 0 bytes 0 pkt (dropped 0, overlimits 0 requeues 0)
 backlog 0b 0p requeues 0

Interessant ist allerdings dass bei langsamer WLAN verbindung ein buffer-bloat in die andere Richtung entsteht (download BW > WLAN BW). Hier wurde eine entsprechende rule im Atom dann durchaus SInn machen.
 
Zuletzt bearbeitet:
Siehe unten.
Mit tc kenne ich mich nicht aus, d.h. ich kann das nicht interpretieren, aber ich mir nicht vorstellen kann dass man damit den eCM teil beeinflussen kann (reiner Netzwerk Traffic geht ja gar nicht durch irgend einen core).
Dann könnte man ja gar keine Firewall implementieren... Schau mal hier:

http://www.embedded.com/design/oper...celerating-network-packet-processing-in-Linux

ASF--application-specific fastpath
The purpose of this application-specific fastpath (ASF) is not to replace the complete Linux networking stack but to accelerate the packet processing of most commonly used functionalities, such as IPv4 forwarding, NAT, firewall, IPSEC, and QoS. The stateful intelligent network processing still continue to happen in Linux networking stack, while the stateless fast packet processing will be done in ASF. But this does not stop one from using a stateful ASF.
[...]
The existing Linux user space tools, such as Iproute2, ipsec-tools, iptables, tc, and vconfig, can be used seamlessly to configure the Linux networking stack. The ASF control plane will either receive the required information from the above-mentioned function points in Linux kernel or it will tap the user-space configurations at Netlink interface.
Also demnach sollte tc durchaus in Verbindung mit hardwarebeschleunigter Paketverarbeitung funktionieren können.
 
Dann könnte man ja gar keine Firewall implementieren... Schau mal hier:

Soweit mich mein "re-engineertes" Wissen nicht taeuscht wird das alles im einem Packet Processor (nenne ich mal so) des puma6 gemacht. Man sieht das auch, packet counter im erouter zeigen nicht den IP traffic an der durch die box geht.

Kann natuerlich trotzdem sein dass tc das eCM konfiguriert, aber dann funktioniert das nicht.

- - - Aktualisiert - - -

Kann natuerlich trotzdem sein dass tc das eCM konfiguriert, aber dann funktioniert das nicht.

Befor ich mich da einlesen muss, hast du auf die schnelle die syntax um hier z.B. einen ganz kleinen wert (statt 3960) einzustellen?
Code:
qdisc tbf 2: dev erouter0 root refcnt 2 rate 3960Kbit burst 12799b lat 646us
 Sent 121249469 bytes 357449 pkt (dropped 63, overlimits 11743 requeues 0)
 backlog 0b 1p requeues 0
 
Befor ich mich da einlesen muss, hast du auf die schnelle die syntax um hier z.B. einen ganz kleinen wert (statt 3960) einzustellen?
Müsste ich auch herumprobieren. Wie wäre es mit:

Code:
tc qdisc change dev erouter0 root qdisc rate xxx

...? Mal auf die schnelle nach "man tc"...
 
@fesc:
Siehe /var/wan-erouter0.tc ... kann man m.E. dem "tc"-Kommando als Batch-Eingabe vor die Füße werfen - ggf. vorher vorhandene Einstellungen mit "tc remove" entfernen (gibt sonst sicherlich "file exists" vom Netlink-Interface), wobei das die Version von AVM, die bei der 6490 dabei ist, m.W. nicht kann; zumindest nicht von der Kommandozeile aus, wie das bei einer Batch-Datei aussehen mag, habe ich nie getestet. Es wäre auch denkbar, daß ein "change" vom vorhandenen "tc"-Kommando gar nicht unterstützt wird.

- - - Aktualisiert - - -

Ok, "change" kennt die AVM-Variante doch, auch auf der Kommandozeile:
Code:
tc qdisc change dev erouter0 root tbf rate 1024kbit burst 12799b lat 646us
für das Verringern der "Upstream"-Queue auf 1 MBit/s ... wobei dann wirklich nicht mehr vom Router zum CM gehen dürfte; das ist die Basis (in der Summe), auf der alle anderen SFQ-Sachen (wie schreibt man das jetzt? SF-Queues oder SFQ-Queues? ;-)) aufbauen, in die dann wieder die Daten nach der Klassifizierung im FRITZ!OS gekippt werden.

Spaßig ... bei der 6490 geht auch ein "tc qdisc del dev erouter0 root", womit dann natürlich auch alle darauf aufbauenden Definitionen (bei mir eine LLQ-"discipline" mit sieben Klassen und auf dieser wieder vier SFQs) mit abgeräumt werden. Da habe ich mich mal wieder von der man-Page (Abschnitt "Tc Commands") verwirren lassen (braucht man halt nicht jeden Tag), die Operation heißt (zumindest bei der von AVM beigelegten Variante) eben "del" und nicht "remove".
 
Zuletzt bearbeitet:
OK, so aehnlich hatte ich es auch hinbekommen, aber danach ging gar kein WAN traffic mehr.
Was zwar ein Hinweis ist dass tc tatsaechlich was bewirkt, aber mich erstmal an weiteren Versuchen hindert da meine Tochter Netflix schaut ..
 
Was man auch nicht aus den Augen verlieren darf (wenn man das auf andere Plattformen übertragen will): Den LLQ-Scheduler hat AVM selbst gebaut (siehe "net/sched/sch_llq.c" in den Quellen), daher findet man dafür auch keine man-Pages o.ä. und muß sich die Parameter und die Arbeitsweise (in llq_dequeue(), llq_enqueue() und llq_classify()) aus dem Quelltext selbst zusammensuchen.

Aber auch die (nicht sehr ausführliche) Beschreibung des "LLQ algorithm" irgendwo im Kopf ist immer noch besser als keine ... letztlich werden damit oberhalb des TBF (der ja den Durchsatz dann absolut begrenzt, daher meine "Warnung" oben) mehrere Queues (classes) erstellt, die unterschiedliche Prioritäten haben und wo eine Queue mit höherer Priorität (kleinerer Wert) dann erst komplett ausgeräumt sein muß (gilt natürlich alles für den Upstream), damit ein Paket aus einer niedriger priorisierten Queue überhaupt in Erwägung gezogen wird. Bei Queues mit identischen Prioritäten (10:5 und 10:6 sollten bei der 6490 beide "prio 100" haben) wird dann anhand von "weight" zwischen diesen Queues geteilt und zwar nicht mit WFQ, sondern mit DWRR.

Auf diesen Queues des LLQ-Schedulers (prios 0, 10, 20, 30, 2x 100 und 200) setzt dann noch einmal (ab Priorität 30 nach unten, also bis zur 200) jeweils ein SFQ-Scheduler auf, der dafür sorgt, daß nicht nur ein einzelner "flow" (von einer Adresse+Port zu einer anderen Adresse+Port) zum Zuge kommt, sondern die verfügbare Kapazität in der Queue gleichmäßig zwischen allen diesen Verbindungen aufgeteilt wird.
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
244,868
Beiträge
2,219,770
Mitglieder
371,584
Neuestes Mitglied
porcupine
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.