Überblick
Software-Defined Networking (SDN) ist ein Ansatz für die IT-Infrastruktur, der Netzwerkressourcen in ein virtualisiertes System extrahiert. Das ist die sogenannte Netzwerkvirtualisierung. SDN trennt Weiterleitungs- von Steuerungsfunktionen im Netzwerk mit dem Ziel, ein Netzwerk zu schaffen, das zentral gemanagt und programmiert werden kann. Es erfolgt also eine Trennung von Control Plane und Data Plane. Mit SDN kann ein IT-Operations-Team den Netzwerkverkehr in komplexen Netzwerktopologien über ein zentrales Panel steuern, anstatt jedes Netzwerkgerät manuell zu bedienen.
Vorteile von Software-Defined Networking im Vergleich zu traditionellen Netzwerken
Unternehmen setzen SDN ein, um auf die Einschränkungen traditioneller Infrastrukturen zu reagieren. Zu den Vorteilen von SDN gehören:
- Trennung von Control Plane und Data Plane: Die Control Plane, die bestimmt, wie Datenpakete weitergeleitet werden, ist zentralisiert und in softwarebasierten Controllern implementiert. Die Data Plane, die für die eigentliche Weiterleitung von Datenpaketen über das Netzwerk zuständig ist, verbleibt in hardwarebasierten Netzwerkgeräten – allerdings in vereinfachter und ausschließlich auf die Paketweiterleitung ausgelegter, spezialisierter Form. Bei traditionellen Netzwerken sind Control Plane und Data Plane normalerweise in Netzwerkgeräte wie Switches, Router und Zugangspunkte integriert. Dadurch entfällt eine zentrale Kontrolle.
- Zentrale Kontrolle: SDN bietet eine zentrale Kontrolle, da Netzwerkrichtlinien und Konfigurationen von einem zentralen Controller gemanagt und umgesetzt werden. Bei traditionellen Netzwerken sind diese auf verschiedene Netzwerkgeräte verteilt.
- Geringere Kosten: Eine SDN-Infrastruktur ist häufig kostengünstiger als eine Hardwareinfrastruktur, da sie auf handelsüblichen Servern und nicht auf kostspieligen Spezialgeräten ausgeführt wird. Sie hat auch einen kleineren IT-Footprint, da mehrere Funktionen auf einem einzelnen Server ausgeführt werden können. Dies bedeutet, dass weniger physische Hardware benötigt wird, was zu einer Ressourcenkonsolidierung und damit zu Einsparungen bei Platz- und Stromverbrauch sowie bei den Gesamtkosten führt.
- Höhere Skalierbarkeit und Flexibilität: Durch die Virtualisierung Ihrer Netzwerkinfrastruktur können Sie Ihre Netzwerkressourcen nach Belieben bedarfsgerecht erweitern oder verringern, statt ständig neue proprietäre Hardware anschaffen zu müssen. SDN bietet Ihnen enorme Flexibilität, was auch eine Self Service-Provisionierung der Netzwerkressourcen ermöglichen kann.
- Programmierbarkeit und einfache Automatisierung: Bei SDN definieren Admins Netzwerkrichtlinien und Konfigurationen mithilfe von softwaredefinierter Logik und APIs. Dies ermöglicht eine dynamische Provisionierung und richtlinienbasiertes Management von Netzwerkressourcen, damit zeitnah Deployments erfolgen und auf sich ändernde geschäftliche Anforderungen reagiert werden kann. Bei traditionellen Netzwerken müssen Konfigurationen und das Management von Netzwerkgeräten häufig manuell mithilfe von Befehlszeilen (CLIs) oder gerätespezifischen Konfigurationstools erfolgen.
- Vereinfachtes Management: SDN führt zu einer insgesamt einfacher zu bedienenden Infrastruktur, da für das Management keine hochspezialisierten Netzwerkprofis erforderlich sind.
SDN kann in Verbindung mit SDS (Software-Defined Storage) und anderen Technologien einen Ansatz für die IT-Infrastruktur bilden, der als Hyperkonvergenz bezeichnet wird: ein softwaredefinierter Ansatz für alles.
Software-Defined Networking (SDN) und Network Functions Virtualization (NFV)
Für Telekommunikationsunternehmen gibt es eine andere Art der Netzwerkabstraktion, die als Network Functions Virtualization (NFV) bezeichnet wird. Wie beim SDN extrahiert auch die NFV Netzwerkfunktionen aus der Hardware. Die NFV unterstützt SDN, indem sie die Infrastruktur bereitstellt, auf der die SDN-Software ausgeführt werden kann. Die NFV bietet Anbietern die Flexibilität, Funktionen auf verschiedenen Servern auszuführen oder bei Bedarf zu verschieben, wenn sich die Nachfrage ändert. Durch diese Flexibilität können Service-Anbieter Services und Apps schneller bereitstellen. Wenn ein Kunde beispielsweise eine neue Netzwerkfunktion anfordert, kann er eine neue virtuelle Maschine (VM) starten, die diese Anforderung verarbeitet. Wenn die Funktion nicht mehr benötigt wird, kann die VM außer Betrieb genommen werden. Dies kann eine risikoarme Methode sein, um den möglichen Wert eines neuen Service zu testen.
NFV und SDN können zweckbezogen zusammen verwendet werden. Dabei verwenden beide Standardhardware. Mit NFV und SDN können Sie eine Netzwerkarchitektur erstellen, die flexibler, leichter programmierbar und effizienter bei der Nutzung von Ressourcen ist.
Software-Defined Networking – Architektur und Komponenten
Die SDN-Architektur reflektiert, wie sich Kontrolle und Verantwortung im Vergleich zu traditionellen Netzwerken verschieben.
Die Control Plane ist für allgemeine Entscheidungen darüber verantwortlich, wie Datenpakete durch das Netzwerk weitergeleitet werden. Bei SDN ist die Control Plane zentralisiert und in Software implementiert, die normalerweise auf einem zentralen Controller oder Netzwerkbetriebssystem ausgeführt wird. Der Controller kommuniziert mit Netzwerkgeräten mithilfe von Standardprotokollen wie OpenFlow, NETCONF oder gRPC und bietet so einen Gesamtüberblick über die Topologie und den Zustand des Netzwerks.
Die Data Plane, auch bekannt als Forwarding Plane oder Vermittlungselement, ist für das Weiterleiten von Datenpaketen gemäß den von der Control Plane erteilten Anweisungen im Netzwerk verantwortlich. Bei SDN ist die Data Plane in Netzwerkgeräten wie Switches, Routern und Zugangspunkten implementiert. Diese bezeichnet man als Vermittlungselemente. Diese Geräte erhalten von der Control Plane Anweisungen, wie Pakete weitergeleitet werden müssen, und können vereinfacht oder spezialisiert werden, sodass ihr Zweck ausschließlich in der Paketweiterleitung besteht.
Software-Defined Networking – Komponenten
Innerhalb der SDN-Architektur bestimmen verschiedene Komponenten die Prozessabläufe.
Zwei Typen von APIs (Application Programming Interfaces) ermöglichen die Kommunikation zwischen den Ebenen und dem größeren Netzwerk:
- Southbound-APIs: Southbound-APIs werden in SDN-Architekturen für die Kommunikation zwischen der Control Plane und der Data Plane eingesetzt. Diese APIs erlauben es dem Controller, Netzwerkgeräte zu programmieren und konfigurieren, Informationen zu Topologie und Zustand des Netzwerks abzurufen und Benachrichtigungen über Netzwerkereignisse wie Verbindungsversagen oder Datenstau zu erhalten. OpenFlow gehört zu den gängigen Southbound-APIs. Es wird häufig für die Kommunikation zwischen dem Controller und den Netzwerk-Switches eingesetzt.
- Northbound-APIs: Northbound-APIs werden dazu verwendet, die Funktionalität des SDN-Controllers mit Netzwerkmanagementanwendungen und -services in höheren Ebenen zu verbinden. Diese APIs erlauben es externen Anwendungen, mit dem SDN-Controller zu interagieren, Netzwerkservices anzufragen und Informationen zu Netzwerktopologie, Verkehrsfluss und Performance-Metriken abzurufen. Mithilfe von Northbound-APIs können Netzwerkmanagementaufgaben programmiert und automatisiert sowie Orchestrierungssysteme, Cloud-Plattformen und andere Managementtools integriert werden.
Außerdem ist der SDN-Controller die zentrale Komponente der SDN-Architektur. Er ist verantwortlich für das Implementieren von Netzwerkkontrollfunktionen und die Koordination der Kommunikation zwischen Control Plane und Data Plane. Der Controller bietet eine zentrale Übersicht über das Netzwerk, verwaltet Informationen zum Netzwerkzustand und bestimmt anhand von Netzwerkrichtlinien und -anforderungen, wie Netzwerkgeräte konfiguriert und gemanagt werden. Beispiele für SDN-Controller sind OpenDaylight, ONOS und Ryu.
Netzwerkgeräte wie Switches, Router und Zugangspunkte bilden die Data Plane der SDN-Architektur. Diese Geräte leiten Datenpakete gemäß den Controller-Anweisungen weiter und können über Funktionen wie Flow-based Forwarding, QoS (Quality of Service) und Traffic Engineering unterstützen. Beim SDN werden Netzwerkgeräte oft vereinfacht und standardisiert, um die Programmierbarkeit und Interoperabilität mit dem Controller zu unterstützen.
Management und Orchestrierung (Management and Orchestration, MANO): SDN-Architekturen können auch über Management- und Orchestrierungssysteme verfügen, die für die Provisionierung, Konfiguration und Überwachung von Netzwerkressourcen zuständig sind. MANO-Systeme interagieren mit dem SDN-Controller über Northbound-APIs, um Netzwerkmanagementaufgaben zu automatisieren, die Ressourcenauslastung zu optimieren und Serviceverfügbarkeit und Performance zu gewährleisten.
Im Ergebnis werden bei einer SDN-Architektur die Netzwerkkontrollfunktionen von den Datenweiterleitungsfunktionen getrennt und Netzwerkintelligenz und -management in softwarebasierten Controllern zentralisiert. Außerdem können Netzwerkressourcen durch standardisierte APIs und Schnittstellen programmierbar, flexibel und skalierbar verwaltet werden.
Software-Defined Networking – Sicherheit
SDN wirkt sich auf unterschiedliche Art und Weise auf die Sicherheit aus.
- Da es bei SDN eine zentrale Control Plane gibt, ist das Durchsetzen von Sicherheitsrichtlinien einfacher als bei traditionellen Netzwerkmodellen. Mit SDN können Sicherheitsrichtlinien im gesamten Netzwerk konsistent und einfach durchgesetzt werden, wodurch das Risiko für falsche Konfigurationen sinkt.
- Ein zentraler Controller bietet einen umfassenden Überblick über den Netzwerkverkehr, wodurch potenzielle Risiken infolge der effektiveren Überwachung schneller erkannt werden.
- So ist eine Risikoerkennung und -bekämpfung in Echtzeit möglich, da SDN die Netzwerkkonfigurationen dynamisch anpassen kann, sodass betroffene Segmente isoliert werden oder der Verkehr um die beschädigten Nodes herumgeleitet wird.
- Die zentrale Control Plane kann außerdem zulassen, dass Sicherheitsrichtlinien und Konfigurationen im gesamten Netzwerk automatisch aktualisiert werden. So wird sichergestellt, dass sämtliche Geräte gemäß den aktuellen Sicherheitsstandards zeitnah gepatcht und konfiguriert werden.
- SDN kann eine Mikrosegmentierung herbeiführen, sodass unterschiedliche Netzwerksegmente auf kleine Bereiche beschränkt isoliert werden können. Dadurch wird die Angriffsfläche vermindert und potenzielle Bedrohungen bleiben auf spezielle Segmente beschränkt.
- Die zentrale Protokollierung und Analyse des Netzwerkverkehrs ermöglicht verbesserte Insights in das Netzwerkverhalten und hilft, ungewöhnliche Aktivitäten und potenzielle Sicherheitsverletzungen zu erkennen.
- SDN kann problemlos mit vielen Sicherheitstools wie IDS (Intrusion Detection Systems), IPS (Intrusion Prevention Systems), Firewalls und SIEM-Systemen (Security Information and Event Management) kombiniert werden.
Natürlich gibt es auch bei Software-Defined Networking sicherheitsrelevante Herausforderungen, die in der Regel mit der zentralen Autorität verbunden sind. Zu diesen Herausforderungen gehören:
- Der SDN-Controller ist eine kritische Komponente und daher ein Single Point of Failure. Ein beeinträchtigter Controller kann zu einem kompletten Kontrollverlust über das gesamte Netzwerk führen.
- Der SDN-Controller ist ein hochrangiges Ziel bei Angriffen. Seine Sicherheit ist für die Sicherheit des gesamten Netzwerks von höchster Priorität.
- Außerdem muss durch starke Verschlüsselungs- und Authentifizierungsmaßnahmen die sichere Kommunikation zwischen dem Controller und den Netzwerkgeräten sichergestellt sein, damit keine Nachrichten des Controllers abgefangen, manipuliert oder gefälscht werden können.
- Genauso müssen APIs, die für die Kommunikation zwischen dem Controller und Anwendungen (Northbound-APIs) und zwischen dem Controller und Netzwerkgeräten (Southbound-APIs) verantwortlich sind, gegen unautorisierten Zugriff und Angriffe geschützt werden.
Je mehr sich Netzwerke weiterentwickeln, desto komplexer werden sie natürlich. Das Gleiche gilt für die mit ihrer Hilfe so leicht implementierten Richtlinien. Das Aufrechterhalten von konsistenten Sicherheitsrichtlinien in einer dynamischen SDN-Umgebung mit potenziell großem Umfang kann ein komplexes und fehleranfälliges Vorhaben sein. Eine weitere Herausforderung besteht darin, für Konfliktfreiheit zwischen Sicherheitsrichtlinien und deren konsistente Anwendung zu sorgen.
In Netzwerkarchitekturen müssen Sicherheitslösungen immer gemeinsam mit dem Netzwerk skaliert werden, damit zunehmende Verkehrsmengen und Geräte ohne signifikante Latenzzeiten oder Performance-Engpässe bewältigt werden können. Häufig überwiegen die Vorteile von SDN die damit verbundenen Herausforderungen, da eine zentrale Control Plane für Konsistenz sorgt und Sicherheits-Rollouts vereinfacht.
Software-Defined Networking – Use Cases
Software-Defined Networking (SDN) bietet einen flexiblen, programmierbaren und zentralisierten Ansatz für Netzwerkmanagement, der auf eine Vielzahl von Use Cases in verschiedenen Branchen und Anwendungen angewendet werden kann.
- Bei der Optimierung von Rechenzentren führen die Netzwerkvirtualisierung und das automatisierte Netzwerkmanagement von SDN zu erhöhter Flexibilität und reduzierter Fehlerwahrscheinlichkeit.
- Im Fall von Network Functions Virtualization (NFV) kann SDN traditionelle Netzwerkanwendungen (wie Firewalls und Load Balancers) durch Software ersetzen, die auf handelsüblicher Hardware läuft. So werden die Kosten reduziert und die Flexibilität erhöht. Mithilfe von SDN können Sie Serviceketten einrichten, wo die Daten durch eine Reihe von VNFs fließen. So entstehen benutzerdefinierbare Wege für Datenpakete.
- Im Fall von Campus- und Unternehmensnetzwerken sorgt das zentrale Richtlinienmanagement von SDN für konsistente Sicherheitsrichtlinien im gesamten Netzwerk. SDN kann basierend auf Nutzeridentität, Gerät und Kontext die Zugriffskontrollen auch dynamisch anpassen und so die Sicherheit und das Benutzererlebnis verbessern.
- SDN-Technologie kann für die Optimierung und das Management von WAN-Verbindungen (Wide-Area Network) verwendet werden und so für eine bessere Performance und Zuverlässigkeit von Fernnetzwerkverbindungen sorgen. Davon profitieren besonders Unternehmen mit mehreren Zweigstellen.
- Im Fall von Cloud Computing und Multi Cloud-Integration ermöglicht SDN eine nahtlose Integration und problemloses Management von Multi Cloud-Umgebungen. So können Unternehmen effizient Ressourcen mehrerer Cloud-Anbieter nutzen und gleichzeitig skalierbare, sich dem Bedarf von Cloud-Anwendungen anpassende Netzwerklösungen anbieten.
- In IoT-Netzwerken (Internet of Things) bewältigt SDN die enormen Skalierbarkeitsanforderungen und bietet dynamische Netzwerkkonfigurationen, wenn neue Geräte hinzukommen. Zudem können aufgrund der zentralen Kontrolle konsistente Sicherheitsrichtlinien für sämtliche IoT-Geräte angewendet werden, was das mit ungesicherten Endgeräten verbundene Risiko reduziert.
- Bei 5G-Netzen ermöglicht SDN die Aufteilung in virtuelle Netzabschnitte (Network Slices), wobei jeder Abschnitt für den jeweiligen Servicetyp optimiert ist (beispielsweise niedrige Latenzzeiten für autonome Fahrzeuge, hoher Durchsatz für Videostreams).
- Bei Disaster Recovery und Business Continuity kann SDN Failover-Prozesse automatisieren, sodass Netzwerkservices bei Ausfällen zeitnah wiederhergestellt werden und flexiblere und effizientere Backup-Lösungen für Netzwerke möglich sind. So ist in herausfordernden Zeiten Datenintegrität und -verfügbarkeit gewährleistet.
Wie Red Hat Ihnen mit Software-Defined Networking helfen kann
Bei Red Hat steht die Open Hybrid Cloud – eine ganzheitliche Sicht der Hybrid Cloud unter Einbeziehung von Open Source-Praktiken – im Mittelpunkt. Die Open Hybrid Cloud-Strategie von Red Hat basiert auf der technologischen Basis, die Red Hat Enterprise Linux, Red Hat OpenShift und Red Hat Ansible Automation Platform umfasst. Die Plattformen von Red Hat nutzen das Potenzial der zugrunde liegenden Infrastruktur, um ein konsistentes Cloud-Erlebnis in vielen verschiedenen Umgebungen zu ermöglichen und die IT-Infrastruktur zu automatisieren. Red Hat gehört zu den führenden Unternehmen im Hybrid Cloud-Bereich und unterstützt Tausende von Organisationen bei ihrer Modernisierung.