Ausziehbares Nachrichtenübermittlungs- und Anwesenheitsprotokoll

Ausziehbares Nachrichtenübermittlungs- und Anwesenheitsprotokoll (XMPP) ist ein Offen-Standardkommunikationsprotokoll für nachrichtenorientierten middleware, der auf XML (Ausziehbare Preiserhöhungssprache) gestützt ist. Das Protokoll wurde Geplapper ursprünglich genannt, und wurde von der Geplapper-Gemeinschaft der offenen Quelle 1999 für nahe Echtzeit, ausziehbare sofortige Nachrichtenübermittlung (IM), Anwesenheitsinformation und Kontakt-Listenwartung entwickelt. Entworfen, um ausziehbar zu sein, findet das Protokoll heute auch Anwendung in VoIP und Dateiübertragungsnachrichtenübermittlung.

Verschieden von den meisten sofortigen Nachrichtenübermittlungsprotokollen verwendet XMPP eine offene Systemannäherung der Entwicklung und Anwendung, durch die jeder einen XMPP Dienst durchführen und mit den Durchführungen anderer Organisationen zwischenfunktionieren kann. Die Softwaredurchführung und viele Client-Anwendungen werden als freie und offene Quellsoftware verteilt.

Internet Engineering Task Force (IETF) hat eine XMPP Arbeitsgruppe 2002 gebildet, um die Kernprotokolle als eine IETF sofortige Nachrichtenübermittlungs- und Anwesenheitstechnologie zu formalisieren. Der XMPP WG hat vier Spezifizierungen erzeugt (RFC 3920, RFC 3921, RFC 3922, RFC 3923), die von Internet Engineering Steering Group als Vorgeschlagene Standards 2004 genehmigt wurden. Das XMPP Standardfundament (früher das Geplapper-Softwarefundament) ist im Entwickeln offener XMPP Erweiterungen aktiv.

2011 sind RFC 3920 und RFC 3921 durch RFC 6120 und RFC 6121 beziehungsweise ersetzt worden, und RFC 6122 kommt, um das XMPP Adressformat anzugeben.

XMPP-basierte Software wird weit über das Internet, und vor 2003 aufmarschiert, wurde von mehr als zehn Millionen Menschen weltweit gemäß dem XMPP Standardfundament verwendet.

Das Föderationsprotokoll der Apachen-Welle ist eine Erweiterung auf das XMPP Protokoll.

Geschichte

Jeremie Miller hat begonnen, an der Geplapper-Technologie 1998 zu arbeiten, und hat die erste Version des Servers am 4. Januar 1999 veröffentlicht. Die frühe Geplapper-Gemeinschaft hat sich auf Software der offenen Quelle, hauptsächlich der jabberd Server konzentriert (z.B, Version 1.0 im Mai 2000, Version 1.2 im Oktober 2000 und Version 1.4 im Februar 2001), aber sein Hauptergebnis hat die Entwicklung des XMPP Protokolls bewiesen.

Das frühe Geplapper-Protokoll, so entwickelt 1999 und 2000, hat die Basis für XMPP, wie veröffentlicht, in RFC 3920 gebildet, und RFC 3921 (waren die primären Änderungen während der Formalisierung durch die XMPP Arbeitsgruppe des IETF die Hinzufügung von TLS für die Kanalverschlüsselung und SASL für die Beglaubigung). XMPP ist häufig als ein Mitbewerber zum EINFACHEN betrachtet worden, der auf dem Protokoll von Session Initiation Protocol (SIP) als das Standardprotokoll für die sofortige Nachrichtenübermittlungs- und Anwesenheitsankündigung gestützt ist.

Der erste IM auf XMPP gestützte Dienst war Jabber.org, der unaufhörlich seit 1999 funktioniert hat und freie Accounte Benutzern von XMPP angeboten hat. Von 1999 bis Februar 2006 hat der Dienst jabberd als seine Server-Software verwendet, an der Zeit es zu ejabberd abgewandert ist (von denen beide Anwendungsserver der kostenlosen Software sind). Im Januar 2010 plant der Dienst, zur EigentumsM Verbindungssoftware abzuwandern, die von Isode Ltd. erzeugt ist

Im August 2005 hat Google Google-Gespräch, eine Kombination VoIP und IM System eingeführt, das XMPP für die sofortige Nachrichtenübermittlung und als eine Basis für eine Stimme und Dateiübertragung Signalprotokoll verwendet. (Der anfängliche Start hat Server-zu-Server-Kommunikationen nicht eingeschlossen; Google hat diese Eigenschaft am 17. Januar 2006 ermöglicht).

Im September 2008 haben Cisco Systeme Jabber, Inc., die Schöpfer des kommerziellen Produktgeplappers XCP erworben.

Im Februar 2010 hat die sozial vernetzende Seite Facebook seine Chat-Eigenschaft zu Drittanwendungen über XMPP geöffnet. Die Seite der Facebook Entwickler bemerkt, dass Facebook-Chat keinen XMPP Server innerlich wirklich führt, aber bloß eine XMPP-Schnittstelle Kunden präsentiert; folglich können einige Eigenschaften der Server-Seite wie das Arbeitsschema-Redigieren nicht über XMPP getan werden. Ähnlich im Dezember 2011 hat Microsoft eine XMPP-Schnittstelle zu seinem.NET Bote-Dienst veröffentlicht.

Zusätzlich zum Google-Gespräch viele verwenden IM andere öffentliche Dienstleistungen XMPP, einschließlich:

Außerdem schließen IM mehrere Unternehmenssoftwareprodukte, die XMPP dennoch nicht heimisch verwenden, Tore zu XMPP ein, einschließlich:

  • IBM Lotus Sametime
  • Microsoft Lync Server (hat früher Microsoft Office Communications Server - OCS genannt)

Kräfte

Dezentralisierung

: Die Architektur des XMPP Netzes ist der E-Mail ähnlich; jeder kann ihren eigenen XMPP Server führen, und es gibt keinen Hauptmaster-Server.

Offene Standards

: Die Internettechnikeinsatzgruppe hat XMPP als eine genehmigte sofortige Nachrichtenübermittlungs- und Anwesenheitstechnologie unter dem Namen von XMPP formalisiert, und die XMPP Spezifizierungen sind als RFC 3920 und RFC 3921 veröffentlicht worden. Keine Lizenzgebühren sind erforderlich, Unterstützung dieser Spezifizierungen durchzuführen, und ihre Entwicklung wird an einen einzelnen Verkäufer nicht gebunden.

Geschichte

: XMPP Technologien sind im Gebrauch seit 1998 gewesen. Vielfache Durchführungen der XMPP Standards bestehen für Kunden, Server, Bestandteile, und codieren Bibliotheken, mit der Unterstützung von großen Gesellschaften wie Sun Microsystems und Google.

Sicherheit

: XMPP Server können vom XMPP öffentlichen Netz (z.B, auf einem Firmenintranet) isoliert werden, und robuste Sicherheit (über SASL und TLS) ist in die XMPP Kernspezifizierungen eingebaut worden. Um Gebrauch der Kanalverschlüsselung zu fördern, führt das XMPP Standardfundament zurzeit eine Zwischenzertifikat-Autorität an StartSSL (früher an xmpp.net) Angebot freier Digitalzertifikate XMPP Server-Verwaltern unter der Schirmherrschaft von der Zertifikat-Autorität von StartCom (der die Wurzel CA für den Zwischen-CA ist).

Flexibilität

: Kundenspezifische Funktionalität kann oben auf XMPP gebaut werden; um Zwischenfunktionsfähigkeit aufrechtzuerhalten, werden allgemeine Erweiterungen durch das XMPP Softwarefundament geführt. XMPP Anwendungen außer IM schließen groupchat, Netzmanagement, zufriedene Syndikatsbildung, Kollaborationswerkzeuge, das Dateiteilen, das Spielen, die entfernte Systemkontrolle und die Überwachung, geolocation, middleware und die Wolkencomputerwissenschaft, VoIP und die Identitätsdienstleistungen ein.

Schwächen

Inbändigem ist binäre Datenübertragung ineffizienter

: Weil XMPP als Effizienter XML-Austausch, aber als ein einzelnes langes XML Dokument noch nicht verschlüsselt wird, müssen binäre Daten der erste verschlüsselte base64 sein, bevor es inbändigem übersandt werden kann. Deshalb wird jeder bedeutende Betrag von binären Daten (z.B, Dateiübertragungen) am besten aus dem Band, mit inbändigem Nachrichten an die Koordinate übersandt. Das beste Beispiel davon ist das Geklingel XMPP Erweiterungsprotokoll, XEP-0166.

Dezentralisierung und das Wenden

Das XMPP Netz verwendet eine Client/Server-Architektur (Kunden sprechen direkt mit einander nicht). Jedoch wird es — durch das Design dezentralisiert, es gibt keinen herrischen Hauptserver, wie es mit Dienstleistungen wie AOL-Moment-Bote oder Windows Lebenden Boten gibt. Etwas Verwirrung entsteht häufig auf diesem Punkt, weil es einen XMPP öffentlichen Server gibt, der daran wird führt, den eine Vielzahl von Benutzern unterschreiben. Jedoch kann jeder ihren eigenen XMPP Server auf ihrem eigenen Gebiet führen.

