Mit BEEP verteilte Anwendungen entwickeln

Der Baukasten für TCP/IP-Protokolle
Kommentare

Neue Anforderungen im Internet der Dinge (IoT) und durch Software as a Service (SaaS) werden von existierenden Netzwerkprotokollen oft nur unzureichend erfüllt. Es wird nach zukünftigen Standards gesucht, um das Problem zu lösen. Das Blocks Extensible Exchange Protocol (BEEP) bietet heute schon alles, was nötig ist. Warum also das Rad neu erfinden?

Das gibt es doch alles schon! Das Internet und die Verbindung zwischen Anwendungen basiert auf einer Vielzahl von Netzwerkprotokollen, jedes für sich spezialisiert auf einen bestimmten Anwendungsfall: FTP für die Übertragung von Dateien, SMTP für das Versenden von E-Mails oder HTTP für die Auslieferung von Webseiten und Daten über einen Internetserver. Warum sollte also etwas Neues gebraucht werden? Bei solchen und ähnlichen Argumentationen im Projektalltag geht es um das Fundament verteilter Systeme, der Verbindung zwischen den Knoten. Hier lohnt es sich genauer hinzusehen, damit Probleme vermieden werden.

Jeder spricht mit jedem

Immer mehr Geräte, die Daten austauschen oder Dienste bereitstellen, werden miteinander verbunden. Dabei spielt es keine Rolle, ob es sich um einen Client oder einen Server handelt. Jeder Knoten im System kann sowohl Daten liefern als auch von einem anderen anfordern. Wird dafür das HTTP-Protokoll verwendet, muss jeder Knoten sowohl Client als auch Server sein. Daten fließen in beide Richtungen, und die Knoten sind gleichberechtigt. Es handelt sich dennoch nicht um eine Peer-to-Peer-Kommunikation, sondern um zwei Client/Server-Verbindungen. Eine Fehlerbehandlung wird dadurch erschwert, und das Potential für Störungen steigt mit Umfang und Komplexität der Kommunikation. Sicherheit gewinnt im Internet zunehmend an Bedeutung. Es hat sich inzwischen durchgesetzt, Verbindungen zu verschlüsseln, damit sie nicht oder nicht so leicht angreifbar sind. Wer ungesicherte Verbindungen verwendet, läuft Gefahr, Opfer von Angriffen Dritter zu werden. Sicherheit ist also unbedingt erforderlich. Um die Daten in dem beschriebenen Beispiel zu verschlüsseln, kann statt HTTP das HTTPS-Protokoll eingesetzt werden. Es muss jedoch jede der beiden Verbindungen gesichert werden, was doppelten Aufwand bedeutet.

Lesen Sie den kompletten Artikel im Entwickler Magazin 1.15

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -