Dormez braves gens… – Partie 2 : Internet, ça fonctionne comment ?

Câble EthernetLors du précédent article nous avons vu les origines d’Internet puis nous avons constaté quelles étaient les différences entre la philosophie qui à conduit à sa création et l’usage d’aujourd’hui. J’aimerais développer les questions politiques et philosophiques, celles qui sont intéressante à mes yeux, mais je me rend compte qu’il est impossible de traiter de ces questions correctement sans un minimum de connaissances techniques basiques sur le fonctionnement d’Internet. Nous allons donc parler maintenant de choses que vous trouverez probablement ennuyeuses mais indispensable à une bonne compréhension des enjeux du monde numérique qui se dessine aujourd’hui. Pour cette partie technique je me suis très vachement beaucoup inspiré d’une excellente conférence de Benjamin Bayart, grand maître du sujet en France.

Internet est un réseau à commutation de paquets : c’est le premier élément important à comprendre. L’immense majorité des réseaux, avant Internet – parce qu’il y a eu des tas de réseaux avant Internet, même si on a tendance à les oublier – sont des réseaux à commutation de circuits. C’est structurant comme différence. Pour ceux d’entre vous qui sont assez vieux pour avoir connu le Minitel, ou pour les plus brillants le BBS, tout cela fonctionnait sur des systèmes à commutation de circuit. Ça veut dire que vous vous connectiez sur « 36 15 machin », puis vous vous déconnectiez, et ensuite vous vous connectiez à « 36 15 bidule », puis vous vous déconnectiez et ensuite vous vous connectiez à autre chose.

Internet est un réseau à commutation de paquets, ce qui veux dire que quand votre ordinateur est connecté à Internet, il peux sans se déconnecter et se reconnecter, à la fois aller voir une page sur un site A et une page sur un site B. Vous pouvez simultanément, et sur le même ordinateur, faire fonctionner plusieurs protocoles de communication qui n’ont rien à voir.

Minitel 1Sur les réseaux téléinformatiques précédents, typiquement sur le Minitel, vous pouviez établir une connexion Minitel ou une connexion autre chose sur n’importe quel autre réseau téléinformatique, mais pas les deux simultanément. Vous faisiez ou bien du Minitel, ou bien autre chose, mais pas les deux.

Avec Internet, avec les réseaux à commutation de paquets, quand vous êtes connecté au réseau, vous êtes potentiellement connecté à la totalité des services. Donc, non seulement vous pouvez faire du Web, mais vous pouvez en même temps faire du téléchargement. Pendant que votre téléchargement tourne, vous pouvez continuer à surfer. Ça va moins vite mais ça fonctionne. Vous pouvez utiliser quelque chose dont vous avez l’impression que ce n’est pas Internet, en allumant le grand téléviseur dans le salon et en mettant TF1 pour regarder une émission : ça va pomper la bande passante sur votre ligne ADSL pour afficher l’émission mais ça ne vous empêche pas de surfer à coté. C’est parce que c’est de la commutation de paquets. Si on fait de la commutation de circuits, ça ne fonctionne pas.

C’est un réseau qui est essentiellement passif. Ça aussi c’est très différent de tout les réseaux précédents. Dans tous les réseaux précédents, le réseau était tenu de manière plus où moins centrale par une entreprise. C’est assez facile à reconnaître : il y a un directeur du réseau qui a une carte du réseau dans son bureau. En général, quand c’est en France, il a une carte de France avec dessiné tous les grands axes du réseau – c’est super jolie. Le directeur du réseau se sent un peu le maître du monde de son réseau. Vous allez voir le directeur réseau de la SNCF, ou de réseau ferré de France, il a une carte de toutes les lignes de chemins de fer dans son bureau, c’est une évidence. Ce sont des réseaux à l’ancienne, où on cherche à mettre l’intelligence dans le réseau. Par exemple, dans le téléphone, si vous voulez ajouter un nouveau service, comme le signal d’appel, on ne change pas les téléphones, on change les centraux téléphoniques. Il faut mettre à jour tous les centraux téléphoniques pour que quand un nouvel appel se présente sur votre ligne déjà occupé, où donc le circuit est déjà pris, où donc on ne peut pas commuter sur un autre circuit, le central émette un bipe sur une conversation en cours, que vous détectiez le bipe, qu’en l’entendant vous appuyiez sur un bouton de votre téléphone, et qu’à ce moment là le central commute les deux circuits pour que vous puissiez changer de ligne. C’est un modèle où le réseau est intelligent : quand on veux ajouter un nouveau service, on modifie le réseau.

