• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] unerklärliche Leistungseinbrüche bei NW-übertragung

Hallo Forum,

bin neu hier und habe gleich mal eine komplizierte Frage:

Sowohl unter Samba als auch über NFS habe ich beim Übertragen (großer) Dateien immer wieder Aussetzer, sodass ich z.B. beim Anschauen von Filmen über das Netzwerk ständige Ruckler habe. :???:

- meine Server Infrastruktur:
FSC Scenic xS (Pentium 3-733 mit 196 MB RAM und 2GB CompactFlash+IDE-Adapter als HD1 und 500GB WD Caviar IDE(!) als HD2) mit OpenSuse 11 (incl. Online-Updates) als Minimalsystem ohne grafische Oberfläche und lediglich Samba + NFS-Server und wenige kleine Tools (MidnightCommander) usw. installiert

- mein Client:
FSC P4 3,2GHz mit 1GB RAM und Windows XP

Die Server-Hardware sollte für das Bereitstellen der Daten völlig ausreichen, vor diesem Server hatte ich einen alten P-100 mit 128 MB und Suse 9.0, der alle diese Aufgaben problemlos bewerkstelligte.

Folgendes habe ich unternommen:
Opensuse 11 via DVD installiert, alle Online-Updates geladen. Erste Merkwürdigkeit: meine beiden IDE-Festplatten werden als /dev/sda und nicht wie früher als /dev/hda angezeigt. Folglich kann ich auch nicht mehr alle Funktionen von hdparm benutzen. Leider kann das Pondon sdparm keine Platten timergesteuert in den Standby schicken, also macht das jetzt ein crojob abends. Eine Suche hier im Forum hat ergeben, dass die Ursache die Verwendung der libata-Bibliothek ist, die man ja auch anscheinend mit dem Boot-Parameter hwprobe=-modules.pata ausschalten kann, das kann ich heute Abend evtl. ja noch mal testen. Das Netzwerk an sich ist einfach aufgebaut, die 100MBit NIC auf dem Board hat eine feste IP und läuft soweit.
Der Rechner hat beim Zugriff über Samba bzw. über NFS auch keine hohe CPU-Last, daher kann es da schon mal nicht dran liegen. Auch die Festplatte schafft laut hdparm -t /dev/sdb (der Befehl klappt anscheinend auch bei sdx-Platten) so knappe 50 MB/s, das ist weit mehr als bei meinem alten Pentium 100, weswegen ich eigentlich auch die Festplatte weiter als "/dev/sda" laufen lassen kann, sofern hier keiner sagt dass genau hier der Fehler liegt.

Langsam weiss ich nicht mehr weiter wo ich gucken soll, bei Netzwerküberwachung kenne ich mich nicht so aus, gibt es eine Möglichkeit, herauszufinden, wieso die Daten nur schleppend / mit Hängern übertragen werden? Da ich keine grafische Oberfläche habe, kann ich natürlich nur bash-fähige Analyseprogramme ausführen.

Kann man irgendworan festmachen, dass das Problem im Netzwerk oder bei der Festplatte liegt?

Vielen Dank im Voraus!

Kai

PS. falls das Thema hier am falschen Platz ist, bitte verschieben.
 

stka

Guru
Da es sich nicht um ein reines Samba Problem handelt, verschiebe ich das mal in das Server forum.
Was verstehst du unter großen Dateien?
 
OP
C

CrazyWilly

Newbie
Nun ich würde sagen so ab 100 MB bis hin zu ca. 4-5GB. Ein aufgenommener Transport-Stream der DBox2 kann schnell mehrere GB groß werden. Diese ruckeln am meisten, wahrscheinlich weil sie die höchste Bitrate haben.
 

pft

