FR3096850A1 - Procede de transmission de donnees entre un emetteur et un recepteur dans un reseau de radiocommunications a capacite de bouclage local - Google Patents
Procede de transmission de donnees entre un emetteur et un recepteur dans un reseau de radiocommunications a capacite de bouclage local Download PDFInfo
- Publication number
- FR3096850A1 FR3096850A1 FR1905477A FR1905477A FR3096850A1 FR 3096850 A1 FR3096850 A1 FR 3096850A1 FR 1905477 A FR1905477 A FR 1905477A FR 1905477 A FR1905477 A FR 1905477A FR 3096850 A1 FR3096850 A1 FR 3096850A1
- Authority
- FR
- France
- Prior art keywords
- datagram
- receiver
- loop
- transmitter
- hboucle
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 10
- 230000005540 biological transmission Effects 0.000 title claims description 8
- 230000006870 function Effects 0.000 description 4
- 238000010926 purge Methods 0.000 description 4
- 235000008694 Humulus lupulus Nutrition 0.000 description 3
- 235000021183 entrée Nutrition 0.000 description 3
- 101100428764 Drosophila melanogaster vret gene Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000000873 masking effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000005562 fading Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Time-Division Multiplex Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
PROCEDE DE TRANSMISSION DE DONNEES ENTRE UN EMETTEUR ET UN RECEPTEUR DANS UN RESEAU DE RADIOCOMMUNICATIONS A CAPACITE DE BOUCLAGE LOCAL
L’invention concerne un procédé de transmission de données entre un émetteur et un récepteur dans un réseau de radiocommunications à capacité de bouclage local, ledit réseau étant organisé sur un mode maillé selon une topologie où tous les hôtes sont connectés pair à pair sans hiérarchie centrale, selon un principe AMRT d’accès multiple à répartition dans le temps permettant de transmettre plusieurs flux de trafic sur un seul canal ou une seule bande de fréquence en utilisant une division temporelle de la bande passante, caractérisé en ce que l’émetteur et le récepteur communiquent au sein d’une boucle comprenant au moins un autre acteur apte à communiquer, un message d’accusé réception étant émis par le récepteur vers l’émetteur à réception par le récepteur d’un datagramme d envoyé par l’émetteur.
Figure pour l’abrégé : Fig. 1
Description
La présente invention concerne le domaine des réseaux maillés, une topologie de réseau où tous les hôtes sont connectés pair à pair sans hiérarchie centrale, formant ainsi une structure en forme de filet. Par conséquent, chaque nœud peut recevoir, envoyer et relayer les données. Ceci évite d'avoir des points névralgiques qui, s'ils tombent en panne, isolent une partie du réseau. Si un hôte est hors service, les données empruntent une route alternative.
Plus particulièrement l’invention concerne un procédé de transmission de données entre un émetteur et un récepteur dans un réseau de radiocommunications à capacité de bouclage local, ledit réseau étant organisé sur un mode maillé selon une topologie où tous les hôtes sont connectés pair à pair sans hiérarchie centrale, selon un principe AMRT d’accès multiple à répartition dans le temps permettant de transmettre plusieurs flux de trafic sur un seul canal ou une seule bande de fréquence en utilisant une division temporelle de la bande passante.
Dans ce type de transmission, il est possible que du fait de l’éloignement des dispositifs communicants, de la topologie des lieux ou d’autre élément contextuel, la communication échoue. Divers moyens de renforcer la transmission ont donc été envisagés.
Les algorithmes de relayage habituels reposent sur l'établissement de routes. Une route se définit par "le meilleur chemin" (meilleur par rapport à une fonction de coût, portant généralement sur le nombre de bonds radio dans le cas des liaisons radio) permettant à un élément d'envoyer des informations vers un élément distant, hors de portée radio directe.
L'établissement d'une route présente, dans l'état de la technologie, divers inconvénients.
Ces algorithmes présument que la route est stable pendant une durée relativement longue par rapport à la durée moyenne d'acheminement du trafic. Si la topologie du réseau n’est pas stable, alors la route n’a pas le temps de s’établir. Le réseau ne fonctionne pas.
Ils nécessitent un certain temps pour que la route s’établisse, et donc un certain trafic. Là encore, si le réseau n’est intrinsèquement pas stable, on peut avoir rapidement des cas où le réseau ne fonctionne pas, c’est-à-dire où aucun trafic utile n’est écoulé.
De ce fait il peut être pertinent d’ouvrir une route lorsque le chemin est « long », c’est-à-dire qu’il y a plusieurs relais impliqués. Mais ce n’est pas pertinent pour des réseaux avec peu de bonds de liaison.
La présente invention vise ainsi à proposer une solution permettant à un réseau radio reliant plusieurs participants selon un principe AMRT/TDMA, d'échanger des informations de façon fiabilisée, en compensant automatiquement les éventuelles pertes de connectivité entre ces participants.
Selon l’invention, un procédé de transmission de données entre un émetteur et un récepteur dans un réseau de radiocommunications à capacité de bouclage local, ledit réseau étant organisé sur un mode maillé selon une topologie où tous les hôtes sont connectés pair à pair sans hiérarchie centrale, selon un principe AMRT d’accès multiple à répartition dans le temps permettant de transmettre plusieurs flux de trafic sur un seul canal ou une seule bande de fréquence en utilisant une division temporelle de la bande passante, est caractérisé en ce que l’émetteur et le récepteur communiquent au sein d’une boucle comprenant au moins un autre acteur apte à communiquer, un message d’accusé réception étant émis par le récepteur vers l’émetteur à réception par le récepteur d’un datagramme d envoyé par l’émetteur.
En effet dans une situation où plusieurs équipements, pouvant être mobiles, échangent entre eux des informations sur un réseau radio TDMA, en conditions normales, ces équipements sont tous en portée radio les uns des autres.
Mais du fait des déplacements et des masquages radio associés, la connectivité au sein du réseau est particulièrement instable. Ainsi, certains équipements perdent régulièrement la liaison avec l’un ou l’autre équipement.
Avantageusement lorsque dans un délai prédéterminé, l’émetteur ne reçoit pas le message d’accusé réception, l’émetteur considère que le datagramme n’a pas été reçu par le récepteur et envoie le datagramme d vers un autre acteur apte à communiquer au sein de la boucle, ledit autre acteur devenant alors l’émetteur pour le datagramme d.
Avec l'invention, un relayage est automatique et immédiat pour les informations véhiculées en transmission de données. Il en résulte une meilleure robustesse du réseau radio et une meilleure expérience utilisateur.
L'algorithme prend l'hypothèse que les participants sont normalement tous en connectivité les uns avec les autres, mais que certaines connexions vont temporairement se perdre (par exemple, du fait de déplacements des participants, provoquant des masquages, du fading, etc.). La perte de connectivité peut porter sur un seul créneau (un seul élément de transmission) ou bien avoir un caractère permanent.
L'algorithme permet d'assurer automatiquement la retransmission des informations perdues, en utilisant un des participants ayant gardé une connectivité avec le participant émetteur et le participant destinataire. Cet algorithme auto-adaptatif permet ainsi un relayage automatique à 2 bonds radio.
Il prend comme hypothèse que chaque participant du réseau acquitte les données qu'il reçoit des autres participants par un bit. Ainsi, dans un cycle TDMA comportant 9 participants émettant chacun un créneau de données, chaque participant émet systématiquement dans son créneau 8 bits correspondant à l'acquittement (la bonne réception) des créneaux des 8 autres participants. Le nombre de bits utilisés pour ces acquittements est d'au moins un bit par créneau alloué à un participant. Les bits peuvent être redondants (c’est-à-dire acquitter un créneau transmis il y a plus d'un cycle TDMA) tout en étant compatibles de l'algorithme décrit. Les bits d'acquittement sont désignés par l'abréviation Ci dans la suite du présent document.
Les datagrammes exploités par l'invention peuvent être de taille quelconque, non nécessairement constante.
L’invention concerne également un dispositif implémentant le procédé évoqué précédemment.
D'autres caractéristiques et avantages de l'invention apparaîtront dans la description qui suit d'un mode de réalisation préféré avec référence aux dessins annexés mais qui n'a aucun caractère limitatif.
Sur ces dessins :
Comme expliqué précédemment le principe général du relayage repose sur l'entraide entre les participants d'un même réseau : les participants constatant qu'un message n'est pas reçu par un membre de la boucle lui retransmettent automatiquement les messages manquants, au sein de ce réseau. Par la suite, nous désignerons :
- Sous le terme de participant, un hôte du réseau pouvant prendre successivement les rôles d'émetteur et de récepteur, et avec lequel les autre hôtes vont échanger des informations.
- Sous le terme de boucle le réseau AMRT regroupant plusieurs participants normalement en connexion pair à pair, et voulant bénéficier de la fiabilisation des échanges offerte par le présent algorithme. Au sein d'une boucle, chaque participant est identifié de manière unique et propre à la boucle par une adresse de boucle (notée @ dans la suite du présent document).
La figure 1 illustre ce fonctionnement. On peut voir que A transmet un message que C, hors de portée, ne peut recevoir. Les participants B et D vont alors relayer les messages pour que C puisse les recevoir. L'algorithme effectuant ce relayage sera baptisé HBoucle.
L'algorithme HBoucle fonctionne par boucle : pour chaque boucle H instanciée dans le participant, un algorithme HBoucle dédié à cette boucle est initialisé et fonctionne en permanence.
Optionnellement, l'algorithme accepte et utilise une valeur d'âge du datagramme. Cet âge permet à une application utilisatrice de connaître et de mesurer le temps passé par un datagramme dans le réseau, pour par exemple reconstituer la chronologie exacte des échanges.
Lorsqu’il s’exécute, l’algorithme HBoucle va réaliser dans un premier temps le stockage de tous les datagrammes reçus dans une mémoire tampon (dit "buffer de boucle") dédiée, le marquage dans cette mémoirede tous les datagrammes pour lesquels un acquittement a été reçu et l’attribution d’un indicateur de mérite de relayage à chaque datagramme, fonction de son type d'adressage et du fait qu'il ait été reçu ou non.
Puis l’algorithme HBoucle va procéder à la retransmission des datagrammes les plus "méritants" (et donc qui sont importants à relayer).
Dans un dernier temps l’algorithme HBoucle va purger du buffer les messages trop anciens en considérant alors que leur retransmission n'a plus d'intérêt. En pratique, cette purge s'effectue du fait de la taille limitée et fixe du buffer de boucle : tout nouveau message inscrit provoque la suppression du message le plus ancien.
La structure du buffer de boucle est décrite ci-après.
Le buffer de boucle est une collection qui peut contenir trois types de structures de données :
une structure "datagramme reçu", composée :
- d'un numéro d'index courant (nombre entier double),
- du datagramme reçu proprement dit,
- de l'@ de l'émetteur du datagramme (participant à qui le créneau est affecté dans le canevas de boucle)(entier ),
- de l'@ de boucle associée au datagramme reçu,
- de l'âge du datagramme (nombre entier),
- pour chaque participant de la boucle (hors moi-même), d'un booléen de réception, indiquant si le message a été reçu par ce participant. Ces booléens sont initialisés à False (non reçu),
- d'un indicateur de mérite de relayage (nombre entier signé), initialisé à zéro.
une structure "référence de datagramme reçu", composée :
- d'un numéro d'index courant (nombre entier double),
- d'un pointeur vers une structure "datagramme reçu" (numéro d'index : nombre entier double).
une structure "entrée non valide", composée d'un numéro d'index courant (nombre entier double).
Cette structure permet de référencer facilement à quel message original un acquittement (bit Ci) ou une retransmission fait référence, puisqu'à chaque bit Ci correspond normalement une entrée.
On notera que lors de l’implémentation, il est possible d'harmoniser pour n'avoir qu'une seule structure "datagramme", par exemple en ajoutant à la structure proposée "datagramme reçu" un pointeur vers une autre structure, et un booléen de validité.
On notera également que les booléens de réception peuvent être les bits d'un nombre entier (par exemple : bit 0 = participant 0, bit 1 = participant 1…).
Le numéro d'index est constitué de deux entiers :
un entier donnant le numéro d'ordre du créneau dans la boucle. Cet entier varie typiquement entre 0 et N-1 pour une boucle de N participants ayant chacun un créneau (temps de parole) par cycle TDMA ;
un entier identifiant le numéro de cycle, sous forme de compteur libre incrémenté à chaque cycle.
Dans le présent document, on désignera ainsi un index sous la forme A/B, avec A numéro de cycle, et B numéro d'ordre du créneau dans la boucle. Par exemple, 200/3 : quatrième créneau de la boucle, 200ème cycle de la boucle.
Le numéro de cycle est issu d'un compteur libre, mis à zéro lors de la création de la boucle, et incrémenté à chaque nouveau cycle TDMA. Dans le fonctionnement de l'algorithme ci-dessous, le numéro de cycle est un compteur local : deux HBoucle instanciés sur des participants appartenant à la même boucle n'ont pas forcément le même numéro de cycle (par exemple, si l'un des participants a rejoint tardivement la boucle). La taille de ce compteur doit être telle que le roll-over est censé ne jamais survenir lors de la durée de vie de la boucle (c'est notamment le cas avec un entier codé sur 32 bits), ou alors HBoucle doit gérer ce roll-over.
Pour chaque boucle qu'il instancie, HBoucle crée un buffer de boucle dont toutes les entrées sont initialisées à non valides, et initialise le numéro d'index à 0/0 pour le premier créneau du premier cycle où la boucle est effectivement instanciée.
L'indicateur de mérite de relayage qui indique, s'il est élevé, l'intérêt relatif de relayer effectivement le message :
s'il est strictement positif, l'intérêt est d'autant plus fort que le nombre est grand,
s'il est nul ou négatif, le message ne peut pas être relayé.
Le buffer de boucle est un buffer de taille fixe (en termes de nombre d'entrées). Typiquement il a la taille correspondant à quelques cycles TDMA (cette taille étant un paramètre de configuration technique). Donc pour une boucle à 12 créneaux et une taille 4, le buffer aura 48 entrées. Pour une boucle à 6 créneaux et une taille de 4, le buffer aura 24 entrées.
Dés dépassement de cette capacité, l'entrée la plus ancienne dans le buffer est supprimée, pour que le buffer garde une taille fixe. Le buffer fonctionne donc comme un buffer circulaire, sans gestion de dépassement de capacité.
Le buffer de boucle mémorise également les créneaux émis par le participant instanciant HBoucle. Cette fonctionnalité permet :
la collecte des acquittements sur les messages transmis par l'applicatif
la prise en compte homogène des informations de connectivité et d'acquittement.
Le fonctionnement de l'algorithme est le suivant.
L'algorithme utilise plusieurs opérations :
mémorisation des datagrammes reçus ou émis dans le buffer de boucle
mise à jour des états de réception dans le buffer de boucle
choix du prochain datagramme à émettre
Mémorisation des datagrammes dans le buffer de boucle
1/ Mémorisation des datagrammes reçus
Pour chaque datagramme reçu dans la boucle, HBoucle vérifie si ce datagramme n'est pas déjà présent dans le buffer de boucle. Pour cela, HBoucle compare le datagramme avec les données équivalentes de chaque entrée valide du buffer. Si cette comparaison s'avère gourmande en ressources informatiques (vu, par exemple, la taille du datagramme en question ou la taille du buffer de boucle), une fonction de hachage peut être utilisée pour définir une "signature" propre à chaque datagramme. La structure du buffer de boucle est alors complétée par cette signature. De nombreux algorithmes de hachage ont été publiés, compatibles avec une telle utilisation (MD5, SHA-1..).
S'il y a identité, alors HBoucle compare le numéro de cycle du datagramme reçu (diminué de l'éventuel âge du datagramme) au numéro de cycle du datagramme identique dans la table (diminué de l'éventuel âge stocké et associé à ce datagramme). Si la valeur absolue de leur différence est inférieure ou égale à un seul défini par exemple à 2, alors HBoucle considère que ce datagramme est déjà présent dans le buffer.
Si le datagramme n'est pas déjà présent, HBoucle crée et complète une entrée "datagramme reçu" avec le numéro d'index courant dans le buffer de boucle, pour mémoriser ce datagramme. L'indicateur de mérite est positionné à zéro. HBoucle remonte également le message vers l'application cliente.
Si le datagramme est déjà présent, il s'agit visiblement d'un datagramme en train d'être relayé par un autre participant de la boucle ; il ne porte donc pas de nouvelle information. Hboucle crée et complète une entrée "référence de datagramme reçu" dans le buffer de boucle, pointant vers l'entrée correspondant au datagramme déjà reçu, et HBoucle diminue de Idiff la valeur du mérite associé à ce datagramme.
Si aucun créneau valide n'est reçu dans le temps de parole de la boucle (créneau original non reçu), HBoucle crée une entrée non valide à l'index correspondant.
2/ Mémorisation des datagrammes émis
La mémorisation des datagrammes émis par HBoucle s'effectue au titre de la fonction "choix du prochain datagramme à transmettre" décrite en page 12.
3/ Traitement du datagramme le plus ancien
Le buffer de boucle ayant l'architecture d'un buffer circulaire de taille fixe, l'ajout d'un message dans le buffer revient à supprimer son entrée la plus ancienne. Le traitement de mémorisation d'un datagramme dans le buffer déclenche le traitement suivant, pour le message qui va en être supprimé :
Si le datagramme qui y était stocké était d'origine applicative (émis à l'origine par l'applicatif client de HBoucle), et que son indicateur de mérite est supérieur à Sdiff, alors HBoucle remonte à l'applicatif le compte-rendu d'acheminement du message (booléens d'indication de réception) : on remonte un compte-rendu de transmission pour un message qui n'a pas été acquitté en totalité par les participants de la boucle.
dans les autres cas de figure, l'entrée est supprimée sans autre action.
Mise à jour des états de réception des datagrammes du buffer
1/ Mise à jour suite à un datagramme reçus
Suite à un créneau reçu dans la boucle, HBoucle positionne à True le booléen correspondant à son adresse de boucle, dans l'entrée du buffer qui vient d'être créée (HBoucle a correctement reçu ce datagramme). HBoucle positionne également à True le booléen correspondant à l'émetteur de ce créneau, dans l'entrée du buffer qui vient d'être créée (le participant qui a émis le créneau l'a correctement reçu… puisqu'il en est l'émetteur).
Puis HBoucle analyse les bits Ci reçus dans le créneau.
pour chaque bit Ci reçu à "1", HBoucle recherche le numéro d'index correspondant à ce bit Ci (et donc le datagramme associé), et recherche l'entrée de la table associée.
- Si l'entrée est un datagramme, HBoucle positionne à True le booléen de réception correspondant au participant ayant positionné le bit Ci à 1.
- Si l'entrée est une référence de datagramme reçu, HBoucle recherche la référence pointée et réapplique le présent traitement (note : cette référence peut être valide ou non).
- Si l'index dans le buffer n'est pas valide (le message original n'a pas été reçu, ou le message a été purgé du buffer de boucle), HBoucle ne fait rien.
- Si tous les booléens de réception du datagramme sont à True, alors HBoucle positionne l'indicateur de mérite de relayage à Vrec (on interdit la retransmission d'un message correctement reçu de tous, et on signale le cas échéant au mécanisme de purge qu'il a été déjà remonté à l'applicatif). Si le datagramme est d'origine applicative (transmis par l'applicatif à HBoucle en vue de l'émettre sur la boucle), alors HBoucle remonte à l'applicatif le compte-rendu d'acheminement du message (booléens d'indication de réception) : on remonte une indication de réception complète dès que celle-ci est acquise.
pour chaque bit Ci reçu à "0", HBoucle recherche le numéro d'index correspondant à ce bit Ci (et donc le datagramme associé), et l'entrée dans la table de boucle associée.
Si l'entrée est un datagramme :
Si l'entrée est un datagramme :
si le booléen de connectivité est à Zéro pour ce participant, HBoucle ajoute à l'indicateur de mérite de relayage associé :
- + Iadr si le participant ayant positionné le bit Ci fait partie des destinataires adressés du datagramme et s'il déclare (dans ses derniers bits Ci transmis) me recevoir,
- + Idiff dans les autres cas : destinataire non adressé, et/ou connectivité non établie).
- sinon, HBoucle ne fait rien.
Si l'index n'est pas valide (le message original n'a pas été reçu, ou le message a été purgé du buffer de boucle), HBoucle ne fait rien.
Choix du prochain datagramme à transmettre
HBoucle balaye l'ensemble du buffer, du datagramme le plus récent au datagramme le plus ancien, et recherche le datagramme dont l'indicateur de mérite de relayage est le plus élevée (plus grand entier positif non nul)(note : l'algorithme ne nécessite qu'un seul balayage du buffer de boucle).
A l'occasion de ce balayage, il est suggéré que HBoucle décompte le nombre d'entrées de type "référence de datagramme" présentes dans le buffer, et mémorise l'info correspondante. Cette indication est une indication de la charge de relayage.
HBoucle extrait ainsi l'index du datagramme le plus méritant, et la valeur de ce mérite.
Ensuite, HBoucle détermine le ratio d'émission ou de relayage, en calculant le reste de la division du numéro de cycle par Tx (et donc le numéro de cycle modulo Tx). Ce calcul permet de déterminer le "temps de parole" alloué au relayage, versus celui alloué aux messages émis par l'application.
Si ce nombre est strictement inférieur à Tx -1 :
si le datagramme le plus méritant du buffer a un mérite supérieur ou égal à Iadr, alors HBoucle transmet ce message,
sinon, HBoucle sollicite l'applicatif pour avoir un datagramme à transmettre,
si l'applicatif transmet à HBoucle un datagramme à transmettre, HBoucle le diffuse sur la radio, quelle que soit l'adresse de boucle de ce datagramme,
si l'applicatif ne transmet pas de datagramme à HBoucle dans le temps imparti, alors HBoucle transmet le datagramme le plus méritant (dont le mérite est strictement positif et strictement inférieur à Iadr),
à défaut de datagramme le plus méritant, HBoucle prépare et transmet le message de description du participant sur boucle hiérarchique (message de "bourrage").
Si ce nombre est égal à Tx -1 :
HBoucle sollicite l'applicatif pour avoir un datagramme à transmettre ;
si l'applicatif transmet à HBoucle un datagramme à transmettre, HBoucle le diffuse sur la radio, quelle que soit l'adresse de boucle de ce datagramme ;
si l'applicatif ne transmet pas de datagramme à HBoucle dans le temps imparti, alors HBoucle transmet le datagramme le plus méritant (dont le mérite est strictement positif) ;
à défaut de datagramme le plus méritant, HBoucle prépare et transmet le message de description du participant sur boucle hiérarchique (message de "bourrage").
Si l'algorithme a sélectionné un datagramme du buffer de boucle, HBoucle :
- l'émet sur le créneau à venir avec l'adresse d'origine, et l'âge recalculé (par rapport à l'âge d'origine stocké, augmenté de l'écart entre l'index mémorisé et l'index courant);
- le conserve dans le buffer, mais positionne son indicateur de mérite à Vret ;
- crée une entrée de type "référence de datagramme" à l'index courant, dans le buffer de relayage.
Si l'algorithme a sélectionné un datagramme provenant de l'applicatif (ou un éventuel message de bourrage), HBoucle l'émet sur le créneau à venir, et crée une entrée dans le buffer de boucle, de type "datagramme reçu" et en positionnant l'indicateur de mérite à Vret (cette valeur prévenant toute retransmission ultérieure par HBoucle). Les booléens de réception sont positionnés à False (hors celui correspondant au participant implémentant HBoucle, qui est mis à True), et les autres champs sont positionnés en adéquation avec les demandes de l'applicatif.
On notera que pour optimiser le temps de traitement CPU, il est conseillé que HBoucle lance ce traitement N créneaux physiques avant le créneau physique provoquant effectivement le calcul des bits de connectivité. Cette précaution laisse plus de temps à l'applicatif pour fournir le message à transmettre.
Paramètres techniques de
HBoucle
Le logiciel implémentant HBoucle présente dans ce cas les paramètres de configuration suivants où les valeurs sont les valeurs proposées pour un exemple d'implémentation.
Terme | Définition | Valeur |
N cycle | Taille du buffer de boucle, en nombre de cycles. | 5 |
T x | Ratio d'émission et de relayage | 3 |
I diff | Valeur d'incrément du mérite pour un message en diffusion | +1 |
I adr | Valeur d'incrément du mérite pour un message adressé. Cette valeur doit être supérieure ou égale à Idiffx Ncyclex (Np-2) où Npest le nombre maximum de participants possibles dans une boucle | +40 |
V rec | Valeur du mérite pour un message reçu de tous. Cette valeur est négative et doit être plus grande que -(I adr -Idiff) x Ncyclex Np | -4000 |
V ret | Valeur du mérite pour un message relayé par HBoucle. Cette valeur est négative et doit être comprise entre 0 et –(Iadrx Ncyclex (Np-2)). Plus ce nombre est grand, moins le double relayage est permis. | -1000 |
S diff | Seul du mérite pour un message non reçu de tous. Cette valeur est négative et vaut (Vrec+ Vret)/2 | -3000 |
Il est bien entendu que le mode de réalisation particulier qui vient d’être décrit a été donné à titre indicatif et non limitatif et que des modifications peuvent être apportées sans que l’on s’écarte pour autant du cadre de la présente invention.
Claims (3)
- Procédé de transmission de données entre un émetteur et un récepteur dans un réseau de radiocommunications à capacité de bouclage local, ledit réseau étant organisé sur un mode maillé selon une topologie où tous les hôtes sont connectés pair à pair sans hiérarchie centrale, selon un principe AMRT d’accès multiple à répartition dans le temps permettant de transmettre plusieurs flux de trafic sur un seul canal ou une seule bande de fréquence en utilisant une division temporelle de la bande passante, caractérisé en ce que l’émetteur et le récepteur communiquent au sein d’une boucle comprenant au moins un autre acteur apte à communiquer, un message d’accusé réception étant émis par le récepteur vers l’émetteur à réception par le récepteur d’un datagramme d envoyé par l’émetteur.
- Procédé de transmission de données selon la revendication 1, caractérisé en ce que lorsque dans un délai prédéterminé, l’émetteur ne reçoit pas le message d’accusé réception, l’émetteur considère que le datagramme n’a pas été reçu par le récepteur et envoie le datagramme d vers un autre acteur apte à communiquer au sein de la boucle, ledit autre acteur devenant alors l’émetteur pour le datagramme d.
- Dispositif implémentant un procédé selon l’une quelconque des revendications précédentes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1905477A FR3096850B1 (fr) | 2019-05-28 | 2019-05-28 | Procede de transmission de donnees entre un emetteur et un recepteur dans un reseau de radiocommunications a capacite de bouclage local |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1905477A FR3096850B1 (fr) | 2019-05-28 | 2019-05-28 | Procede de transmission de donnees entre un emetteur et un recepteur dans un reseau de radiocommunications a capacite de bouclage local |
FR1905477 | 2019-05-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3096850A1 true FR3096850A1 (fr) | 2020-12-04 |
FR3096850B1 FR3096850B1 (fr) | 2022-04-15 |
Family
ID=68806830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1905477A Active FR3096850B1 (fr) | 2019-05-28 | 2019-05-28 | Procede de transmission de donnees entre un emetteur et un recepteur dans un reseau de radiocommunications a capacite de bouclage local |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3096850B1 (fr) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103371B1 (en) * | 2003-10-22 | 2006-09-05 | Itt Manufacturing Enterprises, Inc. | Method and apparatus for dynamic voice reservation within wireless networks |
EP2784992A1 (fr) * | 2013-03-28 | 2014-10-01 | Mitsubishi Electric R&D Centre Europe B.V. | Procédé et système pour configurer des dispositifs de n'uds d'un réseau de communications maillé, lors de la détection d'une défaillance de liaison ou d'une liaison de récupération |
US20150023227A1 (en) * | 2013-07-19 | 2015-01-22 | Motorola Solutions, Inc | Full duplex direct mode individual and group calling using adjacent time slots in a tdma system |
US20150023226A1 (en) * | 2013-07-19 | 2015-01-22 | Motorola Solutions, Inc | Full duplex individual call via linked single frequency repeaters |
-
2019
- 2019-05-28 FR FR1905477A patent/FR3096850B1/fr active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7103371B1 (en) * | 2003-10-22 | 2006-09-05 | Itt Manufacturing Enterprises, Inc. | Method and apparatus for dynamic voice reservation within wireless networks |
EP2784992A1 (fr) * | 2013-03-28 | 2014-10-01 | Mitsubishi Electric R&D Centre Europe B.V. | Procédé et système pour configurer des dispositifs de n'uds d'un réseau de communications maillé, lors de la détection d'une défaillance de liaison ou d'une liaison de récupération |
US20150023227A1 (en) * | 2013-07-19 | 2015-01-22 | Motorola Solutions, Inc | Full duplex direct mode individual and group calling using adjacent time slots in a tdma system |
US20150023226A1 (en) * | 2013-07-19 | 2015-01-22 | Motorola Solutions, Inc | Full duplex individual call via linked single frequency repeaters |
Also Published As
Publication number | Publication date |
---|---|
FR3096850B1 (fr) | 2022-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2005668B1 (fr) | Procede de routage dans un reseau ad hoc | |
FR2988244A1 (fr) | Procede et systeme de transmission de donnees dans un reseau d'aeronefs en vol | |
EP2337284B1 (fr) | Protocole de routage fiable | |
WO2019185552A1 (fr) | Procede de communication | |
EP2282432B1 (fr) | Procédé de transmission de données multimedia dans des réseaux de communication ad hoc | |
EP3804408A1 (fr) | Procédé de sélection d'une route dans un réseau ad hoc | |
FR3042081A1 (fr) | "procede de controle d'un systeme de communications de donnees par paquets et systeme de communications mettant en œuvre le procede" | |
FR2883440A1 (fr) | Procede et equipement pour la transmission de donnees par reseau ad hoc | |
EP3777308B1 (fr) | Procédé de communication | |
FR3039740B1 (fr) | Procede de decouverte d'un noeud d'un reseau ad hoc, procede d'echange de donnees, systeme associe | |
EP3957106A1 (fr) | Procédé d'émission d'un message sur un canal de diffusion avec retransmission sur une liaison point à point | |
WO2013144507A1 (fr) | Routage de donnees dans un reseau de capteurs | |
FR3112259A1 (fr) | Procede et dispositif de transmission d’un message | |
FR3096850A1 (fr) | Procede de transmission de donnees entre un emetteur et un recepteur dans un reseau de radiocommunications a capacite de bouclage local | |
EP3247076B1 (fr) | Systeme et procede de transmission de donnees | |
FR3055504A1 (fr) | Procede de controle de la charge d'une passerelle de concentration de donnees pour un reseau de communication sans fil | |
EP3326294A1 (fr) | Procede de determination d'une route dans un reseau cpl | |
FR3052942A1 (fr) | Procede de dissemination de donnees dans un reseau maille | |
EP3709185A1 (fr) | Procédé d'optimisation d'échanges de données dans une infrastructure d'objets connectés | |
FR3091452A1 (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 | |
FR3011159A1 (fr) | Systeme et procede de partage de capacite distribue dans un reseau ad-hoc | |
EP4142171A1 (fr) | Procede de transmission et dispositif noeud implementant ledit procede | |
EP4142169A1 (fr) | Procede de transmission et dispositif noeud implementant ledit procede | |
WO2024079309A1 (fr) | Procédé de retransmission coopérative dans un système omamrc avec allocation de ressources et sélections des sources à aider conjointes | |
EP2835954A2 (fr) | Procédé de traitement, dans un réseau ad hoc de radiocommunication, stations de radiocommunication et programmes d'ordinateur correspondants |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20201204 |
|
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 |