• Aucun résultat trouvé

Etude de la modélisation des transmissions broadcastbroadcast

communications pour réseaux de capteurs sans fil

8.2 Etude de la modélisation des transmissions broadcastbroadcast

Dans cette section, nous nous intéressons à la modélisation de la nature broadcast des transmissions sans fil. Dans un réseau sans fil, quand un nœud transmet un pa-quet, ce paquet est reçu par tous les nœuds à portée radio, ce type de transmission est

nommé broadcast. Dans la littérature sur la vérification formelle des réseaux sans fil, on trouve trois façons de modéliser ce type de transmissions, nous les présentons dans la section 8.2.1. Le fait qu’il existe plusieurs façons de modéliser le même comporte-ment nous pousse à nous demander si une représentation est meilleure que les autres pour les performances de la vérification (pour le passage à l’échelle notamment). Dans cette section nous évaluons l’impact du choix de modélisation du broadcast sur les performances du Model Checking. La meilleure technique étant celle qui permet de modéliser correctement cet aspect tout en limitant le plus possible l’explosion com-binatoire de l’espace de configurations, autorisant ainsi à vérifier des réseaux plus grands.

La méthodologie d’évaluation se déroule en deux étapes :

1. Dans un premier temps, nous prenons un modèle minimaliste de chaque mo-délisation de broadcast. Nous décrivons ensuite l’espace de configurations (une configuration correspond à un état du TLTS induit par le TA comme men-tionné dans la section 7.2.6 du chapitre 7) générées lors du Model Checking. Cela nous permet de déterminer quelle modélisation induit le plus petit espace de configurations (donc le plus rapide à explorer).

2. Dans deuxième temps, nous produisons 3 modèles du protocole de routage GRAB [Ye et al., 2005a] présenté dans la section 2.1.2 du Chapitre 2, un pour chaque façon de représenter les transmissions broadcast. Nous vérifions ensuite le comportement temporel du protocole et évaluons les performances d’UPPAAL en termes de taille d’espace de configurations généré et de durée de vérifica-tion. Cela nous permet de conforter les conclusions obtenues avec les modèles minimalistes.

Nous décrivons d’abord les trois types de modélisation de broadcast en nous appuyant sur leur utilisation dans la littérature.

8.2.1 Modélisations du broadcast

On trouve dans la littérature trois façons de représenter le broadcast, toutes sont basées sur des synchronisations entre les différents nœuds du réseau. Dans [Gerd Behrmann and Larsen, 2004], un tutoriel sur l’utilisation de UPPAAL, les au-teurs préconisent de représenter les communications entre nœuds d’un réseau grâce a des synchronisations entre TA avec passage de valeur : cela consiste à synchroniser des TA comme décrit dans la section 7.3.3 du Chapitre 7 en modifiant des variables globales qui représentent le contenu du message. Les modélisations des transmissions

broadcast dans les réseaux sans fil que nous présentons dans cette section s’inspirent

de ce principe. Dans les réseaux radio, la portée du paquet doit cependant être li-mitée aux voisins du nœud, la topologie logique entre donc en considération dans la modélisation des transmissions broadcast.

∗. Nous définissons un modèle minimaliste comme étant une représentation de la transmission seule, sans aucun autre aspect protocolaire.

Vérification de la connectivité après synchronisation

Dans [Wibling et al., 2004] les auteurs modélisent un réseau adhoc avec UPPAAL pour évaluer la faisabilité de la vérification par Model Checking sur ce type de réseaux. Ils modélisent la topologie du réseau grâce à une matrice de connectivité (dans UP-PAAL c’est un tableau de booléens qui fait partie des variables globales). Le médium du réseau est représenté par un canal de synchronisation broadcast, le nœud émetteur synchronise tous les nœuds du réseau, chaque nœud vérifie ensuite s’il est connecté à l’émetteur grâce à la matrice de connectivité. S’il est connecté, il copie la valeur de la variable globale contenant la donnée du message dans une variable locale, sinon il ne prend pas en compte la variable globale. Cette méthode est aussi utilisée dans [Tschirner et al., 2008], détaillé dans la section 7.4 du chapitre précédent. On peut noter que cette méthode permet de représenter les changements topologiques par des modifications de la matrice de connectivité.

