Grundlagen Netzwerkkomponenten

14.03.2003 von Mike Hartmann
Hub, Router oder Switch: Wann ist welche Netzwerkkomponente in einem Ethernet-LAN nötig und wie ergibt sich daraus eine stimmige und performante Topologie?

Der Aufbau eines Ethernet-LAN unterliegt einer ganzen Reihe von Regeln. So darf man nicht beliebig lange Kabel verwenden oder beliebig viele Hubs hintereinander schalten (kaskadieren). Eine immer noch sehr häufige Ursache für Netzwerkprobleme ist die Verletzung einer dieser Regeln. Aber auch eine ungünstig gewählte Netzwerkstruktur kann das Netzwerk unnötig belasten.

Mit etwas Wissen über den Aufbau von Ethernet und Netzwerken, über die Grundidee des ISO /OSI-Schichtenmodells und über die relevanten Netzwerkprotokolle lassen sich viele Probleme schon im Vorfeld vermeiden.

In diesem Artikel erklären wir die im praktischen Betrieb wichtigen Ethernet-Grundlagen, relevante Begriffe und die Funktionsweise der verschiedenen Komponenten. Detaillierte Informationen über Ethernet, die verwendeten Kodierungsverfahren und die zu Grunde liegenden Standards finden Sie in diesem tecCHANNEL-Artikel. 10-Gigabit-Ethernet behandelt dieser Artikel, und WLANs sind hier im Detail erläutert.

Ethernet: Shared Medium

CSMA/CD nennt sich das Grundprinzip, auf dem Ethernet aufbaut. Daraus leiten sich auch all die Regeln für das Design eines Ethernet-Netzwerks ab. CSMA/CD steht für "Carrier Sense Multiple Access with Collision Detection".

Carrier Sense bedeutet, dass eine Station vor dem Sendeversuch erstmal eine gewisse Zeitspanne lauscht, ob nicht jemand anderer gerade sendet oder senden will. Diese Zeitspanne nennt sich auch Interframe Gap. Nur wenn das Medium frei ist, darf gesendet werden.

Multiple Access heißt, dass eine Station direkt nach dem Senden eines Pakets wieder auf das Medium zugreifen darf, um weitere Daten zu senden. Bei anderen Verfahren wie Token Ring, muss sie warten, bis sie wieder die Sende-Berechtigung in Form eines Tokens erhält.

Bei Ethernet kann es also passieren, dass zwei Stationen am Medium lauschen (Carrier Sense) und dann mehr oder minder gleichzeitig senden. Um diese Situation zu erkennen, müssen alle sendenden Stationen eine Collision Detection durchführen. Eine Kollision erkennen die Stationen daran, dass sich die elektrischen Signale der beiden Übertragungen überlagern. In diesem Fall wird ein JAM-Signal ausgesendet, das allen angeschlossenen Stationen anzeigt, dass das Paket ungültig ist. Der Netzwerkbereich, über den das JAM-Signal ausgebreitet wird, heißt auch Collision Domain.

Kollisionen

Obwohl die Bezeichnung "Kollision" vermuten lässt, dass es sich hierbei um etwas Schlimmes handelt, ist das eigentlich gar nicht der Fall. Sie sind im Design von Ethernet als Shared Medium fest vorgesehen und etwas völlig Normales, über das man sich in den meisten Fällen keine Sorgen zu machen braucht.

Zwei Faktoren sind bei Kollisionen jedoch wichtig:

1. Die Kollision muss noch während des Sendens erkannt werden, damit die sendende Station weiß, welches Paket sie erneut senden muss.

2. Die elektrischen Signale haben eine gewisse Laufzeit. Bis also das Jam-Signal beim Sender ankommen und er eine Kollision erkennen kann, vergeht eine gewisse Zeitspanne. Innerhalb dieser darf (wegen 1) der Sendevorgang noch nicht abgeschlossen sein.

Aus diesen Faktoren ergibt sich die Notwendigkeit einer minimalen Paketgröße, damit ein Sendevorgang lang genug andauert. Ein zu kleiner Wert würde bedeuten, dass zwischen zwei Stationen nur eine sehr kurze Strecke überbrückt werden kann, ein zu großer, dass unnötig Bandbreite verschwendet wird, wenn nur kleine Pakete verschickt werden müssen. Das Ethernet-Konsortium hat sich hier auf einen Wert von 64 Byte (= 512 Bit) geeinigt.

