Wolfgang Lösch

Contact© Wolfgang Lösch

Lokale Netze (LAN) — Ethernet-Brücken, Switches und VLANs

Stand: 2007 (weitere Aktualisierung eingestellt)

Capitalist switching goes like this: You give me some money and I give you some bandwith. It's all yours. You don't have to share it with anyone. If you don't use it, then it's wasted – but hey, that's capitalism. In socialist switching we have a huge pool of bandwith – and we share it! You want some bandwith, man, you take it, and when you're done, kindly return it to the pool. Revolutionary!

Peter Newman, Data Communications, December 1994

Die allgemeine Funktionsweise einer Brücke wurde bereits im Abschnitt Brücken und Switches des Kapitels Medienzugriff (MAC-Schicht) beschrieben. Im folgenden wird der Brückentyp, der bei Ethernet-Netzwerken eingesetzt wird, näher erläutert.

Transparente Brücke

Die typische Ethernet-Brücke ist ein echtes Plug-and-Play-Gerät. Sie wird einfach ins Netz integriert und nimmt dann transparent, d.h. ohne dass ein Administrator tätig werden muss und ohne dass die ans Netz angeschlossenen Datenendgeräte etwas merken, ihren Betrieb auf. Die Brücke wird von den am Netzbetrieb teilnehmenden Datenendgeräten nicht direkt adressiert, außer sie wird selbst als Datenendgerät im Rahmen eines Netzwerk-Managements angesprochen. Die MAC-Adressen der Anschluss-Ports der Brücke bleiben also im allgemeinen verborgen und erscheinen nicht in den MAC-Adressfeldern der zwischen den Datenendgeräten ausgetauschten Ethernet-Rahmen. Daher wird diese Brücke als transparente Brücke (Transparent Bridge) bezeichnet.

Adresstabelle

Wesentlicher Bestandteil der transparenten Brücke ist die intern geführte Adresstabelle. Hierbei handelt es sich um eine Datenbank, in der die MAC-Adressen der im Netz angeschlossenen Datenendgeräte den Ports der Brücke zugeordnet werden. Die Brücke benötigt diese Zuordnungen, um die Ethernet-Rahmen korrekt zustellen zu können. Die Pflege der Datenbank geschieht durch einen als Backward Learning bezeichneten Selbstlernmechanismus. Dieser in der Brücke implementierte Selbstlernmechanismus erspart somit die manuelle Konfiguration der Adresstabelle. Die Zustellung der Rahmen anhand der Adresstabelle geschieht durch einen als Bridge Forwarding bezeichneten Mechanismus, der ebenfalls in der Brücke implementiert ist.

Die folgende Abbildung zeigt diese beiden Mechanismen in einem Ablaufdiagramm, wobei Port X und Port Y für zwei belibige Ports der Brücke stehen.

Algorithmus der transparenten Brücke
Algorithmus der transparenten Brücke

Durch die Adresstabelle wird also jeder MAC-Adresse eines Datenendgerätes genau derjenige Port der Brücke zugeordnet, über den das entsprechende Datenendgerät erreichbar ist. Die Tabelle wird automatisch eingerichtet und aktualisiert. Auf diese Weise werden Netzänderungen automatisch registriert. Jeder Adress-Eintrag wird außerdem mit einerm Zeitstempel versehen. Adress-Einträge von Datenendgeräten, die eine bestimmte Zeit (typischerweise einige Minuten) keinen Datenverkehr hatten, werden automatisch gelöscht.

Beispiel

Die folgende Abbildung zeigt eine Brücke mit den Ports 1 bis 4, über die sie jeweils mit einem LAN gekoppelt ist. Das über Port 1 erreichbare LAN ist über eine weitere Brücke bzw. einen Router mit jeweils einem weiteren LAN gekoppelt. In den insgesamt sechs LANs werden die Computersysteme A bis F betrachtet, die miteinander kommunzieren wollen.

LAN-Kopplung mit Brücken
LAN-Kopplung mit Brücken

Wenn die Adresstabelle der (in der Abbildung rechts liegenden) Brücke vollständig gefüllt ist, sollte sie folgendermaßen aussehen:

Adresstabelle einer Brücke
MAC-Adresse Port-Nummer der Brücke
MAC-Adresse von Computer A 1
MAC-Adresse von Computer B 2
MAC-Adresse von Computer C 3
MAC-Adresse von Computer D 4
MAC-Adresse von Computer F 1
MAC-Adresse eines der beiden Anschlusspunkte des Routers
(rechter Anschluss in der Abbildung)
1

Das Computersystem E ist nicht in der Adresstabelle enthalten, da der Router keine Ethernet-Rahmen von diesem LAN unverändert durchlässt, sondern alle Ethernet-Rahmen beim Übergang mit seiner MAC-Adresse als Quelladresse versieht. Die Brücke erfährt also keine MAC-Adressen aus dem LAN von E. Die Computer A, B, C, D und F können mit Computer E nur über den Router kommunizieren und benötigen dazu Adressinformationen der Netzwerkschicht. Wenn in der Netzwerkschicht als Protokoll z.B. das Internet-Protokoll eingesetzt wird, handelt es sich hierbei um IP-Adressen (siehe Kapitel Internet-Protokoll und IP-Adressen und IP-Router und L3-Switches).

Spanning-Tree-Brücke

Wenn in einem Netz redundante Brücken installiert sind (z.B. aus Gründen der Betriebssicherheit), würden ohne weitere Zusatzmaßnahmen Endlosschleifen auftreten (vor allem beim Flooding). Gelöst wird dieses Problem durch die Kommunikation der Brücken untereinander und durch die Überlagerung der aktuellen Topologie mit einem überspannenden Baum (Spanning Tree), der einen eindeutigen Weg garantieren soll. Hierfür benötigt man einen besonderen Brückentyp, nämlich die Spanning-Tree-Brücke. Bei einer Spanning-Tree-Brücke handelt es sich im Grunde genommen um eine transparente Brücke, die mit einem zusätzlichen Algorithmus – dem Spanning-Tree-Algorithmus – ausgestattet ist. Im Normalfall arbeitet die Spanning-Tree-Brücke also wie die transparente Brücke.

Alle in ein Netz eingebundenen Spanning-Tree-Brücken tauschen untereinander Informationen über ihren Betriebszustand und über die aktive Topologie des Netzes aus. Dieser Informationsaustausch geschieht über sogenannte Bridge Protocol Data Units (BPDUs) und führt zu folgenden Resultaten:

Brücken mit designierten Ports werden als designierte Brücken (designated Bridges) für die betroffenen LANs bezeichnet. Per Definition ist somit die Wurzel-Brücke für die direkt daran angeschlossenen LANs immer auch die designierte Brücke.

Adressen und IDs

Jede Spanning-Tree-Brücke hat eine universelle MAC-Individual-Adresse, die als Brücken-Adresse (Bridge Address) bezeichnet wird. Diese MAC-Adresse kann (muss aber nicht) mit der Individual-Adresse eines ihrer Ports übereinstimmen, wobei hier in der Regel der Port mit der niedrigsten Port-ID herangezogen wird.

Jede Spanning-Tree-Brücke hat außerdem eine eindeutige Brücken-ID (Bridge Identifier). Diese ID setzt sich aus einer 2 Byte langen Priorität und der Brücken-Adresse zusammen. Die Priorität kann vom Administrator gesetzt werden. Der niedrigste Wert bezeichnet dabei die höchste Priorität. Zulässiger Bereich für die Brückenpriorität: 0 bis 65535. Default-Wert: 32768.

Jeder Port einer Brücke hat eine Port-ID (Port Identifier). Diese ID setzt sich aus einer 1 Byte langen Priorität und einer fest vorgegebenen Port-Nummer zusammen. Auch hier kann die Priorität vom Administrator gesetzt werden und auch hier bezeichnet der niedrigste Wert die höchste Priorität. Zulässiger Bereich für die Port-Priorität: 0 bis 255. Default-Wert: 128.

Als Ziel-MAC-Adresse wird bei allen BPDUs die für das Spanning-Tree-Protokoll reservierte Multicast-Adresse 01-80-C2-00-00-00 verwendet. Rahmen mit dieser Zieladresse werden intern von den Brücken verarbeitet, aber nicht weitergeleitet.

Port-Statusregister

Jede Spanning-Tree-Brücke verfügt über ein Port-Statusregister, das Informationen über den Betriebszustand jedes einzelnen Ports enthält. Folgende Zustände sind möglich:

Forwarding:
Der Port ist voll aktiv und kann beliebige Rahmen empfangen, absenden und verarbeiten.
Learning:
Der Port ist eingeschränkt aktiv. Der Port beschränkt sich bei normalen Daten-Rahmen von Datenendgeräten darauf, die Adress-Tabelle der Brücke zu aktualisieren. Die Rahmen werden jedoch nicht weitergeleitet. BPDUs dagegen werden voll unterstützt und verarbeitet.
Listening:
Der Port ist eingeschränkt aktiv. Der Zustand entspricht dem Zustand Learning, die Adressen werden jedoch nicht ausgewertet, d.h. die Adress-Tabelle wird nicht aktualisiert.
Blocking:
Der Port ist eingeschränkt aktiv. Der Zustand entspricht dem Zustand Listening, das Absenden von BPDUs ist jedoch nicht möglich (das Empfangen von BPDUs ist allerdings weiterhin möglich).
Disabled:
Der Port ist nicht aktiv.

In allen Fällen, d.h. auch im Zustand Disabled, werden jedoch Meldungen eines eventuell vorhandenen Netzwerk-Management-Systems empfangen und verarbeitet.

Root-Brücke und Spanning-Tree-Topologie

Die Ermittlung der Root-Brücke erfolgt über die Brücken-ID. Die Brücke mit der höchsten Priorität, was gleichbedeutend mit der niedrigsten ID ist, wird zur Root-Brücke erklärt.

Nachdem die Root-Brücke festgelegt ist, werden für alle anderen Brücken die Root-Ports ermittelt. Der Root-Port einer Brücke ist derjenige Port, der die günstigste Verbindung zur Root-Brücke bietet. Die günstigste Verbindung wird über die sogenannten Pfadkosten (Path Cost) ermittelt. Die Pfadkosten können vom Administrator gesetzt werden. Es gibt jedoch Standardwerte, die nach folgender Regel festgelegt werden: Pfadkosten = 1000 / Übertragungsrate[Mbit/s]. Daraus ergeben sich z.B. für Ethernet 10Base-T Pfadkosten von 100 und für Fast-Ethernet 100Base-T Pfadkosten von 10. Die Gesamtpfadkosten berechnen sich aus der Summe aller Einzelpfadkosten, die auf dem Weg zur Root-Brücke entstehen. Der Port mit den niedrigsten Gesamtpfadkosten wird zum Root-Port erklärt. Gibt es mehrere Wege mit gleich niedrigen Pfadkosten, entscheidet die niedrigste Port-ID (höchste Priorität).

Dann wird für jedes LAN die designierte Brücke und der designierte Port in dieser Brücke ermittelt. Auch hierfür werden wieder die Gesamtpfadkosten herangezogen und in Zweifelsfällen entscheidet die niedrigste Brücken-ID bzw. die niedrigste Port-ID.

Zuletzt werden die für den überspannenden Baum nicht mehr benötigten Ports deaktiviert und in den Zustand Blocking geschaltet.

Das Ergebnis dieser gesamten Prozedur ist, dass von jedem LAN ein eindeutiger Weg zur Wurzel-Brücke und damit zu jedem anderen LAN festgelegt ist. Schleifen sind nicht mehr vorhanden. Wenn nun eine Brücke ausfällt, was sich für die anderen Brücken in der Weise darstellt, dass sich die Brücke eine gewisse Zeit lang (typischerweise einige Sekunden) nicht mehr durch Aussenden von BPDUs gemeldet hat, wird eine neue Spanning-Tree-Topologie, d.h. ein neuer überspanndender Baum, nach dem oben geschilderten Verfahren aufgebaut.

Die folgende Abbildung zeigt ein Beispiel für eine Spanning-Tree-Topologie:

Spanning-Tree-Brücken
Spanning-Tree-Brücken

Spanning Tree Protocol

Die Kommunikation der Brücken erfolgt über das Spanning Tree Protocol (STP). Das Spanning-Tree-Protokoll verwendet zwei Typen von BPDUs: Configuration BPDUs und Topology Change Notification BPDUs. Mit der Configuration-BPDU werden Konfigurationsdaten übermittelt, mit der Topology-Change-Notification-BPDU werden Topologie-Änderungen bekannt gegeben.

Die folgende Abbildung zeigt den Aufbau einer Configuration-BPDU.

