Einleitung
Dieses Dokument beschreibt Software Defined Networking (SDN) als einen neuen Netzwerkansatz, der herkömmliche Netzwerkarchitekturen ergänzt. Die ursprüngliche Definition von SDN ist mit OpenFlow verknüpft.
Ziele von OpenFlow SDN
Hier sind die wichtigsten Ziele für OpenFlow SDN.
- Verbesserte Netzwerkskalierbarkeit:
- Reduzierung der Netzwerkkomplexität
- Ermöglicht eine bessere Anwendungskontrolle.
- Ermöglichen Sie die Funktionsunabhängigkeit.
- Dies wird durch die Trennung der Kontroll- und Datenebenen und die Standardisierung der Datenebene erreicht. Die Kontrollebene wird als allwissende, komplexe, verteilte Software implementiert, die auf leistungsstarken Multicore-Servern ausgeführt wird.
- OpenFlow ist eine Spezifikation der Open Networking Foundation (ONF), die eine Flow-basierte Weiterleitungsinfrastruktur (Switch-Modell) und eine standardisierte programmatische Anwendungsschnittstelle (Protokolldefinition) definiert.
- Mit OpenFlow kann ein Controller die Weiterleitungsfunktionen eines Switches über einen sicheren Kanal leiten. Die Konfiguration des lokalen Geräts liegt außerhalb des Anwendungsbereichs des OpenFlow-Protokolls.
Zusammenfassung
Dies ist der Wasserhahn OpenFlow Controller:
- OpenFlow 1.3 Switches (einschließlich TFM-Tabelle und Funktionsmeldung)
- Layer-2-Switching, VLANs, ACLs, Layer-3-IPv4- und -IPv6-Routing, statisch und über BGP
- Bereitstellung als Ersatz für einen L2/L3-Switch im Netzwerk, um zusätzliche SDN-basierte Funktionen zu ermöglichen
- OpenFlow ist ein völlig anderes Weiterleitungsparadigma, da es die identische Catalyst 9000-Hardware und -Software verwendet.
- Der Modus kann zwischen OPENFLOW und NORMAL umgeschaltet werden, ein Neustart ist erforderlich.
OpenFlow ist das Protokoll zwischen dem Controller (Kontrollebene) und dem Ethernet-Switch (Datenebene). Der Switch verfügt über Flow-Tabellen, die in einer Pipeline angeordnet sind, und die Flows sind Regeln zum Untersuchen der Pakete.
Ein Datenfluss gibt Folgendes an:
- Zuordnungskriterien
- Priorität
- Zu erledigende Aktionen für das Paket
- Timeouts
Beispielpipeline:
Hinweis: Obwohl es keine Funktionsabhängigkeiten gibt, muss der Switch im OpenFlow-Modus gestartet werden. Verfügbare Plattformen im OpenFlow-Modus, Catalyst Switches der Serie 9000 - 9300/9400/9500/9500-H
Cisco Implementierung (OpenFlow-Modus auf Cat9k)
Dasselbe Image für den normalen und den OpenFlow-Betrieb wird verwendet.
Der Switch muss sich im OpenFlow-Modus befinden.
ott-of-c9k-210#show boot mode
System initialized in openflow forwarding mode
System configured to boot in openflow forwarding mode
All the front panel ports are openflow ports (no hybrid mode)
Changing the boot mode (reload mandatory)
ott-of-c9k-210(config)#boot mode openflow
Laden Sie den Switch neu.
Überprüfen Sie, ob sich der Switch im OpenFlow-Modus befindet.
of-switch# show boot mode
System initialized in openflow forwarding mode
System configured to boot in openflow forwarding mode
“no boot mode openflow” followed by reboot reverts to normal mode.
CAT9300#show run openflow
feature openflow
openflow
switch 1 pipeline 1
controller ipv4 10.104.99.42 port 6653 vrf Mgmt-vrf security none
controller ipv4 10.104.99.42 port 6633 vrf Mgmt-vrf security tls
controller ipv4 10.104.99.42 port 6637 vrf Mgmt-vrf security tls local-trustpoint tp-blue
Es werden heute insgesamt 8 Controller unterstützt!
Konfiguration und Betrieb von IPV6-Controllern werden ebenfalls unterstützt.
Befehlsoptionen unter OpenFlow |
Zweck |
Switch 1 Pipeline 1 |
Switch 1 und Pipeline 1 ist die einzige Wahl auf C9ks |
Controller ipv4 10.104.99.42 Port 6653 vrf Mgmt-vrf Security keine |
Controller ohne Sicherheit |
Controller ipv4 10.104.99.42 Port 6633 vrf Mgmt-vrf Security tls |
Controller mit TLS, verwendet globale TLS-Vertrauenspunktkonfiguration |
Controller ipv4 10.104.99.42 Port 6637 vrf Mgmt-vrf security tls local-trustpoint tp-blue |
Controller mit tls, verwendet lokale tlstrustpoint-Konfiguration, jedoch entfernt von globalem tlstrustpoint |
Max-Backoff 10 |
Max. Zeit zum Wiederholen der OpenFlow-Verbindung bei Ausfall der Controller-Verbindung; Standardwert: 8 Sek. |
Tastintervall 10 |
Das Zeitintervall für das Testen der OpenFlow-Verbindung mit der Verbindung wird deaktiviert, der Standardwert ist 5 Sekunden. |
rate-limit packet_in 2000 burst 3000 |
Paketratenlimit des Controllers, Standardwert ist 0 |
Statistikerhebungsintervall 6 |
Häufigkeit zum Sammeln von Flow-Statistiken; der Standardwert ist 5 Sek. |
Datenpfad-ID 0x1 |
switch datapath unique-id, wenn der unkonfigurierte Standardwert ((1<<48) | system-mac-addr) |
Default-Miss-Controller |
Paket, das keinem Fluss entspricht, kann auf den Controller gelocht werden. Standardmäßig wird |
Protokollierung Flow-Ändern |
Löscht die Flow-Modus-Informationen als Protokoll in Show-Protokollierung, nicht standardmäßig aktiviert |
tls trustpoint local tp-local remote tp-remote |
Global TLS-Vertrauenspunkt für sichere Controller-Verbindung# |
Fehlerbehebung/Debugging
Das Debuggen auf der Controllerseite wird in diesem Dokument nicht behandelt.
Nicht alle Ihre üblichen Plattform-CLIs werden auf dem Openflow Switch unterstützt. Wählen Sie nur zulässige CLIs für das Debugszenario aus, und verwenden Sie sie.
Weitere Befehle und Referenzen finden Sie in diesem Konfigurationsleitfaden: https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/prog/configuration/174/b_174_programmability_cg/openflow.html#id_76495
Befehle anzeigen - IOS®
Command |
Zweck |
Laufen zeigen -konfig. Durchfluss |
Zeigt die Informationen zur aktuellen OpenFlow-Konfiguration an. |
show openflow switch number controller |
Zeigt Informationen über die OpenFlow-Agent-Verbindung mit dem Controller an. |
vorführen Durchfluss switch Zahl Flows-Liste |
Zeigt Informationen über die installierten OpenFlow-Flows an. |
vorführen Durchfluss switch Zahl ports |
Zeigt Informationen zum Status des OpenFlow-Agent-Ports an. |
vorführen Durchfluss Hardware Funktionen |
Zeigt die Hardware-Funktionen an, wie z. B. Anzahl der Tabellen, Tabellengröße, unterstützte Übereinstimmung/Aktion/Versäumnis. |
vorführen Durchfluss switch Zahl Gruppen |
Zeigt Informationen zu OpenFlow-Gruppen an. |
vorführen Durchfluss switch Zahl Statistiken |
Zeigt Statistiken der OpenFlow-Schnittstelle (rx/tx), Statistiken der OpenFlow-Tabelle (max. Flows pro Tabelle, aktive Flows pro Tabelle, Anzahl der Suchvorgänge und Übereinstimmungen) an. |
vorführen Durchfluss switch Zahl Controller-Statistiken |
Zeigt Statusinformationen des/der OpenFlow-Controllers/s an. |
Befehle anzeigen - Hardware:
Command |
Zweck |
show plattform software fed switch aktiv Durchfluss status |
Zeigt Statistiken an, wie viele Nachrichten installiert/erfolgreich/gelöscht wurden. |
show plattform software fed switch aktiv Durchfluss fließen ID |
Zeigt Informationen zu einem bestimmten Datenfluss an. |
show plattform software fed switch aktiv Durchfluss gruppe |
Zeigt Hardwareinformationen zu Flussgruppen an. |
show plattform hardwaregespeister switch aktiv fwd-asisch Ressource Nocken Nutzung |
Zeigt Hardwareinformationen zur TCAM-Verwendung an. |
show platform software fed <switch> active openflow error [brief] | Veranstaltung | Detail] |
Listen Sie alle OpenFlow-Fehler auf, falls diese aufgezeichnet wurden. |
show platform software fed <Switch> active openflow table [<Tabellen-ID> | Zuordnung]
|
Mit diesem Befehl können Sie die Tabellen-ID für Funktionen/Übereinstimmungsfunktionen und die Größe der Tabelle angeben. |
show plattform software fed switch active openflow event
|
Zeigt die Liste der Ereignisse in jeder Tabelle mit der Zeit an, die für eine Aktion in Bezug auf den Datenfluss (Hinzufügen, Löschen, Aktualisieren) benötigt wurde. |