Résumé

  • Le RFC 981 décrit un prototype expérimental pour la radio par paquets AX.25 : écouter les en-têtes de routes utilisés par d’autres stations, construire un graphe et classer un trajet principal avec des solutions de repli.
  • Une liaison réellement entendue n’avait pas le même statut qu’une continuation supposée. Le prototype pénalisait les liaisons non vérifiées et conservait ses observations dans des tables de taille limitée.

Une station transmet une trame en passant par des relais. Plus loin, une autre station capte la transmission et note les indicatifs figurant dans son en-tête. Peut-elle reprendre la route à son compte ? En mars 1986, D.L. Mills a proposé dans son Wiretap Algorithm une réponse de détective : écouter, tracer plusieurs chemins, puis faire payer plus cher ceux dont les morceaux restent des conjectures.

Le terrain était le canal radio AX.25 autour de Washington, DC, avec des stations parfois cachées les unes des autres. Les en-têtes indiquaient une route source, depuis l’émetteur jusqu’au destinataire, via d’éventuels relais numériques. L’observateur entendait une partie du parcours qui avait mené la trame jusqu’à lui. Pour le reste de la route inscrite dans l’en-tête, il détenait une indication, pas une audition directe. Certaines trames I ou S renforçaient l’idée qu’un circuit avait été établi ; les trames U n’apportaient pas cette même preuve.

L’algorithme gardait des marques distinctes pour le lien entendu, le lien réciproque et le lien synchronisé.

La direction comptait. Une liaison entendue dans un sens pouvait se comporter autrement dans l’autre, sous l’effet de la congestion ou de stations invisibles. Wiretap convertissait les observations en tables de nœuds et de liaisons, puis en graphe. Une somme pondérée attribuait une distance aux chemins. Le calcul produisait non seulement le premier choix, mais aussi des alternatives classées pour contourner une panne ou explorer un trajet encore peu connu. Le meilleur chemin était celui que les indices et les poids rendaient meilleur à cet instant.

Le carnet du détective tenait dans une petite machine LSI-11. Le prototype limitait sa table à 75 nœuds et 150 liaisons ; une entrée prenait 26 octets pour un nœud et quatre pour une liaison. Un cache pondéré écartait des observations pour laisser place aux nouvelles. Dans l’exemple tiré de vingt-quatre heures d’écoute, les tables stabilisées contenaient normalement environ 60 nœuds et 100 liaisons. Le traitement devait sélectionner ses souvenirs avant même de sélectionner sa route.

La grille des coûts rend ce choix visible. Un saut ajoutait 30 points ; une liaison non vérifiée, 50 de plus. Le sens non réciproque et l’absence de preuve de synchronisation ajoutaient chacun cinq. D’autres facteurs concernaient les nœuds. Une mesure dynamique de congestion était encore envisagée, sans être réalisée dans ce prototype. Mills qualifiait les poids de premières estimations expérimentales. Le principe, lui, avait du mordant : une route inventée à partir de fragments entendus peut servir, mais son ignorance doit figurer sur la facture.

La fiche du RFC Editor date l’expérience de mars 1986. Elle décrit un prototype et ses premiers essais sur un canal local difficile. Ce petit système n’avait pas besoin de tout savoir pour être utile. Il devait savoir précisément ce qu’il avait entendu. Le routeur jouait les indiscrets ; sa véritable vertu était de laisser une étiquette sur ses suppositions.