Brevet FR2782216A1 — publié le 20000211

La présente invention concerne de manière générale la transmission de données en mode point-à-point entre des stations de communication, et plus particulièrement l'acquittement sélectif et le rejet sélectif de données dans un système de communication de données. De manière connue, une station émettrice émet des données, par exemple sous la forme de trames de données successives à destination d'une station réceptrice. La recommandation X.141 du CCITT, livre bleu, volume VIII, fascicule VIII.3, IXième assemblée plénière, novembre 1988, définit une procédure pour que la station réceptrice demande à la station émettrice la retransmission d'une trame de données perdue et acquitte les trames correctement reçues, précédant la trame perdue. Cette procédure ne peut être utilisée que pour une seule trame perdue à la fois. Le document EP-A-162 478 décrit un procédé pour que la station réceptrice demande à la station émettrice la retransmission d'un groupe de trames de données consécutives perdues. Ce procédé ne permet pas d'acquitter des trames correctement reçues. La présente invention vise à remédier aux inconvénients de la technique antérieure, en fournissant un procédé et un dispositif qui permettent à une station réceptrice à la fois d'acquitter des trames correctement reçues et de demander la retransmission d'un groupe de trames de données consécutives perdues. A cette fin, I'invention propose un procédé d'acquittement sélectif et de rejet sélectif de trames de données, mis en oeuvre dans une station réceptrice de données, chaque trame de données étant repérée par un numéro de séquence, caractérisé en ce qu'il comporte les étapes de: - mémorisation des numéros de séquence des trames reçues et non encore acquittées, - vérification de la perte d'au moins une trame, et en cas de réponse positive, - recherche de tous les numéros consécutifs de séquence de trames perdues, et - émission d'une trame d'acquittement sélectif et de rejet sélectif à destination de la station émettrice des données, qui acquitte les trames reçues non encore acquittées qui précédent et qui suivent les trames perdues, et qui demande la retransmission des trames perdues. Corrélativement, I'invention propose un dispositif d'acquittement sélectif et de rejet sélectif de trames de données, mis en oeuvre dans une station réceptrice de données, chaque trame de données étant repérée par un numéro de séquence, caractérisé en ce qu'il comporte: - des moyens de mémorisation des numéros de séquence des trames reçues et non encore acquittées, - des moyens de vérification de la perte d'au moins une trame, et en cas de réponse positive, - des moyens de recherche de tous les numéros consécutifs de séquence de trames perdues, et des moyens d'émission d'une trame d'acquittement sélectif et de rejet sélectif à destination de la station émettrice des données, qui acquitte les trames reçues non encore acquittées qui précédent et qui suivent les trames perdues, et qui demande la retransmission des trames perdues. La présente invention permet de limiter le nombre de retransmissions de trames de données lorsqu'une ou plusieurs trames de données ne sont pas reçues par la station destinataire. Lorsqu'une ou plusieurs trames de données ne sont pas reçues par la station destinataire, la présente invention permet d'acquitter les trames suivantes reçues, sans attendre que les trames perdues aient été renvoyées et correctement reçues, ce qui limite la place mémoire nécessaire dans la station émettrice pour mémoriser les trames non encore acquittées. En outre, la présente invention permet d'émettre des rejets sélectifs de manière récursive. Selon une caractéristique préférée, l'étape de vérification comporte la comparaison du numéro de séquence de chaque trame reçue avec un premier compteur dont la valeur représente le numéro de séquence de la prochaine trame attendue, ladite valeur étant incrémentée de une unité à chaque fois que le numéro de séquence d'une trame reçue est égal à la valeur du premier compteur. Cette caractéristique permet de déterminer si une trame a été perdue. Selon une caractéristique préférée, l'étape de recherche comporte la mise d'un deuxième compteur à la valeur du dernier numéro de séquence de trame perdue, pour représenter la borne supérieure des numéros consécutifs de trames perdues. Cette caractéristique est utile pour le rejet sélectif des trames perdues. Selon une autre caractéristique préférée, le procédé comporte, lorsqu'au moins une trame a été perdue, la mise d'un troisième compteur à la valeur du numéro de séquence de la dernière trame reçue, augmentée de une unité, pour représenter la borne supérieure des numéros de séquence des trames reçues suivant les trames perdues. Cette caractéristique est utile pour l'acquittement sélectif des trames reçues. Selon une caractéristique préférée, la trame d'acquittement sélectif et de rejet sélectif comporte deux paramètres respectivement égaux à la valeur courante des deuxième et troisième compteurs. Ainsi, les valeurs de ces compteurs sont transmises à la station émettrice des données. Selon une caractéristique préférée, le procédé est mis en oeuvre après chaque réception de trame de données. Le dispositif comporte des moyens de mise en oeuvre des caractéristiques précédentes. L'invention concerne aussi une station de communication, un ordinateur, une imprimante, un télécopieur, un scanner, un appareil photographique numérique, une caméra numérique et un système de communication, intégrant des moyens de mise en oeuvre du procédé selon l'invention, ou intégrant le dispositif selon l'invention. Le dispositif, la station de communication, I'ordinateur, I'imprimante, le télécopieur, le scanner, I'appareil photographique numérique, la caméra numérique et le système de communication présentent des avantages analogues à ceux du procédé précédemment décrit. Un moyen d'enregistrement, intégré ou non au dispositif, éventuellement amovible, mémorise un programme mettant en oeuvre le procédé d'acquittement sélectif et de rejet sélectif de trames de données. Les caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture d'un mode préféré de réalisation illustré par les dessins ci-joints, dans lesquels: - la figure 1 représente une station de communication mettant en euvre la présente invention, - la figure 2 représente des couches de traitement de données, - la figure 3 représente une trame de données selon la présente invention, - la figure 4 représente un exemple de transmission de données entre deux stations de communication, - les figures 5, 6 et 7 représentent un algorithme de réception d'une trame d'information par une station de communication, selon la présente invention, et - les figures 8, 9, 10 et 11 représentent un algorithme de traitement après réception d'une trame de supervision par une station de communication, selon la présente invention. Selon le mode de réalisation choisi et représenté à la figure 1, l'invention s'applique à un système de transmission de données en mode point à point, entre deux stations de communication distantes. Les stations de communication échangent des données via un canal de communication dont la nature n'intervient pas pour la présente invention. Ce canal peut être une liaison filaire, ou un canal radio, ou un canal infrarouge, par exemple. Une station de communication SC est reliée, ou est intégrée, à un terminal informatique TI de type ordinateur personnel. Les moyens de communication peuvent être réalisés sous la forme d'une carte informatique intégrée à l'ordinateur. Le terminal TI peut également être une imprimante, un télécopieur, un scanner, un appareil photographique numérique, une caméra numérique, un système de communication ou un serveur de fichiers, par exemple. La station de communication comporte un bus de données 1 auquel sont reliés: - un micro-contrôleur 2, - une mémoire morte (ROM) 3, - une mémoire vive (RAM) 4, - un circuit d'interface 5 avec un circuit émetteur/récepteur 6 qui transmet et reçoit des données par l'intermédiaire du canal de communication, - un circuit d'interface 7 avec la partie applicative du terminal informatique TI qui traite les données reçues et à émettre via la station de communication. La mémoire morte 3 comporte un programme d'acquittement sélectif et de rejet sélectif de trames de données selon la présente invention, comme exposé dans la suite. La mémoire vive 4 comporte des registres dans lesquels sont mémorisées des variables utilisées par l'invention. Ces variables seront décrites dans la suite. La mémoire vive 4 mémorise également les données à transmettre vers une station distante, ainsi que les données reçues depuis une station distante. L'invention concerne la couche de liaison de données du modèle OSI (Open Systems Interconnection, soit en Français Interconnexion de systèmes Ouverts). Ce modèle définit classiquement sept couches, dont seulement trois sont considérées ici. Comme représenté à la figure 2, pour que la station de communication SC émette des données vers une autre station, la couche de liaison de données CL de la station SC reçoit des paquets de données PDU depuis la couche réseau CR. Une trame de données TD est alors formée, qui sera décrite ci-après. Comme on le verra, un numéro de séquence est alloué à chaque trame de données pour pouvoir reconnaître et réordonner les trames de données en réception. La trame de données TD est ensuite transmise à la couche physique CP qui ajoute un en-tête EP à la trame TD. Celle-ci est ensuite transmise par la station émettrice considérée vers une station destinataire, via le canal de communication. En réception, la couche de liaison de données CL reçoit les trames de données depuis la couche physique CP et restitue les paquets de données de manière ordonnée à la couche réseau CR. La figure 3 représente une trame de données TD telle qu'elle est formée au niveau de la couche de liaison de données. La trame TD comporte un champ de contrôle CC, un champ d'information Cl contenant les paquets de données et un champ de contrôle d'erreur FCS. Le champ de contrôle d'erreur FCS est utilisé à la réception pour détecter si la trame TD a été corrompue ou non au cours de sa transmission. Le champ de contrôle CC comporte plusieurs paramètres. Le premier paramètre est un mode M qui définit le type de la trame de données. Trois types de trames existent: - les trames d'information, dites I-trames, qui sont utilisées pour transmettre des données provenant de la couche réseau, - les trames de supervision dites S- trames, qui sont utilisées pour transmettre des informations de supervision, - les trames d'information et de supervision combinées, dites C- trames, qui sont utilisées pour transmettre à la fois des données et des informations de supervision. Le deuxième paramètre du champ de contrôle CC est une fonction F qui définit la fonction des trames de supervision. Bien entendu, les trames d'information et de supervision (C- trames) sont également concernées, et ce qui suit s'applique également à elles. Trois types de trames de supervision existent: - une trame de supervision RR, qui indique que la station est prête à recevoir une trame d'information, qui acquitte les trames d'information précédemment reçues, et qui annule le cas échéant une condition "récepteur occupé" qui avait précédemment été indiquée à la station distante par une trame de supervision RNR. - une trame de supervision RNR, qui indique une condition "récepteur occupé", c'est-à-dire une incapacité temporaire de la station à recevoir des trames d'information, lorsque la mémoire est pleine, et qui acquitte les trames d'information reçues. Lorsqu'une station émettrice reçoit une trame de type RNR, elle interrompt la transmission de trame d'information jusqu'à la réception d'une trame de supervision RR. - une trame de supervision SREJ, appelée trame de rejet sélectif. De manière classique, une trame de supervision SREJ demande la retransmission d'une trame, et acquitte les trames d'information reçues avant la trame à retransmettre. La présente invention augmente les fonctionnalités de la trame de supervision SREJ, de manière à pouvoir demander la retransmission d'un bloc de trames au lieu d'une seule trame, et à pouvoir acquitter les trames qui sont reçues avant et après le bloc de trames perdues. Pour cela, le champ de contrôle CC d'une trame de supervision SREJ comporte quatre paramètres NS, NR, NL et NA. Les paramètres NS et NR sont connus d'après la recommandation X.141 du CCITT, livre bleu, volume VIII, fascicule VIII.3, IXième assemblée plénière, novembre 1988. Le paramètre NS est le numéro de séquence en émission, attribué à la trame par la station émettrice. Ce numéro est attribué au niveau de la couche de liaison de données à une trame reçue de la couche réseau. Le numéro de séquence permet de déterminer l'ordre dans lequel les données doivent être restituées à la couche réseau de la station destinataire des données. Si une trame est transmise plusieurs fois, son numéro de séquence est le même pour toutes les transmissions. Le paramètre NR est le numéro de séquence en réception. Le numéro de séquence en réception est égal au numéro de séquence en émission de la prochaine trame d'information attendue par la station réceptrice. Le paramètre NL selon l'invention est un numéro de séquence utilisé pour une retransmission sélective et un rejet sélectif, comme décrit dans la suite. Le paramètre NA selon l'invention est le numéro d'acquittement sélectif utilisé pour un acquittement sélectif qui sera décrit dans la suite. Une trame d'information comporte les paramètres NS et NR, une trame de supervision comporte les paramètres NR, NL et NA, et une trame d'information et de supervision comporte les quatre paramètres. Selon la présente invention, lorsqu'une station envoie une trame SREJ à une autre station, cela signifie que cette dernière doit retransmettre les trames dont le numéro de séquence en émission est compris entre les valeurs des paramètres NR et NL, et que les trames dont le numéro de séquence en émission est strictement compris entre NL et NA, ainsi que les trames dont le numéro est inférieur à NR-1, sont acquittée. La valeur des paramètres NR, NL et NA est déterminée respectivement d'après la valeur de trois variables d'état VR, VL et VA qui sont gérées par chaque station de communication. La variable d'état VR est égale au numéro de séquence en émission de la prochaine trame d'information que la station considérée doit recevoir. La variable d'état de récupération VL est égale au numéro de séquence en émission diminué de un de la première trame qui a été reçue par la station considérée après la perte d'une trame ou d'un bloc de trames. La variable d'état d'acquittement sélectif VA est égale au numéro de séquence en émission de la prochaine trame à recevoir par la station considérée et dont c'est la première transmission. Lorsque aucune trame n'a été perdue précédemment, la valeur de la variable VA est égale à celle de la variable VR. En référence à la figure 4, un exemple de transmission de données nécessite l'envoi d'une trame de supervision SREJ pour effectuer un rejet sélectif et un acquittement sélectif selon l'invention. On considère ici deux stations de communication A et B qui communiquent en mode point à point. La station A émet des données vers la station B. On considère ici une communication monodirectionnelle, mais I'invention s'applique aussi bien à une communication bidirectionnelle. Dans tous les cas, on ne considère qu'une seule communication à un moment donné. Chaque station de communication susceptible d'émettre des données comporte une fenêtre d'émission FE et une fenêtre d'anticipation FA mémorisée en mémoire vive 4. La fenêtre d'émission FE comporte la liste des numéros de séquence des trames qui ont été transmises à la station distante et pour lesquelles la station émettrice n'a pas encore reçu d'acquittement. Les trames dont le numéro de séquence en émission NS est contenu dans la fenêtre d'émission FE de la station A sont mémorisées dans la mémoire vive de-la station A. Une trame est effacée de la mémoire vive lorsque la station émettrice A reçoit l'acquittement correspondant à cette trame. La fenêtre d'émission FE contient au maximum TFE numéros de séquence de trame. Lorsqu'elle est pleine, aucune autre trame ne peut plus être transmise vers une station distante. La fenêtre d'anticipation FA contient également des numéros de séquence de trame et est définie par deux bornes IFA et SFA. La borne inférieure IFA est égale au numéro de séquence de la trame la plus ancienne en attente d'acquittement. La borne supérieure SFA est égale au numéro de séquence de la trame la plus récente qui a été envoyée. Toutes les trames dont le numéro de séquence est compris entre IFA et SFA ont été transmises à la couche de liaison de données de la station réceptrice B mais n'ont pas encore été transmises à la couche réseau de la station réceptrice B. La fenêtre d'anticipation contient au maximum TFA numéros de séquence de trame. La valeur de TFA est au moins égale à la valeur de TFE. Le fait de disposer d'une fenêtre d'anticipation plus grande que la fenêtre d'émission permet de disposer de plus de taille mémoire pour traiter la réception de nouvelles données. Les fenêtres FE et FA permettent de connaître à chaque instant la différence entre le nombre de trames émises par la couche réseau de la station émettrice A et le nombre de trames effectivement reçues par la couche réseau de la station réceptrice B. Dès qu'une trame est acquittée, son numéro de séquence est retiré de la fenêtre d'émission FE et elle est effacée de la mémoire vive. En revanche, le numéro de séquence de cette trame n'est retiré de la fenêtre d'anticipation FA que si son numéro de séquence de trame est égal à la borne inférieure IFA. En effet, la fenêtre d'anticipation FA contient des numéros de séquence qui sont nécessairement successifs. Lorsque la fenêtre d'anticipation est pleine, la station A ne peut plus transmettre d'autres trames vers la station B. D'autre part, pour la réception, chaque station de communication B comporte une fenêtre de réception FR qui contient la liste des numéros de séquence des trames qui ont été correctement reçues et qui n'ont pas encore été transmises à la couche réseau. La fenêtre de réception contient au maximum TFR numéros de séquence de trame. Le fonctionnement des stations A et B est décrit de manière générale par les algorithmes des figures 5 à 11. Les figures 5, 6 et 7 représentent l'algorithme de réception d'une trame d'information. Cet algorithme est mémorisé en mémoire 3 de chaque station de communication, et peut être mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microcontrôleur 2. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une disquette, une carte à puce ou un CD-ROM (disque compact à mémoire figée). L'algorithme de la figure 5 comporte des étapes El00 à E104. L'étape El100 est un test pour déterminer si une trame d'information valide, c'est-à-dire non erronée, est reçue. Cette trame contient les paramètres NS et NR. Lorsque la réponse au test est positive, l'étape E100 est suivie de I'étape E101. Le traitement des trames erronées est effectué par ailleurs, de manière classique et ne sera pas décrit ici. A l'étape E101, le numéro de séquence NS de la trame est écrit dans la fenêtre de réception FR. Il est à noter que si la fenêtre de réception est pleine, la station réceptrice B envoie une trame de supervision de type RNR à la station émettrice A, pour lui indiquer de ne plus envoyer de trames. L'étape suivante E102 est un test pour déterminer si la valeur du numéro de séquence NS est égale à la valeur courante de la variable d'état VR. Ce test permet de vérifier si la trame d'information reçue est celle attendue par la station considérée. Il est à noter que les variables d'état VA, VL et VR sont initialisées à zéro à la mise en route du système ou lors d'une opération spécifique de remise à zéro. Le numéro de séquence de la première trame transmise est égal à zéro. Lorsque la réponse est positive, I'étape E102 est suivie de l'étape E103, à laquelle la procédure de réception de trame est appelée. Cette procédure sera décrite en référence à la figure 6. Lorsque la réponse est négative à l'étape E102, cette étape est suivie de l'étape E104, à laquelle la procédure de traitement d'erreur de séquence est appelée. Cette procédure sera décrite en référence à la figure 7. La figure 6 décrit le traitement réalisé lors de la réception d'une trame, sous la forme d'un algorithme comportant des étapes E201 à E210. Ce traitement suit une réponse positive à l'étape E102, c'est-à-dire que la trame reçue est la trame attendue par la station considérée. L'étape E201 est la transmission à la couche réseau de la station B des données contenues dans le champ d'information Cl de la trame en cours de traitement. Le numéro de séquence NS de la trame est ensuite effacé de la fenêtre de réception FR. L'étape suivante E202 est un test pour déterminer si la variable d'état VR est égale à la variable d'état VA. Lorsque la réponse est positive, cela signifie qu'aucune trame n'a été perdue précédemment. L'étape E202 est alors suivie de l'étape E203 à laquelle la variable d'état VA est incrémentée de une unité pour rester égale à la variable VR, qui va être incrémentée dans la suite. Lorsque la réponse est négative à l'étape E202, cela signifie qu'au moins une trame a été perdue. Cette étape est suivie de l'étape E204 à laquelle la variable d'état VR est incrémentée de une unité. La valeur de la variable d'état VR représente le numéro de la prochaine trame attendue par la station considérée. L'étape E203 est également suivie de l'étape E204. L'étape E204 est suivie de l'étape E205 qui est un test pour déterminer si un numéro de séquence égal à la variable VR est mémorisé dans la fenêtre de réception FR, ce qui permet de vérifier si la trame ayant un numéro de séquence égal à la variable d'état VR a déjà été reçue. Si la réponse est positive, l'étape E205 est suivie de l'étape E201 précédemment décrite. Si la réponse est négative à l'étape E205, cette étape est suivie de l'étape E206 qui est un test pour déterminer si la fenêtre de réception est vide. Lorsque cette fenêtre est vide, cela signifie qu'il n'y a plus de trame en attente et la procédure de réception est terminée. Lorsque la fenêtre de réception n'est pas vide, I'étape E206 est suivie de l'étape E207 à laquelle la variable d'état de récupération VL est initialisée à la valeur courante de la variable d'état VR. En effet, on est ici dans le cas o il reste au moins une trame dans la fenêtre de réception FR dont le numéro de séquence est différent de la valeur courante de VR, ce qui signifie qu'au moins une trame a été perdue. Il faut alors demander un rejet sélectif pour la ou les trames(s) perdue(s), comme exposé dans la suite. L'étape suivante E208 est un test pour déterminer si le numéro de séquence égal à la variable d'état de récupération VL augmentée de une unité est présent dans la fenêtre de réception FR, c'est-à-dire si la trame ayant le numéro de séquence suivant la valeur de la variable d'état VL a été correctement reçue. Si la réponse est négative, cette étape est suivie de l'étape E209 à laquelle la valeur de la variable d'état VL est incrémentée de une unité. L'étape E209 est suivie de l'étape E208. La valeur de la variable d'état VL est ainsi incrémentée jusqu'à la plus grande valeur du numéro de séquence de trame perdue. Les étapes E208 et E209 permettent ainsi de déterminer le nombre de trames manquantes qui devront être retransmises par la station A. Si la réponse à l'étape E208 est positive, l'étape E208 est suivie de l'étape E210 à laquelle un rejet sélectif est émis vers la station émettrice des données pour les trames dont le numéro de séquence est compris entre les valeurs des variables d'état VR et VL, ainsi qu'un acquittement des trames dont les numéros sont strictement inférieurs à VR et strictement compris entre VL et VA. Pour cela, la station B envoie à la station A une trame de supervision de type SREJ avec le paramètre NR égal à la variable VR, le paramètre NL égal à la variable VL et le paramètre NA égal à la variable VA. Si la station B a une trame d'information à transmettre à la station A au même moment, elle envoie une trame combinée (C-trame). Il est à noter qu'en l'absence de trame perdue, la procédure d'acquittement est classique et ne sera pas décrite ici. La figure 7 représente le traitement effectué lorsqu'une station reçoit une trame dont le numéro de séquence n'est pas égal à la valeur courante de la variable d'état de réception VR, c'est-à-dire que la trame reçue n'est pas la trame attendue par la station considérée. Ce traitement est représenté sous la forme d'un algorithme comportant des étapes E301 à E308 et suit une réponse négative à l'étape E102. L'étape E301 est un test pour déterminer si le nombre de trames contenues dans la fenêtre de réception FR est strictement supérieur à 1. Si la réponse est négative, cela signifie que la fenêtre de réception FR ne contient que la trame en cours de traitement, et que les trames dont le numéro de séquence est compris entre la variable d'état VR et le numéro de la trame en cours de traitement diminué de un ont été perdues. L'étape E301 est alors suivie de l'étape E302 à laquelle la variable d'état VL est mise à la valeur du numéro de séquence NS de la trame reçue, diminuée de un. La variable d'état VL permettra de demander la retransmission des trames dont le numéro de séquence en émission est compris entre VR et NS-1. A l'étape suivante E303, la variable d'état VA est mise à la valeur du numéro de séquence NS de la trame reçue, augmentée de un, pour être égale au numéro de séquence de la prochaine trame attendue, et dont c'est la première transmission. La variable d'état VA servira à l'acquittement sélectif de la trame qui vient d'être reçue. L'étape suivante E304 est l'envoi d'un rejet sélectif, c'est-à-dire d'une trame de supervision SREJ avec le paramètre NR égal à la variable d'état VR, le paramètre NL égal à la variable VL et le paramètre NA égal à lavariable VA, pour demander la retransmission des trames dont le numéro de séquence est compris entre NR et NL, et pour acquitter sélectivement les trames dont le numéro de séquence est strictement compris entre NL et NA, et les trames dont le numéro est strictement inférieur à NR. Lorsque à l'étape E301 la fenêtre de réception contient plus d'un numéro de séquence de trame, cette étape est suivie de l'étape E305 qui est un test pour déterminer si la valeur du numéro de séquence NS de la trame en cours de traitement est strictement supérieure à la valeur de la variable d'état VR et inférieure ou égale à celle de la variable d'état VL. Si la réponse est positive, cela signifie que la trame reçue a été retransmise suite à un précédent message de rejet sélectif. Cependant, la trame reçue n'est pas la première trame du bloc de trames attendu. L'étape E305 est alors suivie de l'étape E302 pour refaire un rejet sélectif. La présente invention permet ainsi d'émettre des rejets sélectifs de manière récursive. Dans le cas o un groupe de trames est perdu, une retransmission de ces trames est demandée. Si un sous-groupe de ces trames est à nouveau perdu au cours de la retransmission, il est possible de demander la retransmission de ce sous- groupe. Si la réponse est négative, cela signifie que la trame reçue a été transmise pour la première fois et qu'elle ne fait pas partie des trames pour lesquelles un rejet sélectif a été demandé. Dans ce cas, la variable d'état d'acquittement sélectif VA est mise à jour en tenant compte de la réception de cette nouvelle trame. L'étape E305 est alors suivie de l'étape E306 à laquelle il est testé si la valeur du paramètre NS est égale à celle de la variable d'état VA. Si la réponse est positive, alors l'étape E306 est suivie de l'étape E307 à laquelle la variable d'état VA est incrémentée de une unité, pour désigner le numéro de séquence de la prochaine trame attendue et pour laquelle un rejet sélectif n'est pas demandé. L'étape E307 est suivie de l'étape E308 à laquelle il est testé si un numéro de séquence égal à la valeur courante de la variable d'état VA est mémorisé dans la fenêtre de réception FR, c'est-à-dire si une trame ayant un numéro de séquence égal à la variable d'état VA a été reçue. Si la réponse à l'étape E308 est négative, la procédure est terminée. Si la réponse à l'étape E308 est positive, cette étape est suivie de l'étape E307 déjà décrite. La valeur de la variable d'état VA est ainsi incrémentée jusqu'à la valeur de la prochaine trame à recevoir. A l'étape E306, si la valeur du paramètre NS n'est pas égale à celle de la variable d'état VA, cela signifie que la trame reçue n'est pas une trame attendue. Il n'est pas nécessaire de modifier la valeur de la variable d'état VA. La procédure est alors terminée. Les figures 8 à 11 représentent le traitement effectué par une station de communication lorsqu'elle reçoit une trame de supervision SREJ avec les paramètres NR, NL et NA. La station considérée a précédemment émis vers une autre station des trames de données et reçoit la trame de supervision SREJ en retour. Ce traitement est réalisé sous la forme d'un algorithme mémorisé en mémoire 3 de chaque station de communication, et peut être mémorisé en totalité ou en partie dans tout moyen de stockage d'information capable de coopérer avec le microcontrôleur 2. Ce moyen de stockage est lisible par un ordinateur ou par un microprocesseur. Ce moyen de stockage est intégré ou non au dispositif, et peut être amovible. Par exemple, il peut comporter une bande magnétique, une disquette, une carte à puce ou un CD-ROM (disque compact à mémoire figée). Le traitement de la figure 8 est représenté sous la forme d'un algorithme comportant des étapes E400 à E403. L'étape E400 est la réception d'une trame de supervision SREJ. La trame de supervision SREJ comporte les paramètres NR, NL et NA. L'étape suivante E401 est l'acquittement des trames dont le numéro de séquence est inférieur ou égal à NR-1. Ces trames sont effacées de la mémoire vive 4 et leurs numéros de séquence sont effacés des fenêtres d'émission FE et d'anticipation FA. Cette étape est détaillée dans la suite. L'étape suivante E402 est un acquittement des trames dont le numéro de séquence est strictement compris entre NL et NA. Ces trames sont effacées de la mémoire vive 4 et leurs numéros de séquence sont effacés des fenêtres d'émission FE. Cette étape est détaillée dans la suite. L'étape suivante E403 est la retransmission sélective des trames dont le numéro de séquence est compris entre NR et NL. Cette étape est détaillée dans la suite. La figure 9 représente le traitement effectué pour acquitter les trames dont le numéro de séquence est inférieur ou égal à NR-1. Ce traitement comporte des étapes E501 à E504. L'étape E501 est un test pour déterminer si la valeur de NR-1 est comprise entre les bornes inférieure et supérieure IFA et SFA de la fenêtre d'anticipation FA. Si la réponse est négative, cela signifie qu'il n'y a pas de trame à acquitter et la procédure est terminée. Si la réponse à l'étape E501 est positive, cette étape est suivie de l'étape E502 à laquelle: - la temporisation d'attente d'acquittement associée à la trame dont le numéro de séquence est égal à IFA est interrompue, - la trame dont le numéro de séquence est égal à IFA est effacée de la mémoire vive 4, - le numéro de séquence égal à IFA est effacé de la fenêtre d'émission FE et de la fenêtre d'anticipation FA. L'etape E502 est suivie de l'étape E503 qui est un test pour déterminer si la valeur de NR-1 est égale à la borne inférieure IFA. Si la réponse est positive, cela signifie qu'il n'y a plus de trame à acquitter et la procédure est terminée. Si la réponse est négative, cela signifie qu'il reste au moins une trame à acquitter. L'étape E503 est alors suivie de l'étape E504 à laquelle la borne inférieure IFA de la fenêtre d'anticipation FA est incrémentée de une unité. L'étape E504 est suivie de l'étape E502 précédemment décrite. La figure 10 représente le traitement effectué pour acquitter sélectivement les trames dont le numéro de séquence est compris entre NL+ 1 et NA-1. Ce traitement comporte des étapes E601 à E603. L'étape E601 est l'initialisation d'une variable de travail VT à la valeur NL+1. L'étape suivante E602 comporte les opérations suivantes - la trame dont le numéro de séquence est égal à VT est effacée de la mémoire vive 4, - le numéro de séquence égal à VT est effacé de la fenêtre d'émission FE, - la variable de travail VT est incrémentée de une unité. L'étape suivante E603 est un test pour déterminer si la variable de travail VT est égale à la valeur de NA. Si la réponse est négative, l'étape E603 est suivie de l'étape E602 précédemment décrite. Si la réponse à l'étape E603 est positive, cela signifie qu'il n'y a plus de trame à acquitter de manière sélective et cette procédure est terminée. La figure 11 représente le traitement effectué pour retransmettre sélectivement les trames dont le numéro de séquence est compris entre NR et NL. Ce traitement comporte des étapes E701 à E704. A l'étape E701, les temporisations d'attente d'acquittement respectivement associées aux trames dont les numéros de séquence sont compris entre NR et NL sont interrompues. A l'étape suivante E702, une variable de travail VT1 est initialisée à la valeur NR. L'étape suivante E703 est la transmission vers le canal de communication de la trame dont le numéro de séquence est égal à VT1. La variable de travail VT1 est incrémentée de une unité. L'étape suivante E704 est un test pour déterminer si la variable de travail VT1 est inférieure à la valeur NL. Si la réponse est positive, cela signifie qu'il y a encore une trame à transmettre, alors l'étape E704 est suivie de l'étape E703. Sinon, le traitement est terminé. En référence de nouveau à la figure 4, un exemple particulier est maintenant développé. A l'instant tO, la station A transmet à la station B la trame d'information dont le numéro de séquence est égal à 0. Le numéro de séquence 0 est alors mémorisé dans la fenêtre d'émission FE et dans la fenêtre d'anticipation FA. La trame d'information contient le paramètre NS égal à zéro. La trame numéro 0 est correctement reçue par la station B à l'instant tl et le numéro de séquence 0 est mémorisé dans la fenêtre de réception FR de la station B. Dans la station B, la variable d'état de réception VR est égale à la valeur de NS, soit zéro. La trame numéro 0 peut être transmise à la couche supérieure. Les variables d'état VR, VA et VL sont alors incrémentées d'une unité et le numéro de séquence 0 est effacé dans la fenêtre de réception FR de la station B. A l'instant t2, la station A transmet la trame d'information dont le numéro de séquence est égal à 1. Le numéro de séquence 1 est alors mémorisé dans la fenêtre d'émission FE et dans la fenêtre d'anticipation FA. La trame numéro 1 n'est pas reçue par la station B. A l'instant t3, la station A transmet la trame d'information dont le numéro de séquence est égal à 2. Le numéro de séquence 2 est alors mémorisé dans la fenêtre d'émission FE et dans la fenêtre d'anticipation FA. La trame numéro 2 n'est pas reçue par la station B. A l'instant t4, la station A transmet la trame d'information dont le numéro de séquence est égal à 3. Le numéro de séquence 3 est alors mémorisé dans la fenêtre d'émission FE et dans la fenêtre d'anticipation FA. La trame numéro 3 est correctement reçue à l'instant t5 par la station B. Le numéro de séquence 3 est mémorisé dans la fenêtre de réception de la station B. Le numéro de séquence est comparé avec la valeur courante de la variable d'état VR. Comme il n'y a pas égalité, il y a une erreur dans la séquence de réception. La variable d'état de récupération VL prend la valeur du numéro de séquence de la dernière trame reçue (trame numéro 3) diminuée de une unité. Cela signifie que les trames dont le numéro de séquence est compris entre VR = 1 et VL = 2 ont été perdues. La station B a ainsi détecté que les trames numéro 1 et 2 n'ont pas été reçues, et que la trame numéro 3 a été reçue. La variable d'état VA prend alors la valeur du numéro de séquence de la dernière trame correctement reçue, augmentée de une unité, soit 4. Cela signifie que, à part les trames numéro 1 et 2 qui devront être retransmises, la prochaine trame attendue par la station B a pour numéro de séquence 4. A l'instant t6, la station B émet une trame de supervision de rejet sélectif SREJ contenant les paramètres NR, NL, NA respectivement égaux aux valeurs courantes des variables d'état VR, VL et VA. A l'instant t7, la station A reçoit la trame SREJ. Toutes les trames dont le numéro de séquence est strictement inférieur à NR sont acquittées. En conséquence, la trame de numéro de séquence 0 est supprimée de la mémoire vive 4 et le numéro de séquence 0 est supprimé des fenêtres d'émission FE et d'anticipation FA. * Les trames dont le numéro de séquence est strictement supérieur à NL et strictement inférieur à NA sont acquittées. La trame de numéro de séquence égal à 3 peut ainsi être effacée de la mémoire vive 4, le numéro de séquence égal à 3 est effacé de la fenêtre d'émission FE, mais pas de la fenêtre d'anticipation FA. En outre, les trames dont le numéro de séquence est compris entre NR et NL doivent être retransmises à la station B. A l'instant t8, la station A retransmet la trame de numéro de séquence égal à 1. Cette trame d'information contient le paramètre NS égal à 1. A l'instant t9, cette trame est correctement reçue par la station B et le numéro de séquence 1 est mémorisé dans la fenêtre de réception FR de la station B. Le numéro de séquence d'émission est égal à la variable d'état VR. La trame de numéro de séquence égal à 1 peut être transmise à la couche supérieure et son numéro de séquence est effacé de la fenêtre de réception FR de la station B. La variable d'état de réception VR est incrémenté de une unité, et est ici égale à 2. Comme la trame de numéro de séquence égal à deux n'a pas été reçue, les variables d'état VL et VA ne sont pas modifiées et gardent leurs valeurs courantes. A l'instant t10, la station A retransmet la trame de numéro de séquence égal à 2. La trame d'information contient le paramètre NS égal à 2. A l'instant t11, cette trame est correctement reçue par la station B et le numéro de séquence 2 est mémorisé dans la fenêtre de réception FR de la station B. Le numéro de séquence d'émission est égal à la variable d'état VR. La trame de numéro de séquence égal à 2 peut être transmise à la couche supérieure et son numéro de séquence est effacé de la fenêtre de réception FR de la station B. La variable d'état de réception VR est incrémentée de une unité et est égale à 3. Comme la trame de numéro de séquence égal à 3 a déjà été reçue, et que le numéro de séquence 3 est dans la fenêtre de réception, cette trame peut être transmise à la couche supérieure et son numéro de séquence est effacé de la fenêtre de réception. Celle-ci est alors vide. La variable d'état de réception VR est incrémentée de une unité et est égale à 4. Comme il n'y a plus d'erreur dans la réception des trames, les valeurs des variables d'état VL et VA sont mises à la valeur de la variable VR, ici 4. A l'instant t12, la station A transmet la trame d'information dont le numéro de séquence est égal à 4. Le numéro de séquence 4 est alors mémorisé dans la fenêtre d'émission FE et dans la fenêtre d'anticipation FA. La trame numéro 4 est correctement reçue à l'instant t13 par la station B. Le numéro de séquence 4 est mémorisé dans la fenêtre de réception FR de la station B. Le numéro de séquence d'émission 4 est égal à la valeur de la variable VR. La trame numéro 4 est alors transmise à la couche supérieure. Les variables d'état VR, VL et VA sont incrémentées de une unité. Le numéro de séquence 4 est supprimé de la fenêtre de réception FR. A l'instant t14, la station B transmet une trame de supervision de type RR. Cette trame de supervision contient le paramètre NR égal à la valeur de la variable d'état VR. La trame de supervision permet d'acquitter toutes les trames dont le numéro de séquence est strictement inférieur à NR. A l'instant t1 5, la station A reçoit la trame de supervision RR. Toutes les trames dont le numéro de séquence est strictement inférieur à 5 sont acquittées. Les numéros de séquence 1, 2 et 4 sont effacés de la fenêtre d'émission FE et les numéros de séquence 1, 2, 3 et 4 sont effacés de la fenêtre d'anticipation FA. Les trames 1, 2 et 4 sont supprimées de la mémoire vive. L'invention permet donc de ne retransmettre que les trames qui ont été perdues. De plus, la trame numéro 3 est effacée de la mémoire vive de la station A dès que l'acquittement a été reçu, sans attendre que les trames numéro 1 et 2 aient été correctement reçues. Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits et représentés, mais englobe, bien au contraire, toute variante à la portée de l'homme du métier. REVENDICATIONS 1. Procédé d'acquittement sélectif et de rejet sélectif de trames de données, mis en ceuvre dans une station réceptrice de données, chaque trame de données (TD) étant repérée par un numéro de séquence, caractérisé en ce qu'il comporte les étapes de: - mémorisation (E101) des numéros de séquence (NS) des trames reçues et non encore acquittées, - vérification (E102) de la perte d'au moins une trame, et en cas de réponse positive, recherche (E208, E209, E301) de tous les numéros consécutifs de séquence de trames perdues, et - émission (E210, E304) d'une trame d'acquittement sélectif et de rejet sélectif à destination de la station émettrice des données, qui acquitte les trames reçues non encore acquittées qui précédent et qui suivent les trames perdues, et qui demande la retransmission des trames perdues. 2. Procédé selon la revendication 1, caractérisé en ce que l'étape de vérification comporte la comparaison du numéro de séquence (NS) de chaque trame reçue avec un premier compteur (VR) dont la valeur représente le numéro de séquence de la prochaine trame attendue, ladite valeur étant incrémentée de une unité à chaque fois que le numéro de séquence d'une trame reçue est égal à la valeur du premier compteur. 3. Procédé selon la revendication 1 ou 2, caractérisé en ce que l'étape de recherche comporte la mise (E209, E301) d'un deuxième compteur (VL) à la valeur du dernier numéro de séquence de trame perdue, pour représenter la borne supérieure des numéros consécutifs de trames perdues. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comporte, lorsqu'au moins une trame a été perdue, la mise (E303) d'un troisième compteur (VA) à la valeur du numéro de séquence de la dernière trame reçue, augmentée de une unité, pour représenter la borne supérieure des numéros de séquence des trames reçues suivant les trames perdues. 5. Procédé selon les revendications 3 et 4, caractérisé en ce que la trame (SREJ) d'acquittement sélectif et de rejet sélectif comporte deux paramètres (NL, NA) respectivement égaux à la valeur courante des deuxième et troisième compteurs. 6. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il est mis en oeuvre après chaque réception de trame de données. 7. Dispositif d'acquittement sélectif et de rejet sélectif de trames de données (TD), mis en oeuvre dans une station réceptrice de données (SC), chaque trame de données étant repérée par un numéro de séquence, caractérisé en ce qu'il comporte: - des moyens (4) de mémorisation des numéros de séquence (NS) des trames reçues et non encore acquittées, - des moyens (2) de vérification de la perte d'au moins une trame, et en cas de réponse positive, - des moyens (2) de recherche de tous les numéros consécutifs de séquence de trames perdues, et - des moyens (2, 6) d'émission d'une trame (SREJ) d'acquittement sélectif et de rejet sélectif à destination de la station émettrice des données, qui acquitte les trames reçues non encore acquittées qui précédent et qui suivent les trames perdues, et qui demande la retransmission des trames perdues. 8. Dispositif selon la revendication 7, caractérisé en ce que les moyens de vérification sont adaptés à effectuer la comparaison du numéro de séquence (NS) de chaque trame reçue avec un premier compteur (VR) dont la valeur représente le numéro de séquence de la prochaine trame attendue, ladite valeur étant incrémentée de une unité à chaque fois que le numéro de séquence d'une trame reçue est égal à la valeur du premier compteur. 9. Dispositif selon la revendication 7 ou 8, caractérisé en ce que les moyens de recherche sont adaptés à mettre un deuxième compteur (VL) à la valeur du dernier numéro de séquence de trame perdue, pour représenter la borne supérieure des numéros consécutifs de trames perdues. 10. Dispositif selon l'une quelconque des revendications 6 à 9, caractérisé en ce qu'il est adapté, lorsqu'au moins une trame a été perdue, à mettre un troisième compteur (VA) à la valeur du numéro de séquence de la dernière trame reçue, augmentée de une unité, pour représenter la borne supérieure des numéros de séquence des trames reçues suivant les trames perdues. 11. Dispositif selon les revendications 9 et 10, caractérisé en ce qu'il est adapté à émettre une trame d'acquittement sélectif et de rejet sélectif qui comporte deux paramètres (NL, NA) respectivement égaux à la valeur courante des deuxième et troisième compteurs. 12. Dispositif selon l'une quelconque des revendications 7 à 11, caractérisé en ce que les moyens de mémorisation, de vérification, de recherche et d'émission sont incorporés dans: - un micro-contrôleur (2), une mémoire morte (3) comportant un programme d'acquittement sélectif et de rejet sélectif de trames de données, et - une mémoire vive (4) comportant des registres adaptés à enregistrer des variables modifiées au cours de l'exécution dudit programme. 13. Station de communication caractérisée en ce qu'elle comporte des moyens adaptés à mettre en oeuvre le procédé selon l'une quelconque des revendications 1 à 6. 14. Station de communication caractérisée en ce qu'elle comporte le dispositif selon l'une quelconque des revendications 7 à 12. 15. Ordinateur caractérisé en ce qu'il comporte une station de communication selon la revendication 13 ou 14. 16. Imprimante caractérisée en ce qu'elle comporte une station de communication selon la revendication 13 ou 14. 17. Télécopieur caractérisé en ce qu'il comporte une station de communication selon la revendication 13 ou 14. 18. Scanner caractérisé en ce qu'il comporte une station de communication selon la revendication 13 ou 14. 19. Système de communication comportant une pluralité de stations de communication selon la revendication 13 ou 14, et adaptées à échanger des données. 20. Appareil photographique numérique caractérisé en ce qu'il comporte une station de communication selon la revendication 13 ou 14. 21. Caméra numérique caractérisée en ce qu'elle comporte une station de communication selon la revendication 13 ou 14.