# Fenêtre glissante

Une fenêtre glissante, en informatique, est un dispositif qui sert à éviter la congestion du trafic entre ordinateurs et ainsi à assurer un contrôle de flux, dans un réseau informatique ou un réseau de télécommunications, quitte à accepter temporairement un asservissement du débit binaire de l'émetteur vers le récepteur.

## Définition

Le recours à une fenêtre glissante consiste pour le récepteur d'un message ou d'un fichier à donner la permission à l'émetteur de transmettre des données jusqu'à ce que la fenêtre (le nombre de paquets autorisés en attente d'acquittement) devienne pleine. Lorsque la fenêtre est pleine, l'émetteur doit arrêter la transmission jusqu'à ce qu'il reçoive un acquittement ou un ordre d'extension de la taille de la fenêtre$^,$$^,$.

## Histoire
### Contexte général de création

Le contexte général de création de la FG est celui de l'engouement général pour les logiciels indépendants des constructeurs, qui culmine au tournant des années 1970. Le lus connu est le logiciel Autoflow, qui permet de créer un diagramme de flux, ou diagramme de flux de données pour d'autres programmes informatiques et ainsi mesurer leur occupation de la machine et leur degré de priorité. Il est vendu Applied Data Research (ADR), qui fut la deuxième entreprise de logiciel de l'histoire à réaliser une entrée en Bourse, en 1965, couplée à la première demande d'un brevet pour un logiciel. ADR avait vu ses ventes grimper à 10 ou 12 millions de dollars par an en 1970 dont 40% à 50% en services, après avoir obtenu une réponse positive au printemps 1968 à se demande de brevet pour Autoflow.
La valeur de son action avait été multipliée par 8 entre 1965 et la début 1969 car ce logiciel génère des revenus significatifs dès 1966 et un grand intérêt public ce qui incite IBM à crééer en 1966 un groupe de travail pour étudier la facturation d'une partie de ses logiciels et ne plus être accusé de freiner ou censurer des logiciels ayant pour principal avantage de repérer les points faibles de ses propres produits. Trois autres logiciels sont développés à partir de 1968, toujours dans le domaine du diagramme de flux ou diagramme de flux de données, qui permet de mesurer l'occupation des machines et le degré de priorité des données à faire passer par elle, au moment où l'intérêt énorme pour les bases de données provoque une explosion de leur quantité et des exigences de traitement en temps réel.

### Test sur les réseaux Cyclades et Arpanet

Pour Gérard Le Lann, qui a travaillé à sa finalisation par des simulations décentralisées à Rennes au cours de la seconde partie de 1972, la "fenêtre glissante" est en téléinformatique le "mécanisme fondamental pour la régulation et la fiabilisation" des échanges de messages en termes de "contrôle de flux", pour leur vitesse d’acheminement, mais aussi de "contrôle d'erreur". Elle rend plus facile la commutation de paquets en mode datagramme, en s'affranchissant en partie des opérateurs télécoms, qui étaient alors tous des réseaux publics en situation de télécoms, comme les PTT en France, plus enclins, pour des raisons économiques à la commutation de circuits. Selon lui, la fenêtre "gomme" les délais de propagation des messages dans les réseaux physiques traversés, et donc plusieurs messages peuvent être en transit entre un "host" émetteur et un "host" récepteur, principe rendant commode le datagramme.

### Utilisation dans Transmission Control Protocol (TCP)

L'utilisation s'est effectuée très tôt lors des développement qui ont donné naissance dans les années 1970 au protocole appelé "TCP" qui alors met en œuvre un contrôle de flux dichotomique dans lequel le contrôle de flux de TCP est fusionné à son système de contrôle de congestion.
Vinton Cerf, qui à l'été 1972 a quitté l'UCLA pour l’Université de Stanford à San Francisco, présente en mars 1973 dans un hôtel de cette ville à Robert Kahn, chef du projet Arpanet chez BBN, un croquis d'architecture nouvelle de communication entre ordinateurs considéré comme la première ébauche du protocole TCP (Transmission Control Protocol).
Ce croquis se concrétise par par leur présentation commune, en septembre 1973, devant l’INWG (International Network Working Group), à l’Université de Sussex à Brighton au cours de laquelle on a appris que le trafic arpanet est passé de 1 million de paquets par jour en 1972 à 2,9 millions de paquets par jour, essentiellement grâce à son extensiongéographie: 40 nœuds et 45 serveurs connectés. Le mois suivant, Larry Roberts quitte Arpanet pour diriger, chez BBN, le projet Telnet, "second réseau commercial de commutation par paquets après Tymnet. Entre temps, le réseau Cyclades a opéré sa première démonstration officielle en novembre 1972. Son directeur Louis Pouzin ayant recruté à l'été 1972 Gérard Le Lann, comme chercheur détaché à l'université de Rennes, pour finaliser une double simulation des erreurs et retards causés par la congestion dans les réseaux Cyclades et Arpanet, en lui proposant d'aller diffuser ensuite pendant un an les résultats aux États-Unis, via différents sites de l'équipe de l'arpanet américain, à laquelle il s'est joint au printemps 1973 passant ainsi près d'un an comme "scientifique invité" au laboratoire Cerf à Stanford.
L'ingénieur français, fort de son expérience dans les simulations dès son service militaire dans la marine puis au Cern de Genève, où il a travaillé à coordonner un ordinateur central Sigma 7 avec huit miniordinateurs brassant des captages en grand nombre et en temps réel, ainsi "à la demande" de Louis Pouzin et pour y "travailler en tant que visiting scientist" afin d'y "compléter ses travaux sur la simulation de protocoles" qui l'ont amené à "inventer le principe de la fenêtre glissante".
"Dès son arrivée il montre à Vinton Cerf comment résoudre les problèmes de contrôle de flux avec ce mécanisme et contribue alors à la rédaction de la spécification initiale du Transfert Control Protocol". Sur les lieux mêmes une plaque le cite parmi les concepteurs du TCP/IP, reproduite sur une page entière dans le livre publié par Claude Rigault chez Hermés science en 2010.

## Document fondateur du TCP IP en mai 1974

Dès le début de 1973, Arpanet, créé en 1969, envisage l'établissement d'un nouveau protocole plus performant. La fenêtre glissante est décrite dans le document "fondateur" co-rédigé par Vinton Cerf et Robert Kahn en mai 1974, un rapport "décrivant l'architecture et les protocoles" futurs de l'Internet, appelés aussi TCP/IP, car réunissant le protocole TCP et le protocole IP.
Sur les sept personnes remerciées nommément en conclusion du document, deux sont des Français de Cyclades: le responsable des protocoles Hubert Zimmermann et le fondateur Louis Pouzin. Deux autres ont travaillé sur Arpanet, Steve Crocker qui lancé le Réseau à l'Université de Los Angeles, et Denis Walden, qui a écrit dans la même ville le système d'exploitation des routeurs BBN. Il y a aussi deux chercheurs du National Physical Laboratory (NPL) anglais, les théoriciens David Davies et Roger Scantlebury, le second ayant rejoint l'International Network Working Group au début des années 1970 après des travaux théoriques sur le Réseau du NPL mis en service en 1969. La septième personne récompensée est Robert Metcalfe, dont Harvard avait refusé une thèse de doctorat consacrée à Arpanet. Il avait ensuite corrigés les bugs du réseau sans-fil ALOHA de l'université d'Hawaï puis rédigé le 22 mai 1973 la note "Alto Ethernet" contenant un schéma approximatif d'Ethernet, au centre de recherche à Palo Alto de Xerox, géant industriel qui concurrence à l'époque IBM via sa filiale achetée à prix d'or en mai 1969, Scientific Data Systems, en tandem avec la CII française sur le même ordinateur central Sigma 7, que les deux firmes émulent pour différentes applications.
Michel Elie, architecte réseau de la CII, est coauteur, avec Hubert Zimmermann et Gérard Le Lann d'un des documents, daté de mai 1973, cités par par Vinton Cerf et Robert Kahn dans leur proposition fondatrice de mai 1974. Ce document est aussi l'une des deux contributions de Cyclades à cette "proposition fondatrice", l'autre, datant de janvier 1973, et étant consacré à "Mitranet", "le nom anglais pour Cigale", d’emblée basé sur la technologie du datagramme.