Un canal de synchronisation par groupe de nœuds formant une clique

Les auteurs de [Godskesen and Gryn, 2006] proposent de modéliser les transmis-sions broadcast grâce à l’utilisation de multiples canaux de synchronisation définis en fonction de la topologie. Chaque nœud appartient à un ou plusieurs groupes, les groupes sont des cliques maximales (une clique maximale est une clique que l’on ne peut pas étendre en ajoutant des nœuds adjacents à ceux qui font partie de la clique). Un canal de synchronisation broadcast est défini pour chaque groupe, un nœud vou-lant transmettre synchronise les groupes auxquels il appartient. Un nœud récepteur se synchronise sur les canaux qui correspondent aux groupes auxquels il appartient. Le détail de la construction des groupes n’est pas présenté dans l’article. Une ver-sion simplifiée de cette modélisation du broadcast consiste à définir les groupes non plus comme des cliques maximales mais comme des paires de nœuds connectés. Dans ce cas, il faut un canal de synchronisation pour chaque arête du graphe qui repré-sente la topologie du réseau. C’est l’approche adoptée par [Watteyne et al., 2006a] et [Fruth, 2006], présentés dans la section 7.4 du chapitre précédent.

Vérification de la connectivité avant synchronisation

Dans [Fehnker et al., 2007], comme dans [Wibling et al., 2004] décrit dans la sec-tion 7.4, le médium de communicasec-tion est représenté par un canal de synchroni-sation broadcast et la topologie par une matrice de connectivité. En revanche, dans [Fehnker et al., 2007], la synchronisation des nœuds récepteurs est effectuée seulement si les nœuds sont voisins dans la topologie (on rappelle que dans [Wibling et al., 2004] tous les nœuds du réseau sont synchronisés) : cette synchronisation conditionnelle est possible en vérifiant la connectivité dans la garde de la transition de synchronisation (qui est donc active seulement si le nœud est connecté à l’émetteur).

8.2.2 Evaluation de la taille des espaces de configurations

induits par les modèles de broadcast : cas minimalistes

Dans cette section, nous étudions la taille de l’espace de configurations induit par chacune des trois modélisations possibles des transmissions broadcast. Comme nous l’avons vu dans la section 7.2.1 du Chapitre 7, lors du Model Checking, c’est l’inter-prétation sémantique du modèle du système qui est explorée (c’est-à-dire l’espace des configurations). Il faut donc être vigilent lors de la modélisation du système pour ne pas produire un modèle qui induit une explosion combinatoire de l’espace des confi-gurations. Nous nous intéressons donc à la taille de l’espace de configurations produit par les 3 façons de modéliser les transmissions broadcast. Pour cela nous définissons 3 modèles de broadcast minimalistes : ils ne représentent que les transmissions (sans as-pects protocolaires). Ces modèles minimalistes permettent de se concentrer seulement sur les configurations induites par les transmissions broadcast.

Pour pouvoir constater que les transmissions de paquets dépendent de la topologie (les nœuds à portée radio peuvent communiquer), nous utilisons une topologie simple représentée par la Figure 8.1 : le nœud s a un paquet à émettre et les autres nœuds attendent des paquets (il sera reçu par ses voisins n1, n2 et n3 mais pas par n4).

Figure 8.1 – Topologie utilisée par les exemples minimalistes

Modèles minimalistes de transmissions broadcast

Pour les trois modèles minimalistes, les nœuds sont représentés à l’aide de TA UPPAAL, le canal est modélisé par une variable canal broadcast et les paquets sont composés de l’identifiant du nœud émetteur et d’une donnée (ces deux informations sont des entiers) qui sont échangés à l’aide de variables globales (comme préconisé dans [Gerd Behrmann and Larsen, 2004]).