Bei 10-Mbit-Ethernet werden die 512 Bit innerhalb von 51,2 Microsekunden übertragen und bei Fast Ethernet innerhalb von 5,12. Um hier Verwirrungen zu vermeiden, rechnet man einfach mit so genannten "Bitzeiten" und weist Kabeln und Geräten Verzögerungswerte in der Einheit Bitzeit zu, anstatt in Microsekunden. Eine Liste mit diesen Werten finden Sie hier. Diese Werte enthalten die Verzögerung für Hin- und Rückweg des Signals, so dass die Summe aller Bitzeiten auf dem längsten Pfad 512 nicht überschreiten darf.

Späte Kollisionen

Ist der maximale Pfad zwischen zwei Endgeräten länger als 512 Bitzeiten - etwa durch zu lange Kabel oder zu viele dazwischen geschaltete Repeater - wird bei kleinen Paketen die Grundregel verletzt, dass eine Kollision noch während der Übertragung erkannt wird. Dann hat die sendende Station ihre Übertragung bereits abgeschlossen und ordnet die Kollision nicht mehr ihrer eigenen Übertragung zu. Dementsprechend unternimmt sie auch keinen erneuten Sendeversuch, und das Datenpaket ist verloren.

Das führt nicht zu einem Zusammenbruch des Netzwerks, weil die höheren Netzwerkebenen auf Grund ausbleibender Antworten das Paket früher oder später erneut senden. Es erzeugt allerdings erheblich höhere Verzögerungszeiten und führt zu einem schlechten Antwortverhalten von Netzwerkapplikationen.

Woran erkennt man späte Kollisionen?

Da in einem normalen Netzwerkbetrieb die meisten Pakete länger sind als 512 Bit, entdeckt die sendende Nic zumeist dennoch eine Kollision; lediglich später als erwartet. Dieses wird bei den meisten Netzwerkkarten in einem Zähler gespeichert, den man zur Diagnose nutzen kann.

Neben der Verletzung von Verkabelungsstandards können defekte Netzwerkkarten ein weiterer Grund für späte Kollisionen sein. Eine solche Karte erkennt nicht, dass gerade eine andere Station sendet und beginnt selbst mit der Übertragung, so dass es zu einer Kollision kommt.

Auch eine hohe Anzahl von CRC-Fehlern kann auf späte Kollisionen hindeuten, da eine Station nicht immer genau unterscheiden kann, ob eine Störung im Kabel war oder eine Kollision.

Komponenten: Hub/Repeater

Ein Repeater ist ein Gerät, dass elektrische Signale zwischen zwei Kabelsegmenten verstärkt. Normalerweise darf beispielsweise ein Twisted-Pair-Kabel nicht länger als 100 Meter sein, weil ansonsten die Signalqualität zu schlecht wird. Ein Repeater mit mehreren Ports wird auch als Hub bezeichnet.

Da ein Repeater alle elektrischen Signale weiterleitet - also auch Kollisionen - gehören alle daran angeschlossenen Stationen zu einer Collision Domain. Zwar lassen sich mehrere Hubs kaskadieren, um größere Entfernungen zu überbrücken, oder mehr Stationen anzuschließen, aber es müssen auf jeden Fall die Verzögerungszeiten (siehe Kollisionen) beachtet werden.

Regeln für Repeater

Bei Ethernet mit 10 Mbit/s hat man wegen großzügigen Timings noch relativ viele Freiheiten. Dennoch gibt es - neben der maximalen Verzögerung von 512 Bitzeiten - einige Grundregeln:

Die 5-4-3-Regel: Innerhalb eines Übertragungsweges zwischen zwei Endstationen dürfen maximal fünf Kabelsegmente auftauchen, also höchstens vier Repeater eingesetzt sein. Von den fünf Segmenten dürfen maximal drei mit Endstationen versehen sein.

Für Twisted-Pair-Verkabelungen mit kaskadierten Hubs lässt sich diese Regel darauf reduzieren, dass zwischen zwei Endstationen maximal vier Hubs liegen dürfen.

