Netzwerke für virtuelle Strukturen

OpenFlow - die Basis für Software Defined Networks

Netzwerkkonfiguration durch eine zentrale Instanz

Beim Software-Defined Network werden Netzwerkbaugruppen wie Router und Switches von einer zentralen Verwaltungsinstanz gesteuert und konfiguriert. Dazu wird die Kontrollschicht der Netzwerkbaugruppen auf einen zentralen Punkt zusammengezogen. An die Stelle einer verteilten Verwaltung unterschiedlicher Switches oder Router tritt nun das zentrale Management.

Flexibel: Die Flow-Tabelle steuert den Datenflusses. Verwaltet wird sie durch einen eigenständigen Controller.
Flexibel: Die Flow-Tabelle steuert den Datenflusses. Verwaltet wird sie durch einen eigenständigen Controller.
Foto: OpenFlow.org

Dies erlaubt eine weitaus schnellere Reaktion auf die Erfordernisse. An die Stelle des manuellen Patchens von Verbindungen treten programmgesteuerte Kommunikationswege. Dazu müssen die Netzwerkbaugruppen mit einem Programmier-Interface ausgestattet sein. Ferner wird eine Verwaltungssoftware mit angebundener Managementkonsole benötigt. Die Verwaltungskomponenten kennt somit immer den aktuellen Zustand des Netzwerks und kann damit schnell reagieren.

Steuereinheit: So sieht der Header eines OpenFlow-Datenpakets aus.
Steuereinheit: So sieht der Header eines OpenFlow-Datenpakets aus.
Foto: OpenFlow.org

Die Pfade zwischen zwei Knoten - sie werden oftmals als "Flow" bezeichnet - bestimmen den Weg, den ein Paket vom Sender zum Empfänger zurücklegen muss. Dies ermöglicht auch eine dynamische und programmgesteuerte Konfiguration des Netzwerks. Software Defined Networks gehen damit in den Möglichkeiten weiter, als es die Netzwerkverwaltungsprotokolle heute zulassen. Letztere versuchen, durch die Optimierung eines Pfades das bestehende Netzwerk bestmöglich zu nutzen.

Software Defined Networks allerdings setzen vorher an: Sie ermöglichen die Konfiguration eines Netzwerks nach den Anforderungen. Der zentral platzierte Controller verwaltet dabei die Einträge in den Forwarding-Tabellen und bestimmt somit, welchen Weg die Pakete nehmen sollen. Dazu nimmt er dynamisch Einträge in der "Flow-Table" vor oder löscht andere, die nicht mehr benötigt werden.