Résumé
- En 1983, le PING des Fuzzball décrit par Dave Mills existait déjà depuis plusieurs années comme outil de mesure à plusieurs sondes ; le programme BSD de Mike Muuss était une autre implémentation, pensée pour Unix.
- Selon le souvenir publié plus tard par Muuss, la version BSD date de décembre 1983 et a nécessité la prise en charge des sockets ICMP brutes par le noyau.
Une panne se manifeste ; il faut pourtant transformer cette impression en question vérifiable. Le poste distant répond-il à une sonde donnée, depuis ce point précis et à cet instant ? Pour répondre, il faut choisir un paquet, chronométrer l’aller-retour, associer la réponse à la requête et montrer le résultat. L’histoire de « ping » n’est donc pas celle d’une seule invention. Deux programmes, dans deux environnements, ont fait de la mesure Echo un geste de travail différent.
Le mécanisme ICMP précédait les deux. En septembre 1981, RFC 792 définit Echo et Echo Reply. Une requête peut contenir des données, un identifiant et un numéro de séquence que l’émetteur peut utiliser pour faire correspondre requêtes et réponses ; le poste répondeur renvoie les données et les champs. Le RFC ne décrit ni une commande répétitive, ni un tableau de pertes, ni un contrôle universel des applications. Il précise aussi que l’ICMP rapporte l’état de l’environnement IP sans garantir la livraison des datagrammes ou des messages de contrôle.
Le PING de Dave Mills fonctionnait déjà sur les Fuzzball. Dans le RFC 889, publié en décembre 1983, Mills appelle ce programme le « PING original » et développe son nom en « Packet InterNet Groper ». Il écrit qu’il servait depuis six ans à des tests et mesures de l’Internet et de ses réseaux clients. C’était l’un des paquets de mesure d’un hôte LSI-11 instrumenté : il envoyait plusieurs types de sondes, dont ICMP Echo, traitait les réponses, enregistrait des temps écoulés et d’autres informations, puis affichait des histogrammes et des traces en temps réel. La description évoque un instrument de laboratoire entouré d’outils d’analyse.
Le RFC permet d’en comprendre l’emploi. Les essais menés en octobre et novembre 1983 étudiaient notamment le rapport entre longueur des paquets et délai. Un cycle consistait à envoyer un Echo de longueur définie, attendre sa réponse et relever le temps écoulé ; une série comptait 512 cycles. Les données aidaient à examiner les chemins, les pertes et leurs conséquences sur le calcul du délai de retransmission TCP. Mills distingue le délai du réseau de la mise en file d’attente dans les hôtes, qui pouvait être importante. Un chiffre de latence ne racontait donc pas, à lui seul, toute la traversée.
Le récit de Mike Muuss décrit un autre contexte. Il se souvient qu’en juillet 1983, lors d’une réunion DARPA en Norvège, Mills lui avait parlé de mesures de latence par Echo temporisé sur des Fuzzball LSI-11. En décembre, un comportement étrange du réseau IP du Ballistic Research Laboratory l’a conduit à écrire PING pour 4.2a BSD UNIX. Cette conversation et sa chronologie reposent sur le témoignage ultérieur de Muuss. Son programme s’appuyait sur une socket Berkeley SOCK_RAW/AF_INET pour l’ICMP, mais le noyau ne permettait pas encore cet accès. Muuss raconte avoir ajouté le support nécessaire dans le noyau durant la nuit. Avant même son premier paquet de test, son collègue Chuck Kennedy avait trouvé et réparé le problème matériel local.
La différence est celle de l’interface opérationnelle. Le PING de Fuzzball appartenait à un système d’expérimentation et à une suite de mesures. Le ping de Muuss transformait Echo en commande Unix que l’opérateur pouvait relancer et lire. Son exemple affiche un numéro de séquence, un temps par réponse, puis les nombres transmis et reçus, la perte et les temps aller-retour minimum, moyen et maximum. ICMP fournit la réponse ; l’utilitaire ajoute la répétition, la mesure et un résumé lisible. Muuss affirme que Berkeley a repris son code et ses modifications du noyau, puis intégré le programme à Berkeley UNIX.
Cela atteste cette intégration selon son récit, sans dater chaque version ni garantir un comportement identique partout.
Le nom, lui aussi, possède deux traces. Muuss dit avoir pensé au son du sonar et à l’écholocalisation. Le RFC de Mills donne à l’ancien outil Fuzzball l’expansion « Packet InterNet Groper » ; Muuss indique qu’il n’en avait entendu parler que de seconde main comme proposition de Mills. Il est donc prudent de distinguer l’expansion associée au PING de Mills et l’image du sonar donnée par Muuss, plutôt que de trancher une origine unique.
Une réponse Echo prouve qu’un répondeur a renvoyé cette sonde, avec les données et valeurs de correspondance attendues. Une série montre les délais et absences de réponse observés depuis un point, dans une fenêtre donnée et avec des paramètres connus. Elle ne prouve pas qu’un site web, un service de messagerie ou une application fonctionne ; elle n’authentifie pas l’identité du répondant et ne couvre pas tous les chemins. Le silence peut venir d’un filtrage, d’une panne, de congestion ou de politique. Les expériences Fuzzball gagnaient en force grâce aux répétitions et aux traces ; le ping BSD rendait cette observation facile à répéter.
La simplicité d’usage ne rend pas la conclusion plus large.
Le changement de 1983 ne va donc pas de l’absence de ping à son invention par Muuss. ICMP Echo figurait déjà dans RFC 792 ; Mills documente un PING Fuzzball antérieur et destiné à l’expérience. Muuss a transposé l’idée de sonde dans l’espace pratique de BSD et fourni la capacité noyau manquante. La commande a rendu visible une petite question réseau. Elle n’a jamais répondu, à elle seule, à la question plus large de savoir si le service fonctionne.
Sources
Briefing des membres
Contexte approfondi du profil
Connectez-vous avec le bon niveau d'adhésion pour débloquer le briefing complet et les notes de source.
Réservé à Strategic Circle
Strategic Circle
Ouvert à tous les lecteurs. Débloquez les briefings de profil après adhésion et connexion.
Rejoindre Strategic CircleRéservé aux membres de Leadership Alliance
Leadership Alliance
Réservé aux propriétaires et dirigeants qualifiés d'actifs IP ; connectez-vous pour débloquer les briefings Alliance.
Rejoindre Leadership Alliance
