Brevet FR3044503A1 — publié le 20170602

Procédés de traitement de paquets de données, dispositif, produit programme d'ordinateur, medium de stockage et noeud de réseau correspondants. 1 DOMAINE TECHNIQUE La présente invention se rapporte au domaine de la transmission de paquets de données au sein d'un réseau, cette transmission s'effectuant depuis un équipement noeud amont vers un terminal client via un noeud aval disposant d'un lien de communication (par exemple radio) avec une bande passante variable et limitée à destination du terminal client. Plus précisément, la présente invention se rapporte à la gestion de la qualité de service ressentie par le terminal client dans une telle configuration. 2 ARRIERE-PLAN TECHNOLOGIQUE La gestion de la qualité de service ressentie par un utilisateur final est aujourd'hui encore essentiellement du ressort des opérateurs possédant les réseaux d'accès. En effet, plus coûteux et ne pouvant bénéficier d'un dimensionnement statistique très marqué, ces réseaux d'accès sont souvent « étroits » et sièges de congestions. La localisation naturelle des mécanismes permettant de pallier les dégradations liées à ces congestions est donc d'évidence au niveau des goulots d'étranglement correspondants, où il est aisé de prioriser les flux et de répartir les ressources, ou la pénurie. Dans les réseaux fixes, des politiques de gestion de la qualité de service sont couramment implémentées à l'accès et permettent de prioriser certains flux sur d'autres considérés comme moins cruciaux en se basant par exemple sur les propriétés du protocole internet. A titre d'exemple, nous pouvons citer la technique dite « DiffServ » décrite dans le document « RFC 2475 - An Architecture for Differentiated Services- December 1998 ». De nombreux mécanismes complémentaires permettent d'assurer la plupart des politiques de gestion de qualité de service envisageables, depuis la simple priorisation des flux jusqu'à l'instauration de garanties de bande passante. Malgré leur maturité, on constate cependant qu'il reste dans les réseaux fixes des entités dépourvues de tels mécanismes de priorisation des paquets. C'est par exemple le cas des multiplexeurs d'accès à la ligne d'abonné numérique (ou « DSLAM » 3044503 2 pour « Digital Subscriber Line Access Multiplexer » en anglais) d'ancienne génération ou des équipements des stations radio de certains faisceaux hertziens. Il apparaît par ailleurs que ces entités sont souvent les goulots d'étranglement du réseau en terme de débit. 5 A titre illustratif, la figure 1 présente une telle configuration connue dans un réseau fixe où le noeud aval 101 est un multiplexeur d'accès à la ligne d'abonné numérique qui n'implémente pas de fonctionnalités de gestion de la qualité de service. Par exemple, le noeud aval ne gère pas la couche 3 de la pile OSI (pour « Open Systems Interconnection » en anglais). Il ne peut donc pas lire les informations de l'en-tête d'un 10 paquet de données internet indiquant un niveau de priorité de ce paquet, comme par exemple le marquage DSCP (pour « Differentiated Services Code Point » en anglais). Ainsi, tous les paquets reçus 110, 111 par le noeud aval 101, et à destination du terminal de l'utilisateur final 102, sont gérés dans une seule et même file d'attente 123, par exemple du type FIFO (pour « First In First Out » en anglais). A contrario, le noeud amont 15 100, par exemple un serveur d'accès large bande (ou « BRAS » pour Broadband Remote Access Server en anglais) implémente de telles fonctionnalités de gestion de la qualité de service (le noeud amont gère par exemple la couche 3 de la pile OSI). Il en résulte dans cet exemple que les paquets reçus 110, 111 par le noeud amont 100 à destination du terminal de l'utilisateur final 102 sont gérés dans deux files d'attentes distinctes 120, 20 121 en fonction d'un critère de priorité, par exemple le marquage DSCP de leur en-tête s'il s'agit de paquets internet. Cependant, le débit 103 du noeud aval 101 étant inférieur au débit 104 du noeud amont 100, les files d'attente 120, 121 de ce dernier se retrouvent vides, empêchant par là-même toute gestion différenciée de ces paquets au niveau du noeud amont. Les 25 paquets de différentes importances 110, 111 se retrouvent alors gérés indifféremment dans la même file d'attente 123 au niveau du noeud aval n'implémentant pas de fonctionnalités de gestion de la qualité de service. Dans cette configuration, il apparaît que la qualité de service ne peut qu'être gérée de bout en bout entre le client et le serveur, par exemple via la mise en oeuvre 30 d'un protocole du type TCP (pour « Transmission Control Protocol » en anglais). Cette 3044503 3 tendance conduit à l'évincement progressif des opérateurs d'accès en les cantonnant au rôle de fournisseur de connectivité. La même problématique existe dans le cas des réseaux cellulaires. En effet, les organismes de standardisation ont défini des solutions de gestion de qualité de service 5 telles que par exemple celle décrite dans le document de standardisation « 3GPP, "QoS Concept and Architecture," TS 23.107 version 8.2.0 Release 8, 2011 ». En pratique, ces solutions proposent d'assurer un certain niveau de qualité de service à certaines applications, via notamment un débit garanti. Cependant, il apparaît que ce mode de gestion de la qualité de service est non seulement coûteux, mais aussi difficile à 10 valoriser. Par conséquent, ces fonctions sont très rarement déployées dans les réseaux actuels malgré leur disponibilité dans les équipements. Par ailleurs, les fonctions classiquement rencontrées dans les réseaux internet fixes, plus simples et nettement moins coûteuses, sont absentes des réseaux d'accès mobiles, en particulier au niveau des goulots d'étranglement (i.e. au niveau des 15 antennes ou stations de base). Il apparaît ainsi que la configuration décrite ci-dessus en relation avec la figure 1 se rencontre également au niveau des réseaux cellulaires connus, le noeud aval 101 représentant alors par exemple une antenne ou une station de base du réseau, et le noeud amont 100 une passerelle de réseau de données par paquets du type « P-GW » (pour « Packet Data Network Gateway » en anglais) ou une 20 passerelle convergente fixe/mobile du type « C-GW » (pour « Convergent Gateway » en anglais). Comme dans le cas des réseaux fixes, la plupart des logiciels applicatifs nécessitant un niveau de qualité de service maîtrisé dans les réseaux mobiles mettent en oeuvre des mécanismes de bout en bout, par exemple via l'utilisation du protocole 25 TCP. Cependant, dans le cas des réseaux mobiles, la problématique de la fluctuation rapide du débit sur le lien radio vient s'ajouter à celle de la réduction du débit sur le dernier tronçon du réseau, i.e. entre le dernier noeud et l'utilisateur. Cette fluctuation dégrade nettement l'efficacité des solutions de bout en bout du type TCP qui se 30 trouvent trop peu réactives. 3044503 4 Il existe donc un besoin pour une solution permettant aux opérateurs d'accès de gérer la qualité de service ressentie par un utilisateur d'une application recevant des paquets de données transitant par leur réseau. Il existe également un besoin pour améliorer la qualité de service par rapport à 5 celle obtenue via la mise en oeuvre de solutions de bout en bout du type TCP. 3 RESUME Dans un mode de réalisation de l'invention, il est proposé un procédé de traitement de paquets de données reçus par un équipement noeud de réseau dit amont 10 et destinés à être transmis à un équipement terminal par un équipement noeud de réseau dit aval via un lien de communication, ledit équipement noeud amont comprenant une file d'attente de paquets de données non prioritaires destinés audit équipement terminal, apte à stocker un nombre prédéterminé de paquets de données avant leur transmission à l'équipement noeud aval. Ledit procédé comprend les étapes 15 suivantes : - obtention d'une première information représentative d'un état de remplissage de ladite file d'attente de l'équipement noeud amont, sur une période d'observation prédéterminée ; - quand ladite première information obtenue a une valeur indicative d'un 20 niveau de remplissage de la file inférieure ou égale à un premier seuil bas non nul prédéterminé, réduction d'un débit de sortie de ladite file ; - quand ladite première information obtenue a une valeur indicative d'un niveau de remplissage de la file supérieure à un premier seuil haut prédéterminé supérieur ou égal audit premier seuil bas, augmentation dudit débit de sortie de ladite 25 file. Ainsi, l'invention propose une solution nouvelle et inventive pour permettre le contrôle de la qualité se service ressentie par un utilisateur final, via le contrôle du débit de sortie des paquets émis par un noeud amont de réseau à destination de cet utilisateur final via un noeud aval. 3044503 5 Pour ce faire, l'invention prévoit que ce contrôle s'effectue au niveau de ce noeud amont possédant des capacités de qualité de service permettant de gérer différentes files d'attente en fonction de l'importance des paquets à destination de l'utilisateur final. 5 L'invention prévoit également de maintenir les files d'attente correspondantes non vides via le contrôle de leur débit de sortie. Ainsi, des arbitrages de priorité peuvent être fait entre le débit des différentes files d'attente en fonction de la priorité des paquets qu'elles contiennent, le débit des files d'attente des paquets non prioritaire étant réduit préférentiellement. 10 Lorsque plusieurs files d'attente sont utilisées pour gérer les paquets non prioritaires à destination de l'utilisateur final, par exemple si plus de deux niveaux de priorité sont présents dans ces paquets, alors le présent procédé peut aussi bien s'appliquer à chacune de ces files d'attente qu'à certaines d'entre elles. Par ailleurs, l'utilisation de deux seuils distincts pour déterminer si le débit de 15 sortie des paquets doit être diminué ou augmenté permet de s'affranchir, via un effet d'hystérésis, d'oscillations indésirables dans la valeur calculée de ce débit de sortie. Ceci permet également de lisser le débit ressenti par l'utilisateur final, et donc de moyenner les changements brutaux de débit qui peuvent se produire lorsque ce dernier utilise un terminal radio mobile par exemple. 20 Selon une caractéristique particulière, ladite première information représentative d'un d'état de remplissage de ladite file d'attente est obtenue à l'aide d'une méthode de gestion active de file d'attente. Ainsi, l'état de remplissage des files d'attentes peut être déterminé via une méthode de gestion active de file d'attente bien connue de l'homme du métier pour son 25 efficacité en la matière. Selon une caractéristique particulière, ladite première information appartient au groupe comprenant : - une estimation d'un temps de traversée de ladite file d'attente par un ou plusieurs paquets de données sur ladite période d'observation prédéterminée ; 3044503 6 - une estimation d'un niveau de remplissage de ladite file d'attente sur ladite période d'observation prédéterminée. Ainsi, l'état de remplissage des files d'attentes est déterminé soit indirectement, via l'observation d'un temps de traversée dans la file d'attente, soit directement, via 5 l'observation d'un niveau de remplissage. Dans une mise en oeuvre particulière, le procédé comprend en outre les sous-étapes suivantes : - quand ladite première information obtenue a une valeur indicative d'un niveau de remplissage de la file supérieure audit premier seuil haut : 10 o obtention d'une seconde information représentative d'un instant présent ; et o quand ladite seconde information obtenue est représentative d'un instant présent antérieur à une date préalablement déterminée, réduction ou maintien dudit débit de sortie de ladite file ; 15 o quand ladite seconde information obtenue est représentative d'un instant présent postérieur ou égal à ladite date préalablement déterminée, exécution de ladite étape d'augmentation du débit de sortie de ladite file. Ainsi, dans cette mise en oeuvre particulière, le débit de la file d'attente non prioritaire, une fois réduit par le procédé selon l'invention, ne peut ré-augmenter 20 qu'après un certain laps de temps. En particulier lorsqu'un seul seuil est utilisé pour déterminer à la fois si le débit de sortie des paquets doit être diminué ou augmenté, ceci donne une possibilité supplémentaire d'éliminer tout effet d'oscillation dans le débit de sortie des paquets de données ainsi que de lisser le débit ressenti par l'utilisateur final. L'implémentation, avec un seul seuil, de l'algorithme de gestion du débit de 25 sortie des paquets émis par un noeud amont de réseau se trouve en outre simplifié, conduisant à une implémentation simple et robuste ainsi que facilement paramétrable. Selon une caractéristique particulière de l'invention, ledit débit de sortie de ladite file est fonction du débit des paquets entrants dans ladite file. 3044503 7 Ainsi, le débit de sortie de la file d'attente à laquelle on applique le procédé selon l'invention est calculé de manière à lui assurer un remplissage qui tend à être constant. Selon un aspect particulier de l'invention, ledit débit des paquets entrants dans 5 ladite file est fonction, via une méthode de gestion de la qualité de service de bout en bout, du débit de sortie dudit noeud aval. Ainsi, le débit des paquets entrants dans la file d'attente est fonction du débit minimum dans le réseau, par exemple le débit de sortie du noeud aval. Ceci est possible lorsqu'une méthode de gestion de la qualité de service de bout en bout, par exemple du 10 type TCP, est mise en oeuvre. Une telle méthode adapte en effet, via des accusés de réception, le débit de la source au débit effectivement reçu par l'utilisateur final, et donc au débit minimum dans le réseau en pratique. Ainsi, le débit de sortie de la file d'attente à laquelle on applique le procédé selon l'invention étant par ailleurs asservi sur son débit entrant, ce débit de sortie se trouve alors asservi sur le débit minimum dans le 15 réseau, en pratique le débit du dernier noeud avant l'utilisateur final. Dans une première implémentation, ledit équipement noeud amont est un serveur d'accès large bande et ledit équipement noeud aval est un multiplexeur d'accès à la ligne d'abonné numérique. Ainsi, dans cette première implémentation, le noeud amont est un noeud de 20 réseau fixe possédant des fonctionnalités de qualité de service de manière à pouvoir gérer différentes files d'attente en fonction de la priorité des paquets de données à destination d'un utilisateur final, par exemple via des capacités de traitement OSI couche 3. Inversement, le noeud aval ne possède pas de telles fonctionnalités (les siennes se limitent par exemple aux capacités de traitement OSI couche 2). Ce noeud 25 aval ne peut alors pas gérer différentes files d'attente. Dans une deuxième implémentation, ledit équipement noeud amont est une passerelle de réseau de données par paquets ou une passerelle convergente et ledit équipement noeud aval est une antenne ou une station de base. Ainsi, dans cette deuxième implémentation, le procédé s'applique à un noeud 30 amont de réseau mobile possédant des fonctionnalités de qualité de service de manière 3044503 8 à pouvoir gérer différentes files d'attente en fonction de la priorité des paquets de données à destination d'un utilisateur final, par exemple via des capacités de traitement OSI couche 3. Inversement, le noeud aval ne possède pas de telles fonctionnalités (les siennes se limitent par exemple aux capacités de traitement OSI couche 2) et ne peut 5 donc pas gérer différentes files d'attente. Dans un autre mode de réalisation de l'invention, il est proposé un programme d'ordinateur, comprenant des instructions de code de programme pour la mise en oeuvre d'un procédé tel que décrit précédemment, dans l'un quelconque de ses différents modes de réalisation, lorsque ledit programme est exécuté sur un ordinateur. 10 Dans un autre mode de réalisation de l'invention, il est proposé un médium de stockage lisible par ordinateur et non transitoire, stockant un programme d'ordinateur comprenant des instructions de code de programme pour la mise en oeuvre d'un procédé tel que décrit précédemment, selon l'un quelconque de ses différents modes de réalisation. 15 Dans un autre mode de réalisation de l'invention, il est proposé un dispositif de traitement, configuré pour mettre en oeuvre un procédé de traitement de paquets de données reçus par un équipement noeud de réseau dit amont et destinés à être transmis à un équipement terminal par un équipement noeud de réseau dit aval via un lien de communication, ledit équipement noeud amont comprenant une file d'attente de 20 paquets de données non prioritaires destinés audit équipement terminal, apte à stocker un nombre prédéterminé de paquets de données avant leur transmission à l'équipement noeud aval. Le dispositif comprend une machine de calcul reprogrammable ou une machine de calcul dédiée, apte à et configurée pour : - obtenir une première information représentative d'un état de remplissage de 25 ladite file d'attente de l'équipement noeud amont, sur une période d'observation prédéterminée ; - réduire un débit de sortie de ladite file quand ladite première information obtenue a une valeur indicative d'un niveau de remplissage de la file inférieure ou égale à un premier seuil bas non nul prédéterminé ; 30 - augmenter ledit débit de sortie de ladite file quand ladite première information 3044503 9 obtenue a une valeur indicative d'un niveau de remplissage de la file supérieure à un premier seuil haut prédéterminé supérieur ou égal audit premier seuil bas. Ainsi, il est également proposé un dispositif de traitement apte à mettre en oeuvre le procédé de traitement de paquets de données selon l'invention (selon l'un 5 quelconque des différents modes de réalisation précités). Dans un autre mode de réalisation de l'invention, il est proposé un équipement noeud de réseau, dit noeud amont, configuré pour mettre en oeuvre un procédé de traitement de paquets de données tel que décrit précédemment, selon l'un quelconque de ses différents modes de réalisation, le noeud amont comprenant un dispositif de 10 traitement tel que décrit ci-dessus. Ainsi, il est également proposé un noeud de réseau apte à mettre en oeuvre le procédé de traitement de paquets de données selon l'invention (selon l'un quelconque des différents modes de réalisation précités). 15 4 LISTE DES FIGURES D'autres caractéristiques et avantages apparaîtront plus clairement à la lecture de la description suivante de modes de réalisation particuliers de la divulgation, donnés à titre de simples exemples illustratifs et non limitatifs, et des dessins annexés, parmi lesquels : 20 - la figure 1 représente le trafic de paquets destinés à un utilisateur dans une configuration de réseau de l'art antérieur ; les figures 2a et 2b illustrent les étapes d'un procédé de traitement de paquets de données selon différents modes de réalisation de l'invention ; les figures 2c et 2d illustrent des paramètres intervenant dans la mise en oeuvre 25 du procédé de traitement de paquets de données en relation avec les modes de réalisation représentés sur les figures 2a et 2b ; les figures 3a et 3b illustrent les effets d'un procédé de traitement de paquets de données sur le remplissage des files d'attente des noeuds de réseau selon des modes de réalisation particuliers de l'invention ; 30 - la figure 4 illustre les effets d'un procédé de traitement de paquets de données 3044503 10 sur le trafic entre les noeuds de réseau selon un mode de réalisation particulier de l'invention ; et la figure 5 présente un exemple de structure d'un dispositif de traitement permettant la mise en oeuvre du procédé de la figure 2. 5 5 DESCRIPTION DETAILLEE Sur toutes les figures du présent document, les éléments et étapes identiques sont désignés par une même référence. Le principe général de la technique décrite consiste à réduire volontairement le débit sur un noeud de réseau possédant des capacités à prioriser certains flux par 10 rapport à d'autres considérés comme moins cruciaux. Plus précisément, la technique décrite propose d'asservir le débit sortant des paquets émis par ce noeud, sur leur débit entrant. Ce débit entrant étant lui-même asservi sur le débit d'un noeud aval, par exemple le noeud aval ayant le plus bas débit dans le réseau et transmettant les paquets à l'utilisateur final, via une méthode de gestion de la qualité de service de bout en bout. 15 De la sorte, le noeud amont se voit devenir le goulot d'étranglement, en terme de débit, pour la transmission des paquets de donnée à destination de l'utilisateur final en question. Il en résulte que les files d'attentes de ce noeud amont se remplissent et qu'une régulation du débit relatif de ces différentes files peut alors se faire. La priorisation de certains flux par rapport à d'autres peut alors devenir effective, par 20 exemple en réduisant prioritairement le flux des paquets considérés comme ayant la plus faible priorité. On décrit maintenant, en relation avec les figures 2a et 2c, un mode de réalisation d'un procédé de traitement de paquets de données selon l'invention. Selon ce mode de réalisation, le débit d'au moins une file d'attente de paquets 25 de données non prioritaires d'un noeud du réseau est calculé en utilisant un algorithme de gestion active de file d'attente de type AQM (pour « Active Queue Management » en anglais) modifié. En effet, certains algorithmes de gestion active de file d'attente selon les techniques antérieures permettent de contrôler les délais d'attente des paquets dans la 30 file considérée, en détruisant certains d'entre eux lorsque ces délais s'allongent trop. 3044503 11 Plus précisément, lorsque l'attente augmente, ces algorithmes déterminent si des actions de destruction de paquets sont requises et quels sont les paquets à détruire. Différents types d'algorithmes de gestion active de file d'attente existent et sont bien connus de l'homme du métier. A titre d'exemple, on peut citer l'algorithme PIE 5 (pour « Proportional Integral controller Enhanced » en anglais) tel que présenté dans le document de Rong Pan, Preethi Natarajan, Chiara Piglione, Mythili Suryanarayana Prabhu, Vijay Subramanian, Fred Baker et Bill VerSteeg: « PIE: A lightweight control scheme to address the bufferbloat problem » (IEEE International Conference on High Performance Switching and Routing 2013, p148-155) ou bien encore l'algorithme CoDel 10 (pour « COntrolled DELay management » en anglais) tel que présenté dans le document de Kathleen M. Nichols et Van Jacobson: « Controlling Queue Delay » (ACM Queue, Vol. 10 Issue 5, May 2012). Selon un mode de réalisation de l'invention, de tels algorithmes peuvent être utilisés non pas pour décider si des paquets doivent être détruits, mais pour décider si le 15 débit de la file d'attente doit être réduit ou augmenté. Plus particulièrement, le mode de réalisation présenté en rapport avec la figure 2a est basé sur l'utilisation d'un algorithme du type CoDel. Ainsi, dans une première étape 200 un paquet est retiré d'une file d'attente d'un noeud dit amont pour être envoyé à un noeud dit aval dans le réseau. 20 À ce moment là, lors d'une étape 201a une première information I représentative de l'état de remplissage de cette file d'attente est comparée à un premier seuil SI. Cette première information II peut être par exemple une estimation du temps de traversée de cette file d'attente par le paquet qui vient d'être retiré. Ce peut être 25 également une estimation d'un temps de traversée de cette file d'attente par tout autre paquet ayant déjà été retiré de la file d'attente. On peut encore imaginer que ce soit un temps de traversée moyen estimé sur tout ou partie des paquets retirés de la file d'attente pendant une période temporelle donnée ou encore toute autre statistique basée sur les temps de traversée de ces paquets. Par temps de traversée d'un paquet, il 30 est entendu ici la différence de temps entre l'instant d'arrivée de ce paquet dans la file 3044503 12 d'attente (obtenue via un horodatage par exemple), et l'instant de retrait du même paquet de la même file. Alternativement, cette première information Ii peut correspondre à une estimation du niveau de remplissage de la file d'attente (par exemple le niveau moyen, 5 le niveau minimum, le niveau maximum, ou toute autre statistique sur le remplissage de la file), sur une période d'observation prédéterminée. Dans un exemple d'implémentation, une valeur de seuil S1 correspondant à un temps de traversée de 15ms est utilisée, ce qui est compatible avec la plupart des files d'attentes utilisées. 10 Si lors de l'étape 201a la valeur de cette première information II est inférieure ou égale au premier seuil prédéterminé Sl, alors une étape 202 est exécutée lors de laquelle un indice k est remis à une valeur initiale ko. Cet indice est par ailleurs utilisé lors des étapes 211 et 212 décrites ci-après. Cette étape 202 est alors suivie de l'étape 203 lors de laquelle le débit de sortie de la file d'attente est réduit. À titre d'exemple cette 15 réduction peut prendre la forme d'un calcul du débit de sortie C, à appliquer à la file après l'itération n de l'algorithme, en fonction du débit de sortie Cn_1 appliqué avant cette itération. En d'autres termes, une fonction g lie le débit de sortie des paquets de la file avant, i.e. C,_/, et après, i.e. C', le passage par l'étape 202. Cette fonction g permet alors de définir une loi de progression de ce débit de sortie des paquets de la file 20 d'attente lors de la réduction de celui-ci. A titre d'exemple, cette réduction de débit peut se faire de manière linéaire, polynomiale, exponentielle, etc. Ainsi, si la première information II est inférieure ou égale au premier seuil Sl, i.e. si le temps de traversée dans la file est trop faible, l'algorithme va tendre à baisser le débit de sortie calculé de la file dans le but de remplir cette dernière. 25 Inversement, si lors de l'étape 201a la valeur de la première information est supérieure au premier seuil prédéterminé, l'algorithme passe à l'étape 210 lors de laquelle une deuxième information est comparée à un second seuil variable S2. Selon le présent mode de réalisation, cette deuxième information est représentative de l'instant présent au moment de l'exécution de l'étape 210 et le second seuil correspond à une 3044503 13 valeur initiale de date ou alors à une date déterminée lors d'un précédent passage à l'étape 212. Si lors de l'étape 210 la valeur de cette seconde information est supérieure ou égale au second seuil S2, l'algorithme passe à l'étape 211 lors de laquelle l'indice entier k 5 est incrémenté, par exemple, de une unité. L'étape 211 d'incrémentation de l'indice k est alors suivie de l'étape 212 lors de laquelle la valeur du second seuil 52 est mise à jour. A titre d'exemple, ce second seuil 52 est déterminé sur la base d'un algorithme CoDel modifié. Plus précisément, ce second seuil peut être déterminé en fonction de l'instant présent tp au moment de l'exécution 10 de l'étape 212, d'une valeur constante représentative d'un intervalle temporel, Inter, et de l'indice k décrit ci-dessus en relation avec l'étape 211. Dans le présent mode de réalisation le second seuil S2 peut s'exprimer sous forme d'une somme, e.g. tp +Ô avec ô = Inter / Nli . L'étape 212 de détermination du second seuil S2 est alors suivie de l'étape 213 15 lors de laquelle le débit de sortie de la file d'attente est augmenté. Tout comme pour la réduction de débit décrite ci-dessus en rapport avec l'étape 203, le débit de sortie Cn à appliquer à la file après l'itération n de l'algorithme, peut s'exprimer comme la fonction f du débit de sortie Cn_1 appliqué avant cette itération. Là encore, la fonction f (de type linéaire, polynomial ou exponentiel par exemple) permet de définir une loi de 20 progression de ce débit de retrait des paquets de la file d'attente lors de l'augmentation de celui-ci. Inversement, si lors de l'étape 210 la valeur de cette seconde information est inférieure au second seuil 52, l'algorithme passe à l'étape 204 lors de laquelle le débit de sortie de la file d'attente est réduit. Dans une variante, ce débit peut être simplement 25 maintenu lors du passage à l'étape 204. Ceci dans le but de ne pas voir la file d'attente se remplir encore plus alors que le test effectué à l'étape 201a est déjà positif. Dans l'exemple illustré sur la figure 2c, c'est à l'instant t1 que la première information Ii devient pour la première fois supérieure au premier seuil Si (i.e. que le temps de traversée dans la file devient trop important). A cet instant t1, le test effectué 30 à l'étape 201a est positif et l'étape 210 est exécutée pour la première fois. Lors de 3044503 14 l'exécution de cette étape 210, le second seuil 52 prend une valeur initiale qui s'écrit : 52 = t11 avec t1p et 81 = Inter f\IF0 (où ko est la valeur initiale de l'indice k déterminée à l'étape 202). L'instant t1 est ici assimilé à l'instant tp d'exécution de l'étape 212, en considérant négligeables les délais d'exécution des étapes du procédé. 5 Plus tard (instant t2), lorsque la seconde information (représentative de l'instant présent au moment de l'exécution de l'étape 210) devient supérieure ou égale au second seuil S2 =t1+81, la première information I1 est encore supérieure au premier seuil S1. Les étapes 211 à 213 (conduisant à une première réduction du débit de sortie de la file d'attente) sont alors exécutées pour la première fois. En particulier, une 10 nouvelle valeur du second seuil S2 (destinée à être utilisée lors de la prochaine exécution de l'étape 210) est calculée lors de la première exécution de l'étape 212, à l'instant tp, et s'écrit : S2 = t2+ 82 avec t2 = tp et 82 =Inter /. \iko +1 . Encore plus tard (instant t3), lorsque la seconde information (représentative de l'instant présent au moment de l'exécution de l'étape 210) devient supérieure ou égale 15 au second seuil S2 =t2+82, la première information /1 est encore supérieure au premier seuil SI. Les étapes 211 à 213 (conduisant à une seconde réduction du débit de sortie de la file d'attente) sont alors exécutées pour la seconde fois. En particulier, une nouvelle valeur de S2 est calculée lors de cette seconde exécution de l'étape 212, à l'instant tp, et s'écrit : S2 = 1-3+ 83 avec t2 = tp et 83 =Inter /. \iko + 2 . 20 Encore plus tard (instant t4), lorsque la seconde information (représentative de l'instant présent au moment de l'exécution de l'étape 210) devient supérieure ou égale au second seuil S2 =t3+83, la première information II est maintenant inférieure ou égale au premier seuil SI. Les étapes 211 à 213 ne sont pas exécutées une troisième fois dans ce cas. A la place, les étapes 202 et 203 sont maintenant exécutées, conduisant 25 d'une part à la mise à la valeur initiale ko de l'indice k, et d'autre part à une réduction du débit de la file d'attente contrôlée. Il faut alors attendre l'instant t5 pour que la première information II devienne à nouveau supérieure au premier seuil SI, conduisant par là-même à une nouvelle exécution de l'étape 210. Cependant, la valeur de l'indice k ayant été remise à la valeur 30 initiale ko, le second seuil S2 s'écrit alors :S2 = ts+ 81 avec t5 =tp et 81 =Inter [Fco . 3044503 15 Il apparaît alors que les conditions se trouvent être les mêmes pour les deux exécutions suivantes des étapes 211 à 213, conduisant chacune à une réduction du débit de la file d'attente aux instants t6 =1-5+8, et t7 =1-6+82, que celles rencontrées lors de l'exécution de ces étapes aux instants t2 =1-1+81 et t3 = t2+62. 5 Plus tard (instant t8), la première information Ii est encore supérieure au premier seuil S1 lorsque la seconde information (représentative de l'instant présent au moment de l'exécution de l'étape 210) devient supérieure ou égale au second seuil S2 = t7 + 83. Ainsi, les étapes 211 à 213, conduisant à une réduction du débit de sortie de la file d'attente contrôlée, sont exécutées une nouvelle fois à l'instant /-8, ce qui n'était 10 pas le cas précédemment lorsqu'arrivé à l'instant t4. Ainsi, de par l'enchaînement des étapes décrites ci-dessus, on voit que même si la première information II est supérieure au premier seuil SI, i.e. si le temps de traversée dans la file devient trop important, l'algorithme ne va augmenter le débit que si la seconde information représentative de l'instant présent au moment de l'exécution de 15 l'étape 210 est supérieure ou égale au second seuil S2, i.e. que s'il s'est écoulé suffisamment de temps depuis l'augmentation de débit précédente. De la sorte, tout phénomène d'oscillation rapide du débit autour d'une valeur d'équilibre est impossible. Inversement, quand bien même le but de l'algorithme reste la réduction du débit effectif de la file d'attente par rapport à son débit physique dans le but de se caler sur le 20 débit le plus faible dans le réseau, l'algorithme permet tout de même d'augmenter à nouveau ce débit de sortie pour s'adapter aux variations de ce débit minimum. Cette augmentation n'est bien sûr possible que dans la limite du débit physique de la file qui reste la limite supérieure possible pour ce débit de sortie. Selon ce mode de réalisation d'un procédé selon l'invention, on voit que le débit 25 de la file d'attente est calculé de manière à ce que le niveau de remplissage de cette dernière tende à être constant. Ainsi, une fois le point d'équilibre atteint, le débit de sortie calculé par l'algorithme tend à être égal au débit de paquets entrants dans la file. Cependant, dans une application ou un protocole de gestion de qualité de service de bout en bout, par exemple du type TCP, est présent, il apparaît que ce débit de paquets 30 entrants correspond, après une période d'adaptation, au débit minimum du réseau. En 3044503 16 effet, un tel protocole de bout en bout tend à faire correspondre le débit de la source des paquets à celui effectivement reçu par le destinataire. Ainsi, l'algorithme décrit en relation avec la figure 2a permet de répliquer ce débit minimum du réseau au niveau de la file d'attente du noeud à laquelle il est appliqué. 5 On décrit maintenant, en relation avec les figures 2b et 2d, une variante de réalisation du procédé de traitement de paquets de données selon l'invention. Dans cette variante, lors d'une étape 201b, la première information I représentative de l'état de remplissage de la file d'attente est comparée non pas à un seul premier seuil, comme lors de l'étape 201a décrite en relation avec la figure 2a, mais à un premier seuil haut Sih 10 ainsi qu'à un premier seuil bas Sib. Dans une implémentation particulière, la valeur de seuil bas Sib correspond à un temps de traversée de 5ms, ce qui est compatible avec la plupart des files d'attentes utilisées. De même, il est envisageable d'avoir une valeur de seuil haut Sih correspondant à un temps de traversée de 20ms. Plus précisément, lors d'une sous-étape 2010 la première information I est 15 comparée à un premier seuil bas prédéterminé Sib. Si la valeur de cette première information I est inférieure ou égale au premier seuil bas prédéterminé Sib, alors l'étape 202 décrite en relation avec la figure 2a est exécutée. Inversement, si la valeur de la première information I est supérieure au premier seuil bas prédéterminé Sib, alors, lors d'une sous-étape 2011, la première information I 20 est comparée à un premier seuil haut prédéterminé Sih, ce premier seuil haut étant supérieur ou égal au premier seuil bas Sib. Si la valeur de la première information I est supérieure au premier seuil haut prédéterminé Sih, l'étape 210 décrite en relation avec la figure 2a est exécutée. Inversement, si la valeur de la première information I est inférieure ou égale au premier seuil haut prédéterminé Sih, alors le débit de sortie de la 25 file d'attente est maintenu constant lors d'une étape 205. Ainsi, le débit de sortie est maintenu constant sur l'ensemble d'une plage de valeurs de la première information représentative de l'état de remplissage de la file d'attente. La valeur calculée du débit se trouve alors modifiée moins souvent. Le débit de sortie de la file d'attente est ainsi plus stable dans ce mode de réalisation. 3044503 17 Dans cette variante, les autres étapes du procédé de traitement de paquets de données selon l'invention correspondent aux étapes décrites ci-dessus en relation avec la figure 2a. On décrit maintenant en rapport avec les figures 3a et 3b les effets d'un procédé 5 de traitement de paquets de données sur le remplissage des files d'attente d'un noeud de réseau selon des modes de réalisation particuliers de l'invention. Plus particulièrement, la figure 3a représente un noeud aval 101 ne disposant pas de fonctionnalités de gestion de la qualité de service, comme présenté en relation avec la figure 1 concernant la configuration du type connu. Ce noeud ne gère donc 10 qu'une seule file d'attente pour tous les paquets à destination d'un même destinataire, quelle que soit la priorité de ces paquets. A contrario, selon ce mode de réalisation, le noeud de réseau amont 100 dispose de telles fonctionnalités de gestion de la qualité de service. Par exemple, il peut s'agir d'un équipement d'accès au service faisant partie d'un réseau fixe, ou bien d'une passerelle de réseau de données par paquets ou d'une 15 passerelle convergente fixe/mobile dans le cas d'un réseau cellulaire. Comme présenté en relation avec la figure 1, ce noeud amont est alors apte à gérer plusieurs files d'attentes dans le but de gérer les paquets à destination du même destinataire en fonction d'un critère de priorité, par exemple le marquage DSCP de leur en-tête si ce sont des paquets issus du protocole internet. Plus précisément, selon ce mode de 20 réalisation une file d'attente 120 est dédiée à la gestion des paquets de priorité haute 110, et une file d'attente 121 à la gestion des paquets de priorité plus basse 111. Même si le noeud amont à un débit physique supérieur à celui du noeud aval auquel les paquets de données 110, 111 doivent parvenir, il apparaît que l'application, par un dispositif de traitement 300 du noeud amont 100, du procédé selon l'invention à 25 au moins une des files d'attente des paquets non prioritaires du noeud amont permet de recréer un engorgement dans au moins cette file via la réduction de son débit. Il apparaît alors que ce noeud amont devient le facteur limitant dans la transmission des paquets de données, ce qui conduit à avoir la file d'attente du noeud aval qui se vide. Plus précisément, si le procédé est appliqué uniquement à la file d'attente 121 30 du noeud amont dédiée à la gestion des paquets de priorité plus basse, il apparaît que le 3044503 18 débit de la file d'attente dédiée à la gestion des paquets de priorité haute est préservée. Ainsi ce débit de la file d'attente du noeud amont dédiée à la gestion des paquets de priorité haute reste à la valeur de son débit physique, alors que le débit de la file d'attente du noeud amont dédiée à la gestion des paquets de priorité plus basse est 5 réduit par rapport à ce même débit physique. On voit ainsi que les paquets de priorité haute sont émis par le noeud amont plus rapidement que les paquets de priorité plus basse et que ces mêmes paquets de priorité haute ne risquent plus d'être rejetés par le noeud aval car la file d'attente de ce dernier se trouve vidée. Ceci conduit bien à améliorer la qualité de service perçue par l'utilisateur final. 10 Selon le mode de réalisation représenté sur la figure 3b, le procédé selon l'invention peut s'appliquer lorsque plusieurs utilisateurs sont en attente de paquets de données transitant via les noeuds amont 100 et aval 101. Selon ce mode de réalisation, chaque file d'attente du noeud aval est dédiée à la gestion des paquets destinés à un utilisateur particulier. Le noeud amont présente alors des files d'attentes 15 correspondantes pour les paquets de priorité haute ou plus basse pour chaque utilisateur. Selon ce mode de réalisation, le procédé est alors appliqué par le dispositif de traitement 300, à chaque file d'attente du noeud amont dédiée à la gestion des paquets de priorité plus basse de chaque utilisateur. Comme dans le cas d'une transmission simple illustrée sur la figure 3a, il apparaît que l'application du procédé 20 recrée un engorgement sur chaque file sur laquelle il est appliqué, conduisant par là- même à avoir la file d'attente correspondante qui se vide au niveau du noeud aval. Les paquets de priorité haute se trouvant ainsi favorisés en termes de délai et les files d'attente du noeud aval étant vidées, la qualité de service s'en trouve améliorée pour chaque utilisateur. 25 On décrit maintenant plus en détail l'implantation du procédé selon l'invention dans un réseau de transmission de données en relation avec la figure 4. Dans ce mode de réalisation, un procédé selon l'invention est mis en oeuvre dans le dispositif de traitement 300 du noeud amont 100 d'un réseau qui implémente des fonctionnalités de gestion de la qualité de service. Comme dans la configuration connue décrite en relation 30 avec la figure 1, il peut s'agir par exemple d'un équipement d'accès au service 3044503 19 implémentant de telles fonctionnalités de gestion sur la base du marquage DSCP de l'entête des paquets transmis s'il s'agit d'un réseau implémentant le protocole internet. Il peut également s'agir d'une passerelle de réseau de données par paquets du type « PGW » ou d'une passerelle convergente fixe/mobile dans le cas de réseaux cellulaires. 5 A contrario, le noeud aval 101 est dépourvu de telles fonctionnalités de gestion de la qualité de service. Il peut s'agir par exemple d'un multiplexeur d'accès à la ligne d'abonné numérique d'ancienne génération ou d'un équipement de certaines stations radio de faisceaux hertziens dans le cas d'un réseau fixe. Il peut également s'agir d'une antenne ou d'une station de base dans le cas de réseaux cellulaires. 10 Que ce soit dans le cas d'un réseau fixe ou dans le cas d'un réseau cellulaire, il apparaît que l'application d'un procédé selon l'invention au niveau des files d'attente du noeud amont permet de réduire le débit 400 en sortie de ce noeud 100, de manière à ce qu'il tende à coïncider avec le débit de sortie 103 du noeud aval 101. Par ailleurs, l'application de ce procédé aux files d'attente 121 du noeud amont 15 dédiées à la gestion des paquets de priorité plus basse 111 permet de réduire le débit d'émission de ces paquets par rapport au débit d'émission des paquets de priorité haute, contribuant ainsi à l'amélioration de la qualité de service ressentie par l'utilisateur final. La figure 5 présente enfin un exemple de structure du dispositif de traitement 20 300, permettant la mise en oeuvre du procédé de la figure 2. Le dispositif de traitement 300 comprend une mémoire vive 503 (par exemple une mémoire RAM), une unité de traitement 502, équipée par exemple d'un processeur, et pilotée par un programme d'ordinateur stocké dans une mémoire morte 501 (par exemple une mémoire ROM ou un disque dur). A l'initialisation, les instructions de code 25 du programme d'ordinateur sont par exemple chargées dans la mémoire vive 503 avant d'être exécutées par le processeur de l'unité de traitement 502. Cette figure 5 illustre seulement une manière particulière, parmi plusieurs possibles, de réaliser l'algorithme détaillé ci-dessus, en relation avec la figure 2. En effet, la technique de l'invention se réalise indifféremment sur une machine de calcul 30 reprogrammable (un ordinateur PC, un processeur DSP ou un microcontrôleur) 3044503 20 exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel). Dans le cas où l'invention est implantée sur une machine de calcul 5 reprogrammable, le programme correspondant (c'est-à-dire la séquence d'instructions) pourra être stocké dans un médium de stockage amovible (tel que par exemple une disquette, un CD-ROM ou un DVD-ROM) ou non, ce médium de stockage étant lisible partiellement ou totalement par un ordinateur ou un processeur. 10 REVENDICATIONS1. Procédé de traitement de paquets de données reçus par un équipement noeud de réseau dit amont (100) et destinés à être transmis à un équipement terminal (102) par un équipement noeud de réseau dit aval (101) via un lien de communication, ledit équipement noeud amont comprenant une file d'attente (121) de paquets de données non prioritaires (111) destinés audit équipement terminal, apte à stocker un nombre prédéterminé de paquets de données avant leur transmission à l'équipement noeud aval, ledit procédé étant caractérisé en ce qu'il comprend les étapes suivantes : - obtention (201a, 201b) d'une première information représentative d'un état de remplissage de ladite file d'attente de l'équipement noeud amont, sur une période d'observation prédéterminée ; - quand ladite première information obtenue a une valeur indicative d'un niveau de remplissage de la file inférieure ou égale à un premier seuil bas non nul prédéterminé, réduction (203) d'un débit de sortie de ladite file ; - quand ladite première information obtenue a une valeur indicative d'un niveau de remplissage de la file supérieure à un premier seuil haut prédéterminé supérieur ou égal audit premier seuil bas, augmentation (213) dudit débit de sortie de ladite file. 2. Procédé selon la revendication 1, caractérisé en ce que ladite première information représentative d'un d'état de remplissage de ladite file d'attente est obtenue à l'aide d'une méthode de gestion active de file d'attente. 3. Procédé selon l'une quelconque des revendications 1 ou 2, caractérisé en ce que ladite première information appartient au groupe comprenant : - une estimation d'un temps de traversée de ladite file d'attente par un ou plusieurs paquets de données sur ladite période d'observation prédéterminée ; - une estimation d'un niveau de remplissage de ladite file d'attente sur ladite période d'observation prédéterminée. 3044503 22 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comprend en outre les sous-étapes suivantes : - quand ladite première information obtenue a une valeur indicative d'un niveau 5 de remplissage de la file supérieure audit premier seuil haut : o obtention (210) d'une seconde information représentative d'un instant présent ; et o quand ladite seconde information obtenue est représentative d'un instant présent antérieur à une date préalablement déterminée, 10 réduction ou maintien (204) dudit débit de sortie de ladite file ; o quand ladite seconde information obtenue est représentative d'un instant présent postérieur ou égal à ladite date préalablement déterminée, exécution de ladite étape d'augmentation (213) du débit de sortie de ladite file. 15 5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que ledit débit de sortie de ladite file est fonction du débit des paquets entrants dans ladite file. 20 6. Procédé selon la revendication 5, caractérisé en ce que ledit débit des paquets entrants dans ladite file est fonction, via une méthode de gestion de la qualité de service de bout en bout, du débit de sortie dudit noeud aval. 7. Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que 25 ledit équipement noeud amont est un serveur d'accès large bande et ledit équipement noeud aval est un multiplexeur d'accès à la ligne d'abonné numérique. 8. Procédé selon l'une quelconque des revendications 1 à 6, caractérisé en ce que ledit équipement noeud amont est une passerelle de réseau de données par paquets ou 30 une passerelle convergente et ledit équipement noeud aval est une antenne ou une 3044503 23 station de base. 9. Produit programme d'ordinateur, comprenant des instructions de code de programme pour la mise en oeuvre d'un procédé selon l'une quelconque des 5 revendications 1 à 8, lorsque ledit programme est exécuté sur un ordinateur. 10. Médium de stockage lisible par ordinateur et non transitoire, stockant un produit programme d'ordinateur selon la revendication 9. 10 11. Dispositif de traitement (300), configuré pour mettre en oeuvre un procédé de traitement de paquets de données reçus par un équipement noeud de réseau dit amont (100) et destinés à être transmis à un équipement terminal (102) par un équipement noeud de réseau dit aval (101) via un lien de communication, ledit équipement noeud amont comprenant une file d'attente (121) de paquets de données non prioritaires 15 (111) destinés audit équipement terminal, apte à stocker un nombre prédéterminé de paquets de données avant leur transmission à l'équipement noeud aval, ledit dispositif étant caractérisé en ce qu'il comprend une machine de calcul reprogrammable (502) ou une machine de calcul dédiée, apte à et configurée pour : - obtenir une première information représentative d'un état de remplissage de 20 ladite file d'attente de l'équipement noeud amont, sur une période d'observation prédéterminée ; - réduire un débit de sortie de ladite file quand ladite première information obtenue a une valeur indicative d'un niveau de remplissage de la file inférieure ou égale à un premier seuil bas non nul prédéterminé ; 25 - augmenter ledit débit de sortie de ladite file quand ladite première information obtenue a une valeur indicative d'un niveau de remplissage de la file supérieure à un premier seuil haut prédéterminé supérieur ou égal audit premier seuil bas. 12. Equipement noeud de réseau, dit noeud amont (100), apte à transmettre des 30 paquets de données à un équipement terminal par l'intermédiaire d'un équipement de 3044503 24 réseau, dit noeud aval, via un lien de communication, le noeud amont étant caractérisé en ce qu'il comprend un dispositif de traitement (300) selon la revendication 11.