Brevet FR2964816A1 — publié le 20120316

La présente invention concerne un dispositif d'adaptation de données à une couche physique, le dispositif d'adaptation étant destiné à être placé entre un dispositif source et un lien de communication. La présente invention concerne également un procédé mis en oeuvre par ce dispositif d'adaptation. La présente invention concerne également un programme d'ordinateur permettant la mise en oeuvre du procédé et des moyens de stockage stockant un tel programme d'ordinateur. La présente invention concerne également un circuit intégré comportant un tel dispositif d'adaptation. La diversité des applications utilisant les services de réseaux de communication entraîne, pour assurer un niveau de qualité de service (QoS ou Quality of Service en anglais) adapté à chacune de ces applications, la mise en place d'un contrôle du trafic sur ces réseaux. Des mécanismes de mise en forme du trafic (trafic shaping en anglais) offrent des moyens de contrôler le volume de trafic qui est envoyé par un dispositif de communication pendant une période donnée (bandwidth throttling en anglais ou étranglement de bande passante en français) et de contrôler le débit maximum auquel ce trafic peut être envoyé (rate limiting en anglais ou limitation de débit en français). Cela permet de limiter les congestions sur les réseaux de communication et ainsi de limiter les phénomènes de perte de données. De tels mécanismes de mise en forme du trafic sont mis en oeuvre dans des équipements intervenant au niveau 2 dans le modèle OSI (Open Systems Interconnection en anglais ou Interconnexion de Systèmes Ouverte en français), c'est-à-dire au niveau de la couche liaison (link layer en anglais). On contrôle ainsi le débit des trames transmises par l'équipement, une trame étant un bloc d'information protocolaire correspondant au niveau 2 dans le modèle OSI. Pour transmettre des trames sur un lien de communication, les trames étant en provenance d'un dispositif source de trames, tel que par exemple un commutateur opérant au niveau 2 dans le modèle OSI, il est usuel de procéder à un traitement sur ces trames en vue de les adapter à la couche physique utilisée. On place alors un dispositif d'adaptation de données entre le dispositif source de trames et le lien de communication. Le traitement appliqué, adaptant les trames en vue de leur transmission sur le lien de communication, altère les trames en modifiant notamment leurs tailles respectives. Un tel traitement peut par exemple consister à supprimer des données de parité contenues dans les trames transmises par le dispositif source de trames. Un tel traitement peut aussi consister à ajouter un entête aux trames transmises par le dispositif source de trames. L'impact de ce traitement en termes de volume de données à transmettre dépend donc de la taille des trames transmises par le dispositif source de trames. Le traitement a un impact proportionnellement plus grand sur les trames, transmises par le dispositif source de trames, qui sont de taille réduite, que sur celles de taille plus conséquente. Ce traitement peut aussi être dépendant de la qualité de service associée à chaque trame transmise par le dispositif source de trames. L'impact de ce traitement dépend donc, de manière plus générale, des caractéristiques des trames transmises par le dispositif source de trames. Un tel traitement a donc un impact sur la bande passante consommée pour la transmission de ces trames sur le lien de communication. Le débit observé sur le lien de communication ne correspond donc pas au débit des trames émises par le dispositif source de trames. De plus, ce débit observé peut être variable même quand le débit des trames émises par le dispositif source de trames est constant. Or, c'est le débit des trames émises par le dispositif source de trames qui est régulé par le mécanisme de mise en forme du trafic et le débit sur le lien de communication peut alors être inadapté aux capacités du lien de communication. La solution communément adoptée consiste à appliquer une limitation de débit en considérant le pire cas, c'est-à-dire quand les trames sont de taille minimum - 64 octets dans le cas de trames Ethernet, telle que définie dans le standard IEEE 802.3. La bande passante du lien de communication est alors sous-utilisée pour les trames de taille supérieure. Le document A High Implementation of Adaptive Shaping for Dynamic Bandwidth Allocation (par Cameron Braun, Vinai Sirkay, Hugo Uriona, Srini Seetharam, Esmaell Yousefi David Petr, Douglas Niehaus, Victor Frost, Joseph Evans, Gary Minden - Telecommunications & Information Sciences Laboratory, Department of Electrical Engineering & Computer Science, Lawrence, Kansas, USA) décrit un mécanisme d'adaptation dynamique de la bande passante allouée à des dispositifs au fil du temps, de manière à partager la bande passante d'un lien de communication entre ces dispositifs. Comme le précise ce document, une allocation de bande passante pour le trafic d'un dispositif diffère d'une réservation de bande passante pour le trafic de ce dispositif en ce que la bande passante allouée mais non utilisée est utilisable pour le trafic d'autres dispositifs. Le mécanisme décrit mesure des caractéristiques de débit moyen et taille de rafales (bursts en anglais) du flot de données transmises par chaque dispositif. En déterminant ainsi le comportement du trafic issu des dispositifs, il est possible d'allouer à chaque dispositif une bande passante adaptée au trafic qu'il génère. Or, dans le cas où la bande passante est réservée au trafic transmis par un dispositif, ou dans le cas où ce trafic peut occuper l'intégralité de la bande passante d'un lien de communication, ce mécanisme est sans effet. L'utilisation de la bande passante pour la transmission du trafic généré par le dispositif n'est alors pas optimisée. Il est souhaitable de pallier ces différents inconvénients de l'état de la technique. Il est notamment souhaitable de fournir une solution qui permette d'améliorer l'utilisation de la bande passante d'un lien de communication lors de la transmission de trames transmises par un dispositif source de trames, ces trames étant traitées par un dispositif d'adaptation de données à une couche physique, avant leur transmission effective sur le lien de communication. Il est notamment souhaitable de fournir une solution qui permette d'utiliser, dans ce cadre, en tant que dispositif source de trames, un équipement ou composant disponible sur étagère sans avoir à le modifier. Il est notamment souhaitable de fournir une solution qui soit simple à mettre en oeuvre et à faible coût. L'invention concerne un dispositif d'adaptation à une couche physique de données à transmettre sur un lien de communication, ledit dispositif d'adaptation étant destiné à être placé entre un dispositif source et le lien de communication, ledit dispositif d'adaptation comportant : - des moyens pour recevoir des trames transmises par le dispositif source ; - des moyens pour appliquer, sur les trames reçues, un traitement dont la mise en oeuvre a pour conséquence de modifier de manière variable le débit des données à transmettre en fonction d'au moins une caractéristique des trames reçues. Le dispositif d'adaptation comporte en outre : - des moyens pour obtenir une information relative au remplissage d'un tampon mémoire dans lequel les trames traitées sont stockées avant transmission sur le lien de communication ; et - des moyens pour contrôler le débit desdites trames transmises par le 30 dispositif source en fonction de l'information obtenue, de façon à compenser des variations de débit introduites par ledit traitement. Ainsi, l'utilisation de la bande passante du lien de communication est améliorée. De plus, le dispositif d'adaptation de données étant l'élément particularisé pour atteindre cet objectif, un équipement ou composant disponible sur étagère peut être utilisé en tant que dispositif source de trames, sans avoir à le modifier. Un tel équipement ou composant est par exemple un commutateur de trames Ethernet. Selon un mode de réalisation particulier, lesdits moyens pour appliquer le traitement comprennent des moyens quelconques parmi le groupe de moyens suivant : - des moyens pour supprimer des données de parité contenues dans les trames reçues ; - des moyens pour ajouter un entête aux trames reçues ; - des moyens pour fragmenter des trames reçues en une pluralité de fragments de trame. - des moyens pour compresser des données contenues dans les trames reçues. Ainsi, le traitement appliqué par le dispositif d'adaptation de données, et consistant à supprimer des données de parité contenues dans les trames reçues, a pour conséquence de modifier la taille des trames reçues en provenance du dispositif source de trames, et ce afin de minimiser la bande passante utilisée sur le lien de communication et permettre ainsi de transmettre un plus grand volume de données utiles. Ainsi, le traitement appliqué par le dispositif d'adaptation de données, et consistant à ajouter un entête aux trames reçues, a pour conséquence de modifier la taille des trames reçues en provenance du dispositif source de trames, et ce afin de transmettre des informations supplémentaires à un dispositif récepteur connecté au lien de communication. Ainsi, le traitement appliqué par le dispositif d'adaptation de données, et consistant à fragmenter des trames reçues en une pluralité de fragments de trame, a pour conséquence de modifier la taille des trames reçues en provenance du dispositif source de trames, et ce afin de permettre par exemple leur transmission sur un lien de communication logique constitué d'une pluralité de liens physiques. Selon un mode de réalisation particulier, le dispositif d'adaptation comprend ledit tampon mémoire. Selon un mode de réalisation particulier, l'information relative au remplissage 30 du tampon mémoire étant le niveau de remplissage du tampon mémoire, les moyens pour contrôler le débit des trames reçues comprennent : - des moyens pour convertir ledit niveau de remplissage en une information de contrôle de débit visant à substantiellement obtenir un niveau de remplissage prédéterminé du tampon mémoire, et - des moyens pour transmettre l'information de contrôle de débit au dispositif source. Selon un mode de réalisation particulier, l'information relative au remplissage du tampon mémoire étant une information de comparaison entre le niveau de remplissage du tampon mémoire et au moins deux seuils de remplissage dudit tampon, les moyens pour contrôler le débit des trames reçues comprennent : - des moyens pour convertir ladite information de comparaison en une information de contrôle de débit, et - des moyens pour transmettre l'information de contrôle de débit au dispositif 10 source. Ainsi, par une surveillance du remplissage du tampon mémoire en comparaison avec un seuil haut et un seuil bas, l'invention peut être mise en oeuvre de manière simple et à faible coût. Selon un mode de réalisation particulier, l'information relative au remplissage 15 du tampon mémoire étant une information de comparaison entre le niveau de remplissage du tampon mémoire et un seuil de remplissage dudit tampon, les moyens pour contrôler le débit des trames reçues comprennent des moyens pour transmettre une requête de rafale de trames au dispositif source, lesdits moyens pour transmettre la requête de rafale de trames étant activés en fonction de ladite information de 20 comparaison. Ainsi, par une surveillance du remplissage du tampon mémoire en comparaison avec un unique seuil, l'invention peut être mise en oeuvre de manière simple et à faible coût en utilisant par exemple un mécanisme de limitation de débit basé sur un seau de jetons. 25 Selon un mode de réalisation particulier, le dispositif source est un dispositif de commutation de trames. L'invention concerne également un circuit intégré comportant un tel dispositif d'adaptation. L'invention concerne également un procédé mis en oeuvre par un dispositif 30 d'adaptation à une couche physique de données à transmettre sur un lien de communication, ledit dispositif d'adaptation étant destiné à être placé entre un dispositif source et le lien de communication, ledit procédé comportant des étapes de : - réception de trames transmises par le dispositif source ; - application, sur les trames reçues, d'un traitement modifiant de manière variable le débit des données à transmettre en fonction d'au moins une caractéristique des trames reçues ; le procédé comportant en outre les étapes suivantes : - obtention d'une information relative au remplissage d'un tampon mémoire dans lequel les trames traitées sont stockées avant transmission sur le lien de communication ; - contrôle du débit desdites trames transmises par le dispositif source en fonction de l'information obtenue, de façon à compenser des variations de débit introduites par ledit traitement. L'invention concerne également un programme d'ordinateur, qui peut être stocké sur un support et/ou téléchargé d'un réseau de communication, afin d'être lu par un système informatique ou un processeur. Ce programme d'ordinateur comprend des instructions pour implémenter le procédé mentionné ci-dessus, lorsque ledit programme est exécuté par un système informatique ou un processeur. L'invention concerne également des moyens de stockage comprenant un tel programme d'ordinateur. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels : - la Fig. 1 illustre un système de communication dans lequel s'inscrit un dispositif d'adaptation de données à une couche physique, selon un mode de réalisation de la présente invention ; - la Fig. 2 illustre un premier algorithme mis en oeuvre par le dispositif d'adaptation de données de la Fig. 1, selon un mode de réalisation de la présente invention ; - la Fig. 3 illustre un second algorithme mis en oeuvre par un dispositif d'adaptation de données de la Fig. 1, selon un mode de réalisation de la présente 30 invention ; - la Fig. 4 illustre un premier exemple d'obtention d'une information relative au remplissage d'un tampon mémoire, selon un mode de réalisation de l'invention ; - la Fig. 5 illustre un second exemple d'obtention d'une information relative au remplissage d'un tampon mémoire, selon un mode de réalisation de l'invention ; - la Fig. 6 illustre un troisième exemple d'obtention d'une information relative au remplissage d'un tampon mémoire, selon un mode de réalisation de l'invention. La Fig. 1 illustre un système de communication dans lequel s'inscrit un dispositif d'adaptation de données selon un mode de réalisation de la présente invention. Le système de communication de la Fig. 1 comprend un dispositif transmetteur 1.51 et un dispositif récepteur 1.52, interconnecté par un lien de communication 1.50. Il est à noter que l'objectif de l'invention n'est pas d'adapter le débit des données transmises sur le lien de communication 1.50 à des variations de conditions de transmission sur ce lien, par exemple liées à des interférences. Le cas échéant, l'adaptation du débit des données transmises sur le lien de communication 1.50 à ces variations de conditions de transmission serait gérée par un dispositif hors du cadre de la présente invention et est, de ce fait, non décrite ici. Le lien de communication 1.50 peut être filaire ou sans-fil. Le lien de communication 1.50 peut être un sous-ensemble d'un lien de communication de plus grande capacité. Le dispositif transmetteur 1.51 comprend, reliés par un bus de communication 1.14 : - un processeur, micro-processeur, microcontrôleur (noté µc) ou CPU (Central Processing Unit en anglais ou Unité Centrale de Traitement en français) 1.7 ; - une mémoire vive RAM (Random Access Memory en anglais ou Mémoire à Accès Aléatoire en français) 1.8 ; - une mémoire morte ROM (Read Only Memory en anglais ou Mémoire à Lecture Seule en français) 1.9 ; - un lecteur 1.6 de medium de stockage, tel qu'un lecteur de CD-ROM (pour Compact Disk Read Only Memory en anglais ou Disque Compact Mémoire à Lecture Seule en français) ; - un dispositif source de trames 1.1 ; - un dispositif 1.2 d'adaptation de données à une couche physique ; - un tampon mémoire 1.3 ; - un module d' encap sulation 1.4 ; et - un module de transmission 1.5. Par souci de simplification, le dispositif 1.2 d'adaptation de données à une couche physique est simplement appelé dispositif d'adaptation 1.2. Le module de transmission 1.5 est interconnecté avec le module d'encapsulation 1.4 grâce à un lien 1.13. Le module d'encapsulation 1.4 est interconnecté avec le tampon mémoire 1.3 grâce à un lien 1.12. Le tampon mémoire 1.3 est interconnecté avec le dispositif d'adaptation 1.2 grâce à un lien 1.11. Le dispositif d'adaptation 1.2 est interconnecté avec le dispositif source de trames 1.1 grâce à un lien 1.10. Le dispositif source de trames 1.1 est éventuellement interconnecté avec un ou plusieurs dispositifs de communication (non représentés) grâce à un lien, un bus ou un réseau de communication 1.20. Le microcontrôleur 1.7 est capable d'exécuter des instructions chargées dans la RAM 1.8 à partir de la ROM 1.9, d'une mémoire externe (non représentée), d'un support de stockage, tel qu'un disque dur ou un CD-ROM, ou d'un réseau de communication. Lorsque le dispositif transmetteur 1.51 est mis sous tension, le microcontrôleur 1.7 est capable de lire de la RAM 1.8 des instructions et de les exécuter. Ces instructions forment au moins un programme d'ordinateur. Ce(s) programme(s) d'ordinateur cause(nt) la mise en oeuvre, par le microcontrôleur 1.7, de tout ou partie des algorithmes décrits ci-après en relation avec les Figs. 2 et 3. Tout ou partie des algorithmes décrits ci-après en relation avec les Fig. 2 et 3 peut être implémenté sous forme logicielle par exécution d'un ensemble d'instructions par une machine programmable, tel qu'un DSP (Digital Signal Processor en anglais ou Unité de Traitement de Signal Numérique en français) ou un microcontrôleur, ou être implémenté sous forme matérielle par une machine ou un composant dédié, tel qu'un FPGA (Field-Programmable Gate Array en anglais ou Matrice de Portes Programmable sur Champ en français) ou un ASIC (Application-Specific Integrated Circuit en anglais ou Circuit Intégré Spécifique à une Application en français). Dans un mode de réalisation préféré le dispositif d'adaptation 1.2 est compris dans un circuit intégré 1.53. Le tampon mémoire 1.3 peut aussi être compris dans le circuit intégré 1.53, comme représenté sur la Fig. 1. I1 est à noter que le tampon mémoire 1.3 peut aussi être compris dans le dispositif d'adaptation 1.2. Il est aussi à noter que le dispositif source de trames 1.1 peut ne pas être compris dans le dispositif transmetteur 1.51. Dans ce cas, le dispositif source de trames 1.1 est connecté au dispositif transmetteur 1.51 par le biais du lien 1.10. Dans un premier mode de réalisation, le dispositif source de trames 1.1 est un dispositif d'interconnexion de sous-réseaux, tel qu'un pont (bridge en anglais) ou un commutateur (switch en anglais). Le dispositif source de trames 1.1 est alors en charge de relayer, à destination du dispositif récepteur 1.52 ou de dispositifs de communication pour lesquels le dispositif récepteur 1.52 sert de relais, des trames reçues de dispositifs de communication via le lien 1.20. Le dispositif source de trames 1.1 agit au niveau 2 dans le modèle OSI, c'est-à-dire qu'il opère au niveau de la couche liaison. Dans un second mode de réalisation, le dispositif source de trames 1.1 est un dispositif générateur de trames. Le dispositif source de trames 1.1 génère alors des trames à transmettre au dispositif récepteur 1.52 ou de dispositifs de communication pour lesquels le dispositif récepteur 1.52 sert de relais. Par exemple, le dispositif source de trames 1.1 génère des trames de type Ethernet. Dans la suite de la description, on considère à titre illustratif que le dispositif source de trames 1.1 est un commutateur de niveau 2 dans le modèle OSI. Plus particulièrement le dispositif source de trames 1.1 est un commutateur de trames Ethernet. Le dispositif source de trames 1.1 fournit des trames, par exemple de type Ethernet, au dispositif d'adaptation 1.2 via le lien 1.10. On dit ainsi que le dispositif 1.1 est source de trames du point de vue du dispositif d'adaptation 1.2. De manière préférentielle, la taille des trames transmises par le dispositif source de trames 1.1 est variable d'une trame à l'autre et est non prédictible. Le dispositif d'adaptation 1.2 reçoit les trames transmises par le dispositif source de trames 1.1 via le lien 1.10. Le dispositif d'adaptation 1.2 utilise le lien 1.10 pour contrôler le débit des trames transmises par le dispositif source de trames 1.1 au dispositif d'adaptation 1.2. Le dispositif source de trames 1.1 comporte un module de contrôle de la mise en forme des trames (shaping controller en anglais) qui permet de configurer le débit des trames en sortie du dispositif source de trames 1.1. Les interactions entre le dispositif d'adaptation 1.2 et le dispositif source de trames 1.1 sont plus amplement décrites ci-après en relation avec les Figs. 2 et 3. Le dispositif d'adaptation 1.2 applique un traitement sur les trames reçues du dispositif source de trames 1.1. Le traitement appliqué par le dispositif d'adaptation 1.2 entraîne une modification de la taille d'au moins une partie des trames reçues. Ainsi, le traitement appliqué par le dispositif d'adaptation 1.2 a pour conséquence de modifier de manière variable le débit des données à transmettre en fonction d'au moins une caractéristique des trames reçues. Ce traitement peut consister à supprimer des données de parité comprises dans les trames reçues. Par exemple, le dispositif d'adaptation 1.2 supprime le champ CRC (Cyclic Redundancy Code en anglais ou Code de Redondance Cyclique en français) contenu dans les trames Ethernet. Lorsqu'il reçoit une trame dont le champ CRC a été supprimé, le dispositif récepteur 1.52 recalcule les données de ce champ et les réincorpore dans la trame reçue. Cela permet de réduire la consommation de bande passante sur le lien 1.50 pour la transmission des trames ainsi traitées. Dans une première variante de réalisation, ce traitement consiste à ajouter un entête aux trames reçues du dispositif source 1.1. Cet entête est par exemple utilisé pour communiquer des informations supplémentaires, du dispositif transmetteur 1.51 au dispositif récepteur 1.52. Cet entête est alors supprimé par le dispositif récepteur 1.52. Dans une seconde variante de réalisation, ce traitement consiste à fragmenter des trames reçues du dispositif source 1.1. Par exemple, les trames transmises sur le lien de communication 1.50 ont une taille maximale prédéterminée. Si des trames reçues du dispositif source 1.1 ont une taille supérieure à un seuil déterminée en fonction de cette taille maximale prédéterminée, elles sont fragmentées en une pluralité de fragments de trame. Chacun de ces fragments de trame permet d'obtenir une trame, à transmettre sur le lien de communication 1.50, de taille inférieure ou égale à la taille maximale prédéterminée. Une telle fragmentation peut aussi être utilisée, quand le lien de communication 1.50 est un lien logique constitué de plusieurs liens physiques, pour transmettre les fragments obtenus de manière répartie sur les liens physiques. Ce traitement peut aussi être dépendant de la qualité de service associée à chaque trame transmise par le dispositif source de trames 1.1. Les traitements prédéterminés mentionnés ci-dessus peuvent être combinés entre eux. D'autres traitements peuvent aussi être mis en oeuvre, seuls ou en combinaison, tels que par exemple une compression de données appliquée sur au moins une partie de chaque trame transmise par le dispositif source de trames 1.1. Le traitement appliqué par le dispositif d'adaptation 1.2 a donc pour conséquence de modifier de manière variable le débit des données à transmettre en fonction d'au moins une caractéristique des trames reçues, cette caractéristique étant par exemple liée à leurs tailles ou à la qualité de service à laquelle elles sont associées. Le dispositif d'adaptation 1.2 transmet alors les trames traitées au tampon mémoire 1.3 via le lien 1.11, afin qu'elles y soient stockées. Le tampon mémoire 1.3 permet de stocker des trames de données en vue de leur transmission sur le lien de communication 1.50. Le tampon mémoire 1.3 est de type FIFO (First-In First Out en anglais ou Premier Entré Premier Sorti en français). Le tampon mémoire 1.3 dispose d'un contrôle d'accès mémoire, qui permet de comparer le nombre de données transmises, ou écrites, par le dispositif d'adaptation 1.2, et le nombre de données récupérées, ou lues, par le module d'encapsulation 1.4. Le tampon mémoire 1.3 fournit au dispositif d'adaptation 1.2, grâce à cette comparaison, une information relative au remplissage du tampon mémoire 1.3. Cette information est alors utilisée par le dispositif d'adaptation 1.2 pour contrôler le débit des trames qui lui sont transmises par le dispositif source 1.1. Le traitement, par le dispositif d'adaptation 1.2, de cette information relative au remplissage du tampon mémoire 1.3 est plus amplement décrit ci-après en relation avec les Figs. 4 à 6. Le module d'encapsulation 1.4 met en forme les trames traitées et stockées dans le tampon mémoire 1.3 en vue de leur transmission, par le module de transmission 1.5 sur le lien de communication 1.50. Le module d'encapsulation 1.4 récupère, ou lit, les trames traitées à partir du tampon mémoire 1.3, à un rythme fonction des capacités de transmission sur le lien de communication 1.50. Lorsque de la bande passante est disponible sur le lien de communication 1.50, le module de transmission 1.5 informe le module d'encapsulation 1.4 qui récupère au moins une trame traitée et stockée dans le tampon mémoire 1.3 et qui effectue une encapsulation de la ou des trame(s) récupérée(s). Cette encapsulation consiste à placer chaque trame dans un conteneur destiné à faciliter, ou permettre, son transport sur le lien de communication 1.50. Par exemple, cette encapsulation consiste en l'adjonction d'un entête GFP (Generic Framing Procedure en anglais ou Procédure de Construction Générique de Trame en français). Cette encapsulation peut en outre consister en l'adjonction d'un champ FCS (Frame Check Sequence en anglais ou Séquence de Vérification de Trame en français) pour permettre au dispositif récepteur de vérifier que la trame considérée a été reçue sans erreur. Chaque trame ainsi encapsulée est ensuite transmise par le module d'encapsulation 1.4 au module de transmission 1.5 via le lien 1.13. Chaque trame est alors transmise sur le lien de communication 1.50 par le module de transmission 1.5. Le module d'encapsulation 1.4 peut comporter un module de modulation des données à transmettre via le lien de communication 1.50. Le dispositif récepteur 1.52 comprend, reliés par un bus de communication 1.34 : - un processeur, micro-processeur, microcontrôleur (noté µc) ou CPU (Central Processing Unit en anglais ou Unité Centrale de Traitement en français) 1.27 ; - une mémoire vive RAM (Random Access Memory en anglais ou Mémoire à Accès Aléatoire en français) 1.28 ; - une mémoire morte ROM (Read Only Memory en anglais ou Mémoire à Lecture Seule en français) 1.29 ; - un dispositif destinataire de trames 1.21 ; - un dispositif 1.22 d'adaptation de données en sortie de couche physique ; - un module de dés-encapsulation 1.24 ; et - un module de réception 1.25. Par souci de simplification, le dispositif 1.22 d'adaptation de données en sortie de couche physique est simplement appelé dispositif d'adaptation 1.22. Le module de réception 1.25 est interconnecté avec le module de désencapsulation 1.24 grâce à un lien 1.33. Le module de dés-encapsulation 1.24 est interconnecté avec le dispositif d'adaptation 1.22 grâce à un lien 1.31. Le dispositif d'adaptation 1.22 est interconnecté avec le dispositif destinataire de trames 1.21 grâce à un lien 1.30. Le dispositif destinataire de trames 1.21 est éventuellement interconnecté avec un ou plusieurs dispositifs de communication (non représenté(s)) grâce à un lien, un bus ou un réseau de communication 1.40. Le microcontrôleur 1.27 est capable d'exécuter des instructions chargées dans la RAM 1.28 à partir de la ROM 1.29. Lorsque le dispositif récepteur 1.52 est mis sous tension, le microcontrôleur 1.27 est capable de lire de la RAM 1.28 des instructions et de les exécuter. Ces instructions forment au moins un programme d'ordinateur. Ce(s) programme(s) d'ordinateur cause(nt) la mise en oeuvre, par le microcontrôleur 1.27, d'étapes de configuration du dispositif d'adaptation 1.22, du module de dés- encapsulation 1.24 et du module de réception 1.25. I1 est à noter que le dispositif destinataire de trames 1.21 peut ne pas être compris dans le dispositif récepteur 1.52, de la même manière que le dispositif source de trames 1.1 peut ne pas être compris dans le dispositif transmetteur 1.51. Dans ce cas, le dispositif destinataire de trames 1.21 est connecté au dispositif récepteur 1.52 par le biais du lien 1.30. Dans la suite de la description, on considère à titre illustratif que le dispositif destinataire de trames 1.21 est un commutateur de trames Ethernet. Le module de réception 1.25 reçoit des trames en provenance du dispositif transmetteur 1.51 via le lien de communication 1.50. Le module de réception 1.25 fournit alors ces trames au module de dés-encapsulation 1.24 via lien 1.33. Le module de dés-encapsulation 1.24 retire les données qui ont été ajoutées par le module d'encapsulation 1.4 du dispositif transmetteur 1.51. Ces données retirées peuvent faire l'objet d'un traitement par le module de dés-encapsulation 1.24 ou par le microcontrôleur 1.27, comme par exemple pour vérifier que la trame considérée a été reçue sans erreur. L e module de dés-encapsulation 1.24 peut comporter un module de démodulation des données reçues via le lien de communication 1.50. Les trames dé-encapsulées sont ensuite transmises par le module de désencapsulation 1.24 au dispositif d'adaptation 1.22 via le lien 1.31. Le dispositif d'adaptation 1.22 du dispositif récepteur 1.52 effectue l'opération inverse du traitement effectué par le dispositif d'adaptation 1.2 du dispositif transmetteur 1.51. Dans le cas où le dispositif d'adaptation 1.2 a supprimé des données de parité de chaque trame qu'il a reçue du dispositif source de trames 1.1, le dispositif d'adaptation 1.22 recalcule les données de parité supprimées et les réincorpore dans la trame, afin de reformer la trame d'origine, c'est-à-dire la trame telle qu'elle a été transmise par le dispositif source de trames 1.1. Dans le cas où le dispositif d'adaptation 1.2 a ajouté un entête à chaque trame qu'il a reçue du dispositif source de trames 1.1, le dispositif d'adaptation 1.22 supprime cet entête, afin de reformer la trame d'origine, et récupère les informations qu'il contient. Ces données récupérées peuvent alors faire l'objet d'un traitement par le microcontrôleur 1.27. Dans le cas où le dispositif d'adaptation 1.2 a fragmenté des trames qu'il a reçues du dispositif source de trames 1.1, le dispositif d'adaptation 1.22 réassemble les fragments, afin de reformer la trame d'origine. Le dispositif d'adaptation 1.22 comporte alors une mémoire tampon interne qui permet de stocker des fragments de trame dans l'attente que tous les fragments d'une même trame d'origine aient été reçus. Le dispositif d'adaptation 1.22 transmet alors les trames traitées au dispositif destinataire de trames 1.21. La Fig. 2 illustre un premier algorithme mis en oeuvre par le dispositif d'adaptation 1.2 selon un mode de réalisation de la présente invention. Dans une étape 2.1, le dispositif d'adaptation 1.2 reçoit des trames en provenance du dispositif source de trames 1.1. Dans une étape 2.2 suivante, le dispositif d'adaptation 1.2 applique un traitement sur les trames reçues, tel que déjà décrit ci-dessus en relation avec la Fig. 1. Dans une étape 2.3 suivante, le dispositif d'adaptation 1.2 transmet les trames traitées au tampon mémoire 1.3. La Fig. 3 illustre un second algorithme mis en oeuvre par le dispositif d'adaptation 1.2 selon un mode de réalisation de la présente invention. Ce second algorithme se déroule en parallèle du premier algorithme décrit en relation avec la Fig. 2. Cependant, les étapes de ces premier et second algorithmes pourraient être adaptées pour être exécutées séquentiellement. Dans une étape 3.1, le dispositif d'adaptation 1.2 est configuré. Cette configuration est par exemple effectuée par le microcontrôleur 1.7. La configuration du dispositif source de trames 1.1 peut par exemple être effectuée par le biais du dispositif d'adaptation 1.2, ou directement par le microcontrôleur 1.7. Le dispositif d'adaptation 1.2 est préférentiellement informé de la configuration initiale du dispositif source de trames 1.1 en ce qui concerne le débit des trames qu'il transmet via le lien 1.10. Cette configuration initiale du dispositif source de trames 1.1 peut alors être prise en compte par le dispositif d'adaptation 1.2 pour contrôler le débit des trames transmises via le lien 1.10. Considérons par exemple une transmission de trames Ethernet par le dispositif transmetteur 1.2. Considérons en outre que le dispositif d'adaptation 1.2 applique un traitement, aux trames reçues du dispositif source de trames 1.1, qui consiste à supprimer le champ CRC de ces trames Ethernet. Quatre octets sont ainsi supprimés par le dispositif d'adaptation 1.2, pour chaque trame Ethernet. Considérons aussi que le module d'encapsulation 1.4 effectue une encapsulation GFP des trames traitées, qui ajoute 8 octets à chaque trame traitée. Soit Dt la valeur fixe de bande passante disponible sur lien de communication 1.50. Le débit D applicable en sortie du dispositif source de trames 1.1 est alors, pour une trame de taille T (en octets) : D = Dt * T / (T - 4 + 8) = Dt * T / (T + 4) Le débit minimum est obtenu pour des trames Ethernet de taille minimale. La taille minimale des trames Ethernet étant de 64 octets, le débit minimal en sortie du dispositif source de trames 1.1 est alors : Dm;n = Dt * 64 / 68 Le débit des trames transmises par le dispositif source de trames 1.1 est alors initialement fixé à cette valeur, ce qui correspond au cas le plus défavorable d'utilisation de la bande passante, c'est-à-dire le cas où la surcharge (overhead en anglais) liée au traitement appliqué par le dispositif d'adaptation 1.2 et l'encapsulation effectuée par le module d' encapsulation 1.4 est maximale. Du point de vue du tampon mémoire 1.3, la quantité de trames stockée en attente de transmission sur le lien de communication 1.50 est stable si les trames Ethernet transmises par le dispositif source de trames 1.1 sont de taille égale à 64 octets. Si les trames Ethernet sont de taille plus grande, le tampon mémoire 1.3 tend à se vider. La bande passante sur le lien de communication 1.50 est dans ce cas sous-occupée. Le module d'encapsulation peut alors être amené à insérer des données de bourrage (padding data en anglais) pour maintenir une activité sur le lien de communication 1.50. Dans une étape 3.2 suivante, le dispositif d'adaptation 1.2 effectue éventuellement une étape d'attente qu'une durée prédéfinie soit écoulée. Cette étape d'attente permet que la valeur du débit des trames transmises par le dispositif source de trames 1.1 produise ses effets sur le remplissage, avant d'être éventuellement mise à jour. Dans une étape 3.3 suivante, le dispositif d'adaptation 1.2 obtient une information relative au remplissage du tampon mémoire 1.3. Cette information est par exemple le niveau de remplissage du tampon mémoire 1.3, c'est-à-dire le volume de données que contient le tampon mémoire 1.3. Cette information peut aussi être un taux de remplissage du tampon mémoire 1.3, c'est-à-dire un pourcentage d'occupation du tampon mémoire 1.3. Cette information peut aussi être une information de comparaison entre le niveau de remplissage du tampon mémoire 1.3 et un seuil de remplissage. Cette information peut aussi être une information de comparaison entre le niveau de remplissage du tampon mémoire 1.3 et au moins deux seuils de remplissage. Chacun de ces exemples d'information relative au remplissage du tampon mémoire 1.3 est décrit ci-après en relation avec les Figs. 4 à 6. Dans une étape 3.4 suivante, le dispositif d'adaptation 1.2 détermine, en fonction de l'information obtenue à l'étape 3.3, si une adaptation du débit des trames émises par le dispositif source de trames 1.1 est requise. Si une telle adaptation est requise, une étape 3.5 est effectuée ; sinon l'étape 3.2 est réitérée. Lors de l'étape 3.5, le dispositif d'adaptation 1.2 détermine une information de contrôle du débit des trames transmises par le dispositif source de trames 1.1, en fonction de l'information obtenue à l'étape 3.3. Cette information de contrôle vise à compenser des variations de débit des données à transmettre introduites par le traitement appliqué à l'étape 2.2, ainsi que celles éventuellement introduites par le module d'encapsulation 1.4. Le dispositif d'adaptation 1.2 transmet alors cette information de contrôle de débit au dispositif source de trames 1.1. Ainsi, le dispositif d'adaptation 1.2 contrôle le débit des trames transmises par le dispositif source de trames 1.1, afin de compenser les variations de débit introduites par le traitement qu'il a appliqué. L'étape 3.2 est alors réitérée. La Fig. 4 illustre un premier exemple d'obtention d'une information relative au remplissage du tampon mémoire 1.3, selon un mode de réalisation de l'invention. Deux seuils de remplissage du tampon mémoire 1.3 sont définis : un seuil haut 4.1 et un seuil bas 4.2. Le niveau de remplissage 4.3 du tampon mémoire 1.3 est comparé avec ces deux seuils. Si le niveau de remplissage 4.3 du tampon mémoire 1.3 est inférieur au seuil bas 4.2, le débit des trames émises par le dispositif source de trames 1.1 doit être augmenté. Le dispositif d'adaptation 1.2 doit transmettre au dispositif source de trames 1.1 une information de contrôle de débit en conséquence. Si le niveau de remplissage 4.3 du tampon mémoire 1.3 est supérieur au seuil haut 4.1, le débit des trames émises par le dispositif source de trames 1.1 doit être diminué. Le dispositif d'adaptation 1.2 doit transmettre au dispositif source de trames 1.1 une information de contrôle de débit en conséquence. Si le niveau de remplissage 4.3 du tampon mémoire 1.3 est supérieur ou égal au seuil bas 4.2 et inférieur ou égal au seuil haut 4.1, le débit des trames émises par le dispositif source de trames 1.1 est maintenu. Le dispositif d'adaptation 1.2 compare donc le niveau de remplissage 4.3 du tampon mémoire 1.3 au seuil haut 4.1 et au seuil bas 4.2, convertit l'information issue de la comparaison en une information de contrôle de débit et transmet cette information de contrôle de débit au dispositif source de trames 1.1. La Fig. 5 illustre un second exemple d'obtention d'une information relative au remplissage du tampon mémoire 1.3, selon un mode de réalisation de l'invention. Le débit des trames émises par le dispositif source de trames 1.1 est ajusté proportionnellement au niveau de remplissage 5.1 du tampon mémoire 1.3. Le dispositif d'adaptation 1.2 convertit le niveau de remplissage 5.1 du tampon mémoire 1.3 en une information de contrôle de débit visant à substantiellement obtenir un niveau de remplissage prédéterminé du tampon mémoire 1.3 et transmet cette information de contrôle de débit au dispositif source de trames 1.1. Un tel procédé requiert que l'étape 3.2 d'attente soit de courte durée, de manière à augmenter la fréquence des contrôles de débit des trames transmises par le dispositif source de trames 1.1, afin de ne pas provoquer un dépassement des capacités du tampon mémoire 1.3, par le haut (overflow en anglais) ou par le bas (underflow en anglais). La Fig. 6 illustre un troisième exemple d'obtention d'une information relative au 15 remplissage du tampon mémoire 1.3, selon un mode de réalisation de l'invention. Un seuil 6.3 de remplissage du tampon mémoire 1.3 est défini. Si le niveau de remplissage 6.2 du tampon mémoire 1.3 est supérieur au seuil 6.3, le débit des trames émises par le dispositif source de trames 1.1 est maintenu. Si le niveau de remplissage 6.2 du tampon mémoire 1.3 est inférieur ou égal au 20 seuil 6.3, le débit des trames émises par le dispositif source de trames 1.1 doit être temporairement augmenté. Cette augmentation temporaire peut être réalisée au moyen d'une requête de rafale de trames. Le dispositif d'adaptation 1.2 requiert auprès du dispositif source de trames 1.1 qu'une rafale de trames soit transmise. La taille de la rafale requise ne doit 25 toutefois pas excéder la taille de la place disponible dans le tampon mémoire 1.3, afin de ne pas provoquer un dépassement par le haut des capacités du tampon mémoire 1.3. Le dispositif d'adaptation 1.2 décide donc de transmettre cette requête de rafale de trames au dispositif source de trames 1.1, en fonction d'une information de comparaison entre le niveau de remplissage 6.2 du tampon mémoire 1.3 et le seuil 6.3. 30 Un tel procédé est particulièrement adapté à une mise en forme de trafic en sortie du dispositif source de trames 1.1 avec un seau de jetons (Token Bucket en anglais), car la rafale de trames peut être créée en remplissant le seau avec des jetons supplémentaires correspondant à la longueur de la rafale souhaitée. Il est aussi possible d'utiliser une mise en forme de trafic en sortie du dispositif source de trames 1.1 avec un seau de jetons pour les autres modes de réalisation de l'invention décrits ci-dessus. Il s'agit alors de modifier la fréquence de remplissage du seau de jetons pour contrôler le débit des trames transmises par le dispositif source de trames 1.1, ou le nombre de jetons ajoutés à chaque période de remplissage du seau. Il est à noter que d'autres mécanismes contrôlant le débit des trames en sortie du dispositif source de trames 1.1 peuvent être utilisés par le dispositif source de trames 1.1, comme par exemple un seau percé (Leaky Bucket en anglais). REVENDICATIONS1) Dispositif (1.2) d'adaptation à une couche physique de données à transmettre sur un lien de communication (1.50), ledit dispositif d'adaptation étant destiné à être placé entre un dispositif source (1.1) et le lien de communication, ledit dispositif d'adaptation comportant : - des moyens pour recevoir des trames transmises par le dispositif source ; - des moyens pour appliquer, sur les trames reçues, un traitement dont la mise en oeuvre a pour conséquence de modifier de manière variable le débit des données à transmettre en fonction d'au moins une caractéristique des trames reçues ; caractérisé en ce qu'il comporte en outre : - des moyens pour obtenir une information relative au remplissage d'un tampon mémoire (1.3) dans lequel les trames traitées sont stockées avant transmission sur le lien de communication ; et - des moyens pour contrôler le débit desdites trames transmises par le dispositif source en fonction de l'information obtenue, de façon à compenser des variations de débit introduites par ledit traitement. 2) Dispositif d'adaptation selon la revendication 1, caractérisé en ce que lesdits 20 moyens pour appliquer le traitement comprennent des moyens quelconques parmi le groupe de moyens suivant : - des moyens pour supprimer des données de parité contenues dans les trames reçues ; - des moyens pour ajouter un entête aux trames reçues ; 25 - des moyens pour fragmenter des trames reçues en une pluralité de fragments de trame. - des moyens pour compresser des données contenues dans les trames reçues. 3) Dispositif d'adaptation selon l'une quelconque des revendications 1 et 2, 30 caractérisé en ce qu'il comprend ledit tampon mémoire. 4) Dispositif d'adaptation selon l'une quelconque des revendications 1 à 3, caractérisé en ce que, l'information relative au remplissage du tampon mémoire étantle niveau (5.1) de remplissage du tampon mémoire, les moyens pour contrôler le débit des trames reçues comprennent : - des moyens pour convertir ledit niveau de remplissage en une information de contrôle de débit visant à substantiellement obtenir un niveau de remplissage 5 prédéterminé du tampon mémoire, et - des moyens pour transmettre l'information de contrôle de débit au dispositif source. 5) Dispositif d'adaptation selon l'une quelconque des revendications 1 à 4, 10 caractérisé en ce que, l'information relative au remplissage du tampon mémoire étant une information de comparaison entre le niveau (4.3) de remplissage du tampon mémoire et au moins deux seuils (4.1, 4.2) de remplissage dudit tampon, les moyens pour contrôler le débit des trames reçues comprennent : - des moyens pour convertir ladite information de comparaison en une 15 information de contrôle de débit, et - des moyens pour transmettre l'information de contrôle de débit au dispositif source. 6) Dispositif d'adaptation selon l'une quelconque des revendications 1 à 4, 20 caractérisé en ce que, l'information relative au remplissage du tampon mémoire étant une information de comparaison entre le niveau (6.2) de remplissage du tampon mémoire et un seuil (6.3) de remplissage dudit tampon, les moyens pour contrôler le débit des trames reçues comprennent des moyens pour transmettre une requête de rafale de trames au dispositif source, lesdits moyens pour transmettre la requête de 25 rafale de trames étant activés en fonction de ladite information de comparaison. 7) Dispositif d'adaptation selon l'une quelconque des revendications 1 à 6, caractérisé en ce que le dispositif source est un dispositif de commutation de trames. 30 8) Circuit intégré, caractérisé en ce qu'il comporte un dispositif d'adaptation selon l'une quelconque des revendications 1 à 7. 9) Procédé mis en oeuvre par un dispositif (1.2) d'adaptation à une couche physique de données à transmettre sur un lien de communication (1.50), leditdispositif d'adaptation étant destiné à être placé entre un dispositif source (1.1) et le lien de communication, ledit procédé comportant des étapes de : - réception (2.1) de trames transmises par le dispositif source ; - application (2.2), sur les trames reçues, d'un traitement modifiant de manière 5 variable le débit des données à transmettre en fonction d'au moins une caractéristique des trames reçues ; caractérisé en ce qu'il comporte en outre les étapes suivantes : - obtention (3.3) d'une information relative au remplissage d'un tampon mémoire dans lequel les trames traitées sont stockées avant transmission sur le lien de 10 communication ; - contrôle (3.5) du débit desdites trames transmises par le dispositif source en fonction de l'information obtenue, de façon à compenser des variations de débit introduites par ledit traitement. 15 10) Programme d'ordinateur, caractérisé en ce qu'il comprend des instructions pour mettre en oeuvre, lorsque ledit programme est exécuté par un processeur, le procédé selon la revendication 9. 11) Moyens de stockage, caractérisés en ce qu'ils stockent un programme 20 d'ordinateur comprenant des instructions pour mettre en oeuvre, lorsque ledit programme est exécuté par un processeur, le procédé selon la revendication 9.