Configuration-BPDU
Protocol Identifier
00 00 00 00 (hex)
2 Byte
Protocol Version Identifier
00 00 (hex)
1 Byte
BPDU Type
00 00 (hex)
1 Byte
Flags 1 Byte
Root Identifier 8 Byte
Root Path Cost 4 Byte
Bridge Identifier 8 Byte
Port Identifier 2 Byte
Message Age 2 Byte
Max Age 2 Byte
Hello Time 2 Byte
Forward Delay 2 Byte
Protocol Identifier:
Identifizierung des Protokolls, das die BPDU gebildet hat (STP hat den Wert 00 00 00 00 (hex)).
Protocol Version Identifier:
STP-Version (trägt den Wert 00 00 (hex)).
BPDU Type:
Typ der vorliegenden BPDU (die Configuration-BPDU hat den Wert 00 00 (hex)).
Flags:
Parameter zur Mitteilung und Bestätigung von Topologie-Änderungen.
Root Identifier:
Brücken-ID derjenigen Brücke, die als Root-Brücke angenommen wird.
Root Path Cost:
Parameter für die Ermittlung des günstigsten Pfades von dem an die Brücke angeschlossenen LAN zur Root-Brücke.
Bridge Identifier:
Eindeutige Brücken-ID.
Port Identifier:
Eindeutige Port-ID desjenigen Ports, über den die Configuration-BPDU verschickt wird.
Message Age:
Alter einer Configuration-BPDU (wird beim Empfang mit Max Age verglichen und verworfen, falls der Wert größer ist).
Max Age:
Von der Root-Brücke festgelegte, zeitliche Begrenzung für die Lebensdauer der Konfigurationsdaten in den Brücken.
Hello Time:
Zeitintervall zwischen der Generierung von Configuration-BPDUs (typischer Weise einige Sekunden).
Forward Delay:
Von der Root-Brücke festgelegtes Zeitintervall, das maximal verstreichen darf, bis eine Brücke in den Zustand Forwarding umschaltet.

Die folgende Abbildung zeigt den Aufbau einer Topology-Change-Notification-BPDU.

Topology-Change-Notification-BPDU
Protocol Identifier
00 00 00 00 (hex)
2 Byte
Protocol Version Identifier
00 00 (hex)
1 Byte
BPDU Type
00 01 (hex)
1 Byte
Protocol Identifier:
Identifizierung des Protokolls, das die BPDU gebildet hat (STP hat den Wert 00 00 00 00 (hex)).
Protocol Version Identifier:
STP-Version (trägt den Wert 00 00 (hex)).
BPDU Type:
Typ der vorliegenden BPDU (die Topology-Change-Notification-BPDU hat den Wert 00 01 (hex)).

Layer-2-Switch

Die Funktionsweise eines Layer-2-Switches, L2-Switches oder L2-Switching-Hubs in einem Ethernet-Netzwerk unterscheidet sich zunächst in keiner Weise von der einer transparenten Multiport-Brücke. Ankommende Rahmen werden genau wie bei der Brücke aufgrund der Adressfilterung nur an den Port weitergeleitet, an dem das LAN oder Netzsegment angeschlossen ist, über das das Ziel-Datenendgerät erreichbar ist. Um diese Aufgabe durchführen zu können, pflegt ein Ethernet-Switch eine interne Adresstabelle in der gleichen Weise wie eine transparente Brücke. Es gibt also auch hier einen Learning-Prozess und einen Forwarding-Prozess. Darüberhinaus kann die Funktionalität des Switches durch den Spanning Tree Algorithmus erweitert werden, wie man es auch von der transparenten Brücke her kennt.

Ein wesentliches Unterscheidungsmerkmal zwischen Brücken und Switches ist die Verzögerungszeit (Latency), d.h. der Zeitraum, der zwischen dem Eintreffen eines Bits an einem Port und dem Wiederverlassen dieses Bits an einem anderen Port vergeht. Während bei Brücken die Verzögerungszeit eine eher untergeordnete Rolle spielt, ist sie bei Switches, die die Rolle eines zentralen Hubsystems übernehmen, ein ganz entscheidendes Kriterium. Switches werden für hohen Durchsatz mit kleinstmöglichen Verzögerungszeiten optimiert.

Mikro-Segmentierung

