Gigabit-Netzwerk mit Linux

Dies ist ein historischer Artikel von ca 2010.

Ein Upgrade auf Gigabit-Ethernet mit Linux gestaltet sich sehr einfach.

Ich habe folgende Geräte umgestellt:

  • OpenSuse 10.2 auf ASRock P4V88 Board mit Pentium 4 Prescott 3Ghz und internem LAN-Karte 100MBit/s
  • OpenSuse 10.0 auf IBM Netvista PC mit Pentium 4 Northwood 2,26 Ghz und internem LAN 100 MBit/s
  • knoppmyth Linux mit mythtv auf Siemens Scovery XS Mini-PC mit Pentium 3 866Mhz und internem LAN 100 MBit/s

Was benötigt man?

  1. Von Linux unterstützte Gigabit-Netzwerkkarten. Ich habe irgendwelche genommen, die den RealTek Chip RTL8169 nutzen. Hierfür hat Linux Treiber im Kernel.
  2. Gigabit Switch
  3. Kabel, die Gigabit-Ethernet transportieren sollen, müssen Cat 5e oder höher haben.

Zu der Norm „Cat x“ gibt es bei Wikipedia gute Infos. Hier eine knappe Zusammenfassung:

Norm Betriebsfrequenz [Mhz] Max. Übertragungsrate
full duplex/half duplex [MBit/s]
Max. Kabellänge [m] Genutzte Adernpaare Übertragungsrate pro Adernpaar [MBaud]
Cat 5 100 ?/100 100 2 50
Cat 5e (auch 5+) 100 250/500 100 4 250
6 250 500/1000 100 4 250
6a 500 ?/10000 100 4 ?
7 600 ?/10000 100 4 ?

Ich habe ein Cat 5-Kabel probiert, der Switch hat damit aber nur 100MBit angeboten. Mit Cat 5e-Kabeln ging es dann. Alle Kabel haben übrigens dieselben Stecker, erst bei Cat 7 werden andere Stecker verwendet (die allerdings kompatibel zu den alten sind, d.h ein Cat 7-Stecker passt auch in eine alte Buchse).

RJ45 Stecker
Ein RJ45 Stecker an einem Cat5-Kabel

 

Besonderheiten, die zu beachten sind:

  • 1000 MBit/s entsprechen 125MByte/s. Der PCI-Bus des PCs kann diese Transferrate geschwindigkeitsmässig nicht bedienen, d.h. man wird die theoretischen 1000 MBit mit PCI nicht erreichen. Desweiteren sind übliche Platten mit 50-80MByte/s ebenfalls deutlich unter der theoretisch möglichen Geschwindigkeit des Netzes. Unabhängig davon wird man aber Transferraten erreichen, die deutlich über denen eines 100MBit-Netzes sind (siehe weiter unten).
  • Es braucht keine Crossover-Karten mehr, da alle Gigabit-Switches schon Auto-MDX beherrschen
  • Eine Mischung 10/100/1000 Geräte am selben Switch ist kein Problem, alle laufen mit der höchsten Geschwindigkeit

Die Umstellung

Ich habe die Linux-Rechner vor dem Hardware-Tausch hochgefahren und im BIOS die interne LAN-Karte disabled, um  Konflikte zu vermeiden. Nach dem Herunterfahren wurden die Karten ausgetauscht.

Gigabit Ethernet-Karte mit Realtek 8169 Chip (Links eine Boot-PROM-Fassung)
Gigabit Ethernet-Karte mit Realtek 8169 Chip
für den PCI-Bus (Links eine Boot-PROM-Fassung)

Nach dem Hochfahren ist erwartungsgemäß kein Netzbetrieb mehr möglich, denn die bekannte Netzkarte wurde deaktiviert, die neue Karte wurde noch nicht konfiguriert. Trotz disablen der onboard-Karte hat der Kernel auf allen PCs die Karte bemerkt.
Startet man auf den OpenSuse Rechnern Yast und geht dort in den Bereich Netzwerkgeräte -> Netzwerkkarte, wird dort neben der alten nun auch die neue Karte angezeigt. Diese kann dann einfach mittels Bearbeiten konfiguriert werden. Vorher habe ich aber noch die alte Karte bearbeitet, deren Netzwerkadresse geändert (die neue Karte soll die alte IP-Adresse übernehmen) und die Aktivierung der alten Karte auf „manuell“ umgestellt. Für die neue Karte sind die typischen Dinge (eigene IP-Adresse, Netzmaske, DNS-Server, Default-Gateway) einzustellen. Yast beenden und die neue Karte funktioniert. Bei mir wurde die neue Karte als „eth1“ eingebunden.

Transferraten von Gigabit Ethernet