Advanced Hacker
konkrete Tipps habe ich leider nicht für Dich. Selbst fahre ich noch die 10.2
Das kann an vielem liegen. Ausgehend von den Infos die Du uns gibst fällt auf, dass 196 MB schon recht knapp sind. Auch wenn Du keinen graf. Desktop installiert hast. Aber auch Linux ist nicht mehr so ressourcensparend wie es mal war. Zumindest nicht die Suse Distri, wenn man nicht explizit auf ein paar Dinge achtet.

Was läuft denn da sonst noch so (Prozesse, Services) und wie sieht es mit der Speicherauslastung aus?


BTW, alle HDs als sda anzusprechen ist kein Bug sondern ein feature :) und sollte nicht die Ursache sein.
 
OP
C

CrazyWilly

Newbie
@pft danke für die Infos, v.a. im Bezug auf sda, ich dachte es ist ein bug :eek:ps:

nun das System ist ein "minimales System ohne grafische Oberfläche", als Dienste habe ich lediglich NFS und SAMBA aktiviert, neben den standardmäßig aktiven Diensten die mir größtenteils nichts sagen (bin kein Linux-Experte)

"top" sagt fast nur idle beim Abspielen von Filmen
"free" sagt nach einem frischen Boot: 70 MB benutzt, nach ein paar Stunden nutzt Linux dann irgendwann die vollen 196 MB, aber die SWAP-Partition bleibt bis auf wenige KB leer, weswegen ich nicht davon ausgehe, dass der Speicher bereits voll ist oder ist die Annahme falsch??

Ich würde auch gerne mehr RAM reinstecken aber das Board ist echt wählerisch, beidseitige Module habe ich noch aber die laufen leider nicht.

Gibt es die Möglichkeit, dass es Netzwerk-Einstellungen sind, die das System ausbremsen? IPv6 habe ich bereits ausgeschaltet, weil ich irgendwo gelesen habe, dass das IPv4 verlangsamen soll. Bin immer noch ziemlich ratlos, aber wenn die Erkennung meiner IDE-Platte als sda kein Fehler, sondern ein Feature ist, sollte mein Problem wohl wirklich eher am Netzwerk liegen :???:
 

pft

Advanced Hacker
Bin leider auch nicht DER Experte vor allem nicht was die Detaildiagnose angeht.

Ich habe eine ähnliche Konfig und glücklicherweise weniger Probleme.
Ich habe sogar mehr Zeugs laufen (z.B. Mail server mit Spamfilter, Printserver etc.) allerdings doppelt soviel RAM. System und CPU sind ähnlich.

Netzwerk ist eine mögliche Ursache, aber wenn DU da nichts verändert hast warum sollte das jetzt klemmen.

Bei den Diensten gibt es i.d.R. schon das eine oder andere was man abschalten kann.
Kannst Du mal die Liste der aktiven Dienste posten?
 
OP
C

CrazyWilly

Newbie
hey das nenne ich eine schnelle Antwort!

Nun ja die übrige Netzwerkstruktur (Router/Switch + Clients) habe ich nicht verändert aber der Server mit der onboard-Netzwerkkarte ist neu. Mein alter Server läuft noch mit einer anderen IP parallel nebenher. Leider habe ich von der Arbeit hier keinen Zugriff auf meinen Server, aber sobald ich zu hause bin werde ich mal ein "ps" abschicken und die Liste online stellen!

Ich hatte mir auch schon überlegt, ob ich nicht einfach freenas oder so was in der Art installiere, weil der Server eigentlich "nur" ein Fileserver sein soll, aber mit so einem Minimalserver kann man dann natürlich keine weiteren Spielereien (irgendwann mal LAMP einrichten / Truecrypt-Laufwerke mounten usw.) machen, daher sollte es falls möglich schon OpenSuSE sein.

EDIT:
hier meine Systemlast beim Abspielen von Videos
top - 19:33:17 up 59 min, 1 user, load average: 0.01, 0.01, 0.00
Tasks: 73 total, 1 running, 72 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3%us, 0.3%sy, 0.0%ni, 98.7%id, 0.3%wa, 0.3%hi, 0.0%si, 0.0%st
Mem: 189068k total, 144452k used, 44616k free, 11592k buffers
Swap: 248968k total, 0k used, 248968k free, 103864k cached