Internet est un système où le réseau est bête : le réseau commute des paquets et les transporte et c’est tout. S’il n’y a pas la place, c’est-à-dire que vous demandez trop de débit, ça ne passe pas, simplement. Il y a des paquets qui se perdent, il y en a qui n’arrivent qu’a moitié à destination mais ce n’est pas le boulot du réseau de régler ce problème. C’est un réseau essentiellement passif qui ne comprend pas ce qu’il transporte. Le routeur ne sait pas si le flux qui est en train de passer c’est de la vidéo, c’est de la voix, ce sont des fichiers, ce sont des images, c’est du porno, ce n’est pas du porno : il ne sait pas et il n’a pas à savoir.

PatchworkTroisième élément, c’est un réseau a-centré. Cela veut dire que vous avez 40 000 réseaux distincts qui fonctionnent tous avec le même protocole très simple et qui sont interconnectés entres eux. Si vous avez l’image d’une immense dorsale internationale tenu par la « Internet Corporation », probablement située aux États-Unis, auquel se raccroche de petits opérateurs locaux ou régionaux, comme Orange ou Tetaneutral.net, cette image est fausse. L’image, la bonne, est beaucoup plus voisine du patchwork. Chacun a fabriqué, avec du fil et une aiguille, son petit bout personnel d’Internet. Tetaneutral a fait un petit bout, Orange a fait un bout moins petit et les deux sont interconnectés, soit de manière directe, soit de manière indirecte. Exactement comme les morceaux de votre patchwork qui sont cousus entre eux, ou bien en se touchant directement, ou bien sans se toucher, mais ils forment un tout cohérent, un tissu. C’est extrêmement important à comprendre car cela veut dire qu’il y a 40 000 directeurs technique d’Internet, qui ont tous une carte de leur réseau punaisée dans leur bureau. Et ils sont vachement fiers d’être les maîtres du monde de leur réseau dans leur bureau. Ce qu’ils font sur leur réseau, ne regarde quasiment qu’eux. Certains font des choses propres, ils ont un réseau qui transporte les données des abonnés, un point c’est tout. D’autres font des choses sales, c’est-à-dire qu’ils utilisent leur réseau de manière bizarre, pour filtrer des contenus, pour enlever tout ce qui ne leur plaît pas, enlever toutes les trames IP dans lesquels il y a le mot « Tian’anmen » qui traîne. Chaque directeur réseau fait ce qu’il veut et Internet c’est la somme de ces interconnexions de réseaux.

Pour l’immense majorité des utilisateurs de ce réseau, vous êtes incapables de dire quelles opérateurs réseaux sont traversés par vos paquets IP à chaque fois que vous cliquez sur quelque chose. Un mauvais ingénieur réseau sait le faire, avec deux ou trois commandes magiques il est capable de dire quels réseaux vous allez traverser. Mais l’immense majorité des gens n’en a pas conscience. Vous voyez un outils continu, alors que quand vous affichez une page web, il y a des morceaux qui viennent du site que vous avez demandé et il y a plein de morceaux qui viennent d’ailleurs. Les pubs viennent du site de l’annonceur, le « like » de Facebook, vient de chez Facebook, le « +1 » de Google, vient de chez Google, la petite icône Twitter vient de chez Twitter. Chacun de ces morceaux à suivit un chemin différent sur le réseau. Ça c’est impossible à faire dans un réseau à commutation de circuit. Le seul moyen serait de négocier des branchements un par un. Si on veut qu’un petit bidule de Twitter apparaisse sur la page de Facebook dans un système à commutation de circuit, il faut établir une connexion directe entre Twitter et Facebook. Dans un réseau à commutation de paquet, ce n’est pas la peine. C’est parce que tous ces réseaux sont interconnectés entre eux, qu’il se trouvera bien un chemin pour allez de chez vous à chez Facebook et de chez vous à chez Twitter, et que donc vous pouvez afficher une page qui agrège les deux.

