FOSDEM: Session Mobiliy using XMPP

  • 616 views
Uploaded on

Slides for my talk at FOSDEM 2013 in the XMPP DevRoom.

Slides for my talk at FOSDEM 2013 in the XMPP DevRoom.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
616
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
4
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ROLE LAYERS Session Mobility using XMPP FOSDEM 2013 – XMPP DevRoom, 2012-02-02 István Koren RWTH Aachen University Advanced Community Information Systems (ACIS)Lehrstuhl Informatik 5 koren@dbis.rwth-aachen.de(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-1 This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
  • 2. ROLE Session Mobility? LAYERS  Refers to… – IP mobility protocols – multimedia session mobility – application migration  SIP – REFER fig.1: SIP REFER – RFC 5631  this talk is about Session Mobility forLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke Collaborative Pervasive Apps! I5-FL-0213-2
  • 3. ROLE Session Mobility! LAYERS  Session Transfer  Session SplitLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-3
  • 4. ROLE Session Mobility in the wild… LAYERS fig.1: Deep Shot © GoogleLehrstuhl Informatik 5(Information Systems) fig.2: Cisco WebEx © Cisco Prof. Dr. M. Jarke I5-FL-0213-4
  • 5. ROLE Device Discovery Personal Device <!-- Out --> LAYERS  <iq from="alice@mobilis.inf.tu-dresden.de/desktop" to="alice@mobilis.inf.tu-dresden.de" type="get" id="1"> <query xmlns="http://jabber.org/protocol/disco#items"> </query> </iq> <!-- In --> Resources! <iq type="result" from="alice@mobilis.inf.tu-dresden.de" to="alice@mobilis.inf.tu-dresden.de/desktop" id="123"> <query xmlns="http://jabber.org/protocol/disco#items"> <item jid="alice@mobilis.inf.tu-dresden.de/desktop"/> <item jid="alice@mobilis.inf.tu-dresden.de/phone"/> <item jid="alice@mobilis.inf.tu-dresden.de/tablet"/> </query> </iq> lst.1: Querying own resources  QR codes, NFCLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-5
  • 6. ROLE Public Device – Kiosk LAYERS  standalone device  XMPP daemon  as personal device  remote login mechanism fig.3: Kiosk DeviceLehrstuhl Informatik 5(Information Systems) fig.4: Remote Login Prof. Dr. M. Jarke I5-FL-0213-6
  • 7. ROLE OAuth & XMPP LAYERS  XEP-0235: OAuth Over XMPP? deferred  the Google Talk & Windows Live Messenger way… <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="X-OAUTH2" auth:service="oauth2" xmlns:auth="http://www.google.com/talk/protocol/auth"> base64("0" + user_name + "0" + oauth_token) </auth> lst.2: OAuth @ Google Talk <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="X-MESSENGER-OAUTH2"> ACCESS_TOKEN </auth> lst.3: OAuth @ Windows Live Messenger  integrate browser-based authentication?Lehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-7
  • 8. ROLE ad hoc Discovery LAYERS  XEP-0174: Serverless Messaging jid=lightsensor@xmpp.org port.p2pj=5562 status=avail lst.4: Advertising Presence via mDNS fig.5: mDNS Service DiscoveryLehrstuhl Informatik 5(Information Systems) fig.6: ad-hoc Light Switch Prof. Dr. M. Jarke I5-FL-0213-8
  • 9. ROLE Session Transfer LAYERS  two general approaches – packet logging and replay – application specific bundling <iq from="alice@example.org/mobile“ to="alice@example.org/tablet“ type="get" id="234"> <query xmlns="mobilis:iq:sessionmobility#sessiontransfer"> <mechanisms xmlns="mobilis:params:sessiontransfer“> <mechanism>INBAND-XMPP</mechanism> <mechanism >FILES </mechanism > <mechanism>BUNDLE-COMPRESSED-ZIP</mechanism> </mechanisms> </query> </iq> lst.5: Offering Session Transfer MechanismsLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-9
  • 10. ROLE Session Split / Synchronizing LAYERS  packet sent to bare JID: delivery depends on server implementation…  XEP-0280: Message Carbons experimental – forwarding in- and outbond messages to other resources Case A: Case B: Juliet sends Message to romeo@example.net: Juliet sends Message to romeo@example.net/home: Message is forked and sent to: Message is sent to: romeo@example.net/home romeo@example.net/home romeo@example.net/garden …and forwarded to: romeo@example.net/gardenLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-10
  • 11. ROLE Packet Filtering LAYERS  intelligent packet routing  defined by endpoint fig.7: communication footprint of a LBG  XEP-0273: Stanza Interception and Filtering Technology (SIFT) deferred – Stanza – Sender/Recipient – PayloadLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-11
  • 12. ROLE Conclusion LAYERS  Problems – extension implementation & deferrals & experimentals – OAuth  ad-hoc – session transfer over local link – towards IoT  state transfer using publish-subscribe – as a more general approach  more evaluation needed…Lehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-12
  • 13. ROLE XMPP @ our chair LAYERS  ROLE project – Interwidget Communication with XMPP (see DevRoom talk last year…) – XMPP over Websockets (not BOSH)  Teaching: Web Science lecture  Bachelor & Master theses…Lehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-13  new projects
  • 14. ROLE Mobilis Framework LAYERS …for more information please check:Lehrstuhl Informatik 5(Information Systems) http://mobilis.inf.tu-dresden.de Prof. Dr. M. Jarke I5-FL-0213-14
  • 15. ROLE Thank you! LAYERS  Contact me: xmpp://koren@role.dbis.rwth-aachen.de koren@dbis.rwth-aachen.de http://www.istvank.eu  Check out ROLE SDK of RWTH http://sourceforge.net/projects/role-project  Check out the Mobilis framework of TU DresdenLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-15 https://github.com/danielschuster/mobilis
  • 16. ROLE Crazy Stuff with XMPP (or webinos) LAYERSLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-16
  • 17. ROLE References LAYERS http://tools.ietf.org/html/rfc5631 https://developers.google.com/talk/jep_extensions/oauth http://msdn.microsoft.com/library/live/hh826554 http://xmpp.org/extensions/xep-0235.html http://xmpp.org/extensions/xep-0174.html http://xmpp.org/extensions/xep-0280.html http://xmpp.org/extensions/xep-0273.htmlLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-17
  • 18. ROLE fin LAYERSLehrstuhl Informatik 5(Information Systems) Prof. Dr. M. Jarke I5-FL-0213-18