Louis Pouzin

Louis Pouzin

Louis Pouzin est l’un des pionniers français les plus importants de l’histoire de l’informatique. Dans les années 1960, il travaille au MIT sur CTSS, imagine un ancêtre des scripts de commandes et propose le terme shell. Quelques années plus tard, il dirige en France le projet Cyclades, qui expérimente une architecture de réseau fondée sur des paquets indépendants : les datagrammes.Cette approche influence les recherches qui conduisent ensuite à TCP/IP et à Internet. Pouzin n’a donc pas « inventé Internet » à lui seul. Son apport est plus précis : il fait partie de ceux qui montrent qu’un réseau peut rester relativement simple en confiant une partie essentielle du contrôle aux ordinateurs qui communiquent.

Fiche rapide

  • Nom : Louis Henri Pouzin
  • Naissance : 20 avril 1931
  • Lieu de naissance : Chantenay-Saint-Imbert, Nièvre, France
  • Nationalité : française
  • Formation : École polytechnique, promotion 1950
  • Domaine : systèmes d’exploitation, réseaux informatiques, protocoles de communication
  • Contributions majeures : RUNCOM, concept du shell, METEOS, réseau Cyclades, architecture à datagrammes

1963 : du MIT au concept de shell

Louis Pouzin commence sa carrière dans les années 1950, d’abord dans les télécommunications puis chez Bull. Un tournant important intervient en janvier 1963, lorsqu’il rejoint le centre de calcul du MIT.

Il y travaille sur CTSS, le Compatible Time-Sharing System, développé notamment sous la direction de Fernando Corbató. Le temps partagé change profondément la manière d’utiliser un ordinateur : plusieurs utilisateurs peuvent travailler depuis des terminaux et interagir directement avec la même machine, au lieu de préparer un programme puis d’attendre son exécution en traitement par lots.

Pouzin participe au développement d’outils pour CTSS et se heurte rapidement à un problème concret : certaines tâches nécessitent de saisir régulièrement les mêmes suites de commandes.

Il développe alors RUNCOM. L’utilisateur peut placer plusieurs commandes dans un fichier puis demander au système de les exécuter automatiquement. RUNCOM accepte également des paramètres, ce qui permet de réutiliser une même suite de commandes dans différentes situations.

Le principe rappelle ce que nous appelons aujourd’hui un script de commandes. RUNCOM n’est cependant pas encore le « shell ».

Cette idée apparaît ensuite lors de la préparation de Multics, le successeur beaucoup plus ambitieux de CTSS. À la fin de 1964 et au début de 1965, Pouzin réfléchit au langage qui permettra à l’utilisateur de commander le futur système. Il imagine cette interface comme une couche distincte entourant les fonctions internes de Multics et propose pour la désigner le mot shell, littéralement « coquille ».

Pouzin quitte le MIT en 1965 avant la réalisation du premier shell de Multics. Son travail contribue néanmoins à définir le principe et le vocabulaire utilisés par l’équipe du projet.

Quelques années plus tard, UNIX reprend à son tour le terme pour son interpréteur de commandes. Le mot s’imposera ensuite avec les différents shells Unix, puis avec le Bourne shell, Bash et de nombreux autres interpréteurs.

L’expérience du MIT donne ainsi à Pouzin une solide connaissance des systèmes interactifs. De retour en France, il applique d’abord cette expérience aux systèmes d’exploitation, avant de s’attaquer à un problème d’une autre échelle : faire communiquer des ordinateurs éloignés.

De METEOS aux premiers réseaux

Après son retour, Pouzin travaille notamment sur METEOS, un système destiné à la Météorologie nationale française. Il doit permettre de faire cohabiter sur un même ordinateur plusieurs activités : calcul scientifique, traitement de données, climatologie ou prévisions.

Le projet l’amène à travailler sur le partage des ressources et la communication entre programmes. Il expérimente notamment des mécanismes permettant de transmettre directement les résultats d’un processus à un autre, dans un esprit que l’on retrouvera sous d’autres formes dans les systèmes modernes.

Mais au début des années 1970, la question change d’échelle. Il ne s’agit plus seulement de faire coopérer plusieurs programmes dans une machine. Universités et centres de recherche possèdent désormais des ordinateurs différents, parfois installés à plusieurs centaines de kilomètres les uns des autres. Comment les faire communiquer ?

Aux États-Unis, ARPANET fonctionne depuis 1969. Pouzin connaît le projet et rencontre plusieurs chercheurs américains impliqués dans les réseaux. La France souhaite à son tour expérimenter une infrastructure de communication entre ordinateurs.

Fin 1971, dans le contexte du Plan Calcul, Pouzin reçoit la mission de constituer une équipe à l’IRIA — futur INRIA — pour développer ce réseau expérimental.

Il prendra le nom de Cyclades.

Cyclades : construire un réseau autrement

Cyclades ne cherche pas simplement à reproduire ARPANET. Pouzin et son équipe veulent connecter des machines différentes et réfléchir dès le départ à la possibilité de faire communiquer plusieurs réseaux entre eux.

