Open Source im professionellen Einsatz
Linux-Magazin 10/2016
© anyka, 123RF

© anyka, 123RF

Open Network Operating System

Macht in SDN

Onos ist als Projekt zwar jünger als Open Daylight, mausert sich aber zu einer ernst zu nehmenden Konkurrenz im SDN-Bereich. Das Linux-Magazin inspiziert das Reich des Netzwerk-Betriebssystems.

725

Das Open Network Operating System (Onos, [1]) ist eine SDN-Plattform, die darauf abzielt, proprietäre, unflexible und teure Netzwerk-Black-Boxes zu öffnen. Diesen Markt dominieren seit Jahren ein paar hochpreisige Anbieter. Den primären Support für das Onos-Projekt liefert das Open Networking Lab (On.lab, [2]), eine gemeinnützige, im kalifornischen Menlo-Park ansässige Organisation. Sie arbeitet zurzeit an Version 1.7.0 (Codename Hummingbird), der mittlerweile achten Release von Onos.

Zum Team von Onos gehören diverse weitere Zuträger, darunter Service Provider wie AT&T, China Unicom, NTT Communications und Anbieter wie Alcatel Lucent, Ciena, Cisco und Ericsson. Zudem kooperiert das Onos-Projekt seit dem Oktober 2015 mit der Linux Foundation [3]. Zusammen mit Open Daylight [4] gehört Onos dank seiner konstanten Entwicklung, der aktuellen Dokumentation, dem Community-Support und den praktischen Anwendungsfällen zu den zwei Größen in dem noch jungen SDN-Ökosystem.

Drei Hauptziele beschreibt das Projekt auf seiner Webseite. Es will Partner gewinnen, hochqualitative SDN-Software (Netzwerk-OS-Software) produzieren und Open-Source-Prozesse schaffen, mit denen Mitarbeiter möglichst produktiv arbeiten. Das Projekt erhofft sich aus der Kooperation aller am Projekt Beteiligten einen deutlichen Mehrwert. Der äußerte sich zunächst in Form sorgfältig verfasster Wiki-Einträge und einer gepflegten Mailingliste, die sich von der lückenhaften Dokumentation des Open-Daylight-Projekts abhoben.

Wohl auch um das zu leisten, steigerte Onos innerhalb von ein paar Monaten die Zahl seiner Zuarbeiter deutlich. Vielleicht als Reaktion verfeinert das Open-Daylight-Projekt seine Dokumentation in letzter Zeit ebenfalls.

Architektur

Bei Onos handelt es sich um eine modulare, erweiterbare und verteilte Controller-Infrastruktur. Sie ist in Java verfasst und steht unter Apache-2.0-Lizenz. Seine Modularität und Erweiterbarkeit verdankt das Projekt der Implementierung als Apache-Karaf-Container [5]. Verteilt arbeitet es aufgrund einer eigens für Onos entworfenen Architektur. Ein Netzwerkbetreiber kann mehrere Onos-Instanzen als Cluster laufen lassen. Dies synchronisiert die Dienste und Anwendungen der SDN-Devices automatisch und visualisiert das Netzwerk als Ganzes in einer Überblicksansicht.

Daneben unterstützt Onos eine breite Auswahl an Southbound-Interface-Protokollen, mit denen SDN-Controller und Switches sowie Router kommunizieren. Dazu gehört Open Flow [6] in den Versionen 1.0 und 1.3, die von Anbietern hauptsächlich unterstützten Varianten. Hinzu kommen Netconf [7] und das Open Vswitch Database Management Protocol (OVSDB, [8]) für die Gerätekonfiguration.

Wie Abbildung 1 zeigt, ist Onos aus funktional verbundenen Ebenen [9] konstruiert. Die Anwendungsebene thront über allen und ist Konsument des Northbound-API. Am Fuß des Stapels sammeln sich Netzwerkelemente, die über spezifische Protokolle (Open Flow, Netconf und weitere) mit Onos reden. Das verwandelt sie in protokollunabhängige Provider, die das Southbound-API formen.

