Jabber/XMPP

1.693 Aufrufe

Veröffentlicht am

27. 04. 2005: Proseminar Uni Ulm: Virtuelle Präsenz: Jabber – Proseminarvortrag “Virtuelle Präsenz“, Prof. Schulthess, Uni Ulm

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.693
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
5
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Jabber/XMPP

  1. 1. Jabber / XMPPProseminar Uni Ulm 27. April 2005 <page="1" max="22"/>
  2. 2. Warum?• Grosse Messenger: • AIM/ICQ (AOL) • MSN (Microsoft) • Yahoo• Windows (+Mac) Only, Werbung, Closed Source• Keine Protokoll-Infos, inoffizielle Clients funktionieren nur durch Protokoll-Reversing• Protokolländerungen = Warten..• Single Point of Failure• Privacy meist nur Simulation <page="2" max="22"/>
  3. 3. Jabber/XMPP - Geschichte• 1998: Entwicklung durch Jeremie Miller• Jan 1999: Slashdot• März 2000: Jabber, Inc• Mai 2000: jabberd 1.0• August 2001: Gründung JSF • Jabber Board (3 Personen) – Business Affairs • Jabber Council (6 Personen) – Technical Affairs • JSF (~60 Personen)• Oktober 2004: RFC 3920-3924 <page="3" max="22"/>
  4. 4. Neu an Jabber?• Abwärtskompatibel mit beliebigem Inhalt erweiterbar• Dezentral• Dokumentiert und Standardisiert• Privacy sehr wichtig• Clients für nahezu jede obskure Plattform• „eXtensible Messaging and Presence Protocol“• Dynamisches Netz – s2s wird nach Bedarf aufgebaut <page="4" max="22"/>
  5. 5. Probleme• Relativ jung• Techniker programmieren: • Unverständlich, Featureoverkill, „staubig“ • Wozu Doku wenn es Source gibt? • Unterschiedlichste Begriffe – Supportalptraum• Semiprofessionelle Server, keine QS • DynIP-Server • „jeder darf alles“ - Bug und Feature gleichzeitig • Protokolle nicht immer verstanden• Kein Client kann „alles“• Multi-Protocol-Clients <page="5" max="22"/>
  6. 6. Jabber ist schick, weil:• Authorisation muss sein• Contact List Serverseitig gespeichert• Filter auf Serverseite möglich• Einfach und schnell scriptbar• Mehrere Clients parallel online• Mailadresse = Jabber-Id• Sehr gut für Unternehmen/Gruppen • shared/dynamic Roster Management• GPG, OTR und Co (End2End Verschlüsselung)• „Do it yourself“ <page="6" max="22"/>
  7. 7. Technik: Jid• Jabber-ID (jid) „fh@jabber.ccc.de/somewhere“ • fh: Benutzer • jabber.ccc.de: Server • somewhere: Resource • Benutzer und Resource sind nicht immer angegeben• Zusätzlich: Priority • „Wichtigkeit des Clients“ • Meist dargestellt als fh@jabber.ccc.de/somewhere (5) <page="7" max="22"/>
  8. 8. Jid Interpretation fh@zwoop.de/home (5) to=“fh@zwoop.de/home“ to=“fh@zwoop.de“ to=“zwoop.de/echo“fh@zwoop.de/laptop (9) <page="8" max="22"/>
  9. 9. Serverübergreifend bla@jabber.i-pobox.net jabber.i-pobox.net zwoop.de to=“bla@jabber.i-pobox.net“ to=“someuser@amessage.info“ amessage.infosomeuser@amessage.info <page="9" max="22"/>
  10. 10. Server-Kommunikation• Verbindungsaufbau nicht statisch, sondern dynamisch und upon request (vgl. Email)• TLS-Support bei neuen Serverversionen• Load-Balancing einfach möglich• Drei-Wege Handshake <page="10" max="22"/>
  11. 11. Servertechnik sessions some.jabberd.com dns Port 5269 _xmpp-server._tcp.some.jabberd.com s2s*@zwoop.de Andere Netze AIM/ICQ/MSN/Yahoo SMS/eMail/IRC/RSS... router transports c2s Ports 5222 und 5223fh@zwoop.de <page="11" max="22"/>
  12. 12. Transports?• Umsetzung beliebiger Dienste nach Jabber • ICQ-Uin wird zu 12345@icq.zwoop.de • Transparent für Jabberclients• Oft auch Gateways oder „Dienst“ genannt• Gateways anderer Server nutzbar • user@zwoop.de kann icq.amessage.de nutzen• Gateways zu ICQ/MSN/AIM/Y! gern überlastet <page="12" max="22"/>
  13. 13. Dienste• Registrierung und Bedienung über „Service Discovery“ <page="13" max="22"/>
  14. 14. XMPP |--------------------| | <stream> | • eXtensible Messaging |--------------------| and Presence Protocol | <presence> | <show/> | | • Streaming XML | </presence> | |--------------------| • XML-Pakete | <message to=foo> | eingebettet in einem | <body/> | | </message> | <stream /> |--------------------| | <iq to=bar> | | <query/> | | </iq> | |--------------------| | ... | |--------------------| | </stream> | |--------------------|Alle Protokollauszüge stammen aus den XMPP-RFCs <page="14" max="22"/>
  15. 15. Protokoll-Spezifikation• Basis: RFC 3920 – 3924• Erweitert durch JEPs, Jabber Enhancement Proposals • Ca 150 Stück • Struktur ähnlich RFCs (Draft, Deprecated, ..) • Validierung durch JSF <page="15" max="22"/>
  16. 16. Jabber vs. XMPP• XMPP ist der Teil von Jabber, der in den RFC- Dokumenten spezifiziert ist• Jabber lässt einiges zu, was nach XMPP nicht ok ist• „XMPP ist die kleinliche Variante von Jabber“ <page="16" max="22"/>
  17. 17. Ausblick: Pubsub• Publish – Subscribe für nahezu Beliebigen Content • User „subscribed“ eine Element • Wenn sich das Element ändert, bekommt User eine Nachricht• Vergleich: RSS • Bandbreitenfreundlicher • Schneller • Beliebiger Content <page="17" max="22"/>
  18. 18. Protokoll-Zukunft• Shared / Dynamic Roster• Remote Controlling Client (JEP146)• Whiteboard/ Audio/ Video Support• HTTP Binding (Jep 124)• Servergespeicherte History• Filter auf dem Server• Erweiterte Nachrichtenattribute (Jep 79) <page="18" max="22"/>
  19. 19. Lluna• Collaborative Browsing • Kommunikation mit anderen Besuchern der gleichen Website über Avatare • Idee: Beratung/Support „im Browser“ <page="19" max="22"/>
  20. 20. Trakm8• Monitoring von Fahrzeugbewegungen über GSM/GPS• Flottenmanagement• Mietwagenüberwachung• Infrastruktur Jabber• Trackingsoftware, SMS-Alerts, ... <page="20" max="22"/>
  21. 21. Sip/Simple• Ziel: Sip durch Jabber ersetzen• Es existieren mehrere Gateways• „Wenn Client DND klingelt das Telefon nicht“• JEP 0111 <page="21" max="22"/>
  22. 22. • </vortrag> Florian Holzhauer jid: fh@jabber.ccc.de mail: fh-jabber@fholzhauer.deStand: 14.4.2005 <page="22" max="22"/>

×