étude des simulateurs de routage pour réseaux

Transcription

étude des simulateurs de routage pour réseaux
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
ÉTUDE
DES
R O U TA G E
S I M U L AT E U R S
POUR
DE
RÉSEAUX
SANS FIL
Étude réalisée dans le cadre du Projet Personnel et Professionnel
Sous la tutelle de M. Jamont
IUT de Valence
Juin 2008
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Sommaire
Introduction
I. Les réseaux sans fil
1
2
1. Présentation des réseaux sans fil
2
2. Différentes catégories de réseaux sans fil
4
3. Différents modes de fonctionnement
II. Le routage
10
12
1. Explication (définition, intérêt et fonctionnement)
12
2. Le routage dans les réseaux sans fil
17
III.Les simulateurs
20
1. Intérêt des simulateurs et des simulations de réseaux
20
2. Présentation des simulateurs
24
3. Critères d'évaluation et tableau comparatif
32
IV.Le simulateur NS2
36
1. Présentation du module permettant la simulation
des réseaux mobiles
36
2. Exemple d'utilisation
40
Conclusion
45
Annexes
46
Bibliographie et webographie
53
Introduction
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Introduction
Bien qu'ils existent depuis un certain temps déjà, les réseaux sans fils
commencent seulement à se développer aujourd'hui afin de répondre aux
besoins croissants qu'a l'homme de communiquer toujours plus librement,
toujours plus rapidement.
Un réseau sans fil est un réseau dans lequel au moins deux terminaux sont
capables de communiquer entre eux grâce à des signaux radioélectriques.
Pour optimiser ce type de réseaux, il est nécessaire d'en faire une étude
précise. Elle permettra de déterminer les paramètres d'une communication
optimale.
Qu'en est-il actuellement de ces simulateurs. Quel est le fonctionnement de
ceux-ci ? Quelle est exactement leur utilité ? Quelles sont les particularités
de chacun d'eux, leurs avantages et inconvénients ?
Pour répondre à toutes ces questions, nous évoquerons dans une
première partie les types de réseau sans fil utilisés à l'heure actuelle, en
développant rapidement leurs principales caractéristiques.
Une deuxième partie détaillera le fonctionnement du routage en général
puis dans le cas des réseaux sans fil.
Nous nous pencherons ensuite sur les simulateurs de routage existants dont
nous ferons une description, puis nous en compareront un échantillon
significatif.
Dans un dernier temps, nous nous focaliserons sur le simulateur NS2.
1 / 54
I. Les réseaux sans fil
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
I. Les réseaux sans fil
Depuis la création du réseau Internet, le domaine des réseaux s'est
très vite diversifié avec de plus en plus d'utilisateurs. Pour répondre à de
nouveaux besoins en matière de mobilité, les réseaux sans fil ont vu le jour.
Il en existe de différents types (normes différentes), qui ont chacun
des avantages et des inconvénients.
PRÉSENTATION
DES RÉSEAUX SANS FILS
Dans un réseau sans fil, les câbles sont remplacés par des liaisons
radio-électriques (radio ou infrarouges). Grâce à cette technologie, les
utilisateurs ont la possibilité de rester connecté tout en se déplaçant dans
une zone plus ou moins étendue, suivant le rayon d'émission. On parle alors
de mobilité.
Ils ont l'avantage de supprimer l'investissement dans un câblage
coûteux qui peut s'avérer rapidement obsolète ou inutile en cas de
déménagements de locaux. Et, plus généralement, ils vont permettre
l'installation d'un réseau dans tout bâtiment non préalablement câblé, ou
dans lequel on n'a pas l'autorisation d'y installer un câblage (comme dans
les monuments historiques et les locaux loués). Ils s'avèrent également très
intéressants pour des installations de courtes durées comme les chantiers,
expositions et formations.
Suivant les applications, il faut parfois relier des équipements séparés
de quelques centimètres (ex: clavier et souris sans fil), jusqu'à plusieurs
kilomètres (ex: téléphones portables, GSM). On ne va donc pas utiliser la
même technologie pour tous les cas de figures. Il ne faut cependant pas
croire que l'utilisation des réseaux sans fil est une solution « miracle ».
2 / 54
I. Les réseaux sans fil
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Malgré les avantages qu'ils avancent, les réseaux sans fil présentent des
inconvénients non négligeables:
➢
La sécurité:
En utilisant des câbles, on sait où va l'information, mais avec les ondes, on
ne sait pas qui peut écouter la transmission. C'est pourquoi il est
indispensable de protéger les données. Il existe pour cela des protocoles de
chiffrement. Nous pouvons par exemple citer le WEP, le WPA ou encore le
WPA2 pour le Wi-Fi.
➢
L'affaiblissement de la puissance du signal:
Cet autre problème peut être très gênant dans certains milieux: les ondes se
propagent très bien dans l'air et ne connaissent pas de problème pour
traverser des matériaux comme le bois ou le plastique. En revanche,
l'affaiblissement est très important à travers le métal, le béton ou encore la
céramique. Nous ne pouvons donc pas implanter des réseaux sans fil dans
n'importe quel bâtiment.
➢
La santé:
L'utilisation des ondes radioélectriques inquiète certains scientifiques qui
craignent l'effet « biologique thermique », qui provoque la conversion de
l'énergie en chaleur, dans le corps humain. Tous en sont arrivés à la
conclusion « qu'aucune donnée ne permet de déclarer que les téléphones
sans fil (...) ont des effets néfastes sur la santé humaine. » Cependant, tous
conviennent qu'il faut poursuivre les recherches dans ce domaine.
3 / 54
I. Les réseaux sans fil
DIFFÉRENTES
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
CATÉGORIES DES RÉSEAUX SANS FIL
Comme je l'ai annoncé dans la partie précédente, de nombreuses
technologies différentes de réseaux sans fils existent pour répondre à des
situations spécifiques.
On distingue habituellement également plusieurs catégories de
réseaux sans fil, selon le périmètre géographique offrant une connectivité
(appelé zone de couverture) :
Réseaux locaux
sans fil (WLAN)
Réseaux métropolitains
sans fil (WMAN)
Réseaux personnels
sans fil (WPAN)
Réseaux étendus
sans fil (WWAN)
UMTS (3G)
Dans cette illustration, WPAN, WMAN, et WWAN sont les différentes
catégories. Les technologies, quant à elles, sont Bluetooth, Infrarouge, WiFi,
etc.
4 / 54
I. Les réseaux sans fil
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Les réseaux personnels sans fil : WPAN (Wireless
Personal Area Network)
Cette catégorie concerne les réseaux sans fil utilisant des fréquences
hertziennes ou infrarouges, d’une faible portée, quelques dizaines de
mètres. Ce type de réseau sert généralement à relier des périphériques à
des ordinateurs (imprimante, PDA, téléphone,...).
Il existe plusieurs technologies utilisées pour ce type de réseau.
La plus connue est le Bluetooth (norme IEEE 802.15.1) initiée par
Ericsson, qui propose un débit de 1 Mbps pour une portée
maximale de 30 mètres, et une basse consommation énergétique.
Une autre technologie également très courante
est l'infrarouge (IrDA: Infra-red Data Association). L'irda
un protocole de transfert de données par infrarouge,
devenu un standard. Malgré un coût très bas, l'IrDA
présente deux inconvénients majeurs : un temps de réaction très lent et
l'obligation de maintenir l'émetteur dans le faisceau de réception sans
obstacle en chemin. Le standard original d'IrDA (IrDA 1.0) a été publié en
juin 1994 et autorisait le transfert à une vitesse maximale de 115 kbs
(kilobits par seconde). C'est le protocole qui est utilisé par tous produits
compatibles IrDA. En octobre 1995 ce standard a été étendu jusqu'à 4 Mbs
(IrDA 1.1) et en janvier 1999 est publiée l'extension jusqu'à 16 Mbs.
5 / 54
I. Les réseaux sans fil
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Les réseaux locaux sans fil WLAN (Wireless Local
Area Network)
Cette technologie a été conçue initialement pour construire des
réseaux locaux Ethernet sans fil utilisant des fréquences hertziennes, pour
une portée d’une centaine de mètres. Tout l’intérêt de cette technologie,
réside dans le fait qu’on peut connecter, par le biais de ce standard, des
types de matériel différents tels que ordinateurs, périphériques, PDA,... à
Internet.
Grâce au Wi-Fi il est possible de créer des réseaux
locaux sans fils à haut débit pour peu que la station à
connecter ne soit pas trop distante par rapport au point
d'accès. Dans la pratique le Wi-Fi permet de relier des
ordinateurs portables, des machines de bureau, des assistants personnels
(PDA) ou tout type de périphérique à une liaison haut débit (11 Mbps ou
supérieur) sur un rayon de plusieurs dizaines de mètres en intérieur,
généralement entre une vingtaine et une cinquantaine de mètres à
plusieurs centaines de mètres en environnement ouvert. La norme 802.11g
permet d'atteindre des débits théorique de 54Mbps.
Grâce au Wi-Fi on peut partager des fichiers ou une connexion ADSL
sans l'encombrement de fil.
Un point particulier : les WSN (Wireless Sensor
Network), ou en français : les réseaux de capteurs sans fil.
C'est un type de réseau utilisé pour récupérer les
informations collectées par des capteurs. Les domaines
d'application concernent donc principalement les domaines
militaire et médical ainsi que l'environnement. Le principe, c'est d'implanter
6 / 54
I. Les réseaux sans fil
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
sur une zone géographique une quantité assez importante de ces capteurs
un peu spéciaux. En effet, ils doivent être assez proche les uns des autres
pour pouvoir communiquer entre eux, mais également assez éloignés pour
couvrir la plus grande surface possible. Ensuite, lorsqu'un évènement
particulier se produit sur l'un des capteurs (changement brusque de
température, mouvement...), ou lorsque l'utilisateur le demande; tous les
capteurs vont faire remonter leur dernier relevé vers « le puits ». Le soucis
majeur étant l'autonomie des capteurs: ils sont alimentés sur batterie et
doivent fonctionner le plus longtemps possible. On privilégie donc les
Sources images:
http://www-igm.univ-mlv.fr/~dr/XPOSE2006/Bunel/Presentation.html
transmissions qui consomment le moins.
7 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
I. Les réseaux sans fil
Les réseaux métropolitains sans fil : WMAN (Wireless
Metropolitan Area Network)
Ce type de réseau est basé sur la norme IEEE 802.16. Il vise des
entreprises ou des collectivités ayant des besoins en débits permettant de
concurrencer
les
lignes
spécialisées
à
moindre
coût
d'exploitation.
Cependant, les contraintes restent là encore liées à l'éloignement d'un relais
(3 à 10 Km). Seules les grandes agglomérations sont actuellement dotées
des antennes nécessaires. Les débits garantis s'échelonnent de 128 kbps à
4 Mbps.
WiMAX utilise des technologies hertziennes
destinées
principalement
à
des
architectures
point-multipoint : à partir d'une antenne centrale,
on cherche à toucher de multiples terminaux.
WiMAX
promet
des
débits
de
plusieurs
dizaines
de
mégabits / seconde sur des rayons de couverture de quelques dizaines de
kilomètres.
WiMAX
s'adresse
notamment
au
marché
des
réseaux
métropolitains, le MAN (metropolitan area network) de HiperMAN.
Plusieurs standards relèvent du terme WiMAX : les plus avancés
concernent les usages en situation fixe (le client ne bouge pas), mais une
version mobile (connexion à haut-débit en situation de mobilité) est
également prévue un peu plus tard.
8 / 54
I. Les réseaux sans fil
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Les réseaux étendus sans fil : WWAN (Wireless Wide
Area Network)
C’est le réseau sans fil connu sous le nom de réseau cellulaire mobile,
celui qui permet la connexion des téléphones mobiles. Les principales
technologies sont : GSM (Global System for Mobile communication), GPRS
(General Packet Radio Service), UMTS (Universal Mobile Telecommunication
System) et EDGE: (Enhanced Data rate for GSM Evolution).
GSM : (Global System for Mobile communication) est un
réseau radio cellulaire numérique.
Mis au point par la CETP (Conférence Européenne des Administrations des
Postes et Télécommunications) en 1982, les premiers réseaux et mobiles ne
sont apparus qu'à partir de 1991.
Le GSM permet une vitesse de transmission de 9.6 Kbps, ce qui n'est
vraiment pas grand chose, aussi il fut logique de le faire évoluer vers une
autre norme:
GPRS (General packet audio service) est une extension du
réseau GSM, qui augmente sa capacité de transmission pour permettre la
transmission des paquets de données à haut débit à 144 Kbps. La connexion
internet est ainsi plus rapide et permet le la navigation sur le web par le
wap.
9 / 54
I. Les réseaux sans fil
LES
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
MODES DE FONCTIONNEMENT
Il existe deux modes de fonctionnement pour un réseau sans fil ayant
chacun des caractéristiques propres : les modes infrastructure et ad-hoc.
Le mode infrastructure
Ce mode de fonctionnement est très semblable au protocole Ethernet
des réseaux filaires. Les machines se connectent à un point d'accès (AP) qui
partage la bande passante disponible, comme illustré ci-dessous:
L'AP donne l'accès au réseau aux machines qui le désirent, comme le
ferait un hub1 sur un réseau « filaire ». Contrairement aux réseaux
téléphoniques mobiles, il n’y a pas de mécanisme de gestion du
changement d'AP. Si une station se déplace, elle cherche le meilleur AP
accessible afin de s'y connecter et si elle change d'AP au cours de son
déplacement, la connexion sera interrompue.
1 Ou répéteur. Travaille sur la couche physique en renvoyant les données reçues sur un port vers toutes
les autres machines connectées sur ses autres ports.
10 / 54
I. Les réseaux sans fil
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Le mode Ad-Hoc
Dans ce mode, les machines clientes
sans fil se connectent les unes aux autres afin
de constituer un réseau point à point, c'est-àdire un réseau dans lequel chaque machine
joue en même temps le rôle de client et le rôle
de point d'accès. Tous les noeuds d'un réseau
de ce type se comportent comme des routeurs et prennent part à la
découverte et à la maintenance des chemins de communication entre les
différentes machines.
L'avantage de ces réseaux réside dans la facilité de mise en place et
d'ajout de nouvelles stations sur le réseau. L'absence de structure fixe
diminue aussi le coût de leur mise en oeuvre. On parle aussi de réseaux
spontanés2.
Il existe par ailleurs plusieurs algorithmes de routage utilisés dans les
réseaux sans fil. Nous allons développer ce point dans la prochaine partie.
2 Réseaux avec un contrôle autonome démuni de toute infrastructure. Ils sont auto-configurés,
distribués, souvent hétérogènes et visent à permettre à des correspondants distants de communiquer
entre eux par le biais de communications multi-sauts.
11 / 54
II. Le routage
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
II. Le routage
Dans cette partie, nous définirons tout d'abord ce qu'est le routage
dans un réseau quelconque. En effet, il est nécessaire de bien appréhender
cette notion avant d'aller plus loin. Le principe du routage sans fil ne sera
abordé qu'une fois les bases établies.
EXPLICATIONS
Le routage permet à un ensemble d'équipements informatiques (au
moins un émetteur et un récepteur) de communiquer entre eux à travers un
réseaux. Aucun d'entre eux n'a besoin de connaître le chemin complet que
devront suivre les données qui y transitent.
Pour permettre l'acheminement des données d'un point A à un point
B, l'équipement de réseau doit connaître la route à suivre. Pour ce faire, il
doit disposer d'une table de routage3. Celle-ci contient l'ensemble des
adresses des postes de travail répartis sur le réseau. Nous détaillerons plus
en détail le rôle d'une table de routage dans la suite de cet exposé.
Afin de bien comprendre la notion de routage, il est nécessaire de
connaître le modèle OSI4. En effet, l'acheminement d'un paquet sur un
réseau se fait par l'intermédiaire d'échanges entre les couches de ce
modèle.
Le modèle OSI est représenté sous la forme de sept couches, du
niveau le plus bas (la couche physique), au niveau le plus haut (la couche
application).
3 Voir annexe
4 Open System Interconnexion. Voir annexe.
12 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
II. Le routage
Prenons l'exemple d'un paquet de données circulant d'un poste de
travail A à un poste B à travers 3 routeurs. Le schéma suivant traduit cette
communication:
Schéma 1:
Couche application
application layer
Couche application
application layer
Couche présentation
presentation layer
Couche présentation
presentation layer
Couche session
Session layer
Couche session
Session layer
Couche transport
Transport layer
Couche Transport
Transport layer
Couche réseau
Network layer
Couche Réseau
Network layer
Couche Réseau
Network layer
Couche Réseau
Network layer
Couche Réseau
Network layer
Couche liaison de données
Data link layer
Couche Liaison de données
Data link layer
Couche Liaison de données
Data link layer
Couche Liaison de données
Data link layer
Couche Liaison de données
Data link layer
Couche physique
physical layer
Couche Physique
physical layer
Couche Physique
physical layer
Couche Physique
physical layer
Couche Physique
physical layer
A
Routeur 1
Routeur 2
Routeur 3
B
Explications:
Une flèche descendante représente l'encapsulation successive des
données (ajout d'information) jusqu'à atteindre la couche la plus basse du
modèle OSI (couche physique).
Le paquet est ensuite transmis au routeur qui actualise sa table de
routage et désencapsule (supprime de l'information) ce qu'il reçoit pour
atteindre la 3eme couche (couche réseau).
L'encapsulation permet à une couche inférieure de pourvoir traiter le
message de la couche supérieure et de l'envoyer à la couche inférieure.
13 / 54
II. Le routage
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Schéma 2:
Couche application
application layer
Couche présentation
presentation layer
SEGMENT
Couche session
Session layer
Paquet
contenant le
SEGMENT
segment de la
couche transport
Couche transport
Transport layer
Couche réseau
Network layer
Couche liaison de données
Data link layer
Couche physique
physical layer
Trames
contenant
le paquet de
la couche
réseau
Paquet
contenant le
SEGMENT
segment de la
couche transport
Ce schéma représentant l'encapsulation montre que chaque couche
englobe les données de la couche supérieure dans son propre format de
données: le paquet pour la couche réseau, le segment pour la couche liaison
de données.
Sur le schéma 1, on constate que le routage s'effectue au niveau de
la couche 3 du réseau. En effet, seuls les paquets de la couche 3 sont
destinés à l'adressage de bout en bout (c'est à dire entre couche de même
niveau, ou couche homologues). Les trames de la couche liaison de données
sont elles destinées à circuler à l'intérieur d'un même réseau.
Ce schéma montre que le routeur extrait d'une trame les informations
lui permettant de déterminer si les données reçues sont destinées à une de
ses interfaces ou à la diffusion (broadcast) à travers le réseau. S'il s'avère
qu'il s'agit d'une de ces deux configurations, alors la trame est acceptée. En
revanche, si la trame est destinée au même domaine, le routeur la rejette.
Après acceptation, une nouvelle vérification est effectuée. Si celle-ci
réussit, il y a désencapsulation vers la couche réseau. Un nouveau test est
14 / 54
II. Le routage
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
effectué pour savoir si le paquet est destiné à une adresse du routeur. Le
cas échéant, le paquet est désencapsulé et envoyé ver la couche 4. Si le
paquet est destiné à un autre réseau, alors on compare l'adresse de
destination
à la table de routage. Il est ensuite envoyé vers l'entrée
correspondante après encapsulation.
Le routage correspond à la sélection de la meilleure route pour
acheminer des données. Cette sélection intervient au niveau de la couche
réseau. Il y a deux méthodes de routage qui permettent de sélectionner les
meilleurs chemins parmi ceux inscrits dans les tables de routage des
routeurs: le routage dynamique et le routage statique:
Le routage statique est réalisé par l'administrateur. Il peut demander
plus de temps qu'un routage dynamique, réalisé à l'aide de protocoles de
routage. Il peut être d'autant plus long que le réseau est grand et que le
nombre d'équipements réseaux est important.
Ci-après le schéma récapitulatif de la sélection d'une route par un
routeur.
15 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
II. Le routage
Schéma 3:
Comparaison de l'adresse
d'émission du paquet avec
sa table IP
Extraction de l'adresse de
destination du paquet
Comparaison de la
destination après
application du masque
avec l 'entrée dans la
table de routage.
Le masque de la première
entrée dans la table de
routage est appliqué à
l'adresse de destination.
Oui
Correspondance à
une entrée dans la
table de routage?
Non
Transmission du paquet au
port associé à l'entrée de la
table
Entrée suivante de la table
examinée.
Le paquet ne correspond à
aucune des entrées de la table
Recherche d'une route
par défaut configurée
par l'administrateur
réseau
Définie
Transmission du paquet au
port associé à l'entrée de la
table.
Le paquet est éliminé.
Envoi d'un message à l'émetteur
indiquant la non réception du message
par le destinataire.
16 / 54
II. Le routage
LE
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
ROUTAGE DANS LES RÉSEAUX SANS FIL
De nombreuses difficultés peuvent se présenter à un administrateur
lors de la création d'un réseau sans fil. Ces problèmes sont souvent liés à la
complexité du réseau.
Il peut être impossible à un équipement A de joindre un équipement B
directement. Cela peut se produire parce que le milieu de propagation ne
permet pas la transmission. En effet, peuvent survenir des interférences
électromagnétiques dues à un orage qui vont perturber le canal de
transmission, à savoir l'air, et empêcher toute communication. Il peut aussi
s'agir d'un obstacle solide tel qu'un mur qui serait perméable aux ondes. La
distance que le message doit parcourir peut aussi être trop grande. La
solution est alors de passer par un intermédiaire. C'est à ce moment là que
se présente tout l'intérêt du routage.
Le problème majeur dans un réseau sans fil est la mobilité des
équipements responsable d'un nombre de déconnexions plus important que
dans un réseau filaire. Les équipements doivent rapidement se mettre à jour
en cas de mouvement de l'opérateur. En effet, ce dernier peut sortir du
champ d'action d'un des points d'accès (en mode infrastructure) ou d'un des
ordinateurs routeurs (en mode ad-hoc), et se mettre à portée d'un autre. Les
deux équipements doivent alors mettre à jour leur table de routage
respective pour éventuellement laisser la place à un nouvel utilisateur et ne
pas engorger le réseau.
17 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
II. Le routage
Il existe deux méthodes pour mettre à jour une table de routage:
➢
Les
Il est possible de le faire de manière statique:
tables
de
routage
de
chaque
équipement
sont
remplies
par
l'administrateur. Cette méthode s'avère très vite fastidieuse quand il s'agit
de gérer un parc informatique d'une vingtaine de machines. Elle devient
complètement obsolète quand une centaine de machines sont connectées
au réseau.
➢
De manière dynamique:
Heureusement, des protocoles existent, qui permettent de remplir de
manière dynamique les tables de routage, sans avoir recours à l'intervention
d'un opérateur.
Deux grandes techniques de routage dynamique coexistent:
➢
Le routage par vecteur de distance:
Dans ce cas, un noeud échange avec ses voisins une estimation de la
distance vers tous les noeuds du réseau. Le message ainsi envoyé, ainsi
qu'un algorithme de recherche du plus court chemin permettent de
déterminer la topologie exacte du réseau.
➢
Le routage par état des liens:
Ici, chaque noeud transmet en diffusion l'état des liens avec ses voisins.
C'est donc au bout d'un certain temps que tous les noeuds connaissent les
voisins de chacun des noeuds du réseau. La topologie complète du réseau
apparaît alors.
18 / 54
II. Le routage
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
De nombreux protocoles sont utilisés dans les réseaux ad-hoc. Nous allons
ici en présenter une liste non exhaustive.
➢
Commençons par les protocoles de routage dits proactifs (ex:
OLSR5):
Ils constituent leur table de routage avant que le besoin ne s'en fasse
ressentir, et que la demande ne soit faite, puis la maintiennent à jour en
permanence en étudiant à chaque instant la topologie du réseau. Ainsi, les
routes sont immédiatement disponibles à la demande. En revanche, le
contrôle constant et les mises à jours importantes peuvent s'avérer inutiles
et ralentir le réseau.
➢
Continuons avec les protocoles de routage dits réactifs (ex: AODV5,
DSR5):
A l'inverse des proactifs, leur table de routage n'est pas maintenue en
continu. Ils établissent une route sur demande. Ceci peut poser des
problèmes de délai importants avant l'ouverture de chaque route, dus à une
inondation du réseau.
➢
Il existe aussi des protocoles dits hybrides (ex: ZRP5):
Ils utilisent un mode proactif pour le voisinage proche et adoptent un
comportement réactif pour les communications lointaines.
Il est donc nécessaire de faire une étude approfondie de terrain pour
déterminer où positionner précisément les équipements. Pour cela, on
dispose d'outils qui permettent de simuler un réseau sans fil: les simulateurs
de réseaux.
5 Voir annexe
19 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
III. Les simulateurs
Les simulateurs de réseaux sont tous différents: certains possèdent
des avantages que d'autres n'ont pas d'où la nécessité de pouvoir les
comparer en utilisant des critères d'évaluation précis.
Mais avant cela, il est nécessaire de mentionner quel est l'intérêt de
ces simulateurs: à quoi peuvent-ils servir ?
INTÉRÊT
DES SIMULATEURS ET DES SIMULATIONS DE RÉSEAUX
Qu’est ce qu’un simulateur, quelle est son utilité ?
Les simulateurs permettent, comme leur nom l’indique, de réaliser
des simulations6 dans un environnement simulé et non pas réel. Il peuvent
aussi bien simulés un réseau de type LAN ou bien WLAN (suivant les
simulateurs). Certains simulateurs sont plus complets que d’autres dans les
résultats d’une simulation mais tous permettent d’étudier le comportement
d’un réseau ayant une topologie et des caractéristiques précises.
Les simulateurs permettent ainsi d’anticiper sur la topologie d’un
réseau. Lorsque les résultats d’une simulation ne sont pas satisfaisants, il
est facile de modifier la topologie pour corriger les problèmes avancés par la
simulation précédente.
Par exemple, si une simulation indique de par ses résultats que
l’emplacement d’un AP n’est pas correct (la zone de couverture n’est pas
6 Fait d'imiter sur un support informatique un phénomène physique.
20 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
optimale), on peut facilement modifier son emplacement via le simulateur
pour prévoir le comportement du réseau si l’AP est déplacé réellement.
La simulation est aussi intéressante pour créer la topologie d’un
réseau avant de la mettre en place réellement. Et cela est possible car les
simulateurs intègrent un grands nombre d’outils permettant de réaliser des
simulations assez réalistes (mais nous verrons plus tard que cela peut aussi
poser un problème).
On peut aussi se servir d’un simulateur pour tester un nouveau
protocole (la facilité de l’intégration dépend du simulateur utilisé) avant de
l’utiliser réellement (un protocole de réseau de capteur sans fil par
exemple).
Au final, les simulateurs sont d’une grandes aide dans la recherche
scientifique et le développement d’applications. Mais ils possèdent d’autres
avantages que nous présentons ci-dessous.
Avantages
Le premier point que l’on peut relever est le coût (financier): une
simulation est peu coûteuse car elle ne nécessite qu'un seul terminal, la
simulation se faisant graphiquement. On peut ainsi simuler aisément un
réseau complexe mettant en œuvre un grand nombre de postes.
Il n’est cependant pas encore possible de simuler Internet qui est un
réseau trop hétérogène (protocoles différents, trafics d’applications diverses
et variés) et trop évolutif en terme de taille et d’architecture / topologie.
21 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Ils sont aussi facilement abordables puisque la plupart sont distribués
sous licence GPL7 / BSD8, ou bien sous une licence particulière (OPNET est
un cas à part puisqu’il est distribué avec une licence commerciale). Ce qui
implique que l'accès aux sources est possible et, étant donné que certains
sont en cours de développement, beaucoup de documents techniques sont
disponibles pour comprendre le fonctionnement de ces simulateurs et pour
pouvoir les modifier. Ainsi, nous avons facilement pu tester le simulateur
NS2 sans avoir préalablement acquis une licence payante.
Cela permet à un maximum de personnes de prendre part au
développement de ces simulateurs et ainsi de poursuivre leur évolution
même si l’auteur original a abandonné le projet.
De plus, les simulateurs proposent un paramétrage précis et
détaillé des simulations, même s’ils intègrent tous quelques scénarios par
défaut.
Par exemple le simulateur NS2 permet de paramétrer finement le
réseau virtuel: gain des antennes, seuil de détection, comportement des
machines du réseau, trafic, …
Les résultats sont aussi détaillés : consommation de l’énergie dans le
routage d’un réseau ad-hoc, propagation des ondes radio (en suivant des
modèles plus ou moins complets [utilisation d’une formule pour calculer la
perte moyenne du signal, réflection du sol, atténuation plus importante
suivant les matériaux traversés, intérieur, extérieur,…]), calcul de délais, …
Ces résultats sont difficiles à obtenir dans une application réelle.
7 General Public Licence. Extrait : « Vous avez le droit d'utiliser le logiciel, d'en distribuer des copies,
d'obtenir les codes sources, de le modifier et de distribuer vos modification ou le logiciel modifié [...]
sous cette licence.»
8 Berkeley Software Distribution.
22 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Une telle précision pose le problème de la complexité de ces
simulateurs : il faut un certains temps pour bien les prendre en main et ainsi
pourvoir les modifier (pour intégrer certains modules complémentaires par
exemple). Un second problème se pose aussi : celui de la fiabilité des
résultats.
Un document réalisé en septembre 2000 étudie l’influence des détails
sur les simulateurs de réseaux sans fil. Il en ressort que l’utilisation de
résultats trop détaillés rend la simulation très lente et le simulateur assez
lourd, mais qu’un manque de détails nécessaires peuvent rendre les
résultats incorrects ou trompeurs.
Cependant, l’utilisation de nombreux détails permet de prédire assez
précisément les performances actuelles d’un réseau (afin d’obtenir une
simulation réaliste) mais pas les variations futures des protocoles et ne sont
donc pas adaptés pour explorer rapidement les alternatives offertes.
Le choix des détails est donc très important lors d’une simulation.
Tous les simulateurs ne présentent pas les mêmes caractéristiques et
n’offrent pas tous les même possibilités. Afin de coller le plus au sujet
possible, nous nous focaliserons uniquement sur les WNS (Wireless Network
Simulator – Simulateur de réseaux sans fil) en nous penchant d’avantages
sur leur possibilité de simulation du routage dans des réseaux sans fil
mobiles ad-hoc (Wireless mobile ad-hoc networks).
23 / 54
III. Les simulateurs
PRÉSENTATION
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
DES SIMULATEURS
Avant de procéder à une quelconque comparaison entre certains
simulateurs, il est bon de les présenter. Nous pourrons ensuite dresser la
liste des points de comparaison retenus.
Network Simulator 2 (NS2)
NS2 est un simulateur à évènements discrets destiné à la recherche.
Il est développé en collaboration avec plusieurs entreprises et centre de
recherches (pour en citer quelques uns : LBNL9, Xerox PARC10, UCB11, et USC/
ISI12 dans le cadre du projet VINT13 (qui étudie l'interaction entre différents
protocoles), depuis 1995.
Aujourd’hui, NS2 est sûrement le simulateur de réseau le plus utilisé
et est devenu avec le temps une référence dans ce domaine. Son avantage
réside aussi dans le fait qu’il est multi-plateforme (UNIX et Windows, avec
l’émulateur Cygwin14) et que son utilisation soit gratuite.
NS2 intègre un grand nombre de fonctionnalités pour l’étude des
algorithmes de routage multipoint ou unipoint, des protocoles de transport,
de session, d’application (HTTP par exemple). Il gère aussi très bien la
couche physique (couche 1) du modèle OSI avec différents systèmes de
transmission, filaires ou non. Il reste cependant uniquement adapté aux
petits réseaux.
9
10
11
12
13
14
Lawrence Berkley National Laboratory - Californie
Palo Alto Research Center - Californie
Berkley Multimedia Reseach Center - Californie
Information Sciences Institute - Californie
Virtual InterNetwork Testbed. Voir http://www.isi.edu/nsnam/vint/
Cygwin: permet d'émuler un environnement Linux sur Windows. On parle de « Linux-like
environment »
24 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
III. Les simulateurs
Caractéristiques du simulateur NS-2:
Application
Web, ftp, telnet, générateur de trafic (CBR, ...)
Transport
TCP, UDP, RTP, SRM
Routage
(couche Réseau)
Statique, dynamique (vecteur distance) et routage multipoint
(DVMRP, PIM)
Gestion de file d'attente
RED, DropTail, Token bucket
Discipline de service
CBQ, SFQ, DRR, Fair queueing
Système de transmission
(couche Liaison)
CSMA/CD, CSMA/CA, lien point à point
NS2 est entièrement développé en C++ et son utilisation requiert une
bonne maîtrise de Tcl (Tool Command Language) qui est utilisé comme un
interpréteur applicatif au langage C du simulateur. En effet, NS2 ne possède
aucun interface graphique : toutes les simulations sont réalisées en ligne de
commande.
Heureusement,
il
existe
une
extension,
nam
(Network
Animator), qui permet de visualiser les résultats d’une simulation une fois
achevée.
Capture d’écran de nam
(source : site officiel de nam – http://www.isi.edu/nsnam/nam/):
25 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Objective Modular Network (OMNet++)
OMNET ++ est un environnement de simulation open source. Cette
application possède une interface graphique solide, et un noyau de
simulation intégré.
Il a principalement pour but de simuler des communications réseaux,
mais est aussi utilisé dans la simulation de systèmes des technologies de
l'information. En effet, son architecture de base flexible lui permet même de
simuler des architectures matérielles et des processus commerciaux.
C'est ainsi que cette plateforme est devenue connue tant au sein de
la communauté scientifique que dans le monde industriel, et c'est grâce à
cette architecture modulaire qu'il est aisé d'y implémenter de nouveaux
protocoles.
Les composants d'OMNET++ sont codés en C++, puis assemblés
sous un modèle d'architecture plus large, codé luis sous un langage
fédérateur de haut niveau: le NED. Les modèles peuvent être réutilisés
librement et gratuitement.
Omnet++ gère nativement le TCP / IP15, le SCSI16 et le FDDI17.
15 Voir annexe
16 Small Computer System Interface: norme qui décrit les spécifications mécaniques, électriques et
fonctionnelles d'une ligne de communication permettant de relier un ordinateur à d'autres
périphériques ou même à un autre ordinateur.
17 Fiber Distributed Data Interface: technologie d'accès au réseau sur des lignes de type fibre optique.
Elle possède une topologie en anneau.
26 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Capture d'écran réalisée dans le cadre d'un projet réseau 2007 / 2008:
Ce projet avait pour but d'implanter dans OMNET++ les différentes
variantes d'un protocole de contrôle, le Hop-by-Hop (traduit saut par saut).
Ce dernier permet à un noeud du réseau de transmettre rapidement les
données qu'il a reçu en cas de mobilité. Les pertes de données sont ainsi
minimisées. De plus, grâce au fait qu'il n'y est pas de contrôle, le débit
efficace est augmenté, et les coûts réduits.
Ainsi, les étudiants devaient constater une amélioration significative
des performances du réseau.
27 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Global Mobile Simulator (GloMoSim)
Simulateur créé par UCLA Parallel Computing Laboratory18. Il permet
la simulation d'environnement à grande échelle pour des réseaux sans fil et
filaires. Il a été développé en se basant sur les capacités du langage
Parsec19.
Il est capable de simuler un réseau purement sans fil, avec tous les
protocoles de routage que cela inclut (AODV, DSR, algorithme de BellmanFord (routage par vecteur de distance), ODMRP20, WRP21, FSR22, ...). Dans le
futur, des nouvelles versions pourront simuler à la fois un réseau filaire et
un réseau hybride23. La plupart des systèmes réseaux de Glomosim sont
construits en utilisant une approche basée sur l’architecture à sept couches
du modèle OSI.
De plus, l'intégration de modules supplémentaires ne nécessite pas
de comprendre le fonctionnement du noyau: il suffit juste de savoir utiliser
précisément Parsec.
Glomosim est un simulateur doté d'une grande portabilité (Sun
Solaris, Linux, Windows) et sa licence est gratuite pour les universitaires.
18
19
20
21
22
23
UCLA: University of California, Los Angeles. Centre de recherche public.
Parsec: langage de simulation basé sur le langage C.
ODMRP: On-Demand Multicast Routing (protocole réactif)
WRP: Wireless Routing Protocols (protocole proactif)
FSR: Fisheye State Routing (routage par état des liens)
Réseaux hybrides: réseaux sans fil connectés à Internet
28 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
J-Sim
J-Sim a été créé par le DCSE24 de l'université West Bohemia de Pilsen,
en République Tchèque. Il est entièrement gratuit.
J-Sim permet de simuler des réseaux de l'ordre de 1000 noeuds. Le
passage à l'échelle peut toutefois être amélioré. Le simulateur utilise quasiindifféremment deux langages : Java et TCL25.
L'architecture et le code sont suffisamment bien structurés pour
permettre une prise en main relativement rapide. L'analyse des résultats est
aisée et son architecture très modulable. De plus il permet d'utiliser
n'importe quelle application Java comme générateur de trafic.
Interface graphique de Jsim :
24 DCSE: Department of Computer Science and Engineering
25 TCL: Tool Command Langage. Sert d'interpréteur embarqué au langage C (plus facile à prendre en
main)
29 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Autres simulateurs
➢
Opnet Modeler
Les modèles fournis (codés en C++) avec le simulateur sont validés
et précis. Toutefois la majorité des modèles sont écrits par des développeurs
indépendants et ne sont pas testés par Opnet. Il s'agit sûrement d'un des
simulateurs les plus au point et possède des outils assez complexes,
complets et techniques.
Plate-formes: Microsoft Windows (NT, 2000, XP) et Solaris
Licence commerciale. Il est possible de l'obtenir gratuitement en s'inscrivant
au programme Opnet pour les universités.
➢
Jist (moteur de simulation) / Swans (interface utilisateur)
Ce simulateur permet d'utiliser n'importe quelle application Java
comme générateur de trafic. Il souffre cependant du manque de modèles lié
à sa jeunesse. De plus, il adopte un mode de programmation similaire à JSim (essentiellement Java). Les protocoles sont conçus comme des
composants indépendants interconnectés par des interfaces.
Concernant l'aspect passage à l'échelle, il présente de meilleures
performances que J-Sim.
Le calcul de la propagation du signal radio, lors de la simulation de
réseaux sans fil, est optimisé, il est donc possible que le modèle de
propagation de Jist soit plus performant que celui de ses concurrents.
Plate-formes: Jist fonctionne sur sur tous les systèmes supportant Java.
Licence gratuite.
30 / 54
III. Les simulateurs
➢
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
SimulX
Simulx est un simulateur en C++, pour réseau sans-fil . Il est
spécialement destiné à simuler les réseaux basé sur la norme IEEE 802.11
et Ipv6 (réseau Wi-Fi en mode infrastructure). On peut l'utiliser à travers une
interface GTK-2 ou en ligne de commande. Il a été développé à l'université
Louis Pasteur de Strasbourg.
Langage : C++
Licence inconnue.
➢
SensorSIM
Il s'agit d'un projet d'UCLA (même développeur que Glomosim) visant
à créer un simulateur spécifique aux réseaux de capteurs sur la base de
NS-2. Cependant le projet vient de démarrer. Les sources ont d'ailleurs été
retirées de la page du projet du fait de l'absence de support.
Plate-forme : Unix (Linux, solaris, Mac OS X incertain), Microsoft Windows.
Licence gratuite.
31 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
III. Les simulateurs
CRITÈRES D'ÉVALUATION
ET TABLEAU COMPARATIF
Afin de pouvoir comparer plus facilement notre panel de simulateurs
(NS2, OMNet++, Glomosim, Jsim), nous avons définit quelques points de
comparaisons relatifs.
Modificabilité et extensibilité: capacité de modification du simulateur et
d’ajout de modules supplémentaires (extensions). Cela permet de modifier
le simulateur pour l’utilisation précise que l’on souhaite en faire.
Modules représentant les couches OSI: respect du simulateur vis-à-vis
des 7 couches du modèle OSI (principalement les couches physiques, liaison
de données, réseau, transport et application).
Modules
représentant
les
protocoles
de
routages
sans
fil:
implémentation des différents protocoles de routage ad-hoc pour réseaux
mobiles sans fil existants.
Interface Utilisateur: possibilité de paramétrage de la simulation (entrée)
et détails dans les résultats obtenus (sortie).
Représentation
de
la
topologie: le simulateur est-il capable de
représenter la topologie d’un réseau donné ?
Observabilité: L’analyse des résultats est-elle simple/claire ? Les résultats
sont-ils facilement analysables et interprétables ?
Acceptabilité dans le milieu de la recherche scientifique: utilisation
du simulateur pour faire de la recherche académique et scientifique.
Génération de trafic de données: capacité du simulateur à générer du
trafic sur le réseau virtuel d’une simulation.
Modèles de mobilité: possibilité de paramétrer le mouvement d’une
machine. On peut ainsi étudier le comportement du réseau quand un
ordinateur devient mobile (topologie dynamique).
32 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
III. Les simulateurs
Passage à l’échelle: capacité à gérer les changements de topologie,
d’échelle (agrandissement, réduction).
Documentation: avons nous facilement trouvé des documents sur le
fonctionnement, la modification du simulateur ? Existe-t-il des tutoriaux
pour faciliter la prise en main du simulateur ?
Facilité d’utilisation globale: le simulateur est-il facile à prendre en
main ? Est-il clair ?
Portabilité:
peut-on
utiliser
le
simulateur
sur
plusieurs
systèmes
d’exploitation ? Est-il stable ?
Stabilité: Est-ce que le simulateur est stable ? Comporte-il des bugs ?
Performance du moteur de simulation: rapidité d'exécution d’une
simulation précise.
Simulation
temps
réel:
le
simulateur
supporte-il
facilement
une
simulation en temps réel avec la mise en attente de certains processus (liste
d’attente) ?
Évolutivité: le simulateur est-il à jour ? Évolue t-il rapidement ? Les bugs
sont-ils souvent corrigés ?
Cet ensemble de critères nous donne la possibilité de comparer ces
simulateurs sur une base précise. Nous avons réalisé un tableau comparatif
ci-après.
33 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
III. Les simulateurs
Critères d'évaluations
NS2 OMNet++ Glomosim JSim
+
++
++
?
+
+
+
-
+
+
++
?
++
-
+
+
Entrée / Sortie
+
++
+
?
Représentation de la topologie
+
++
+
++
-
++
?
?
++
++
+
?
Génération de trafic de données
++
++
++
++
Modèles de mobilité
++
+
++
+
Passage à l’échelle
+
+
?
++
++
++
+
-
Facilité d’utilisation globale
--
++
-
+
Portabilité
+
+
+
++
Stabilité
+
+
?
?
+
+
+
++
Simulation temps réel
++
+
?
+
Évolutivité
++
++
?
-
Modificabilité et extensibilité
Modules représentant les
couches OSI
Modules représentant les
protocoles de routages sans fil
Interface Utilisateur
Observabilité
Acceptabilité dans le milieu de la
recherche scientifique
Documentation
Performance du moteur de
simulation
Légende:
Résultats fiables
Fiabilité non vérifiée
Donnée inconnue
34 / 54
III. Les simulateurs
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Conclusion
Après avoir recueilli les informations nécessaires, nous avons pu
dresser un tableau comparatif. Il en résulte que NS2 reste sans nul doute le
simulateur le plus documenté et le plus polyvalent. Seul défaut: sa
maniabilité et sa prise en main difficile. En le comparant à OMNet++, on
remarque que les deux simulateurs se valent à la différence que la prise en
main de OMNet++ est largement plus facile (présence d'une interface
graphique). On regrette peut-être le manque de détail lors du paramétrage
d'une simulation. Il demeure cependant un très bon simulateur.
Quant à Glomosim, on ne peut s'empêcher de noter qu'il est très
performant pour la simulation des réseaux sans fil (il intègre un large panel
de protocoles de routage). Comme NS2, il possède un outil de visualisation
de simulation (Glomosim Visualization Tool). La documentation peut
cependant sembler assez légère.
Jsim est celui le plus à plaindre quand à la documentation: très
difficile d'en trouver. C'est ce qui explique le manque de certitude lors de
l'évaluation de ce simulateur. On sait toutefois qu'il est très performant (ce
qui est du au moteur codé en Java) après avoir trouvé des rapports qui
comparaient le dit simulateur à NS2 ou OMNet++.
L'ensemble de ces simulateurs sont multi-plateforme (Windows et
Linux principalement) et stables pour la plupart: les bugs découverts sont
rapidement corrigés dans le cas de NS2 et Omnet++.
On peut regretter la manque de temps lors de l'étude de ces
simulateurs qui ne nous a pas permit d'établir un tableau comparatif
significatif et basé sur notre propre expérience des simulateurs.
35 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
IV. Le simulateur NS2
Après avoir comparé NS2 à d'autres simulateurs, nous avons décidé
d'approfondir un peu plus son utilisation. Dans un premier temps, nous
présenterons le module qui permet la simulation d'un réseau mobile ad-hoc,
puis, nous vous présenterons un exemple concret d'utilisation que nous
avons eu l'occasion de réaliser.
PRÉSENTATION
DU MODULE PERMETTANT LA SIMULATION D'UN RÉSEAU MOBILE
Initialement NS2 n'intègre aucun module permettant de simuler un
réseau sans fil. Mais une extension a été développée puis intégré de base
dans le simulateur par le groupe de recherche Monarch26.
Ils ont permit la simulation de réseaux sans fils ad-hoc ainsi que le
mouvement des appareils connectés aux réseaux.
Ils ont aussi inclut différents protocoles de routage afin d’étudier
précisément le comportement de tel réseaux ad-hoc démunit de toute
infrastructure comme des routeurs. Ces protocoles sont :
➢
DSR27 (Dynamic Source Routing)
➢
Tora27 (Temporarly Ordered Routing Algorithm)
➢
AODV27 (Ad Hoc On Demand Distance Vector)
➢
DSDV27 (Destination Sequenced Distance Vector)
26 Voir http://www.monarch.cs.rice.edu/cmu-ns.html
27 Voir annexe
36 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Pour utiliser cette fonction dans NS2, il faut, lors de l’écriture de la
simulation :
➔
Créer une classe28 MobileNode (« Nœud mobile ») : c’est ce qui va
représenter nos machines sur le réseau. On crée autant d’instances 29 de
la classe MobileNode qu’il y a de machines connectées.
➔
Définir la mobilité des nœuds. NS2 intègre des fonctionnalités qui
permettent d’attribuer un mouvement à un nœud dans les 3 dimensions
(uniquement les deux dimensions X et Y sont utilisées. Z=0). On définit
alors un point de départ, un point arrivé et une vitesse puis NS2 se
charge de créer un chemin aléatoire pour simuler le mouvement du
nœud ;
➔
Implémenter les protocoles de routage (couche 3 du model OSI).
C'est-à-dire définir le protocole de routage qui sera utiliser sur le réseau
parmi les 4 disponible ;
➔
Implémenter d’un objet « Link Layer30 » qui va simuler les protocoles
de la couche liaison de données : fragmentation31, détection d’erreur, de
collision (CSMA / CA32), ect… Il est aussi directement connecté à un
module ARP33 ;
➔
Implémenter la couche MAC pour indiquer le type de protocole
d'accès multiple utilisé. NS2 intègre plusieurs version de la norme 802.11
depuis sa version 2.33.
➔
Implémenter les canaux de communications et les interfaces
connectées.
➔
Implémenter les caractéristiques de communications sans fil (délai,
propagation grâce au modèle de propagation radio implémenté, gain de
l’antenne,…)
28
29
30
31
32
33
Notion de Programmation Orientée Objet (POO)
Création d'un objet d'une classe précise (POO)
Couche liaison, voir modèle OSI
Découpage d'un paquet de données en plusieurs paquets de taille plus réduite.
Carrier Sense Multiple Access with Colision Avoidance : écoute du canal et esquive de collisions.
Address Resolution Protocol : permet d'associer une adresse IP à une adresse MAC inconnue.
37 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Schéma présentant un Nœud Mobile, utilisé par NS2:
(source : http://iramus.citi.insalyon.fr/documents/reunions/19mai05/t_razafindralambo_simul_radio_ns2.pdf)
IFQ : Module gérant les file d'attente et les priorités des paquets. La priorités
est donnés aux paquets de protocoles de routage (lorsque les différentes
stations communiquent entre elles à l'aide de ces protocoles pour établir la
topologie du réseau).
Ainsi, lorsque qu’un paquet circule sur le médium, le nœud le reçoit et
lit son entête. S’il doit le rediriger, l’objet Classifier34 passe le relais au
module de routage qui se chargera de créer les en-tête de la trame 5 (IP
uniquement puisque les protocoles de routage travaillent au niveau de la
couche 3 du modèle OSI). La trame sera reçue par l'objet Link Layer qui
vérifiera, à l'aide du module ARP connecté35, si elle connaît l’adresse MAC du
destinataire correspondant à l’adresse IP de destination. Enfin, le paquet est
34 Objet, sous NS2, qui examine l'en-tête d'un paquet et qui le redirige vers un module externe.
35 Le module ARP possède une table (table ARP) qui contient les associations: Adresse IP → Adresse
MAC (lorsque celle-ci est connue).
38 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
mis en file d’attente si nécessaire puis transmis au module qui simule la
couche MAC. Ce dernier se chargera de retransmettre le paquet sur le
réseau (le channel).
En répétant ce scénario, on imagine facilement comment peut
s’effectuer le routage saut par saut dans un réseau ad-hoc et comment NS2
arrive à le simuler. Malheureusement, la création du scénario et le
paramétrage de la simulation sont très complexes sur un tel simulateur et
l'analyse des résultats l'est tout autant.
Le module permettant la simulation de routage d'un réseau sans fil de
type ad-hoc sur NS2 est donc très complet. Nous avons voulu vous montrer
l'utilisation du simulateur sous un angle plus abordable.
39 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
EXEMPLE D'UTILISATION
Installation
Nous avons installé ce simulateur sur un système Unix en le
compilant36 à partir des sources, qui contiennent également toutes ses
dépendances (tcl, nam, etc). Cette méthode nous a évité d'installer chaque
dépendance une à une, ce qui représente un gain de temps précieux.
Pour se faire, il a suffit de télécharger l'archive et d'exécuter la
commande suivante dans le répertoire dans lequel on a décompressé
l'archive:
./install
L'étape de la compilation fut un peu longue (approximativement 5 à
10 minutes) mais s'est déroulée sans problème.
L'étape suivante a été de rendre accessible le fichier exécutable ns
dans le path37. Nous avons pour cela décidé de copié le fichier binaire dans
le répertoire /usr/bin qui nous a semblé être un emplacement adéquat.
À présent, nous avons pu passer à l'utilisation concrète du logiciel.
Première utilisation
Pour donner un exemple d'utilisation de ce simulateur, nous avons
utilisé un exemple de système donné dans la documentation, pour essayer
de comprendre le fonctionnement général du logiciel.
36 Assembler l'ensemble des fichiers sources pour créer un exécutable optimisé pour la machine.
37 Contient la liste des répertoires dans lesquels vont être recherchés les fichiers exécutables.
40 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Nous avons donc tout d'abord recopié le script donné dans un fichier:
# création d'un simulateur
set ns [new Simulator]
# création du fichier de trace utilisé par le visualisateur
et indication à ns de l'utiliser
set nf [open out.nam w]
$ns namtrace-all $nf
# lorsque la simulation sera terminée, cette procédure est
appelée pour lancer automatiquement le visualisateur
proc finish {} {
global ns nf
$ns flush-trace
close $nf
exec nam out.nam &
exit 0
}
# modèle de routage
$ns rtproto DV
# création de sept noeuds à l'aide d'une boucle les
descripteurs de noeuds sont stockés dans un tableau
for {set i 0} {$i < 7} {incr i} {
set n($i) [$ns node]
}
# création de lignes de communication full duplex entre les
noeuds
for {set i 0} {$i < 7} {incr i} {
$ns duplex-link $n($i) $n([expr ($i+1)%7]) 1Mb 10ms
DropTail
}
# création d'agents générateurs de paquets à vitesse
constante paquets de 500 octets, générés toutes les 5 ms
implantation de cet agent dans le noeud n0
set cbr0 [new Agent/CBR]
$ns attach-agent $n(0) $cbr0
$cbr0 set packetSize_ 500
$cbr0 set interval_ 0.005
# création d'un agent vide, destiné à recevoir les paquets
il est implanté dans n1
set null0 [new Agent/Null]
$ns attach-agent $n(3) $null0
# routage des trafics
$ns connect $cbr0 $null0
41 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
# scénario de début et de fin de génération des paquets par
cbr0
$ns at 0.5 "$cbr0 start"
$ns at 4.5 "$cbr0 stop"
# panne d'un lien
$ns rtmodel-at 1.0 down $n(1) $n(2)
$ns rtmodel-at 2.0 up $n(1) $n(2)
# la simulation va durer 5 secondes de temps simulé
$ns at 5.0 "finish"
# début de la simulation
$ns run
Nous constatons que tous les paramètres de la simulation sont
donnés dans ce script.
La commande ns script exécutée dans un terminal nous génère un
fichier out.nam, à importer dans le logiciel nam:
xiou@portable-xiou:~/Desktop/fichier-ns$ ns script2
using backward compatible Agent/CBR; use Application/Traffic/CBR instead
ns: finish:
execute
"nam":
no such file
directory
Note: couldn't
il faut démarrer
le logiciel
nam manuellement
caror
nous
ne l'avons pas
while executing
ajouté dans le path. Sinon, il se serait exécuté automatiquement.
"exec nam out.nam &"
(procedure "finish"
line
5)nam.out dans nam:
Ouverture du
fichier
invoked from within
"finish"
Note: il faut démarrer le logiciel nam manuellement car nous ne l'avons pas
ajouté dans le path. Sinon, il se serait exécuté automatiquement.
42 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Ouverture du fichier nam.out dans nam:
Une nouvelle fenêtre apparaît, avec une représentation du réseau que
nous voulons simuler. Les stations sont placées au hasard: aucune position
n'est indiquée dans le script et leur place change quand on ouvre plusieurs
fois le même out.nam.
43 / 54
IV. Le simulateur NS2
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Dans cette fenêtre, nous pouvons visualiser les échanges entre les
machines en faisant varier le temps.
Comme indiqué dans le script, le lien entre les machines 1 et 2
connaît une défaillance à partir de 1 sec ce qui oblige les données à utiliser
le chemin partant vers la machine 6 (vers la droite) pour acheminer les
informations de du poste 0 au poste 3.
Puis, à la 2ème sec, le lien est rétablis et les données reprennent le
chemin le plus court (voir capture d'écran à gauche).
La simulation se termine, comme attendu, au bout de la 5ème
seconde.
44 / 54
Conclusion
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Conclusion
Le développement des réseaux mobiles est en constante évolution.
Pour répondre à ces besoins, de nombreuses solutions de routage ont été
développées.
Ainsi, des simulateurs de réseaux ont vu le jour. Ils permettent une
étude approfondie des différents protocoles existants actuellement. Ils
s'intègrent parfaitement dans la demande toujours croissante d'une
communication plus mobile que jamais.
Nous avons pu voir qu'il existe aujourd'hui de nombreux simulateurs
de routage qui ont tous leurs défauts et leurs avantages. Cette diversité
permet de répondre à des besoins variés en matière d'étude de protocoles
dans le domaine du routage sans fil.
Pour en comprendre les mécanismes, nous avons réalisé le comparatif
d'un panel représentatif de simulateur, basé sur des critères précis.
Comment alors ne pas passer par l'étude approfondie du plus
répandu d'entre eux, à savoir NS-2 ? En effet, ce dernier est une référence
dont bon nombre de simulateurs se sont inspirés.
D'après notre étude, aucun simulateur n'apparaît clairement comme
surclassant les autres, même si nous avons mis l'accent sur NS-2. En effet,
chacun d'entre eux est caractérisé par un ensemble de critères d'évaluation
particulier.
Actuellement, les travaux sont davantage concentrés sur l'analyse
des performances des algorithmes de routage et la conception de protocoles
de diffusion.
45 / 54
Annexes
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Annexes
TABLE
DES ANNEXES
I. Les modèles OSI et TCP / IP
47
II. Les tables de routage
49
III.Les protocoles de routage
50
1. OLSR
50
2. DSDV
50
3. AODV
50
4. DSR
51
5. ZRP
51
IV.Le groupe MANET
52
V. Sites officiels des simulateurs présentés
52
46 / 54
Annexes
LES
MODÈLES
OSI
ET
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
TCP / IP
Le modèle OSI
•
La couche « physique » est chargée de la transmission effective des
signaux entre les interlocuteurs. Son service est typiquement limité à
l'émission et la réception d'un bit ou d'un train de bit continu
(notamment pour les supports synchrones).
•
La couche « liaison de données » gère les communications entre 2
machines adjacentes, directement reliées entre elles par un support
physique.
•
La couche « réseau » gère les communications de bout en bout,
généralement entre machines : routage et adressage des paquets.(cf.
note ci-dessous).
•
La couche « transport » gère les communications de bout en bout entre
processus (programmes en cours d'exécution).
•
La couche « session » gère la synchronisation des échanges et les
«transactions», permet l'ouverture et la fermeture de session.
•
La couche « présentation » est chargée du codage des données
applicatives, précisément de la conversion entre données manipulées au
niveau applicatif et chaînes d'octets effectivement transmises.
•
La couche « application » est le point d'accès aux services réseaux, elle
n'a pas de service propre spécifique et entrant dans la portée de la
norme.
47 / 54
Annexes
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Le modèle TCP / IP
TCP/IP est l'acronyme de Transfert Control Protocol / Internet Protocol.
Il s'agit d'un modèle en couche utilisé pour "définir" les règles de
communications utilisées utilisées dans Internet.
TCP et IP sont en fait deux protocoles distincts de la couche réseau du
modèle OSI
Il répond aux critères suivants :
➢
Fractionnement des messages en paquets ;
➢
Utilisation d'un système d'adresses ;
➢
Acheminement des données sur le réseau (routage) ;
➢
Contrôle des erreurs de transmission de données.
Modèle OSI
Modèle TCP / IP
48 / 54
Annexes
LES
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
TABLES DE ROUTAGE
Les tables de routage contiennent des informations d'acheminement
des données.
Les protocoles de routage permettent la gestion de ces
tables. Chaque protocole insère des informations qui lui sont propres.
Ainsi, une table de routage est constamment mise à jour. Certains
protocoles diffusent périodiquement leurs informations de mise à jour.
D'autres n'interviennent qu'en cas de changement de topologie du réseau.
Certains transmettent l'intégralité du contenu de la table de routage.
D'autres qu'une partie.
Une table de routage contient des informations suivantes:
➢
Le type de protocole qui envoie les données
➢
Les interfaces par lesquelles les données doivent être acheminées
pour atteindre leur destination.
➢
Les associations de saut suivant indiquent au routeur si le message
est directement associé à sa table de routage où s'il peut passer par
un autre routeur pour atteindre sa destination finale.
➢
Les métriques de routage permettent de déterminer si une route est
d'un coût (bande passante, nombre de sauts...) est plus avantageuse
qu'une autre.
49 / 54
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Annexes
PROTOCOLES
DE ROUTAGES
OLSR (Optimized Link State Routing Protocol)
En français: protocole de routage optimisé par état des liens. Il est
utilisé dans les réseaux maillés de proche en proche, et est optimisé pour
les réseaux mobiles de type ad-hoc (MANET pour Mobile Ad-hoc Networks). Il
est toutefois possible de l'utiliser sur d'autres réseaux ad-hoc. Il agît en
inondant les noeuds du réseau avec une table de topologie de ces voisins.
Ces mêmes noeuds calculent localement la voie de transmission optimale.
DSDV (Destination Sequence Distance Vector)
Protocole de routage proactif. Il se base sur l'algorithme de routage
par vecteur de distance (algorithme de Bellman-Ford). Chaque station
possède une table de routage qui contient toutes les destinations possibles,
le nombre de sauts, ainsi qu'un numéro de séquence correspondant à un
noeud destination. DSDV est un protocole lent.
AODV (Ad hoc On-Demand Distance Vector Routing)
Protocole de routage sur demande par vecteur de distance. Il est
utilisés dans les MANETs et les autres réseaux sans fils ad-hoc. Avec ce
protocole, le réseau est silencieux jusqu'à ce qu'une connexion ne soit
requise. A ce moment le noeud du réseau qui a besoin d'une connexion
diffuse
une
requête
pour
se
connecter.
Les
autres
noeuds
AODV
transmettent ce message, et enregistrent le noeud qui le leur à envoyé,
créant ainsi une explosion temporaire de routes vers celui-ci. Quand un
50 / 54
Annexes
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
noeud reçoit un tel message et a déjà une route établie vers le noeud
désiré, il le renvoie au noeud qui a émis la requête par le biais d'une route
temporaire.
Le noeud émetteur commence ensuite à utiliser la route qui a le plus
petit nombre de sauts à travers les autres noeuds. Les entrées non utilisées
sont recyclées après un certain temps. Quand un lien échoue, l'erreur de
routage est signalée au noeud émetteur, et le processus est répété.
DSR (Dynamique Source Routing)
Protocole de routage réactif. Chaque paquet contient dans son en-tête
la liste complète des adresses des noeuds à traverser vers la destination.
Les noeuds intermédiaires ne gardent pas la trace de la route. Il fonctionne
de façon similaire à AODV.
La méthode actuelle DSR inonde un réseau pour être sur que
l'information arrive correctement: envoi d'un « route request » à travers le
réseau, le destinataire envoie alors un « route reply ». Il détermine le
meilleur chemin en terme de vitesse, puis envoie les données.
ZRP (Zone Routing Protocol)
C'est le premier protocole de routage qui utilise à la fois les routages
proactif et réactif. Il permet de réduire la surcharge de contrôles des réseaux
proactifs et de diminuer la latence causées par le découverte des routes
dans les protocoles réactifs. ZRP définit une zone autour de chaque noeud
constituée d'un nombre n de stations voisines.
51 / 54
Annexes
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
MANET
MANET est un type de réseaux ad-hoc dont la topologie n'est pas fixe,
et qui est capable de se configurer lui-même à la volée. Comme les réseaux
MANETs sont mobiles, ils utilisent des connections sans fil pour se connecter
à des réseaux de tous type.
Ils peuvent être utilisés dans des véhicules pour se connecter aux
équipements routiers, qui possèdent une connexion Internet. Ces derniers
peuvent véhiculer sur le net des informations concernant le trafic, ou le suivi
de convois.
Il faut cependant rester vigilant quant au type de données transmises,
car ces réseaux dynamiques ne sont que très peu sécurisés.
SITES
OFFICIELS DES SIMULATEURS PRÉSENTÉS
NS2: http://www.isi.edu/nsnam/ns/
Omnet++: http://www.omnetpp.org/
Glomosim: http://pcl.cs.ucla.edu/projects/glomosim/
Jsim: http://www.j-sim.org/
OPNET: http://www.opnet.com/
SimulX: http://simulx.u-strasbg.fr/
JiST: http://jist.ece.cornell.edu/
52 / 54
Bibliographie et webographie
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Bibliographie et webographie
BIBLIOGRAPHIE
➢
Les Réseaux, Andrew Tanenbaum, 3ème édition, Edition Dunod, 1997.
➢
Réseaux et communications sans fils, William Stalling, 2eme édition,
Pearson Education, 2005.
➢
802.11 et les réseaux sans fil, Paul Mühlethaler, édition Eyrolles, 2002
➢
CFIP’2000 : Ingénierie des protocoles sous la direction de Jean-pierre
Courtiat, Michel Diaz, Patrick Sénac, Germes Science, Octobre 2000
WEBOGRAPHIE
➢
Documentation en français sur le simulateur NS2:
www.sop.inria.fr/rodeo/personnel/Pierre.Ansel/Manuel_NS1.3.pdf
➢
Site d'universités, d'écoles:
www.grappa.univ-lille3.fr
➢
Groupe de recherche sur l'apprentissage automatique (Lille):
www.igm.univ-mlv.fr
➢
Institut d'électronique et d'informatique Gaspard-Monge (Paris):
https://labo4g.enstb.fr/
➢
Site du projet français Iramus concernant l'étude des protocoles de
routage dans les réseaux multi-saut:
http://iramus.citi.insa-lyon.fr
53 / 54
Bibliographie et webographie
➢
Site du leader sur le marché des ventes de matériels réseaux
www.cisco.com
➢
DUPESSEY Xavier
GLOSSI Étienne
LATRILLE-DEBAT Simon
VIOUGEAS Éric
Le site de le norme américaine standardisée 802.11
http://www.ieee802.org/11/
➢
Sites officiels des simulateurs
➢
www.commentcamarche.net
➢
http://fr.wikipedia.org/
54 / 54

Documents pareils