Mais quel bordel !

Je me permets juste une petite revue du monde fabuleux des IMP et IM. Je vais parler des IMP connus, des moins connus, des ancêtres et en finfaire une récapitulation/synthèse de tout de beau et vous comprendrez le tirte de ce billet.

Les connus

On connait bien l’excellent système d’IMP, le standard ouvert, le prometteur et fédérateur XMPP/Jabber.

On connait aussi malheureusement le grand bordel ambiant des (trop nombreux) systèmes d’IMP et de VoIM propriétaires, secrets, fermés et incompatibles ICQ, AIM, Yahoo! Messenger, MSN Messenger (aka Windows Live Messenger). De plus, ils sont tous liés à un service.

Bien entendu, il existe des passerelles Jabber vers ces réseaux, rendant possible aux utilisateurs de Jabber d’aller converser avec leurs contacts sur les réseaux proprios fermés. L’inverse n’est pas vrai : ces réseaux gardent leurs utilisateurs captifs et ils ne voient pas les utilisateurs d’autres réseaux et peuvent encore moins correspondre avec. Là, c’est le monde standard ouvert de Jabber/XMPP qui produit l’effort et qui va vers les réseaux proprios. Pas l’inverse. Les proprios gardent leur utilisateurs emprisonnés. Jabber leur permet de converser avec tous.

On connait aussi le protocole proprio encore plus fermé, chiffré et obscur Skype (enfin, on ne connait que très peu de choses sur son fonctionnement). Ah… on me souffle dans l’oreillette que ce truc n’est pas de l’IMP, mais du VoIP-over-P2P avec un petit bout d’IM dedans.

Le VoIP-over-P2P ou encore du VoP2P ou encore-encore du P2P-VoIP est assez récent. Le protocole ouvert P2PSIP est une tentative récente d’adapter SIP (protocole standard ouvert de vraie VoIP) au vrai P2P, pas seulement sur réseau local (LAN) sans NAT comme c’est le cas actuellement pour SIP, c’est-à-dire retirer les serveurs STUN et autres centralisations ainsi qu’au passage la facturation et le flicage.

QQ

Excusez-moi, je débarque, mais… connaissiez-vous QQ ? C’est le clone chinois d’ICQ créé en 1998 (par la société Tencent), soit la même année que Jabber et un an avant les Yahoo! Messenger et MSN Messenger… ou cinq ans avant Skype.

Il vaut mieux prononcer QQ de manière anglophone « kiou-kiou » plutôt que de manière francophone « ku-ku », vous le comprendrez bien en lisant ceci à voix haute.

Dans QQ, dont le protocole et le client sont proprios et le service centralisé, y’a tout plein de trucs qui clignottent tout plein partout en pire que MSN avec des SMS et de la pub et tout et tout. Il n’est pas traduit non-plus. Bon. Pas très sérieux tout ça.

Ce truc est un n-ième protocole propriétaire, mais… c’est chinois ! Ce qui signifie, et on ne le répètera jamais assez pour tout ce qui est du business chinois, qu’un souffle qui vient de Chine et c’est des millions, des dizaines voire des centaines des millions d’utilisateurs (qui a dit clients captifs ?) qui débarquent. De plus, il est solidement ancré, d’autant plus que les chinois expatriés l’utilisent énormément.

Donc pour reprendre mes stats pour la Chine en prenant en compte QQ : on passe d’un Skype bien en tête devant MSN à un QQ rendant Skype insignifiant et rendant MSN tout simplement invisible. On ne le répètera jamais assez MSN ne s’est imposé qu’en France, au Canada et en Grande-Bretagne, et c’est AIM qui domine aux States. Paraphrasons : QQ est un poids lourd de l’IM proprio, pas un petit joueur en marge, même si l’on n’en parle que trop peu dans nos occidentales sphères (blogo-, wiki- et autres).

QQ n’est ni compatible avec Jabber/XMPP ni aucun protocole propriétaire fermé. Des clients opensource pour QQ, il y en a au moins… un, qui s’appelle Eva sous Linux, il est écrit en C++ avec Qt. Il n’existe pas à ma connaissance de passerelle/transport Jabber/XMPP pour ce réseau.

GG

Bon OK, maintenant qu’on a parlé du (pas si) lointain QQ, on se doit d’également parler du polonais Gadu-Gadu (beaucoup plus proche).

Gadu-Gadu est abbrégé GG, son client officiel porte le même nom et un client proprio compatible existe, du nom de Tlen.pl ou tlen (le .pl, c’est le TLD de la Pologne, pas l’extension Perl). Là, c’est un peu plus sobre que MSN/QQ, ça se rapproche donc d’ICQ et Yahoo! Messenger, mais c’est toujours proprio et lié au seul service officiel.

Donc on refait également les stats, et voilà que Gadu-Gadu écrase Skype (et bien sûr Tlen.pl). ICQ avait pourtant pris racine en Pologne, comme dans tout le reste de l’Europe Centrale.

Il existe un transport Jabber qui s’appelle jGGtrans, donc les utilisateurs de Jabber peuvent aller sur GG, mais pas l’inverse. GG n’est pas compatible non-plus avec les protocoles proprios fermés.

Xfire

Voici encore-encore un protocole proprio-fermé couplé à un soft client proprio, affligé d’un service centralisé, j’ai nommé Xfire !

Né en 2003, il est clairement conçu pour les légions de gamers, avec des skins et clans et tout et tout et est bien intégré dans de nombreux jeux.

Sur les trois dernières années et au niveau mondial, Xfire arrive à plus de 6 millions d’utilisateurs enregistrés, ce qui montre une plus forte progression que Jabber.

Il existe deux transports Jabber : XFireGateway ainsi qu’un autre transport Jabber expérimental. Il existe aussi un plugin Gaim et Adium. Mais Xfire n’est compatible avec aucun protocole propriétaire fermé. Les utilisateurs des système opensource et ouverts peuvent y aller, mais les gens enfermés dans Xfire ne peuvent en sortir.

AllPeers et CSpace

Même les extensions de Firefox s’y mettent, mais AllPeers a tout de même une originalité : il fonctionne en P2P chiffré.

À la base, il s’agit avant tout d’un mini-réseau social, avec partage de fichiers sur BitTorrent et chat minimaliste.

Bien sûr, il est proprio et incompatible avec tout le reste. Pas de service centralisé ici, forcément, c’est du P2P.

CSpace est une plateforme opensource (GPL) d’établissement de communication P2P chiffrée entre utilisateurs sur laquelle viennent se greffer les applications de chat, d’échange de fichiers et de prise de contrôle à distance de bureau via VNC.

C’est incompatible avec tout le reste.

Ces deux-là auraient pu faire l’effort d’utiliser un système d’IMP ouvert et standard. Oui, ça aurait cassé leur nature pure P2P, mais ça leur aurait augmenté leur user-base potentielle des 50 millions d’utilisateurs de Jabber/XMPP.

Les ancêtres

Côté ancêtres, on a des standards ouverts comme Zephyr, IRC et SIMPLE, et des proprio comme PowWow ou winpopup… mais ils sont tous un peu out, ils faut bien l’avouer.

Zephyr est l’ancêtre de l’IMP, le « notification service », un standard ouvert né projet de recherche qui a une très faible user-base, très concentrée dans le monde universitaire états-unien. Ce protocole est sans doute né trop tôt…

SIP/SIMPLE est le protocole venant du monde des télécoms, ceux qui ont fait le pas de venir dans « le monde de l’IP » comme ils l’appellent, le fameux monde dans lequel la qualité de service n’existe pas et qui est bourré de NAT. Rappelons que SIP est le seul protocole ouvert de vraie VoIP, si l’on exclue l’ancêtre H.323 méritant un bon repos, et MGCP qui n’a pas le succès de SIP. SIP est implémenté en proprio comme en libre un peu partout, comme Jabber/XMPP. Attention, VoIP n’est pas VoIM !

Donc SIMPLE est un protocole d’IMP basé sur SIP, mais souffrant de présence assez faible il faut bien l’avouer et  aussi de la maladie chronique d’IPv4 : le NAT.

Passons sous silence les ancêtres de « chat » que sont PSYC et IRC. Ah… On me souffle dans l’oreillette que ce n’est pas de l’IM, car il ne font pas d’identification ni d’authentification par login, serveur et mot de passe (sans passer par un bot), et surtout ne font pas de présence ni de statut. En gros, IRC n’est qu’un mauvais MUC.

Le programme Unix talk n’est pas IM non plus, encore moins de winpopup, et PowWow non plus (le programme, pas le groupe « dans la jungle, terrible jungle, le lion est mort ce sôôôâââr, euhoui-meuhoué, euhoui-meuhoué, euhoui-meuhoué-euh… hum »).

Quel bordel ! Vous l’avouerez bien.. Je m’arrête là par pur manque de connaissances et de temps. Les autres ayant sans doute moins d’intérêt également.

Récap

On récapitule : tous ces protocoles et systèmes d’IMP sont fermés et propriétaires, incompatibles et emprisonnants :

  • AIM
  • QQ
  • Gadu-Gadu
  • Xfire
  • AllPeers
  • CSpace
  • MSN Messenger aka Windows Live Messenger
  • Yahoo! Messenger
  • ICQ
  • Skype
  • [Ajoutez ici le prochain]
  • [Ajoutez ici le prochain d’après]
  • [Ajoutez ici le prochain d’encore après]

Que celà signifie-t-il ?

  • Tous ces protocoles et système d’IMP propriétaires sont tous « concurrents » les uns des autres
  • Cette profusion est évidemment ennemie du bon sens
  • Les efforts de développement sont dilués, tout le monde pourrait contribuer à XMPP
  • Les codeurs de logiciels libres et opensource perdent un temps infini à faire du reverse-engineering des protocoles proprios (qui changent sans arrêt)
  • Les passerelles Jabber sont à coder et administrer, énormément de ressources machines et réseau gâchées
  • Et pire que tous les gens du monde entier ne peuvent pas communiquer entre eux, ils ont pourtant bien droit à un protocole standard ouvert unique qui leur permettrait d’avoir de meilleurs outils plus rapidement

L’intérêt des standards ouverts, on l’a bien compris, c’est d’avoir un monde interopérable dans lequel tout le monde peut communiquer avec tout le monde et et qui a pour effet de bord d’avoir une concurrence saine (sauf quand quelqu’un « embrace and extend »).

Mais le problème des standards ouverts, c’est qu’ils viennent souvent tardivement, on formalise et normalise des usages (ł best practices »), une fois qu’ils sont créés, utilisés et répandus. Rarement ce sont les standards qui sont en amont de l’innovation. Quelqu’un doit se jeter et tester les nouveaux concepts et implémentations avant de proposer l’idée aux normes et standards.

Le deuxième problème, c’est qu’on n’a pas de brigade d’application de standards ouvert, n’entendez pas par là un dictature des normes, mais bien un arbitre qui vérifie le bon respect des règles, une entité qui peut sanctionner les tricheurs. Il manque également une structure qui qualifie le respect des standards par les implémenteurs.

Je me mets à rêver d’un monde dans lequel on prendrait tous les mauvais élèves qui ont été jaloux et ont voulu avoir leur propre jouet à eux, un monde dans lequel on les mettrait tous dans une salle et on leur demanderait de réflechir à ce qu’ils pourraient apporter à construire le monde plutôt qu’à le diviser.

Bonne année 2007.