Post on 12-Aug-2019
© Copyright 2016 ComConsult Research GmbH, Aachen
Netzdesigns im Vergleich
Markus Gellergeller@comconsult-research.com
Überblick:
• Ausgangslage• Layer 2 Design mit SPB / TRILL
• Layer 3 Design mit BGP
• Layer 4 Design mit QUIC
• Lösungen mit VMware NSX und Cisco ACI
Das Problem mit der Last …
Wir kennen heute zwei Arten von Datenströmen im Rechenzentrum:
Client Anfrage
Hintergrund Prozess
Die Anfragen werden eingesammelt und in Nord-Süd Richtung an die Server verteilt
Parallel bestehen aber auch Hintergrund-Prozesse wie: Compute & Syncronize
Klassisches Netzdesign geht aber von überwiegendem Nord-Süd Verkehr aus
Quelle: Petr Labukhov, Microsoft
MC-LAG
RSTP
Der klassische Designansatz …
Die Edge-Switche werden über Layer 2 an den Distribution-Layer angebunden
Nachteil:
• (R)STP – Keine Lastverteilung
• MC-LAG – Implementierungen sind oft noch proprietär
• Umzug einzelner Hosts ist stark eingeschränkt, wenn die IP Identität beibehalten werden soll (mangelnde zentrale Steuerung)
• Layer 2 Domänen sind Broadcast anfällig
• Bandbreite orientiert sich an der Nord-Süd Ausrichtung
Layer 3
Layer 2
Modernes Netzdesign im RZ muss sich aber immer mehr mit Ost-West Verkehr beschäftigen …
• Die Virtualisierungstechnik ermöglicht die schnelle und dynamische Verlagerung von Diensten und Ressourcen unabhängig vom Netzdesign
• Serverfarmen werden als Multi-Tier Modelle betrieben, deren Hauptverkehrslast intern bleibt
• Storage wird als hochverfügbare IP-Lösung eingebunden
• Die Anzahl der Serverports nimmt immer weiter zu, dies erfordert einen Scale-Out Ansatz beim Netzdesign
• Daraus ergibt sich eine Erhöhung der benötigte Bandbreite für den Ost-West Verkehr
• Ausgangslage
• Layer 2 Design mit SPB / TRILL• Layer 3 Design mit BGP
• Layer 4 Design mit QUIC
• Lösungen mit VMware NSX und Cisco ACI
Switch Fabric mit SPB / TRILL
Ansatz:
• Aufbau einer engmaschigen Netzwerktopologie
• Einsatz aller verfügbaren Leitungswege zum Datentransport
• Vermeidung von (R)SPT
Problem:
Zwei konkurrierende Standards
• SPB, IEEE 802,3aq
• TRILL, IETF RFC 6325 u.a.
SwitchFabric
ToR
ToR
Layer 2
Der TRILL Ansatz:
• 16 Bit Ethertype (0x22F3)
• 2 Bit Protokollversion (V)
• 2 Bit reserviert (R)
• 1 Bit Multi-Destination-Bit (M)
• 5 Bit Option Length
• 6 Bit Hop Count
• 16 Bit Egress RBridge Name
• 16 Bit Ingress RBridge Name
Quelle: Whitepaper SPB vs TRILL Geller / Höchel-Winter, ComConsult Research
Und so geht es mit SPB …
Quelle: Whitepaper SPB vs TRILL Geller / Höchel-Winter, ComConsult Research
Funktionen & Unterschiede im Überblick …
Quelle: Whitepaper SPB vs TRILL Geller / Höchel-Winter, ComConsult Research
Vorteile:
• Lastverteilung: ECMP
• Plug & Play, wie beim SPT oder der LAG
• Scale Out Design
• Optimiert für den Ost-West und Nord-Süd Verkehr
Nachteile:
• Reines Layer 2 Design
• Broadcast-Problematik bleibt
• Umzug von Hosts, unter Beibehaltung der IP, weiterhin problematisch, da keine zentrale Steuerung über einen Controller (Logik kommt aus dem Netz)
• Komplexe Header Strukturen in beiden Fällen
• Ausgangslage
• Layer 2 Design mit SPB / TRILL
• Layer 3 Design mit BGP • Layer 4 Design mit QUIC
• Lösungen mit VMware NSX und Cisco ACI
Wenn es einmal etwas mehr wird …
Der Ansatz, ein Layer 3 Verfahren wie BGP im RZ zu implementieren richtet sich an Betreiber großer Serverfarmen:
• Microsoft
sind Beispiele für einen solchen Einsatz
Quelle: Petr Labukhov, Microsoft
SDN Use Cases aus der Sicht von Microsoft …
Nicht so viele wie man glauben mag!
Web-Scale Rechenzenten sind sehr einfach
Vieles an erforderlicher Logik wird bereits auf die Server geschoben
• z.B. virtualisierte Software
• Verkehrsfilterung, Statistik Sammlung und Analyse
• Loadbalancing und Mobilität
Das Netzwerk sollte daher so weit wie möglich vereinfacht werden
Aber einige Anforderungen an das Netz bleiben:
• Automatisches Re-Routing der Pakete bei Störungen
• ECMP bzw. wenn gewünscht Un-ECMP
• Verlagerung eines Datenstromes von Links oder Switches (graceful shutdown)
Das Design der Implementierung bei Microsoft …
• Clos Topologie für die Netzwerk-Fabric
• 100K Bare-Metal-Server und mehr!
• Als IETF-Entwurf verfügbar
• ECMP
• Nur Layer-3 ( keine VLANs, kein SPT )
• Routing bewusst einfach gehalten
• Weniger aufwändig als IGP, daher geringere Kosten
• Konvergiert schnell genug, bei richtiger Abstimmung
• Ein einzelnes Protokoll verringert die Komplexität
• Wird von Microsoft so schon seit über 4 Jahre betrieben
Verfolgte Ziele …
• Nutzung von vorhandenenProtokollen / Funktionalitäten
• Gelegentliches außer Kraft setzen des Routingverhaltens mittels SDN
• Soweit wie möglich aber an der normalen Paketweiterleitung mittels Routing festhalten
Out of Scope …
• Netzwerk-Virtualisierung oder Segmentierung
• Per-Flow, hochgranulare Verkehrskontrolle
• Unterstützung für nicht gerouteten Verkehr (zum Beispiel L2 VPN)
• Optimierung der bestehenden Protokolle oder das Erfinden neuer
• Volle Kontrolle über alle Aspekte des Netzwerkverhaltens (Low-Level)
Die Topologie im Detail …
• Scale-Out Clos Design
• Mehrfache, parallele ClosTopologie
• Geringe Port Anzahl pro Switch
• Horizontal erweiterbar oberhalb des ToR Layers
• SDN Controller am Spine
• Inject Route CommandsPrefix+NextHop+RouterID
Leaf
Spine
ToR
SDN Controller
Routing Design für diesen Ansatz …
BGP Routing bis in den ToR Layer hinein
Separate BGP ASN für jeden ToR Switch
Quelle: Petr Labukhov, Microsoft
Die Vorteile dieses Ansatzes …
• Nie wieder Layer 2 Probleme
• Einfacher Scale-Out wenn mehr Bandbreite benötigt wird
• Einfache L3 Switch-Komponenten senken die Investitionskosten
• Einheitliches Routing Protokoll
• Kein Interworking / keine Redistribution von Routen
• Aufgrund der einsehbaren AS Pfade ein erleichtertes Trouble-Shooting
Anforderungen an das BGP …
• BGP AS Path Multipath
• Private BGP ASN
• Vereinfacht das Verstecken ASN im WAN (Entfernen der privaten ASN)
• Mehrfach-Nutzung privater ASN im ToR Layer
Das ist nicht bei allen Herstellern/Produkten gegeben!!
• Ausgangslage
• Layer 2 Design mit SPB / TRILL
• Layer 3 Design mit BGP
• Layer 4 Design mit QUIC• Lösungen mit Vmware NSX und Cisco ACI
QUIC - Ein neues UDP Protokoll ?!
Was ist QUIC (Quick UDP Internet Connections)?
1. Ein Transportprotokoll irgendwo zwischen UDP und TCP
2. Es erweitert UDP um Funktionen aus dem TCP
3. Ist immer verschlüsselt
4. Unterstützt Multipath
5. Es ist speziell für HTTP Anwendungen gedacht
6. Google will das Verfahren bei der IETF vorstellen, aber nicht standardisieren lassen
Hauptanliegen von QUIC ist : besserer Datendurchsatz
• Erreicht wird dies unter anderem durch Reduktion der Round Trips zwischen Client und Server
• Statt des üblichen TCP Handshake – oder den im Falle einer per TLS verschlüsselten Verbindung erforderlichen drei Round Trips – ist meist kein einziger notwendig
• Im ersten Paket können, sofern der Diffie-Hellman-Schlüsselaustausch schon mal vollzogen wurde, bereits erste Applikationsdaten abgeschickt werden
• QUIC-Pakete werden nicht durch IP-Adressen identifiziert, sondern durch 64 Bit lange, eindeutige Verbindungs-IDs
• Übertragungen überleben daher IP-Adressänderungen etwa beim Wechsel vom WLAN zum Mobilfunk und kommen auch mit der NAT zurecht
Quelle: heise.de
Möglicher Designansatz …
• Multi-Tier Serverfarmen kommunizieren über HTTPS
• Wandert ein Front-End Server, muss er seine Layer 3 Identität nicht mehr mitnehmen
• Der Back-End Server erkennt eine Session jetzt über die 64 Bit Verbindungs-ID
Voraussetzung:
• Client – Server Konstellation auch innerhalb des Multi-Tier Modells
• Keine Echtzeit Anwendung bzw. kein Anspruch an Ultra Low Latency
• Ausgangslage
• Layer 2 Design mit SPB / TRILL
• Layer 3 Design mit BGP
• Layer 4 Design mit QUIC
• Lösungen mit VMware NSX und Cisco ACI
VMware NSX im Überblick …
Quelle: VMware, NSX Network-Virtualization Design-Guide
Die Data-Plane …
Die NSX Data Plane wird durch den NSX vSwitch realisiert
Dieses Modul läuft innerhalb des Hypervisor Kernel, einschließlich der folgenden Dienste:
• verteiltes Routing
• verteilte Firewalls
• VXLAN to VLAN Bridging
Der vSwitch abstrahiert das physische Netzwerk vom eigentlichen Netzzugang. Dies wird über den Hypervisor realisiert.
Das ist von zentraler Bedeutung für die Netzwerk-Virtualisierung, da es logischeNetzwerke ermöglicht, die unabhängig sind vom physikalischen Aufbau des Transportnetzes.
Und wie geht das jetzt genau …
Das Mittel der Wahl bei VMware heißt VXLAN und es ermöglicht folgende Funktionen:
• Schaffung eines flexiblen logischen Layer 2 Overlay über ein bestehendes IP-Netzwerk, auf einer vorhandenen physischen Infrastruktur
• Bereitstellung von Nord-Süd wie Ost-West Kommunikation zwischen isolierten Tenants
• Application Workloads und VMs, die sich verhalten, als wären sie direkt über das physikalische Netzwerk miteinander verbunden
Der VXLAN Header im Detail …
Quelle: VMware, NSX Network-Virtualization Design-Guide
Informationen zum VXLAN Protokoll …
• VXLAN ist eine L2 über L3 (L2oL3) Encapsulierung
• Das original Ethernet-Frame mit seiner Payload wird in äußere VXLAN, UDP, IP und Ethernet-Header eingekapselt, so dass ein Transport über die Netzwerkinfrastruktur zu den VXLAN Endpunkten (VTEPs) realisiert werden kann (z.B. ESXi Host)
• Um eine Skalierung über die Beschränkung auf 4094 VLANs hinaus zu ermöglichen, wurde eine 24-Bit-Kennung, VXLAN Network Identifier (VNI), eingeführt, die jedem L2 Segment in der jeweiligen logischen ESXi Umgebung zugeordnet wird
• Dieser Wert im Inneren des VXLAN-Header wird in der Regel einem IP-Subnetz zugeordnet (ähnlich einem VLAN)
Vorteile:
• Verlagerung von Hosts inkl. ihrer IP Identität egal wohin
• ECMP ist möglich
• Zentrale Steuerung der Kommunikation innerhalb des logischen Netzes
• Einbindung zusätzlicher Dienste wie logischer Loadbalancer oder Firewalls
Nachteile:
• Komplexe Header-Struktur
• Keine Kontrolle über das physikalische Netzwerk
• Grundlage ist immer ein funktionierendes L3 Netz Design
• Das Gesamtkonstrukt aus beiden Netzen (physikalisch, wie logisch) ist sehr komplex
Cisco ACI Übersicht …
Grundlagen:
• Nexus 9000 Switch Serie
• Hypervisor Integration (KVM, Vmware, Microsoft)
• APIC Controller
• Integrierte Dienste auf Layer 4-7
Quelle: Mike Herbert,Cisco
Auch hier wieder der Blick auf die Data-Plane …
Die Forwarding Entscheidung wird an Hand der IP Header Information getroffen (Default)
• Die Weiterleitung auf Layer 2 für internen Subnet-Verkehr erfolgt dabei konventionell (kein TRILL)
Die Regel daher lautet: Route if MAC is router MAC, otherwise bridge
Quelle: Mike Herbert,Cisco
Gestaltung des Overlay Netzwerkes …
Auch Cisco setzt für den Transport über das Layer 3 Netz auf VXLAN
Ebenso wie bei VMware bilden die VTEPs die Übergänge zwischen den Netzen
Quelle: Mike Herbert,Cisco
Die Steuerung der Datenströme …
Die Weiterleitungsregeln werden über sogenannte EPG Policysgesteuert und im APIC verwaltet bzw. über den APIC verteilt
Vorteile:
• Verlagerung von Hosts inkl. ihrer IP Identität egal wohin
• ECMP ist möglich
• Zentrale Steuerung der Kommunikation innerhalb des logischen und des physikalischen Netzes
• Einbindung zusätzlicher Dienste wie logischer Loadbalancer oder Firewalls
Nachteile:
• Bindung an einen Hersteller und an eine Switch-Plattform
• Komplexer Netzwerkaufbau
• Die Definition von EPG und Policy im APIC setzt ein komplexes Verständnis der Abläufe im Rechenzentrum voraus