Was ist NVGRE und VXLAN?

Dec 09, 2020 Eine Nachricht hinterlassen

Definition von NVGRE

Der NVGRE-Standard wurde von Microsoft, Arista, Intel, Hewlett-Packard, Dell und Broadcom vorgeschlagen. Es ist eine Methode für die Netzwerkvirtualisierung und stellt eine große Anzahl virtueller lokaler Netzwerke für Subnetze durch Kapselungs- und Tunneltechnologie bereit. NVGRE ist der Ansicht, dass das virtuelle lokale Netzwerk über verteilte Rechenzentren und Datenverbindungsebene und Netzwerkebene erweitert werden kann, sodass das virtuelle lokale Netzwerk Subnetze bereitstellt, sodass das Netzwerk mit mehreren Mandanten und Lasten ausgleichend in lokalen und Cloud-Umgebungen gemeinsam genutzt werden kann.

Insgesamt zielt NVGRE darauf ab, eine Reihe von Problemen zu lösen, die durch die Unfähigkeit virtueller lokaler Netzwerke verursacht werden, in einer komplexen virtualisierten Umgebung zu arbeiten, und Netzwerksegmente zu erweitern, wenn die Fernübertragung nicht in verstreuten Rechenzentren durchgeführt werden kann.


Definition von VXLAN

Die VXLAN-Spezifikation wurde von Cisco, VMware, Citrix, Red Hat, Arista, Broadcom usw. erstellt. Es handelt sich um eine Netzwerkvirtualisierungstechnologie, die VLAN erweitert und das aktuelle Problem unzureichender virtueller Netzwerke in großen Rechenzentren lösen soll. Tatsächlich haben Netzwerkingenieure virtuelle lokale Netzwerke verwendet, um Cloud-Anwendungen und Mandanten in Cloud-Computing-Rechenzentren zu trennen, aber virtuelle lokale Netzwerke erlauben nur die Zuweisung von bis zu 4096 Netzwerk-IDs zu einem bestimmten Zeitpunkt, was bei weitem nicht ausreicht für große Cloud-Computing-Rechenzentren. Daher entstand VXLAN. VXLAN erweitert den virtuellen lokalen Netzwerkadressraum durch Hinzufügen von 24-Bit-Segment-IDs und erhöht damit die Anzahl der verfügbaren IDs auf 16 Millionen. Gleichzeitig werden Cloudanwendungen und Mandanten logisch getrennt. Die VXLAN-Segment-ID in jedem Frame kann jedes logische Netzwerk und jede Netzwerk-ID des Mandanten unterscheiden, sodass Millionen unabhängiger VXLAN-Netzwerke der Ebene 2 mit einer gemeinsamen Layer-3-Infrastruktur koexistieren können. Weitere Informationen zu VXLAN finden Sie unter "QinQ vs VLAN vs VXLAN".


Was ist der Unterschied zwischen NVGRE und VXLAN?

Aus dem obigen, kann man sehen, dass NVGRE und VXLAN haben den gleichen Zweck und fast die gleiche tatsächliche Nutzung, aber es gibt auch einige Unterschiede in der Übertragung Protokoll, Datenpaketformat, Übertragungsmodus, und Fragmentierung.

VXLAN

Der Unterschied im Paketformat

Das Paketformat ist der offensichtlichste Unterschied zwischen VXLAN und NVGRE. Der Paketheader von VXLAN enthält ein 24-Bit-ID-Segment (das 16 Millionen eindeutige virtuelle Segmente darstellt), das normalerweise von einem Pseudo-Zufallsalgorithmus am UDP-Port generiert wird (UDP-Port wird vom ursprünglichen MAC-Hash im Frame von generiert). Auf diese Weise wird der Lastenausgleich basierend auf 5-Tupeln sichergestellt und die Reihenfolge der Datenpakete zwischen virtuellen Maschinen (VMs) gespeichert, indem die MAC-Gruppe im Datenpaket einer eindeutigen UDP-Portgruppe zugeordnet wird. Die VXLAN-Kapselung erweitert die Größe des Datenpakets auf 50 Byte, wie in der folgenden Abbildung dargestellt:

VXLAN



Obwohl NVGRE 16 Millionen virtuelle Netzwerke wie VXLAN unterstützen kann, verwenden seine Datenpakete die unteren 24 Bit des GRE-Headers als Tenant Network Identifier (TNI). Um einen Flow bereitzustellen, der die Granularität der Bandbreitenauslastung beschreibt, muss das Übertragungsnetzwerk den GRE-Header verwenden, wodurch NVGRE mit dem herkömmlichen Lastenausgleich nicht kompatibel ist. Dies ist auch der größte Unterschied zu VXLAN und der größte Nachteil.


Unterschiedliche Übertragungsmethoden

VXLAN verwendet Multicast im Transportnetzwerk, um Broadcast-, unbekannte Unicast- und Multicast-Überflutungen im Layer-2-Segment zu simulieren. Dies ist für MAC-Adress-Lern- und Adressauflösungsprotokoll (ARP) und Nachbar-Erkennung im VXLAN-Arbeitsprozess-Protokoll (NDP/ND) und so weiter sind sehr wichtig. Um den Lastenausgleich zu verbessern, verwendet NVGRE in der Regel mehrere IP-Adressen auf jedem NVGRE-Host, um sicherzustellen, dass mehr Datenverkehr geladen werden kann. NVGRE muss sich nicht mehr auf Überflutungen und IP-Multicast sondieren, sondern sendet flexibler.

NVGRE



Verschiedene Übertragungsprotokolle

VXLAN verwendet ein Standardübertragungsprotokoll, nämlich TCP/UDP-Protokoll; während NVGRE ein allgemeines Routing-Kapselungsprotokoll verwendet, nämlich das GRE-Protokoll. Darüber hinaus wird ersteres von Cisco angetrieben und letztere wird von Microsoft unterstützt.



Der Unterschied beim Sharding

NVGRE unterstützt die maximale Übertragungseinheit fragmentierter Datenpakete, die die Größe interner virtueller Netzwerkdatenpakete reduzieren können, ohne dass ein Übertragungsnetzwerk erforderlich ist, um die Übertragung großer Frames zu unterstützen. VXLAN unterstützt jedoch keine Fragmentierung, es benötigt ein Übertragungsnetzwerk, das große Frames unterstützt, um die Erweiterung der Datenpaketgröße zu tragen.


Schlussfolgerung

Insgesamt sind VXLAN und NVGRE fortschrittliche Netzwerkvirtualisierungstechnologien, die Tunneling implementieren. Sie erweitern die Größe virtueller Netzwerke von 4094 auf 16 Millionen und ermöglichen die Übertragung von Layer 2-Paketen in Layer-3-Netzwerken, sodass große Daten in der Regel Netzwerkgeräte hinzufügen, die NVGRE und VXLAN unterstützen, um das Netzwerk zu erweitern. Beispielsweise überwindet die Verwendung von Switches, die NVGRE und VXLAN unterstützen, die Einschränkungen virtueller lokaler Netzwerke in großen Rechenzentren und bietet eine agilere Netzwerkumgebung für virtuelle Maschinen.