XMPP et Interopérabilité

2 490 vues

Publié le

Publié dans : Technologie
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
2 490
Sur SlideShare
0
Issues des intégrations
0
Intégrations
16
Actions
Partages
0
Téléchargements
25
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

XMPP et Interopérabilité

  1. 1. XMPP et interopérabilité Solutions Linux 2009 FDL, CC by-sa 2009-03-31 Nicolas Vérité (Nÿco) mailto:nicolas.verite@capgemini.com mailto:nicolas.verite@gmail.com xmpp:nyco@jabber.fr
  2. 2. Plan <ul><li>Qu'est-ce que XMPP ? Jabber ? Jingle ? PubSub ? </li></ul><ul><li>Interopérabilité : définition </li></ul><ul><li>Logiciels libres </li></ul><ul><li>État des lieux </li></ul><ul><li>Perspectives </li></ul>
  3. 3. Qu'est-ce que XMPP ? Jabber ? Jingle ? PubSub ? (1/2) <ul><li>XMPP : </li></ul><ul><ul><li>eXtensible Messaging and Presence Protocol </li></ul></ul><ul><ul><li>Ensemble extensible de protocoles de routage générique et instantané de flux de données </li></ul></ul><ul><ul><li>XML et UTF-8 </li></ul></ul><ul><li>Jabber est à XMPP </li></ul><ul><ul><li>Ce que le web est à HTTP/HTML </li></ul></ul><ul><ul><li>Ce que le mail est à SMTP/POP/IMAP </li></ul></ul><ul><li>Organisations </li></ul><ul><ul><li>XSF : XMPP Standards Foundation </li></ul></ul><ul><ul><li>IETF : Internet Engineering Task Force </li></ul></ul><ul><li>Spécifications : </li></ul><ul><ul><li>RFC : Request For Comments </li></ul></ul><ul><ul><li>XEP : XMPP Extension Protocol </li></ul></ul><ul><li>Philosophie : </li></ul><ul><ul><li>Complexité sur le serveur </li></ul></ul><ul><li>Similitudes e-mail : </li></ul><ul><ul><li>client/serveur et serveur/serveur </li></ul></ul><ul><ul><li>Jabber ID : user@domain.com </li></ul></ul><ul><li>Différences avec l'e-mail : </li></ul><ul><ul><li>Identifié, authentifié </li></ul></ul><ul><ul><li>Un seul serveur envoi/réception </li></ul></ul><ul><ul><li>Instantané (« temps-réel ») </li></ul></ul><ul><ul><li>Push (pas de polling) </li></ul></ul>
  4. 4. Qu'est-ce que XMPP ? Jabber ? Jingle ? PubSub ? (2/2) <ul><li>Jingle </li></ul><ul><ul><li>Protocole d'initialisation de sessions multimédia </li></ul></ul><ul><li>Applications </li></ul><ul><ul><li>Voix </li></ul></ul><ul><ul><li>Vidéo </li></ul></ul><ul><ul><li>Fichiers </li></ul></ul><ul><ul><li>Applications multimédia </li></ul></ul><ul><li>PubSub </li></ul><ul><ul><li>Protocole de publication d'informations et de souscription aux flux d'informations </li></ul></ul><ul><ul><li>Instantané (« temps-réel ») </li></ul></ul><ul><ul><li>Push (pas de polling) </li></ul></ul><ul><li>Applications </li></ul><ul><ul><li>Présence étendue </li></ul></ul><ul><ul><ul><li>Géolocalisation </li></ul></ul></ul><ul><ul><ul><li>Activité </li></ul></ul></ul><ul><ul><li>Micro-blogging </li></ul></ul><ul><ul><li>Aggrégation </li></ul></ul><ul><ul><li>Notifications et alertes </li></ul></ul>
  5. 5. Interopérabilité : définition <ul><li>Inter-opérabilité </li></ul><ul><ul><li>Capacité de deux systèmes différents à fonctionner ensemble </li></ul></ul><ul><li>Standards ouverts </li></ul><ul><ul><li>Formats ou protocoles </li></ul></ul><ul><ul><li>Spécifications </li></ul></ul><ul><ul><li>Librement (re-)distribuables </li></ul></ul><ul><ul><li>Sans péages </li></ul></ul><ul><ul><li>Sans brevets </li></ul></ul><ul><ul><li>Sans restrictions </li></ul></ul><ul><li>Organisation indépendante, ouverte et consensuelle </li></ul><ul><li>Processus </li></ul><ul><li>Standard de fait </li></ul><ul><ul><li>Produit dominant </li></ul></ul><ul><li>Compatibilité </li></ul><ul><ul><li>Quand deux systèmes peuvent fonctionner ensemble </li></ul></ul><ul><li>Interopérabilité </li></ul><ul><ul><li>Quand on sait pourquoi et comment systèmes fonctionnent ensemble </li></ul></ul><ul><li>Domaine informatique </li></ul><ul><ul><li>Captivité client </li></ul></ul><ul><ul><li>« Embrace and extend » </li></ul></ul>
  6. 6. XMPP et interopérabilité (1/2) <ul><li>Spécifications </li></ul><ul><ul><li>Ouvertes </li></ul></ul><ul><ul><li>Libres </li></ul></ul><ul><ul><li>Consensus </li></ul></ul><ul><ul><li>Implémentations </li></ul></ul><ul><ul><li>IETF </li></ul></ul><ul><li>Tests d'interopérabilité </li></ul><ul><li>Transports, passerelles </li></ul><ul><ul><li>SMS </li></ul></ul><ul><ul><li>E-mail </li></ul></ul><ul><ul><li>RSS/Atom </li></ul></ul><ul><ul><li>IRC </li></ul></ul><ul><ul><li>IM propriétaires </li></ul></ul><ul><ul><li>Microbloggings propriétaires </li></ul></ul>
  7. 7. XMPP et interopérabilité (2/2) <ul><li>Jingle </li></ul><ul><ul><li>Pas de syndrome NIH </li></ul></ul><ul><ul><li>Recherche de l'interopérabilité </li></ul></ul><ul><ul><li>Ouvrir XMPP à la téléphonie et au multimédia </li></ul></ul><ul><ul><li>Passerelles et mappings SIP/SIMPLE </li></ul></ul><ul><ul><li>ICE, DTMF, ZRTP </li></ul></ul><ul><li>Chiffrement point à point </li></ul><ul><ul><li>OpenPGP </li></ul></ul><ul><ul><li>OTR </li></ul></ul><ul><ul><li>E2E </li></ul></ul><ul><ul><li>xTLS </li></ul></ul><ul><li>TCP, UDP </li></ul><ul><li>SASL, TLS (SSL), LZW </li></ul><ul><li>XHTML-IM </li></ul><ul><li>SOAP, XML-RPC </li></ul><ul><li>zeroconf </li></ul><ul><li>BOSH : Bidirectional-streams Over Synchronous HTTP </li></ul><ul><ul><li>Comet, AJAX </li></ul></ul><ul><li>CAP : Common Alerting Protocol </li></ul><ul><li>Oauth, OpenID, AMQP </li></ul>
  8. 8. Logiciels libres : clients et serveurs <ul><li>Purs : Spark, Psi, Gajim, Tkabber, Coccinella, SamePlace </li></ul><ul><li>Multi-protocoles : Pidgin, Adium, Kopete, Miranda </li></ul><ul><li>Web : JWChat, JabberWorld, Soashable, SparkWeb, Speeqe </li></ul><ul><li>Services : Meebo, Mabber; Mimir </li></ul><ul><li>Mobiles : Bombus, Mobber </li></ul><ul><li>Enfouis : sendxmpp, neutron </li></ul><ul><li>Applicatifs : Inkscape, Abiword, Volity, ChessPark </li></ul><ul><li>Ejabberd : erlang, scalabilité, ProcessOne </li></ul><ul><li>Openfire : Java, utilisabilité, Jive Software </li></ul><ul><li>Jabberd14 : C, le premier </li></ul><ul><li>Jabberd2 : fork jabberd </li></ul><ul><li>Djabberd : modules Perl, LiveJournal </li></ul><ul><li>Tigase : Java, embarquable </li></ul><ul><li>Prosody : Lua </li></ul>
  9. 9. Logiciels libres : bibliothèques et outils <ul><li>C : Loudmouth, Libstrophe </li></ul><ul><li>C++ : gloox, iris </li></ul><ul><li>Java : Smack </li></ul><ul><li>PHP : Class.Jabber.Php </li></ul><ul><li>Perl : Net::XMPP </li></ul><ul><li>Python : xmpppy, PyXMPP, Twisted Words, SleekXMPP </li></ul><ul><li>Javascript : JSJaC, xmpp4moz, xmpp4js </li></ul><ul><li>Ruby : xmpp4r, Jabber4R </li></ul><ul><li>erlang : jabberlang </li></ul><ul><li>C#/.Net/Mono : Jabber-net, agsXMPP </li></ul><ul><li>Tsung, idavoll, proxy65, mu-conference, Palaver, <Jdisk </li></ul>
  10. 10. État des lieux <ul><li>Adoption massive : </li></ul><ul><ul><li>100 millions d'utilisateurs </li></ul></ul><ul><ul><li>En forte croissance </li></ul></ul><ul><ul><li>Écosystème étroitement lié </li></ul></ul><ul><ul><li>Applications de plus en plus larges </li></ul></ul><ul><li>Géants de l'IT : </li></ul><ul><ul><li>Oracle, Google, Sun, Apple, Adobe, Red Hat/JBoss, IBM, HP, Nokia, Yahoo!, AOL, Cisco, tous sauf... Microsoft ! </li></ul></ul><ul><li>IM/VoIP incompatibles : </li></ul><ul><ul><li>Client, serveur, protocole : contrôle total </li></ul></ul><ul><ul><li>ICQ, AIM, QQ, Yahoo! Messenger (Yahoo! Pager), Windows Live Messenger(MSN Messenger), Skype, Gadu-gadu, C6, Nate On, MySpaceIM, Xfire, Baidu Hi, Mail.ru, Facebook, Reuters </li></ul></ul><ul><ul><li>Microsoft LCS, IBM Lotus SameTime </li></ul></ul><ul><li>Clients multiprotocoles </li></ul><ul><ul><li>Reverse engineering </li></ul></ul>
  11. 11. Perspectives <ul><li>Fonctionnalités </li></ul><ul><ul><li>Chat </li></ul></ul><ul><ul><li>Présence </li></ul></ul><ul><ul><li>Push </li></ul></ul><ul><ul><li>Temps-réel </li></ul></ul><ul><ul><li>Multimédia </li></ul></ul><ul><ul><li>Web </li></ul></ul><ul><ul><li>Mobilité </li></ul></ul><ul><li>Applications </li></ul><ul><ul><li>Groupware </li></ul></ul><ul><ul><li>Forges </li></ul></ul><ul><ul><li>ECM/CMS </li></ul></ul><ul><ul><li>Collaboratif temps-réel </li></ul></ul><ul><ul><li>Réseaux sociaux </li></ul></ul><ul><li>XMPP central et fédérateur </li></ul><ul><ul><li>Entreprises </li></ul></ul><ul><ul><li>FAI </li></ul></ul><ul><ul><li>Opérateurs telco </li></ul></ul>
  12. 12. Liens <ul><li>xmpp.org : XSF </li></ul><ul><ul><li>RFC : http://xmpp.org/rfcs/ </li></ul></ul><ul><ul><li>XEP : http://xmpp.org/extensions/ </li></ul></ul><ul><li>ietf.org : IETF </li></ul><ul><li>jabberfr.org : </li></ul><ul><ul><li>Communauté francophone </li></ul></ul><ul><ul><li>Forum, wiki, news, planet </li></ul></ul><ul><ul><li>MUC, random chat, présence sur le web </li></ul></ul>

×