C’est donc un réseau a-centré. Si je reprend cette image du patchwork, si je le découpe, de manière un petit peu brutale en plein milieux, j’obtiens donc deux patchworks qui sont chacun autonomes. Si vous cherchez une analogie dans le vivant, vous allez avoir un tout petit peu de mal, parce qu’en général, les êtres vivants quand on les coupes en deux, au moins une des deux moitiés meure. Avec internet, quand on coupe en deux, les deux moitiés restent vivantes et deviennent deux internets autonomes qui ne se parlent plus. Il n’y a dont pas un Internet, il y a des internets.

Il suffit que le réseau soit coupé en deux, ce qui arrive de temps en temps et vous avez deux internets. C’est même relativement commun : il suffit que je prennes une poignée de machines, je leur donne des adresses IP, je met un routeur au milieu. C’est un internet, tout petit, qui ne sert à rien et à personne à part les quatre copains qui sont dans la même pièce, mais c’est un internet. Le grand Internet, c’est celui qui est l’interconnexion des 40 000 réseaux publics et sur lesquels on s’est mis d’accord pour ne pas utiliser deux fois la même adresse. Et oui, sinon ça ne marche pas, c’est comme deux fois le même numéro de téléphone c’est le bordel. Quand on appel on ne sait pas lequel des deux téléphones sonne. En fait, il y a de bonne chance pour qu’aucun des deux ne sonne.

Logo de l'IANADonc sur Internet la principale contrainte pour que les opérateurs puissent s’interconnecter entre eux, c’est qu’il ne soit pas distribué deux fois la même adresse. Donc, il y a quelqu’un qui a un petit calepin et qui note : cette série d’adresse là je l’ai donnée à Orange, cette série d’adresse là, je l’ai donnée à SFR, cette série d’adresse là, je l’ai donnée à Tetaneutral, cette série d’adresse là, je l’ai donnée à telle entreprise, cette série d’adresse là, je l’ai donnée à tel groupe. Le petit mec avec son calepin, il s’appelle l’IANA, l’Internet Assigned Numbers Authority, et sa gouvernance politique est effectué par une association qui s’appelle l’ICAN, de droit états-unien, dans laquelle le gouvernement des États-Unis est fort représenté et les autres gouvernements ne le sont pas. C’est un bon sujet de troll en ce moment : de savoir s’il faut faire rentrer tous les gouvernements de la planète pour obtenir une vrai pétaudière… Moi, je serais plutôt d’avis qu’il faudrait juste sortir le gouvernement américain de l’ICAN.

Donc le réseau est essentiellement a-centré. Il n’est pas décentralisé. Le pouvoir politique en France est décentralisé, c’est-à-dire que tout le pouvoir est ultra-centralisé et quelques miettes sont accordés aux provinces. Sur le réseau, il n’y a pas de centre, il n’y a pas de pouvoir central. L’IANA, qui distribue les adresses IP, n’a pas de pouvoir de sanction. Si je fais quelque chose que je ne suis pas sensé faire avec mon réseau, l’IANA n’y peut rien. L’IANA peut dire, je retire à tel réseau les adresses que je lui avais attribuées. Oui, d’accord, mais l’IANA ne peut forcer personne à couper les interconnexions entre mon réseau et et celui des autres. Si les gens avec qui je suis connecté n’ont pas envie de couper ces connexions, elles vont rester. Si je continue à utiliser ces adresses, ils peuvent bien noter dans leur petit calepin qu’elles sont libres mais dans la pratique elles sont utilisés, et s’ils les donnent à quelqu’un d’autre ça ne va pas fonctionner, ça va engendrer des pannes pour moi et pour le quelqu’un d’autre. L’IANA n’a pas d’autorité. L’IANA ne peut pas me forcer à établir ou à couper une liaison réseau.