Fast-Ethernet-Hubs

Bei Fast Ethernet gibt es zwei Klassen von Repeatern. Ein Class-I-Repeater hat eine maximale Verzögerungszeit von 168 Bit und wird eingesetzt, wenn unterschiedliche physikalische Medien verbunden werden sollen - etwa ein Twisted-Pair-Segment mit einem Lichtwellenleiter-Segment. Es darf maximal ein solches Gerät in einem Übertragungspfad liegen.

Bei Class II sind höchstens 92 Bitzeiten Verzögerung erlaubt, so dass bei Ausnutzung der maximalen Kabellänge bis zu zwei Geräte in einem Pfad liegen können:

Komponente

Bitzeit

Station 1

50

100 m Cat5-Kabel

111,2

Repeater 1

92

5 m TP-Kabel

5,56

Repeater 2

92

100 m Cat5-Kabel

111,2

Station 2

50

Summe Bitzeiten

511,96

Damit ergibt sich bei Cat5-Verkabelung eine maximale Ausdehnung von knapp 200 Metern für eine Collision Domain.

Bridge/Switch

Eine Reihe von Faktoren beim CSMA/CD-Verfahren beeinflusst den Auf- und Ausbau eines Ethernet-Netzwerks:

Mittels so genannter Bridges oder Switches kann man diese Probleme lösen. Ein Switch ist letztlich nichts anderes als ein intelligenter Hub. Statt alle Datenpakete auf alle Ports zu schicken, merkt sich der Switch anhand der MAC-Adresse der NICs, welche Stationen an welchen Ports zu finden sind. Anhand der Adresseinträge leitet der Switch das Datenpaket nur an den Port weiter, an dem tatsächlich auch der Zielrechner hängt.

Letztlich erzeugt also jeder Switch-Port eine eigene Collision Domain. In dieser Hinsicht zählt der Switch-Port als Endgerät. Bei der Berechnung der Verzögerungszeit braucht man also lediglich die Bitzeiten zwischen Station und Switch aufzusummieren.

Ein weiterer Vorteil von Switches ist die Nutzung von Full-Duplex-Übertragungen:

Ist ein Rechner direkt am Switch angeschlossen oder sind zwei Switches verbunden, kann auf dieser Strecke gleichzeitig gesendet und empfangen werden, was ansonsten nicht möglich ist. Kollisionen sind hier kein Problem mehr.

Switching-Mechanismen

Prinzipiell können Switches in einem von vier Modi arbeiten, um eingehende Datenpakete weiterzuleiten:

Beim Cut-through leitet der Switch ein Datenpaket weiter, sobald er den Header des Pakets mit der Adresse des Ziels erhalten hat. Dadurch entsteht nur eine geringe Verzögerung (Latenz) zwischen Empfangen und Weiterleiten. Andererseits können CRC-Fehler im hinteren Teil des Datenpakets nicht erkannt werden, so dass möglicherweise fehlerhafte Pakete beim Empfänger eintreffen. Während dies bei gesicherten Protokollen wie TCP oder IPX lediglich eine Retransmission des defekten Pakets auslöst, kann es bei ungesicherten Protokollen wie UDP oder NetBIOS zum Verbindungsabbruch führen.

Solche Probleme behebt das Store-and-forward-Verfahren. Hier wartet der Switch zunächst, bis er das gesamte Paket empfangen hat. Jetzt lassen sich für das gepufferte Paket beliebige Filterfunktionen benutzen. Erst nach deren Anwendung leitet der Switch das Paket an den Zielport weiter. Allerdings verzögert sich dadurch die Weiterleitung je nach Größe des Datenpakets um wenige Millisekunden.

Viele Switches arbeiten deshalb mit einer Mischung aus den beiden Verfahren. Solange nur wenige Kollisionen auftreten, kommt Cut-through zum Einsatz. Bei Überschreiten einer bestimmten Fehlerrate schaltet der Switch auf Store-and-Forward um.

Eine selten genutzte Variante ist das so genannte Fragment-Free-Switching. Es arbeitet wie Cut-through, nur dass es die Daten erst weiterleitet, wenn die ersten 64 Byte des Pakets fehlerlos angekommen sind. Der Grund für dieses Verfahren ist, dass die meisten Fehler und alle regulären Kollisionen innerhalb dieses Zeitfensters auftreten.

