Auslastung des eigenen Segments ansehen

Für alle Technik-Themen bezogen auf Internet und Telefonie, die weder AVM- noch Arris-/Technicolor-/Compal-/Sagemcom-/Hitron-Produkte betreffen. Speedprobleme werden hier lediglich thematisiert, wenn sie auf die verwendeten Geräte zurückzuführen sind (die nicht zu den o.g. Produkten zählen).
Forumsregeln
Forenregeln


Bitte gib bei der Erstellung eines Threads im Feld „Präfix“ an, ob du Kunde von Vodafone Kabel Deutschland („[VFKD]“), von Vodafone West („[VF West]“), von eazy („[eazy]“) oder von O2 über Kabel („[O2]“) bist.
Benutzeravatar
koaschten
Insider
Beiträge: 3982
Registriert: 04.06.2010, 14:21
Wohnort: Itzehoe

Re: Auslastung des eigenen Segments ansehen

Beitrag von koaschten »

Sparkie, du snoopst die Daten direkt von deinem Cisco Modem oder?
Benutzeravatar
rumble_ef
Kabelexperte
Beiträge: 634
Registriert: 26.12.2010, 21:24

Re: Auslastung des eigenen Segments ansehen

Beitrag von rumble_ef »

Interessant finde ich hier vor allem, dass man die Auslastung so bei sich vor Ort schon sehen kann, BEVOR man den Internet-Vertrag beim KNB abschließt.

Wenn du willst, dass dein Modem mehrere Frequenzen gleichzeitig "beobachtet", brauchst du einen Tarif mit DOCSIS3-Modem ;) Da auch die langsameren Geschwindigkeiten von besserer Verteilung auf die Kanäle und besserer Modulation profitieren, wäre eigentlich zu wünschen, dass KD bald für alle nur noch DOCSIS3-Modems verteilt...
sparkie
Kabelexperte
Beiträge: 721
Registriert: 04.09.2010, 12:35

Re: Auslastung des eigenen Segments ansehen

Beitrag von sparkie »

koaschten hat geschrieben:Sparkie, du snoopst die Daten direkt von deinem Cisco Modem oder?
ja - aber zuviele Modemzugriffe in zu kurzer Zeit haben bei mir reproduzierbar komische Seiteneffekte. Wie ich an anderer Stelle schon erwaehnt habe.

Ich lese deswegen die Daten normalerweise nur jede Stunde aus dem Cisco und setze entsprechend die Parameter fuer den mediaclient und dvbtraffic. Es sei denn es wird bemerkt dass das Interface zum Cisco down war. Das ist meist ein Indiz dafuer, dass sich was geaendert hat (z.B. die Modemfrequenzen). Dann stuerzt sich mein Script sofort auf die neuen Modem-Daten und arbeitet mit denen weiter...

- sparkie
Benutzeravatar
koaschten
Insider
Beiträge: 3982
Registriert: 04.06.2010, 14:21
Wohnort: Itzehoe

Re: Auslastung des eigenen Segments ansehen

Beitrag von koaschten »

Das ist echt traurig was hier mit der Leitung abgeht. Ich hätte mir den Stick ned kaufen sollen. Das ist echt deprimierend das zu sehen.

Code: Alles auswählen

koaschten@ubuntu:~$ ./knidel_snoop.sh 
tuning DVB-C to 546000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7069 (= 0.0%)   Avrg: 37835.502 kbit/s
tuning DVB-C to 554000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7341 (= 0.0%)   Avrg: 44340.819 kbit/s
tuning DVB-C to 562000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7071 (= 0.0%)   Avrg:  5004.604 kbit/s
tuning DVB-C to 570000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7424 (= 0.0%)   Avrg: 42134.702 kbit/s
tuning DVB-C to 578000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7156 (= 0.0%)   Avrg: 45994.120 kbit/s
tuning DVB-C to 586000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7304 (= 0.0%)   Avrg: 32026.869 kbit/s
tuning DVB-C to 594000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7001 (= 0.0%)   Avrg: 19144.553 kbit/s
tuning DVB-C to 602000000, srate=6952000
## PID: 8190 (0x1ffe)   bad/total packets: 0/7434 (= 0.0%)   Avrg: 37772.757 kbit/s
Um es mal mit den Worten der Ärzte zu sagen: "Das sind Dinge von denen ich gar nichts wissen will..."
Benutzeravatar
RcRaCk2k
Ehrenmitglied
Beiträge: 2399
Registriert: 20.09.2007, 10:23
Wohnort: Freilassing

