FR3052942B1 - Procede de dissemination de donnees dans un reseau maille - Google Patents

Procede de dissemination de donnees dans un reseau maille Download PDF

Info

Publication number
FR3052942B1
FR3052942B1 FR1655544A FR1655544A FR3052942B1 FR 3052942 B1 FR3052942 B1 FR 3052942B1 FR 1655544 A FR1655544 A FR 1655544A FR 1655544 A FR1655544 A FR 1655544A FR 3052942 B1 FR3052942 B1 FR 3052942B1
Authority
FR
France
Prior art keywords
node
broadcast
group
broadcast group
message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
FR1655544A
Other languages
English (en)
Other versions
FR3052942A1 (fr
Inventor
Pierre Roux
Mounir Kellil
Christophe Janneteau
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Original Assignee
Commissariat a lEnergie Atomique CEA
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Commissariat a lEnergie Atomique CEA, Commissariat a lEnergie Atomique et aux Energies Alternatives CEA filed Critical Commissariat a lEnergie Atomique CEA
Priority to FR1655544A priority Critical patent/FR3052942B1/fr
Priority to PCT/EP2017/063602 priority patent/WO2017215970A1/fr
Publication of FR3052942A1 publication Critical patent/FR3052942A1/fr
Application granted granted Critical
Publication of FR3052942B1 publication Critical patent/FR3052942B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
    • H04L12/1877Measures taken prior to transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/189Arrangements for providing special services to substations for broadcast or conference, e.g. multicast in combination with wireless systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/023Limited or focused flooding to selected areas of a network

Abstract

Procédé de dissémination de données dans un réseau maillé comprenant une pluralité de nœuds interconnectés, ledit procédé comprenant les étapes suivantes exécutées pour chaque nœud source destiné à communiquer avec au moins un nœud cible : - Construire un groupe de diffusion restreint comprenant au moins le nœud source et un ensemble de nœuds permettant de relier le nœud source audit au moins un nœud cible, ledit groupe de diffusion présentant un niveau d'extension variable du nombre de nœuds qu'il comprend, - Pour communiquer des données entre le nœud source et ledit au moins un nœud cible, diffuser les données au sein du groupe de diffusion restreint.

Description

PROCEDE DE DISSEMINATION DE DONNEES DANS UN RESEAU MAILLE
La présente invention concerne un procédé de dissémination de données dans un réseau maillé.
Les réseaux maillés, ou réseaux « mesh >> en anglais, comportent un ensemble de nœuds qui communiquent entre eux par l’intermédiaire d’autres nœuds. Les liens de communication entre deux nœuds d’un réseau maillé peuvent être des liens radios ou des liens filaires ou plus généralement tout type de lien de communication. Autrement dit, dans un réseau maillé, chaque nœud n’est pas obligatoirement en portée directe d’un autre nœud du réseau. Ainsi, il est nécessaire d’établir des mécanismes particuliers pour gérer les communications entre un nœud source et un nœud cible via un ou plusieurs nœuds relais.
Il existe principalement deux classes de protocoles pour l’acheminement de données au sein d’un réseau maillé.
La première classe de protocole concerne les algorithmes de routage qui sont basés sur l’emploi de tables de routage. Il existe notamment des algorithmes de routage unicast pour l’établissement de communications entre deux nœuds et des algorithmes de routage multicast pour rétablissement de communications entre un nœud source et plusieurs nœuds destinataires.
Un exemple de protocole de routage unicast est le protocole RPL standardisé par l’organisme IETF sous le numéro RFC 6550 (« IPv6 routing protocol for low-power and lossy networks »). Un tel protocole permet d’établir un chemin entre deux nœuds distants de telle sorte que les paquets peuvent être routés dans une direction ou dans la direction inverse. Le chemin peut être mis à jour en cas de modification du réseau mais, à un instant donné, le chemin est unique.
Le protocole RPL peut également être utilisé pour établir un groupe multicast. Dans un tel groupe, un nœud source diffuse des données au sein du groupe multicast à destination de plusieurs nœuds cibles. Des mises à jour de l’arbre de routage multicast peuvent être opérées en réponse à des modifications du réseau (par exemple, un nouveau nœud entrant dans le réseau ou sortant du réseau). Le routage multicast permet de réduire la quantité de paquets de données transmis dans le réseau en comparaison au routage unicast.
Le routage unicast et le routage multicast impliquent pour chaque nœud routeur, l’établissement et le maintien d’une table de routage qui contient une indication du ou des nœuds voisins vers lequel (lesquels) transmettre un paquet de données à destination d’un nœud cible ou de plusieurs nœuds cibles appartenant à un groupe multicast.
Un avantage des mécanismes utilisant des tables de routage est leur efficacité car seuls les nœuds appartenant au chemin de routage préétabli sont sollicités pour acheminer les paquets de données vers leur destination. Autrement dit, le nombre de nœuds et de liens de communication exploités pour une transmission est optimisé. L’avantage de cette approche est une gestion efficace des ressources de communication ce qui est important pour des liens de communication radio à débit contraint. A l’inverse, un inconvénient de ces mécanismes à base de tables de routage est un manque de fiabilité en cas de dégradation des conditions de transmission d’un ou plusieurs liens de communication entre un ou plusieurs nœuds impliqués dans un chemin de routage. Si un lien est défectueux, cela signifie que les paquets de données ne seront pas transmis correctement à leur destination ou peuvent être perdus lors de la transmission. Pour corriger ce problème, une solution consiste à implémenter un mécanisme de retransmission des paquets qui permet de détecter une rupture de transmission sur le chemin de routage et de déclencher des retransmissions de ce paquet sur le même chemin jusqu’à ce qu’une confirmation de la bonne réception du paquet soit reçue via le chemin inverse.
La seconde classe de protocoles concerne les algorithmes de diffusion ou de dissémination de données. Le plus souvent, ces algorithmes visent à une diffusion généralisée des données vers tous les nœuds du réseau. Typiquement, un nœud du réseau qui reçoit un paquet marqué pour diffusion est amené à retransmettre ce paquet à destination de ses propres voisins une ou plusieurs fois, en respectant des attentes aléatoires pour éviter les phénomènes de collision de paquets dans le réseau. Il n’y a pas de notion d’arbre de diffusion préétabli. Les algorithmes de diffusion ne requièrent pas de table de routage au niveau des nœuds du réseau.
Un avantage des algorithmes de diffusion est leur fiabilité, car si un lien de communication est dégradé au sein du réseau cela aura une incidence limitée sur l’acheminement des données à leur destination. A l’inverse, un inconvénient des algorithmes de diffusion est qu’ils peuvent engendrer une sur-utilisation des ressources de transmission du réseau car tous les liens du réseau sont utilisés pour chaque paquet de données à transmettre.
Un problème à résoudre consiste à mettre au point un mécanisme d’acheminement de données dans un réseau maillé qui soit à la fois plus fiable que les protocoles basés sur l’utilisation de tables de routage et plus efficace que les mécanismes de diffusion généralisée, notamment en termes de consommation optimisée de la bande passante réseau. L’état de l’art comporte différents algorithmes dédiés à l’acheminement de données au sein d’un réseau maillé. L’algorithme de diffusion MPL (« Multicast Protocol for Low-Power and Lossy Networks ») défini par l’organisme IETF sous le numéro RFC 7731 supporte la notion de « périmètre » (traduction de l’anglais « scope ») qui permet de définir des domaines de diffusion réduits par rapport au domaine de diffusion général. Ainsi, il est possible, avec cet algorithme, de construire un domaine de diffusion avec les seuls nœuds qui supportent une certaine propriété. Si l’on a par exemple un réseau maillé avec des nœuds interopérables issus de deux constructeurs différents A et B, il est possible de définir un périmètre de diffusion « A >> et un périmètre de diffusion « B >>. Cela est utile en particulier si l’on veut faire une mise à jour logicielle qui ne concerne que les nœuds fournis par le constructeur « B >>. Dans ce cas, chaque nœud doit être préconfiguré avec les périmètres de diffusion qui le concernent, lui permettant alors de savoir s’il doit ou non participer à la diffusion d’un paquet associé à un périmètre particulier. Le protocole MPL ne précise pas comment configurer cette information sur les nœuds du réseau. En particulier aucun procédé n’existe pour définir un « périmètre >> de diffusion associé à un nœud destinataire (cas d’une communication unicast) ou à un ensemble de nœuds destinataires (cas d’une communication multicast).
Une amélioration de l’algorithme de diffusion MPL, nommée SMRF (Stateless Multicast Forwarding with RPL in 6LowPAN Sensor Networks) a été décrite dans [George Oikonomou, lain Phillips, « Stateless Multicast Forwarding with RPL in 6LowPAN Sensor Networks >>, IEEE PerCom 2012, pp. 272-277] afin de permettre la diffusion MPL sur un arbre RPL préétabli. En particulier, l’algorithme SMRF réutilise le principe d’adhésion au groupe multicast tel que défini dans le protocole RPL (tout nœud désirant joindre un groupe multicast envoie une requête spécifique nommée DAO traversant tout le chemin ascendant jusqu’au nœud racine). Par contre l’algorithme SMRF introduit une condition sur le transfert des paquets multicast par un nœud routeur, à savoir : tout routeur multicast dans l’arbre RPL ne transmet un paquet multicast reçu que si ce denier a été envoyé par le parent préféré dudit nœud. L’algorithme SMRF permet ainsi de limiter la portée de la diffusion MPL aux nœuds ayant préalablement souscrit au groupe multicast. Cependant, l’algorithme SMRF ne définit pas des domaines de diffusion flexibles garantissant un routage multicast robuste. En effet, si un nœud perd la connectivité avec son parent, il ne pourra alors plus recevoir les paquets multicast. L’algorithme SMRF ne permet pas non plus de définir un domaine de diffusion (qui plus est flexible) associé à un nœud destinataire (dans le cas d’une communication unicast), et ne permet donc pas d’améliorer la robustesse / fiabilité du routage des paquets dans le cas d’une communication unicast.
Le modèle de routage multi-chemin (multi-path routing) résumé dans [Kewei Sha et al. «Multipath Routing Techniques in Wireless Sensor Networks: A Survey >>, Wireless Personal Communications, 2013, Volume 70, Issue 2, pp. 807-829] peut être utilisé pour accroître la fiabilité du routage unicast de paquets de données adressés à un destinataire en permettant le routage par plusieurs chemins disjoints en parallèle. Toutefois cette approche reste limitée en termes de robustesse puisqu’elle offre un degré de diversité moindre : si chacun des chemins est impacté par un lien dégradé (voire une perte de connectivité) alors la transmission de paquets de données ne pourra pas être assurée de manière fiable malgré la présence de ces différents chemins. Par ailleurs, le modèle de routage multi-chemin ne permet pas d’améliorer la fiabilité des communications multicast. Par ailleurs, le même argument évoqué ci-dessus dans le cas du multi-chemin unicast est applicable au cas multi-chemin multicast : si chaque chemin possible vers un nœud du groupe multicast est affecté, la transmission vers ce nœud est interrompue, alors qu’elle pourrait être maintenue dans une approche de diffusion.
Une approche multi-chemin pour les communications multicast (multi-arbre) a été définie dans [Huayi Wu et al., « Bandwidth Guaranteed Multi-tree Multicast Routing in Wireless Ad Hoc Networks >>. APWeb Workshops 2006, pp. 157-166 ]. Cette méthode peut améliorer la fiabilité des communications multicast en utilisant simultanément plusieurs chemins et/ou sous-arbres possibles pour diffuser un paquet de données à un groupe de diffusion multicast. Ainsi, un nœud impliqué dans le routage doit avoir une table de routage avec plusieurs entrées (plusieurs sous-arbres) par groupe de diffusion multicast. L’invention propose une méthode de dissémination de données qui présente des performances améliorées en termes d’efficacité d’exploitation des ressources de transmission au sein d’un réseau maillé par rapport à une méthode de diffusion générale de type « broadcast ». L’invention permet également d’adresser des communications de type unicast ou multicast en améliorant la fiabilité des transmissions par rapport à des mécanismes à base de tables de routage.
Le procédé selon l’invention est paramétrable en ce sens qu’il utilise un groupe de diffusion restreint qui peut être plus ou moins étendu en fonction d’informations de qualité de service relatives au réseau. L’invention s’applique à tout type de réseau maillé dans lequel plusieurs nœuds, qui peuvent être mobiles ou fixes, sont interconnectés par le biais de liaisons de transmission qui peuvent être des liaisons radio ou des liaisons filaires. Le terme « nœud » est employé ici pour désigner un élément d’un réseau maillé qui peut prendre la forme de tout équipement ou dispositif comprenant des moyens pour communiquer avec d’autres dispositifs identiques au sein d’un réseau. Un tel dispositif peut prendre la forme d’un ordinateur, d’un téléphone intelligent, d’un véhicule, d’un appareil de mesure ou de tout autre dispositif apte ou adapté pour communiquer et transmettre des données. L’invention a pour objet un procédé de dissémination de données dans un réseau maillé comprenant une pluralité de nœuds interconnectés, ledit procédé comprenant les étapes suivantes exécutées pour chaque nœud source destiné à communiquer avec au moins un nœud cible : - Construire un groupe de diffusion restreint comprenant au moins le nœud source et un ensemble de nœuds permettant de relier le nœud source audit au moins un nœud cible, ledit groupe de diffusion présentant un niveau d’extension variable du nombre de nœuds qu’il comprend, - Pour communiquer des données entre le nœud source et ledit au moins un nœud cible, diffuser les données au sein du groupe de diffusion restreint.
Selon un aspect particulier de l’invention, un niveau d’extension du groupe de diffusion comprend l’ensemble des nœuds aptes à communiquer directement avec les nœuds du groupe de diffusion de niveau d’extension inférieur.
Selon un aspect particulier de l’invention, la construction du groupe de diffusion restreint comprend : - la transmission, par ledit au moins un nœud cible, d’un message de construction de groupe de diffusion à destination du nœud source via au moins un nœud relais, ledit message comprenant un identifiant du niveau d’extension du groupe de diffusion, - la diffusion, par un nœud relais à ses nœuds voisins aptes à communiquer directement avec le nœud relais, d’un message d’extension du groupe de diffusion, en fonction de la valeur de l’identifiant du niveau d’extension, - lorsqu’un message de construction de groupe de diffusion ou un message d’extension de groupe est reçu par un nœud relais, l’enregistrement, par ce nœud relais, d’une information d’appartenance au groupe de diffusion.
Selon un aspect particulier de l’invention, la construction du groupe de diffusion restreint comprend : - lorsqu’un message de construction de groupe de diffusion ou un message d’extension de groupe est reçu par un nœud relais et si l’identifiant du niveau d’extension du groupe de diffusion est non nul, - décrémenter la valeur de l’identifiant du niveau d’extension du groupe de diffusion, générer et transmettre un message d’extension de groupe, comprenant la valeur modifiée de l’identifiant du niveau d’extension, à tous les nœuds voisins aptes à communiquer directement avec le nœud relais.
Selon un aspect particulier de l’invention, la transmission d’un message de construction de groupe de diffusion est effectuée à l’aide de tables de routage.
Selon un aspect particulier de l’invention, un nœud source est destiné à communiquer avec un nœud cible selon une communication unicast et le message de construction de groupe de diffusion comprend au moins un identifiant du nœud cible.
Selon un aspect particulier de l’invention, un nœud source est destiné à communiquer avec plusieurs nœuds cibles selon une communication multicast et le message de construction de groupe de diffusion comprend au moins un identifiant du groupe multicast.
Selon un aspect particulier de l’invention, la construction du groupe de diffusion restreint comprend, pour chaque nœud cible, l’attribution, par le nœud source, d’un groupe de diffusion existant audit nœud cible.
Selon un aspect particulier de l’invention, la construction du groupe de diffusion restreint comprend : - la construction, par le nœud source ou par un équipement externe au réseau et directement reliée au nœud source, d’un groupe de diffusion ayant un niveau d’extension donné, pour au moins un nœud cible, - la notification, par le nœud source ou l’équipement externe, à chaque nœud du groupe de diffusion construit, de son appartenance audit groupe de diffusion.
Selon un aspect particulier de l’invention, la construction d’un groupe de diffusion est initiée par le nœud source ou l’équipement externe, à la réception d’un message d’inscription dans le réseau d’un nœud cible, ledit message d’inscription étant relayé du nœud cible vers le nœud source par l’intermédiaire d’un nœud voisin du nœud cible.
Dans un mode de réalisation particulier, le procédé selon l’invention comprend en outre une étape de mise à jour du niveau d’extension du groupe de diffusion.
Selon un aspect particulier de l’invention, la mise à jour du niveau d’extension du groupe de diffusion est effectuée en fonction d’une information sur l’état des liens de communication entre nœuds appartenant au groupe de diffusion.
Dans un mode de réalisation particulier, le procédé selon l’invention comprend en outre une étape d’acquittement des données diffusées dans un groupe de diffusion restreint comprenant : - Lorsqu’un nœud cible reçoit des données diffusées par un nœud source, la diffusion, par ledit nœud cible, d’un message d’acquittement dans son groupe de diffusion.
Selon un aspect particulier de l’invention, la diffusion de données dans un groupe de diffusion comprend une réinitialisation de la diffusion des données par le nœud source tant qu’il ne reçoit pas un message d’acquittement.
Selon un aspect particulier de l’invention, lorsqu’un nœud reçoit un message d’acquittement, il arrête la diffusion des données acquittées.
Selon un aspect particulier de l’invention, l’information sur l’état des liens de communication entre nœuds appartenant au groupe de diffusion est obtenue à partir de l’analyse des messages d’acquittement reçus par le nœud source. L’invention a également pour objet un programme d'ordinateur comportant des instructions pour l'exécution du procédé de dissémination de données selon l’invention, lorsque le programme est exécuté par un processeur ainsi qu’un support d'enregistrement lisible par un processeur sur lequel est enregistré un programme comportant des instructions pour l'exécution du procédé de dissémination de données selon l’invention, lorsque le programme est exécuté par un processeur. D’autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description qui suit en relation aux dessins annexés qui représentent : - La figure 1, un exemple de construction d’un groupe de diffusion pour une communication unicast dans un réseau maillé, - La figure 2, un exemple de transmission de données dans un groupe de diffusion étendu, - La figure 3, un exemple de construction d’un groupe de diffusion pour une communication multicast dans un réseau maillé, - La figure 4, un diagramme illustrant la construction d’un groupe de diffusion selon un premier mode de réalisation de l’invention implémentant une construction distribuée, - La figure 5, un diagramme illustrant la construction d’un groupe de diffusion selon un second mode de réalisation de l’invention implémentant une construction centralisée. L’invention concerne un procédé de dissémination de données dans un réseau maillé et introduit la notion de groupe de diffusion au sein duquel les données sont transmises à l’aide d’un mécanisme de diffusion.
On défini au préalable la notion de mécanisme de diffusion qui est utilisée par l’invention.
Un algorithme de routage est basé sur un mécanisme de diffusion, si les opérations de routage élémentaires sont basées sur un mécanisme dit de « broadcast >> local implémenté généralement au niveau de la couche protocolaire MAC (Medium Access Layer) et non pas sur un mécanisme de communication locale unicast. Par opération de routage élémentaire, on entend ici, une opération de routage entre deux nœuds voisins du réseau, autrement dit une opération bond par bond par opposition à une opération de routage multi-bonds qui consiste à transmettre des données entre deux nœuds distants par l’intermédiaire d’autres nœuds du réseau.
Un algorithme de routage qui n’est pas basé sur un mécanisme de diffusion repose, au contraire, sur des mécanismes de communication locale unicast, ainsi que sur l'usage de tables de routage. Ici encore, ces mécanismes sont généralement implémentés au niveau de la couche protocolaire MAC.
Lors d'une opération dite de « broadcast » local, un nœud transmet un paquet sans l'adresser en particulier à l'un de ses voisins.
Au contraire, lors d'une communication locale unicast, lorsqu'un nœud transmet un paquet, il identifie le voisin auquel ce paquet est destiné, par exemple en introduisant dans les entêtes MAC du paquet un champ adresse qui identifie ce voisin. En pratique, ce paquet est aussi reçu par les autres voisins, mais ceux ci l'ignorent, car l'adresse MAC unicast qu'il contient ne leur correspond pas.
On décrit à présent le procédé objet de l’invention.
La figure 1 schématise un exemple de réseau maillé comprenant 60 nœuds, chaque nœud étant identifié par un numéro. Chaque nœud représenté est susceptible de communiquer par voie radio avec des nœuds voisins situés à l’intérieur d’un cercle, centré sur le nœud et de rayon égal à la portée de la liaison radio. On considère le cas d’une communication unicast entre le nœud 0 et le nœud 46. L’invention consiste, notamment, à définir un groupe de diffusion restreint contenant un ensemble de nœuds permettant de relier le nœud 0 et le nœud 46 et dans lequel est mis en œuvre un mécanisme de diffusion de données.
Selon un premier mode de réalisation de l’invention, un groupe de diffusion est associé à une paire de nœuds (0 et 46 dans l’exemple de la figure 1) souhaitant établir une communication unicast entre eux et présente un niveau d’extension variable. Autrement dit, le nombre de nœuds que contient le groupe de diffusion peut varier.
Le premier niveau d’un groupe de diffusion correspond au groupe minimal et contient les nœuds permettant d’établir un chemin entre le nœud source et le nœud cible de la liaison unicast. Ce chemin peut être déterminé, par exemple, à l’aide d’un algorithme de routage classique exploitant des tables de routage. Dans l’exemple de la figure 2, le groupe de diffusion minimal pour la liaison unicast entre les nœuds 0 et 46 contient le nœud source 0 et les nœuds relais 2,12,24 et 47. A noter que le nœud cible 46 ne fait pas partie du groupe de diffusion car le nœud cible 46 n’a pas besoin de diffuser les paquets de données reçus à d’autres nœuds. Le choix des nœuds qui composent le groupe de diffusion minimal peut être fait en fonction de métriques permettant de différencier les routes ou chemins entre deux nœuds au sein du réseau maillé. Une métrique peut prendre en compte le nombre de nœuds intermédiaires pour relier un nœud source et un nœud cible mais aussi des informations sur les caractéristiques des liens de transmission entre paires de nœuds telles que la qualité du lien ou le niveau de réception d’un signal.
Une fois le groupe de diffusion créé, un mécanisme de diffusion limité à ce groupe est mis en œuvre. Par exemple, pour une transmission du nœud 0 vers le nœud 46, les paquets de données sont diffusés à partir du nœud source 0 à travers tous les nœuds du groupe de diffusion associé à la liaison unicast entre le nœud source 0 et le nœud cible 46. Lorsqu’un nœud reçoit un message diffusé par un nœud voisin, il analyse le message pour vérifier à quel groupe de diffusion il est destiné. Si le nœud appartient au groupe de diffusion associé au message reçu, il retransmet ce message vers ses voisins, sinon il ignore le message. Le message peut contenir un identifiant du groupe de diffusion ou un identifiant du nœud source et du nœud cible associés au groupe de diffusion. Lors de la création d’un groupe de diffusion, un nœud enregistre son appartenance à un ou plusieurs groupes de diffusion.
Les nœuds du groupe de diffusion sont notifiés de leur statut de membre de ce groupe de façon à ce qu’ils prennent en charge la diffusion des paquets à destination du nœud 46. Plus généralement, chaque nœud dans le réseau est « conscient >> de son appartenance au groupe de diffusion unicast associé à chaque autre nœud ou paire de nœuds dans le réseau.
Si l’on se contente d’utiliser le groupe de diffusion minimal, il n’y a pas d’amélioration particulière en matière de résilience vis-à-vis des liens temporairement défectueux au sein du groupe de diffusion. En effet, on peut s’attendre à des performances équivalentes à celle de l’algorithme de routage classique qui utiliserait une couche MAC avec retransmission. Le principe de dissémination intègre naturellement un concept de retransmission qui n’est pas intégré dans une solution de routage unicast classique, mais qui peut toujours être intégré au niveau de la couche MAC.
Si l’on compare donc la solution connue de routage unicast associée à une retransmission au niveau de la couche MAC, et la solution de routage unicast basée sur un principe de diffusion selon l’invention et utilisant le groupe de diffusion minimal, on peut s’attendre à des performances équivalentes en matière de résistance aux pertes de paquets. Mais ces deux solutions sont néanmoins différentes.
Dans le cas du routage unicast de l’art antérieur, un nœud impliqué dans le routage doit avoir été configuré avec une table de routage, qui lui permet de savoir auquel de ses voisins il doit transmettre un paquet qu’il vient de recevoir.
Dans le cas de l’invention, les nœuds du groupe de diffusion minimal n’ont pas besoin de cette notion de table de routage. Il leur suffit de savoir qu’ils participent à la diffusion pour le compte du nœud cible. Si c’est bien le cas, les paquets reçus à destination du nœud cible seront retransmis, selon des contraintes de délai qui sont propres à l’algorithme de diffusion utilisé.
Pour améliorer la fiabilité en termes de résistance aux liens défectueux, l’invention permet une extension du groupe de diffusion minimal d’un ou plusieurs niveaux.
Si l’on fait encore référence aux communications unicast vers le nœud 46, le groupe de diffusion peut être étendu d’un premier niveau en intégrant les nœuds 1,3,4, 11, 13, 25, 45. Il s’agit de l’ensemble des nœuds qui sont en couverture directe de l’un des nœuds du groupe de diffusion minimal. Par couverture directe, on entend une transmission directe entre deux nœuds voisins. Dans le cas de communications par voie radio, la couverture d’un nœud est définie par le périmètre autour de ce nœud dans lequel il est susceptible de communiquer avec un autre nœud.
Le groupe de diffusion étendu au premier niveau pour le nœud 46 est donc l’ensemble des nœuds {47, 24, 12, 2, 0, 1,3, 4, 11, 13, 25, 45}.
Sur la figure 2, on a représenté le groupe de diffusion étendu au premier niveau pour le nœud 46. Si l’on imagine que le lien entre les nœuds 12 et 24 est temporairement défectueux, on voit sur la figure 2 que le principe de diffusion mis en œuvre par l’invention permet néanmoins d’acheminer les paquets de données émis par le nœud source 0 vers le nœud cible 46. En effet, le nœud 11 appartenant au groupe de diffusion étendu, les paquets diffusés peuvent transiter par ce nœud 11 pour être ensuite acheminés vers le nœud 24. Ainsi, l’utilisation d’un groupe de diffusion étendu permet de pallier aux inconvénients du manque de fiabilité des mécanismes à base de tables de routage tout en limitant la diffusion des données à un groupe de nœuds restreints dans le réseau.
De façon similaire, un groupe de diffusion étendu au second niveau peut être construit en ajoutant au groupe de diffusion étendu au premier niveau, tous les nœuds en couverture directe d’un nœud de ce groupe. L’extension au second niveau conduit à inclure dans le groupe de diffusion représenté à la figure 2, les nœuds 5,7,8,10,14,15,16,23,26 et 50.
De façon générale, le principe d’extension du groupe de diffusion peut être étendu de façon récursive. Plus le groupe de diffusion est étendu, meilleure sera la fiabilité du mécanisme vis-à-vis des liens défectueux et des pertes de paquets mais moins bonne sera l’efficacité de l’utilisation des ressources de transmission du réseau, notamment des ressources de calcul et de bande passante. L’invention permet donc de construire un groupe de diffusion présentant un niveau d’extension variable qui est paramétrable en fonction d’informations sur l’état du réseau.
La figure 3 représente, sur le même exemple de réseau maillé, un exemple de construction d’un groupe de diffusion pour une communication multicast entre un nœud source 0 et plusieurs nœuds cibles 18,34,61,62.
De la même façon que pour une communication unicast, un groupe de diffusion minimal peut être construit pour cette communication multicast. Le groupe de diffusion minimal contient les nœuds 0,1,4,7,15,16,17,19,20,28,30,31,33.
Le groupe de diffusion minimal peut être étendu, de façon récursive, en ajoutant dans ce groupe, les nœuds en couverture directe de tous les nœuds du groupe de diffusion. Ainsi, le groupe de diffusion de premier niveau d’extension contient en outre les nœuds 8,21,38,37,2,3,5,6,35,99,29,27,57,32. Le groupe de diffusion de second niveau d’extension contient en outre les nœuds 9,22,39,36,12,13,14,56,58,59,60.
En synthèse, le procédé selon l’invention consiste, pour chaque communication unicast ou multicast, à construire un groupe de diffusion restreint présentant un niveau d’extension variable puis à mettre en œuvre un mécanisme de diffusion de données au sein de ce groupe de diffusion.
Lorsqu’un paquet de données est reçu par un nœud, celui-ci vérifie s’il fait partie du groupe de diffusion associé au nœud destinataire du paquet et, si c’est le cas, retransmet ce paquet à ses voisins, sinon il ignore le paquet.
Le paramétrage du niveau d’extension d’un groupe de diffusion peut être réalisé en fonction de la connaissance de l’état du réseau. Par exemple, si des paquets de données sont perdus ou sont acheminés avec un temps de transmission trop important, il peut être souhaitable d’étendre le groupe de diffusion. A l’inverse, si l’acheminement des données se fait de façon fiable et rapide, la taille du groupe de diffusion peut être réduite.
La mise à jour du niveau d’extension du groupe de diffusion peut être effectuée à tout moment, par le concepteur ou en fonction d’informations remontées par le biais de mécanismes externes à l’invention ou par le biais d’un mécanisme d’acquittement de données propre à l’invention qui est décrit plus loin.
On décrit à présent, à l’appui de la figure 4, un premier mode de réalisation de la construction d’un groupe de diffusion, selon l’invention. Dans ce premier mode, la construction d’un groupe de diffusion est réalisée de façon distribuée au sein du réseau.
Dans un premier temps, on considère une communication unicast entre un nœud cible Nc et un nœud source Ns.
Le processus de construction d’un groupe de diffusion est initié par un nœud cible initiateur Nc qui souhaite bénéficier d’un groupe de diffusion pour une communication unicast avec le nœud source Ns. Le nœud cible Nc génère un message de construction de groupe de diffusion DGR qui comprend au moins un identifiant du nœud cible Nc et du nœud source Ns. Le nœud cible Nc transmet ensuite ce message vers un nœud voisin Np. Le message DGR est relayé de nœud en nœud jusqu’au nœud source Ns en parcourant un chemin prédéterminé entre le nœud cible Nc et le nœud source Ns. Le chemin reliant ces deux nœuds peut être déterminé à l’aide d’un algorithme de routage unicast, par exemple l’algorithme RPL ou un algorithme de routage équivalent. Lorsqu’un nœud relais Np reçoit un message DGR, il enregistre une information d’appartenance au groupe de diffusion associé à une communication unicast entre le nœud cible Nc et le nœud source Ns. Lorsque cette étape est achevée, le groupe de diffusion minimal est construit.
Comme on l’a évoqué précédemment, le groupe de diffusion peut être étendu. Pour cela, le message de construction de groupe de diffusion DGR comprend en outre un identifiant DT du niveau d’extension du groupe de diffusion. Cet identifiant est initialisé à une valeur prédéterminée lors de la création du message DGR par le nœud initiateur Nc. L’identifiant DT peut, par exemple, prendre des valeurs entières positives ou nulles. Selon cet exemple, une valeur nulle de l’identifiant DT correspond à un groupe de diffusion minimal, tandis qu’une valeur n strictement positive de l’identifiant DT correspond à un groupe étendu au niveau n.
Lorsqu’un nœud relai Np du groupe de diffusion minimal reçoit un message DGR, il analyse l’identifiant DT contenu dans ce message. Si l’identifiant DT présente une valeur nulle, le message DGR est transmis au nœud relais suivant sur le chemin de routage préétabli constituant le groupe de diffusion minimal. La transmission du message DGR est effectuée en s’appuyant sur un algorithme de routage unicast comme expliqué plus haut.
Si au contraire, l’identifiant DT présente une valeur supérieure à zéro, alors tous les nœuds relais appartenant au groupe de diffusion minimal génèrent un second message DGER d’extension du groupe de diffusion qui contient également au moins un identifiant du nœud cible Nc et du nœud source Ns, et un identifiant DT du niveau d’extension du groupe de diffusion. La valeur de l’identifiant DT dans le message d’extension DGER est décrémentée d’une unité par rapport à la valeur de l’identifiant DT lue par le nœud relais dans le message DGR. Ensuite, chaque nœud relais diffuse le message DGER, via un algorithme de diffusion généralisée de type «broadcast» à tous ses nœuds voisins Nvi, NV2, autrement dit, tous les nœuds qui sont en portée directe du nœud relais. Lorsqu’un nœud voisin
Nvi, NV2 reçoit un message d’extension DGER, il enregistre une information d’appartenance au groupe de diffusion étendu puis il décrémente d’une unité la valeur de l’identifiant DT dans le message d’extension DGER. Si la valeur obtenue est nulle, le processus d’extension du groupe de diffusion s’arrête. Si au contraire, la valeur obtenue est strictement positive, le nœud voisin Nvi, NV2 diffuse à nouveau un message DGER contenant la nouvelle valeur d’identifiant DT à tous ses nœuds voisins NV3, NV4, en portée directe.
De cette façon, il est possible de construire un groupe de diffusion plus ou moins étendu en s’appuyant sur un routage unicast et une diffusion généralisée de type « broadcast >>.
Sans sortir du cadre de l’invention, le procédé d’extension du groupe de diffusion décrit ci-dessus peut être modifié en considérant des valeurs négatives ou nulles pour l’identifiant DT et une incrémentation des valeurs à chaque niveau d’extension au lieu d’une décrémentation.
De façon générale, les messages d’extension DGER qui sont diffusés doivent comprendre une information permettant de déduire les niveaux d’extension supérieurs au niveau d’extension courant du groupe de diffusion pour un nœud donné.
Le nœud Nc à l’origine de la requête de construction d’un groupe de diffusion DGR peut à tout moment initier une demande de modification du niveau d’extension du groupe de diffusion.
Le groupe de diffusion peut être modifié en ajoutant un ou plusieurs niveaux d’extension. Pour cela, le nœud initiateur Nc peut utiliser le groupe de diffusion existant pour diffuser un nouveau message de construction DGR comprenant un identifiant DT de niveau d’extension supérieur à celui utilisé pour la construction du groupe de diffusion.
Le groupe de diffusion peut aussi être modifié en supprimant un ou plusieurs niveaux d’extension. Une première solution pour réduire la taille d’un groupe de diffusion consiste à d’abord supprimer le groupe de diffusion existant puis à construire un nouveau groupe de diffusion avec un niveau d’extension DT inférieur.
Pour supprimer un groupe de diffusion, le nœud initiateur Nc peut générer un message de suppression de groupe DGRR qui sera diffusé au sein du groupe de diffusion existant. Ce message DGRR contient un identifiant du groupe de diffusion à supprimer. A réception de ce message, les nœuds appartenant au groupe de diffusion suppriment l’information d’appartenance à ce groupe.
Une seconde solution pour réduire la taille d’un groupe de diffusion consiste à générer un message DGRR contenant à la fois le niveau d’extension DT actuel du groupe de diffusion et le niveau d’extension DT’ futur souhaité du groupe de diffusion et à diffuser ce message au sein du groupe de diffusion. Ce message DGRR est transmis aux nœuds du groupe de diffusion minimal via l’algorithme de routage unicast. A réception de ce message DGRR, chaque nœud du groupe de diffusion minimal génère un message DGRER d’extension à destination de ses voisins en portée directe dans lequel à la fois le niveau d’extension courant DT et le nouveau niveau d’extension DT’ sont décrémentés. Lorsqu’un nœud reçoit un message DGRER contenant un niveau d’extension futur DT’ qui présente une valeur nulle, il supprime l’information d’appartenance au groupe de diffusion puis retransmet un message DGRER à ses voisins avec un niveau d’extension courant DT décrémenté et un niveau d’extension futur DT’ nul. Le processus se poursuit jusqu’à ce que la valeur du niveau d’extension courant DT soit également nulle. Un avantage de cette variante est qu’elle permet de ne supprimer que les nœuds périphériques qui appartiennent au groupe de diffusion courant mais que l’on souhaite supprimer du groupe de diffusion réduit.
On décrit à présent le principe de construction d’un groupe de diffusion, toujours selon le premier mode de réalisation relatif à une mise en œuvre distribuée, mais cette fois pour une communication au sein d’un groupe multicast.
Pour une communication multicast d’un nœud source vers un groupe de nœuds destination, la construction d’un groupe de diffusion associé est initiée par tous les nœuds qui souhaitent recevoir les messages multicast émis par le nœud source. Chacun de ces nœuds met en œuvre la procédure de construction de groupe de diffusion définie pour le cas d’une communication unicast. Une différence est qu’un message DGR contient cette fois un identifiant du groupe multicast. Une contrainte supplémentaire est que le niveau d’extension DT du groupe de diffusion doit être initialisé à une valeur identique pour tous les nœuds cibles du groupe multicast qui initient une demande de construction de groupe de diffusion.
La gestion de l’harmonisation des valeurs de l’identifiant de niveau d’extension DT ainsi que la mise à jour du niveau d’extension peut être centralisée dans le nœud source ou nœud racine du groupe multicast.
La figure 5 schématise, sur un diagramme, les étapes de mise en œuvre d’un second mode de réalisation de la construction d’un groupe de diffusion, selon l’invention. Dans ce second mode, la construction d’un groupe de diffusion est réalisée de façon centralisée par un nœud particulier du réseau qu’on appelle par la suite nœud racine. Alternativement, la construction du groupe de diffusion peut aussi être réalisée par un équipement extérieur au réseau mais apte à établir un lien de communication direct avec le nœud racine. L’équipement extérieur au réseau peut être par exemple une machine située dans le réseau Internet qui est connecté au réseau maillé par l’intermédiaire du nœud racine.
Avantageusement, on considère dans ce second mode de réalisation, des communications entre le nœud racine et un ou plusieurs nœuds entrants dans le réseau.
Dans le cas d’une solution centralisée, le réseau maillé peut être construit étape par étape à partir d’un nœud racine NR. Le nœud racine NR peut être assisté par une entité intelligente E| qui dirige la construction du réseau, et qui détermine les groupes de diffusion associés à chacun des nœuds dans le réseau. L’entité intelligente Ei peut être co-localisée avec le nœud racine NR ou peut être distincte du nœud racine et située à l’extérieur du réseau maillé.
Lorsqu’un nouveau nœud Nc est mis en service et doit être intégré au sein du réseau maillé, ce nouveau nœud Ne doit être autorisé à communiquer avec l’un de ses voisins Nv déjà intégré au réseau. Le nœud voisin Nv a été précédemment intégré au réseau et dispose déjà de son propre groupe de diffusion. Le nœud voisin Nv communique avec le nœud racine NR pour lui présenter les caractéristiques du nouveau nœud candidat Ne. Les caractéristiques incluent au minimum un identifiant pour le nouveau nœud Nc et l’indication des nœuds voisins déjà intégrés au réseau que ce nouveau nœud Nc a en visibilité directe, autrement dit avec lesquels il peut communiquer directement. Ainsi, un message d’inscription du nouveau nœud candidat Ne est relayé par le nœud voisin Nv jusqu’au nœud racine Ne et à l’entité intelligente E| associée. L’entité intelligente E| a une connaissance de la topologie du réseau maillé et connaît en particulier les relations de voisinage entre tous les nœuds du réseau. Sur cette base, l’entité intelligente Ei détermine un groupe de diffusion qu’elle associe au nouveau nœud entrant Nc dans le réseau. Pour la définition du groupe de diffusion, l’entité intelligente E| peut considérer une valeur de niveau d’extension DT cible. Lorsque le groupe de diffusion associé au nouveau nœud Ne est déterminé, un message MC de création du groupe de diffusion est communiqué à tous les nœuds NG membres du groupe de diffusion pour ce nouveau nœud Nc, pour qu’ils sachent qu’ils font désormais partie de ce groupe. Ce message inclut l’identifiant du nouveau nœud Nc. Le message MC de création du groupe de diffusion est diffusé en utilisant les groupes de diffusion associés aux nœuds
Nq membres du nouveau groupe de diffusion. Une solution possible, pour transmettre les messages MC de création d’un nouveau groupe de diffusion, est d’utiliser les groupes de diffusion minimaux des nœuds destinataires des messages MC. De cette façon, on limite la quantité de messages MC de signalisation au sein du réseau. Une autre solution consiste à utiliser les groupes de diffusion complets, c'est-à-dire les groupes de diffusion non minimaux.
Un dernier message de confirmation MCI auprès du nouveau nœud Ne est ensuite envoyé par le nœud racine Nr de façon à confirmer l’intégration de ce nouveau nœud Ne au sein du réseau maillé ainsi que le caractère opérationnel de son groupe de diffusion. A la différence de la solution distribuée utilisée pour le premier mode de réalisation de l’invention, la solution centralisée ne fait aucun usage d’une solution de routage classique préalablement établie. Autrement dit, elle ne nécessite pas de tables de routage dans chaque nœud du réseau.
Le second mode de réalisation de la construction d’un groupe de diffusion fonctionne à l’identique pour le cas d’une communication multicast. On suppose dans ce cas, qu’un nouveau nœud Nc entrant au sein du réseau peut adhérer à un groupe multicast existant.
Un groupe de diffusion construit de façon centralisée peut, à tout moment, être modifié en augmentant ou en diminuant son niveau d’extension DT, cet aspect étant géré par le nœud racine ou l’entité intelligente E|.
Comme évoqué précédemment, un aspect avantageux de l’invention consiste en la possibilité de mettre à jour de façon dynamique le niveau d’extension d’un groupe de diffusion. Cette fonctionnalité est avantageuse car elle permet notamment de redimensionner la taille d’un groupe de diffusion en fonction des caractéristiques variables du réseau.
En particulier, si certains chemins dans le groupe de diffusion sont affectés par des baisses de débits ou par des ruptures de transmission, il peut être utile d’étendre le groupe de diffusion afin d’améliorer la fiabilité des transmissions. A l’inverse, si la qualité et la rapidité des diffusions de paquets est élevée, il peut être utile de restreindre la taille du groupe de diffusion pour améliorer l’efficacité de l’exploitation des ressources de calcul et de communication dans le réseau.
Ainsi, la modification du niveau d’extension d’un groupe de diffusion peut être réalisée en fonction d’informations sur l’état du groupe de diffusion, en particulier sur l’état des liens de transmission entre les noeuds du groupe de diffusion. Ces informations peuvent concerner un taux de paquets perdus ou un délai de transmission de bout en bout d’un paquet. Selon un mode de réalisation de l’invention, les informations sont fournies par une entité externe à l’invention apte à surveiller l’état du groupe de diffusion. Par exemple, l’entité externe peut être co-localisée dans un nœud racine destiné à construire et gérer un groupe de diffusion ou par le nœud source d’un groupe multicast.
Selon un autre mode de réalisation de l’invention, les informations sur l’état du groupe de diffusion peuvent être dérivées à partir d’un mécanisme d’acquittement de bout en bout propre à l’invention. Ce mécanisme est cependant limité au cas des communications unicast.
Lorsqu’un nœud cible reçoit un paquet de données diffusé par un nœud source au sein d’un groupe de diffusion, il acquitte ce paquet en initiant une diffusion inverse d’un message d’acquittement dans le même groupe de diffusion. Lorsque le nœud source reçoit le message d’acquittement, il peut en déduire une information sur l’acheminement correct du paquet à sa destination ainsi que sur le délai d’acheminement.
Dans le cas où la construction des groupes de diffusion se fait de façon centralisée, le nœud source correspond au nœud racine.
Le mécanisme d’acquittement peut être couplé à un mécanisme de réinitiation des diffusions des paquets de données. Le nœud source peut réinitier la diffusion d’un paquet de données si il n’a pas reçu la confirmation de la bonne réception du paquet par le nœud cible, via la diffusion inverse de l’acquittement. La ré-initiation de la diffusion peut, par exemple, avoir lieu périodiquement, en utilisant une horloge (ou timer en anglais), l’évènement déclencheur de la ré-initiation étant l’expiration de l’horloge. Lorsqu’un nœud du groupe de diffusion reçoit un message d’acquittement associé à un paquet reçu par le nœud cible, il arrête la retransmission de ce paquet à ses voisins. L’invention peut être mise en œuvre en tant que programme d’ordinateur comportant des instructions pour son exécution. Le programme d’ordinateur peut être enregistré sur un support d’enregistrement lisible par un processeur. L’invention est exécutée totalement ou partiellement dans chaque nœud d’un réseau maillé. Un nœud correspond à un dispositif comprenant des moyens pour communiquer avec d’autres nœuds voisins, par exemple par le biais d’une liaison de communication radio. Dans le cas d’une construction des groupes de diffusion de façon centralisée, une partie de l’invention peut être mise en œuvre dans un nœud spécifique du réseau appelé nœud racine et/ou dans un équipement externe au réseau et directement relié au nœud racine par une liaison de communication.
La référence à un programme d'ordinateur qui, lorsqu'il est exécuté, effectue l'une quelconque des fonctions décrites précédemment, ne se limite pas à un programme d'application s'exécutant sur un ordinateur hôte unique. Au contraire, les termes programme d'ordinateur et logiciel sont utilisés ici dans un sens général pour faire référence à tout type de code informatique (par exemple, un logiciel d'application, un micro logiciel, un microcode, ou toute autre forme d'instruction d'ordinateur) qui peut être utilisé pour programmer un ou plusieurs processeurs pour mettre en œuvre des aspects des techniques décrites ici. Les moyens ou ressources informatiques peuvent notamment être distribués ("Cloud computing"), éventuellement selon des technologies de pair-à-pair. Le code logiciel peut être exécuté sur n'importe quel processeur approprié (par exemple, un microprocesseur) ou cœur de processeur ou un ensemble de processeurs, qu'ils soient prévus dans un dispositif de calcul unique ou répartis entre plusieurs dispositifs de calcul (par exemple tels qu’éventuellement accessibles dans l’environnement du dispositif). Le code exécutable de chaque programme permettant au dispositif programmable de mettre en œuvre les processus selon l'invention, peut être stocké, par exemple, dans le disque dur ou en mémoire morte. De manière générale, le ou les programmes pourront être chargés dans un des moyens de stockage du dispositif avant d'être exécutés. L'unité centrale peut commander et diriger l'exécution des instructions ou portions de code logiciel du ou des programmes selon l'invention, instructions qui sont stockées dans le disque dur ou dans la mémoire morte ou bien dans les autres éléments de stockage précités.
Alternativement, l’invention peut aussi être mise en œuvre au moyen d’un processeur qui peut être un processeur générique, un processeur spécifique, un circuit intégré propre à une application (connu aussi sous le nom anglais d’ASIC pour « Application-Specific Integrated Circuit ») ou un réseau de portes programmables in situ (connu aussi sous le nom anglais de FPGA pour « Field-Programmable Gâte Array »). Chaque nœud du réseau maillé ainsi que l’équipement externe associé au nœud racine peut utiliser, pour mettre en œuvre l’invention, un ou plusieurs circuits électroniques dédiés ou un circuit à usage général. La technique de l'invention peut se réaliser sur une machine de calcul reprogrammable (un processeur ou un micro contrôleur par exemple) exécutant un programme comprenant une séquence d'instructions, ou sur une machine de calcul dédiée (par exemple un ensemble de portes logiques comme un FPGA ou un ASIC, ou tout autre module matériel). L’invention s’applique à tout réseau maillé comprenant une pluralité de nœuds qui sont des dispositifs communiquant mobiles ou fixes, qui peuvent être localisés, par exemple, dans des immeubles, des véhicules, des compteurs électriques intelligents, des téléphones intelligents.

Claims (8)

  1. REVENDICATIONS
    1. Procédé de dissémination de données dans un réseau maillé comprenant une pluralité de nœuds interconnectés, ledit procédé comprenant les étapes suivantes exécutées pour chaque nœud source (Ns) destiné à communiquer avec au moins un nœud cible (Nc) : - Construire un groupe de diffusion restreint comprenant au moins le nœud source (Ns) et un ensemble de nœuds (NP, Nvi, NV2, Nv3, NV4) permettant de relier le nœud source (Ns) audit au moins un nœud cible (Ne), ledit groupe de diffusion présentant un niveau d’extension variable du nombre de nœuds qu’il comprend, un niveau d’extension du groupe de diffusion comprenant l’ensemble des nœuds aptes à communiquer directement avec les nœuds du groupe de diffusion de niveau d’extension inférieur, - Pour communiquer des données entre le nœud source (Ns) et ledit au moins un nœud cible (Nc), diffuser les données au sein du groupe de diffusion restreint.
  2. 2. Procédé de dissémination de données selon la revendication 1 dans lequel la construction du groupe de diffusion restreint comprend : - la transmission, par ledit au moins un nœud cible (Nc), d’un message de construction de groupe de diffusion (DGR) à destination du nœud source (Ns) via au moins un nœud relais (NP), ledit message (DGR) comprenant un identifiant (DT) du niveau d’extension du groupe de diffusion, - la diffusion, par un nœud relais (NP) à ses nœuds voisins (Nv2, NV4) aptes à communiquer directement avec le nœud relais (NP), d’un message (DGER) d’extension du groupe de diffusion, en fonction de la valeur de l’identifiant (DT) du niveau d’extension, - lorsqu’un message de construction de groupe de diffusion (DGR) ou un message d’extension de groupe (DGER) est reçu par un nœud relais, l’enregistrement, par ce nœud relais, d’une information d’appartenance au groupe de diffusion.
  3. 3. Procédé de dissémination de données selon la revendication 2 dans lequel la construction du groupe de diffusion restreint comprend : - lorsqu’un message de construction de groupe de diffusion (DR) ou un message d’extension de groupe (DGER) est reçu par un nœud relais et si l’identifiant (DT) du niveau d’extension du groupe de diffusion est non nul, - décrémenter la valeur de l’identifiant (DT) du niveau d’extension du groupe de diffusion, générer et transmettre un message d’extension de groupe (DGER), comprenant la valeur modifiée de l’identifiant (DT) du niveau d’extension, à tous les nœuds voisins aptes à communiquer directement avec le nœud relais.
  4. 4. Procédé de dissémination de données selon l’une des revendications 2 ou 3 dans lequel la transmission d’un message de construction de groupe de diffusion (DGR) est effectuée à l’aide de tables de routage. 5. Procédé de dissémination de données selon l’une des revendications 2 à 4 dans lequel un nœud source est destiné à communiquer avec un nœud cible selon une communication unicast et le message de construction de groupe de diffusion (DGR) comprend au moins un identifiant du nœud cible. 6. Procédé de dissémination de données selon l’une des revendications 2 à 4 dans lequel un nœud source est destiné à communiquer avec plusieurs nœuds cibles selon une communication multicast et le message de construction de groupe de diffusion (DGR) comprend au moins un identifiant du groupe multicast.
  5. 7. Procédé de dissémination de données selon la revendication 1 dans lequel la construction du groupe de diffusion restreint comprend, pour chaque nœud cible (Nc), l’attribution, par le nœud source (NR), d’un groupe de diffusion existant audit nœud cible (Ne). 8. Procédé de dissémination de données selon la revendication 7 dans lequel la construction du groupe de diffusion restreint comprend : - la construction, par le nœud source (NR) ou par un équipement (E|) externe au réseau et directement reliée au nœud source (NR), d’un groupe de diffusion ayant un niveau d’extension donné, pour au moins un nœud cible (Nc), - la notification, par le nœud source (NR) ou l’équipement externe (E|), à chaque nœud du groupe de diffusion construit, de son appartenance audit groupe de diffusion.
  6. 9. Procédé de dissémination de données selon la revendication 8 dans lequel la construction d’un groupe de diffusion est initiée par le nœud source (NR) ou l’équipement externe (E|), à la réception d’un message d’inscription dans le réseau d’un nœud cible (Nc), ledit message d’inscription étant relayé du nœud cible (Nc) vers le nœud source (NR) par l’intermédiaire d’un nœud voisin (Nv) du nœud cible (Nc). 10. Procédé de dissémination de données selon l’une des revendications précédentes comprenant en outre une étape de mise à jour du niveau d’extension du groupe de diffusion. 11. Procédé de dissémination de données selon la revendication 10 dans lequel la mise à jour du niveau d’extension du groupe de diffusion est effectuée en fonction d’une information sur l’état des liens de communication entre nœuds appartenant au groupe de diffusion.
  7. 12. Procédé de dissémination de données selon l’une des revendications précédentes comprenant en outre une étape d’acquittement des données diffusées dans un groupe de diffusion restreint comprenant : - Lorsqu’un nœud cible (Ne) reçoit des données diffusées par un nœud source (NS,NR), la diffusion, par ledit nœud cible (Nc), d’un message d’acquittement dans son groupe de diffusion.
  8. 13. Procédé de dissémination de données selon la revendication 12 dans lequel la diffusion de données dans un groupe de diffusion comprend une réinitialisation de la diffusion des données par le nœud source (NS,NR) tant qu’il ne reçoit pas un message d’acquittement. 14. Procédé de dissémination de données selon la revendication 13 dans lequel, lorsqu’un nœud reçoit un message d’acquittement, il arrête la diffusion des données acquittées. 15. Procédé de dissémination de données selon l’une des revendications 12 à 14 en combinaison avec la revendication 11 dans lequel l’information sur l’état des liens de communication entre nœuds appartenant au groupe de diffusion est obtenue à partir de l’analyse des messages d’acquittement reçus par le nœud source (NS,NR). 16. Programme d'ordinateur comportant des instructions pour l'exécution du procédé de dissémination de données selon l’une quelconque des revendications 1 à 15, lorsque le programme est exécuté par un processeur. 17. Support d'enregistrement lisible par un processeur sur lequel est enregistré un programme comportant des instructions pour l'exécution du procédé de dissémination de données selon l’une quelconque des revendications 1 à 15, lorsque le programme est exécuté par un processeur.
FR1655544A 2016-06-15 2016-06-15 Procede de dissemination de donnees dans un reseau maille Active FR3052942B1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1655544A FR3052942B1 (fr) 2016-06-15 2016-06-15 Procede de dissemination de donnees dans un reseau maille
PCT/EP2017/063602 WO2017215970A1 (fr) 2016-06-15 2017-06-05 Procede de dissemination de donnees dans un reseau maille

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1655544A FR3052942B1 (fr) 2016-06-15 2016-06-15 Procede de dissemination de donnees dans un reseau maille
FR1655544 2016-06-15

Publications (2)

Publication Number Publication Date
FR3052942A1 FR3052942A1 (fr) 2017-12-22
FR3052942B1 true FR3052942B1 (fr) 2019-10-11

Family

ID=57233556

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1655544A Active FR3052942B1 (fr) 2016-06-15 2016-06-15 Procede de dissemination de donnees dans un reseau maille

Country Status (2)

Country Link
FR (1) FR3052942B1 (fr)
WO (1) WO2017215970A1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114221871A (zh) * 2021-04-09 2022-03-22 无锡江南计算技术研究所 一种网格化流水的全收集方法
CN115022233B (zh) * 2022-06-16 2023-04-07 电子科技大学 一种可定制点到多点数据传输完成时间的传输方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6917985B2 (en) * 2000-03-10 2005-07-12 The Regents Of The University Of California Core assisted mesh protocol for multicast routing in ad-hoc Networks
US8289883B2 (en) * 2007-12-21 2012-10-16 Samsung Electronics Co., Ltd. Hybrid multicast routing protocol for wireless mesh networks

Also Published As

Publication number Publication date
FR3052942A1 (fr) 2017-12-22
WO2017215970A1 (fr) 2017-12-21

Similar Documents

Publication Publication Date Title
EP3167572B1 (fr) Passerelle résidentielle relais entre un dispositif terminal et un serveur
US20030212821A1 (en) System and method for routing packets in a wired or wireless network
JP2005287045A (ja) Ipネットワークに接続された装置の発見の方法、及び、この方法を実行する装置
EP3549352B1 (fr) Compteur électrique comportant une interface par courants porteurs en ligne et au moins une interface radio fréquence
FR2930100A1 (fr) Procede d'etablissement d'un chemin de communication dans un reseau etendu de communication, tetes de tunnel,produit programme d'ordinateur et moyen de stockage correspondants
CN108900982B (zh) 数据转发方法与装置
EP3804408A1 (fr) Procédé de sélection d'une route dans un réseau ad hoc
US8462952B2 (en) Synchronizing management signaling in a network
FR3052942B1 (fr) Procede de dissemination de donnees dans un reseau maille
EP2070276A1 (fr) Procede pour evaluer la fiabilite d'une route dans un reseau cooperatif
WO2017017059A1 (fr) Procede de decouverte d'un noeud d'un reseau ad hoc
WO2013131871A1 (fr) Procédé, dispositif et programme d'ordinateur pour sélectionner un noeud routeur dans un réseau lln
EP3675562B1 (fr) Procédés de traitement de données, dans un réseau ad hoc de radiocommunication, stations mobiles de radiocommunication et programmes d'ordinateur associés
FR3079696A1 (fr) Procede de communication
EP3709185A1 (fr) Procédé d'optimisation d'échanges de données dans une infrastructure d'objets connectés
EP3675463A1 (fr) Procédé d'identification d'un objet connecté dans une infrastructure réseau
FR3096530A1 (fr) Procédé de gestion d’au moins une communication d’un équipement terminal dans un réseau de communication, procédés de traitement, dispositifs, équipement terminal, équipement proxy et programmes d’ordinateur correspondants
WO2013107975A1 (fr) Reveil a distance d'un equipement connecte a un reseau a liens multiples
WO2011144845A1 (fr) Administration d'un reseau maille sans fil
EP3934114B1 (fr) Procédé de régulation destine à résorber un engorgement d'un réseau maille de communication par courants porteurs en ligne
EP4142171A1 (fr) Procede de transmission et dispositif noeud implementant ledit procede
FR3095913A1 (fr) Procédé d’identification d’un objet connecté dans une infrastructure réseau
EP3934107A1 (fr) Procede et dispositif de transmission d'un message
FR2999848A1 (fr) Procede de transfert de messages de geolocalisation et systeme de mise en oeuvre
FR3109852A1 (fr) Procede et dispositif de relai d’un message recu d’un premier dispositif par un deuxieme dispositif nœud vers un troisieme dispositif noeud

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20171222

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8