PROCEDE DE TRANSMISSION DE DONNEES DANS UN RÉSEAU ACOUSTIQUE ET/OU HERTZIEN
La présente invention concerne un procédé de transmission de données par voie acoustique et/ou hertzienne. La présente invention trouve tout particulièrement une application dans le cadre de réseau sous-marin et hertzien destiné à transmettre des données entre une station terrestre et des stations acoustiques sous-marines.
Les ondes acoustiques demeurent le support physique le plus approprié pour transmettre des données dans un milieu sous-marin. Un réseau acoustique sous-marin est décrit dans le brevet américain US 5 303 207. Ce réseau comprend une station centrale de surface, des stations terminales sous-marines de mesure et des stations intermédiaires sous-marines pour acheminer les données entre les stations terminales et la station centrale de surface. Chaque station est munie d'un modem acoustique pour communiquer avec les autres stations du réseau. Les données à transmettre d'un modem acoustique à un autre sont transmises à travers un canal acoustique. Pour transmettre des données d'une station source vers une station destination, la station source définit préalablement un circuit virtuel comprenant la station source et les stations nécessaires à la transmission des données pour qu'elles atteignent la station destination. Une séquence unique de fréquences de transmission entre stations est assignée à chaque circuit virtuel. La transmission des données est
ensuite réalisée lorsque le circuit virtuel est entièrement défini. Après la transmission de données, le circuit virtuel est dissout par la station source. Dans ce réseau, une même station acoustique ne peut appartenir simultanément à deux circuits virtuels différents. Il apparaît alors des situations de blocage lorsque, au moment de la création d'un nouveau circuit virtuel, celui-ci cherche à sélectionner une station acoustique appartenant déjà à un circuit virtuel en cours d'utilisation. La création de ce nouveau circuit virtuel doit alors être retardée ou sa composition doit être modifiée de manière à ne pas utiliser la station acoustique en question.
Aussi, l'invention procède d'une recherche menée relativement à un réseau acoustique et/ou hertzien en vue d'atteindre les objectifs suivants : diminuer la probabilité de blocage pour le transport de données entre deux stations distantes du réseau et optimiser le transport des données entre deux stations voisines.
A cet effet, l'invention concerne un procédé de transmission de messages de données dans un réseau à la fois sous-marin et aérien comportant une pluralité de stations acoustiques et hertziennes. Chaque message de données à transmettre est généré par une station source et transmis vers une station destination en transitant par des stations intermédiaires lorsque la station source et la station destination ne sont pas voisines, c'est-à-dire lorsqu'une transmission directe du message de données entre la station source et la station
destination n'est pas possible, ce qui est généralement le cas. Selon l'invention, à chaque fois qu'une station reçoit ou génère un message de données, elle effectue les étapes suivantes : - si elle est la station destination du message .de données, elle exploite ledit message de données, sinon, elle détermine une station voisine vers laquelle émettre le message de données en fonction de sa station destination et mémorise ledit message de données dans un espace mémoire affecté . à la station voisine déterminée. Pour ce qui est de l'émission des messages de données, chaque station ayant des messages de données à transmettre n'émet vers une station voisine le ou les messages de données contenus dans l'espace mémoire affecté à cette station voisine que lorsque le ou les messages de données à transmettre de cet espace mémoire satisfont un critère d'émission.
Ainsi, les messages de données sont transmis dans le réseau par sauts de transmission successifs indépendants entre eux. De plus, plusieurs messages de données peuvent être transmis vers une station cible au cours du même saut de transmission. Ces deux caractéristiques permettent de réduire fortement les situations de blocage dans le réseau.
Par ailleurs, pour améliorer la transmission des messages de données, les paramètres de transmission de chaque saut sont adaptés aux conditions environnementales et à la nature des messages de données. Par exemple, le type de modulation employée
pour moduler les messages de données à transmettre est choisi en fonction du débit désiré et/ou de l'importance des données contenues dans le message et/ou des conditions de transmission (transmission horizontale ou verticale, transmission en eau profonde .ou en bas fonds, ...). rencontrées entre les stations.
D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit et qui est faite en référence aux dessins annexés, parmi lesquels :
- La figure 1 illustre la transmission de messages de données selon le procédé de l'invention/
- La figure 2 représente les moyens employés dans chaque station pour traiter les messages de données;
- La figure 3 représente les étapes d'une phase
' d'émission de messages de données' dans une- station; - La figure 4 représente les étapes d'une phase de réception de messages de données dans une station; et
- La figure 5 est un exemple de réseau de stations.
Dans la suite de la description, la station source d'un message de données désigne la station du réseau qui a généré ce message et la station destination désigne la station à laquelle ce message de données est destiné. La station source correspond à la première station du chemin de transmission suivi par le message de données
et la station destination correspond à la dernière station de ce chemin. Par ailleurs, pour chaque saut de transmission, la station cible désigne la station voisine vers laquelle est émis le message de données. La station cible peut être la station destination . du message de données ou une station intermédiaire.
Chaque station comprend un modem pour recevoir, traiter et émettre les messages de données . Ce modem est soit acoustique, soit hertzien.
Selon l'invention, la transmission d'un message de données d'une station source du réseau vers une station destination est effectuée de proche en proche par sauts de transmission successifs, non forcément consécutifs, indépendants entre eux. Pour aller d'une station A vers une station B, un message de données transite par des stations intermédiaires si les stations A et B ne sont pas voisines. A chaque saut de transmission, le message de données est généralement transmis avec d'autres messages de données. Un saut de transmission correspond à la transmission de données d'une station vers l'une de ses voisines. Deux stations sont dites voisines s'il est possible de transmettre directement des données de l'une vers l'autre sans passer par des stations intermédiaires .
Selon l'invention, à chaque fois qu'une station du réseau reçoit ou génère un message de données, il y a deux situations possibles:
- si la station destination du message .de données est la station considérée, les données du message sont interprétées par la station ;
- . sinon, elle détermine une station voisine vers laquelle émettre le message de données en fonction .de sa station destination et mémorise ledit message de données dans un espace mémoire de la station affecté à la station voisine déterminée.
Elle détermine la station voisine vers laquelle émettre le message de données à'- l'aide de tables de- routage.' Chaque station dispose de plusieurs tables de routage lui permettant notamment d'identifier ses voisines et d'évaluer la distance qui la sépare des autres stations du réseau. Ces tables de routage vont permettre d'identifier la station voisine qui est la plus proche de la station destination du message de données. Le
•message de données sera retransmis vers cette station voisine.
S 'agissant de l'émission des messages de données, une station du réseau n'émet vers une station voisine le ou les messages de données contenu (s) dans l'espace mémoire affecté à cette station voisine que lorsque le ou les messages de données à transmettre de cet espace mémoire satisfont un ou plusieurs critères d'émission.
Par exemple, les messages de données d'un espace mémoire sont émis vers la station cible associée à cet espace mémoire si le volume de messages de données contenus dans cet espace mémoire est supérieure ou
égale à une valeur seuil, et/ou si le temps de présence d'au moins un message de données dans cet espace mémoire est supérieure à une valeur seuil, et/ou si cet espace mémoire contient des messages de données prioritaires. .....
Le procédé de l'invention peut être illustré par la figure 1. Dans cette figure, on considère trois stations, référencées ST1, ST2, ST3 et ST4. Les stations ST1, ST3 et ST4 sont des stations voisines de la-, .station ST2. Les stations ST3 et ST4 ne- sont toutefois pas voisines à la station 1. La station ST1 doit transmettre des messages de données, référencés
M2, M3 et M4, respectivement aux stations ST2, ST3 et ST4. Les trois messages M2, M3 et M4 sont transmis ensemble vers la station ST2 par un premier saut de transmission. La station ST2 analyse ensuite les messages de données reçus. Elle interprète le message de données M2 qui lui est destiné et place le message M3 dans l'espace mémoire de la station ST2 affecté à la station ST3 et le message M4 dans l'espace mémoire de la station ST2 affecté à la station ST4. Le message M3 sera transmis ultérieurement vers la station ST3 avec les autres messages de données contenus dans l'espace mémoire affecté à la station ST3 lorsque ces messages de cet espace mémoire satisferont au critère d'émission préalablement défini. Le message M4 sera transmis ultérieurement de la même manière vers la station ST4.
Pour mettre en œuvre ce procédé, le modem de chaque station du réseau comporte des moyens
d'émission/réception pour émettre et recevoir des messages de données, des moyens pour traiter les
'•• ''messages de données reçus et générés par la station, et
. des moyens pour les stocker. Avantageusement, les
5 moyens de stockage consistent en : ....
. - un circuit tampon pour stocker les messages - de données reçus par la station, appelé circuit tampon de réception;
- un circuit tampon, appelé circuit tampon réseau, pour 10 chacune des stations voisines de la station considérée
' afin de stocker les messages de données- à -transmettre à ses voisines; ainsi, si la station considérée a N stations voisines, son modem comporte N circuits tampons réseau, un circuit tampon réseau étant affecté
15 à chaque station voisine;
- un circuit tampon, appelé circuit tampon d'émission, pour stocker les messages de données provenant de l'un des circuits tampons réseau de la station qui vont être émis par les moyens d'émission du modem; et
20 - un circuit tampon pour stocker les messages de données générés par la station, appelé circuit tampon utilisateur.
On peut alors illustrer de manière très simple le 25 fonctionnement du modem de chaque station à travers la figure 2. Dans cette figure, on considère un modem comportant des moyens de réception REC, des moyens d'émission EM, une unité centrale dans laquelle est exécutée une application APP, un circuit tampon de 30 réception BR, un circuit tampon d'émission BE, un circuit tampon utilisateur BU et trois circuits tampons
réseau BN1, BN2 et BN3 pour stocker les messages de données destinés à être transmis vers des stations voisines, respectivement VI, V2 et V3.
Les messages de données reçus par les moyens .de réception REC du modem de la station sont placés dans le circuit tampon de réception BR du modem. Les messages de données dont la station destination est la station considérée sont transmis à l'application APP de la station et interprétés par celle-ci. Les autres messages de données reçus sont .placés- dans les différents circuits tampons réseau BN1, BN2, BN3 en fonction de leur station destination. De même, si l'application APP génère des messages de données, la station les place tout d'abord dans le circuit tampon utilisateur BU puis dans les différents circuits tampons réseau BN1, BN2 et BN3, en fonction de leur station destination.
Une unité de traitement (non représentée sur la figure) est prévue pour déterminer, pour chacun des messages de données reçus ou générés, la station voisine vers laquelle transmettre le message de données en fonction de sa station destination.
Ensuite, si les messages de données de l'un des circuits tampons réseau satisfont le critère d'émission prédéfini, le contenu de ce circuit tampon réseau est transféré dans le circuit tampon d'émission BE de la station. Les messages de données contenus dans le circuit tampon d'émission sont alors transmis par les
moyens d'émission EM vers la station cible associée au circuit tampon réseau dont le contenu a été transféré dans le circuit tampon d'émission.
Pour traiter les messages de données, le modem .de chaque station entre alternativement dans plusieurs phases de fonctionnement :
- en phase d'émission, le modem émet des messages de données; - en phase de réception, le modem reçoit des messages de données; et
- en phase de veille, le modem traite les messages reçus ou générés, met à jour les tables de routage de la station si nécessaire et évalue régulièrement la qualité des liaisons avec les stations voisines. En dehors de ces trois tâches, le modem est en veille profonde et n'effectue aucune opération.
En phase d'émission, le modem exécute les étapes suivantes illustrées à la figure 3 :
- étape El: écoute du canal acoustique ou d'un canal hertzien disponible pour émettre les messages de données contenus dans le circuit tampon d'émission vers une station cible; - étape E2 : émission d'un message de configuration de transmission CFG vers les stations voisines; étape E3 : attente d'un message d'acquittement provenant de la station cible, et transmission vers la station cible des messages de données contenus dans le circuit tampon d'émission du modem; et
- étape E4 (facultative) : envoi d'un message de fin de transmission à toutes les stations voisines.
Pour décrire ces étapes, on considère un modem, A, ayant des messages de données dans son circuit tampon d'émission à émettre vers un- modem B d'une station voisine.
ETAPE El Le modem A estime la disponibilité du canal acoustique ou hertzien1 pour émettre les. messages de données par paquets vers le modem B. Cette étape est par exemple réalisée en effectuant une mesure de bruit du canal acoustique.
ETAPE E2
Le modem A émet un message de configuration de transmission CFG vers les stations voisines' à travers le canal sélectionné et déclenche un compte à rebours. Ce message est destiné à être interprété par le modem B. Il comporte des informations relatives au nombre et/ou à la taille des paquets de données à émettre et/ou au type de modulation et/ou au débit de transmission et/ou au type de transmission (avec ou sans acquittement après chaque paquet de données) qui seront employés pour la transmission des messages de données à suivre (le type de modulation et le débit à employer ont été évalués au cours d'une phase précédente de veille de la station) . Si le message CFG est reçu sans erreur par le modem B, celui-ci renvoie un message d'acquittement ACK au modem A. Sinon, il
renvoie un message de non acquittement NACK. Les modems des stations voisines, autres que le modem B, détectant que le message CFG ne leur est pas destiné, passent alors dans une phase de veille avec interdiction d'émettre pendant une durée prédéfinie.
ETAPE E3
Le modem A attend la réception du message d'acquittement ACK provenant du modem B. Si au terme de son compte à rebours, le modem A n'a pas reçu de message d'acquittement ACK, il reprend la phase d'émission à l'étape El pour estimer de nouveau la disponibilité du canal. Si le modem A reçoit le message d'acquittement ACK avant la fin de son compte à rebours, il émet les messages de données par paquets successifs vers le modem B. Si, après M tentatives, le modem A n'a toujours pas reçu de message d'acquittement du modem B, il modifie les tables de routage de la station et passe à l'étape E4.
Après réception du message d'acquittement ACK, le modem A peut émettre les paquets de données à travers le canal selon deux modes de transmission différents :
- selon un premier mode de transmission, le modem A émet les paquets de données de façon continue les uns à la suite des autres sans attendre de message d' acquittement;
- selon un deuxième mode de transmission, le modem A émet un premier paquet de données puis attend un message d'acquittement ou de non acquittement du modem B avant d'envoyer le paquet suivant, et ainsi de suite;
dans ce mode de transmission, le modem A déclenche un compte à rebours après l'envoi de chaque paquet de données. Si le modem A n'a pas reçu de message ACK au terme, du compte à rebours ou a reçu un message NACK, il émet le paquet de données suivant si il y en a "un.. Si il y a N échecs consécutifs avec le même type .de modulation, le modem A modifie alors ses tables de routage en supprimant sa liaison avec le modem B (le modem B n'est alors plus considéré comme un modem voisin), et passe à l'étape suivante.
ETAPE E4
L'étape E4 est exécutée lorsque le modem A n'a plus de paquets de données à émettre vers le modem B. Cette étape peut être réalisée de deux manières différentes: soit le modem A envoie à toutes les stations voisines un message de fin de transmission leur indiquant qu'elles peuvent de nouveau émettre si nécessaire, soit chaque station voisine repasse d'elle-même dans un mode lui permettant d'émettre à nouveau des messages de données, par exemple à la fin d'un compte à rebours, déclenché à la réception du message de configuration de transmission CFG, la durée du compte à rebours étant proportionnelle au nombre de paquets de données à recevoir. Après l'émission de tous les paquets de données, le modem A repasse en phase de veille.
En phase de réception, le modem B exécute les étapes suivantes illustrées à la figure 4 : - étape RI : réception du message de configuration de transmission;
- étape R2 •: émission d'un message d'acquittement vers le modem A;
- étape R3 : interprétation du message de configuration de transmission; - étape R4 : réception des messages de données; et .. .
- étape R5 (facultative): réception d'un mes.sage de^fin de transmission.
ETAPE RI Le message CFG est reçu par les moyens de réception du modem B. Ce message es '-également reçu par 'les autres modems voisins du modem A. Le message CFG ne leur étant pas destiné, ils passent dans une phase de veille avec interdiction d'émettre pendant une durée prédéfinie.
ETAPE R2
Si le modem B ne détecte aucune erreur dans le message CFG, il renvoie un message d'acquittement ACK au modem A et déclenche un compte à rebours dont la durée est fonction notamment du nombre et de la taille des paquets de données à recevoir. Si le message CFG reçu est erroné, le modem B renvoie un message de non acquittement NACK.
ETAPE R3
Le modem B interprète ensuite le message CFG pour déterminer le nombre et la taille des paquets de données qui seront reçus et éventuellement le type de modulation, le débit de transmission et le type de transmission (avec ou sans acquittement après chaque
paquet de données) qui seront utilisés pour la transmission des messages des données. .
ETAPE R4 Le modem B reçoit les paquets des messages de données. Le modem B renvoie alors a modem A un . message d'acquittement ACK ou de non-acquittement NACK après chaque paquet de données ou après chaque message de données, la procédure à appliquer étant précisée dans le message CFG préalablement reçu. Selon le premier mode de transmission défini précédemment, le modem B vérifie que les messages de données reçus ne sont pas erronés et les charge dans son circuit tampon de réception s'ils ne comportent pas d'erreur. Selon le deuxième mode de transmission, le modem B vérifie un à un les paquets de chaque message de données et les enregistre au fur et à mesure dans son circuit tampon de réception. Les paquets erronés ne sont pas enregistrés dans le circuit tampon de réception.
Etape R5
A la fin de la transmission, le modem B reçoit un message de fin de transmission pour passer en phase de veille ou repasse de lui-même dans cette phase au terme de son compte à rebours .
Pendant la phase de veille, le modem B va alors traiter les messages de données présents dans son circuit tampon de réception. Pendant cette phase, les messages de données dont la station destination est la station du modem B sont envoyés vers l'application de la
station du modem B pour que celle-ci les interprète. Les autres messages de données sont enregistrés dans les différents circuits tampons réseau de la station en fonction de leur station destination. Pour ce faire, l'unité de traitement du modem détermine pour chaque message de données à l'aide de tables de routage la station voisine vers laquelle émettre le message de données et enregistre alors le message de données dans le circuit tampon réseau se rapportant à cette station voisine. La détermination de la station voisine vers laquelle transmettre le message de données est détaillée plus en amont dans la description.
En phase de veille, le modem vérifie également régulièrement si son circuit tampon utilisateur contient des messages de données. Si c'est le cas, il détermine également pour chacun d'entre eux la station voisine vers laquelle émettre le message de données et les enregistre comme précédemment dans le ou les circuits tampons réseau appropriés.
Puis le modem, toujours en phase de veille, détermine si le critère d'émission choisi est satisfait par les messages de données de l'un des circuits tampons réseau. Si le critère est satisfait, le modem transfère les messages de données de ce circuit tampon réseau vers le circuit tampon d'émission. Le modem considéré passe alors de nouveau en phase d'émission.
Pendant la phase de veille, le modem est également chargé d'évaluer régulièrement la qualité des liaisons
avec les stations voisines et de définir les types de modulation à employer pour une transmission sans erreur et pour une transmission acceptant quelques erreurs. Cette opération d'évaluation des liaisons permet notamment de rétablir ou de supprimer des liaisons., avec des stations, voisines. Des messag.es de mise à jour des tables de routage sont alors générés par le modem. Ces messages de mise à jour sont utilisés pour modifier les tables de routage du modem et transmis aux stations voisines pour qu'elles mettent à jour leurs tables de routage .
Ainsi, chaque station dispose des tables de routage suivantes : - DISTANCEi : vecteur de nombres entiers représentant la distance entre une station i et l'ensemble des stations du réseau ; la valeur DISTANCEj.[k] représente le nombre .de sauts entre la station i et la station k ; à la mise en service du réseau, chaque composante du vecteur est initialisée à la valeur ∞ à l'exception de celle de la station i qui est initialisée à zéro : DISTANCEi [i]=0 et Vj≠i, DISTANCEi[j]=∞ ;
- VOISIN_VERSι : tableau de N lignes et N colonnes de nombres entiers ; VOISIN_VERSι [j , k] indique, si i est voisine de j , la perception qu'a la station i de la distance entre la station j et la station k.
Le contenu des tables de routage DISTANCEi et VOISIN VERSi est illustré au travers d'un exemple. Dans
cet exemple, on va donc considérer un réseau très simple comportant six stations identifiées -par les numéros 1 à 6. Ces stations sont placées les unes - par rapport aux autres comme indiqué sur le schéma de la figure 5. .. .
La table VOISIN_VERSι de la station 1 est représentée ci-après. La case placée au croisement de la nème ligne et la peme colonne représente le nombre de sauts séparant la station n de la station p.
VOISINS VERSi
Chaque case du tableau a été initialisée à la valeur oo. Les lignes comportant uniquement des valeurs infinies se rapportent donc à des stations qui ne sont pas voisines de la station 1. Dans cet exemple, seules les stations 2 et 6 sont voisines de la station 1. Par ailleurs, VOISIN_VERSx [2, 4] =2 signifie que 2 sauts sont nécessaires pour transmettre des données de la station 2 vers la station 4.
D'autre part le vecteur DISTANCEi est le suivant
DISTANCEi [5] =2 signifie que 2 sauts sont nécessaires pour transmettre les données de la station 1 vers la station 5. Ce vecteur est obtenu en incrémentant de 1- la plus petite valeur de la colonne correspondante .de la table VOISIN_VERSι, à l'exception de DISTANCE
! [1] qui est mis à 0. On a par exemple : DISTANCEι[5]=l+min{VOISIN_VERSι[k,5] pour k e[l,..,6]
Les tables se rapportant aux autres stations de cet exemple sont données ci-après :
VOI S IN VERS2
DI STANCE2
VOI S IN VERS3
DI STANCE3
DISTANCE4
VOISIN VERS5
DIS ANCES
VOISIN VERSg
DISTANCE6
UTILISATION DES TABLES DE ROUTAGE POUR DETERMINER UNE STATION VOISINE VERS LAQUELLE EMETTRE UN MESSAGE DE DONNEES REÇU OU GENERE
La détermination de la station voisine vers laquelle la
5 station i doit émettre le message msg(m, Sf) est effectuée en consultant le tableau VOISIN_VERSι. m désigne le contenu du message et Sf la station destination de ce message.' Prenons par exemple le cas où la station 3 du réseau de la FIG. 5 reçoit le
10 message msg(m, 1) . Les stations 1 et 3 ne sont pas
'.• ' . voisines. En consultant le tableau. VOISIN_VERS3, on constate que, parmi les stations voisines de la station
3, la station 2 est la plus proche de la station 1
(VOISIN_VERS3 [1, 2]=1) . Le message msg(m,l) sera donc
15 transmis à la station 2.
Le vecteur DISTANCEi est utilisé pour vérifier que la station destination Sf du message est accessible c'est^ à-dire que DISTANCE^. [Sf] n'est pas infini. Ce vecteur 0 est également utilisé pour les mises à jour des tables VOISIN_VERSι.
MI SE A JOUR DES TABLES DE ROUTAGE
25 Lorsqu'une panne (perte d'une liaison ou d'une station) intervient, les informations contenues dans les tables DISTANCEi ET VOISIN__VERSi des stations concernées sont mises à jour. À noter que la perte d'une station est équivalente à la perte de toutes ses liaisons avec ses
30 voisines. Une mise à jour des tables est également réalisée lorsqu'une nouvelle station est insérée dans
le réseau ou qu'une liaison entre deux stations est rétablie.
La perte d'une liaison entre les stations i et j est détectée au moyen d'une opération de maintenance
(pendant la phase de veille) , appelée opération de suspicion mutuelle : toute station i envoie périodiquement à chacune de ses voisines un message de présence présent (i) ; si la station voisine j ne reçoit pas ce message de présence pendant une période de temps prédéterminée, elle en .conclut à la panne de- la liaison correspondante ; on peut matérialiser cette non- réception du message présent (i) par la réception d'un message de panne (i,j) par la station j ; de manière analogue, lors de l'insertion d'une liaison (i,j) dans le réseau, la station i reçoit un message de présence présent (j) et en déduit la présence d'une nouvelle station j ; .par retour d'acquittement de la station i, la station j apprend également que la station i est voisine ; on peut matérialiser cela par la réception d'un message insertion (i, j ) par les stations i et j .
Ainsi, lorsque la- station i reçoit un message insertion (i, j ) , elle apprend que la station j est une nouvelle voisine ; elle recalcule les valeurs du vecteur DISTANCEi, notamment DISTANCEι[j] qui est désormais égal à 1, et la ligne du tableau VOISIN_VERSι se rapportant à la station j . Par ailleurs, elle informe ses autres voisines de ce nouveau voisinage et leur envoie des messages de mise à jour maj(d,i,j) pour chaque valeur modifiée de DISTANCEi. Le message
maj (d, i,k) indique à son destinataire j que VOISIN_VERSj [i, k]=d. Ainsi seules les valeurs • • impliquées par les modifications sont recalculées.
5 Lorsque la station i reçoit un message panne (i,j), .elle en déduit que la station .j n'est plus voisine. Cette perte de voisinage entraîne une mise à jour des tables de la station i. La ligne du tableau VOISIN_VERSι se rapportant à la station j est modifiée et le vecteur 10 DISTANCEi est recalculé. La station i envoie également ".* à ses voisines des messages de .mise à .jour maj(d,.i,k) pour chaque valeur modifiée de DISTANCEi.
Par ailleurs, lorsqu'une station, par exemple i reçoit 15 un message de mise à jour maj(d,j,k), elle met à jour VOISIN_VERSι [j , k]=d et recalcule avec cette nouvelle valeur le vecteur DISTANCEi puis diffuse à ses voisines les distances qui ont. été modifiées dans le vecteur DISTANCEi par de nouveaux messages de mise à jour.
20
EXEMPLE DE MISE A JOUR DES TABLES DE ROUTAGE
Un exemple de mise, à jour des tables DISTANCEi et VOISIN_VERSι est donné ci-après. Dans cet exemple, la
25 liaison entre les stations 1 et 2 du réseau de la figure 5 est rompue. Grâce aux opérations de suspicion mutuelle, ces deux stations vont détecter l'absence d'une station voisine. Dès que la station 1 aura détecté la panne (la non-réception du message
30 présent (j) dans le temps imparti) elle modifie VOISIN VERSI et DISTANCEI de la façon suivante (les
valeurs recalculées sont indiquées en trait gras et soulignées) :
VOISIN VERSi
DISTANCEi
La modification de deux valeurs du vecteur DISTANCEi entraîne alors l'envoi des messages maj (3,1,3) et maj (2,1,2) par la station 1 à ses voisines, soit dans le cas présent à la station 6. Certaines valeurs du tableau de la station 6 sont alors modifiées :
VOISIN VERS6
DISTANCEg
Lorsque la station 2 détecte à son tour la panne, on obtient:
VOISIN VERS2
DISTANCE;.
La modification de la valeur DISTANCE2[1] entraîne l.'envoi du message maj (2,2,1) aux stations voisines 3 et 6.
Les tables de la station 6 deviennent :
VOISIN VERS6
DISTANCEg
Le vecteur DISTANCE6 n'ayant pas été modifié, la station n'envoie donc aucun message de mise à jour.
La réception du message de mise à jour maj (2,2,1) par la station 3 entraîne les modifications suivantes :
VOISIN VERS3
DISTANCE3
La .modification de la valeur DISTANCE3 [1] entraîne l'envoi du message maj (3, ..3,1) aux stations 2, 4 et 5. Le traitement de ce message par la station 2 ne modifie pas le contenu des tables VOISIN_VERS2 et DISTANCE2. On obtient ainsi :
OISIN VERS 4
DISTANCE4
VOISIN VERS5
DI STANCE5
Par ce protocole de suspicion mutuelle, chaque 'modification, du réseau ne génère qu'un nombre fini de messages de mise à jour. Si, à un instant donné, aucun message de mise à jour n'est en transit, alors les tables définissent comme chemins optimaux ceux qui le sont réellement. L'optimalite est obtenue lorsque tous les messages de mise à jour ont été traités.
Ces tables de routage permettent -donc de déterminer les stations vers lesquelles transmettre les messages de données contenus dans le circuit tampon de réception et dans le circuit tampon utilisateur du modem.