Im Extremfall ist an jeden Port des Switches nur noch ein Datenendgerät direkt über ein Kabelsegment angeschlossen. Man spricht dann häufig von Mikro-Segmentierung. Der Switch übernimmt dadurch die Rolle eines Hubs und wird zum Switching Hub. Die Rahmen eines sendenden Datenendgerätes werden ausschließlich und direkt an das Empfänger-Datenendgerät weitergeleitet, d.h. zwischen den beiden Datenendgeräten wird ein exklusiver Übertragungskanal aufgebaut. Auf diese Weise wird es möglich, dass in einem Ethernet zwei Datenendgeräte kollisionsfrei im Vollduplex-Betrieb miteinander kommunizieren können.

Durch die Mikro-Segmentierung löst man in gewisser Weise eine Kollisionsdomäne völlig auf. Die folgende Abbildung zeigt ein Ethernet mit einem zentralen Hub. Das gesamte Netz stellt eine einzige Kollisionsdomäne dar.

Sterntopologie mit Hub
Sterntopologie mit Hub

Ersetzt man im obigen Netz den Hub durch ein Switch, stellt jedes einzelne an den Switch angeschlossene Mikro-Segment eine eigene Kollisionsdomäne dar. In einer derartigen Kollisionsdomäne können nur noch Kollisionen zwischen dem Switch und dem an das betreffende Segment angeschlossenen Datenendgerät auftreten.

Sterntopologie mit Switch
Sterntopologie mit Switch

Wenn nun noch der Switch und das Datenendgerät vom Halbduplex-Betrieb in den Vollduplex-Betrieb geschaltet werden, erfolgt der Datenverkehr völlig kollisionsfrei.

Switching-Technik

Ein Switch, das genau wie eine Brücke jeden ankommenden Rahmen zunächst zwischenspeichert, auf eventuelle Fehler überprüft und dann erst weiterleitet, wird als Store-And-Forward-Switch bezeichnet. Dadurch, dass dieser Switch-Typ über ausreichend Puffer-Speicher verfügt, ist er in idealer Weise dazu geeignet, schnelle 100-Mbit/s-Segmente (z.B. 100Base-TX) mit langsamen 10-Mbit/s-Segmenten (z.B. 10Base-T) zu koppeln. Sollte doch einmal der Puffer-Speicher voll sein, treten die Mechanismen der Flusskontrolle in Aktion, d.h. im Halbduplex-Betrieb werden künstliche Kollisionen erzeugt und im Vollduplex-Betrieb werden Pause-Rahmen verschickt.

Wenn bei einem Switch der Forwarding-Prozess sofort gestartet wird, nachdem die Ziel-MAC-Adresse vom Switch gelesen wurde, spricht man von einem Cut-Through-Switch oder On-The-Fly-Switch. Hierdurch wird die Verzögerungszeit auf ein Minimum reduziert. Da durch das unmittelbare Weiterleiten nicht mehr der gesamte Rahmen zwischengespeichert wird, werden auch fehlerhafte Rahmen an den Empfänger übermittelt. Dies wirkt sich vor allem dann negativ aus, wenn viele fehlerhafte Broadcast-Rahmen unterwegs sind. Außerdem ist es mit dieser Switch-Technik nicht möglich, Daten von einem langsamen 10-Mbit/s-Segment an ein schnelles 100-Mbit/s-Segment weiterzureichen, da die Daten nicht schnell genug nachgeliefert werden können.

Wenn innerhalb eines Switches der Ethernet-Rahmen unverändert vom Eingangs-Port an den Ausgangs-Port weitergeleitet wird, spricht man von Frame Switching. Brücken arbeiten in der Regel nach diesem Prinzip. Wenn der Rahmen dagegen in kleine Zellen fester Größe zerlegt wird, diese Zellen dann zum Ausgangs-Port geleitet werden und unmittelbar vor dem Versenden wieder zum ursprünglichen Rahmen zusammengesetzt werden, spricht man von Cell Switching.

Da der Switch in der Lage sein muss, parallele Verbindungen zwischen den einzelnen Ports mit hohem Datendurchsatz zu bedienen, benötigt er eine extrem hohe interne Übertragungskapazität. Hierfür steht dem Switch ein internes Vermittlungsnetzwerk zur Verfügung, das meist als Backplane bezeichnet wird.

Switched Ethernet vs. Shared Ethernet