Re: Auslastung des eigenen Segments ansehen

Beitrag von RcRaCk2k »

Viel Potenzial gibt deine Auswertung ja nicht mehr her :)
Wenn man bedenkt, dass 51000.000 kbit/s das Maximum ist und nur die Brutto-Datenrate darstellt.
Super ist ja auch noch, dass eventuell Pakete mehrere Male gesendet werden müssen. Was bedeutet, dass du zwar die Auslastung siehst, die Auslastung jedoch nicht den wirklichen Transfer (Netto) der Gegenseite darstellt. Gut - uns interessiert sowieso nur der Brutto (zu wieviel Prozent die Leitung ausgelastet ist), daher ist das Manko verschmerzbar :)
koaschten hat geschrieben:Das ist echt deprimierend das zu sehen.
Das ist richtig :) Die Frage ist, wie lange dauerte die Messung. Normalerweise Accountet man auf 5 Minuten den AVG, welcher dann einen repräsentativen Wert für das NOC darstellt. Sprich wenn die Leitung 1 Minute zu 100% ausgelastet ist, und dann nicht mehr, dann ist der 5-Min-AVG gerade mal bei 20%, was total unbedenklich ist, jedoch die Minute für Kunden eine richtige Qual ist.

Seid Ihr an einer gemeinsamen Auswertung interessiert?
Dann stelle ich einen Data-Collector zur Verfügung, an dem ihr die Daten übermitteln könnt.
Ich mache daraus dann schöne Grafiken und eine PLZ Liste.

Komplett unverbindlich für beide Partien. Den Source-Code stelle ich offen zur Verfügung, damit, falls ich den Dienst einstellen sollte, der Dienst weitergeführt werden kann. Weiteres stelle ich auch die RRD-Histroy-Files zum Download zur Verfügung. Die Daten sollten alle 60 Sekunden übertragen werden. In der Grafik mache ich einen 5-Minute-AVG.

Programmiersprache: PHP
Anschlüsse: 3x Internet&Phone 100 MBits, 2x Internet&Phone 26MBit, 1x Internet&Phone 32 MBits Telefon-Anschluss: sipgate.de, dus.net, easybell.de, personal-voip.de
Router: Linux x64 Router, Interne Verkablung: Patchpannel, CAT 7, Netzwerkdosen, CAT 5e, wirelessLAN

Links:
- Kabel-Deutschland und die Geschwindigkeit des Internet-Zugangs
Benutzeravatar
koaschten
Insider
Beiträge: 3982
Registriert: 04.06.2010, 14:21
Wohnort: Itzehoe

Re: Auslastung des eigenen Segments ansehen

Beitrag von koaschten »

RcRaCk2k hat geschrieben:Viel Potenzial gibt deine Auswertung ja nicht mehr her :)
Wenn man bedenkt, dass 51000.000 kbit/s das Maximum ist und nur die Brutto-Datenrate darstellt.
Naja, ich hab das nun schon sehr oft angeschmissen aber noch nie nen average über 46.000 gesehen.

Ich wäre definitiv dabei, dann kann ich mir das Gebastel mit meinem begrenzten bash und zu erarbeitenden rrdtool skills sparen *hust*

bisher hab ich mich durchgearbeitet zu dem hier, quasi eine Variation von Knidel's snoop script.

Code: Alles auswählen

date --rfc-3339="seconds"
#!/bin/sh

freqs="546000000 554000000 562000000 570000000 578000000 586000000 594000000 602000000"

for freq in $freqs
  do
    frequency=`dvbtune -f $freq -s 6952 -qam 256 2>&1 | grep 'tuning DVB-C' | cut -d "," -f1 | cut -d " " -f4`
    bandwidth=`dvbsnoop -s bandwidth 8190 -n 7000 | grep 'bad/total packets:' | cut -d":" -f4 | sed 's/kbit\/s//g' | sed 's/ //g'`
    echo Frequency: $frequency Bandwidth: $bandwidth
    sleep 1
  done
Was mir dann das hier auspuckt

Code: Alles auswählen

koaschten@ubuntu:~$ ./koaschten_snoop.sh 
2011-06-15 18:51:01+02:00
Frequency: 546000000 Bandwidth: 7512.517
Frequency: 554000000 Bandwidth: 46191.519
Frequency: 562000000 Bandwidth: 20263.663
Frequency: 570000000 Bandwidth: 24259.587
Frequency: 578000000 Bandwidth: 32835.034
Frequency: 586000000 Bandwidth: 21661.906
Frequency: 594000000 Bandwidth: 45082.084
Frequency: 602000000 Bandwidth: 45227.429
Sprich ich hab einfachen Zugriff auf die getunte Frequenz und die Bandbreite. Mein nächster Schritt wäre nun das Erstellen der rrd DB für jede Frequenz und zu lernen wie ich sie fütter und dann Grafiken baue :)
sparkie
Kabelexperte
Beiträge: 721
Registriert: 04.09.2010, 12:35

