
L' interface de traitement des messages ( IMP ) était le nœud de commutation de paquets utilisé pour interconnecter les réseaux participants à l' ARPANET de la fin des années 1960 à 1989. Il s'agissait de la première génération de passerelles , aujourd'hui appelées routeurs . Un IMP était un mini-ordinateur Honeywell DDP-516 renforcé , doté d'interfaces et de logiciels spécifiques. Par la suite, les IMP furent fabriqués à partir du Honeywell 316 non renforcé, capable de gérer les deux tiers du trafic de communication pour environ la moitié du coût. Un IMP nécessitait une connexion à un ordinateur hôte via une interface série bit à bit spéciale , définie dans le rapport BBN 1822. Le logiciel IMP et le protocole de communication du réseau ARPA exécuté sur les IMP furent décrits dans la RFC 1 , le premier d'une série de documents de normalisation publiés par ce qui allait devenir l' Internet Engineering Task Force (IETF).
Histoire

Le concept d'ordinateur d'interface pour la mise en réseau informatique a été proposé pour la première fois en 1966 par Donald Davies pour le réseau NPL en Angleterre et mis en œuvre là-bas en 1968-1969.
La même idée a été développée indépendamment début 1967 lors d'une réunion des principaux chercheurs de l' Agence pour les projets de recherche avancée (ARPA) du département de la Défense, consacrée à l'interconnexion de machines à travers le pays. Larry Roberts , qui a dirigé la mise en œuvre d'ARPANET, a initialement proposé un réseau d' ordinateurs hôtes . Wes Clark a suggéré d'insérer « un petit ordinateur entre chaque ordinateur hôte et le réseau de lignes de transmission » , c'est-à-dire de faire de l'IMP un ordinateur distinct.
Les IMP ont été construits par la société Bolt Beranek and Newman (BBN) , basée dans le Massachusetts, en 1969. BBN avait été chargée de construire quatre IMP, le premier devant être livré à l'UCLA avant la fête du Travail (Labor Day). Les trois autres devaient être livrés à un mois d'intervalle, achevant ainsi le réseau en douze mois. Lorsque le sénateur du Massachusetts, Edward Kennedy, a appris la signature de cet accord d'un million de dollars par BBN, il a envoyé un télégramme félicitant la société pour la construction du « Processeur de messages interconfessionnels ».
L'équipe travaillant sur l'IMP s'appelait elle-même les « gars de l'IMP » :
- Chef d'équipe : Frank Heart
- Logiciels : Willy Crowther , David Walden , Bernie Cosell et Paul Wexelblat
- Matériel : Severo Ornstein , Ben Barker
- Théorie et collaboration avec les personnes mentionnées ci-dessus concernant la conception globale du système : Bob Kahn
- Autre : Hawley Rising
- Ont rejoint l'équipe IMP par la suite : Marty Thrope (matériel), Jim Geisman, Truett Thach (installation), Bill Bertell (Honeywell)
BBN a entamé la programmation en février 1969 sur des automates Honeywell DDP-516 modifiés. Le code final, long de six mille mots , était écrit en langage assembleur Honeywell 516. Le logiciel IMP était principalement développé sur un PDP-1 , où le code était écrit et édité, puis exécuté sur l'automate Honeywell.
Des échanges techniques considérables ont eu lieu avec l'équipe britannique chargée de la construction du réseau NPL et avec Paul Baran de RAND , mais l'équipe BBN a développé de manière indépendante des aspects importants du fonctionnement interne du réseau, tels que le routage, le contrôle de flux, la conception logicielle et le contrôle du réseau.
BBN a conçu l'IMP comme un simple « messager » assurant uniquement le stockage et la retransmission des données. BBN a uniquement conçu la spécification hôte-IMP, laissant aux sites hôtes le soin de développer leurs propres interfaces hôte-hôte. L'IMP disposait d'un mécanisme de contrôle d'erreurs qui rejetait les paquets erronés sans accusé de réception ; l'IMP source, ne recevant pas d'accusé de réception, renvoyait alors un paquet dupliqué. Conformément aux exigences de l'appel d'offres de l'ARPA, l'IMP utilisait une somme de contrôle de 24 bits pour la correction d'erreurs. BBN a opté pour un calcul matériel de la somme de contrôle, plus rapide qu'un calcul logiciel. Initialement conçu pour être connecté à un seul ordinateur hôte par site, l'IMP a finalement été conçu, à la demande des chercheurs et des étudiants des sites hôtes, pour se connecter à plusieurs ordinateurs hôtes.
Le premier système IMP a été livré au groupe de Leonard Kleinrock à l'UCLA le 30 août 1969. Il utilisait un ordinateur hôte SDS Sigma 7. Le groupe de Douglas Engelbart au Stanford Research Institute (SRI) a reçu le deuxième système IMP le 1er octobre 1969. Il était connecté à un ordinateur hôte SDS 940. Le troisième système IMP a été installé à l'Université de Californie à Santa Barbara le 1er novembre 1969. Le quatrième système IMP a été installé à l'Université de l'Utah en décembre 1969. Le premier test de communication entre les deux systèmes (UCLA et SRI) a eu lieu le 29 octobre 1969, lorsqu'une tentative de connexion à la machine du SRI a été effectuée. Seules les deux premières lettres ont pu être transmises. La machine du SRI a planté à la réception du caractère « g ». Quelques minutes plus tard, le problème a été corrigé et la tentative de connexion a abouti.
BBN a développé un programme pour tester les performances des circuits de communication. Selon un rapport déposé par Heart, un test préliminaire effectué fin 1969, basé sur une période d'activité de 27 heures sur la ligne UCSB-SRI, a révélé « environ un paquet erroné pour 20 000 » ; des tests ultérieurs « ont mis en évidence une variation de 100 % de ce nombre, apparemment due à de nombreuses périodes exceptionnellement longues (de l'ordre de plusieurs heures) sans erreur détectée ».
Il existait une variante de l'IMP, appelée TIP (Terminal IMP), qui connectait des terminaux (c'est-à-dire des télétypes ) ainsi que des ordinateurs au réseau ; elle était basée sur le Honeywell 316, une version ultérieure du 516. Plus tard, certains IMP basés sur Honeywell ont été remplacés par des IMP multiprocesseurs BBN Pluribus , mais finalement BBN a développé un clone microprogrammé de la machine Honeywell.
Les IMP étaient au cœur de l'ARPANET jusqu'à sa mise hors service par la DARPA en 1989. La plupart des IMP ont été démantelés, mis au rebut ou transférés au MILNET . Certains sont devenus des objets de musée ; Kleinrock a exposé l'IMP numéro un au public à l'UCLA. Le dernier IMP de l'ARPANET était celui de l'Université du Maryland.