Grenzen von Switches

Findet der hauptsächliche Traffic in einem geswitchten Netzwerk zu einer bestimmten Station - etwa einem einzigen Server - statt, kann auch ein Switch nicht viel verbessern. Der beschränkende Faktor ist die Verbindung zu dieser einen Station. Eine bestimmte Anzahl von Paketen kann der Switch noch zwischenspeichern, danach muss er allerdings reagieren. Entweder verwirft er weitere eingehende Pakete und überlässt damit den höheren Netzwerkschichten die Fehlerkorrektur, oder er erzeugt Kollisionen, damit die sendenden Stationen nach dem normalen Backoff-Algorithmus verfahren. Die erste Variante führt zu deutlichen Verzögerungen, da die Fehlerkorrektur der Netzwerkprotokolle zunächst den Time-Out abwartet, bevor sie Daten erneut sendet.

Da Switches auf der Ebene 2 des ISO/OSI-Schichtenmodells arbeiten, haben sie keine Ahnung von den darüber liegenden Protokollen wie IP, IPX oder NetBIOS. Daher übertragen sie Broadcasts aus den höheren Schichten an alle Ports, wie beispielsweise die Suche nach einem DHCP-Server oder die diversen Broadcasts des Windows-Netzwerks. In einer komplett geswitchten flachen Netzwerkhierarchie (alle Rechner im selben IP-Subnetz) kann es vorkommen, dass Broadcasts überhand nehmen und die Netzwerk-Performance deutlich beeinträchtigen. Zudem lässt sich das Netzwerk nicht logisch unterteilen, etwa um Abteilungen voneinander abzugrenzen und damit die interne Sicherheit zu erhöhen.

Um Broadcasts und logische Abgrenzung zu erreichen, bieten teurere Switches so genannte VLANs an. Damit lassen sich logische Netze anhand des Switch-Ports oder der MAC-Adresse realisieren. Sollen Daten zwischen zwei VLANs ausgetauscht werden, müssen sie durch einen Router verbunden sein. Es gibt allerdings auch Switches, die auf Schicht 3 arbeiten, also das Switching anhand der IP-Adresse durchführen können, diese ermöglichen auch IP-basierende VLANs ohne zusätzliche Router.

Router

Netzwerkprotokolle wie IPX oder TCP/IP erlauben eine logische Unterteilung des Netzwerks in verschiedene Subnetze. Damit lässt sich beispielsweise die Struktur einer Firma besser abbilden oder - im Fall des Internet - eine regionale Verteilung erreichen. Um Daten zwischen solchen Subnetzen austauschen zu können, benötigt man Router, die anhand der Adressinformation die Datenpakete weiterleiten. Vor einigen Jahren hat man Router noch eingesetzt, um die Bandbreiten-Limitation von 10-Mbit-Ethernet zu umgehen, heutzutage finden sich Router hauptsächlich an den Außengrenzen des LAN, um Weitverkehrsverbindungen zu realisieren.

Zumindest beim Internet ist es so, dass viele Wege zum Ziel führen. Also gehört es zu den Aufgaben des Routers, den optimalen Weg zu finden oder bei einem Verbindungsausfall alternative Routen zu bestimmen. Um sich über die verfügbaren Wege auszutauschen, nutzen Router spezielle Protokolle, wie beispielsweise das Routing Information Protocol (RIP). Der Vorteil dieses dynamischen Verfahrens ist, dass die Infrastruktur auf Ausfälle und Engpässe ohne Eingriff des Administrators reagieren kann. Nachteilig ist jedoch, dass hier mehr Verwaltungsaufwand entsteht und dass der Weg eines einzelnen Pakets nicht vorhergesagt werden kann. Das erschwert die Fehlersuche besonders in größeren vermaschten Netzwerken.

Ein weiterer Vorteil von Routern ist, dass sie auch zwischen verschiedenen Netzwerktypen wie Ethernet und FDDI oder den diversen WAN-Protokollen vermitteln können. Dabei muss er auch den verschiedenen Gegebenheiten der verwendeten Netzwerke Rechnung tragen, also Paketgrößen anpassen oder Timings beachten. (mha)