Netzwerkvirtualisierung mit Generic Routing Encapsulation (NVGRE)
Was ist NVGRE (Netzwerkvirtualisierung mithilfe von Generic Routing Encapsulation)?
NVGRE steht für „Network Virtualization using Generic Routing Encapsulation“. Es handelt sich um ein Tunnelprotokoll, das GRE (Generic Routing Encapsulation) verwendet, um Ethernet-Frames in IP-Pakete zu kapseln. Dadurch können virtuelle Layer-2-Segmente (L2) auf Layer-3-Netzwerken (L3) erstellt werden.
Seit Mitte der 1990er-Jahre ist VLAN (Virtual LAN) eine weitverbreitete Technologie zur Erstellung logischer (virtueller) L2-Segmente auf physischen Switches. Der VLAN-Standard sieht zur Identifizierung logischer L2-Segmente jedoch nur eine 12-Bit-VLAN-ID vor. Dadurch ist die Anzahl der Segmente auf etwa 4.000 begrenzt, weshalb VLAN für große Netzwerke ungeeignet ist. NVGRE wurde entwickelt, um diese Einschränkung zu überwinden.
Bei NVGRE ist die VSID (Virtual Subnet ID) zur Identifizierung logischer L2-Segmente auf 24 Bit erweitert, sodass bis zu etwa 16 Millionen L2-Segmente erstellt werden können. Da NVGRE logische L2-Segmente auf L3-Netzwerken aufbaut, können außerdem einzelne logische L2-Segmente erstellt werden, die sich über mehrere durch Router verbundene VLANs erstrecken.
Diese Funktion ist insbesondere in Szenarien wie der Live-Migration virtueller Maschinen zwischen verschiedenen physischen Servern von Vorteil. Normalerweise können Live-Migrationen über L2-Domänen hinweg zu Problemen führen, etwa zu einer Änderung des IP-Subnetzes. Dadurch werden neue IP-Adressen für die migrierten virtuellen Maschinen erforderlich und auf Clientseite sind Anpassungen nötig, um auf die neuen Adressen zuzugreifen. Da NVGRE jedoch selbst über Router hinweg ein einheitliches L2-Segment aufrechterhält, werden diese Probleme wirksam vermieden.
Die Praxis, mithilfe von Tunnelprotokollen logische Netzwerke über bestehenden physischen Netzwerken zu erstellen, wird als Netzwerk-Overlay bezeichnet. Zu den weiteren Technologien, die ähnlich wie NVGRE Netzwerk-Overlays nutzen, gehört VXLAN. Die Netzwerkvirtualisierung mittels Overlay-Techniken ist eine zentrale Komponente bei der Implementierung von SDN (Software-Defined Networking), einem softwarebasierten Ansatz zur Verwaltung von Netzwerkkonfigurationen.