Um Gigabit Ethernet auszureizen, benötigt der PC RAID-Systeme und eine schnellere Anbindung des Plattenzugriffs an die Netzwerkkarte als es PCI bieten kann. Mit einem Wald-und-Wiesen-PC wie ich ihn habe, kann man nur ein Bruchteil der möglichen Leistung erreichen.

2008: Mit dem Gigabit Ethernet ergeben sich beim Transfer deutlich höhere Werte als mit dem 100MBit-Netzwerk. Bei ersten Messungen kam ich auf ca. 230MBit/s. Die interne Plattengeschwindigkeit wird nicht erreicht. Trotzdem werden Daten fast Faktor 4 schneller übertragen. Es macht einen deutlichen Unterschied, 1 Minute statt 4 Minuten auf die Übertragung einer 4GByte Video-Datei zu warten.

2012 wurde die Messung mit neueren Geräten wiederholt und dabei 65MByte/s erreicht, mit 517MBit/s immerhin rund die Hälfte der theoretisch möglichen Geschwindigkeit.

Jahr der messung Medium Quelle Medium Ziel Verbindungstechnik Volumen
[MByte]
Übertragungs-
dauer [s]
Transferrate
[MByte/s]
2008 interne SATA-1
Linux ext3 Quellrechner: Pentium 4 3Ghz, 2GByte RAM, OpenSuse 10.2
externe HD via NFS
Linux ext3 Zielrechner: Pentium 4 2,26 Ghz, 1GByte RAM, OpenSuse 10.0
Switch: TP-Link TL-SG 1008D
Netzwerkkarten: LogiLink Gigabit Ethernet PCI Adapter – Giga LAN Card
Gigabit Ethernet 2672 97 27,3
2012 interne SATA-2
Linux ext4
Quellrechner:
Quadcore Q6600 2,4Ghz, 6GByte RAM, OpenSuse 12.1
Built in LAN Karte (Gigabyte Board)
externer PC via NFS, Linux ext4

Zielrechner:
Prentium 4,  2,4Ghz, 2GByte RAM, OpenSuse 12.1

Netzwerkkarten: LogiLink Gigabit Ethernet PCI Adapter – Giga LAN Card

Gigabit Ethernet 9500 147 64,6

 

 

Transferraten mit USB, SATA, LAN und intern

Dies ist ein historischer Artikel von ca. 2010.

Wer sich mit dem Gedanken trägt, Backups auf einem externen Gerät durchzuführen, hat die Wahl zwischen externen  Platten, die mittels USB, LAN oder SATA angebunden werden können. Hierfür existieren spezielle Leergehäuse. Die LAN-Gehäuse kosten dabei deutlich mehr als die anderen Varianten. Alternativ ist auch die Nutzung eines zweiten Mini-PCs via LAN  möglich, den man im Internet günstig ersteigern kann.

Im folgenden sind unterschiedliche Szenarien gegenübergestellt, bei denen Dateien kopiert werden und die Transferraten gemessen wurden. Mit externen SATA-Platten wurde keine Messung gemacht mangels SATA-Gehäuse.

Ergebnis

Während beim internen Kopieren (also von Harddisk zu Harddisk innerhalb eines Rechners) fast 60 MByte/s erreicht werden, fallen alle anderen Technologien deutlich ab.

Die als externe Harddisk angeschlossene 2,5“ USB-Disk kommt mit 8,7MByte/s nur auf einen Bruchteil (knapp 10%) der theoretisch möglichen 60MByte/s (entspricht 480MBit/s). Da ist sogar die extern gemountete LAN-Platte des Mini-PCs schneller, die mit 10,5MByte/s immerhin 84% der theoretisch möglichen 12,5MByte/s (entspricht 100MBit/s) erreicht. Eine externe, LAN-fähige Platte kommt da auch nicht mit und erreicht sogar nur 3.5MByte/s. Diese Platten werden z.B. von Longshine angeboten und beinhalten einen Microcontroller, auf dem ein proprietäres Betriebssystem oder auch Linux (bei Longshine) läuft. Durch die niedrige Taktrate des Controllers ist für die Transferrate wohl mehr als der Wert, den ich in Foren im Internet gefunden habe, nicht drin.

Nachtrag 2007: Mit einer externen, über USB angeschlossenen 3,5“ Harddisk wurden deutlich höhere Werte als mit der 2,5“ Notebookplatte erreicht. Die verwendete 3,5“ Platte war ein 20GByte Seagate Baracuda Modell aus 2001, ATA4-fähig, also nicht ganz neu und von daher eher langsam. Dennoch wurden 28MByte/s Transferrate erreicht. Die früher getestete Notebookplatte fällt daher mit ihren 8,7MByte/s vermutlich aus dem Rahmen, sie ist besonders langsam. Dies ist vermutlich dem gewünschten niedrigen Stromverbrauch und der möglichst geringen Lautstärke von Notebookplatten geschuldet.

