Datenrate über FTP schwankt unheimlich

to stream or not to stream
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Datenrate über FTP schwankt unheimlich

Beitrag von Tommy »

Beim kopieren eines Films per Total Commander ist mir mal aufgefallen, das die Datenrate unheimlich schwankt 350kbytes/Sek bis runter auf 100kbytes/Sek. Top sagt CPU idle zw. 60% und 80% :o

folgendes habe ich ohne verbesserung step by step abgeschossen:

start_neutrino
neutrino
timerd
controld
zapit
nhttpd

Top sah dann noch so aus und die Rate schwankt und schwankt.

Code: Alles auswählen

  5:33pm  up  2:00,  0 users,  load average: 0.30, 0.21, 0.26
27 processes: 26 sleeping, 1 running, 0 zombie, 0 stopped
CPU states:   2.6% user,  19.3% system,   0.0% nice,  78.0% idle
Mem:     30840K total,    30132K used,      708K free,      528K buffers
Swap:        0K total,        0K used,        0K free,    23048K cached

  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME COMMAND
  215 root      12   0   904  904   816 S     5.6  2.9   1:59 in.ftpd
  292 root      15   0   832  832   684 R     5.0  2.6   0:04 top
    4 root      10   0     0    0     0 SW    0.9  0.0   0:15 kswapd
  285 root       9   0   464  464   376 S     0.5  1.5   0:01 telnetd
    1 root       8   0   484  480   448 S     0.0  1.5   0:04 init
    2 root       9   0     0    0     0 SW    0.0  0.0   0:00 keventd
    3 root      19  19     0    0     0 SWN   0.0  0.0   0:02 ksoftirqd_CPU0
    5 root       9   0     0    0     0 SW    0.0  0.0   0:00 bdflush
    6 root       9   0     0    0     0 SW    0.0  0.0   0:00 kupdated
    7 root       9   0     0    0     0 SW    0.0  0.0   0:01 mtdblockd
   13 root      15  10     0    0     0 SWN   0.0  0.0   0:00 jffs2_gcd_mtd3
   34 root       9   0     0    0     0 SW    0.0  0.0   0:00 cifsoplockd
   38 root      10   0   708  708   592 S     0.0  2.2   0:00 automount
   49 root       9   0   628  628   532 S     0.0  2.0   0:00 inetd
   82 root       9   0     0    0     0 SW    0.0  0.0   0:00 xfsbufd
   83 root       9   0     0    0     0 SW    0.0  0.0   0:00 xfslogd/0
   84 root       9   0     0    0     0 SW    0.0  0.0   0:00 xfsdatad/0
   94 root       9   0     0    0     0 SW    0.0  0.0   0:00 xfssyncd
  178 root       9   0     0    0     0 SW    0.0  0.0   0:00 rpciod
  213 nobody     9   0   816  816   772 S     0.0  2.6   0:00 in.ftpd
  271 root       9   0   484  480   448 S     0.0  1.5   0:00 init
  272 root       9   0   484  480   448 S     0.0  1.5   0:00 init
  273 root       9   0   484  480   448 S     0.0  1.5   0:00 init
  274 root       9   0   484  480   448 S     0.0  1.5   0:00 init
  275 root       9   0   484  480   448 S     0.0  1.5   0:00 init
  276 root       9   0   484  480   448 S     0.0  1.5   0:00 init
  286 root       9   0   696  696   584 S     0.0  2.2   0:00 sh
@DBoxBaer:
Irgendwas muß doch da am IF (Firmware oder dem Treiber faul sein?) Auf der Box läuft eigentlich nichts mehr. Ich hätte ja keine Sorge, wenn die Datenrate konstant niedrig oder mittelmäßig wäre aber hier schwanken wir immerhin um 30%. Die CPU hat außerdem noch immens Luft.
Protokoll ist FS ist XFS (sieht man ja) und image der gestrige JTG Schuß
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Re: Datenrate über FTP schwankt unheimlich

Beitrag von DBoxBaer »

Code: Alles auswählen

19.3% system
23048K cached
Die beiden Werte sind Dir aber schon aufgefallen?!

Ich habe keine Ahnung welche Optionen "total commander" zum Kopieren von Dateien verwendet, aber auch hier fange ich nicht an zu raten, was im System genau passiert: Solange ich dies nicht messen kann, kann ich keine Aussage machen, was "richtig" oder "falsch" läuft.
Mein Treiber bekommt vom Linux Kernel nur gesagt, kopier diese 512 Bytes in das Datenregister der Platte. Dafür braucht er ein wenig Zeit, aber auch nicht unendlich viel.
Warum, wieso, woher und sonstwie weiss er nicht und da hat weder das Interface noch eben der Treiber irgendeinen Einfluss drauf.