Le réseau de transmission utilisé par Cyclades est baptisé CIGALE. Ses nœuds reposent notamment sur des Mitra 15, mini-ordinateurs français fabriqués par la CII.

La différence fondamentale se trouve cependant dans la manière dont CIGALE transporte les informations.

Lorsqu’un ordinateur doit transmettre un ensemble de données, celles-ci sont découpées en paquets. Cyclades choisit de traiter chaque paquet indépendamment. Ces paquets sont appelés datagrammes.

On peut les comparer à des cartes postales. Si trois cartes sont envoyées au même destinataire, chacune porte sa propre adresse. Elles peuvent emprunter des chemins différents et ne sont pas obligées d’arriver dans l’ordre dans lequel elles ont été envoyées.

Il peut donc arriver que le destinataire reçoive successivement la troisième, la première puis la deuxième.

Le réseau n’essaie pas nécessairement de corriger lui-même toutes ces situations. Les ordinateurs situés aux extrémités peuvent vérifier si des données manquent, remettre les informations dans le bon ordre ou demander une retransmission.

C’est un choix essentiel : le cœur du réseau reste relativement simple et les machines qui communiquent prennent en charge une partie de l’intelligence du système.

Pouzin et son équipe ne partent pas de zéro. Paul Baran aux États-Unis et Donald Davies au Royaume-Uni avaient déjà développé les principes de la commutation de paquets. Cyclades pousse cependant très loin l’idée d’un réseau dans lequel les paquets sont indépendants et dans lequel la fiabilité n’est pas entièrement assurée par l’infrastructure intermédiaire.

Le mot « datagramme » lui-même n’est d’ailleurs pas une invention personnelle de Pouzin. Il attribuera sa proposition à l’ingénieur norvégien Halvor Bothner-By. L’apport important de Cyclades n’est donc pas le mot, mais l’architecture construite autour de ce principe.

En novembre 1973, une première démonstration importante relie des ordinateurs situés notamment à Rocquencourt et Grenoble. Le réseau s’étend ensuite et connecte, au milieu des années 1970, plusieurs dizaines de machines et différents centres de recherche.

Cyclades fonctionne. Mais son intérêt historique dépasse bientôt le seul réseau français.

De Cyclades à TCP/IP

Au début des années 1970, chercheurs américains, britanniques et français échangent régulièrement leurs travaux. Une nouvelle question apparaît : comment relier non plus seulement des ordinateurs, mais des réseaux différents ?

C’est le problème de l’internetworking, littéralement l’interconnexion de réseaux. Et c’est précisément le problème qui donnera naissance à Internet.

En 1973, Pouzin publie une présentation détaillée de l’architecture de Cyclades. La même période voit Vinton Cerf et Robert Kahn travailler sur un protocole capable de relier plusieurs réseaux de nature différente. Leur article majeur, A Protocol for Packet Network Intercommunication, paraît en 1974.

Les échanges ne se déroulent pas en vase clos. Les travaux britanniques sur la commutation de paquets, ARPANET et Cyclades alimentent les réflexions. Les premières spécifications de TCP citent d’ailleurs les travaux de Pouzin et de son équipe.

Cyclades n’est pourtant pas TCP/IP. Cerf, Kahn et de nombreux autres chercheurs apportent leurs propres solutions et feront évoluer les protocoles pendant plusieurs années avant l’architecture TCP/IP que nous connaissons.

Mais une parenté essentielle demeure : avec IP, le réseau transporte des datagrammes sans garantir à lui seul qu’ils arriveront tous, ni qu’ils arriveront dans le bon ordre. Lorsque cette fiabilité est nécessaire, une couche supérieure comme TCP peut détecter les pertes, remettre les données dans l’ordre et demander des retransmissions.

L’idée selon laquelle certaines fonctions doivent être laissées aux machines situées aux extrémités du réseau deviendra l’un des principes importants de l’architecture d’Internet.

Dire que Louis Pouzin a « inventé Internet » serait donc faux. Mais réduire Cyclades à une expérience française sans lendemain le serait tout autant. Le projet fait partie des expériences qui ont permis de tester et de valider des idées reprises dans la construction d’Internet.

Pourquoi Cyclades disparaît-il ?

Le succès technique ne garantit pas qu’une technologie s’impose.

Dans les années 1970, deux conceptions des réseaux s’affrontent. Cyclades privilégie les datagrammes et confie une partie importante du contrôle aux ordinateurs utilisateurs. Les administrations de télécommunications européennes préfèrent généralement une autre approche : les circuits virtuels, dans lesquels le réseau établit et conserve une connexion logique pendant la communication.

Cette seconde approche devient notamment celle de la norme X.25. En France, le réseau public Transpac l’adopte.

Les financements de Cyclades diminuent et le projet s’arrête progressivement à la fin des années 1970.

Cet épisode est parfois résumé en affirmant que la France aurait choisi le Minitel plutôt qu’Internet. La formule est séduisante, mais la chronologie est trompeuse : les choix en faveur de X.25 et de Transpac sont antérieurs au succès du Minitel.

