Wer sich in den letzten Monaten mit der IT-Szene beschäftigt hat, der trifft neben der allgegenwärtigen Wolke immer häufiger auch auf andere Themen, die quasi im Rahmen der Cloud groß werden. Eines davon ist Software Defined Networking, kurz SDN. Hinter diesem etwas sperrigen Begriff verbirgt sich eine relativ simple Idee: Statische Netzwerkkonfigurationen, wie sie in IT-Setups typischerweise zur Anwendung kommen, funktionieren in Clouds mehr schlecht als recht, verhindern manchmal sogar, dass sich die Cloud-Software effektiv nutzen lässt. Indem die gesamte Netzwerkkonfiguration per Software definiert wird, lassen sich Einschränkungen umgehen, die aus der Verknüpfung der Konfiguration mit physischen Geräten herrühren. SDN ist derweil nicht die einzige Technik, bei der Software Hardware ablöst: Auch das Software Defined Storage ist derzeit im Aufwind.
Um die Motivation hinter Software Defined Networking gerade im Kontext von OpenStack oder jeder anderen Cloud-Umgebung zu verstehen, hält man sich zuerst vor Augen, welche impliziten Annahmen im Hinblick auf IT-Netzwerke meist von vornherein vorhanden sind. Drei Faktoren spielen eine Rolle:
Zusammen haben diese drei Annahmen zu typischen Netzwerk-Designs in der IT geführt. Einzelne Kunden haben entweder ihren eigenen Switch oder sind – zur Gewährleistung von Sicherheit – in einem separaten VLAN am Switch untergebracht. Mehrere vorhandene Switche sind gegebenenfalls sternförmig konfiguriert, die zentrale Verwaltung erfolgt durch den Anbieter, wobei die Planung der einzelnen Netzwerktopologien durchaus den jeweiligen Kunden überlassen sein kann.
Für Clouds funktioniert keine der drei Annahmen. Das geht schon damit los, dass in einer Cloud alle Hypervisor-Hosts zwangsläufig gleichberechtigt sein sollten, damit jeder Hypervisor-Host die VMs jedes Kunden betreiben kann; ein solches System macht auch VLANs sehr unkomfortabel. Überdies wollen Anbieter durch die Installation einer Cloud-Software dafür sorgen, dass Kunden sich in Form eines Service-Portals selbst die Dienste buchen können, die sie brauchen. Ein neuer Kunde muss also in der Lage sein, sich anzumelden und sofort in der eigenen Netzwerkumgebung VMs zu starten, ohne dass dafür das Eingreifen eines Admins notwendig ist. Diese Anforderung kegelt VLANs endgültig aus dem Spiel. Schließlich ist die Entwicklung von Cloud-Netzwerken praktisch kaum sinnvoll vorhersagbar. Denn ein neuer Kunde, der etliche Terabyte Traffic pro Monat produziert, kann sich jederzeit anmelden, ohne das vorher anzukündigen – der Cloud-Anbieter tut gut daran, auf solche Szenarien vorbereitet zu sein.