Häufig unterscheidet man bei der Klassifizierung von Ethernet-Netzwerken zwischen switched Ethernet und shared Ethernet. Unter einem Switched Ethernet versteht man ein Ethernet-Netzwerk, das ausschließlich aus Punkt-zu-Punkt-Verbindungen besteht, wobei die einzelnen Kabelsegmente über Switches gekoppelt sind. Unter einem Shared Ethernet versteht man ein Ethernet-Netzwerk, dessen Kabelsegmente über Repeater und Hubs gekoppelt sind.

Diese Bezeichnungsweise ist etwas unglücklich, weil der Begriff Shared Ethernet leicht mit dem Begriff Shared Media verwechselt werden kann. Die folgende Tabelle schafft hier für Klarheit und und zeigt auf, welche Ethernet-Varianten für welche Betriebsweise geeignet sind. Das Kürzel x steht für alle verfügbaren Twisted-Pair- und Fiber-Optic-Varianten.

Ethernet-Betriebsweisen
Shared-Media / Halbduplex Dedicated-Media / Halbduplex Dedicated-Media / Vollduplex
Shared Ethernet 10Base5, 10Base2 10Base-x, 100Base-x, 1000Base-x ---
Switched Ethernet --- 10Base-x, 100Base-x, 1000Base-x 10Base-x (ohne 10Base-FP und 10Base-FB), 100Base-x (ohne 100Base-T4), 1000Base-x

An Hand dieser Matrix kann man sehr gut erkennen, wie der Trend bei Ethernet verläuft: Von links oben (10Base5 im Shared-Media-Betrieb) nach rechts unten (1000Base-x im Vollduplex-Betrieb).

Link Aggregation

Von großer Bedeutung für die Skalierung von Netzen ist die Bündelung mehrerer Leitungen. Bei parallelen Leitungen zwischen zwei Datenendgeräten wird normalerweise der Spanning-Tree-Algorithmus aktiv, der alle Leitungen bis auf eine Leitung still legt. Der Spanning-Tree-Algorithmus verhindert also eine Skalierung durch Leitungsbündelung. Daher wurde speziell für diese Aufgabe ein Algorithmus mit der Bezeichnung Aggregation of Multiple Link Segments oder kurz Link Aggregation entwickelt. Mit Hilfe dieses Algorithmus ist es möglich, zwischen zwei Datenendgeräten mehrere parallele Leitungen aktiv zu betreiben. Fälschlicherweise wird Link Aggregation oft auch als Trunking bezeichnet.

Bündelt man auf diese Weise z.B. 3 Leitungen, die mit 10 Mbit/s im Vollduplex-Betrieb eingesetzt werden, ergibt sich eine Gesamtübertragungsrate von

3 (Leitungen) × 2 (Vollduplex) × 10Mbits = 60Mbits.

Ethernet-LAN als VLAN

Durch den Einsatz eines Switches kann man zwar eine Kollisionsdomäne in einzelne Mikro-Segmente aufteilen, aber diese Mikro-Segmente bilden zusammen nach wie vor eine geschlossene Broadcast-Domäne auf MAC-Ebene. Da Switches wie Brücken in der MAC-Schicht arbeiten, können sie keine Rahmen ausfiltern, die als MAC-Zieladresse eine Broadcast-Adresse mitführen, sondern müssen diese Rahmen an alle Ports weiterleiten.

Eine Aufteilung in getrennte Broadcast-Domänen ist eigentlich erst in der Netzwerkschicht durch den Einsatz von Routern möglich. Durch spezielle Switch-Systeme kann man jedoch logische Teilnetze aufbauen, so dass zwei Datenendgeräte aus unterschiedlichen (logischen) Teilnetzen auf MAC-Ebene nicht miteinander kommunizieren können. Ein solches logisches Teilnetz heißt virtuelles LAN (Virtual LAN, VLAN) oder Workgroup LAN. Ein VLAN ist also ein logische Gruppe von Datenendgeräten, die gemeinsam eine Broadcast-Domäne bilden.

Die Kommunikation zwischen zwei Datenendgeräten, die zu unterschiedlichen VLANs gehören, kann nur über Router erfolgen. Es kann also vorkommen, dass zwei Datenendgeräte, die physikalisch an denselben Switch angeschlossen sind, ihre Rahmen über einen entfernten Router übermitteln müssen. Ohne Router ist eine Kommunikation zwischen zwei Datenendgeräten unterschiedlicher VLANs nicht möglich. Es ist jedoch möglich, ein Datenendgerät mehreren VLANs zuzuordnen, um auf diese Weise z.B. ein Serversystem für mehrere VLANs zugängig zu machen.

