REST APIs und SDN: Eine Einführung für Netzwerkspezialisten

Netzwerkexperten müssen sich früher oder später mit den REST APIs von SDN-Controllern und -Anwendungen beschäftigen. Die Technologie wird bleiben.

Netzwerkexperten und Administratoren befinden sich an einem Scheideweg. Auf der einen Seite spielen Protokolle...

wie BGP, IS-IS und MPLS bei Netzwerken eine entscheidende Rolle. Deswegen ist es wichtig, das Wissen für herkömmliches Netzwerken beizubehalten und zu pflegen. Auf der anderen Seite wird Software-defined Networking (SDN) nicht wieder verschwinden.

Neue Fähigkeiten wie zum Beispiel die Programmierbarkeit des Netzwerks stellen Unmengen an neuen Feldern zur Verfügung, die es zu erforschen und zu erlernen gilt. Dieser Artikel soll Netzwerkspezialisten helfen, etwas Licht in eine potenziell kryptische Komponente von SDN und Programmierbarkeit von Netzwerken zu bringen. Wir sprechen von APIs (Application Programming Interfaces).

APIs aus der Sicht eines Netzwerkexperten

Vereinfacht ist ein API eine Schnittstelle einer Software. Ein mögliches Beispiel ist ein Netzwerkbetriebssystem. Die API stellt die Möglichkeit zur Verfügung, Informationen zu erlangen und die darunterliegenden Ressourcen zu modifizieren. Das Innere der Software mag undurchsichtig sein, aber das Konzept ist uns Netzwerkprofis nicht fremd. Ziehen wir Simple Network Management Protocol (SNMP) als Analogie hernran: SNMP stellt die Möglichkeiten zur Verfügung, um Daten wie zum Beispiel Statistiken über Forwarding-Elemente von Schnittstellen zu sammeln. SNMP erlaubt es aber auch, neue Konfigurationen auf Netzwerkgeräte zu übertragen. Auch wenn das nicht der übliche Anwendungsfall für SNMP ist, sollten Sie diesen Aspekt im Hinterkopf behalten. APIs bietet die gleiche Funktionalität für einen größeren Bereich an Softwareanwendungen.

APIs im Zusammenhang mit SDN

Die reine Definition einer API ist für einen Netzwerktechniker möglicherweise nicht sehr nützlich. Sehen wir uns die Sache aus diesem Grund im Zusammenhang mit SDN an. In einem offenen SDN-Modell ist das Northbound Interface (NBI) eine Schnittstelle, über die häufig gesprochen wird. Das NBI ist die Schnittstelle zwischen Softwareanwendungen wie zum Beispiel betriebsbedingten Systemen und einem zentralen SDN-Controller.

Eine der am häufigsten verwendeten API-Technologien im Zusammenhang mit dem Northbound Interface ist die REST API (Representional State Transfer). REST APIs setzen auf die Protokolle HTTP und HTTPS, um übliche Aufgaben mit Ressourcen durchzuführen, die durch eine URI-Zeichenkette (Uniform Resource Identifier) repräsentiert werden.

Um alles auf einen Nenner zu bringen, kommen wir auf den Vergleich mit SNMP zurück. Damit Sie die Schnittstellenstatistiken einer bestimmten Ressource mit SNMP abfragen können, schickt die zuständige Anwendung möglicherweise eine SNMP-GET-Nachricht über die IP-Adresse des sich im Netzwerk befindlichen Gerätes. Die SNMP-Payload enthält den OID (Object Identifier) für die entsprechenden Schnittstellen und Statistiken. Äquivalent dazu schickt eine REST API eine HTTP/HTTPS-GET-Nachricht über die IP-Adresse eines SDN-Controllers. In der Nachricht befindet sich dann eine URI-Zeichenkette, die auf das entsprechende Netzwerkgerät verweist. Außerdem ist eine HTTP-Payload mit einem JSON-Header enthalten, der die korrekten Parameter für ein spezielles Interface und Statistik enthält.

Selbst mit SDN und REST APIs starten

Die meisten Techniker lernen neue Technologien am besten, wenn sie direkt mit ihnen experimentieren dürfen. Sehen wir uns nachfolgend an, wie Sie selbst mit einigen REST APIs spielen können. Die hier aufgezeigten drei Schritte erläutern, wie Sie das bewerkstelligen.

  1. Wenn Sie keine Erfahrung mit dem Programmieren haben, dann besorgen Sie sich im ersten Schritt ein Tool, das REST-API-Aufrufe generieren kann. Für den Browser Chrome gibt es zum Beispiel mehrere Plugins, um REST-API-Nachrichten zu erstellen. Dazu zählen Postman und Advanced REST Client. Wenn Sie Firefox verwenden, dann können Sie das Addon RESTClient nutzen. Es bringt die gleichen Funktionalitäten mit sich. Wer sich auf der Kommandozeile wohl fühlt, der kann das Tool curl einsetzen.
  2. Sehen Sie zweitens zu, dass Sie Zugriff auf einen SDN-Controller oder eine Controller-ähnliche Plattformen bekommen, die REST APIs unterstützen. Ryu und ONOS sind Open-Source-Varianten, die an dieser Stelle in die Presche springen können. Wer sich auf einen bestimmten Anbieter fixieren möchte, der kann zum Beispiel NECs ProgrammableFlow Controller oder Junipers OpenContrail verwenden.
  3. Als dritten Schritt besorgen Sie sich die relevante REST-API-Dokumentation für den entsprechenden Controller oder die Plattformen. Für den Ryu Controller oder OpenContrail sind sie leicht zugänglich. Das Format der Dokumentationen variiert natürlich, aber halten Sie nach ähnlichen Kapiteln Ausschau:
  • URI-Zeichenketten für Anfragen
  • HTTP-Methoden wie zum Beispiel GET, POST, PUT, DELETE
  • JSON/XML Payload und/oder dazugehörige Parameter

Sowohl die Dokumentation für Ryu als auch die für OpenContrail beinhalten Beispiele, wie Sie eine gültige REST-API-Nachricht schicken können.

Unterm Strich müssen wir die APIs im Kontext von SDN durchblicken. Der Grund liegt auf der Hand: SDN repräsentiert neue Technologien und Möglichkeiten, mit denen Netzwerkprofis Herausforderungen angehen und lösen können.

Folgen Sie SearchNetworking.de auch auf Twitter, Google+, Xing und Facebook!

Nächste Schritte

Fünf Open-Source SDN-Controller, die Sie kennen sollten.

Welche SDN-Programmiersprachen Sie beherrschen sollten.

Welche SDN-Schulungen Unternehmen priorisieren sollten.

Warum es an der Zeit ist, Python für SDN zu lernen.

Artikel wurde zuletzt im Oktober 2016 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Erfahren Sie mehr über Software Defined Networking (SDN)

Diskussion starten

Schicken Sie mir eine Nachricht bei Kommentaren anderer Mitglieder.

Mit dem Absenden dieser Daten erklären Sie sich bereit, E-Mails von TechTarget und seinen Partnern zu erhalten. Wenn Ihr Wohnsitz außerhalb der Vereinigten Staaten ist, geben Sie uns hiermit Ihre Erlaubnis, Ihre persönlichen Daten zu übertragen und in den Vereinigten Staaten zu verarbeiten. Datenschutz

Bitte erstellen Sie einen Usernamen, um einen Kommentar abzugeben.

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchDataCenter.de

SearchEnterpriseSoftware.de

Close