und weiter:

linux:~ # ps ax
PID TTY STAT TIME COMMAND
1 ? Ss 0:01 init [3]
2 ? S< 0:00 [kthreadd]
3 ? S< 0:00 [migration/0]
4 ? S< 0:00 [ksoftirqd/0]
5 ? S< 0:00 [events/0]
6 ? S< 0:00 [khelper]
7 ? S< 0:00 [kblockd/0]
8 ? S< 0:00 [kacpid]
9 ? S< 0:00 [kacpi_notify]
10 ? S< 0:00 [cqueue]
11 ? S< 0:00 [kseriod]
12 ? S< 0:00 [kondemand/0]
13 ? S 0:00 [pdflush]
14 ? S 0:00 [pdflush]
15 ? S< 0:00 [kswapd0]
16 ? S< 0:00 [aio/0]
17 ? S< 0:00 [kpsmoused]
55 ? S< 0:00 [ata/0]
56 ? S< 0:00 [ata_aux]
62 ? S< 0:00 [scsi_eh_0]
63 ? S< 0:00 [scsi_eh_1]
193 ? S< 0:00 [ksuspend_usbd]
200 ? S< 0:00 [khubd]
434 ? S< 0:00 [kjournald]
492 ? S<s 0:00 /sbin/udevd --daemon
904 ? S< 0:00 [kauditd]
916 ? S< 0:00 [kstriped]
947 ? S< 0:00 [kjournald]
1234 ? Ss 0:00 /sbin/resmgrd
1237 ? Ss 0:00 /sbin/acpid
1242 ? Ss 0:00 /bin/dbus-daemon --system
1275 ? Ssl 0:00 /usr/sbin/console-kit-daemon
1390 ? Ss 0:00 /usr/sbin/hald --daemon=yes
1391 ? S 0:00 hald-runner
1400 ? S 0:00 hald-addon-input: Listening on /dev/input/event3 /dev
1404 ? S 0:00 hald-addon-acpi: listening on acpid socket /var/run/a
1776 ? Ss 0:00 /sbin/syslog-ng
1779 ? Ss 0:00 /sbin/klogd -c 1 -x
1788 ? S<sl 0:00 /sbin/auditd -s disable
1790 ? S<sl 0:00 /sbin/audispd
1814 ? Ss 0:00 /sbin/portmap
1823 ? Ss 0:00 /usr/sbin/nmbd -D -s /etc/samba/smb.conf
1826 ? S< 0:00 [rpciod/0]
1847 ? Ss 0:00 /usr/sbin/rpc.idmapd
1852 ? Ss 0:00 /usr/sbin/rpc.statd --no-notify
1853 ? Ss 0:00 /usr/sbin/rpc.mountd
1855 ? S 0:00 [lockd]
1858 ? S< 0:00 [nfsd4]
1859 ? S 0:00 [nfsd]
1860 ? S 0:00 [nfsd]
1861 ? S 0:00 [nfsd]
1862 ? S 0:00 [nfsd]
1933 ? Ss 0:00 /usr/lib/postfix/master
1953 ? S 0:00 pickup -l -t fifo -u
1957 ? S 0:00 qmgr -l -t fifo -u
1995 ? Ss 0:00 /usr/sbin/cron
2005 ? Ss 0:00 /usr/sbin/cupsd
2010 ? Ssl 0:00 /usr/sbin/nscd
2088 ? S 0:00 /usr/sbin/powersaved -d -f /var/run/acpid.socket -v 3
2187 ? S 0:00 /usr/sbin/smartd
2235 ? Ss 0:00 /usr/sbin/smbd -D -s /etc/samba/smb.conf
2309 ? Ss 0:00 /usr/sbin/sshd -o PidFile=/var/run/sshd.init.pid
2314 tty1 Ss+ 0:00 /sbin/mingetty --noclear tty1
2316 tty2 Ss+ 0:00 /sbin/mingetty tty2
2317 tty3 Ss+ 0:00 /sbin/mingetty tty3
2318 ? S 0:00 /usr/sbin/smbd -D -s /etc/samba/smb.conf
2319 tty4 Ss+ 0:00 /sbin/mingetty tty4
2320 tty5 Ss+ 0:00 /sbin/mingetty tty5
2321 tty6 Ss+ 0:00 /sbin/mingetty tty6
2561 ? S 0:00 /usr/sbin/smbd -D -s /etc/samba/smb.conf
2562 ? Ss 0:00 sshd: root@pts/0
2568 pts/0 Ss 0:00 -bash
2607 pts/0 R+ 0:00 ps ax


