[Frage] FB 7270v2 Netzwerkinterface für Internettraffic-Monitoring (insb. Downstream)?

jgehrcke

Neuer User
Mitglied seit
23 Nov 2010
Beiträge
6
Punkte für Reaktionen
0
Punkte
0
Hallo!

Ich habe eine FB 7270v2, wobei das Kabelmodem an LAN1 angeschlossen ist. Ich habe eine Freetz Firmware auf Basis von FritzOS 6. Ich möchte den Internettraffic per iftop überwachen. Welches Netzwerkinterface muss ich dafür auslesen? Insbesondere: welches Interface muss ich anschauen, um den Downstream zu sehen? Bisher bin ich relativ sicher, dass das Interface wan in TX-Richtung jede Upload-Verbindung korrekt erfasst, also iftop -B -i wan zeigt die erwarteten Zahlenwerte in Kilobyte pro Sekunde an. In Download-Richtung jedoch habe ich noch nicht die richtige Methode finden können. wan ist nicht das korrekte Interface dafür: was hier in RX-Richtung gemessen wird ist viel zu wenig (gegen 0). Das verdeutlicht die entsprechende Ausgabe von ifconfig wan | grep RX | grep TX:

Code:
RX bytes:4992598 (4.7 MiB)  TX bytes:228481228 (217.8 MiB)

Bei einem breitbandingen Download aus dem Internet steigt der RX Counter hier fast nicht an. Die entsprechende Ausgabe für cpmac0 ist:

Code:
RX bytes:11051838 (10.5 MiB)  TX bytes:1825118852 (1.6 GiB)

Der TX-Counter hier zeigt einen Wert, der dem Download aus dem Internet entsprechen könnte (Der Zahlenwert kommt hin). Entspricht also die TX-Richtung auf cpmac0 dem Internet-Download? Nein, zumindest nicht direkt: wenn ich dieses Interface mittels iftop -B -i cpmac0 während eines breitbandigen Downloads überwache, bleiben sowohl RX- als auch TX-Datenraten bei etwa 0. Das ändert sich auch in iftop's promiscuous mode nicht (-p, "show traffic between other hosts on the same network segment).

Das sind die Interfaces die ifconfig in meinem Fall ausgibt:

  • adsl
  • ath0
  • cpmac0
  • dsl
  • eth0
  • guest
  • hotspot
  • lan
  • lan:0
  • lo
  • wan
  • wifi0

Ich habe alle (auch die, die wenig sinnvoll klingen) Schnittstellen mit iftop ausprobiert. Alle Datenraten, die ich beobachte, sind extrem klein (im 100 Bytes/s Bereich), außer der genannten TX-Richtung von wan.

Wie kann ich die Internet-Downstream-Rate überwachen? Wie macht die Fritzbox das selbst (im oritinalen AVM-Webinterface kann man die Downstream-Rate ja hübsch anschauen)?
 
Da iftop meines Wissens auf libpcap zurückgreift und die nur das sieht, was wirklich am Interface ankommt, fehlen Dir offenbar die Pakete, die vom "packet accelerator" auf direktem Weg zwischen den Interfaces bzw. "unterhalb" der Interfaces hin- und hergereicht werden.

Dabei werden die dann auch gezählt, wo genau diese Zähler dann abgefragt werden können (/proc/net/avm_pa wäre ein Kandidat, wenn ich es aus dem Kopf richtig weiß), ist wieder vom "Ausbaustand" des PA abhängig. Bei der 7270v2 mit 06.05 wird da sicherlich weniger zu sehen sein ... der ctlmgr kommuniziert für die Werte im AVM-GUI meines Wissens direkt mit dem (k)dsld. Wenn Du die Werte wissen willst, könntest Du sie dort (also im ctlmgr, per ctlmgr_ctl oder query.lua) auslesen oder aus "showdsldstat".
 
Ehe das mit dem bwm zu einem Mißverständnis führt ... der sammelt zwar die Daten auf einem anderen Weg ein (über /proc/net/dev), steht aber ebenso vor dem Problem, daß die dort verfügbaren Zähler schlicht nicht stimmen.

Code:
root@FB7490:~ $ cat /proc/net/dev | head -n 2
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
Die "Kopfzeilen", damit die Werte sich zuordnen lassen ...
Code:
root@FB7490:~ $ cat /proc/net/dev | grep "^ *dsl:"
   dsl: 5081501   50824    0    0    0     0          0         0 43077046  187166    0    0    0     0       0          0