Internet fonctionne parce que les 40 000 opérateurs sont à peu près d’avis de faire à peu près la même chose. Mais ce n’est pas gouverné, il y a des règles d’attribution que l’ICAN impose et que l’IANA respecte. Si ces règles étaient jugés pénibles par une grosse partie des opérateurs, ils cesseraient de les respecter, tout simplement. Donc en fait, Internet ne fonctionne que parce que 40 000 opérateurs ont réussit à se mettre d’accord sur le fait de ne rien faire. S’il y en a un qui se met à dire, moi je vais faire de l’internet mieux, autrement, tout à coup son internet ne va plus marcher avec celui des autres et l’ensemble n’a plus de sens. Son réseau n’a plus aucun intérêt : il a refabriqué son petit Minitel dans son petit coin mais son réseau n’est plus Internet. En fait, c’est parce que les 40 000 opérateurs ne font à peu près rien, que le système fonctionne.

Le système est, du coup, extrêmement résistant : comme je vous l’ai expliqué, si on tranche internet en deux. Par exemple, imaginez qu’on raye les États-Unis de la carte. On se dit que si on fait une ablation des États-Unis, Internet ne marche plus… Ce n’est pas vrai. Internet continue à fonctionner si vous faite une ablation des États-Unis. Alors effectivement, il y a plein de site qui ne vont plus marcher. Si vous voulez aller sur le site de la Maison Blanche, ça va très mal se passer, si vous voulez aller sur plein de vos site favori qui sont des sites états-uniens, ça va marcher bizarrement, voire pas du tout. Mais si vous voulez aller sur le site de l’Élysée, ça va continuer à fonctionner. Si vous voulez aller sur le site de Tetaneutral, pareil. Si vous voulez aller sur plein de sites, sur n’importe quoi sauf un site qui est sur un ordinateur aux États-Unis, ça va continuer à fonctionner. Internet est en ce sens extrêmement résistant.

Internet MapEt ce qui permet ça, c’est le fait qu’il soit extraordinairement simple. Si vous regardez la quantité de code informatique qu’il faut pour écrire un routeur internet, c’est ridiculement léger. Les premier routeurs, les plus petit et les plus faciles, c’était quelque millier de lignes de code. Dans les réseaux d’avant, le moindre routeur était une usine monstrueuse en comparaison. C’est une des raisons de son succès. Écrire quelque chose qui fonctionne sur internet, écrire quelque chose qui respecte le protocole IP, c’est un programme simple. Les équipements mis en œuvre sont simples. Ce qui est compliqué, c’est ce qui est en périphérie du réseau. Écrire un navigateur web, c’est indémerdable. Par contre, le réseau qui transporte ça n’a pas changé. Vous prenez le navigateur web le moderne d’aujourd’hui, vous le téléportez 20 ans dans le passé, quand les tout premiers serveurs web sont apparus, ça fonctionnera très bien. Les fondamentaux du réseau n’ont pas bougé, et ils bougeront très peu, justement parce que tout fonctionne sur le fait que c’est simple.

Internet ce sont également des services. Il y a quelques services centralisés. Quand tout est bien fait et que tout est bien rangé, il y a un seul service centralisé, c’est le service de nommage. Il n’y a pas de raison majeure à ça : il pourrait ne pas être centralisé mais pour le moment, il est unique. C’est le système de DNS : c’est ce qui à partir d’un nom comme www.tetaneutral.net vous obteniez une adresse IP unique qui permet de contacter l’ordinateur qui va bien. Toutefois ce système suit une centralisation distribué, c’est a dire que n’importe qui peut créer ses propres serveurs DNS, mais au final, seul une petite poignée de serveurs se trouve au sommet de la pyramide et font autorités.

Il y a des services qui sont entièrement centralisés mais qui ne sont pas vitaux. Les exemples types, ça va être MSN, ça va être Skype, ça va être Facebook, il y en a vraiment beaucoup. Ceux là, franchement, ils auraient aussi bien marché sur le Minitel.

