Von der unerträglichen Langsamkeit des LANs

vdr-1:~# ethtool eth1
Settings for eth1:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pumbg
Wake-on: g
Current message level: 0x00000033 (51)
Link detected: yes
vdr-1:~# mii-tool eth1
eth1: negotiated 100baseTx-FD flow-control, link ok

Mal ganz abgesehen von den uneinheitlichen Signalen, 100 MBit/sec aka 12 MByte/sec ist schon saulahm, wenn man darüber, wie ich, Mediendaten »wuppen« will.
Leider, da 1 GBit/sec im fraglichen System instabli nur funktionierte, müssen alle Daten nun durch dieses Nadelöhr. Meine Fileserver selbst sind nicht viel schneller, trotz GBit-Anbindung: die Platten hängen per USB 2.0 dran und damit sind zwischen (häufiger) 20 und (selten) knapp 30 MByte/sec für NFS realistisch.
Derzeit geht es darum, die über die Jahre »gewachsene« »Struktur« zu entfelchten und die Abhängigkeiten zu reduzieren. In der Zeit vor den billigen DockStars hatte ich immer mal wieder (1-TB-) USB-HDDs an Rechner im LAN geklemmt und als weitere Videoverzeichnisse in VDR eingebunden:

vdr-1:~# du -sh /newvideo.? | gawk '{printf("%s ", $0); systemstr=sprintf("df --portability -h %s | grep -v Filesystem ", $2); system(systemstr);}'|gawk '{printf("%-5s %s %-5s %s\n", $1, $2, $6, $3);}'
136G /newvideo.0 0 /dev/hda3
826G /newvideo.1 199M death:/data-20100401/newvideo.1
0 /newvideo.2 1.9M /dev/hdd3
3.7G /newvideo.3 199M death:/data-20100401/newvideo.3
634G /newvideo.4 0 death.uu.org:/data/newvideo.4
83G /newvideo.5 199M death:/data-20100401/tmpvideo.5
5.7G /newvideo.6 199M death:/data-20100401/newvideo.6
179G /newvideo.7 16M nslug-1:/data/tmpvideo.7
3.9G /newvideo.8 199M death:/data-20100401/newvideo.8

Wie man auch sehen kann: eine gewisse Konsoldierung hat schon stattgefunden, das Gros der Inhalte wurde auf dem Quadcore-Hausserver schon zusammengezogen, die Erfahrung zeigt aber, daß es vorteilhaft wäre, die Funktion »VMWare-Server« und »Fileserver« zu trennen, denn unterschiedliche »Anforderer« greifen zu unterschiedlichen Zeiten auf die Dienste »VMWare« und »Fileservice« zu.
Hier kommen nun die DockStars zum Zuge; einen Fileserver habe ich schon seit geraumer Zeit, und er hat mir schon viel Kummer bereitet. Aufgrund des Preisverfalls habe ich irgendwann angefangen, TB-USB-Disks »zu sammeln«, da die anfänglichen 750 GB der 4 250er HDDs im RAID-5 auch irgendwann endlich wurden. Günstige (externe) Festplatten gepaart mit wenig Zeit und dadurch induziertem erhöhen Platzbedarf – z. B. fehlte die Zeit, automatische Aufnahmem um Duplikate zu bereinigen, die Aufnahmen selbst zu schneiden (Vor- und Nachlauf, ggf. Werbepausen) – schaffen interessante neue Probleme. Denn mehr oder minder planlos an Linux-Kisten geklemmt und jene zum Fileserver erhoben — klar, das geht technisch, aber logistisch ist es ein Alptraum (sind Aufnahmen geplant? Falls ja, bis wann muß ich fertig sein, daß alle FS wieder bereitstehen?).
Der erste Schritt, hier Ordnung reinzubringen, war die Anschaffung einer neuen TB-USB-HDD und eines Linksys NSLU2 — mein nslug-1. Leider war die Plattform dermaßen unterirdisch inperformant – VDR, der MPEG-Datenströme aufzeichnet, möchte schon gerne einen konstanten Datenstrom schreiben können, auch wenn ein anderer Client grade auf das Verzeichnis zugreift –, daß ich das Projekt ad acta legte.
Erst mit den Sheeva-Plugs keimte wieder Hoffnung auf, jene als Fileserver für die Armada an USB-Platten benutzten zu können — gleichwohl wissend, daß 1 USB 2.0-Bus eine Bandbreite von ca. 480 MBit/sec hat, effektiv dort aber 1 Platte nur 20-30 MByte/sec bringt, effektiv also gut 200 MBit/sec nutzbar sind. Und, klar, daß zwei Festplatten an einem USB-Bus optimalerweise nur alternativ angesprochen werden sollten …
Meine beiden Sheeva-Plugs allerdings haben schnell ihre Aufgabe gefunden; einer als Camera-Server, einer als Heimautomatisationsbastelbasis. Je einen Seagate DockStar und einen PogoPlug »pink«, die ja auf ähnlicher Hardware basieren, habe ich mir gesichert; und der DockStar wurde bald zum Bastelprojekt 
… wobei der große Durchbruch erst mit dem Hinweis kam, daß es den »Seagate FreeAgent DockStar« für 20,– EUR bei u. a. Atelco.de gäbe — in der Folge habe ich a) mehr Gehirnschmalz in das Projekt »DockStar als normaler Linux-(Files-)Server« gesteckt und b) bislang 4 weitere DockStars gekauft.
Mittlerweile hat 1 DockStar meinen NSLU2 abgelöst; und statt unterirdischer Performance fluppen die Daten jetzt sowohl per NFS als auch per SMB/CIFS dank GBit-Anbindung und GHz-CPU …
Soweit die erfreulichen Nachrichten; beim bisherigen VDR-Server allerdings stecke ich auf 100 MBit/sec fest, was sich insbesondere dann negativ bemerkbar macht, wenn ich Sendungen, die auf NFS-Mounts liegen, schneiden will: es gibt eine merkliche Verzögerung im Abruf der jeweiligen Szenen. Aber gut, 100 MBit/sec am Fileserver erwies sich als geringes Problem, denn die servierenden kleinen Kisten aben alle GBit/sec – nur eben die angeschlossenen Sever nicht.