• Aucun résultat trouvé

Simultaneous Failure Recovery based on Relay Node Relocation : SFR-RNR

L’approche SFR-RNR permettra le redéploiement de certains RNs pour couvrir la zone endommagée et y restaurer ou améliorer la connectivité. Les algorithmes de recouvrement de pannes s’exécutent d’une manière distribuée au niveau des RNs frontaliers de la zone en panne. Un RN est dit frontalier de la zone en panne si l’un de ses voisins RNs est tombé en panne.

L’idée est de diviser la zone endommagée en régions hexagonales comme nous l’avons appliqué pour le champ initial. Cependant, la taille de nouveaux hexagones sera plus im- portante que celle des hexagones initiaux ain de minimiser le nombre de RNs redéployés. Cela suppose une augmentation systématique du rayon de communication au niveau des RNs. Ces RNs assureront la couverture de la surface les entourant dans la limite de leur rayon de couverture (rs). Ceci nous donnera une couverture partielle de la zone endom-

magée.

Ainsi, le choix de la taille de nouveaux hexagones (déterminés par le nouveau rayon de communication R′

c) doit se faire de sorte à trouver le meilleur compromis entre le nombre

de RNs déplacés, le nombre de nœuds en conlits et le taux de couverture.

4.5.1 Détection de pannes et découverte de voisinage

La détection de la panne de la zone endommagée se fait par ses nœuds relais frontaliers. En efet, périodiquement chaque RNi de notre réseau vériie l’état de ses RNs voisins par

l’envoi de messages heartbeat sur sa première interface (communication RN-RN). Si l’un de ses voisins RNj ne répond pas, RNifait augmenter son rayon de communication à

√ 3Rc

le fait que les RNs augmentent leur rayon de communication à√3Rcleur permet de joindre

leurs voisins à deux sauts sur les hexagones initiaux. Si aucun autre voisin n’est en panne, RNi baisse son rayon de communication à Rc et reprend son fonctionnement normal.

Dans le cas contraire, RNi envoie des messages heartbeat sur sa deuxième interface

(communication RN-capteur) pour vériier l’état des capteurs membres de son cluster. Une fois, les réponses de ses membres reçues, RNi difuse un message failure_state

dans lequel il met son ID, sa position, le nombre de ses voisins (RNs) et de ses membres (nœuds capteurs) en panne. En recevant les messages failure_state émis par les autres RNs, le nœud RNi peut déterminer sa position par rapport à la zone endommagée et

son état par rapport à ses voisins (nombre de capteurs fonctionnels et nombre de RNs voisins en panne). Ces informations seront utilisées par la suite dans la prise de décision de nœuds à déplacer.

Une fois la détection de la panne et la découverte du voisinage terminées, les RNs frontaliers de la zone z afectée (désormais appartenant à l’ensemble H1(z)) et leurs voisins

(appartenant à l’ensemble H2(z)) augmentent leur rayon de communication à R ′

c > Rc. Ce

nouveau rayon de communication va servir pour la construction de nouveaux hexagones. Un exemple de topologie d’un RCSF après l’occurrence d’une panne est donné par la igure4.3, où les points rouges désignent les RNs en pannes, les nœuds verts représentent les RNs frontaliers (H1(z)) et les nœuds bleus les nœuds de l’ensemble H2(z).

4.5.2 Déplacement des nœuds relais

Le déplacement des nœuds relais s’efectue en plusieurs étapes allant des frontières de la zone endommagée jusqu’au centre. La procédure de réorganisation du réseau s’exécute comme suit :

• Le nœud relais RNi, ayant le nombre maximal de voisins en panne et de capteurs

endommagés, déclenche la réorganisation du réseau dans son voisinage.

• Le nœud RNi se dirige vers le sommet le plus proche du nouvel hexagone construit

lors de la phase de découverte de voisinage. Les RNs se déplacent toujours dans la direction du centre de la zone endommagée.

• Lorsque RNi atteint sa nouvelle position, il difuse un message discovery avec