Ich habe in 2007 mein LAN auf Gigabit umgestellt und auch Messungen gemacht. Dies habe ich hier beschrieben.

Nachtrag 2008: Auf einer etwas neueren Plattform habe ich 2008 Messungen mit einer externen, über E-SATA angeschlossenen Harddisk gemacht. SATA bietet die Möglichkeit, neben internen Platten auch externe anzuschließen. Dafür gibt es spezielle, abgeschirmte Kabel, bei denen Längen bis ~2m möglich sind. Ich habe ein externes Gehäuse gekauft, dass 2 SATA.-Platten aufnimmt. Das Fantec MR-35DUS2 hat einen eigenen internen SATA-Controller. Dieser kann eine oder zwei eingesteckte, schnell und ohne Schrauben wechselbare Platten verwalten. Er kann die Platten in verschiedenen Modi betreiben ( RAID0, RAID1, BIG, JBOD).

Das Fantec MR-35DUS2 für 2 SATA-Platten mit E-SATA und USB Anschluss

Ich habe nur eine Platte eingesteckt und gemessen. Es sind im Schnitt über 60MByte/s möglich. Damit ist E-SATA bei meinen Tests der klare Sieger und genauso schnell wie interne Platten. Ein einem anderen Bericht im Internet habe ich gelesen, dass jemand mit zwei Platten in RAID0 sogar 110 MByte/s erreicht hat.

Fazit

Somit erscheint die Variante mit einem externen E-Sata Laufwerk optimal. Als zweitbeste Lösung erscheint ein Mini-PC. Mini-PCs gibt es z.B. von Siemens (Scovery) oder von HP. Der Mini-PC lässt sich problemlos mit einer leichtgewichtigen Linux-Distribution (z.B. Zenwalk) bestücken.
Mit Gigabit-Ethernet wird die LAN-Variante weiter an Attraktivität gewinnen. Der begrenzende Faktor bei Gigabit-Ethernet wird dann wieder die Platte selbst sein, so dass Transferraten wie intern möglich sein sollten.
Externe Harddisks sind dann vorzuziehen, wenn Mobilität gefragt ist.

Medium Quelle Medium Ziel Verbindungstechnik Volumen
[MByte]
Übertragungs-
dauer [s]
Transferrate
[MByte/s]
interne HD
UDMA 133
Linux reiserfs3
interne HD
SATA-1
Linux reiserfs3
intern (SATA/IDE) 1079 18,9 57
interne HD
UDMA 133
Linux reiserfs3
externe HD 3,5“
DOS FAT32
USB2 (Externes Festplattengehäuse: Power Mobile Harddisk. Chip: Cypress Semiconductor Corp. USB-2.0 IDE Adapter) 2045 73 28
interne HD
UDMA 133
Linux reiserfs3
externe HD 2,5“
DOS FAT32
mount mit „async“
USB2 (Externes Festplattengehäuse: No Name. Chip: Genesys Logic, Inc. USB 2.0 IDE Adapter) 1950 223 8,7
interne HD
UDMA 133
Linux reiserfs3
externe HD via NFS
Linux reiserfs 4
mount mit „sync“
Fast Ethernet 100MBit/s 1079 308 3,5
interne HD
UDMA 133
Linux reiserfs3
externe HD via NFS
Linux reiserfs 4
mount mit „async“
Fast Ethernet 100MBit/s 1079 103 10,5
interne HD externe LAN-fähige
Harddisk
Longshine
Linux ext3
Fast Ethernet 100MBit/s unbekannt unbekannt 3,5
(Wert aus Internet)

Getestet wurde mit folgenden Geräten:
Quellrechner:
CPU: Intel Pentium 4 3.0 Ghz, RAM: 1024 MB PC400 DDR, Board: ASRock P4V88 (SATA RAID 8xUSB). Betriebssystem: OpenSuse 10.0.
Zielrechner:
CPU: Intel Celeron 900Mhz, RAM: 512MB PC133 SDRAM, Board: Siemens Scovery XS D1215. Betriebssystem: Zenwalk Linux 2.0.1.

 

Medium Quelle Medium Ziel Verbindungstechnik Volumen
[MByte]
Übertragungs-
dauer [s]
Transferrate
[MByte/s]
interne HD
SATA-II
Linux OpenSuse 11.0
ext3
externe HD
SATA-II
ext3
E-SATA verschiedene Dateien von 0,2-2,8GB unterschiedlich 60,5 im Schnitt (45..77)

Getestet wurde mit folgenden Geräten:
Quellrechner:
CPU:Intel Quad Core 2,4GHz, RAM: 2048 MB PC400 DDR. Betriebssystem: OpenSuse 11.0.