Documente Academic
Documente Profesional
Documente Cultură
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Introduction ns-3
Sbastien Bindel
10 dcembre 2013
Sbastien Bindel
Introduction ns-3
1 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Plan
Introduction la simulation
Prsentation de ns-3
Conclusion
Sbastien Bindel
Introduction ns-3
2 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Sbastien Bindel
Contexte
Les outils
Les apports de la simulation
Introduction ns-3
3 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Contexte
Les outils
Les apports de la simulation
Contexte
Les rseaux
Rseau -> communication (du niveau physique au niveau
applicatif)
Evolution des communications
Mise en place de nouvelles communications
Besoins
Tester (e.g. comportement)
Analyser (e.g. performance)
Problmatique
Cot
Temps de mise en oeuvre
Sbastien Bindel
Introduction ns-3
4 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Contexte
Les outils
Les apports de la simulation
Les outils
Implmentation relle
Sbastien Bindel
Introduction ns-3
5 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Contexte
Les outils
Les apports de la simulation
Simuler le rseau
Simuler lactivit du rseau
Outils de visualisation et danalyse
Possibilit dtre proche de la ralit
Ne ncessite pas dinvestissements particulier
Sbastien Bindel
Introduction ns-3
6 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Sbastien Bindel
Prsentation gnrale
Outils
Quelques possibilits de simulation dans ns-3
Modules prsents dans ns-3
Compiler ns-3
Introduction ns-3
7 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Prsentation gnrale
Outils
Quelques possibilits de simulation dans ns-3
Modules prsents dans ns-3
Compiler ns-3
Prsentation gnrale
NS acronyme pour Network Simulator
Simulation vnements discrets
3eme gnration (annonc le 2/7/2006)
Existe en version stable (3.18) et dveloppement
Compos de modules
Ecrit en C++
Scripts dutilisation en C++ ou Python
Sbastien Bindel
Introduction ns-3
8 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Prsentation gnrale
Outils
Quelques possibilits de simulation dans ns-3
Modules prsents dans ns-3
Compiler ns-3
Introduction ns-3
9 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Prsentation gnrale
Outils
Quelques possibilits de simulation dans ns-3
Modules prsents dans ns-3
Compiler ns-3
Outils
Outils de visualisation du scnario de simulation
PyViz (visualisation en temps rel)
NetAnim (visualisation base sur un fichier traant le scnario)
Sbastien Bindel
Introduction ns-3
10 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Prsentation gnrale
Outils
Quelques possibilits de simulation dans ns-3
Modules prsents dans ns-3
Compiler ns-3
Simulation de protocoles
TCP, UDP, IPv4, IPv6, OLSR, AODV . . .
Simulation de mdias
Ethernet, WIFI, WiMAX . . .
Possibilit dmulation
Execution dune implmentation dun protocole dans ns-3
Sbastien Bindel
Introduction ns-3
11 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Prsentation gnrale
Outils
Quelques possibilits de simulation dans ns-3
Modules prsents dans ns-3
Compiler ns-3
Sbastien Bindel
Introduction ns-3
12 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Prsentation gnrale
Outils
Quelques possibilits de simulation dans ns-3
Modules prsents dans ns-3
Compiler ns-3
Compiler ns-3
Configuration du builder
Compilation de ns-3
./ waf build
Nettoyage de la compilation
./ waf clean
Sbastien Bindel
Introduction ns-3
13 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Sbastien Bindel
Introduction ns-3
14 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Sbastien Bindel
Introduction ns-3
15 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
La cration de noeuds
C++
NodeContainer nodes ;
nodes . Create (2) ;
nodes . Get (0) ;
nodes . Get (1) ;
//
//
//
//
creation
creation
acces au
acces au
Python
Sbastien Bindel
#
#
#
#
creation
creation
acces au
acces au
Introduction ns-3
16 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
P o i n t To P oi n t He l pe r pointToPoint ;
Python
Sbastien Bindel
Introduction ns-3
17 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Installation du protocole IP
C++
Python
Sbastien Bindel
Introduction ns-3
18 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Python
# demarrage du traffic a 1s
Sbastien Bindel
Introduction ns-3
19 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Installation du client
C++
Python
Sbastien Bindel
Introduction ns-3
20 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Dmarrage de simulation
C++
Simulator :: Run () ;
Simulator :: Destroy () ;
Python
Sbastien Bindel
Introduction ns-3
21 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Script en C++
Script en Python
Sbastien Bindel
Introduction ns-3
22 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Premier script
Copiez le fichier examples/tutorial/first.cc dans le dossier
scratch
Lancez la commande ./waf build
Lancez la commande ./waf run scratch/myfirst
Rsultat
Sbastien Bindel
Introduction ns-3
23 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
PyViz
Permet de visualiser le scnario de simulation
Nutilise pas de fichiers traces
Le script doit pouvoir parser les arguments donns (argc,argv)
Aucun ajout de code supplmentaire
Ajoutez dans le script (C++)
CommandLine cmd ;
cmd . Parse ( argc , argv ) ;
i m p o r t ns . core
i m p o r t ns . visualizer
[...]
cmd = ns . core . CommandLine ()
cmd . Parse ( sys . argv )
[...]
ns . core . Simulator . Run ()
Sbastien Bindel
Introduction ns-3
24 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Rsultat de PyViz
Sbastien Bindel
Introduction ns-3
25 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Rsultat de PyViz
Introduction ns-3
25 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Netanim
Permet de visualiser le scnario de simulation offline
Utilise un fichier trace
Fichier trace => xml
Ajout de codes supplmentaires
Non disponible sous les scripts Python
Ajoutez dans le script (C++)
Sbastien Bindel
Introduction ns-3
26 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Rsultat de Netanim
Sbastien Bindel
Introduction ns-3
27 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Trace ASCII
Permet de visualiser les informations vhicules
Similaire aux traces pcap
Sactive sur le channel pour que les interfaces puissent
capturer le trafic
Ajoutez dans le script (C++)
Sbastien Bindel
Introduction ns-3
28 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Introduction ns-3
29 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Trace pcap
Permet de visualiser les informations vhicules
Utilis par tcpdump ou wireshark
Sactive sur le channel pour que les interfaces puissent
capturer le trafic
Documentation www.nsnam.org/doxygenrelease/classns3_1_1_pcap_helper_for_device.html
Ajoutez dans le script (C++)
Sbastien Bindel
Introduction ns-3
30 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Sbastien Bindel
Introduction ns-3
31 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Sbastien Bindel
Introduction ns-3
32 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Conclusion
Les points abords durant ce cours
Les outils dtude des rseaux
Le simulateur ns-3 et ses outils
Comprendre lcriture dun script simple
Sbastien Bindel
Introduction ns-3
33 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Conclusion
Les points abords durant ce cours
Les outils dtude des rseaux
Le simulateur ns-3 et ses outils
Comprendre lcriture dun script simple
Sbastien Bindel
Introduction ns-3
33 / 33
Introduction la simulation
Prsentation de ns-3
Les scripts sous ns-3
Conclusion
Conclusion
Les points abords durant ce cours
Les outils dtude des rseaux
Le simulateur ns-3 et ses outils
Comprendre lcriture dun script simple
Sbastien Bindel
Introduction ns-3
33 / 33