son ID, sa position et la distance parcourue.

• A la réception du message discovery , tous les voisins de RNisitués à une distance

R′c doivent répondre par un message ACK.

• Si RNi ne reçoit pas l’ACK de l’un de ses voisins, il déduit qu’il reste au moins un

sommet du nouvel hexagone non encore occupé par un RN. Pour tous les sommets du nouvel hexagone, voisins de RNi, non encore occupés, RNi va essayer de trouver

des remplaçants parmi les RNs frontaliers.

• S’il existe un voisin RNj appartenant à H1(z)qui n’est pas déplacé, RNi demande

à RNj de se déplacer vers l’un des sommets inoccupés.

• Si les nœuds frontaliers de la zone z (H1(z)) ne sont pas suisants pour occuper

les sommets des tous les hexagones, nous passons aux nœuds de H2(z)après H3(z)

et ainsi de suite.

• Si un nœud RNj reçoit une demande de déplacement, il informe ses voisins à un

saut de son déplacement et se dirige vers la position demandée. Ces derniers doivent également augmenter leurs rayon de communication à R′

c.

• Si à un moment donné, deux RNs se déplacent vers la même position, le nœud ayant parcouru la plus grande distance sera prioritaire pour occuper le sommet. Grâce aux messages discovery , il déterminera le sommet non encore occupé du nouvel hexagone et en informera le RN en déplacement et ayant parcourue une plus petite distance.

• En plus, avant de se déplacer, chaque RN jouant le rôle d’un CH doit difuser à ses anciens membres l’ID et le canal du nouveau CH avec lequel ils seront réassociés. Ce nouveau CH sera choisi parmi les voisins de l’ancien CH de sorte à minimiser le nombre de capteurs qui lui sont associés, le nombre d’interférences, etc.

parcourus par les RNs déplacés vers leurs nouvelles positions. Les anciens emplacements sont représentés par la couleur grise.

Figure 4.4 : Topologie du RCSF après le déplacement des RNs

4.5.3 Réattribution des canaux

Une fois le réseau réorganisé, les RNs déplacés doivent négocier leurs nouveaux canaux. La réallocation des canaux s’exécute de la frontière de la zone endommagée vers son centre. Les nouveaux nœuds frontaliers auront des voisins situés à une distance R′

c et des voisins

situés à une distance Rc. Par contre, les nouveaux RNs situés à l’intérieur de la zone

endommagée auront seulement trois voisins se situant à une distance R′

c. La réallocation

des canaux suit la procédure suivante :

• Le nœud frontalier RNi ayant le plus grand nombre de capteurs membres choisit

le canal, non encore afecté, ayant le plus petit identiiant.

• Si aucun canal n’est disponible, RNi envoie un message negotiate à ses voisins

pour voir si l’un d’entre eux accepte de changer de canal.

• Chaque nœud RNj recevant le message negotiate , vériie si son degré d’interfé-

rence est plus petit que celui du nœud RNi. Si tel est le cas, alors RNj propose le

changement de son canal au nœud RNi en lui envoyant un message ofer .

• Lorsque RNi reçoit des messages ofer de ses voisins, il choisit la meilleure propo-

sition (générant le plus petit nombre de conlits) et informe le voisin ayant proposé ce canal par un message accept .

• Si aucune proposition n’est reçue, RNi choisit le canal avec le plus petit nombre

Paramètre Valeur Champ 10000m× 10000m Nombre de capteurs 40000 Nombre de RNs 2400 Nombre de canaux 3 Nombre de RNs en panne [40,100] Surface endommagée [5%,70%] rc 100m rs 50m Rc 200m R′c √3Rc, 2Rc

Tableau 4.1 : Paramètres de simulation

• Une fois les nœuds frontaliers ont choisi leurs canaux, les RNs suivants en direction du centre de la zone z vont réitérer la même procédure jusqu’à ce que tous les RNs déplacés vers la zone endommagée aient choisi leurs nouveaux canaux de sorte à minimiser les interférences.