schon mal THX im Voraus für´s Ansehen!
 

pft

Advanced Hacker
Hi

est mal ein kleiner Tipp wenn Du neue Info per EDIT in einen alten Beitrag reintippst kriegt das keiner mit, der wie ich ab und an auf "neue Beiträge" prüft. Also lieber immer 'nen neuen Beitrag machen wenn es nicht nur eine kleine Korrektur ist.

Zur Sache: öhm sieht ganz ok aus. Kann jetzt eigentlich nur noch raten oder Dummy-Tipps geben. Als da wären:
Ursache 1: Datenrate der HD: prüf mal inwelchem Modus die laufen (PIO/DMA)
Ursache 2: Netzprobleme - keine Ahnung was man da prüfen könnte
Ursahce 3: ein anderer Prozess funkt dir hin und wieder dazwischen; Kandidaten aus deiner ps-Liste könnten hier sein: powersave, irgendwelche Netzdienste die man hier nicht sieht weil sie erst on demand gestartet werden (BTW, läuft dein xinetd gar nicht?)
 

Nukem36

Hacker
High,

um einen Hinweis auf Netzprobleme zu bekommen: setze mal auf der Konsole einen Ping auf den Windows-Rechner ab

Code:
ping -c 10000 [ip des Win-Rechners]

Und lass das mal laufen. Nach 10000 pings erhälst Du dann eine Statistik in der Ausgabe. Poste die mal hier

Nukem36
 
OP
C

CrazyWilly

Newbie
Hallo zusammen,

erst mal danke für die Tips, ich habe mich noch mal in Ruhe auf die Suche gemacht und ich vermute ich habe den Fehler gefunden:

es scheint wirklich ein Netzwerkproblem zu sein, und zwar vermute ich, dass die Netzwerkkarte im neuen Server ein Problem mit einem Billig-Switch hat, den ich hier noch als 3t-Switch im Netzwerk hängen habe. Ohne dieses Switch habe ich zwar immer noch teilweise leichte Aussetzer am PC (lustigerweise nur bei VLC, Media Player Classic klappt super), aber die DBox2-Aufnahme und Wiedergabe funktioniert jetzt problemlos. Ich muss die Tage den Switch mal tauschen und dann hoffe ich dass alles funktioniert. Zusätzlich werde ich mir aber noch etwas RAM besorgen, weil die 196 MB, wie ihr beschrieben habt, ja schon arg wenig ist.

Wenn ich das ganze noch mal getestet habe werde ich das Ergebnis hier reinschreiben!

THX
Kai
 

Mike1

Newbie
CrazyWilly schrieb:
Zusätzlich werde ich mir aber noch etwas RAM besorgen, weil die 196 MB, wie ihr beschrieben habt, ja schon arg wenig ist.

ich hab hier einen AMD K6 II 300MHz mit 128MB RAM, auf dem Debian Stable läuft. Er dient als SAMBA Server und für BitTorrent dient und das läuft vollkommen problemlos...
Selbst mit 64MB RAM und dank Laptop Mode viel Caching habe ich konstante ~5,4MB/sec übers Netzwerk erreicht. Die CPU Auslastung steigt schon auf ~70% an, vom RAM her usw., ist es aber absolut kein Problem...
Eine Übertaktung auf 350MHz brachte seltsamerweise trotzdem einen gewissen Geschwindigkeitsschub...
 