VLAN-Zuordnung

Wenn man sich entschlossen hat, VLANs einzurichten, stellt sich die Frage, nach welchen Gesichtspunkten die Gruppierung der Datenendgeräte erfolgen soll. Bei den beiden gebräuchlichsten Varianten wird die Zuordnung auf der Basis von Switch-Ports oder auf der Basis der Datenendgerät-MAC-Adressen vorgenommen. Man spricht dann von

Hierzu wird im Switch neben der standarmäßig vorhandenen Adresstabelle, die die Zuordnung der Switch-Ports zu MAC-Adressen beinhaltet, noch eine Netztabelle eingerichtet, in der jedem Switch-Port (im Fall der Port-based VLANs) bzw. jeder MAC-Adresse (im Fall der MAC Address-based VLANs) eine VLAN-Kennung zugeordnet wird. Während die Adresstabelle vom Switch selbst aufgebaut und gepflegt wird, muss die zusätzliche Netztabelle von einem Administrator eingerichtet werden.

Weitere Zuordnungen sind möglich z.B. auf der Basis von IP-Subnetzen oder nach Protokolltypen (IP oder IPX). Man spricht dann von

Beispiel

An ein Switch sollen 12 Datenendgeräte angeschlossen sein. Darunter sollen sich 9 PCs und 3 Server befinden. Die 9 PCs sollen auf zwei Workgroups aufgeteilt werden (5 PCs + 4 PCs). Jede Workgroup soll über einen eigenen Server verfügen und der dritte Server soll den Teilnehmern beider Workgroups zur Verfügung stehen. Bei einer Port-basierenden VLAN-Bildung könnte die Tabelle (Adresstabelle + Netztabelle) im Switch dann wie folgt aussehen:

Adresstabelle eines Switch-Systems in einem VLAN
Switch-Tabelle Anmerkung
MAC-Adresse Switch-Port VLAN-Kennung
00-50-04-3A-7E-80 1 1, 2 Server für beide Workgroups
00-50-04-3A-7E-AC 2 1 Server für erste Workgroup
00-50-04-3A-7E-24 3 2 Server für zweite Workgroup
00-50-04-3A-7E-4A 5 2 PC in zweiter Workgroup
00-50-04-3A-7E-8C 6 1 PC in erster Workgroup
00-50-04-3A-7E-26 7 1 PC in erster Workgroup
00-50-04-3A-7E-88 8 2 PC in zweiter Workgroup
00-50-04-3A-7E-AD 9 1 PC in erster Workgroup
00-50-04-3A-7E-35 10 1 PC in erster Workgroup
00-50-04-3A-7E-C2 11 2 PC in zweiter Workgroup
00-50-04-3A-7E-F6 12 2 PC in zweiter Workgroup
00-50-04-3A-7E-E8 13 1 PC in erster Workgroup

Wenn nun ein Datenendgerät aus dem VLAN 1 einen Broadcast-Rahmen oder einen Rahmen mit einer dem Switch noch unbekannten MAC-Adresse abschickt, wird dieser Rahmen an alle dem VLAN 1 zugeordneten Ports weitergeleitet. Die zum VLAN 2 gehörenden Datenendgeräte erhalten diesen Rahmen nicht. Jedes VLAN stellt somit auf MAC-Ebene eine geschlossene Broadcast-Domäne dar.

VLAN-markierte Ethernet-Rahmen

In einem großen Netz, in dem mehrere Switches arbeiten, kann die Bildung von VLANs auch Switch-übergreifend eingerichtet werden. Hierzu gibt es zwei Strategien: Entweder die Switches tauschen gegenseitig ihre Adress- und Netztabellen aus oder sie fügen jedem Ethernet-Rahmen, den sie weiterleiten, eine entsprechende Markierung (Tag) in den Header ein.