Jeder Benutzer im Netz hat einen einzigartigen Geplapper-Personalausweis (gewöhnlich abgekürzt als JID). Um zu vermeiden, zu verlangen, dass ein Hauptserver eine Liste von Personalausweisen aufrechterhält, wird der JID wie eine E-Mail-Adresse mit einem Benutzernamen und einem Domainnamen (oder IP-Adresse) für den Server strukturiert, wo dieser Benutzer, getrennt durch am Zeichen , solcher als wohnt.

Da ein Benutzer in von vielfachen Positionen könnte loggen mögen, können sie eine Quelle angeben. Eine Quelle erkennt einen besonderen Kunden, der dem Benutzer (zum Beispiel nach Hause, Arbeit, oder beweglich) gehört. Das kann in den JID durch das Befestigen eines vom Namen der Quelle gefolgten Hiebs eingeschlossen werden. Zum Beispiel würde der volle JID einer beweglichen Rechnung eines Benutzers sein.

Jede Quelle kann einen numerischen Wert genannt Vorrang angegeben haben. Nachrichten, die einfach daran gesandt sind, werden dem Kunden mit dem höchsten Vorrang gehen, aber diejenigen, die daran gesandt sind, werden nur dem beweglichen Kunden gehen. Der höchste Vorrang ist derjenige mit dem größten numerischen Wert.

JIDs ohne einen Benutzername-Teil sind auch gültig, und können für Systemmeldungen und Kontrolle von Besonderheiten auf dem Server verwendet werden. Eine Quelle bleibt fakultativ für diese JIDs ebenso.

Das Anschließen mit anderen Protokollen

Eine andere nützliche Eigenschaft des XMPP Systems ist die von Transporten, auch bekannt als Tore, die Benutzern erlauben, auf Netze mit anderen Protokollen zuzugreifen. Das kann andere sofortige Nachrichtenübermittlungsprotokolle, sondern auch Protokolle wie SMS oder E-Mail sein. Verschieden von Mehrprotokoll-Kunden stellt XMPP diesen Zugang am Server-Niveau durch das Kommunizieren über spezielle Tor-Dienstleistungen zur Verfügung, die auf einem entfernten Computer laufen. Jeder Benutzer kann sich mit einem dieser Tore "einschreiben", indem er die Auskunft gibt, musste zu diesem Netz einloggen, und kann dann mit Benutzern dieses Netzes kommunizieren, als ob sie XMPP Benutzer waren. Das bedeutet jeden Kunden, der völlig XMPP unterstützt, kann auf jedes Netz mit einem Tor ohne Extracode im Kunden, und ohne das Bedürfnis nach dem Kunden zugreifen, direkten Zugang zum Internet zu haben. Das kann Begriffe des Dienstes auf dem Protokoll verwendet verletzen — aber solche Begriffe des Dienstes sind in mehreren Ländern nicht gesetzlich durchsetzbar. Das verlangt auch das Senden Ihres IM Benutzernamens und Kennwortes zur Drittseite, die den Transport bedient, der Gemütlichkeitssorgen ausdrücken kann.

XMPP über HTTP und Transporte von WebSocket

Ein anderer Aspekt von XMPP ist der HTTP, der für Benutzer hinter eingeschränkten Brandmauern bindet. In der ursprünglichen Spezifizierung konnte XMPP HTTP auf zwei Weisen verwenden: Stimmabgabe und Schwergängigkeit. Die abstimmende Methode, jetzt missbilligt, deutet im Wesentlichen an, dass auf einer Datenbank der Server-Seite versorgte Mitteilungen herbeigeholt (und abgesandt werden) regelmäßig durch einen XMPP Kunden über HTTP, 'BEKOMMEN' und 'SCHLAGEN' Bitten 'AN'. Mit der HTTP-Schwergängigkeit verwendet der Kunde länger gelebte HTTP Verbindungen, um Nachrichten zu erhalten, sobald sie gesandt werden. Dieses Stoß-Modell der Ankündigung ist effizienter als Stimmabgabe, wohin viele der Wahlen keine neuen Daten zurückgeben.

