Eclipse Ponte: REST gegen das Babylonische Sprachengewirr des Internet-of-Things

Hartmut Schlosser

Sie halten die mobile Revolution für eine der bedeutenden Entwicklungen der letzten Jahre? Nun, da haben Sie sicher nicht unrecht, bringen die Smartphones und Tablets uns doch die Möglichkeit, das gesamte Internet quasi in der Hosentasche mitzuführen. Die diversen Internet-Dienste integrieren sich immer mehr in unser Alltagsleben – vorbei die Zeiten, in denen allein die fest installierten Desktop PCs der Geeks und Internet Cafés den Zugang zu E-Mails, Wikipedia und E-Commerce ermöglichten.  

Doch hier bleibt die Entwicklung nicht stehen. Der nächste Schritt besteht darin, nicht nur Menschen über Kommunikationsgeräte miteinander zu vernetzen, sondern auch die Alltagsgegenstände, mit denen wir es zu tun haben. Die Auswirkungen dieser „Internet of Things“-Bewegung werden von Experten mindestens so groß eingeschätzt wie die der mobilen Revolution. 2020 soll die Zahl der vernetzten Objekte bereits 10 Mal so groß sein wie die der Telefonie-Devices – die Schätzungen liegen bei 50 Milliarden vernetzten „Dingen“.

Die Vision: Jedes Objekt muss prinzipiell mit jedem anderen Objekte kommunizieren können. Und wie bei der menschlichen Kommunikation brauchen auch Objekte einen Code, der von anderen, möglichst allen anderen, verstanden wird. Doch eine echte Lingua Franca für die Machine-to-Machine-Kommunikation gibt es derzeit noch nicht. Da liegt es nahe, statt eines künstlichen „Esperanto-Versuches“ – die Erfindung eines neuen „universellen Protokolls“, das auch wieder nur ein Fragment der zerklüfteten Sprachenlandschaft sein kann – auf Übersetzung zu setzen.

Unter dem Dach der Eclipse Foundation wurde deshalb ein Projekt vorgeschlagen, das als Brücke zwischen den verschiedenen Kommunikationsstandards der M2M-Welt dienen soll. Dieses „Ponte“ genannte Projekt stellt einerseits ein einfaches REST API bereit, das verschiedene Protokolle wie MQTT, CoAP und Datenformate wie JSON, XML, Msgpack oder Bysant versteht. Andererseits soll eine sichere Lösung entwickelt werden, über die die Kommunikation der Devices abgewickelt werden kann. Basierend auf OAuth 2 soll diese Lösung in Geräte eingebettet werden können und es erlauben, die Zugriffsberechtigungen feingranular zu regeln.

Die verschiedenen Message-Formate sollen über JSON integriert werden. Über Converter APIs, die in Ponte via Plug-ins eingebunden werden, können Formate sogar in andere Formate übersetzt werden.

Das Ponte-Projekt baut auf dem Quellcode von QEST auf, einer auf GitHub bereitliegenden Lösung zur Verbindung von REST mit dem MQTT-Protokoll. Der ursprüngliche QEST-Entwickler Matteo Collina von der Universität Bologna wird auch hinter dem Eclipse-Ponte-Projekt stehen. Als Mentor tritt Benjamin Cabé auf, M2M-Experte bei Sierra Wireless und Vorstand der Eclipse M2M-Working Group (vor kurzem übrigens auf der Keynote-Bühne der JAX zu sehen).

Das Ponte-Projekt reiht sich also ein in die immer stärker werdende M2M-Sparte bei Eclipse, in der mit dem mihini-Framework, dem paho-Messaging-Projekt und dem koneki-Tooling bereits ein starkes Terzett am Start ist. Eine Entwicklung, die man im Auge behalten sollte.

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Hartmut Schlosser ist Redakteur und Online-Koordinator bei Software & Support Media. Seine Spezialgebiete liegen bei Java-Enterprise-Technologien, JavaFX, Eclipse und DevOps. Vor seiner Tätigkeit bei S & S Media studierte er Musik, Informatik, französische Philologie und Ethnologie.
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.