Et puis il y a des applications qui sont a-centrées. L’exemple type c’est Jabber ou c’est le Mail. Jabber, je ne sais pas si tout le monde connaît, c’est une application qui permet de faire de la messagerie instantanée. Vous allez me dire, mais comme Skype ! Non, pas comme Skype. Sur Skype votre nom c’est toto42. Sur Jabber votre nom c’est toto42@mon-nom-de-domaine.fr ou chez n’importe quel nom de domaine valable. N’importe qui peut, sur son ordinateur, installer un serveur Jabber, sur lequel, puisqu’il a mon-ordinateur.mon-domaine.fr, il pourra créer des comptes Jabber avec le-nom-quil-veux@mon-ordinateur.mon-domaine.fr. Et n’importe quel utilisateur de Jabber dans le monde, ayant un compte sur un autre serveur, pourra contacter les utilisateurs de son serveur. Exactement comme le mail. Le mail n’est pas centralisé.

Ça c’est important à comprendre pour comprendre la nature de l’objet. On a passé la parie la plus technique.

Sur ce que Internet n’est pas…

Mire de télévisionInternet n’est pas un réseau de diffusion. La télévision, c’est un réseau de diffusion. Que ce soit par câble, par satellite ou par voie hertzienne, c’est un réseau de diffusion : il y a un point qui émet, et il y a un réseau qui transporte la pravda jusqu’au consommateur. Ça c’est un réseau de diffusion. Que ce soit diffusé par voie hertzienne, avec une belle antenne râteau sur le toit, ou que ce soit diffusé avec du multicast sur du réseau IP de dernière génération avec une box révolution ADSL bidule, c’est de la diffusion. Il n’y a pas de différence fondamentale dans le concept entre une antenne râteau et un freenitel, c’est pareil et c’est de la diffusion. Internet n’est pas un réseau de diffusion. Internet permet de faire de la diffusion, beaucoup regardent des vidéo sur Youtube, c’est bien de la diffusion. Internet permet de faire de la diffusion mais ce n’est pas un réseau de diffusion.

Ce n’est pas non plus un réseau de communication. Le téléphone est un réseau de communication. Vous tapez le numéro de téléphone de tata Roberte et quand tata Roberte décroche, vous communiquez avec elle. On fait parfois des réseaux de communication un peu plus complexe ou quatre personnes appellent le même numéro de téléphone et peuvent discuter toutes les quatre en même temps. On est à deux doigts d’avoir réinventer le salon IRC, en vachement plus cher ! Ça c’est un réseau de communication. Internet permet de faire de la communication, vous avez tous manipulé de la messagerie instantanée, vous avez tous manipulé des salons de discussion dans la messagerie instantanée. La discussion à quatre dans MSN est beaucoup moins compliqué que par téléphone. Internet permet de fabriquer n’importe quel réseau de communication mais il n’est pas un réseau de communication.

Internet n’est pas un média. Lefigaro.fr, lemonde.fr, tf1.fr, legorafi.fr, pour prendre les vrais bon, ce sont des médias. Et ce sont des média qui ont comme réseau de diffusion, Internet.

Internet permet de faire un réseau de diffusion, Internet permet de faire un réseau de communication, mais pas que ça, et ce n’est certainement pas un média.

Internet est un liant, c’est quelque chose de simple, c’est quelque chose de fondamental, qui permet de transporter n’importe quoi n’importe comment de manière relativement efficace. Ça peut faire de la diffusion, ça peut faire de la communication, ça peut héberger des médias et ça peut faire à peut prêt n’importe quoi qu’on puisse imaginer avec un réseau qui soit un hybride de ces trois bouts là, ou probablement encore d’autres trucs, qu’on peut imaginer.

Tout ça c’est ce qu’est Internet. Donc si vous avez dans l’idée qu’internet est le successeur du téléphone, vous avez en partie faux. Internet est un outils beaucoup plus générique, qui permet d’émuler le téléphone d’une main quand il s’emmerde alors que tout le reste du réseau fait autre chose. Typiquement, tous les transports téléphoniques internationaux, de nos jours, se font sur le protocole IP et ça ne doit pas occupé 2 % du réseau. La totalité du trafic voix de la planète est négligeable devant le trafic de Daylymotion. Donc quand je vous dit qu’Internet fait du réseau de communication, comme ça, d’une main distraite, pendant qu’il est occupé à autre chose, c’est vrai.