Abbildung 1: Die Architektur von Onos funktioniert Protokoll-agnostisch, die Anwendungen auf Basis der Plattform verwenden das Northbound-API.

Im Zentrum zwischen Northbound- und Southbound-API steckt mit dem Core-Element eine funktionale Einheit, die verschiedene Dienste anbietet. Die bestehen aus einem oder mehreren Subsystemen (Device, Host, Link und so weiter), die sich einerseits auf Basis von Informationen formieren, die von den Providern stammen. Andererseits tragen sie zu den APIs für die Anwendungen bei.

Abbildung 2 zeigt die Beziehungen der Subsystem-Komponenten zueinander [9]. Die gepunkteten Linien repräsentieren die Northbridge- und Southbridge-APIs. Anwendungen fragen Dienste aktiv ab, verwalten sie oder ergänzen Listener für Dienste-Events. Läuft Open Flow im Netzwerk und ist der Open-Flow-Provider aktiv, erzeugt ein neues Netzwerkpaket, das auf einem Netzwerkgerät eintrifft, ein »PacketIn« -Event.

Abbildung 2: Die Beziehungen der Stack-Komponenten zueinander. Die Anwendungen können Listener aktivieren, die auf Events reagieren.

Der Listener kann sich für ein Event registrieren und darauf reagieren. Eine Anwendung, die solche Events konsumiert, lässt sich unabhängig von der Protokollversion ausführen, auch wenn der Provider nicht aktiv ist. Die Manager-Komponente vermittelt zwischen Applikationen, Diensten und Providern. Stores synchronisieren Informationen zwischen mehreren Onos-Instanzen, was das erwähnte Cluster-Feature ermöglicht.

Intents programmieren

Ein charakteristisches Subsystem von Onos ist das Intent Framework. Mit ihm entwerfen Entwickler Anwendungen auf einer höheren Abstraktionsebene, indem sie dem Netzwerk schlicht mitteilen, was es erledigen soll, und nicht, wie es dies erreicht.

Will ein Netzwerkbetreiber zum Beispiel, dass Host A mit Host B redet, teilt er das Onos direkt mit: "Ich will, dass A mit B kommuniziert." Andere SDN-Controller erfordern, dass Netzwerker mit eingehenden Paketen hantieren und einen Flow Entry für jedes Netzwerkgerät in dem Pfad anlegen.

Logisch sammelt das Intent-Framework-Subsystem, um seine Aufgabe zu erfüllen, Informationen von anderen Subsystem-Komponenten (Topologie, Host). Allerdings ist es noch nicht ausgereift genug und die Entwickler arbeiten an einer reicheren Syntax.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 4 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Open Daylight

    An den Grundlagen kommender SDN-Produkte arbeiten namhafte Unternehmen gemeinsam im Open-Source-Projekt Open Daylight. Im Februar 2014 erblickte dessen erste Code Release das Tageslicht.

  • Open Daylight veröffentlicht erste Release

    Open Daylight, ein Projekt der Linux Foundation, hat die erste Release seines freien Stacks für Software Defined Networking (SDN) mit dem Codenamen Hydrogen veröffentlicht.

  • Linuxcon Europe: Software Defined Networking mit Open Daylight

    Auf der Linuxcon und Cloud Open Europe hat sich das Projekt Open Daylight vorgestellt, das einen freien Controller für Software Defined Networking (SDN) entwickelt.

  • Oracle tritt Open-Daylight-Projekt bei

    Oracle hat sich als Silver Member dem Open-Daylight-Projekt angeschlossen und will Open Daylight in Solaris 11.2 integrieren.

  • Enterprise-Produkte

    Während Open Flow von Idealen und der Technik getrieben ist, zählt für Konzerne zuerst die Frage, wie sich Software Defined Networking monetarisieren lässt. Vor allem VMware, aber auch Midokura, Cisco und IBM bringen eigene Ansätze als Konkurrenz zu Open Flow.

comments powered by Disqus

Ausgabe 09/2017

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.