ScholarGate
Assistent

Software-Defined Networking

Software-Defined Networking trennt die Steuerungsebene (Control Plane) eines Netzwerks von seiner Datenebene (Data Plane), wodurch Routing- und Richtlinienentscheidungen auf einen logisch zentralisierten, programmierbaren Controller verlagert werden, der das Weiterleitungsverhalten einfacher Switches über eine offene Schnittstelle konfiguriert.

Thema finden mit PaperMindDemnächstFind papers & topics
Tools & resources
Folien herunterladen
Learn & explore
VideoDemnächst

Definition

Software-Defined Networking ist eine Netzwerkarchitektur, bei der die Steuerungsebene von der Datenebene entkoppelt und logisch zentralisiert und programmierbar gemacht wird, sodass ein Controller Weiterleitungsregeln in ansonsten einfache Paketweiterleitungsgeräte installiert.

Scope

Dieses Thema behandelt das SDN-Paradigma: die Trennung einer logisch zentralisierten Steuerungsebene von verteilten Weiterleitungsgeräten, die Match-Action-Abstraktion, mittels derer Switches Pakete gemäß vom Controller installierten Flussregeln weiterleiten, die Southbound-Schnittstelle (insbesondere OpenFlow) zwischen Controller und Switches sowie die Northbound-Schnittstelle, über die Anwendungen das Netzwerkverhalten programmieren. Es behandelt die Vorteile von SDN für Programmierbarkeit und Traffic Engineering sowie seine Herausforderungen hinsichtlich Skalierbarkeit und Ausfallsicherheit. Es schließt die traditionellen verteilten Routing-Protokolle aus, mit denen es kontrastiert wird.

Core questions

  • Wie trennt SDN die Steuerungsebene von der Datenebene und warum?
  • Was ist die Match-Action- (Flusstabellen-) Abstraktion, die von SDN-Switches verwendet wird?
  • Welche Rolle spielen die Southbound- (z.B. OpenFlow) und Northbound-Schnittstellen?
  • Welche Vorteile bietet die zentralisierte, programmierbare Steuerung für Traffic Engineering und Innovation?
  • Welche Herausforderungen hinsichtlich Skalierbarkeit, Latenz und Ausfallsicherheit birgt eine zentralisierte Steuerungsebene?

Key concepts

  • Trennung von Steuerungsebene und Datenebene
  • logisch zentralisierter Controller
  • Match-Action (Flusstabellen)
  • OpenFlow (Southbound-Schnittstelle)
  • Northbound-APIs
  • Netzwerkprogrammierbarkeit
  • Traffic Engineering
  • Skalierbarkeit und Ausfallsicherheit des Controllers

Key theories

Trennung von Steuerungs- und Datenebene
SDN zerlegt die Netzwerkfunktionalität in einen programmierbaren, logisch zentralisierten Controller, der das Weiterleitungsverhalten bestimmt, und einfache Switches, die lediglich installierte Regeln ausführen, wodurch die pro Gerät verteilte Steuerung traditioneller Netzwerke ersetzt wird.
Match-Action-Weiterleitung und OpenFlow
SDN-Switches leiten Pakete weiter, indem sie Header-Felder mit Einträgen in Flusstabellen abgleichen und zugehörige Aktionen anwenden; das OpenFlow-Protokoll standardisierte, wie ein Controller diese Tabellen herstellerübergreifend programmiert, was eine herstellerneutrale Programmierbarkeit ermöglichte.
Abstammung programmierbarer Netzwerke
SDN ist der Höhepunkt einer langen Reihe von Arbeiten zur Programmierbarkeit von Netzwerken und zur Trennung von Steuerung und Weiterleitung, basierend auf aktiven Netzwerken, Bemühungen zur Trennung der Steuerungsebene und zentralisierten Netzwerkbetriebssystemen.

Clinical relevance

SDN hat die Art und Weise, wie große Netzwerke aufgebaut und betrieben werden, neu gestaltet: Cloud-Anbieter und Rechenzentren nutzen die zentralisierte Steuerung für ein feingranulares Traffic Engineering, die Isolation zwischen Mandanten und die schnelle Bereitstellung neuer Netzwerkfunktionen, und Weitverkehrs-Backbones nutzen sie zur Optimierung der Auslastung. Die Programmierbarkeit beschleunigte auch die Netzwerkforschung und -innovation, indem sie es den Betreibern ermöglichte, das Verhalten in Software zu definieren, anstatt auf neue Hardware zu warten.

History

Software-Defined Networking entstand aus früheren Forschungen zu programmierbaren und aktiven Netzwerken sowie Bemühungen zur Trennung der Steuerungsebene von der Weiterleitung. Der OpenFlow-Vorschlag von 2008 bot eine praktische, implementierbare Schnittstelle zur Steuerung von Switch-Flusstabellen, was eine schnelle Akzeptanz in der Forschung und dann in großen Rechenzentren und Weitverkehrsnetzen katalysierte, wie in späteren intellektuellen Historien des Feldes beschrieben.

Debates

Zentralisierte Steuerung versus verteilte Robustheit
Die Zentralisierung der Steuerungsebene vereinfacht die globale Optimierung und Programmierbarkeit, wirft jedoch Bedenken hinsichtlich eines Single Point of Failure, der Skalierbarkeit des Controllers und der Latenz bei der Konsultation des Controllers auf; praktische SDN-Designs replizieren und verteilen Controller, um die Robustheit wiederherzustellen.

Key figures

  • Nick McKeown
  • Scott Shenker
  • Jennifer Rexford
  • Nick Feamster

Related topics

Seminal works

  • mckeown2008
  • feamster2014
  • kurose2021

Frequently asked questions

Welches Problem löst SDN?
Traditionelle Netzwerke bündeln Steuerung und Weiterleitung in jedem Gerät und konfigurieren diese einzeln, was netzwerkweite Richtlinien und Innovationen langsam und fehleranfällig macht. SDN zentralisiert die Steuerungslogik in Software mit einer globalen Sicht, sodass Betreiber konsistentes, netzwerkweites Verhalten programmieren und neue Funktionen wesentlich schneller bereitstellen können.
Ist der SDN-Controller ein Single Point of Failure?
Logisch ist die Steuerungsebene zentralisiert, in der Praxis wird sie jedoch als ein verteiltes, repliziertes Set von Controllern für Fehlertoleranz und Skalierung implementiert. Die Steuerungsebene ist 'logisch zentralisiert' und nicht physisch eine einzelne Maschine, sodass das Netzwerk bei Ausfall einzelner Controller weiterbetrieben werden kann.

Methods for this concept

Related concepts