ADMIN

2023

05

2023-04-28T12:00:00

Lokale Netzwerke

SCHWERPUNKT

094

Netzwerk

Protokoll

Netzwerktunnel-Protokoll GENEVE

Evolution

von Gerd Pflueger

Veröffentlicht in Ausgabe 05/2023 - SCHWERPUNKT

Vom IEEE-802.3-Standard für das LAN entwickelte sich die Datenübertragung hin zu VXLAN und schließlich zum aktuellen GENEVE. Als Tunnelprotokoll bietet Generic Network Virtualization Encapsulation eine verbesserte Flexibilität und Skalierbarkeit, kommt aber auch noch mit einigen Problemen daher. Wir zeigen die drei Technologien und ihre Einsatzgebiete.

Der Standard für VLAN-Tagging bei IEEE 802.3 ist 802.1Q. Dieser ermöglicht es, Datenverkehr von verschiedenen logischen Netzen innerhalb eines physischen Netzes zu trennen. Dabei werden spezielle VLAN-Tags an jedes Ethernet-Frame angehängt, um ihnen eindeutige VLAN-IDs zuzuweisen. Dadurch kann ein Switch bestimmen, in welches VLAN ein Frame gehört, und es entsprechend weiterleiten. So lässt sich der Datenverkehr von verschiedenen Geräten oder Benutzergruppen trennen und isolieren, ohne dass physisch separierte Netzwerke erforderlich sind.
VXLAN (Virtual Extensible LAN) ist ein Tunnelprotokoll, das zum Einsatz kommt, wenn es gilt, virtuelle Netzwerke (VLAN) über ein physisches Netzwerk hinweg zu erstellen und zu verbinden. Es erweitert die maximale Anzahl der unterstützten VLANs nach 802.1Q von 4094 auf bis zu 16 Millionen. GENEVE (Generic Network Virtualization Encapsulation) ist ein neueres, von der Internet Engineering Task Force (IETF) entwickeltes Tunnelprotokoll. Es bietet eine höhere Flexibilität und Skalierbarkeit im Vergleich zu VXLAN und unterstützt auch die Übertragung von Multicast-Daten.
IEEE 802.3 und 802.1Q verstehen
Die IEEE-802.3-Standards (auch als Ethernet bezeichnet) dienen hauptsächlich zur Übertragung von Datenpaketen in lokalen Netzwerken (LANs). Solche Daten können von unterschiedlicher Natur sein und umfassen Dateien, Dokumente, Audio- und Videoinhalte, Webinhalte, E-Mails und vieles mehr. Diese Definition beschreibt den Transfer von Datenpaketen in Koaxial-, Kupfer-Twisted-Pair- und Glasfaserkabeln.
Der Standard für VLAN-Tagging bei IEEE 802.3 ist 802.1Q. Dieser ermöglicht es, Datenverkehr von verschiedenen logischen Netzen innerhalb eines physischen Netzes zu trennen. Dabei werden spezielle VLAN-Tags an jedes Ethernet-Frame angehängt, um ihnen eindeutige VLAN-IDs zuzuweisen. Dadurch kann ein Switch bestimmen, in welches VLAN ein Frame gehört, und es entsprechend weiterleiten. So lässt sich der Datenverkehr von verschiedenen Geräten oder Benutzergruppen trennen und isolieren, ohne dass physisch separierte Netzwerke erforderlich sind.
VXLAN (Virtual Extensible LAN) ist ein Tunnelprotokoll, das zum Einsatz kommt, wenn es gilt, virtuelle Netzwerke (VLAN) über ein physisches Netzwerk hinweg zu erstellen und zu verbinden. Es erweitert die maximale Anzahl der unterstützten VLANs nach 802.1Q von 4094 auf bis zu 16 Millionen. GENEVE (Generic Network Virtualization Encapsulation) ist ein neueres, von der Internet Engineering Task Force (IETF) entwickeltes Tunnelprotokoll. Es bietet eine höhere Flexibilität und Skalierbarkeit im Vergleich zu VXLAN und unterstützt auch die Übertragung von Multicast-Daten.
IEEE 802.3 und 802.1Q verstehen
Die IEEE-802.3-Standards (auch als Ethernet bezeichnet) dienen hauptsächlich zur Übertragung von Datenpaketen in lokalen Netzwerken (LANs). Solche Daten können von unterschiedlicher Natur sein und umfassen Dateien, Dokumente, Audio- und Videoinhalte, Webinhalte, E-Mails und vieles mehr. Diese Definition beschreibt den Transfer von Datenpaketen in Koaxial-, Kupfer-Twisted-Pair- und Glasfaserkabeln.
Ein Ethernet-Datenpaket umfasst die aus dem OSI-Schichtenmodell bekannten physischen und höheren Ebenen, die die logischen Aspekte des Netzwerks beschreiben. Die für die Struktur und das Format der Ethernet-Datenpakete relevanten Schichten sind:
- Der MAC-Header (Medium Access Control) enthält die Adresse des Absenders und Empfängers sowie andere Steuerinformationen.
- Der LLC-Header (Logical Link Control) informiert über die Art der übertragenen Daten (IP-Daten, ARP-Daten).
- Der Datenbereich enthält die tatsächlich zu übertragenden Nutzdaten.
Es gibt darüber hinaus spezielle Ethernet-Datenformate und Strukturen für bestimmte Anwendungen, die wir an dieser Stelle jedoch nicht weiter betrachten, wie zum Beispiel Ethernet II (DIX-Format), Ethernet-LLC-Format oder Ethernet SNAP (Sub-Network Access Protocol).
Ein 802.1Q-Frame hat einen erweiterten Rahmenaufbau, der ein zusätzliches VLAN-Tag im Vergleich zu einem normalen Ethernet-Frame enthält. Der Aufbau des 802.1Q-Frames ist wie folgt:
1. Preamble: 7 Bytes sind für die Preamble reserviert, der dazu dient, den Empfänger auf das bevorstehende Frame vorzubereiten.
2. Start-of-Frame Delimiter (SFD): Ein Byte, das das Ende des Preamble und den Beginn des Frames kennzeichnet.
3. MAC-Adressen: Die ersten 6 Bytes des Frames enthalten die MAC-Adresse des Quellgeräts, gefolgt von der MAC-Adresse des Zielgeräts.
4. 802.1Q-Tag: Dieses ist 4 Bytes lang und enthält Informationen über das VLAN, dem das Frame zugeordnet ist. Es liefert eine VLAN-ID, einen "Priority-Code-Point" (PCP) für Quality of Service (QoS) und einen "Canonical Format Indicator" (CFI) für Netzwerkkompatibilität.
5. Typfeld: Dieses Zwei-Byte-Feld enthält Informationen über den Protokolltyp des Trägerdatenpakets, etwa IPv4 oder ARP.
6. Nutzdaten: Der Rest des Frames enthält die Nutzdaten.
7. Frame Check Sequence (FCS): Am Ende des Frames befindet sich eine 32-Bit-Prüfsumme (FCS), die vom Absender berechnet wurde und die der Em- pfänger zur Überprüfung der Integrität des Frames verwendet.
Erweiterung durch VXLAN
Virtual Extensible LAN arbeitet auf Schicht 2 (Datenlink) des OSI-Schichtenmodells und wurde von Cisco, Arista und VMware entwickelt. Es soll die Grenzen von traditionellen LANs in virtuellen Umgebungen überwinden und den Zugriff auf Cloudressourcen und -anwendungen vereinfachen.
Ein traditionelles LAN basiert auf der MAC-Adresse und der physischen Topologie aus Switches und Routern. Es ist auf eine bestimmte Anzahl von Geräten und Broadcast-Domänen beschränkt. Dies führt zu Problemen, wenn es darum geht, Ressourcen und Anwendungen in einer virtuellen Umgebung zu skalieren und zu verteilen.
VXLAN arbeitet auf der gleichen Schicht wie IEEE 802.3, ermöglicht aber das Schaffen von VLANs, die unabhängig von der physischen Topologie und der MAC-Adresse arbeiten. Es nutzt einen 24-Bit VXLAN-Identifier (VNI), um die virtuellen LANs zu identifizieren und zu unterscheiden. Dies ermöglicht es, mehrere VXLANs in einer physischen Umgebung aufzubauen, und bringt damit eine verbesserte Skalierbarkeit und Flexibilität. Somit können mehr Broadcast-Domänen und Geräte zum Einsatz kommen. VXLAN besteht aus den folgenden Komponenten:
- Identifier (VNI): Ein 24-Bit-Wert, der VLANs identifiziert und unterscheidet.
- Header: Enthält den VNI sowie andere Steuerinformationen wie die Quelle und den Ziel-UDP-Port. Dient dazu, die VXLAN-Datenpakete zu identifizieren und zu routen.
- Segment: Ein virtuelles LAN, das von einem oder mehreren Endpunkten genutzt wird und das über einen VXLAN-Tunnel verbunden ist.
- Endpunkt (VTEP): Ein Gerät, das VX-LAN-Datenpakete kapselt (und entkapselt) sowie VXLAN-Segmente mit anderen VTEPs verbindet.
- Tunnel: Ein logischer Tunnel, der VX-LAN-Datenpakete über ein physisches Netzwerk überträgt.
Ein VXLAN-Datenpaket enthält sowohl einen MAC-Header als auch einen VXLAN-Header. Der MAC-Header liefert die physischen Adressen (MAC-Adressen) des Absenders und Empfängers, während der VXLAN-Header den VNI bereitstellt, der das VXLAN-Segment kenntlich macht.
Eine Vielzahl von Herstellern unterstützt VXLAN in verschiedenen Ausprägungen:
- Cisco: Nexus-Switches und die Application Centric Infrastructure (ACI).
 - VMware: vSphere und NSX-v – der Nachfolger NSX-T arbeitet vor allem mit GENEVE, dazu gleich mehr.
