8.5.1. SEA ohne VLAN-Tagging

Wird kein VLAN-Tagging verwendet (äußerst unwahrscheinlich für die meisten Umgebungen), werden für einen SEA nur 2 Adapter benötigt, ein Trunking-Adapter für die Anbindung an den virtuellen Hypervisor Switch und ein physikalischer Adapter für die Anbindung an ein externes Netzwerk. Der Trunking-Adapter kann IEEE802.1q kompatibel sein, muß er aber nicht, da ja kein VLAN-Tagging verwendet wird. Für die anzugebende PVID kann ein beliebiges VLAN verwendet werden, die gewählte VLAN-ID wird nur innerhalb des virtuellen Switches verwendet.

Wie schon im Kapitel über Virtual Ethernet besprochen, sollte jedes angebundene externe Netzwerk einen eigenen virtuellen Switch verwenden, um die extern getrennten Netze nicht innerhalb des Managed Systems zusammen zuführen. Daher legen wir zunächst einen neuen virtuellen Switch mit dem Kommando „ms addvswitch“ an:

$ ms addvswitch ms05 ETHTEST1
$

Dem neuen virtuellen Switch ETHTEST1 sind noch keine VLANs bekannt:

$ ms lsvswitch ms05
NAME  VSWITCH             SWITCH_MODE  VLAN_IDS
ms05  ETHNAS             VEB          1,2,13,19
ms05  ETHERNET0(Default)  VEB          1,2,100,110,200
ms05  ETHCTRL           VEB          1,2
ms05  ETHTEST1            VEB          none
$

Für den benötigten Trunking-Adapter wird eine freie Slot-Nummer benötigt, wir listen daher alle verwendeten virtuellen Slots auf, um eine geeignete freie Slot-Nummer auszuwählen:

$ lpar lsvslot ms05-vio1
SLOT  REQ  ADAPTER_TYPE   STATE  DATA
0     Yes  serial/server  1      remote: (any)/any connect_status=unavailable hmc=1
1     Yes  serial/server  1      remote: (any)/any connect_status=unavailable hmc=1
10    No   eth            1      PVID=100 VLANS= ETHERNET0 A556570DFD0A
20    No   eth            1      PVID=1 VLANS= ETHCTRL A556570DFD14
21    No   eth            1      TRUNK(1) IEEE PVID=1 VLANS=100,110 ETHERNET0 A556570DFD15
22    No   eth            1      TRUNK(1) IEEE PVID=2 VLANS=200 ETHERNET0 A556570DFD16
40    No   eth            1      PVID=2 VLANS= ETHCTRL A556570DFD28
41    No   eth            1      TRUNK(1) IEEE PVID=1 VLANS=13 ETHNAS A556570DFD29
42    No   eth            1      TRUNK(1) IEEE PVID=2 VLANS=19 ETHNAS A556570DFD2A
$

Als Slot-Nummer für den Trunking-Adapter haben wir uns für den freien Slot 51 entschieden. Der Trunking-Adapter kann mit dem Kommando „lpar addeth“ (add virtual ethernet) angelegt werden. Dabei muß eine Trunking-Priorität (1-15) angegeben werden. Zusätzlich muß der zu verwendende virtuelle Switch und die Slot-Nummer für den Adapter angegeben werden. Als PVID verwenden wir hier die VLAN-ID 1:

$ lpar addeth -t 1 -s ETHTEST1 ms05-vio1 51 1
$

(Hinweis: Die Angabe einer Trunking-Priorität macht den virtuellen Ethernet-Adapter zu einem Trunking-Adapter!)

Das Kommando „vios lssea“ bietet die Option ‚-c‘ (candidates), um mögliche Kandidaten für einen Shared Ethernet Adapter aufzulisten. Dabei werden sowohl Kandidaten für den physikalischen Adapter des SEA, als auch Kandidaten für die Trunking-Adapter des SEA aufgelistet:

$ vios lssea -c ms05-vio1
NAME   STATUS     PHYSLOC                      PARENT  DESCRIPTION
ent3   Available  U78AA.001.VYRGU0Q-P1-C7-T4   pci1    4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent2   Available  U78AA.001.VYRGU0Q-P1-C7-T3   pci1    4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent1   Available  U78AA.001.VYRGU0Q-P1-C7-T2   pci1    4-Port Gigabit Ethernet PCI-Express Adapter (e414571614102004)
ent38  Available  U8205.E6C.05E4E5Q-V1-C51-T1  vio0    Virtual I/O Ethernet Adapter (l-lan)
$

Die Option ‚-c‘ ist sehr nützlich auf größeren Systemen mit einer Vielzahl von Adaptern. Es werden nur unbenutzte Adapter angezeigt. Adapter die in anderen SEAs schon in Verwendung sind, werden nicht aufgelistet.

Der gerade angelegte Trunking-Adapter in Slot 51 ist der Ethernet Adapter ent38. Der physikalische Port ent1 soll für den neu anzulegenden SEA verwendet werden. Das Kommando um einen SEA anzulegen ist „vios mksea“ (make SEA). Es muß mindestens der physikalische Adapter für den SEA, erstes Argument nach dem Namen des Virtual-I/O-Servers, und ein Trunking-Adapter angegeben werden:

$ vios mksea ms05-vio1 ent1 ent38
SEA ent39 created
$

Möchte man alle zu einem SEA zugehörigen Adapter (virtuelle und physikalische) sehen, kann die Option ‚-a‘ (all adapters) von „vios lssea“ verwendet werden:

$ vios lssea -a ms05-vio1 ent39
SEA    LNAGG  NAME   TYPE     STATUS  SPEED    VSWITCH   MODE  PHYSLOC
ent39  -      ent1   real     Up      1000 Mbps Full Duplex  -         -     U78AA.001.VYRGU0Q-P1-C7-T2
ent39  -      ent38  virtual  -       -        ETHTEST1  VEB   U8205.E6C.05E4E5Q-V1-C51-T1
$

Der physikalische Adapter ent1 (Spalte TYPE, Wert real) hat den Status Up und hat aktuelle eine Geschwindigkeit von 1000 Mbps. Der einzige Trunking-Adapter (Spalte TYPE, Wert virtual) ist an den virtuellen Switch ETHTEST1 angebunden.

In Bild 8.3 ist der neu angelegte SEA dargestellt. In der linken oberen Client-LPAR wird ein ungetaggtes Ethernet Frame über den virtuellen Ethernet Adapter ent0 der LPAR (mit PVID 1) an den virtuellen Hypervisor Switch ETHTEST1 weitergeleitet. Der Frame wird mit einem VLAN-Tag für die PVID 1 versehen und zum Trunking-Port für das VLAN 1 weitergeleitet. Dort wird das VLAN-Tag wieder entfernt (da die VLAN-ID mit der PVID des Trunking-Ports übereinstimmt) und dann an den SEA ent39 des Virtual-I/O-Servers als untagged Ethernet Frame weitergeleitet. Der SEA gibt das Ethernet Frame über seinen physikalischen Adapter ent1 an das angebundene externe Netzwerk als untagged Frame weiter.

Transport of an Ethernet frame with tagging and untagging on the virtual switch ETHTEST1.
Bild 8.3: Transport eines Ethernet Frames mit Tagging und Untagging auf dem virtuellen Switch ETHTEST1.

Untagged Frames aus dem externen Netz an eine LPAR innerhalb des Managed Systems nehmen den umgekehrten Weg.

Client-LPARs müssen die PVID 1 verwenden, wenn sie mit der Außenwelt Daten austauschen wollen, da es nur für das VLAN 1 einen Trunking-Port gibt!