Währenddessen läuft ein Download eines 4.4 GB großen ISO-Images ... nachdem dort angezeigt wird, daß bereits 250 MB eingetroffen wären, steht in /proc/net/dev immer noch:
Code:
root@FB7490:~ $ cat /proc/net/dev | grep "^ *dsl:"
   dsl: 5134162   51286    0    0    0     0          0         0 43151216  187720    0    0    0     0       0          0
Es ist selbstverständlich eine DSL-Box (also auch das korrekte Interface) und die Differenz aus 5134162 und 5081501 (= 52661) kann als "bytes" in der Kategorie "Receive" offensichtlich nicht stimmen.

Das ändert sich auch nicht, wenn der gesamte Traffic nicht für Clients im LAN gedacht ist, sondern auf der FRITZ!Box selbst terminiert.
Code:
root@FB7490:~ $ cat /proc/net/dev | grep "^ *dsl:";wget -O /dev/null ftp://ftp.avm.de/fritz.box/fritzbox.7490/firmware/deutsch/FRITZ.Box_7490.113.06.24.image;cat /proc/net/dev | grep "^ *dsl:"
   dsl: 5277706   52056    0    0    0     0          0         0 43290983  188721    0    0    0     0       0          0
Connecting to ftp.avm.de (212.42.244.98:21)
null                 100% |******************************************************************************************************************************************************************| 23940k  0:00:00 ETA
   dsl: 5282432   52075    0    0    0     0          0         0 43832151  198806    0    0    0     0       0          0
Es könnte tatsächlich sein, daß der PA bei der 7270v2 noch etwas anders arbeitet ... das wäre allerdings wirklich überraschend (bei AVM ist vieles "one size fits all") und mich würde das Ergebnis eines der o.a. Kommandos auch auf einer 7270v2 mal interessieren.
 
Auch auf einer 7270v3 werden die Zähler in /proc/net/dev nicht richtig geführt:
Code:
~ # cat /proc/net/dev | grep adsl;wget -O - ftp://ftp.avm.de/fritz.box/fritzbox.7490/firmware/deutsch/FRITZ.Box_7490.113.06.24.image >/dev/null;cat /proc/net/dev | grep adsl
  adsl:68474463  296786    0    0    0     0          0         0 84508261  493192    0    0    0     0       0          0
Connecting to ftp.avm.de (212.42.244.98:21)
-                    100% |********************************************************************| 23940k  0:00:00 ETA
  adsl:68489591  296874    0    0    0     0          0         0 84970238  501754    0    0    0     0       0          0
~ #

Bei einer 7490 (da steht man bei aktiviertem PA ja vor einem ähnlichen Problem) kann man aber offenbar das "externe Interface" - wenn die Box nicht im ATA-Mode ist - auch per Skript beobachten, ohne erst irgendwelche riesigen Ausgaben im proc-Interface (wo sich die richtige Zähler zwischen vielen unnötigen Angaben verbergen) zu parsen.

Bei mir (FW-Stand 06.23) funktioniert jedenfalls das folgende ziemlich gut:

Code:
root@FB7490:~ $ cat /proc/eth/dsl_[rt]x_bytes;wget -O - ftp://ftp.avm.de/fritz.box/fritzbox.7490/firmware/deutsch/FRITZ.Box_7490.113.06.24.image >/dev/null;cat /proc/eth/dsl_[rt]x_bytes
28339037
1395607
Connecting to ftp.avm.de (212.42.244.9:21)
-                    100% |*************************************************| 23940k  0:00:00 ETA
54322382
2331164
root@FB7490:~ $

Das wären also 54.322.382 - 28.339.037 = 25.983.345 Byte im Downstream (RX) und 2.331.164 - 1.395.607 = 935.557 Byte im Upstream (TX). Das dürfte ziemlich gut stimmen, im Gegensatz zum oben gezeigten Zählerstand in /proc/net/dev.

Allerdings ist das Verzeichnis /proc/eth im proc-FS der 7270v3 nicht vorhanden, damit sicherlich auch in der 7270v2 nicht.
 
Danke für euer Input! Nach Peters weiterer Analyse stimmt wohl weiterhin seine Aussage "Wenn Du die Werte wissen willst, könntest Du sie dort (also im ctlmgr, per ctlmgr_ctl oder query.lua) auslesen oder aus "showdsldstat".". Dafür muss man sich natürlich erstmal in deren Funktionsweise einarbeiten und der Einsatz von bwm-ng oder iftop ist nicht möglich oder nicht straight-forward.
 
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.