spoensche

Moderator
Teammitglied
Stell bei der DBox2 für das gemountete NFS- Verzeichnis mal die rsize und wsize auf 8096. Das ruckeln beim VLC kann zum einen an falschen Einstellungen auf der DBox liegen, zum anderen auch an der Streamrate.

Wenn du den VLC mit folgendem Befehl
Code:
/usr/bin/vlc --extraintf=http --server-port :8080 --sout-transcode-fps=25.0000
startest und es dann immer noch ruckelt liegt es an den Einstellungen bei der DBox. Wenn du Filme mit dem VLC per DBox sehen möchtest verwende den von mir eben genannten Befehl um den VLC zu starten, weil er damit am besten läuft. So habe ich es zumindes mehr als einmal gelesen und es läuft auch einwandfrei.
 

pft

Advanced Hacker
Hi

hier noch ein paar Tipps zum optimieren.

Ich habe wie gesagt ein ähnliches System (FSC PIII-933, 384 MB, Suse10.2) das primär als Domänencontroller, Mail-, File-, Printserver, Virenfilter arbeitet. Soweit kein Problem (Vorher lief das sogar auf 'nem PII-266).

Als ich dann eine Gigaset Settopbox angeschlosen habe gab es einige Ruckler. Das Ding hat zwei Tuner und kann zeitversetzt wiedergeben. Im Extremfall werden also aus den 3,5 MBit/s pro stream das dreifache (1x Aufname von Tuner 1, 2x zeitversetzte Wiedergabe mit Tuner 2 -schreiben und lesen). Theoretische kein Problem, praktisch doch, obwohl vom windows client aus auf Netzlaufwerk locker ~7 MByte/s erreicht werden.

Ich hatte damals die Festplatte als Nadelöhr identifiziert. Die reine Schreib-Leserate hat hier wenig Bedeutung!

Also habe ich:
eine zweite Platte eingebaut und die Daten sinnvoll verteilt, d.h. vor allem /var und /tmp von den streamdaten getrennt (verschiedene phys. platten).
Kurzeitige Überlegungen nach High-Performance-Platten und Raid haben sich als unnötig erwiesen und sind nach meiner Überlegung auch nicht zielführend. Allerdings denke ich ein großer Plattencache (heute 16 bzw. 32 MB) ist sicher hilfreich.

Ausserdem habe ich noch diverse Optimierungen genutzt: Filesystemauswahl (ich nutze ext3 für systemdaten, reiserfs auf lvm für userdaten und netzlaufwerke und xfs auf lvm für streamdaten) und z.B. optionen wie noatime wo es nicht benötigt wird.

Sicher gibt es hier noch mehr Erfahrungen zu sammeln. Also immer schön Deine Ergebnisse - gute wie schlechte - hier posten. :)
 
OP
C

CrazyWilly

Newbie
Hi zusammen,

erstmal wieder ein dickes Danke für die Ratschläge!
@spoensche
Mein VLC unter Windows XP ruckelt teilweise bei der Wiedergabe von Filmen vom Server, die ich zuvor von der DBox2 aus aufgenommen habe. Die Filme laufen aber auf der DBox2 selbst problemlos, daher kann ich das verschmerzen, gucke lieber auf dem TV als am Monitor :)
Die rsize und wsize - Werte anzupassen ist aber generell sicher keine schlechte Idee, um mehr Puffer zu bekommen.

@pft
ich habe auch versucht die Festplatten logisch zu trennen. Meine erste "Festplatte" ist ein 2 GB CompactFlash-Laufwerk (Extrememory Performance mit 15mb/s) auf der sich alle Systemdateien, temp und die Swap-Partition befinden. Das System bootet damit echt zügig durch und selbst bei einem Kaltstart wird die zweite Festplatte (eine 500GB WD Caviar Blue) nicht hochgefahren, erst beim ersten Zugriff hört man ganz leise wie sie anläuft.