Weil der Kunde HTTP verwendet, erlauben die meisten Brandmauern Kunden, Mitteilungen ohne irgendwelche Hindernisse herbeizuholen und abzusenden. So in Drehbüchern, wo der TCP durch XMPP verwendete Hafen blockiert wird, kann ein Server auf dem normalen HTTP Hafen hören, und der Verkehr sollte ohne Probleme gehen. Verschiedene Websites lassen Menschenzeichen zu XMPP über einen Browser ein. Außerdem gibt es offene öffentliche Server, die auf dem Standard http (Hafen 80) und https (Hafen 443) Häfen hören, und folglich Verbindungen von hinter den meisten Brandmauern erlauben.

Ein noch effizienterer Transport für die Echtzeitnachrichtenübermittlung ist WebSocket. WebSocket ist ein Web freundliches volles niedriges Duplexlatenz-Nachrichtenprotokoll, das normalerweise für die Echtzeitkommunikation zwischen dem WWW-Browser und dem Server von WebSocket verwendet ist. Ähnlich TCP als der Transport können reiche Geschäftsprotokolle, einschließlich XMPP, oben auf WebSockets ebenso durchgeführt werden.

Durchführungen

XMPP wird durch eine Vielzahl von XMPP Kunden, Servern und Codebibliotheken durchgeführt. XMPP wird auch als ein Ersatz für die SMS für die Textnachrichtenübermittlung auf vielen smartphone Kunden verwendet.

Entwicklung

Der IETF XMPP Arbeitsgruppe hat mehrere RFC Protokoll-Dokumente erzeugt:

RFC 3920, RFC 3921, RFC 3922, RFC 3923, RFC 4622, RFC 4854, RFC 4979

  • RFC 3920, Ausziehbares Nachrichtenübermittlungs- und Anwesenheitsprotokoll (XMPP): Kern, der Client/Server-Nachrichtenübermittlung mit zwei unbegrenzten XML Strömen beschreibt. XML Ströme bestehen aus <presence/> <message/> und <iq/> (Info/Abfrage). Eine Verbindung wird mit der Einfachen Beglaubigung und Sicherheitsschicht (SASL) und encrypted mit Transport Layer Security (TLS) beglaubigt.
  • RFC 3921, Ausziehbares Nachrichtenübermittlungs- und Anwesenheitsprotokoll (XMPP): Sofortige Nachrichtenübermittlung und Anwesenheit beschreiben sofortige Nachrichtenübermittlung (IM), die allgemeinste Anwendung von XMPP.
  • RFC 3922, das Ausziehbare Nachrichtenübermittlungs- und Anwesenheitsprotokoll (XMPP) zur Allgemeinen Anwesenheit und Sofortigen Nachrichtenübermittlung (CPIM) Kartografisch darstellend, verbindet XMPP und die Allgemeine Anwesenheit und Sofortige Nachrichtenübermittlung (CPIM) Spezifizierungen.
  • RFC 3923, Der Länge nach Unterzeichnend und Gegenstand-Verschlüsselung für das Ausziehbare Nachrichtenübermittlungs- und Anwesenheitsprotokoll (XMPP) beschreiben der Länge nach Verschlüsselung von XMPP Nachrichten mit S/MIME. Dieser Vorschlag kollidierend, verwenden viele Kunden zurzeit GPG für encrypting Nachrichten.

XMPP Standards Foundation (XSF) entwickelt und veröffentlicht Erweiterungen auf XMPP durch einen Standardprozess, der auf XMPP Erweiterungsprotokolle (XEPs vorher in den Mittelpunkt gestellt ist, der als Geplapper-Erhöhungsvorschläge - JEPs bekannt ist). Die folgenden Erweiterungen sind im besonders breiten Gebrauch:

  • Daten bilden
  • Dienstentdeckung
  • Mehrbenutzerchat
  • XHTML-IM
  • Dateiübertragung
  • Entitätsfähigkeiten
  • HTTP, der bindet
  • Eventing persönliches Protokoll

XMPP wird zurzeit erweitert, um Nachrichtenübermittlung / Verhandlung für VoIP und andere Mediasitzungen zu behandeln. Dieses Signalprotokoll wird Geklingel genannt. Geklingel wird entworfen, um mit dem Google-Gespräch-Dienst und bridgeable mit dem Sitzungseinleitungsprotokoll im Einklang stehend zu sein.

Siehe auch

  • Vergleich von sofortigen Nachrichtenübermittlungskunden
  • Vergleich von sofortigen Nachrichtenübermittlungsprotokollen
  • Vergleich der XMPP Server-Software
  • Sichere Kommunikation
  • EINFACHER

Außenverbindungen


Metropolitanpolizeidienst / Luis Estaba
Impressum & Datenschutz