Wenn mir jemand nachweist, das mein Treiber der Grund für die Delays ist, arbeite ich gerne an der Optimierung der Routinen. Nur ist Deine Messung ja eher der Beweis des Gegenteils: Der Kernel scheint das nicht für wirklich wichtig zu halten die Daten zu kopieren und "idled" lieber.

Ciao,

DboxBaer
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Dann müßte es ja also am ftpd liegen?! ich wüßte nicht was der total commander für FTP spezialoptionen verwendet. Ein renice des ftpd hat auch nichts geändert.

@DBoxBaer:
Ich wollte nicht, das Du dich persönlich angegriffen fühlst :(

edit:
ich denke mal wenn wir einen maximale konstante ftp geschwindigkeit haben haben wir auch eine konstant plattenzugriffsgeschwindigkeit. Vllt räumt der Kernel dem Treiber einfach nicht genug zeit zum Daten schaufeln ein?
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
just_me
Einsteiger
Einsteiger
Beiträge: 123
Registriert: Montag 28. November 2005, 11:31

Beitrag von just_me »

Tommy hat geschrieben:Dann müßte es ja also am ftpd liegen?!
ich würde das Problem eher noch darunter vermuten: könntest Du checken, dass keine Probleme durch 100 MBit vollduplex vom PC auf 10 MBit halbduplex auf der DBOX und ggfs. ein Switch/Hub dazwischen vorliegen?
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

ich hatte für diesen Kopiervorgang ein crossover am Notebook. 10half - logischerweise
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
just_me
Einsteiger
Einsteiger
Beiträge: 123
Registriert: Montag 28. November 2005, 11:31

Beitrag von just_me »

Tommy hat geschrieben:ich hatte für diesen Kopiervorgang ein crossover am Notebook. 10half - logischerweise
Jo. Welche Datenraten erreichst Du denn, wenn Du von /dev/zero statt einer Datei liest?
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Beitrag von DBoxBaer »

Tommy hat geschrieben: @DBoxBaer:
Ich wollte nicht, das Du dich persönlich angegriffen fühlst :(

edit:
ich denke mal wenn wir einen maximale konstante ftp geschwindigkeit haben haben wir auch eine konstant plattenzugriffsgeschwindigkeit. Vllt räumt der Kernel dem Treiber einfach nicht genug zeit zum Daten schaufeln ein?
Habe ich mich auch nicht (nicht direkt davon wenigstens)

Leider wird aber nur (auch nicht persönlich nehmen bitte) rumprobiert mit Einstellungen und sonstwas.
Jede Vermutung, warum irgendwas irgendwie was ändert muss aber technisch erklärbar sein.
Daran arbeitet aber wohl niemand? (Oder, wenn doch, dann nicht öffentlich).

Ansonsten habe ich versucht zu erklären, wo mein Treiber in der Kette drinsteckt, und das dort nichts magisches geniales passiert sondern dieser nur ein ganz dummes Rädchen im IDE-System ist:
Es ist schon wahrscheinlich, das es dieses Rädchen ist, das klemmt, das will ich ja gar nicht abstreiten, aber genauso wahrscheinlich kann es auch ganz woanders sein.

Nur mal so als Vorschlag:
Man könnte auch mal probieren, was passiert eigentlich wenn ein PC mit der gleichen Kernel Version läuft und dann per PIO auf die Platte (am besten die gleiche wie in der Box) zugreift: Wie sind da eigentlich die Geschwindigkeiten?

Ciao,

DboxBaer
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

Nur mal so als Vorschlag:
Man könnte auch mal probieren, was passiert eigentlich wenn ein PC mit der gleichen Kernel Version läuft und dann per PIO auf die Platte (am besten die gleiche wie in der Box) zugreift: Wie sind da eigentlich die Geschwindigkeiten?
is eher unwahrscheinlich das das jemand nachstellt. Das langsamste was ich hier habe ist ein pIII500 und auf dem Board stecken schonmal 256 MB als ein Riegel. Die NIC und IDE ist onboard. PIO4 im BIOS einstellen ginge. Selbst wenn man den Kernel draufschickt die CPU underclockt und die NIC einbremst wäre es ein Vergleich Äpfel mit Birnen. Die Komponennten sind einfach aufeinander besser abgestimmt.

Ich will hier auch nicht meckern. Meine Sagem-sorgenfrei streamt wie ein Bienchen und zickt nicht ein bischen in Verbindung mit dem IF. Das einzige was mir aufgefallen ist, das es beim kopieren über FTP (für mich mit Bordmitteln nicht nachvollziehbaren) Geschwindigkeitsschwankungen von 30!%. Ich versuchte alles was auf der Box so läuft zu killen und berichtete das Ergebnis. OK - ich stellte noch eine Vermutung in den Raum.

Also meinetwegen kann jetzt hier jeder wieder die Tür hinter sich zuziehen. Ich wird in diesem Thread nix mehr posten. Ich überlaß das testen einfach denen die davon Ahnung haben.
:evil:
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
Charles Darwin jun.
Erleuchteter
Erleuchteter
Beiträge: 664
Registriert: Donnerstag 24. August 2006, 11:19

Beitrag von Charles Darwin jun. »

Wenn hier nur die posten, die Ahnung haben...

...herrscht hier bald wieder Grabesstille :) :D :lol:

...also mir ist es lieber, wenn auch die posten...die nur von dem IF begeistert sind, aber mich fragt ja keiner :wink:

Nachtrag: Übrigens bei meiner Nokia avia600 hab ich diese Schwankungen über ftp noch nicht gesehen. Die Datenrate geht bei mir während des Kopierens so auf ~800kbyte/s rauf und bleibt dann so...
Ciao

CDj
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Beitrag von DBoxBaer »

Tommy hat geschrieben: is eher unwahrscheinlich das das jemand nachstellt. Das langsamste was ich hier habe ist ein pIII500 und auf dem Board stecken schonmal 256 MB als ein Riegel. Die NIC und IDE ist onboard. PIO4 im BIOS einstellen ginge. Selbst wenn man den Kernel draufschickt die CPU underclockt und die NIC einbremst wäre es ein Vergleich Äpfel mit Birnen. Die Komponennten sind einfach aufeinander besser abgestimmt.
Aber sowas von gar nicht...

Auf PIO umschalten kann man mit hdparm. Sogar zur Laufzeit.
Und nun nenne mir mal jemand Zahlen auf einem 9GHZ Pentium7.

Das letzte Mal, als ich so einen Test gemacht habe waren die Zahlen nämlich erschreckend.

Allerdings sollte man schon ein Linux 2.4 System verwenden, denn 2.6 macht einiges anders: Wer weiss ob sich das auswirkt.

Warum ist der Prozessor dabei egal? Weil der IDE-Bus der gleiche ist. Und da bleibt von den ganzen MHzen nix mehr übrig. Mehr als 16MB/s geht nicht, aber 8MB/s wäre schon eine gute Leistung glaube ich.

Ciao,

DboxBaer
... und der Rest ist dann Software (TM)
amigaherbie
Einsteiger
Einsteiger
Beiträge: 180
Registriert: Dienstag 13. Januar 2004, 14:53

Beitrag von amigaherbie »

Ich kann diese Schwankungen nachvollziehen. In Zifferndarstellung bricht bei mir auch immer die Rate von bis zu 1 MByte/s auf unter 300 kByte/s, in Extremfällen auch unter 100 kByte/s ein. Nun folgendes Bild erklärt das Verhalten:
Bild
Die erste Hälfte ist der Upload zur Box, der hintere Teil der Download aus der Box der gleichen Datei. Ich benutze ein 100 MBit Netzwerk, Anlaufstelle für alle ist ein Router mit Switch. Ich denke die Spitzen folgen aus vollem Puffer (auch im Switch). Beim Download ist dagegen die Box vollgefordert und alles andere wartet nach den Daten. Egal, in beiden Fällen ergibt sich eine mittlere Datengeschwindigkeit von 700 - 750 kByte/s.
DBoxBaer
Senior Member
Beiträge: 255
Registriert: Donnerstag 25. August 2005, 11:34

Beitrag von DBoxBaer »

amigaherbie hat geschrieben:Egal, in beiden Fällen ergibt sich eine mittlere Datengeschwindigkeit von 700 - 750 kByte/s.
Interessante Erköärung. Klingt für mich gut:
Ich denke 800kByte/s ist in etwa die Rate, die man mit FTP und 10MBit/s half duplex unter günstigen Bedingungen hinbekommt.

Und das die CPU da dann nicht voll ausgelastet ist, ist dann auch irgendwie ein gutes Zeichen :-)
... und der Rest ist dann Software (TM)
Tommy
Tuxboxer
Tuxboxer
Beiträge: 4332
Registriert: Dienstag 7. Mai 2002, 17:04

Beitrag von Tommy »

ich werd morgen mal ein anderes crosskabel testen - das von heute ist selbstgecrimpt. Eure Datenraten sehen doch etwas anders aus als meine :oops:
---------------------------
Alle weiteren Infos findest Du im WIKI
Bitte vor dem posten Boardregeln lesen und verstehen!
Wie erstelle ich ein Bootlog? Wo finde ich die FAQ?
Günther
Developer
Beiträge: 587
Registriert: Freitag 9. September 2005, 21:48

Beitrag von Günther »

Ja, überprüfe das mal, bei meiner Sagem klappt das ftp (mit totalcommander von windows aus) nämlich zuverläßig mit 900-1000 kB ;)