Da habe ich dann auch glatt noch eine Frage, wo meine anderen Probleme jetzt erst mal gelöst scheinen: soll ich hdparm oder sdparm benutzen, um meine sdb-Festplatte in den Schlaf zu schicken?
Der normale hdparm -S 244 /dev/sdb Befehl klappt leider nicht, aber wenn ich die Platte direkt in den Schlaf schicken will (ich glaub mit hdparm -u) dann geht das. Parallel dazu kann ich bei sdparm auch nur mit einem kryptischen Befehl, den ich jetzt nicht mehr im Kopf habe, die Platte direkt schlafen legen, was ich momentan auch mit einem Cronjob nachts durchführe. Beides scheint die gleiche Wirkung zu haben, aber welches ist besser? :???:

Viele Grüße
Kai
 

pft

Advanced Hacker
soll ich hdparm oder sdparm benutzen, um meine sdb-Festplatte in den Schlaf zu schicken?

Warum überhaupt schlafen legen? Ich versuche genau das derzeit zu vermeiden, da
1. meine Windows Clients Netzresourcen manchmal erst beim zweiten oder dritten Anlauf finden
2. das ewige rauf- und runterfahren m.E. schädlich für diue Lebensdauer der Platte sein dürfte.

Zu deiner konkreten Frage kann ich leider nix sagen :-(
ich vermute aber, dass die Funktionen, die von beiden Programmen bereitgestellt werden, auch gleich realisiert sind. Damit wäre es wurscht was Du nimmst. Es scheint aber Fälle zu geben wo nur eines von beiden wirklich tut.

BTW, was hast Du denn jetzt unternommen um das ruckeln abzustellen?
 
OP
C

CrazyWilly

Newbie
Hoi,
zuerst einmal zum Ruckeln. Ich habe mein Netzwerk ein wenig umgesteckt (einen Switch abgeklemmt) und siehe da, die Ruckler auf der DBox2 waren weg. Auch MediaPlayer Classic spielt jetzt problemlos Streams vom Server ab, lediglich VLC zuckt ab und an rum, warum auch immer. Es war also anscheinend echt ein Hardware-Problem. (Hab ein ziemlich zusammengeklatschtes Netzwerk mit einem 4Port-WLAN-Router als zentralen Switch, einen 8Port-Switch und da dran war dann noch der faule 4Port-Switch, den ich nun erst mal abgeschaltet habe. Sind halt schon ein paar Geräte im LAN in verschiedenen Räumen und alles sternförmig zu Verdrahten würden die Fußleisten nicht hergeben :))

Zur Frage: "Warum überhaupt schlafen legen?"
Nun mein oben beschriebener FSC Scenic xS gönnt sich 20 W (im Leerlauf + sdb Standby) und um die 28 W (im Leerlauf bei laufender sdb). Um die 8W zu sparen soll die Festplatte schlafen geschickt werden. Ich mache das auch nicht andauernd, sondern lediglich um 01:00 Uhr nachts via Cronjob. Wenn ich nach der Arbeit die Platte benutze dann läuft sie halt durch bis nach Mitternacht und geht dann aus. Somit ein Start-Stop-Zyklus am Tag, das ist absolut unkritisch und sicher gesünder für die Platte als wenn sie Monate/Jahrelang mit 7200 U/min durchrödelt und ihre Lager ausschlägt. Moderne Platten schaffen ja locker 10000 Startzyklen.

Die von dir beschriebenen Startschwierigkeiten habe ich nicht unbedingt, klar, beim ersten Zugriff muss du halt 3-4 sec warten aber das sehe ich nicht als Problem an, selbst die DBox kann damit umgehen.
 
Oben