- Juniper: QFX-Switches und die Contrail Networking-Plattform.
- Arista: EOS-Switches.
- HPE: FlexNetwork-Architektur und Virtual Cloud Network.
STT-Kapselung
In diesem Artikel haben wir STT (Stateless Transport Tunneling) außen vorgelassen, da die Implementierung in Produkten durch die Hersteller eher selten ist. STT dient als Protokoll ebenfalls dazu, virtuelle Netzwerke unabhängig von der physischen Topologie und der MAC-Adresse zu erstellen, und arbeitet ebenfalls auf der OSI-Schicht 2. STT ähnelt VXLAN und GENEVE, da es eine MAC-in-UDP-Encapsulation verwendet, um Daten zwischen virtuellen Netzwerken zu übertragen. Es nutzt dazu jedoch eine einfachere, zustandlose Methode, die weniger Rechenleistung erfordert. STT benötigt keine Control-Plane und ist daher einfacher zu implementieren und zu verwalten. Ein Nachteil ist jedoch, dass es nicht die gleiche Flexibilität und Skalierbarkeit wie VXLAN und GENEVE bietet.
Unabhängige VLANs dank GENEVE
Das Generic-Network-Virtualization-Encapsulation-Protokoll arbeitet auf der OSI-Schicht 2 (Datenlink) und erlaubt VLANs unabhängig von der physischen Topologie und der MAC-Adresse. Es bietet eine höhere Flexibilität und Skalierbarkeit als VXLAN, hat aber auch einige Probleme und Schwierigkeiten. So ist GENEVE eine Erweiterung von VXLAN und nicht kompatibel mit 802.3. Es erfordert daher, dass sowohl die Endgeräte als auch die Switches das Protokoll unterstützen.
Und da GENEVE mehrere Protokolle und Dienste in einem einzigen Tunnel kapselt, kann es zu einer erhöhten Verwaltungskomplexität führen. Es erfordert daher erfahrene Netzwerkadministratoren für die Konfiguration und Verwaltung von GENEVE-Netzwerken. Zudem müssen IT-Verantwortliche mit Leistungsproblemen rechnen, da GENEVE mehrere Protokolle und Dienste in einem einzigen Tunnel zusammenbringt und so eine erhöhte Last auf den Switches und Routern erzeugt. Schließlich tun sich Sicherheitsprobleme auf, weil GENEVE durch das Kapseln mehrerer Protokolle und Dienste in einem einzigen Tunnel es erschwert, die Kommunikation zwischen den virtuellen Netzwerken zu überwachen und zu kontrollieren.
GENEVE besteht aus drei Komponenten. Zunächst ist da der Header. Dieser enthält die für das Entpacken und Weiterleiten der Datenpakte notwendigen Informationen. Der Header enthält die Felder "Flags" (Art der Nachricht), "Protocol
Type" (zeigt Protokoll im Paket), "Virtual Network Identifier" (identifiziert das virtuelle Netzwerk) und "Reserved" (Feld für zukünftige Erweiterungen). Die zweite Komponente nennt sich Optionen und enthält zusätzliche Informationen, die für die Verwaltung und Automatisierung von virtuellen Netzwerken erforderlich sind (beispielsweise die Identifizierung des Endpunkts, die Verbindungsidentifizierung oder die Endpunkt-Policy). Der dritte Bestandteil ist die Payload. Diese bewegt die Nutzdaten von einem virtuellen Netzwerk zu einem anderen und kann ein beliebiges Protokoll wie IPv4, IPv6, Ethernet und so weiter enthalten.
Fazit
Mit GENEVE lassen sich virtuelle Netzwerke (Overlay) über ein gemeinsames physisches Netzwerk (Underlay) miteinander verbinden. Jeder virtuelle Netzwerkknoten sieht die anderen als direkte Nachbarn über den GENEVE-Tunnel, unabhängig davon, ob sie auf dem gleichen physischen Gerät oder an unterschiedlichen Standorten laufen. Insgesamt hilft GENEVE, virtuellen Netzwerken eine eindeutige Netzwerkidentität zu verleihen und sie über ein gemeinsames physisches Netzwerk miteinander zu verbinden, was die Flexibilität und Skalierbarkeit von virtuellen Netzwerken erhöht.
(jp)