XMPP-Kompendium: Funktionsweise

Zu allererst sollte man sich einen Eindruck davon verschaffen, was einem durch Jabber alles geboten wird, um festzustellen, was es bringt und wozu man es brauchen kann. Wir gehen davon aus, dass jede Person, mit der wir kommunizieren möchten, einen Computer mit Internet-Anschluss hat oder zumindest über ein mobiles Kommunikationsgerät verfügt, das in der Lage ist Jabber zu verwenden.

Letzterer Fall ist nicht so unsinnig, wie er auf anhieb klingen mag: Praktisch alle Handys die heutzutage am Markt sind – sei es eines der zweiten (GSM) oder dritten Generation (UMTS) – werden zumindest von einer Jabber-Software unterstützt. Abgesehen davon gibt es bereits eine Reihe von kleinen elektronischen Büros, die sogenannten PDAs und Smartphones, die mit Jabber ebenfalls gut umgehen können.

Um wieder zum Nutzen des Systems zurückzukommen: Die Annahme ist also, dass wir jede Person über das Internet ansprechen können, auch wenn diese z.B. nur in einem Internetcafé sitzt. Alles was die potentiellen Kommunikationspartner benötigen sind jetzt zwei Dinge:

  1. irgendeine Jabber-Software der Wahl (siehe dazu später im Kapitel Einrichtung)
  2. eine im Internet eindeutige Adresse (wie man die bekommt siehe auch im nächsten Kapitel)

Letztere repräsentiert eine Person innerhalb des Internets. Die Adresse ist zum Teil frei wählbar und kann praktischerweise auch auf Visitenkarten abgedruckt werden und auf einer Homepage zwecks Kontaktmöglichkeit im Impressum stehen.

Das Netzwerk Bearbeiten

 
dezentraler Aufbau des Jabber-Netzwerkes

Der Aufbau des Jabber-Netzes ist dezentral, im Internet gibt es also mehrere „Anbieter“, bei denen man eine Adresse haben kann. In der Abbildung rechts sind diese durch die Server montegue.net, capulet.com und wasinet.org repräsentiert. Bei jedem dieser Server sind unterschiedliche Personen registriert, die in der Abbildung durch Sprechblasen dargestellt sind. Aus dem (gewählten) Benutzernamen und dem Servernamen des Anbieters, setzt sich jeweils die Adresse einer Person in der Form benutzername@anbieter zusammen. „@“ bezeichnet dabei den englischen Begriff „at“ (zu deutsch „bei“), also benutzername bei anbieter.

Im nachfolgenden Beispiel versucht juliet@capulet.com eine Nachricht an romeo@montague.net zu senden. Die Nachricht nimmt danach folgenden Weg ein:

juliet → capulet.com → montague.net → romeo

Da Sender und Empfänger nicht direkt, sondern indirekt über die Server ihrer jeweiligen Anbieter verbunden sind, wird auch die IP-Adresse des Gegenübers nicht bekannt, was ein nicht zu unterschätzender Sicherheitsvorteil ist. juliets Nachricht landet auf dem Server von montague.net und wird zugestellt, sobald romeo online geht. Dieses Prinzip ist ähnlich, wie beim klassischen E-Mail, die Übertragung erfolgt aber unverzögert.

juliet kann sich nun auch mehrfach einloggen (siehe Grafik oben), dafür gibt es bei der Adresse eine Ergänzung, die auch den jeweiligen „Anschluss“ kennzeichnet und das könnte so aussehen: juliet@capulet.com/notebook, juliet@capulet.com/dahoam und juliet@capulet.com/handy.

juliet hat für diese Geräte auch unterschiedliche Prioritäten festgelegt. Das Notebook hat die höchste Priorität, die nächstniedrigere der Standrechner zu Haus und als letztes das Handy. Wenn romeo also an juliet@capulet.com schreibt, landet die Nachricht auf dem jeweils höherwertigeren Anschluss.

Wenn sie also mit dem Laptop online ist, bekommt sie die Nachricht dorthin, ansonsten zum PC dahoam und sollte wirklich das seltene Ereignis eintreten und beides abgedreht sein (Stromausfall, explodierte Netzteile und Akkus und schlimmere Katastrophen), kommt die Nachricht aufs Handy. Sollte dieses auch abfackeln, behält immerhin der Server capulet.com die Nachricht, bis sich juliet wieder einloggt. Natürlich kann romeo auch diese Ressource angeben, zu welcher er hinsenden will, dann kommts garantiert dort hin wo er will.

Sonstiges Bearbeiten

Da wir nun wissen, wie diese Art der Kommunikation über das Internet funktioniert, noch ein Einblick in die Möglichkeiten, die Jabber bietet:

  • Nachrichten (sozusagen „E-Mails“) senden
  • Chatten (siehe dazu später im Kapitel Anwendung)
  • Konferenzen halten
  • (Video-)Telefonieren
  • Dateien übertragen
  • sichere Kommunikation (Stichwörter: SSL, TLS und PGP)
  • netzwerkfreundlich (kaum Probleme mit Firewalls)
  • offenes Protokoll und frei erweiterbar (siehe dazu später im Kapitel Programmierung)