Re: Auslastung des eigenen Segments ansehen

Beitrag von sparkie »

RcRaCk2k hat geschrieben: Dann stelle ich einen Data-Collector zur Verfügung, an dem ihr die Daten übermitteln könnt.
Ich mache daraus dann schöne Grafiken und eine PLZ Liste.
das waere natuerlich ein Super-Service von dir! Da waere ich grundsaetzlich schon dabei. Am liebsten waere mir dann, wenn ich die blanken Messwerte in simplem CSV Format oder so aehnlich irgendwohin hochladen koennte z.B. per wput

alternativ koennte ich die Daten auch per http anbieten (ueber eine nicht-oeffentliche URL - weil man darf ja bei KDG keinen Server betreiben :brüll: ).

- sparkie
Benutzeravatar
Paco
Kabelexperte
Beiträge: 571
Registriert: 03.06.2010, 03:06
Wohnort: Berlin

Re: Auslastung des eigenen Segments ansehen

Beitrag von Paco »

@ RcRaCk2k
kennst du den namen deines cmts ?
wär ja mal interesannt die daten die dein modem da aufzeichnet gegen die daten die das cmts ausspuckt gegenüber zu stellen
Benutzeravatar
koaschten
Insider
Beiträge: 3982
Registriert: 04.06.2010, 14:21
Wohnort: Itzehoe

Re: Auslastung des eigenen Segments ansehen

Beitrag von koaschten »

Ich kann dir meine Segment Nummer hier in Flensburg sagen, das müsste die 601 sein.

Und da mich die RRD Geschichte nun doch interessiert, werd ich das zumindest zu Lernzwecken doch mal versuchen zumindest temporär zu implementieren, da ich derzeit nur auf dem Laptop Linux habe. Falls ich es dann später auf dem DD-WRT zum Laufen bekomme, umso besser.

Was sind sinnvolle Intervalle? Tag in 5min, Woche in 30min, Monat in 2h und Jahr in 24h Intervallen?

edit:
Habe mich entschieden für jede Frequenz eine eigene RRD anzulegen. Dann kann man flexibel Frequenzen hinzufügen oder entfernen.
Der rrdtool create command sieht dann so aus:

Code: Alles auswählen

rrdtool create 546000000.rrd -s 300 DS:bandwidth:ABSOLUTE:600:U:U RRA:AVERAGE:0.5:1:288 RRA:AVERAGE:0.5:6:336 RRA:AVERAGE:0.5:24:360 RRA:AVERAGE:0.5:288:365
edit2:
Muss mir grad mal selbst auf die Schulter klopfen :wink2:

Habe nachdem nun das dvbsnoop -> rrd script funktioniert...

Code: Alles auswählen

#!/bin/sh

freqs="546000000 554000000 562000000 570000000 578000000 586000000 594000000 602000000"

for freq in $freqs
  do
    frequency=`dvbtune -f $freq -s 6952 -qam 256 2>&1 | grep 'tuning DVB-C' | cut -d "," -f1 | cut -d " " -f4`
    bandwidth=`dvbsnoop -s bandwidth 8190 -n 7000 | grep 'bad/total packets:' | cut -d":" -f4 | cut -d "." -f1 | sed 's/kbit\/s//g' | sed 's/ //g'`
    rrdtool update ~/rrdtest/$frequency.rrd N:$bandwidth
    sleep 1
  done
...und ein cronjob das ganze alle 5 Minuten ausführt...

... habe ich ein Script zum generieren der Grafiken geschrieben ...

Code: Alles auswählen

#!/bin/sh

freqs="546000000 554000000 562000000 570000000 578000000 586000000 594000000 602000000"
intervals="day week month year"
path="/home/koaschten/rrdtest/"


for interval in $intervals
  do
  
  for freq in $freqs
    do
      rrdtool graph "$path$freq-$interval.png" DEF:importBandwidth=$path$freq.rrd:bandwidth:AVERAGE CDEF:Bandwidth=importBandwidth,100,\* LINE1:Bandwidth#32CD32 --start -1$interval -t "24937 Flensburg | Segment 601 | $freq QAM256 6952kHz" -h 300 -w 800 AREA:Bandwidth#32CD32:Bandwidth "GPRINT:Bandwidth:MAX:  Max\\: %5.1lf %S" "GPRINT:Bandwidth:AVERAGE:  Avg\\: %5.1lf %S" "GPRINT:Bandwidth:MIN:  Min\\: %5.1lf %S" "GPRINT:Bandwidth:LAST:  Last\\: %5.1lf %S" -l 0 -u 46000
    done
  done
... und das Resultat ist das hier:
5min avg für 1 Tag
[ externes Bild ]


30min avg für 1 Woche
[ externes Bild ]


2h avg für 1 Monat
[ externes Bild ]


24h avg für 1 Jahr
[ externes Bild ]



(bisher zu wenig Daten für Monats und Jahres Avg, morgen nochmal gucken :) )

edit3: VERDAMMT
irgendwie läuft da was falsch :( wieso sind die werte selbst wenn ich hier grade Volllast schieb immer nur um und bei 15mbit avg ?
Benutzeravatar
RcRaCk2k
Ehrenmitglied
Beiträge: 2399
Registriert: 20.09.2007, 10:23
Wohnort: Freilassing

Re: Auslastung des eigenen Segments ansehen

Beitrag von RcRaCk2k »

Du hast ein logisches Problem, wenn du mehrere Frequenzen mit einem Stick auswertest.
Und in deinem rrdtool create, denke ich, dass sich dort auch ein Fehler eingeschlichen hat.

Du wertest nur 7000 Pakete pro Frequenz aus - wie lange dauert denn eigentlich eine Frequenz / bzw. alle Frequenzen zu scannen? - du solltest bei allen Frequenzen, die du durchgehst > 4 Minuten brauchen und < 5 Minuten. Sonst bildest du ja nur einen AVG über eine gewisse - vielleicht zu kleine Zeit.

Die beste Lösung wäre aber, alle Frequenzen in ca. 60 Sekunden durch zu bekommen und die RRD auf STEP 60 Seconds zu stellen (rrdtool create --step 60) anstatt 300.

Der Crontab müsste dann jede Minute einmal laufen.

Wenn du also 8 Frequenzen prüfst, dann muss eine Auswertung einer einzelnen Frequenz in 7 Sekunden durch sein, damit du in einer Minute die Daten hast. Du machst dann also 7 Sekunden AVGs pro Frequenz. Das Problem ist halt, dass dir für einen 1 Minuten-AVG ganze 53 Sekunden fehlen, die fürs Measuring der anderen Freqenzen drauf gehen. Also bekommst du keine repräsentative Aussage über den AVG in einer Minute, sondern nur für den von dir gemessenen Zeitbereich.

PS: Du darfst kein ABSOLUTE verwenden, sondern musst GAUGE nehmen.

rrdtool create frequency.rrd --step 60 DS:bandwidth:GAUGE:60:0:51000000 RRA:MAX:0:5:288 RRA:AVERAGE:0:5:288 RRA:MIN:0:5:288
  • DS:bandwidth:GAUGE:60:0:51000000 = Wir speichern die Werte zwischen 0 und 51.000.000 Bytes (Sollten wir für 60 Sekunden keine Daten haben, werden diese ungültig)
  • RRA:MAX:0:5:288 = Größter Wert über 5 Minuten (24 Stunden Backlog)
  • RRA:AVERAGE:0:5:288 = Durchschnittlicher Wert über 5 Minuten (24 Stunden Backlog)
  • RRA:MIN:0:5:288 = Kleinster Wert über 5 Minuten (24 Stunden Backlog)
5 Bedeutet, dass wir 5 Werte (5 Werte * 60 Sekunden = 300 Sekunden) in die Berechnung einfließen lassen.
288 Bedeutet, dass wir 288 Berechnungen (300 Sekunden * 288 Berechnungen = 24h) abspeichern.

Du kannst die Liste ja dann noch vervollständigen, wenn du Woche / Monat / Vierteljahr / Halbjahr / Jahr auswerten willst.
Anschlüsse: 3x Internet&Phone 100 MBits, 2x Internet&Phone 26MBit, 1x Internet&Phone 32 MBits Telefon-Anschluss: sipgate.de, dus.net, easybell.de, personal-voip.de
Router: Linux x64 Router, Interne Verkablung: Patchpannel, CAT 7, Netzwerkdosen, CAT 5e, wirelessLAN

Links:
- Kabel-Deutschland und die Geschwindigkeit des Internet-Zugangs