Brevet FR3072852A1 — publié le 20190426

Procédé d'acquittement par bloc de trames de données et stations Wi-Fi associées Domaine de l'invention La présente invention se rapporte au domaine des télécommunications. Au sein de ce domaine, l'invention se rapporte plus particulièrement aux réseaux d'accès local sans fil WLAN (Wireless Local Access Network) et aux stations et au mécanisme d'acquittement des trames de données. Un réseau WLAN utilise notamment la technologie de transmission sans fil basée sur la norme de réseau radioélectrique IEEE 802.11 et ses évolutions dont plus particulièrement les documents IEEE 802.11n et IEEE 802.11e communément regroupées sous l'appellation Wi-Fi (pour « Wireless Fidelity »). Un réseau WLAN comprend au moins deux stations STA1, STA2 dont un point d'accès STA1 (ou AP « Access Point » selon la terminologie anglosaxonne) et un terminal client STA2. Un point d'accès est généralement associé à une passerelle pour réaliser l'interface entre le terminal client et un réseau d'accès haut débit, le plus souvent fixe, par exemple de type ADSL pour une passerelle privée. Une passerelle assure en outre des fonctions de modem et de routeur. Le point d'accès est calé sur un des différents canaux de la bande considérée (2.4GHz, 5GHz, etc). Le canal peut être de 20MHz, 40MHz, 80MHz, 160M1-Tz, etc. Un ensemble de service de base (BSS « Basic Service Set » selon la terminologie anglosaxonne) est formé par un point d'accès et des stations associées à ce point d'accès. Ces stations sont situées dans la cellule Wi-Fi ou zone de couverture de ce point d'accès. Ces stations servies par le point d'accès sont des terminaux clients. Au sein d'un même ensemble BSS de stations d'un système radio sans fil illustré par la figure 1, le point d'accès STA1 et la station STA2 qui lui est associée échangent de l'information sur la même bande de fréquence et les mêmes canaux. Le modèle de communication OSI définit la gestion de service de transmission de données au moyen de sept couches protocolaires superposées : la couche physique (couche 1), la couche liaison de données (couche 2), la couche réseau (couche 3), la couche transport (couche 4), la couche session (couche 5), la couche présentation (couche 6) et la couche application (couche 7). Les trois premières couches 1, 2 et 3, dites couches basses, sont relatives à la mise en oeuvre de la connexion et au transport des données. Les quatre couches suivantes, dites 2 couches hautes, sont responsables du traitement des données. Cette organisation permet donc au système de télécommunication d'implémenter le service associé aux données traitées. Les protocoles de liaison de données répondent aux demandes de services provenant de la couche réseau et réalisent leur fonction par l'envoi de demandes de services à la couche 5 physique. Les échanges de signalisation entre deux entités de communication séparées par un canal de transmission sont pilotés au niveau de la couche liaison de données au moyen d'une structure de trames, dites trames MAC (« Medium Access Control » selon la terminologie anglosaxonne). En référence à la figure 2, les trames MAC sont encapsulées dans une structure 10 de trames, dite trames physiques par la couche physique PHY avant leur transmission par le canal de transmission. La figure 2 est un schéma d'une trame physique PPDU (« PHY Protocol Data Unit » selon la terminologie anglosaxonne) au niveau de la couche physique. Une telle trame physique comprend un entête PHY HDR, un champ de données PSDU (« PHY Service Data Unit » selon la terminologie anglosaxonne), un champ queue TAIL et un champ de 15 bourrage PAD. Le champ de données PSDU est la trame MPDU (« MAC Protocol Data Unit » selon la terminologie anglosaxonne) dite MAC. La trame MPDU comprend un entête MAC HDR, un champ de données MSDU (« MAC Service Data Unit » selon la terminologie anglosaxonne) et un champ FCS (« Frame Check Sequence » selon la terminologie anglosaxonne) de vérification de trame. De manière générale, l'entête MAC HDR d'une trame 20 dite MAC comprend l'adresse de la station émettrice comme spécifiés aux 9.2.3 [1] et 9.2.4.3 pi du standard IEEE802.11-2016. L'agrégation A-MSDU (« Aggregate MAC Service Data Unit » selon la terminologie anglosaxonne) de trame MAC est donc l'agrégation de plusieurs unités de données MSDU dans une trame MPDU. 25 Une balise (« Beacon » selon la terminologie anglosaxonne) est une trame de gestion contenant toutes les informations du réseau de communication, en particulier les informations du canal sur lequel elles sont transmises. Ces balises sont transmises périodiquement par le point d'accès sur le canal (le canal principal dans le cas d'une agrégation de canaux). Elles jouent un rôle d'estampillage et permettent une synchronisation de toutes les 30 stations attachées au même point d'accès par un même canal. Ces balises contiennent des informations permettant de connaître les caractéristiques des ensembles de services de base proposés par le point d'accès, par exemple l'identité du point d'accès (SSID, « Service Set Identification » selon la terminologie anglosaxonne), la bande de fréquence, la largeur de bande (20MHz, 40MHz, 80MHz, 160MHz), le numéro du canal dans cette bande de 3 fréquence, l'intervalle de garde court/long (« Short/Long Guard Interval »), le nombre de flux,..., les débits physiques utilisables (« Supported Rates). Compte tenu que l'accès au canal Wi-Fi est basé sur un accès partagé, il nécessite un protocole d'accès. Le plus courant est le protocole d'accès d'évitement de collision CSMA/CA 5 (« Carrier Sense Multiple Access-Collision Avoidance » selon la terminologie anglosaxonne). Cependant, malgré un protocole d'accès les transmissions peuvent être sujettes à des interférences, à des atténuations voire même à des collisions. Ainsi, pour renforcer la fiabilité de l'accès au canal, la couche MAC des systèmes WiFi intègre la notion d'acquittement des trames de données reçues ainsi que de certaines trames 10 de gestion dans le but de notifier la station émettrice de la bonne réception. Mais le fait d'acquitter chacune de ces trames via une trame de contrôle de type ACK (« Acknowledgment » selon la terminologie anglosaxonne) entraîne une perte d'efficacité. Une trame de contrôle ACK est en particulier spécifiée au paragraphe 9.3.1.4 du standard IEEE 802.11-2016 [3]. 15 Une des évolutions majeures orientées qualité de service du standard IEEE 802.11e a été l'introduction de la notion d'envoi groupé de trames de données lors d'une même session. Cet envoi groupé permet de rentabiliser l'accès au canal en envoyant plusieurs trames de données (soit simultanément via un mécanisme d'agrégation (mode A-MPDU), soit les unes après les autres (mode burst)) et en les acquittant par bloc, MPDU par MPDU, via une trame 20 de contrôle BA (« Block Acknowledgment » selon la terminologie anglosaxonne). Une telle trame de contrôle BA est en particulier spécifiée aux paragraphes 9.3.1.9 [41 et 10.24 [5] du standard IEEE 802.11-2016. Ainsi toutes les MSDU d'une A-MSDU présentes dans une MPDU sont acquittés en une fois, au même titre qu'une MSDU simple portée par une MPDU, le niveau de granularité de l'acquittement est la MPDU. 25 Toutefois, l'utilisation d'un tel acquittement implique l'établissement d'une session par station distante, par direction et par type de trafic (voix, vidéo, best effort, etc.). En outre l'évolution du trafic implique une renégociation ou la destruction de la session. L'identifiant de trafic (TID « Traffic Identifier » selon la terminologie anglosaxonne) fait référence à une classification de trafic qui indique le niveau de priorité relatif du trafic ou 30 des données. Le terme catégorie d'accès fait référence à des données qui peuvent être rangées à la suite (« queued » selon la terminologie anglosaxonne) ou agrégées en fonction du niveau de priorité. Plus précisément, l'identifiant de trafic indique le niveau de priorité des données qui peuvent être mappées sur une catégorie d'accès. Ainsi, les termes TID, catégorie d'accès et 4 niveau de priorité sont considérés comme interchangeables dans la demande. Il y a en outre un lien direct entre type de trafic et catégorie d'accès. Le principe d'acquittement par bloc tel que spécifié par le standard IEEE 802.11-2016 est illustré par la figure 3 qui représente un échange de trames entre deux stations STA1, STA2 5 et qui reprend la figure 10-32 du standard IEEE 802.11-2016 [61 Cet échange comprend : - une phase d'établissement de la session via l'envoi d'une demande d'établissement ADDBA Request (« Add BA » selon la terminologie anglosaxonne), l'acquittement ACK de cette trame, la formulation d'une réponse ADDBA Response et l'acquittement ACK de cette réponse. La demande et la réponse comprennent des paramètres dont certains sont négociés via l'échange 10 ADDBA Request/Response. Les paramètres négociés comprennent la classification du trafic (« TID subfield » selon la terminologie anglosaxonne spécifié en particulier au paragraphe 9.2.4.5.2 [71), la taille du buffer dite taille de la fenêtre d'acquittement (« Buffer size » selon la terminologie anglosaxonne spécifiée en particulier au paragraphe 9.4.1.14 du standard IEEE 802.11-2016 [81), la durée d'un compteur de fin de session (« Block ack timeout value » selon 15 la terminologie anglosaxonne spécifiée en particulier au paragraphe 9.4.1.15 du standard IEEE 802.11-2016 [91), la taille d'une trame de données en entrée de la couche MAC (du fait de l'utilisation ou non de l'agrégation A-MSDU comme spécifié au paragraphe 9.4.1.14 du standard IEEE802.11-2016 [81 ) et le numéro de séquence de la première trame de données comme spécifié au paragraphe 9.6.5.2 du standard IEEE802.11-2016 [101 ; 20 - une phase de transfert de données QoS data intégrant la notion de qualité de service QoS (« Quality of Service » selon la terminologie anglosaxonne) à hauteur de la taille de la fenêtre d'acquittement négociée au préalable (quatre selon l'illustration) pendant la phase d'établissement ponctuée par des trames de contrôle BA ; - une phase, optionnelle, de renégociation de certains paramètres de la session dont la taille de 25 la fenêtre ; - une phase, optionnelle, de destruction explicite de la session via l'envoi d'une demande de destruction DELBA Request (« Delete BA » selon la terminologie anglosaxonne) pouvant être initiée par l'une ou l'autre des stations. En cas d'absence d'une telle phase, une destruction implicite est déclenchée via un minuteur qui fait partie des paramètres négociés. 30 La procédure d'acquittement par bloc améliore l'efficacité de l'accès au canal en diminuant le nombre de trames de contrôle ACK mais elle reste coûteuse en bande passante, comme l'illustre le rapport entre les trames de données utiles (en noir) et les trames de contrôle et de gestion (en gris) sur la figure 3. En outre, elle impose d'effectuer la négociation par station, par direction et par type de trafic (ou par catégorie d'accès) ce qui peut constituer une 5 perte conséquente à l'échelle d'un réseau Wi-Fi, notamment quand le nombre de stations est important ou quand le trafic évolue beaucoup. Art antérieur Il est connu la demande de brevet W02017030723 qui propose : 5 - d'établir par défaut une ou plusieurs sessions lors de l'association de la station et - de profiter de la négociation pour une catégorie d'accès pour monter une session pour une ou plusieurs autres catégories d'accès. Cette proposition a l'avantage d'améliorer l'efficacité quant à l'établissement de la session mais elle présente l'inconvénient majeur de réserver des ressources matérielles non- 10 justifiées notamment lors de l'association au réseau. Ce surdimensionnement impacte les stations Wi-Fi et plus particulièrement le point d'accès du fait qu'elles doivent avoir des files d'attente matérielles (hardware) conséquentes. Ce surdimensionnement pourrait effectivement aboutir à ce que la pré-négociation échoue et donc à ce que les procédures classiques d'acquittement de chaque trame de données soient utilisées malgré tout. 15 Exposé de l'invention La présente invention propose un procédé d'acquittement par bloc, de trames de données comprenant un paramètre de QoS transmises entre une première station sans fil et une deuxième station sans fil, ces deux stations étant associées entre elles. Le procédé comprend une phase d'établissement d'une session comprenant - 20 - la transmission par une des deux stations dite initiatrice, d'une première trame de données comprenant un paramètre de QoS et comprenant en outre des bits de contrôle codant la demande d'établissement de la session, - la réception par l'autre station dite destinataire dans un buffer de réception de la première trame de données transmise, 25 - la transmission par la station destinataire d'une trame d'acquittement de la première trame de données comprenant un paramètre de QoS, cette trame d'acquittement comprenant des bits de contrôle codant une réponse pour accepter ou pas l'établissement de la session. Ainsi, l'exploitation de bits de codage spécifiques insérés dans une trame de données 30 comprenant un paramètre de QoS permet de requérir une demande d'établissement d'une session et de supprimer avantageusement la trame de contrôle ADDBA Request. La trame ADDBA Response et la trame d'acquittement ACK associée sont remplacées par une trame d'acquittement spécifique de la première trame de données. Cette trame d'acquittement est spécifique en ce qu'elle comprend des bits de contrôle codant la réponse de la station 6 destinataire pour accepter ou pas l'établissement de la session. Le codage peut distinguer en particulier entre acceptation, refus et temporisation. La session est donc établie selon l'invention au moyen seulement de l'envoi d'une trame de données et de l'acquittement de cette trame. 5 Selon un mode particulier de réalisation, le procédé est tel que le codage d'une demande d'établissement distingue entre une transmission de trames de données avec agrégation et une transmission de trames de données sans agrégation. Selon un mode particulier de réalisation, le procédé comprend en outre une phase dite de régime établi après acceptation de l'établissement de la session comprenant - 10 - la transmission par la station initiatrice de trames de données comprenant un paramètre de QoS et des bits de contrôle codant des paramètres de la session établie, - la réception par la station destinataire dans un buffer de réception de taille déterminée des trames de données transmises, 15 - la transmission par la station destinataire d'une trame d'acquittement par bloc des trames de données, cette trame d'acquittement par bloc (BA) comprenant des bits de contrôle codant une réponse aux paramètres codés. La renégociation de la session avec acquittement par bloc est adaptative : le procédé profite de l'envoi de trames de données et de leur acquittement pour faire évoluer les 20 paramètres de la session et dimensionner au plus juste les ressources des stations, en particulier la taille du buffer, tout en optimisant l'efficacité de l'échange du fait de la suppression de trames de contrôle et de gestion. Selon un mode particulier de réalisation, le procédé est tel que toute modification de la taille du buffer est demandée par la station initiatrice sous forme incrémentale codée par les 25 bits de contrôle des trames de données transmises. La taille du buffer a une valeur initiale qui peut implicitement être de deux dès la session établie. La demande d'augmentation ou de réduction de la taille codée relativement à la taille courante nécessite avantageusement un nombre très limité de bits. Deux bits suffisent pour coder les trois cas possibles : un maintien de la taille, une augmentation de la taille, une 30 diminution de la taille. Ainsi, une demande d'augmentation ou de réduction de la taille du buffer de réception est codée de manière incrémentale par les bits de contrôle. Toute demande de modification est soumise à l'accord de la station destinataire qui code sa réponse. Ce codage peut distinguer entre une acceptation, un refus d'une augmentation, une temporisation d'une demande de réduction. Si aucune demande de modification n'accompagne la trame de 7 données reçues, la station destinataire peut indiquer dans la trame d'acquittement qu'elle souhaite une réduction de la taille du buffer. Ce souhait peut même être codé dans la trame d'acquittement d'une trame de données reçue comprenant une demande d'augmentation de la taille de la taille du buffer. La station initiatrice prend en compte ce souhait lors de la 5 prochaine trame de données et y insère un codage d'une demande de réduction de la taille du buffer. Selon l'invention la négociation de la taille du buffer permet une montée en charge progressive et une gestion flexible ; la renégociation de la session est adaptative. Elle permet une mise en oeuvre avec n'importe quel type de stations que ce soit celles disposant de peu de 10 mémoire physique dédiée au buffer de réception par bloc que celles disposant de beaucoup de mémoire physique dédiée au buffer de réception par bloc. Selon un mode particulier de réalisation, le procédé est tel que, pour une station donnée, les mêmes bits de contrôle sont utilisés pendant la phase d'établissement et pendant la phase de régime établi. 15 Ce mode a pour avantage de limiter le besoin en bits de contrôle pour la négociation et la renégociation des paramètres de la session pour la station initiatrice et pour l'acquittement des paramètres par la station destinataire Pour la station initiatrice les bits de contrôle sont par exemple insérés dans l'entête MAC des trames de données QoS Data. Pour la station destinataire les bits de contrôle sont par exemple insérés dans l'entête MAC des trames 20 d'acquittement ACK ou d'acquittement par bloc BA. Selon un mode particulier de réalisation, le procédé comprend en outre une phase de clôture de la session qui comprend : - la transmission par la station initiatrice de trames de données comprenant un paramètre de QoS et des bits de contrôle codant des paramètres de la session 25 établie, - la réception dans le buffer de réception par la station destinataire des trames de données transmises, - la transmission par la station destinataire d'une trame d'acquittement par bloc des trames de données, cette trame d'acquittement par bloc comprenant des bits de 30 contrôle codant un souhait de clôture de la session. Selon ce mode, la station destinataire peut à tout moment profiter d'une trame d'acquittement par bloc pour indiquer qu'elle souhaite une clôture de la session. Par exemple, si jamais la station destinataire n'a pas suffisamment de mémoire pour gérer une session best effort en cours et une demande d'ouverture de session d'un trafic plus prioritaire (e.g. Video), 8 elle peut temporiser cette dernière le temps de demander une clôture de la première session. La station peut ainsi adapter au plus près ses ressources aux besoins. Selon un mode particulier de réalisation, le procédé est tel que la station initiatrice informe la station destinataire de la clôture de la session au moyen des bits de contrôle d'une 5 trame de données. La station initiatrice clôture la session soit conformément à un souhait de la station destinataire, soit parce que le trafic destiné à la station destinataire ne justifie plus le maintien de ressources. Selon ce mode, dès réception des bits de contrôle la station destinataire peut relâcher ses capacités mémoire, buffer de réception, au profit par exemple d'une autre session. 10 En outre, l'invention a pour objet une station Wi-Fi d'un ensemble de service de base comprenant - un moyen pour émettre des trames de données comprenant un paramètre de QoS et comprenant en outre des bits de contrôle codant une demande d'établissement d'une session avec une autre station Wi-Fi avec laquelle elle est associée, codant 15 une négociation de paramètres de la session établie ou codant une clôture d'une session établie, - un moyen pour recevoir une trame d'acquittement ou une trame d'acquittement par bloc des trames de données transmises comprenant un paramètre de QoS, ces trames d'acquittement comprenant des bits de contrôle codant une réponse pour 20 accepter ou pas l'établissement de la session, pour négocier les paramètres de la session établie ou pour demander une clôture d'une session, - un processeur pour configurer les bits de contrôle compris dans les trames de données en fonction de données d'entrée à transmettre vers l'autre station et en fonction des paramètres négociés. 25 L'invention a en outre pour objet une station Wi-Fi d'un ensemble de service de base comprenant - un moyen pour recevoir des trames de données provenant d'une autre station avec laquelle elle est associée, ces trames comprenant un paramètre de QoS et comprenant en outre des bits de contrôle codant une demande d'établissement 30 d'une session, codant une négociation de paramètres de la session établie ou codant une clôture de la session, - un moyen pour émettre une trame d'acquittement ou une trame d'acquittement par bloc des trames de données reçues comprenant un paramètre de QoS, ces trames d'acquittement comprenant des bits de contrôle codant une réponse pour 9 accepter ou pas l'établissement de la session, codant une négociation de paramètres de la session établie ou codant un souhait de clôture d'une session établie, un processeur pour configurer les bits de contrôle compris dans les trames 5 d'acquittement en fonction de capacités de la station et en fonction des paramètres négociés. On entend par station aussi bien un point d'accès qu'un terminal client, un terminal client étant tout dispositif apte à communiquer avec un point d'accès Wi-Fi, tel un ordinateur portable, un dispositif du type PDA (pour « Personnal Digital Assistant »), un Smart Phone, 10 etc. Liste des figures D'autres caractéristiques et avantages de l'invention apparaîtront lors de la description qui suit faite en regard des figures annexées données à titre d'exemple non limitatif La figure 1 illustre un système radio sans fil à au moins deux stations, un point d'accès 15 et une station cliente. La figure 2 est un schéma d'une trame physique PPDU au niveau de la couche physique. La figure 3 est un schéma des échanges de messages pour un procédé d'acquittement par bloc selon l'art antérieur. 20 La figure 4 est un schéma des échanges de messages pour un procédé d'acquittement par bloc selon l'invention. La figure 5 est un schéma de la structure simplifiée d'une station Wi-Fi selon l'invention. Description d'un mode de réalisation de l'invention 25 Un point d'accès Wi-Fi comprend différents paramètres dont un qui permet d'identifier une cellule Wi-Fi, ce paramètre est connu de l'homme du métier sous l'abréviation SSID (pour « Service Set Identifier »). Chaque cellule se différencie par son SSID et défini un point d'accès au sens de l'invention. En fonctionnement, un point d'accès diffuse régulièrement une trame balise radio pour 30 manifester sa présence, cette trame est connue de l'homme du métier sous l'abréviation « Beacon ». Cette trame contient le SSID paramétré pour le point d'accès. Lorsqu'une station veut établir une communication via un point d'accès Wi-Fi, elle doit dans une première étape découvrir un tel point d'accès. Cette découverte s'effectue soit par une écoute passive en balayant la bande radio pour détecter la présence de « Beacon » et 10 donc d'une passerelle avec point d'accès à proximité, soit par une recherche active en sondant les canaux de la bande radio par l'émission d'une trame « Probe Request ». Dans le premier cas, la station peut ultérieurement émettre une requête « Probe Request » adressée au point d'accès détecté en utilisant le SSID de ce point d'accès pour obtenir des informations 5 complémentaires non diffusées dans la balise « Beacon ». Le point d'accès SSID répond par une trame « Probe Response » en indiquant les capacités de transmission de la passerelle compte tenu en particulier du nombre d'utilisateurs déjà connectés à la passerelle. Dans le second cas, le point d'accès, s'il existe, répond par une trame « Probe Response ». Dans une deuxième étape, la station et le point d'accès effectuent généralement une 10 identification mutuelle. Une étape d'association est ensuite nécessaire pour que la station puisse envoyer des données via le point d'accès, typiquement vers un destinataire distant. La mise en oeuvre d'un procédé d'acquittement par bloc selon l'invention nécessite que les deux stations qui vont communiquer entre elles soient déjà associées entre elles. Selon 15 un mode de réalisation, une des deux stations est un point d'accès, l'autre station est un terminal client. Cette autre station fait partie d'un ensemble BSS associé au point d'accès. Selon un autre mode de réalisation, les deux stations sont configurées en mode AdHoc donc sans point d'accès. Le procédé selon l'invention est décrit à l'appui de la figure 4 qui est un schéma 20 d'échanges de messages pour illustrer le déroulement d'un procédé selon l'invention. S'agissant d'un procédé d'acquittement par bloc, les données sont transmises dans des trames qui comprennent un paramètre de QoS, trames dites QoS Data. La station STA1 est par exemple un point d'accès auquel est associée la station STA2. A l'issue de l'association, les deux stations sont en mesure de pouvoir échanger des données. 25 Eventuellement, un compteur de fin (« timer ») est négocié au cours de l'association. Au cours de cette négociation, la station STA2 peut communiquer son compteur (ou ses compteurs si cette station a un compteur par catégorie d'accès) dans la trame de demande d'association (« Association Request »). Le point d'accès STA1 peut communiquer son compteur (ou ses compteurs) dédié à cette station STA2 dans la trame de réponse (« Association Response »). 30 La station qui initie la session dite station initiatrice, STA1 selon l'illustration, profite de l'envoi d'une trame de données QoS Data pour demander l'établissement de la session au moyen de bits de contrôle b1, bo insérés dans cette trame. La station initiatrice s'appuie sur le fait que la catégorie d'accès est celle de la trame de donnée QoS Data et qu'elle peut notifier certains paramètres (dont l'utilisation d'A-MSDU) au moyen des bits de contrôle. 11 La station de destination dite destinatrice, STA2 selon l'illustration, peut accepter directement sa demande d'établissement en profitant de l'envoi de la trame d'acquittement ACK. Cette trame d'acquittement ACK comprend des bits de contrôle b;, b i) qui codent la réponse de la station destinatrice à la demande d'établissement. Si la station destinatrice 5 n'accepte pas la demande, elle peut refuser directement ou temporiser pour se laisser le temps de répondre. Selon un exemple de mise en oeuvre illustré par le tableau 1 en Annexe A, les bits de contrôle sont au nombre de deux pour la phase d'établissement. Le tableau 1 donne un exemple de codage des requêtes de la station initiatrice insérées dans la trame de données QoS 10 Data et des réponses de la station destinatrice insérées dans la trame d'acquittement ACK. Selon cet exemple, côté station initiatrice la valeur (1,0) des bits (b1, bo) correspond à une demande d'établissement d'une session sans agrégation de paquets MSDU. La valeur (1,1) des bits (b1, b0) correspond à une demande d'établissement d'une session avec agrégation de paquets MSDU, dite A-MSDU. 15 Côté station destinatrice, la valeur (0,0) des bits (b;, b) correspond à une temporisation en réponse à une demande d'établissement de session ou à une réponse par défaut si aucune modification n'est demandée. La valeur (0,1) des bits (b;, b) correspond à un refus immédiat. La valeur (1,0) des bits (b;, b) correspond à une acceptation immédiate de la demande d'établissement. La valeur (1,1) des bits (b;, b) correspond à un refus pour 20 cause de configuration non compatible. Par exemple, la station destinatrice peut ne pas accepter une agrégation de type A-MSDU. Dans ce cas, si la station destinatrice reçoit des bits de commande avec la valeur (1,1), elle refuse en positionnant en réponse les bits de commande à la valeur (1,1), signalant par là-même que la configuration demandée n'est pas compatible. 25 Lorsque la station initiatrice reçoit l'acquittement avec des bits codant l'acceptation, la session est établie entre les deux stations. La phase qui suit est dite de régime établi. Pendant cette phase, la taille de la fenêtre d'acquittement par bloc peut faire l'objet d'une (re-)négociation. Ainsi, la station initiatrice peut requérir une augmentation ou une diminution progressive de la taille de la fenêtre 30 d'acquittement par bloc pour adresser tout type de stations (aussi bien celles disposant de peu de mémoire physique dédiée à la gestion des fenêtres d'acquittement par bloc que celles disposant de beaucoup de mémoire physique dédiée). Pour permettre une montée en charge progressive et une gestion flexible, les (re)-négociations ultérieures se font en doublant (ou 12 divisant de moitié) la taille de la fenêtre d'acquittement par bloc sachant que la station initiatrice peut clôturer à tout moment la session. Pour une meilleure adaptabilité, la station destinatrice peut informer la station initiatrice qu'elle souhaite une réduction de la fenêtre d'acquittement par bloc en cours de 5 session. La station destinatrice peut en outre informer la station initiatrice qu'elle souhaite une clôture de la session. La station qui a initié la session doit alors envoyer la commande correspondante (réduction de la fenêtre ou clôture de la session) qui est acquittée par la station destinatrice. Pour s'assurer que ces informations ont bien été reçues, toutes les trames de données 10 d'un même envoi groupé doivent contenir les mêmes informations quant à la gestion de la fenêtre d'acquittement par bloc. En outre, l'absence de réception de réponse claire (à l'exclusion des temporisations) entraîne une répétition de la requête dans le but de rendre le mécanisme robuste aux erreurs et aux collisions. Selon un exemple de mise en oeuvre illustré par le tableau 2 en Annexe A, les bits de 15 contrôle sont au nombre de deux pour la phase de régime établi. Le tableau 2 donne un exemple de codage des requêtes de la station initiatrice insérées dans la trame de données QoS Data et des réponses de la station destinatrice insérées dans la trame d'acquittement par bloc BA. Selon cet exemple, côté station initiatrice la valeur (1,0) des bits (b1, bo) correspond à 20 une demande d'augmentation de la fenêtre d'acquittement. La valeur (0,1) des bits (b1, bo) correspond à une demande de réduction de la fenêtre d'acquittement. La valeur (0,0) des bits (b1, bo) correspond à une trame de données QoS Data sans aucune demande de changement. La valeur (1,1) des bits (b1, bo) correspond à une clôture de la session par la station initiatrice. Côté station destinatrice, la valeur (0,0) des bits (b;, b) correspond à un souhait que 25 la fenêtre d'acquittement par bloc soit réduite. La valeur (0,1) des bits (b;, b) correspond à un refus en réponse à une demande d'augmentation ou à une temporisation en réponse à une demande de réduction. La valeur (1,0) des bits (b;, b) correspond à une acceptation d'une demande de modification ou d'une demande de poursuite sans changement. La valeur (1,1) des bits (b;, b) correspond à un souhait de clôture de la session. 30 Côté station initiatrice, les bits de contrôle (b1, bo) sont insérés par exemple dans l'entête MAC de la trame de données QoS Data. Côté station destinatrice, les bits de contrôle (b;, b) sont insérés par exemple dans l'entête MAC de la trame d'acquittement ACK ou la trame d'acquittement par bloc BA. 13 Selon l'illustration en figure 4 d'un exemple de mise en oeuvre du procédé selon l'invention, la demande d'établissement de session intervient avec une seule trame de données QoS Data (QoS Data avec (1,0) ou (1,1)). Une fois la session établie (réception du ACK avec (1,0)), la taille de la fenêtre d'acquittement est considérée par défaut de deux. Il y a ainsi un 5 envoi groupé de deux trames de données QoS Data avec une demande d'augmentation de cette fenêtre (QoS Data avec (1,0)). La demande d'augmentation est interprétée comme une demande de doublement de la valeur précédente, soit 2 x 2 = 4. Après réception de l'accord (BA avec (1,0)), il y a un envoi groupé de quatre trames de données QoS Data sans demande de modification (QoS Data avec (0,0)). Après réception de l'accord (BA avec (1,0)), il y a un 10 envoi groupé de quatre trames de données QoS Data avec une demande de diminution de cette fenêtre (QoS Data avec (0,1)). La demande de diminution est interprétée comme une demande de division par deux de la valeur précédente, soit 4/2 = 2. Après réception de l'accord (BA avec (1,0)), il y a un envoi groupé de deux trames de données QoS Data avec une demande de clôture de la session (QoS Data avec (1,1)). Après réception de l'accord (BA avec (1,0)), la 15 session est clôturée par la station initiatrice. Pour maintenir une synchronisation quant à la taille de la fenêtre d'acquittement par bloc au niveau des deux stations, les mécanismes suivant peuvent être mis en place. En ce qui concerne l'augmentation de la fenêtre : - côté station initiatrice, la taille est augmentée uniquement s'il y a eu une bonne 20 réception de l'acquittement (ACK avec (1,0)) ou de l'acquittement par bloc en réponse à la trame de demande d'augmentation ( BA avec (1,0)), - côté station destinatrice, la taille est augmentée uniquement en cas de bonne réception de la trame de demande (QoS Data avec (1,0)), tout en s'assurant que celle-ci n'est pas une trame dupliquée (cas de non réception de l'acquittement 25 précédent). Lors de la phase d'établissement, la réception de trames dupliquées ne portant plus de demande d'établissement doit conduire la station destinatrice à relâcher les ressources réservées. Par exemple, les ressources ont été réservées par la station destinatrice parce que cette dernière a reçu une trame de données (QoS Data avec (1,0) ou (1,1)) avec un numéro de 30 séquence N et l'a acquittée. Mais la station initiatrice n'ayant pas reçu l'acquittement ACK a renvoyé la trame N. Si entretemps la nécessité de monter une session d'acquittement a disparu (si par exemple les trames dans la file d'attente sont arrivées à expiration) alors la trame N peut être renvoyée avec les bits (b1, bo) positionnés à (0,0). La trame N doit être jetée et la station destinatrice qui avait réservé son buffer doit le libérer. 14 En ce qui concerne la réduction de la fenêtre : - côté station initiatrice, la taille est diminuée lors de l'envoi de la demande de réduction (QoS Data avec (0,1)), sauf pour les cas de répétition de trame (cas de non réception de l'acquittement associé), 5 - côté station destinatrice, la taille est diminuée lors de l'acceptation de la demande de réduction (BA avec (1,0)), tout en s'assurant que celle-ci n'est pas une trame dupliquée (cas de non réception de l'acquittement précédent). Les modes décrits précédemment considèrent deux bits de contrôle pour chacune des stations. D'autres modes peuvent être mis en oeuvre en utilisant plus de bits. Ceci permet de 10 négocier plus de paramètres mais au détriment d'une augmentation de l'entête. Une mise en oeuvre peut être envisagée avec un seul bit mais dans ce cas la flexibilité du procédé est nettement réduite. Pour ce qui est de la clôture implicite de session, elle se fait sur expiration du compteur de fin géré par chaque station. Ce compteur de fin est réinitialisé lors de l'envoi/réception de 15 trames de la même catégorie d'accès pour un couple émetteur-récepteur. La structure simplifiée d'une station mettant en oeuvre un procédé d'acquittement par bloc selon un des modes de réalisation décrits ci-dessus est décrite ci-après et illustrée par la figure 5. Une telle station STA comprend une mémoire MEiVI comprenant une mémoire 20 tampon, une unité de traitement 1.1P équipée par exemple d'un microprocesseur et pilotée par un programme d'ordinateur Pg pour mettre en oeuvre un procédé d'acquittement par bloc selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur Pg sont par exemple chargées dans une mémoire rapide avant d'être exécutées par le processeur de l'unité 25 de traitement 1.1P . Lorsque la station STA est la station initiatrice de la session, l'unité de traitement 1.1P reçoit en entrée des trames d'acquittement ACK, BA émises par une station distante dite destinatrice via un canal Wi-Fi et une puce Wi-Fi WI-FI CHIP et envoie des trames de données QoS Data à cette station. 30 Lorsque la station STA est la station destinatrice de la session, l'unité de traitement 1.1P reçoit en entrée des trames de données QoS Data émises par une station distante dite initiatrice via un canal Wi-Fi et une puce Wi-Fi WI-FI CHIP et envoie des trames d'acquittement ACK, BA à cette station. Le microprocesseur de l'unité de traitement 1.1P met en oeuvre un procédé 15 d'acquittement par bloc décrit précédemment, selon les instructions du programme d'ordinateur Pg. A cette fin, lorsque la station STA est la station initiatrice de la session, le microprocesseur jtP configure les bits de contrôle en fonction de données d'entrée Data à 5 transmettre vers l'autre station et en fonction de paramètres négociés avec la station destinatrice. Lorsque la station STA est la station destinatrice de la session, le microprocesseur jtP configure les bits de contrôle en fonction des capacités de cette station et en fonction de paramètres négociés avec la station initiatrice. Selon une implémentation préférée, les étapes du procédé d'acquittement par bloc 10 selon l'invention sont déterminées par les instructions d'un programme incorporé dans un circuit électronique telle une puce elle-même pouvant être disposée dans un dispositif électronique tel un point d'accès ou une station cliente. Le procédé d'acquittement par bloc, selon l'invention peut tout aussi bien être mis en oeuvre lorsque ce programme (ou ses modules) est chargé dans un organe de calcul tel un processeur ou équivalent dont le 15 fonctionnement est alors commandé par l'exécution du programme. En conséquence, l'invention s'applique également à un programme d'ordinateur (ou ses différents modules), notamment un programme d'ordinateur sur ou dans un support d'informations, adapté à mettre en oeuvre l'invention. Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code 20 intermédiaire entre code source et code objet tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable pour implémenter un procédé selon l'invention. Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel 25 qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette (floppy disc) ou un disque dur. Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans 30 l'exécution du procédé en question. D'autre part, le programme peut être traduit en une forme transmissible telle qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet. 1111 IEEE 802.11-2016 paragraphe 9.2.3 General frame format 1121 IEEE 802.11-2016 paragraphe 9.2.4.3 Address fields 1131 IEEE 802.11-2016 paragraphe 9.3.1.4 Ack frame format 5 1141 IEEE 802.11-2016 paragraphe 9.3.1.9 Block Ack frame format 1151 IEEE 802.11-2016 paragraphe 10.24 Block acknowledgment (block ack) 1161 IEEE 802.11-2016 figure 10-32 1171 IEEE 802.11-2016 paragraphe 9.2.4.5.2 TID subfield 1181 IEEE 802.11-2016 paragraphe 9.4.1.14 Block Ack Parameter Set field 10 1191 IEEE 802.11-2016 paragraphe 9.4.1.15 Block Ack Timeout Value field 11101 IEEE 802.11-2016 paragraphe 9.6.5.2 ADDBA Request frame format Annexe A Côté station initiatrice Côté station destinataire Phase ID, 1:10 Interprétation b', b'0 Interprétation Etablissement 0 0 Ne rien faire 0 0 Ne rien faire / Temporiser la , 0 1 Réservé 0 1 1 reponse 1 0 Initier sans A-MSDU 1 0 Refuser la demande actuelle Accepter la demande Refuser car configuration non compatible 1 1 Initier avec A-MSDU 1 15 Tableau 1 Côté station initiatrice Côté station destinataire Phase ID, 1:10 Interprétation b', b'0 Interprétation Régime établi 0 0 0 Continuer ainsi 0 0 0 1 Demande de réduction Refuser la modification si augmentation / Temporiser si 1 1 Réduire la fenêtre (diviser par 2 ) 1 0 réduction 1 0 Augmenter la fenêtre (doubler) Clore la session 1 1 Accepter la modification / REVENDICATIONS1. Procédé (1) d'acquittement par bloc, de trames de données comprenant un paramètre de QoS transmises entre une première station (STA1) sans fil et une deuxième station (STA2) sans fil, ces deux stations étant associées entre elles, caractérisé en ce qu'il comprend une phase d'établissement d'une session comprenant : - la transmission par une (STA1) des deux stations dite initiatrice, d'une première trame (QoS Data) de données comprenant un paramètre de QoS et comprenant en outre des bits de contrôle ((b1, b0)) codant la demande d'établissement de la session, - la réception par l'autre station (STA2) dite destinataire dans un buffer de réception de la première trame (QoS Data) de données transmise, - la transmission par la station destinataire (STA2) d'une trame (ACK) d'acquittement de la première trame (QoS Data) de données comprenant un paramètre de QoS, cette trame d'acquittement (ACK) comprenant des bits de contrôle ((bi, b(;)) codant une réponse pour accepter ou pas l'établissement de la session. 2. Procédé d'acquittement par bloc selon la revendication 1, selon lequel le codage d'une demande d'établissement distingue entre une transmission de trames de données avec agrégation (AMSDU) et une transmission de trames de données sans agrégation. 3. Procédé d'acquittement par bloc de trames de données selon l'une des revendications 1 et 2, le procédé comprenant en outre une phase dite de régime établi après acceptation de l'établissement de la session comprenant : la transmission par la station initiatrice de trames de données comprenant un paramètre de QoS et des bits de contrôle codant des paramètres de la session établie, la réception par la station destinataire dans un buffer de réception de taille déterminée des trames de données transmises, la transmission par la station destinataire d'une trame d'acquittement par bloc des trames de données, cette trame d'acquittement par bloc (BA) comprenant des bits de contrôle codant une réponse aux paramètres codés. 4. Procédé d'acquittement par bloc de trames de données selon la revendication 3, selon lequel toute modification de la taille du buffer est demandée par la station initiatrice sous forme incrémentale codée par les bits de contrôle des trames de données transmises. 5. Procédé d'acquittement par bloc de trames de données selon l'une des revendications 3 et 4 selon lequel, pour une station donnée, les mêmes bits de contrôle sont utilisés pendant la phase d'établissement et pendant la phase de régime établi. 18 6. Procédé d'acquittement par bloc de trames de données selon l'une des revendications 1 à 5, comprenant en outre une phase de clôture de la session qui comprend : la transmission par la station initiatrice de trames de données comprenant un paramètre de QoS et des bits de contrôle codant des paramètres de la session établie, 5 la réception dans le buffer de réception par la station destinataire des trames de données transmises, la transmission par la station destinataire d'une trame d'acquittement par bloc des trames de données, cette trame d'acquittement par bloc (BA) comprenant des bits de contrôle codant un souhait de clôture de la session. 10 7. Procédé d'acquittement par bloc de trames de données selon l'une des revendications précédentes, selon lequel la station initiatrice informe la station destinataire de la clôture de la session au moyen des bits de contrôle d'une trame de données. 8. Programme d'ordinateur comportant des instructions pour la mise en oeuvre d'un procédé selon l'une quelconque des revendications 1 à 7 lorsque ce programme est exécuté par un processeur 15 d'une station Wi-Fi. 9. Support d'informations comportant des instructions de programme adaptées à la mise en oeuvre d'un procédé selon l'une quelconque des revendications 1 à 7, lorsque ledit programme est chargé et exécuté par au moins une station Wi-Fi. 10. Station Wi-Fi (STA, STA1) d'un ensemble de service de base (BSS) comprenant : 20 un moyen (Wi-Fi CHIP) pour émettre des trames de données (QoS Data) comprenant un paramètre de QoS et comprenant en outre des bits de contrôle (b1, bo) codant une demande d'établissement d'une session avec une autre station Wi-Fi avec laquelle elle est associée, codant une négociation de paramètres de la session établie ou codant une clôture d'une session, 25 un moyen (Wi-Fi CHIP) pour recevoir une trame d'acquittement ou une trame d'acquittement par bloc des trames de données transmises comprenant un paramètre de QoS, ces trames d'acquittement (ACK, BA) comprenant des bits de contrôle (bi,b(;) codant une réponse pour accepter ou pas l'établissement de la session, pour négocier les paramètres de la session établie ou pour demander une clôture d'une 30 session, caractérisée en ce qu'elle comprend en outre : un processeur (1.1P) pour configurer les bits de contrôle (b1, bo) compris dans les trames de données (QoS Data) en fonction de données (Data) d'entrée à transmettre vers l'autre station et en fonction des paramètres négociés. 19 11. Station Wi-Fi (STA, STA2) d'un ensemble de service de base (BSS) comprenant : un moyen (Wi-Fi CHIP) pour recevoir des trames de données (QoS Data) provenant d'une autre station avec laquelle elle est associée, ces trames comprenant un paramètre de QoS et comprenant en outre des bits de contrôle (b1, bo) codant une 5 demande d'établissement d'une session, codant une négociation de paramètres de la session établie ou codant une clôture de la session, un moyen (Wi-Fi CHIP) pour émettre une trame d'acquittement ou une trame d'acquittement par bloc des trames de données reçues comprenant un paramètre de QoS, ces trames d'acquittement (ACK, BA) comprenant des bits de contrôle (bi,b(;) 10 codant une réponse pour accepter ou pas l'établissement de la session, codant une négociation de paramètres de la session établie ou codant un souhait de clôture d'une session établie, caractérisée en ce qu'elle comprend en outre : un processeur (1.1P) pour configurer les bits de contrôle (bi, b(;) compris dans les 15 trames d'acquittement (ACK, BA) en fonction de capacités de la station et en fonction des paramètres négociés.