Brevet FR3073109A1 — publié le 20190503

L'invention concerne un procédé de communication, exécuté dans un réseau sans fil à grande portée et permettant une faible consommation d'énergie, un dispositif et un système mettant en oeuvre le procédé. L'Internet se transforme progressivement en un réseau étendu, appelé « Internet des objets », reliant toutes sortes d'objets devenus connectables. De nouveaux besoins en termes de réseaux sont alors apparus, et notamment des besoins en réseaux sans fil ayant une plus grande couverture que des réseaux cellulaires classiques et permettant de limiter une consommation d'énergie des équipements connectés. Parmi ces réseaux sans fil à grande portée et permettant une faible consommation d'énergie (« Low Power Wide Area Network (LPWAN) » en terminologie anglo-saxonne), on peut citer des réseaux basés sur la technologie LoRa (marque déposée) («Long Range » en terminologie anglo-saxonne). La technologie LoRa opère sur des bandes de fréquences connues sous l'appellation « Bande ISM» (Industrie, Science et Médical) comprenant des bandes de fréquences pouvant être utilisées librement pour des applications industrielles, scientifiques et médicales. La technologie LoRa est basée sur une technologie d'étalement de spectre permettant d'obtenir des communications bas débit ayant une bonne robustesse dans une bande ISM particulièrement bruitée. Un réseau basé sur la technologie LoRa (appelé « réseau LoRa » par la suite) utilise un protocole appelé LoRaWAN. Un réseau LoRa est composé de stations de base ou passerelles (« gateways » en terminologie anglo-saxonne) généralement placées sur des points hauts afin de couvrir une grande zone géographique. Les passerelles sont aptes à détecter des messages émis dans leur zone par des équipements ou terminaux (« endpoints » en terminologie anglo-saxonne) et de les remonter vers au moins un serveur (« LoRa Network Server (LNS) » en terminologie anglo-saxonne) qui les traitera. Dans un fonctionnement classique d'un réseau LoRa, un terminal désirant transmettre un message (i.e. des données) au serveur, transmet ce message dans une trame, dite trame montante, conforme au protocole LoRaWAN. La trame montante est transmise en mode multidiffusion (« broadcast » en terminologie anglo-saxonne). Cette trame montante est reçue par au moins une passerelle. Chaque passerelle ayant reçu la trame la décode et retransmet le message au serveur dans une requête HTTP (protocole de transfert hypertext, « HyperText Transfer Protocol » en terminologie anglo-saxonne). Si plusieurs passerelles ont reçu la trame, le serveur reçoit plusieurs requêtes HTTP contenant le message. Le serveur doit alors désigner parmi les 5 passerelles ayant reçu la trame montante, la passerelle à utiliser pour relayer une réponse au message contenu dans la trame montante. La réponse est transmise du serveur à la passerelle désignée dans une requête HTTP, puis en point à point, de la passerelle désignée au terminal dans une trame descendante conforme au protocole LoRaWAN. Dans une majorité d'implémentations des réseaux LoRa, la passerelle 10 désignée est celle offrant la qualité de transmission la meilleure avec le terminal ayant émis la trame montante. Un inconvénient de ces implémentations est que le relai des réponses à des trames montantes entre le serveur et les terminaux est souvent assuré par les mêmes passerelles ce qui peut provoquer des engorgements de la voie descendante de ces passerelles. 15 Une autre particularité des réseaux LoRa est que les passerelles sont des équipements fonctionnant selon un mode alternat ou semi-duplex (« half duplex » en terminologie anglo-saxonne). Par conséquent, une passerelle ne peut émettre et recevoir des données de terminaux simultanément. En effet, les passerelles LoRa ont des niveaux d'émission très élevés, de l'ordre de +27 dBm, par rapport à leur niveau 20 de réception qui peut être de l'ordre de -140 dBm. Une telle différence entre les niveaux d'émission et de réception implique qu'une émission d'un message gênerait considérablement une réception simultanée d'un message, bien que les émissions et réceptions utilisent deux bandes de fréquences différentes. Cette contrainte d'utiliser des passerelles fonctionnant en mode semi-duplex nuit fortement aux performances 25 des réseaux LoRa. Une solution possible consisterait à diviser les passerelles en une partie émission et une partie réception et à séparer géographiquement ces deux parties. Cette solution qui permettrait aux passerelles ainsi agencées d'émettre et recevoir simultanément (les passerelles deviendraient ainsi des équipements fonctionnant en mode duplex complet, « full duplex » en terminologie anglo-saxonne) pose un 30 problème de synchronisation entre les deux parties. En effet, une passerelle désignée par un serveur pour relayer une réponse à un message qu'elle a reçu doit transmettre la réponse à un instant fixé par le serveur. Cet instant est calculé par le serveur en ajoutant une durée prédéfinie à un instant de réception de la trame montante contenant le message par ladite passerelle. Mais l'instant d'émission est calculé dans une base 3 temporelle de la partie réception de la passerelle qui, sans synchronisation entre la partie émission et la partie réception de la passerelle, n'est pas connue de la partie émission. Il est courant de solutionner des problèmes de synchronisation entre des équipements distants en insérant dans chaque équipement un module de 5 synchronisation sur une horloge commune tel qu'un module GPS (système de positionnement global, « Global Positioning System » en terminologie anglo-saxonne). Toutefois, insérer un module GPS dans chaque passerelle augmenterait à la fois le coût et la complexité des réseaux. Il est souhaitable de pallier ces inconvénients de l'état de la technique. Il est 10 notamment souhaitable de proposer une méthode qui permette à un réseau LoRa ne comportant que des passerelles fonctionnant en mode semi-duplex d'offrir une fonctionnalité duplex complet, la fonctionnalité duplex complet étant obtenue sans insertion d'un module de synchronisation sur une horloge commune dans chaque passerelle. De plus, il serait souhaitable que cette méthode permette d'éviter que le 15 relai des réponses aux messages des terminaux sollicite toujours les mêmes passerelles. Il est par ailleurs souhaitable de proposer une méthode qui soit simple à mettre en oeuvre et à faible coût. Selon un premier aspect de la présente invention, la présente invention concerne 20 un procédé de communication, exécuté dans un réseau sans fil à grande portée et permettant une faible consommation d'énergie dans lequel des terminaux communiquent avec un serveur par l'intermédiaire de passerelles d'un ensemble de passerelles selon une technologie de communication impliquant que lorsque le serveur reçoit un message d'un terminal via une première passerelle, il fixe un instant auquel 25 une passerelle doit relayer une réponse audit message en fonction d'un instant de réception dudit message par ladite première passerelle, chaque passerelle étant associée avec un ensemble de terminaux comprenant au moins un terminal utilisant ladite passerelle pour communiquer avec le serveur. Le procédé mis en oeuvre par le serveur comprend : recevoir une requête en provenance d'une première passerelle 30 contenant un message émis dans une trame, dite trame montante, par un terminal, dit terminal émetteur ; déterminer une seconde passerelle différente de la première passerelle à utiliser pour relayer une réponse audit message destinée au terminal émetteur, la seconde passerelle étant déterminée dans un sous-ensemble de passerelles de l'ensemble de passerelles comprenant la première passerelle et au moins une seconde passerelle, chaque passerelle du sous-ensemble étant capable de relayer vers un terminal une réponse à un message transmis dans une trame montante par ledit terminal reçue par n'importe quelle autre passerelle dudit sous-ensemble, les passerelles du sous-ensemble ayant au moins un terminal associé en commun et étant 5 associées avec le terminal émetteur; ; transmettre une requête contenant ladite réponse à la seconde passerelle, ladite réponse étant retransmise par la seconde passerelle audit terminal émetteur dans une trame, dite trame descendante, à un instant indiqué dans la requête, ledit instant étant indiqué dans une référence temporelle de la première passerelle, la deuxième passerelle prenant en compte un écart d'horloge entre la 10 première et la seconde passerelles pour transmettre la trame descendante audit instant. Selon un mode de réalisation, la technologie de communication est la technologie LoRa et chaque trame échangée entre une passerelle et un terminal est conforme au protocole LoRaWAN. Selon un mode de réalisation, l'ensemble de passerelles comprend une pluralité 15 de sous-ensembles de passerelles, chaque sous-ensemble étant formé par un opérateur à partir de passerelles pouvant se suppléer entre elles pour relayer une réponse dans une trame descendante à un message reçu dans une trame montante par l'une d'entre elles ou par une procédure adaptative de formation des sous-ensembles exécutée périodiquement sous le contrôle du serveur avec une période prédéfinie. 20 Selon un mode de réalisation, le serveur transmet à chaque passerelle comprise dans un sous-ensemble des caractéristiques dudit sous-ensemble comprenant un identifiant pour chaque passerelle comprise dans ledit sous-ensemble et un identifiant pour chaque terminal associé en commun entre les passerelles du sous-ensemble. Selon un mode de réalisation, la procédure adaptative de formation des sous- 25 ensembles comprend : classer les passerelles de l'ensemble de passerelles par ordre décroissant d'un nombre de trames descendantes que chaque passerelle a émises pendant la dernière période prédéfinie ou par ordre décroissant d'un nombre de trames montantes que chaque passerelle a reçues pendant la dernière période prédéfinie ; parcourir les passerelles ainsi classées dans leur ordre de classement et pour chaque 30 passerelle, classer chaque terminal associé avec ladite passerelle par ordre décroissant d'un nombre de trames montantes reçues dudit terminal par ladite passerelle pendant la dernière période prédéfinie ; parcourir les passerelles dans leur ordre de classement et pour chaque passerelle, définir un sous-ensemble de passerelles à partir de ladite passerelle, ladite passerelle, dite passerelle de base, appartenant audit sous-ensemble, la définition du sous-ensemble comprenant : tant qu'un nombre de terminaux dans un premier ensemble de terminaux associés au sous-ensemble de passerelles en cours de définition est supérieur à un pourcentage prédéfini d'un nombre de terminaux d'un deuxième ensemble de terminaux associés à la passerelle de base : identifier parmi les 5 passerelles ainsi classées n'ayant pas encore été insérées dans le sous-ensemble, une passerelle ayant le plus de terminaux en commun avec la passerelle de base ; insérer la passerelle ainsi identifiée dans le sous-ensemble ; et, former le premier ensemble de terminaux comme une intersection entre le deuxième ensemble de terminaux et chaque ensemble de terminaux associé avec une passerelle insérée dans le sous- 10 ensemble ; et, supprimer chaque terminal compris dans le premier ensemble de terminaux des ensembles de terminaux associés aux passerelles ainsi classées. Selon un mode de réalisation, lorsque les passerelles sont classées par ordre décroissant du nombre de trames descendantes que chaque passerelle a émises pendant la dernière période prédéfinie, seules les passerelles qui ont émis au moins un 15 nombre prédéterminé de trames descendantes pendant la dernière période prédéfinie sont classées, et lorsque les passerelles sont classées par ordre décroissant du nombre de trames montantes que chaque passerelle a reçues pendant la dernière période prédéfinie, seules les passerelles qui ont reçu au moins un nombre prédéterminé de trames montantes pendant la dernière période prédéfinie sont classées. 20 Selon un mode de réalisation, lorsqu'une passerelle a été insérée dans un sous- ensemble formé à partir d'une passerelle de base, cette passerelle ne peut plus être insérée dans un sous-ensemble formé à partir de toutes autres passerelles de base. Selon un mode de réalisation, la procédure adaptative de formation des sous-ensembles s'arrête lorsque toutes les passerelles classées ont été insérées dans un 25 sous-ensemble ou lorsque tous les terminaux du réseau sont compris dans un ensemble de terminaux associé à un sous-ensemble. Selon un mode de réalisation, l'écart d'horloge existant entre deux passerelles est déterminé par une procédure de synchronisation, la procédure de synchronisation étant exécutée par l'une des deux passerelles, dite passerelle initiatrice, en 30 collaboration avec l'autre passerelle, dite passerelle collaboratrice et comprenant : transmettre une trame montante à destination de la passerelle collaboratrice, la passerelle initiatrice se mettant en attente pendant une période prédéterminée avant de se mettre en écoute d'une réponse à ladite trame montante, ladite réponse étant transmise dans une trame descendante par la passerelle collaboratrice après une période égale à la période prédéterminée suivant une réception de ladite trame par la passerelle collaboratrice, une première information représentative d'un instant de réception de ladite requête par la passerelle collaboratrice à laquelle a été ajoutée la durée de la période prédéterminée étant insérée dans ladite réponse par la passerelle 5 collaboratrice ; recevoir ladite réponse et obtenir une deuxième information représentative d'un instant de réception de ladite réponse par la seconde passerelle ; et, calculer l'écart d'horloge entre la passerelle initiatrice et la passerelle collaboratrice comme une différence entre la deuxième et la première informations. Selon un mode de réalisation, la procédure de synchronisation est exécutée dans 10 chaque sous-ensemble pour chaque paire de passerelles possibles dudit sous- ensemble, chaque passerelle d'une paire de passerelles étant alternativement initiatrice ou collaboratrice, à intervalles réguliers prédéfinis ou intervalles adaptatifs de durées dépendantes d'une évolution des écarts d'horloge au cours du temps. Selon un deuxième aspect de l'invention, l'invention concerne un dispositif de 15 type serveur compris dans un réseau sans fil à grande portée et permettant une faible consommation d'énergie dans lequel des terminaux communiquent avec le serveur par l'intermédiaire de passerelles d'un ensemble de passerelles selon une technologie de communication impliquant que lorsque le serveur reçoit un message d'un terminal via une première passerelle, il fixe un instant auquel une passerelle doit relayer une 20 réponse audit message en fonction d'un instant de réception dudit message par ladite première passerelle, chaque passerelle étant associée avec un ensemble de terminaux comprenant au moins un terminal utilisant ladite passerelle pour communiquer avec le serveur. Le dispositif comprend : des moyens de réception pour recevoir une requête en provenance d'une première passerelle contenant un message émis dans une trame, 25 dite trame montante, par un terminal, dit terminal émetteur ; des moyens de détermination pour déterminer une seconde passerelle différente de la première passerelle à utiliser pour relayer une réponse audit message destinée au terminal émetteur, la seconde passerelle étant déterminée dans un sous-ensemble de passerelles de l'ensemble de passerelles comprenant la première passerelle et au moins une 30 seconde passerelle, chaque passerelle du sous-ensemble étant capable de relayer vers un terminal une réponse à un message transmis dans une trame montante par ledit terminal reçue par n'importe quelle autre passerelle dudit sous-ensemble, les passerelles du sous-ensemble ayant au moins un terminal associé en commun et étant associées avec le terminal émetteur ; des moyens de transmission pour transmettre une requête contenant ladite réponse à la seconde passerelle, ladite réponse étant retransmise par la seconde passerelle au terminal émetteur dans une trame dite trame descendante à un instant indiqué dans la requête, ledit instant étant indiqué dans une référence temporelle de la première passerelle, la deuxième passerelle prenant en 5 compte un écart d'horloge entre la première et la seconde passerelles pour transmettre la trame descendante audit instant. Selon un troisième aspect de l'invention, l'invention concerne un système compris dans un réseau sans fil à grande portée et permettant une faible consommation d'énergie comprenant un dispositif de type serveur selon le deuxième 10 aspect, une pluralité de terminaux et une pluralité de passerelles, chaque passerelle du sous-ensemble étant capable de relayer vers un terminal une réponse à un message transmis dans une trame montante par ledit terminal reçue par n'importe quelle autre passerelle dudit sous-ensemble, les passerelles du sous-ensemble ayant au moins un terminal associé en commun. 15 Selon un quatrième aspect de l'invention, l'invention concerne un programme d'ordinateur, comprenant des instructions pour mettre en oeuvre, par un dispositif, le procédé selon le premier aspect, lorsque ledit programme est exécuté par un processeur dudit dispositif. Selon un cinquième aspect de l'invention, l'invention concerne des moyens de 20 stockage stockant un programme d'ordinateur comprenant des instructions pour mettre en oeuvre, par un dispositif, le procédé selon le premier aspect, lorsque ledit programme est exécuté par un processeur dudit dispositif. Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de 25 réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels : - la Fig. 1 illustre schématiquement un réseau LoRa dans lequel est mis en oeuvre l'invention ; - la Fig. 2A illustre schématiquement un module de traitement compris dans un 30 serveur ; - la Fig. 2B illustre schématiquement un module de traitement compris dans une passerelle - la Fig. 3 illustre schématiquement un procédé de communication selon l'invention ; - la Fig. 4 illustre schématiquement une procédure de synchronisation selon l'invention ; - la Fig. 5A illustre schématiquement un premier exemple de procédure adaptative de formation de sous-ensembles de passerelles selon l'invention ; 5 - la Fig. 5B illustre schématiquement un deuxième exemple de procédure adaptative de formation de sous-ensembles de passerelles selon l'invention ; et, - la Fig. 6 illustre schématiquement en détails la formation des sous-ensembles de passerelles. L'invention est décrite par la suite dans un contexte de réseau LoRa. L'invention 10 s'applique toutefois dans d'autres contextes pour tous types de réseaux sans fil à grande portée et permettant une faible consommation d'énergie dans lesquels des terminaux communiquent avec un serveur central via des passerelles semi-duplex. La Fig. 1 illustre schématiquement un exemple de réseau LoRa 1 dans lequel est mise en oeuvre l'invention. 15 Dans l'exemple de la Fig. 1, le réseau LoRa 1 comprend un serveur 10, un ensemble de passerelles comprenant au moins deux passerelles (dans la Fig. 1 seules deux passerelles 11A et 11B sont représentées) et au moins un terminal (dans la Fig. 1 seul un terminal 12 est représenté). Chaque passerelle communique avec le serveur 10 par l'intermédiaire d'un lien de communication filaire ou sans fil. Par exemple la 20 passerelle 11A (respectivement la passerelle 11B) communique avec le serveur 10 par l'intermédiaire d'un lien de communication filaire ou sans fil 14A (respectivement 14B). De plus, chaque communication entre une passerelle et un terminal utilise un lien de communication sans fils. Par exemple, la passerelle 11A (respectivement la passerelle 11B) communique avec le terminal 12 par l'intermédiaire d'un lien de 25 communication sans fil 13A (respectivement 13B). Le serveur 10 comprend un module de traitement 100. Chaque passerelle comprend un module de traitement. Par exemple, la passerelle 11A (respectivement 11B) comprend un module de traitement 110A (respectivement 110B). Dans un mode de réalisation, certaines passerelles peuvent communiquer entre 30 elles. Pour ce faire, chaque passerelle souhaitant communiquer avec une autre passerelle utilise une fonctionnalité qui est de permettre à une passerelle de se faire passer temporairement pour un terminal. Par exemple, les passerelles 11A et 11B peuvent communiquer entre elles par l'intermédiaire d'un lien de communication sans fil 15. On note que dans le réseau LoRa 1, les communications entre les terminaux et les passerelles et les communications entre passerelles utilisent des trames compatibles avec le protocole LoRaWAN. Le document LoRaWAN 1.1 (« draft LoRaWAN 1.1 » en terminologie anglo-saxonne) d'août 2015 définit les 5 communications entre les terminaux et les passerelles d'un réseau LoRa. La Fig. 2A illustre schématiquement un exemple d'architecture matérielle du module de traitement 100 compris dans le serveur centralisé 10. Selon l'exemple d'architecture matérielle représenté à la Fig. 2A, le module de traitement 100 comprend alors, reliés par un bus de communication 1000 : un 10 processeur ou CPU (« Central Processing Unit » en terminologie anglo-saxonne) 1001 ; une mémoire vive RAM (« Random Access Memory » en terminologie anglo-saxonne) 1002 ; une mémoire morte ROM (« Read Only Memory » en terminologie anglo-saxonne) 1003 ; une unité de stockage telle qu'un disque dur ou un lecteur de support de stockage, tel qu'un lecteur de cartes SD (« Secure Digital » en terminologie 15 anglo-saxonne) 1004 ; au moins une interface de communication 1005 permettant au module de traitement 100 de communiquer avec d'autres modules ou dispositifs. Par exemple, l'interface de communication 1005 permet au module de traitement 100 de communiquer avec les passerelles du réseau LoRa 1 telles que les passerelles 11A et 11B ou avec des serveurs distants appartenant au nuage (« cloud » en terminologie 20 anglo-saxonne). Le processeur 1001 est capable d'exécuter des instructions chargées dans la RAM 1002 à partir de la ROM 1003, d'une mémoire externe (non représentée), d'un support de stockage (tel qu'une carte SD), ou d'un réseau de communication. Lorsque le serveur 10 est mis sous tension, le processeur 1001 est capable de lire de la RAM 25 1002 des instructions et de les exécuter. Dans un mode de réalisation, ces instructions forment un programme d'ordinateur causant la mise en oeuvre complète ou partielle, par le processeur 1001, des procédés décrits ci-après en relation avec les Figs. 3, 4, 5A, 5B et 6. La Fig. 2B illustre schématiquement un exemple d'architecture matérielle du 30 module de traitement 110A compris dans la passerelle LoRa 11A. Le module de traitement 110B est identique. Selon l'exemple d'architecture matérielle représenté à la Fig. 2B, le module de traitement 110A comprend alors, reliés par un bus de communication 1100 : un processeur ou CPU 1101 ; une mémoire vive RAM 1102 ; une mémoire morte ROM 10 1103 ; une unité de stockage telle qu'un disque dur ou un lecteur de support de stockage, tel qu'un lecteur de cartes SD 1104 ; au moins une interface de communication 1105 permettant au module de traitement 110A de communiquer avec d'autres modules ou dispositifs. Par exemple l'interface de communication 1105 5 permet au module de traitement 110A de communiquer avec le serveur 10, avec d'autres passerelles du réseau LoRa 1 telles que la passerelle 11B ou avec des terminaux du réseau LoRa 1 tels que le terminal 12. Dans un mode de réalisation, le module de traitement 110A comprend en outre un module de comptage apte à fournir une valeur de comptage CPRTi codée sur « 32 » bits et incrémentée d'une unité à 10 chaque microseconde, i étant un identifiant du module de traitement (i.e. i= 110A pour le module de comptage du module de traitement 110A). Le processeur 1101 est capable d'exécuter des instructions chargées dans la RAM 1002 à partir de la ROM 1003, d'une mémoire externe (non représentée), d'un support de stockage (tel qu'une carte SD), ou d'un réseau de communication. Lorsque 15 la passerelle 11A est mise sous tension, le processeur 1101 est capable de lire de la RAM 1102 des instructions et de les exécuter. Dans un mode de réalisation, ces instructions forment un programme d'ordinateur causant la mise en oeuvre complète ou partielle, par le processeur 1101, des procédés décrits ci-après en relation avec les Figs. 3 et 4. 20 Les procédés décrits en relation avec les Figs. 3, 4, 5A, 5B et 6 peuvent être implémentés sous forme logicielle par exécution d'un ensemble d'instructions par une machine programmable, par exemple un DSP (« Digital Signal Processor » en terminologie anglo-saxonne) ou un microcontrôleur, ou être implémentés sous forme matérielle par une machine ou un composant dédié, par exemple un FPGA (« Field- 25 Programmable Gate Array » en terminologie anglo-saxonne) ou un ASIC (« Application-Specific Integrated Circuit » en terminologie anglo-saxonne). La Fig. 3 illustre schématiquement un procédé de communication selon l'invention. Dans une étape 300, le terminal 12 émet une trame conforme au protocole 30 LoRaWAN à destination du serveur 10. Cette trame, dite trame montante, est transmise en mode multidiffusion de sorte que chaque passerelle à portée du terminal 12 reçoit cette trame montante. Dans l'exemple du réseau LoRa 1, on suppose que la passerelle 11A, dite passerelle LM (Liaison Montante, « Uplink » en terminologie anglo-saxonne), reçoit chaque trame montante transmise par le terminal 12. 11 Dans une étape 301, le module de traitement 110A de la passerelle 11A reçoit donc la trame montante. Lorsqu'une passerelle d'un réseau LoRa reçoit une trame montante contenant un message destiné à un serveur, elle la décode et insère le message contenu dans cette 5 trame montante dans une requête HTTP, dite requête HTTP montante, puis transmet cette requête HTTP montante au serveur du réseau LoRa en point à point. Lors d'une étape 302, la module de traitement 110A décode et insère le message contenu dans la trame montante dans une requête HTTP montante, puis transmet cette requête HTTP montante au serveur 10 en point à point. En outre, la requête comprend une 10 information représentative d'un instant de réception de la trame montante par la passerelle 11A. Cette information représentative de l'instant de réception de la trame montante est fournie au module de traitement 110A par son module de comptage. Cette information représentative de l'instant de réception de la trame montante a donc été mesurée dans un référentiel temporel de la passerelle 11A. 15 Dans une étape 303, le module de traitement 100 du serveur 10 reçoit la requête HTTP montante contenant le message émis dans la trame montante par le terminal 12. Dans une étape 304, le module de traitement 100 détermine une seconde passerelle, dite passerelle LD (Liaison Descendante, « downstream » en terminologie anglo-saxonne) différente de la passerelle 11A (i.e. passerelle LM) à utiliser pour 20 relayer une réponse au message contenu dans la trame montante destinée au terminal 12. L'ensemble des passerelles du réseau LoRa 1 est composé d'une pluralité de sous-ensembles de passerelles. Chaque sous-ensemble de passerelles comprend des passerelles capables de relayer vers un terminal une réponse à un message contenu dans une trame montante, transmise par ledit terminal, reçue par n'importe quelle 25 autre passerelle dudit sous-ensemble. Chaque passerelle d'un sous-ensemble peut être alternativement une passerelle LM ou une passerelle LD. Chaque passerelle d'un sous-ensemble ayant reçu une trame montante est considérée comme une passerelle LM. Chaque passerelle d'un sous-ensemble relayant une réponse à un message contenu dans une trame montante reçue par une autre passerelle du sous-ensemble, 30 c'est-à-dire relayant une réponse à un message contenu dans une trame montante pour le compte d'une autre passerelle du sous-ensemble, est considérée comme une passerelle LD. Chaque sous-ensemble comprend donc au moins une première et une seconde passerelles. La première passerelle peut être alternativement une passerelle LM ou une passerelle LD. La seconde passerelle peut être une passerelle LD quand la 12 première passerelle est une passerelle LM, ou une passerelle LM lorsque la première passerelle est une passerelle LD. Les passerelles d'un sous-ensemble ont au moins un terminal associé en commun entre elles. Une passerelle est considérée comme associée à un terminal lorsqu'elle a reçu des trames montantes en provenance dudit 5 terminal pendant une période récente. Par ailleurs, chaque passerelle d'un sous- ensemble est associée au moins au terminal ayant émis la trame montante reçue par une passerelle LM du sous-ensemble. Lors de l'étape 304, la passerelle LD est donc déterminée dans un sous-ensemble comprenant la passerelle 11A et dans lequel chaque passerelle est au moins associée au terminal 12. Dans l'exemple décrit en 10 relation avec la Fig. 3, la passerelle LD déterminée est la passerelle 11B. On note que, bien que la trame montante ait été transmise en mode multidiffusion, la passerelle 11B n'a pas forcément reçu cette trame. Nous décrivons par la suite en relation avec les Figs. 5A et 5B deux exemples de procédures permettant de créer des sous-ensembles de passerelles à partir de l'ensemble de passerelles du réseau LoRa 1. On note que 15 dans l'invention, c'est le serveur 10 ou un serveur distant du nuage à la demande du serveur 10 qui détient des caractéristiques de chaque sous-ensemble. Le serveur 10 (ou serveur distant du nuage sous le contrôle du serveur 10) a soit défini ces sous-ensembles, soit obtenu ces sous-ensembles lors d'une configuration du réseau LoRa 1 par un opérateur. Ces caractéristiques comprennent un identifiant pour chaque 20 passerelle appartenant audit sous-ensemble et un identifiant pour chaque terminal associé en commun entre toutes les passerelles dudit-sous-ensemble. Le serveur 10 transmet les caractéristiques de chaque sous-ensemble à chaque passerelle appartenant audit sous-ensemble à chaque fois que ledit sous-ensemble est défini ou mis à jour. Dans une étape 305, le module de traitement 100 transmet une requête HTTP 25 contenant ladite réponse à la passerelle 11B. Cette requête comprend en outre une information représentative d'un instant de transmission souhaité de la trame descendante correspondant à ladite requête par la passerelle 11B. Cet instant de transmission est calculé par le module de traitement 100 par rapport à l'information représentative de l'instant de réception de la trame montante par la passerelle 11A. Ce 30 calcul consiste à ajouter une durée prédéfinie D audit instant de réception. Par exemple, D=ls. L'instant de transmission est donc calculé par rapport à une référence temporelle de la passerelle 11A (i.e. de la passerelle LM). Dans une étape 306, le module de traitement 110B de la passerelle 11B reçoit la requête HTTP contenant ladite réponse. 13 Dans une étape 307, le module de traitement 110B génère une trame descendante contenant la réponse et la transmet en point à point au terminal 12 à un instant correspondant à l'information représentative de l'instant de transmission souhaité. Comme décrit plus haut, l'instant de transmission souhaité a été calculé par 5 rapport à la référence temporelle de la passerelle 11A. Or la passerelle 11B ne fonctionne pas avec la même référence temporelle. En effet, la référence temporelle de la passerelle 11B est donnée par le module de comptage du module de traitement 110B, qui, bien qu'identique au module de comptage du module de traitement 110A, est généralement décalé par rapport au module de comptage du module de traitement 10 110A. Par ailleurs, même si les deux modules de comptage avaient été synchronisés à un moment, ils peuvent l'un et l'autre subir des dérives différentes dans le temps. Pour compenser ce décalage, le module de traitement 110B prend en compte un écart d'horloge A entre la passerelle 11A et la passerelle 11B. Cet écart d'horloge A est obtenu par le module de traitement 110B en mettant en oeuvre régulièrement une 15 procédure de synchronisation décrite par la suite en relation avec la Fig. 4. Dans une étape 308, le terminal 12 reçoit la trame descendante contenant la réponse au message contenu dans la trame montante. Dans un mode de réalisation, lors de l'étape 304, si le sous-ensemble de passerelles dans lequel a été déterminée la passerelle 11B (i.e. la passerelle LD) 20 comprend une pluralité de passerelles susceptibles de devenir une passerelle LD pour le compte de la passerelle 11A (i.e. de la passerelle LM), le module de traitement 100 détermine la passerelle LD parmi les passerelles de la pluralité de manière aléatoire. Dans un mode de réalisation, lors de l'étape 304, si le sous-ensemble de passerelles dans lequel a été déterminé la passerelle 11B comprend une pluralité de 25 passerelles susceptibles de devenir une passerelle LD pour le compte de la passerelle 11A, le module de traitement 100 détermine la passerelle LD parmi un nombre n de passerelles de la pluralité offrant la meilleure qualité de communication avec le terminal 12 de manière aléatoire. Par exemple, si le sous-ensemble comprend un nombre m de passerelles, m étant égal à 100, n=10. 30 La Fig. 4 illustre schématiquement une procédure de synchronisation selon l'invention. La procédure de synchronisation est exécutée, dans chaque sous-ensemble, pour chaque paire possible de passerelles comprises dans ledit sous-ensemble. La procédure de synchronisation entre deux passerelles d'une paire est unidirectionnelle. 14 En effet, en supposant qu'une des deux passerelles de la paire, dite passerelle initiatrice, est celle qui a initié la procédure de synchronisation, la procédure de synchronisation permet à la passerelle initiatrice de connaître l'écart d'horloge A. existant entre les deux passerelles de la paire. L'autre passerelle de la paire, dite 5 passerelle collaboratrice, n'ayant pas initié la procédure de synchronisation, ne connaît pas l'écart d'horloge A. à la fin de l'exécution de la procédure de synchronisation. Il faut donc exécuter deux fois la procédure de synchronisation pour que les deux passerelles d'une paire connaissent l'écart d'horloge A, chaque passerelle d'une paire devenant alternativement initiatrice et collaboratrice. Cette procédure est exécutée par 10 exemple à intervalles réguliers prédéfinis de durée T. Dans un mode de réalisation T=10s. Dans la Figure 4, la procédure de synchronisation est exécutée entre les passerelles 11A et 11B, la passerelle 11B étant celle qui initie ladite procédure. Dans cet exemple donc, seule la passerelle 11B connaît l'écart d'horloge A. à la fin de 15 l'exécution de la procédure de synchronisation. Dans une étape 400, le module de traitement 110B transmet une trame montante en mode multidiffusion. Pour ce faire, la passerelle 11B se comporte comme un terminal appelé TERM 11B. La trame montante est considérée comme une trame vide puisqu'elle ne contient pas de données utiles mais uniquement des données d' entêtes 20 conformes au protocole LoRaWAN dont une adresse addr TERM 11B du terminal TERM 11B. Dans une étape 401, suite à cette transmission, le module de traitement 110B se met en attente pendant une durée D. Dans un mode de réalisation, D=l s. A la fin de la durée D, le module de traitement 110B se met en écoute d'une 25 réponse à sa trame montante vide dans une étape 402. Dans une étape 403, le module de traitement 110A de la passerelle 11A reçoit la trame montante vide de la passerelle 11B. Le module de traitement 110A reconnaît le terminal TERM 11B (et donc la passerelle 11B) grâce à l'adresse addr TERM 11B contenue dans la trame montante vide. En effet, l'adresse addr TERM 11B est un 30 identifiant de la passerelle 11B contenu dans les caractéristiques du sous-ensemble comprenant la passerelle 11A transmises par le serveur 10 à toutes les passerelles comprises dans ce sous-ensemble. Dans une étape 404, le module de traitement 110A sauvegarde une valeur courante CPRT110A de son module de comptage. La valeur courante CPRT110A est une 15 information représentative d'un instant de réception par la passerelle 11A de la trame montante vide provenant du terminal TERM 11B (i.e. de la passerelle 11B). Dans une étape 405, suite à la réception de la trame montante vide, le module de traitement 110B se met en attente pendant la durée D. 5 A la fin de la durée D, le module de traitement 110A transmet une réponse à la trame montante vide dans une étape 406. Cette réponse est transmise sous forme de trame descendante en point à point à destination de la passerelle 11B. Cette réponse comprend l'information représentative de l'instant de réception par la passerelle 11A de la trame montante vide auquel a été ajoutée la durée D, c'est-à-dire CPRT110A + D. 10 Dans une étape 407, le module de traitement 110B reçoit la trame descendante contenant la réponse. Dans une étape 408, le module de traitement 110B sauvegarde une valeur courante CPRT110B de son module de comptage. La valeur courante CPRT110B est une information représentative d'un instant de réception par la passerelle 11B de la trame 15 descendante provenant de la passerelle 11A. Dans une étape 409, le module de traitement 110B calcule un écart d'horloge A entre les horloges des passerelles 11A et 11B : A= CPRTnos (CPRTnoA + D) Dans une étape 410, le module de traitement 110B mémorise l'écart d'horloge 20 A. L'écart d'horloge A est utilisé lors de l'étape 307. Dans une étape 411, le module de traitement 110B se met en attente pendant la durée de l'intervalle régulier prédéfini T puis retourne à l'étape 400 pour remettre à jour l'écart d'horloge A. Dans un mode de réalisation, la durée de l'intervalle entre deux lancements de la 25 procédure de synchronisation n'est pas prédéfinie mais adaptative. Par exemple, cette durée d'intervalle, notée Tadapt dépend d'une évolution des écarts A au cours du temps. Si le module de traitement de la passerelle initiatrice (ici la passerelle 110B) constate qu'une valeur absolue de l'écart d'horloge IAI augmente alors la durée de l'intervalle Tadapt est diminuée. Si la valeur absolue de l'écart d'horloge IAI diminue, 30 alors la durée de l'intervalle Tadapt est augmentée. Par exemple si A CUTT est le dernier écart calculé et 'Bre est l'écart précédent : 13,currl Tadapt Tadapt(-1- l'APre I Dans l'exemple de la Fig. 4, nous montrons comment la passerelle 11B obtient l'écart d'horloge A entre la passerelle 11A et la passerelle 11B. Pour que la passerelle 11A 16 obtienne l'écart d'horloge A entre la passerelle 11A et la passerelle 11B il faut qu'elle initie la procédure de synchronisation et donc qu'elle exécute les étapes 400, 401, 402, 407, 408, 409, 410 et 411, la passerelle 11B exécutant les étapes 403, 404, 405 et 406. Dans un mode de réalisation, chaque passerelle d'un sous-ensemble implémente 5 par l'intermédiaire de son module de traitement, un module logiciel (i.e. une application) spécifique pour chaque autre passerelle dudit sous-ensemble avec laquelle elle forme une paire. Pour chaque autre passerelle, ce module logiciel gère la réception de la trame montante vide (étape 403), chaque traitement appliqué suite à cette réception (étape 404 et 405) et la transmission (étape 406) de la trame 10 descendante contenant l'information représentative de l'instant de réception de la trame montante vide auquel a été ajoutée la durée D. Comme nous l'avons vu plus haut, l'invention s'appuie sur une utilisation de sous-ensembles de passerelles. Chaque sous-ensemble de passerelles comprend des passerelles capables de relayer vers un terminal une réponse à un message contenu 15 dans une trame montante, transmise par ledit terminal, reçue par n'importe quelle autre passerelle dudit sous-ensemble. Dans un mode de réalisation, les sous-ensembles sont obtenus lors d'une configuration du réseau LoRa 1 par un opérateur. Lors de cette configuration, l'opérateur définit les sous-ensembles. Par exemple, l'opérateur forme des sous- 20 ensembles à partir de passerelles dont il sait qu'elles pourront se suppléer entre elles pour relayer dans une trame descendante une réponse à un message reçu dans une trame montante par l'une d'entre elles. Pour cela, l'opérateur peut se baser sur une position géographique de chaque passerelle. Ainsi, un sous-ensemble associé à une première passerelle peut être formé à partir de passerelles situées dans un rayon de R 25 de la première passerelle (par exemple R = 10 kilomètres). Dans ce mode de réalisation on part du principe qu'un terminal qui est capable de transmettre une trame montante à la première passerelle est capable de recevoir une trame descendante d'une seconde passerelle située dans un rayon de R kilomètres autour de la première passerelle. 30 Ce premier mode de réalisation, outre le fait qu'il soit fastidieux à mettre en oeuvre si le réseau LoRa comprend un grand nombre de passerelles et de terminaux, n'est pas adaptatif. Il ne prend en effet pas en compte un éventuel dysfonctionnement d'une passerelle ou un changement d'environnement d'une passerelle (par exemple une construction d'un bâtiment au voisinage d'une deuxième passerelle qui 17 empêcherait des communications entre la première et la deuxième passerelles ou entre la deuxième passerelle et le terminal ayant transmis la trame montante). De plus, chaque insertion d'une nouvelle passerelle dans le réseau LoRa 1 nécessite une intervention de l'opérateur pour modifier les caractéristiques d'au moins certains sous- 5 ensembles. Ce mode de réalisation peut toutefois être utilisé au démarrage du réseau LoRa 1 lorsque le serveur 10 n'a aucune information sur les passerelles réellement associées à chaque terminal. Les Fig. 5A et 5B illustrent schématiquement un premier exemple et un deuxième exemple de procédure adaptative de formation de sous-ensembles de 10 passerelles selon l'invention. Chaque procédure adaptative de formation de sous-ensembles de passerelles est exécutée périodiquement avec une période P par le serveur 10 ou par un serveur distant du nuage sous le contrôle du serveur 10. P est par exemple une période de deux heures. 15 Le premier et le deuxième exemples de procédure adaptative de formation de sous-ensembles de passerelles sont adaptés à des contextes différents. Le contexte de l'exemple de la Fig. 5A est celui d'un réseau LoRa dans lequel, les passerelles du réseau LoRa pouvant émettre sur les mêmes canaux, lesdites passerelles peuvent transmettre des trames descendantes vers et recevoir des trames 20 montantes de chaque terminal du réseau LoRa qui est à leur portée. Le contexte de l'exemple de la Fig. 5B est celui d'un réseau LoRa dans lequel les passerelles du réseau LoRa ne peuvent pas recevoir des trames montantes de chaque terminal du réseau LoRa qui est à leur portée. Dans ce contexte, on considère que les passerelles utilisent un canal de réception dynamique qui parcourt toute la 25 bande de fréquence allouée à LoRa de manière à pouvoir recevoir des terminaux qu'elles ne pourraient pas recevoir sinon. Pour l'exécution de ces procédures de formation des sous-ensembles de passerelles, le serveur 10 (ou un serveur distant du nuage sous le contrôle du serveur 10) utilise des informations sur les requêtes qu'il reçoit des passerelles du réseau 30 LoRa 1 ou qu'il envoie vers les passerelles du réseau LoRa 1. Ces informations comprennent pour chaque requête : - heure d'émission ou de réception de la requête ; - type de la requête : montante ou descendante ; - identifiant du terminal concerné par la requête ; 18 - identifiant de la passerelle concernée par la requête. Par la suite, nous décrivons les procédures adaptatives de formation de sous-ensembles de passerelles lorsqu'elles sont exécutées par le module de traitement 100 du serveur 10. Ces procédures pourraient tout aussi bien être exécutées par un module 5 de traitement équivalent d'un serveur distant du nuage qui fournirait ensuite un résultat d'exécution des procédures au serveur 10. On suppose par la suite que le réseau LoRa 1 comprend Np passerelles. En référence à la Fig. 5A, dans une étape 501, le module de traitement 100 classe les passerelles du réseau LoRa 1 par ordre décroissant d'un nombre de trames 10 descendantes que chaque passerelle a émises vers les terminaux du réseau LoRa 1 pendant la dernière période P. Dans un mode de réalisation, le module de traitement 100 ne classe que les passerelles qui ont émis au moins un nombre prédéterminé À. de trames descendantes pendant la dernière période P. Dans un mode de réalisation À. = 100. Les autres 15 passerelles ne sont pas considérées dans la suite de la procédure. Il ne reste alors que Np passerelles à considérer, chacune notée GWi par la suite où i est un indice variant de « 1 » à Ni,. Dans une étape 502, le module de traitement 100 parcourt les passerelles GWi par ordre croissant de l'indice i. Pour chaque passerelle GWi, le module de traitement 20 100 classe chaque terminal associé avec la passerelle GWi par ordre décroissant d'un nombre de trames montantes reçues dudit terminal par ladite passerelle GWi pendant la dernière période P. On obtient alors pour la passerelle GWi un ensemble de terminaux classés GTO comprenant Mi terminaux associés à la passerelle GWi. Dans une étape 503, le module de traitement 100 parcourt de nouveau les 25 passerelles GWi par ordre croissant de l'indice i mais cette fois-ci pour former les sous-ensembles. La Fig. 6 illustre schématiquement en détails la formation des sous-ensembles correspondant à l'étape 503. Dans une étape 600, le module de traitement 100 initialise une variable i à 1. La 30 variable i permet de parcourir les passerelles GWi. Une passerelle GWi est une passerelle à partir de laquelle le module de traitement 100 forme un sous-ensemble, la passerelle GWi appartenant à ce sous-ensemble. Au cours de l'étape 600, le module de traitement initialise en outre une variable np à la valeur du nombre de passerelles à considérer Ni,. 19 Dans une étape 601, le module de traitement 100 initialise un ensemble de terminaux GTINTER à l'ensemble de terminaux GTi associé à la passerelle GWi. Dans une étape 602, le module de traitement 100 initialise une variable K au nombre de passerelles pouvant être considérées pour former le sous-ensemble à partir 5 de la passerelle GWi. La variable K est donc initialisée à np - 1 car la passerelle GWi est retirée de l'ensemble des passerelles qui peuvent être considérées car par définition, elle fait partie du sous-ensemble en cours de formation. Dans une étape 603, le module de traitement 100 identifie parmi les K passerelles restantes, une passerelle GW ayant le plus de terminaux en commun avec 10 la passerelle GWi. Lorsque la passerelle GW est trouvée, le module de traitement 100 insère, lors d'une étape 604, la passerelle GW dans le sous-ensemble formé à partir de la passerelle GWi. En d'autres termes, le module de traitement ajoute un identifiant de la passerelle GW à un ensemble d'identifiants représentant le sous-ensemble formé à 15 partir de la passerelle GWi, ce sous-ensemble comprenant un identifiant de la passerelle GWi. Dans une étape 605, le module de traitement 100 réinitialise l'ensemble de terminaux GTINTER comme l'intersection entre l'ensemble de terminaux GTINTER courant et l'ensemble de terminaux GT associé à la passerelle GW : 20 GTINTER = GTINTER n GTO Dans une étape 606 le module de traitement 100 vérifie si le nombre de terminaux NB_GTINTER dans l'ensemble de terminaux GTINTER est supérieur ou égal à un pourcentage prédéfini Q du nombre Mi de terminaux dans l'ensemble de terminaux GWi. Dans un mode de réalisation Q=25%. 25 Si NB_GTINTER > Q x Mi, le module de traitement 100 continue avec une étape 607. Sinon le module de traitement continue avec une étape 609. Lors de l'étape 607, le module de traitement décrémente la variable K d'une unité pour passer à une autre passerelle GWi à insérer dans le sous-ensemble de passerelles formé à partir de la passerelle GWi. 30 Si lors d'une étape 608 la variable K est égale à zéro, le module de traitement exécute l'étape 609. Sinon, le module de traitement retourne à l'étape 603. Lors de l'étape 609, le module de traitement 100 supprime les terminaux appartenant à l'ensemble de terminaux GTINTER de tous les ensembles de terminaux 20 GTO. De cette manière, un même terminal ne peut pas être associé à plusieurs sous-ensembles. Lors d'une étape 610, le module de traitement 100 vérifie que suite à la suppression des terminaux appartenant à l'ensemble des terminaux GTiINTER il reste 5 des terminaux dans au moins deux ensembles GTi. S'il ne reste plus d'ensembles GTi comprenant des terminaux, cela signifie que tous les terminaux ont été associés à un sous-ensemble. S'il ne reste qu'un ensemble GTO comprenant des terminaux, cela signifie qu'on ne pourra jamais associer lesdits terminaux à un sous-ensemble. Pour ces terminaux, le comportement d'un réseau LoRa classique s'applique. Dans ces 10 deux cas, le module de traitement 100 met fin à l'algorithme de la Fig. 6 lors de l'étape 613 et donc à la procédure adaptative de formation de sous-ensembles de passerelles de la Fig. 5A. Sinon, lors d'une étape 611, le module de traitement 100 met à jour les variables i et np' . Dans un mode de réalisation, une passerelle peut apparaître dans plusieurs 15 sous-ensembles. Dans ce mode de réalisation, lors de l'étape 610, le module de traitement 100 incrémente la variable i d'une unité pour passer à une autre passerelle GWi et la variable np reste inchangée. L'étape 611 est suivie d'une étape 612 au cours de laquelle le module de traitement 100 vérifie si toutes les passerelles à partir desquelles un sous-ensemble 20 peut être formé ont été considérées. Dans le mode de réalisation où une passerelle peut apparaître dans plusieurs sous-ensembles, le module de traitement 100 vérifie si la variable i est inférieure à Ni,. Si c'est le cas, le module de traitement 100 revient à l'étape 601. Sinon, le module de traitement 100 met fin à l'algorithme de la Fig. 6 lors d'une étape 613 et donc à la procédure adaptative de formation de sous-ensembles de 25 passerelles de la Fig. 5A. On note qu'à la fin de l'algorithme de la Fig. 6, chacune des passerelles est comprise dans un sous-ensemble, chaque passerelle d'un sous-ensemble étant associée à chaque terminal appartenant à l'intersection GTiINTER des ensembles de terminaux GTO associés à chaque passerelle dudit sous-ensemble. 30 Selon l'algorithme de la Fig. 6, une passerelle peut apparaître dans plusieurs sous-ensembles. Dans un mode de réalisation, lorsqu'une passerelle GW a été insérée dans un sous-ensemble formé à partir d'une passerelle GWi lors d'une exécution de l'étape 604, cette passerelle GW ne peut plus être insérée dans un sous-ensemble formé à 21 partir de toutes autres passerelles. Dans ce mode de réalisation, une passerelle ne peut donc apparaître que dans un seul sous-ensemble. Dans ce mode de réalisation, lors de l'étape 611, la variable i prend une valeur d'un indice d'une passerelle GWi qui n'appartient pas à un sous-ensemble déjà formé. Par ailleurs la variable np prend une 5 valeur correspondant à un nombre de passerelles comprises dans les passerelles n'apparaissant dans aucun sous-ensemble déjà formé. Lors de l'étape 612, le module de traitement 100 vérifie s'il reste au moins deux passerelles n'apparaissant dans aucun sous-ensemble déjà formé. S'il ne reste aucune passerelle, cela signifie que toutes les passerelles ont été insérées dans un sous-ensemble. S'il n'existe qu'une 10 passerelle, cela signifie qu'il n'est pas possible de former un sous-ensemble à partir de la passerelle restante puisqu'il faut au moins deux passerelles pour former un sous-ensemble. Dans ces deux cas, le module de traitement 100 met fin à l'algorithme de la Fig. 6 lors de l'étape 613 et donc à la procédure adaptative de formation de sous-ensembles de passerelles de la Fig. 5A. 15 En référence maintenant à la Fig. 5B, dans une étape 511, le module de traitement 100 classe les passerelles du réseau LoRa 1 par ordre décroissant d'un nombre de trames montantes que chaque passerelle a reçues des terminaux du réseau LoRa 1 pendant la dernière période P. De manière similaire à la procédure de la Fig. 5A, dans un mode de réalisation, 20 le module de traitement 100 ne classe que les passerelles qui ont reçu au moins un nombre prédéterminé À. de trames montantes pendant la dernière période P. Les autres passerelles ne sont pas considérées dans la suite de la procédure. Il ne reste alors que REVENDICATIONS1) Procédé de communication, exécuté dans un réseau sans fil à grande portée et permettant une faible consommation d'énergie dans lequel des terminaux communiquent avec un serveur (10) par l'intermédiaire de passerelles (11A, 11B) d'un ensemble de passerelles selon une technologie de communication impliquant que lorsque le serveur reçoit un message d'un terminal via une première passerelle, il fixe un instant auquel une passerelle doit relayer une réponse audit message en fonction d'un instant de réception dudit message par ladite première passerelle, chaque passerelle étant associée avec un ensemble de terminaux comprenant au moins un terminal utilisant ladite passerelle pour communiquer avec le serveur, caractérisé en ce que le procédé mis en oeuvre par le serveur comprend : recevoir (303) une requête en provenance d'une première passerelle (11A) contenant un message émis dans une trame, dite trame montante, par un terminal (12), dit terminal émetteur ; déterminer (304) une seconde passerelle (11B) différente de la première passerelle à utiliser pour relayer une réponse audit message destinée au terminal émetteur, la seconde passerelle étant déterminée dans un sous-ensemble de passerelles de l'ensemble de passerelles comprenant la première passerelle et au moins une seconde passerelle,., chaque passerelle du sous-ensemble étant capable de relayer vers un terminal une réponse à un message transmis dans une trame montante par ledit terminal reçue par n'importe quelle autre passerelle dudit sous-ensemble, les passerelles du sous-ensemble ayant au moins un terminal associé en commun et étant associées avec le terminal émetteur; transmettre (305) une requête contenant ladite réponse à la seconde passerelle, ladite réponse étant retransmise (307) par la seconde passerelle audit terminal émetteur dans une trame, dite trame descendante, à un instant indiqué dans la requête, ledit instant étant indiqué dans une référence temporelle de la première passerelle, la deuxième passerelle prenant en compte un écart d'horloge entre la première et la seconde passerelles pour transmettre la trame descendante audit instant. 2) Procédé selon la revendication 1, caractérisé en ce que la technologie de communication est la technologie LoRa et chaque trame échangée entre une passerelle et un terminal est conforme au protocole LoRaWAN. 23 3) Procédé selon la revendication 1 ou 2, caractérisé en ce que l'ensemble de passerelles comprend une pluralité de sous-ensembles de passerelles, chaque sous-ensemble étant formé par un opérateur à partir de passerelles pouvant se suppléer 5 entre elles pour relayer une réponse dans une trame descendante à un message reçu dans une trame montante par l'une d'entre elles ou par une procédure adaptative de formation des sous-ensembles exécutée périodiquement sous le contrôle du serveur avec une période prédéfinie. 10 4) Procédé selon la revendication 3, caractérisé en ce que le serveur transmet à chaque passerelle comprise dans un sous-ensemble des caractéristiques dudit sous-ensemble comprenant un identifiant pour chaque passerelle comprise dans ledit sous-ensemble et un identifiant pour chaque terminal associé en commun entre les passerelles du sous-ensemble. 15 5) Procédé selon la revendication 3 ou 4, caractérisé en ce que la procédure adaptative de formation des sous-ensembles comprend : classer (501) les passerelles de l'ensemble de passerelles par ordre décroissant d'un nombre de trames descendantes que chaque passerelle a émises pendant la 20 dernière période prédéfinie ou par ordre décroissant d'un nombre de trames montantes que chaque passerelle a reçues pendant la dernière période prédéfinie ; parcourir (502) les passerelles ainsi classées dans leur ordre de classement et pour chaque passerelle, classer chaque terminal associé avec ladite passerelle par ordre décroissant d'un nombre de trames montantes reçues dudit terminal par ladite 25 passerelle pendant la dernière période prédéfinie ; parcourir (503) les passerelles dans leur ordre de classement et pour chaque passerelle, définir un sous-ensemble de passerelles à partir de ladite passerelle, ladite passerelle, dite passerelle de base, appartenant audit sous-ensemble, la définition du sous-ensemble comprenant : 30 tant qu'un nombre de terminaux dans un premier ensemble de terminaux associés au sous-ensemble de passerelles en cours de définition est supérieur à un pourcentage prédéfini d'un nombre de terminaux d'un deuxième ensemble de terminaux associés à la passerelle de base (606) : 24 identifier (603) parmi les passerelles ainsi classées n'ayant pas encore été insérées dans le sous-ensemble, une passerelle ayant le plus de terminaux en commun avec la passerelle de base ; insérer (604) la passerelle ainsi identifiée dans le sous-ensemble ; et, 5 former (605) le premier ensemble de terminaux comme une intersection entre le deuxième ensemble de terminaux et chaque ensemble de terminaux associé avec une passerelle insérée dans le sous-ensemble ; et, supprimer chaque terminal compris dans le premier ensemble de terminaux des ensembles de terminaux associé aux passerelles ainsi classées. 10 6) Procédé selon la revendication 5, caractérisé en ce que, lorsque les passerelles sont classées par ordre décroissant du nombre de trames descendantes que chaque passerelle a émises pendant la dernière période prédéfinie, seules les passerelles qui ont émis au moins un nombre prédéterminé de trames descendantes pendant la 15 dernière période prédéfinie sont classées, et lorsque les passerelles sont classées par ordre décroissant du nombre de trames montantes que chaque passerelle a reçues pendant la dernière période prédéfinie, seules les passerelles qui ont reçu au moins un nombre prédéterminé de trames montantes pendant la dernière période prédéfinie sont classées. 20 7) Procédé selon la revendication 5 ou 6, caractérisé en ce que lorsqu'une passerelle a été insérée dans un sous-ensemble formé à partir d'une passerelle de base, cette passerelle ne peut plus être insérée dans un sous-ensemble formé à partir de toutes autres passerelles de base. 8) Procédé selon la revendication 5, 6 ou 7, caractérisé en ce que la procédure adaptative de formation des sous-ensembles s'arrête lorsque toutes les passerelles classées ont été insérées dans un sous-ensemble ou lorsque tous les terminaux du réseau sont compris dans un ensemble de terminaux associé à un sous-ensemble. 9) Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'écart d'horloge existant entre deux passerelles est déterminé par une procédure de synchronisation, la procédure de synchronisation étant exécutée par 25 30 25 l'une des deux passerelles, dite passerelle initiatrice, en collaboration avec l'autre passerelle, dite passerelle collaboratrice et comprenant : transmettre (400) une trame montante à destination de la passerelle collaboratrice, la passerelle initiatrice se mettant en attente (401) pendant une période 5 prédéterminée avant de se mettre en écoute d'une réponse (402) à ladite trame montante, ladite réponse étant transmise (406) dans une trame descendante par la passerelle collaboratrice après une période égale à la période prédéterminée suivant une réception (403) de ladite trame par la passerelle collaboratrice, une première information représentative d'un instant de réception de ladite requête par la passerelle 10 collaboratrice à laquelle a été ajoutée la durée de la période prédéterminée étant insérée dans ladite réponse par la passerelle collaboratrice ; recevoir (407) ladite réponse et obtenir (408) une deuxième information représentative d'un instant de réception de ladite réponse par la seconde passerelle ; et, calculer (409) l'écart d'horloge entre la passerelle initiatrice et la passerelle 15 collaboratrice comme une différence entre la deuxième et la première informations. 10) Procédé selon la revendication 9, caractérisé en ce que la procédure de synchronisation est exécutée dans chaque sous-ensemble pour chaque paire de passerelles possibles dudit sous-ensemble, chaque passerelle d'une paire de 20 passerelles étant alternativement initiatrice ou collaboratrice, à intervalles réguliers prédéfinis ou intervalles adaptatifs de durées dépendantes d'une évolution des écarts d'horloge au cours du temps. 11) Dispositif de type serveur (10) compris dans un réseau sans fil à grande 25 portée et permettant une faible consommation d'énergie dans lequel des terminaux communiquent avec le serveur par l'intermédiaire de passerelles (11A, 11B) d'un ensemble de passerelles selon une technologie de communication impliquant que lorsque le serveur reçoit un message d'un terminal via une première passerelle, il fixe un instant auquel une passerelle doit relayer une réponse audit message en fonction 30 d'un instant de réception dudit message par ladite première passerelle, chaque passerelle étant associée avec un ensemble de terminaux comprenant au moins un terminal utilisant ladite passerelle pour communiquer avec le serveur, caractérisé en ce que le dispositif comprend : 26 des moyens de réception pour recevoir (303) une requête en provenance d'une première passerelle (11A) contenant un message émis dans une trame, dite trame montante, par une terminal (12), dit terminal émetteur ; des moyens de détermination pour déterminer (304) une seconde passerelle 5 (11B) différente de la première passerelle à utiliser pour relayer une réponse audit message destinée au terminal émetteur, la seconde passerelle étant déterminée dans un sous-ensemble de passerelles de l'ensemble de passerelles comprenant la première passerelle et au moins une seconde passerelle, chaque passerelle du sous-ensemble étant capable de relayer vers un terminal une réponse à un message transmis dans une 10 trame montante par ledit terminal reçue par n'importe quelle autre passerelle dudit sous-ensemble, les passerelles du sous-ensemble ayant au moins un terminal associé en commun et étant associées avec le terminal émetteur ; des moyens de transmission pour transmettre (305) une requête contenant ladite réponse à la seconde passerelle, ladite réponse étant retransmise (307) par la seconde 15 passerelle au terminal émetteur dans une trame dite trame descendante à un instant indiqué dans la requête, ledit instant étant indiqué dans une référence temporelle de la première passerelle, la deuxième passerelle prenant en compte un écart d'horloge entre la première et la seconde passerelles pour transmettre la trame descendante audit instant. 20 12) Système compris dans un réseau sans fil à grande portée et permettant une faible consommation d'énergie comprenant un dispositif de type serveur selon la revendication 11, une pluralité de terminaux et une pluralité de passerelles, la pluralité de passerelles comprenant des sous-ensembles de passerelles, chaque passerelle du 25 sous-ensemble étant capable de relayer vers un terminal une réponse à un message transmis dans une trame montante par ledit terminal reçue par n'importe quelle autre passerelle dudit sous-ensemble, les passerelles du sous-ensemble ayant au moins un terminal associé en commun. 30 13) Programme d'ordinateur, caractérisé en ce qu'il comprend des instructions pour mettre en oeuvre, par un dispositif (100), le procédé selon l'une quelconque des revendications 1 à 8, lorsque ledit programme est exécuté par un processeur dudit dispositif (100). 27 14) Moyens de stockage, caractérisés en ce qu'ils stockent un programme d'ordinateur comprenant des instructions pour mettre en oeuvre, par un dispositif (100), le procédé selon l'une quelconque des revendications 1 à 8, lorsque ledit programme est exécuté par un processeur dudit dispositif (100). 5