7.3.1. VLANs und VLAN-Tagging

Jeder virtuelle Ethernet Switch unterstützt VLANs (Virtual Local Area Network) gemäß IEEE 802.1q. Dies bedeutet letztlich das innerhalb eines virtuellen Ethernet Switches alle Ethernet Pakete ein VLAN-Tag besitzen. Erlaubte VLAN-IDs sind 1-4095. Jeder virtuelle Ethernet Adapter besitzt eine sogenannte Port-VLAN-ID (Attribut port_vlan_id), diese muß beim Anlegen eines virtuellen Ethernet Adapters angegeben werden. Wie in Bild 7.4 gezeigt, wird dabei jedem ausgehenden untagged Paket (ein Paket ohne VLAN-Header), durch den Hypervisor, ein VLAN-Header mit der Port-VLAN-ID hinzugefügt. Entsprechend wird bei eingehenden Paketen mit einer VLAN-ID , die gleich der Port-VLAN-ID des Ziel Adapters ist, der VLAN-Header vom Hypervisor wieder entfernt. Damit können LPARs miteinander kommunizieren, ohne selbst VLAN-Header zu verwenden. Pakete mit einem VLAN-Header werden als tagged (markiert) bezeichnet, Pakete ohne VLAN-Header werden entsprechend als untagged (nicht markiert) bezeichnet. Das Hinzufügen eines VLAN-Headers zu einem Paket wird dementsprechend als tagging bezeichnet. Ethernet Adapter die keine VLAN-Header unterstützen, werden oft als VLAN unaware bezeichnet.

VLAN tagging with the port VLAN ID (port_vlan_id)
Bild 7.4: VLAN-Tagging mit der Port-VLAN-ID (port_vlan_id)

Wie das Bild 7.4 demonstriert können Ethernet Adapter die selbst kein VLAN-Tagging verwenden/unterstützen, trotzdem ohne Probleme in einer Umgebung mit VLANs funktionieren, indem vom Switch (hier POWER Hypervisor) das Tagging mit einer Port-VLAN-ID durchgeführt wird.

Ein virtueller Ethernet Adapter kann optional als IEEE 802.1q kompatibel angelegt werden (Attribut ieee_virtual_eth=yes). Er unterstützt dann zusätzlich zu untagged Paketen auch tagged Pakete für eine Liste von VLAN-IDs, die mit dem Attribut addl_vlan_ids angegeben werden können. Über einen virtuellen Ethernet Adapter können dann mehrere verschiedene VLANs von einer LPAR verwendet werden. Dabei muß der virtuelle Ethernet Adapter für die zusätzlichen VLAN-IDs den Paketen einen VLAN-Header hinzufügen. D.h. diese Pakete kommen dann schon als tagged Pakete beim virtuellen Switch an und der Hypervisor muß kein VLAN-Tag mehr hinzufügen.

Bild 7.5 zeigt die Zustellung eines Pakets mit VLAN-ID 200: Die VLAN-ID 200 gehört zu den zusätzlichen VLAN-IDs (addl_vlan_ids) des sendenden virtuellen Ethernet Adapters, daher muß der virtuelle Ethernet Adapter ein tagged Paket generieren. Dieses wird dann unverändert an den virtuellen Ethernet Switch weitergeleitet. Die VLAN-ID 200 gehört auch beim Ziel Ethernet Adapter zu den zusätzlichen VLAN-IDs. Der VLAN-Header wird daher vom Hypervisor nicht entfernt und das Paket wird inklusive VLAN-Header an die Ziel-LPAR über den virtuellen Ethernet Adapter weitergegeben. Der VLAN-Header bleibt während der ganzen Zustellung von der Quell-LPAR bis zur Ziel-LPAR erhalten!

Delivery of tagged packets, here for the VLAN 200.
Bild 7.5: Zustellung von tagged Paketen, hier für das VLAN 200.