Rapport BBN 1822
Le rapport BBN 1822 spécifie la méthode de connexion d'un ordinateur hôte à un IMP. Cette connexion et ce protocole sont généralement désignés par le numéro du rapport 1822. La spécification a été rédigée par Bob Kahn .
Pour transmettre des données, l'hôte construit un message contenant l'adresse numérique d'un autre hôte sur le réseau (semblable à une adresse IP sur Internet ) et un champ de données, puis transmet ce message via l'interface 1822 à l'IMP. L'IMP achemine le message vers l'hôte de destination en utilisant des protocoles qui ont ensuite été adoptés par les routeurs Internet. Les messages pouvaient stocker une longueur totale de 8159 bits, dont les 96 premiers étaient réservés à l'en-tête (« leader »).
Bien que la transmission des paquets sur Internet soit généralement considérée comme non fiable, la fiabilité de la transmission des messages 1822 était garantie. En cas d'échec de livraison, le système IMP envoyait à l'hôte d'origine un message signalant l'échec. En pratique, il existait cependant de rares cas où l'hôte pouvait ne pas recevoir la notification de perte d'un message, ou encore où le système IMP pouvait signaler un message comme perdu alors qu'il avait en réalité été reçu.
La spécification intégrait un protocole binaire alterné , du type proposé par l'équipe de Donald Davies pour le réseau NPL en 1968.
Les versions ultérieures du protocole 1822, telles que 1822L, sont décrites dans la RFC 802 et ses successeurs.