Télétel s’appuiera ensuite sur Transpac et renforcera cette architecture, mais le Minitel n’est pas la cause initiale de l’abandon de Cyclades.

Ce qui disparaît en France continue néanmoins à influencer les recherches menées ailleurs.

Une reconnaissance tardive

Pendant plusieurs décennies, le rôle de Cyclades reste beaucoup moins connu du grand public que celui d’ARPANET. La reconnaissance internationale de Pouzin devient surtout visible bien plus tard.

En 1997, l’ACM SIGCOMM le récompense pour ses travaux pionniers sur les communications par paquets sans connexion. En 2012, il rejoint la première promotion de l’Internet Hall of Fame.

L’année suivante, il reçoit avec Robert Kahn, Vinton Cerf, Tim Berners-Lee et Marc Andreessen le premier Queen Elizabeth Prize for Engineering, consacré cette année-là aux grandes contributions ayant permis le développement d’Internet et du Web.

En 2019, le Computer History Museum le nomme également Fellow pour son rôle pionnier dans les réseaux à commutation de paquets.

Ces distinctions arrivent longtemps après Cyclades, mais elles replacent le projet français dans l’histoire internationale des réseaux.

Pourquoi Louis Pouzin compte encore aujourd’hui

Le parcours de Louis Pouzin traverse deux transformations majeures de l’informatique.

Au MIT, il participe à une époque où l’ordinateur cesse progressivement d’être une machine à laquelle on remet un travail pour devenir un système avec lequel on dialogue. RUNCOM et le concept de shell appartiennent à cette évolution.

Avec Cyclades, le changement est différent : les ordinateurs cessent d’être des machines isolées et deviennent les éléments de réseaux capables de communiquer entre eux.

Dans les deux cas apparaît une idée commune : plutôt que construire un système central toujours plus complexe, il est souvent plus puissant de fournir des mécanismes simples et généraux que les programmes et les utilisateurs peuvent combiner.

C’est cette philosophie qui rend le parcours de Pouzin particulièrement intéressant.

Son nom reste moins connu que ceux de Vinton Cerf, Robert Kahn ou Tim Berners-Lee. Pourtant, entre le shell, les datagrammes et Cyclades, Louis Pouzin intervient à deux moments essentiels où se dessinent les systèmes d’exploitation interactifs puis l’architecture des réseaux modernes.

Il n’est pas « l’inventeur d’Internet ». Il est l’un de ceux sans lesquels son histoire aurait probablement été différente.

Photo de couverture : Jérémie Bernard (Purepix.fr), CC BY-SA 3.0, via Wikimedia Commons.

Publications similaires

  • Walter Brattain

    Walter Brattain occupe une place essentielle dans l’histoire de l’électronique. Avec John Bardeen, il réalise en décembre 1947 le premier transistor fonctionnel, ouvrant la voie au remplacement progressif des tubes à vide puis à toute l’électronique moderne.Dans l’équipe des Bell Laboratories, les rôles sont complémentaires. John Bardeen excelle dans l’analyse théorique ; Brattain, lui, est…

  • J. Presper Eckert

    J. Presper Eckert : l’ingénieur de l’ENIAC et pionnier de l’UNIVAC John Adam Presper Eckert Jr., généralement appelé J. Presper Eckert ou simplement « Pres », est l’un des principaux ingénieurs de la naissance de l’informatique électronique. Avec le physicien John W. Mauchly, il conçoit l’ENIAC, l’un des premiers grands ordinateurs électroniques numériques programmables à…

  • Linus Torvalds

    Linus Torvalds est l’une des figures majeures de l’informatique contemporaine. En 1991, alors qu’il est étudiant à l’université d’Helsinki, il commence à développer le noyau Linux sur un ordinateur personnel équipé d’un processeur Intel 80386. Ce qui débute comme un projet personnel devient rapidement un développement collectif auquel participent des programmeurs du monde entier. Linux…

  • Bob Albrecht

    Bob Albrecht est l’une des figures importantes de l’informatique populaire et éducative aux États-Unis. Programmeur, enseignant et auteur, il défend dès les années 1960 l’idée que les ordinateurs ne doivent pas rester réservés aux grandes entreprises, aux administrations et aux spécialistes. Pour lui, ils peuvent aussi devenir des instruments d’apprentissage, de jeu, de créativité et…

  • Alan Turing

    Alan Turing est un mathématicien, logicien et cryptanalyste britannique dont les travaux ont profondément marqué l’histoire de l’informatique. En 1936, il propose un modèle mathématique qui permet de définir ce qu’une machine peut calculer. Ensuite, pendant la Seconde Guerre mondiale, il joue un rôle majeur dans l’analyse des communications allemandes chiffrées par Enigma. Après la…

  • Grace Hopper

    Grace Hopper est l’une des grandes pionnières de la programmation. Mathématicienne, officier de l’US Navy et informaticienne, elle participe pendant la Seconde Guerre mondiale à la programmation du Harvard Mark I. Elle consacre ensuite une grande partie de sa carrière à une idée alors loin d’être évidente : l’ordinateur doit prendre en charge une partie…