Während die erste Methode ausschließlich durch proprietäre Lösungen realisiert wird, gibt es für die zweite Methode neben proprietären Lösungen auch eine durch IEEE standardisierte Verfahrensweise, die auf einer Erweiterung des Ethernet-Rahmenformats basiert. Dieses erweiterte Format wird als VLAN-markiertes (VLAN-tagged) Rahmenformat bezeichnet. Die folgende Abbildung zeigt einen solchen VLAN-markierten Ethernet-Rahmen:

Aufbau eines VLAN-markierten Ethernet-Rahmens
Preamble 7 Byte
Starting Frame Delimiter 1 Byte
Destination MAC Address 6 Byte
Source MAC Address 6 Byte
Tag Protocol Identifier
81 00 (hex)
2 Byte
Tag Control Information
pppfvvvv vvvvvvvv
2 Byte
Length / Type 2 Byte
MAC Client Data } 42 – 1500 Byte
Padding Bits
Frame Check Sequence 4 Byte
Preamble / Starting Frame Delimiter:
Wie beim üblichen Ethernet-Rahmen.
Destination MAC Address:
Wie beim üblichen Ethernet-Rahmen.
Source MAC Address:
Wie beim üblichen Ethernet-Rahmen.
Tag Protocol Identifier (TPID):
Enthält immer den Wert 81 00 (hex), um den Rahmen als VLAN-markierten Ethernet-Rahmen zu klassifizieren.
Tag Control Information (TCI):
(in Ethernet-Schreibweise müssen die beiden Oktette gewendet werden: vvvvfppp vvvvvvvv)
  • User Priority ppp: mit diesen Bits kann eine Übertragungspriorität gesetzt werden (von 0 bis 7),
  • Canonical Format Indicator (CFI) f: gibt an, ob zwischen den beiden Feldern Length/Type und Data noch ein weiteres Routing Information Field (RIF) vorhanden ist (kommt praktisch nur bei gebrückten Übergängen zwischen Ethernet-LANs und Token-Ring- bzw. FDDI-LANs vor),
  • VLAN Identifier (VID) vvvv vvvvvvvv: kennzeichnet das VLAN, zu dem der Rahmen gehört.
Length / Type:
Wie beim üblichen Ethernet-Rahmen.
Data / Padding Bits:
Wie beim üblichen Ethernet-Rahmen (Minimum hier allerdings 42 Byte).
Frame Check Sequence:
Wie oben beim üblichen Ethernet-Rahmen.

Da der Ethernet-VLAN-Header durch die zwei zusätzlichen Felder um 4 Byte größer ist als der übliche Ethernet-Header, wurde von IEEE die maximale Rahmenlänge eines VLAN-markierten Ethernet-Rahmens von 1518 Byte auf 1522 Byte heraufgesetzt. VLAN-Tagging lässt sich daher in einem Netz nur sinnvoll einsetzen, wenn alle Datenendgeräte, zumindest jedoch alle Brücken und Switches, diese Rahmenerweiterung unterstützen.

Prioritätsmarkierte Ethernet-Rahmen

Wenn Ethernet-Rahmen VLAN-markiert werden und den oben dargestellten VLAN-Header erhalten, ohne dass jedoch VLANs definiert wurden, wird die VID standardmäßig auf 0 gesetzt. Solche Rahmen werden benötigt, wenn z.B. nur die Priorisierung genutzt werden soll, ohne dass eine Aufteilung in VLANs erfolgt ist. Man spricht dann von einem prioritätsmarkierten (priority tagged) Ethernet-Rahmen.

Über die Prioritätsbits werden Ethernet-Rahmen in Prioritätsklassen von 1 bis 7 eingeteilt. Dabei stellt 1 die niedrigste und 7 die höchste Priorität dar. Rahmen, die keiner bestimmten Priorität zugeordnet sind, erhalten den Wert 0.

Die Priorisierung von Ethernet-Rahmen ist sinnvoll, wenn eine geringe Latenz oder eine hohe Datensicherheit auch in stark ausgelasteten Netzwerken garantiert werden soll. Die höchste Priorität 7 sollte Routing-Protokollen zugeordnet werden, damit die Aktualisierung der Routing-Tabellen schnell und zeitnah erfolgen kann. Die Werte 5 und 6 sollten Anwendungen zugeordnet werden, die möglichst ohne Verzögerungen übertragen werden sollten, z.B. Video- und Sprachübertragung. Auf die restlichen Anwendungen und Dienste, die nicht so zeitkritisch sind, können dann die Werte 1 bis 4 verteilt werden.