Bessere Performance und steigende Komplexität gehen in den Netzwerken oft Hand in Hand. Neue effizientere Technologien sollten aber für mehr Geschwindigkeit bei Vereinfachung der Prozesse sorgen. Wie lässt sich SDN einordnen, bringt die Netzwerkrevolution den Turbo ins Netzwerk bei deutlicher Reduzierung der Komplexität?
Im Laufe der Netzwerkgeschichte wurden schon viele Effizienzverbesserungen angekündigt und häufig auch umgesetzt. Allerdings wird im Allgemeinen eine Effizienzsteigerung durch eine höhere Komplexität erkauft. Der klassische Verbrennungsmotor in den Autos ist hierfür ein typisches Beispiel. Frühe Motorenversionen waren sehr einfach aufgebaut und erbrachten dafür relativ geringe Leistung. Im Laufe der Zeit wurden die Vier-Takt-Motoren weiterentwickelt mit oben liegenden Nockenwellen für eine bessere Ventileffizienz. Dies führte jedoch für eine Zunahme der Motorkomplexität. Heute verfügen wir standardmäßig über Turbolader oder Kraftstoffeinspritzungen in den Verbrennungsmotoren. Die hochkomplexen Motorsysteme benötigen inzwischen Bordcomputer zur Steuerung des Gesamtsystems. Ohne diese Computertechnik wäre das heutige Höchstmaß an Effizienz nicht zu erreichen. Den Preis den die Nutzer dafür bezahlen, besteht darin, dass die modernen Autos nur noch von Spezialisten zu reparieren sind.
Allerdings gibt es auch Beispiele, die belegen, dass neue Technologie die Komplexität reduzieren kann und gleichzeitig neue Maßstäbe für die Effizienz setzt. Die RISC- (Reduced-Instruction-Set-Computing-)Prozessoren sind hierfür ein gutes Beispiel. Auch die Virtual-Machine-Technologie ist so ein positiver Beleg. Ein VM-System ist nicht komplexer als ein Standard-Betriebssystem der Computer. Durch die VM-Technologie wird das Client-OS standardisiert, weniger komplex und die Server wie auch der Storage-Pool werden besser ausgelastet
In welche Kategorie fällt SDN?
Netzwerke basieren heute auf einem komplexen Satz von Protokollen zur Weiterleitung der zur Übertragung zwischen Sender und Empfänger anstehenden Datenströme. Das Routing hat sich von den einfachen Distance-Vector-Protokollen hin zu den komplexeren Link-State-Protokollen entwickelt. Höhere Verfügbarkeit und die Notwendigkeit die Datenströme für unterschiedliche Verkehrsarten über unterschiedliche Routen zu transportieren, führt zwangsläufig zu einer Integration eines Policy-Routings. Bedenkt man, dass man eine Multi-Protokoll-BGP-Konfiguration für die Realisierung von Layer-3-VPNs benötigt, entsteht eine ziemlich komplexe Netzwerkkonfiguration. Ein solches Netzkonstrukt lässt sich nur mit gehörigem Aufwand managen und die Fehlersuche wird durch die ineinander verschachtelten Protokolle nicht einfacher. Außerdem leidet oftmals die Redundanz unter den komplexen Protokollabhängigkeiten.
Es stellt sich natürlich die Frage, ob durch die Realisierung von SDN stabilere Netzwerkstrukturen realisiert werden können. Vielleicht, aber vielleicht auch nicht. Es hängt alles davon ab, wie SDN implementiert und bereitgestellt wird. Momentan ist bei Software-Defined-Networking und den verschiedenen Spielarten noch alles im Fluss und ich bin mir noch nicht ganz schlüssig, ob SDN zu einer Effizienzsteigerung führen wird. Es gibt einfach noch zu wenig Erfahrung im Markt und SDN wird bis zur endgültigen Marktreife sicherlich noch durch einige Modifikationen gehen.
Wahrscheinlich wird es den einen oder anderen Fehlstart geben und die SDN-Verweigerer werden diese lauthals propagieren. Davon sollten wir uns jedoch nicht entmutigen lassen, denn die von SDN angestrebten Vorteile rechtfertigen die Änderungen in den Netzstrukturen. Betrachtet man die Komplexität der Protokollstrukturen in den derzeitigen Netzwerken, dann kommt man schnell zu dem Schluss, dass es einen besseren, einfacheren Weg geben muss, die Netzwerke zu konfigurieren, zu steuern und zu überwachen. Das SNMP-Protokoll gehört heute immer noch zu den besten Möglichkeiten für das Netzwerk-Monitoring. Es liefert jedoch nur ein grundlegendes Performance-Monitoring. Zur Netzwerkkontrolle nutzt man heute das CLI, als einzigen gangbaren Weg. Die unterschiedlichen CLI-Implementationen weisen eine Reihe von Problemen auf, welche keine langfristige Lösung darstellen. Auch eine XML-basierte Konfigurationskontrolle löst diese Probleme nicht vollständig.