SlideShare ist ein Scribd-Unternehmen logo
1 von 59
Downloaden Sie, um offline zu lesen
Support de cours
                             Simulations
                           vincent.gauthier@int-evry.fr
                    http://www-public.int-evry.fr/~gauthier/




jeudi 14 mai 2009
Simulations de Réseaux !!!!!!!!!




jeudi 14 mai 2009
• Modélisation des systèmes

                    • Simulation à événements discrets

                    • Intervalles de confiances

                    • Les simulateurs

                    • Exemple de simulation

                    • Conseils


jeudi 14 mai 2009
Modélisation des systèmes



jeudi 14 mai 2009
Intérêt de la simulation ?
       • Quand on ne peut pas facilement observer les états du système,

       • Quand on désire analyser l’enchaînement des événements dans le
         système, ainsi que les relations de causes à effets,

       • Quand on désire valider une solution analytique,

       • Quand la complexité des interactions dans le système est telle
         quelle ne peut être étudiée qu'au travers de simulations,

       • Quand on désire visualiser les états d'un système,

       • Quand on veut tester différentes optimisations pour améliorer un
         système déjà existant.

jeudi 14 mai 2009
Les simulations sont elles toujours utiles ?


       • Quand il y a une solution analytique ?

       • Quand il est plus facile de faire directement des mesures
         sur le système réel ?

       • Quand il manque trop des données sur les systèmes à
         étudier ?

       • Quand on ne peut pas valider les résultats de
         simulations ?

       • Quand le système a étudier est trop complexe ?

jeudi 14 mai 2009
Avantages /Inconvénients
                    •   Avantages                          •   Inconvénients

                        •   Observations des états du          •   La conception de modèles
                            systèmes,                              peut nécessiter des
                                                                   compétences spéciales,
                        •   Etudes des points de
                            fonctionnement d'un                •   Une autre forme d'analyse
                            système,                               plus proche de la réalité
                                                                   est peut être nécessaire
                        •   Etudes de systèmes à
                            échelle de temps variable,         •   Résultats difficilement
                                                                   interprétables :
                        •   Etudes de l'impact des
                            variables sur les                  •   Résultats pas forcément
                            performances du système,               généralisable,

                        •   Etude d'un système sans            •   Résultats sont fonction des
                            les contraintes matérielles.           entrées du système
jeudi 14 mai 2009
Types de modèles(1/2)
                    Classification des modèles




jeudi 14 mai 2009
Types de modèles(2/2)
       •       Simulations statiques

             •      Monte Carlo: méthode applicable seulement si le temps n'a pas d'influence (Von
                    Neumann & Ulam, projet Manathan), utilise des tirages aléatoires et souvent
                    uniformes

       •       Simulations dynamiques

             •      Système qui change dans le temps

       •       Simulations Déterministes

             •      Qui ne contient pas de variable aléatoire, une variable d'entrée donnée, produit
                    toujours le même résultat

       •       Simulations Stochastiques

             •      Entrées et sorties sont aléatoires

jeudi 14 mai 2009
Exemples
                    • Files d'attente

                      • Variable d'état : temps d'attente

                      • Réponse : Discret, Stochastique, Dynamique

                    • Machines de production

                      • Variable d'état: occupé, en attente, en panne

                      • Réponse : Discret, Stochastique, Dynamique

                    • Bruits d'un systèmes électronique

                      • Variable d'état: niveau de bruit

                      • Réponse : Continue, Stochastique, Statique
jeudi 14 mai 2009
Simulation à événements
                    discrets


jeudi 14 mai 2009
Simulations à événements discrets (1/3)

       • Utilisation d'un ordonnanceur comme élément de base
         du simulateur,

       • Chaque événement représente un changement d'état,
         couplé avec une variable qui indique le temps auquel
         l'événement aura lieu,

       • Ordonnanceur, gère une liste d'événements triés selon
         leurs date de déclenchement,

       • Lorsque que l'ordonnanceur exécute un événement, il
         modifie la variable représentant le temps courant.
jeudi 14 mai 2009
Simulations à événements discrets (2/3)




jeudi 14 mai 2009
Simulations à événements discrets (3/3)




                     L'unité de traitement ne modifie jamais le firetime




jeudi 14 mai 2009
Exemple




jeudi 14 mai 2009
Simulations à événements discrets (1/3)

       • Les simulateurs les plus couramment utilisés dans le
         domaine des réseaux, mais d'autres types de
         simulateurs existent :

       • Simulateur à pas fixes,

       • Simulateur de modèle fluide.

       • Les simulateurs à pas fixes sont peu utilisés car
         gourmands en ressources,

       • Simulateur de modèle fluide, nécessite la connaissance
         d'équations différentielles permettant de calculer les
         évolutions du système
jeudi 14 mai 2009
Simulations à événements discrets (2/3)

       • Les simulateurs à pas fixe, scrutent l'évolution du
         systèmes entre deux incréments de temps,

       • Nécessitent de balayer tous les intervalles de temps

             • Beaucoup plus coûteux que de sauter d'événements
               en événements

       • Simulent le système même quand il ne se passe rien

       • Très peu utilisés de nos jours

       • Simplicité d'utilisation
jeudi 14 mai 2009
Simulations à événements discrets (3/3)

       • Les simulations avec des modèles fluides, ne sont pas
         encore beaucoup développées

       • N2NSoft (Baccelli)

       • Alcatel : réseaux d'accès ADSL

       • TCP peut être modélisé par un systèmes d'équations
         différentielles (TCP Vegas)

       • Plus besoin de modélisation au niveau paquets pour
         avoir des résultats précis
                F. BACCELLI, D. HONG
                Interaction of TCP flows as Billiards,
                IEEE/ACM Transactions on Networking (2005) 13, 4
jeudi 14 mai 2009
Simulateur de réseaux sans fil




jeudi 14 mai 2009
Intervalles de confiances



jeudi 14 mai 2009
Intervalles de confiances


                      f = mx




jeudi 14 mai 2009
Intervalles de confiances (iid)
                          X    =    X1 , X2 , ....Xn
                                        n
                                    1
                         ˆ
                         µn    =              Xi
                                    n   i=1
                                               n
                                     1
                         ˆ
                         σn2
                               =                    (Xi − µn )
                                                          ˆ  2
                                    n−1       i=1

                    Les intervalles de confiances sont de :
                                          ˆ2
                                          σn
                                   ˆ
                                   µn ± η √
                                            n

        η est le (1 − α/2) quantile de la distribution de Student tn−1
jeudi 14 mai 2009
Intervalles de confiances (iid)
                    Méthode Batch Mean divise les échantillons
                              en b bloc de taille m
                                              m
                                         1
                                Zi   =             Z2(i−1)+j
                                         m   j=1
                                              b
                                ¯        1
                                Zb   =             Zj
                                         b   j=1
                                                    b
                                          1                    ¯
                                ˆ2
                                σb   =                   (Zi − Zb )2
                                         b−1       j=1


                       Les intervalles de confiances sont de :

                                     ¯                    ˆ2
                                                          σb
                                     Zb ± η
                                                           b
       η est le (1 − α/2) quantile de la distribution de Student tb−1
jeudi 14 mai 2009
Intervalles de confiances (non iid)

             Méthode Batch Mean, Legal avec intervalles de
                          confiances à 95%

                           ¯
                           Zb   ± εT
                                             b
                           εT   = 4.5   ˆ2
                                        σb
                                             n

   Ne prend pas comme hypothèse que la moyenne des
   blocs est i.i.d, distribution à queue lourde, processus
                       avec mémoire...etc

jeudi 14 mai 2009
Exemple




jeudi 14 mai 2009
Quantile – Quantile Plot
               ou test de conformité empirique (2/2)

    • Il est parfois nécessaire de déterminer ou de caractériser 
      la distribution des résultats obtenus :

    • Est ce que les données sont i.i.d  selon une loi normale ? 

    • Vérification rapide Quantile Plot

    • Le alpha quantile d'une distribution de probabilité est la
      valeur telle que la probabilité qu'une variable aléatoire
      suivant cette distribution lui soit inférieure ou égale vaut
      alpha. Bien entendu, alpha doit être compris entre 0 et 1,
      puisqu'il représente une probabilité
jeudi 14 mai 2009
Quantile – Quantile Plot
               ou test de conformité empirique (2/2)




jeudi 14 mai 2009
Conclusion
      • Calculer l'intervalle de confiance permet de connaître la 
        valeur de l'imprécision de mesure,

      • Il permet de stopper des simulations  quand la précision 
        voulue est atteinte (je veux la moyenne avec une précisio
        n de  +/­0.01) 

      • Valider qualitativement la valeur du résultat qu’on a obt
        enu, 

            • Sur une échelle de 0 à 10 j'obtiens une moyenne de 5 a
              vec un intervalle de confiance de +/­3 !!!!! 
jeudi 14 mai 2009
Simulateurs



jeudi 14 mai 2009
Simulateurs

                    • NS-2, SNS (NS distribué)
                    • Jist + Swans (nouveau)
                    • Jsim (nouveau)
                    • Qualnet, Glomosim (performant)
                    • Opnet (nombreux modèles)


jeudi 14 mai 2009
Pourquoi NS-2
                    • NS est le système   • Un logiciel de
                      de référence          simulation
                                            multicouche
                    • Un outil libre
                                          • Interface OTcl
                    • Ajout de
                      composants à la     • Un noyau en C++
                      demande               (scheduler...)

                    • Développement       • Couches réseaux
                      orienté objets        codées en C++


jeudi 14 mai 2009
Simulations
                    • Support: Lan,        • TCP
                      Mobile, satellite,
                      ATM                  • Contrôle de
                                             congestion
                    • IntServ/DiffServ
                                           • Application
                    • Multicast
                                            • Web cache
                    • Ad hoc
                                            • Multimédia
                    • Transport


jeudi 14 mai 2009
Simulations
                    •   Implémentation en C++


                    •   Scénario en Otcl


                    •   Test de simulation avec Nam


                    •   Résultat, post processing :


                        •   perl


                        •   awk


                        •   gnuplot


                        •   xgraph




jeudi 14 mai 2009
Simulations
            • NS exécute la simulation, NAM visualisation de la
              simulation

            • Gnuplot, Xgraph, Tracegraph, interprétation des
              résultats




jeudi 14 mai 2009
Structure de NS-2




jeudi 14 mai 2009
Les composants de NS-2
                    • Ns, Le simulateur       • Pre-processing:

                      • Nam, the                • Générateur de
                        network                   trafic et topologie
                        animator                  (setdest)

                    • Visualise les fichiers   • Post-processing:
                      de trace de NS
                                                • Analyse des
                      • Nam editor: GUI           fichiers de trace,
                        pour générer des          Awk, Perl, ou Tcl
                        scripts NS
jeudi 14 mai 2009
• Modèle de trafic:              • Routage (distance
                                                      vector , link state), ad
                      • Web, FTP, telnet,             hoc (dsr, aodv)
                        constant-bit rate, real
                        audio                     • Discipline de file d’attente:
                                                    RED, drop-tail, etc
                    • Protocole de la couche
                      transport :                 • Liens physiques:

                      • Unicast: TCP (Reno,         • Filaire (point-to-point,
                        Vegas, etc.), UDP             LANs), wireless
                                                      (propagation multiple),
                      • Multicast: SRM                satellite

                      • Routage et file
                        d’attente:
jeudi 14 mai 2009
Classes du Simulateur
                    •   Application

                        •   Générateur de trafic

                    •   Agent

                        •   Protocoles

                    •   Nœud

                        •   Nœuds du réseau

                    •   Link

                        •   Liens entre les noeuds

                    •   Monitor

                        •   Elaboration de statistique sur un lien particulier
jeudi 14 mai 2009
Anatomie d’une simulation




jeudi 14 mai 2009
Interface OTcl
                    • Contrôle la simulation
                    • Un composant du simulateur
                    • Interaction avec le simulateur
                    • Les principales classes sont dans
                      l’interpréteur
                    • Manipulation (création, connections …)
                      des classes du simulateur

jeudi 14 mai 2009
Otcl (1/3)
                    • Instantiation
                     • set Obj [new Class]
                    • Méthode
                     • $Obj Methode arg1 arg2
                    • Commande
                     • [<commande>]

jeudi 14 mai 2009
Otcl (2/3)
                    • Fonction

                    proc printArg {nom} {
                      puts “hello $nom“
                    }




jeudi 14 mai 2009
• constructeur
                                     # subclass:
   Class Person                      Class Kid - superclass Person
   # constructeur:                   Kid instproc greet {} {
   Person instproc init {age} {        $self instvar age_
     $self instvar age_                puts “$age_ years old kid:
     set age_ $age                     What’s up, dude?”
   }                                 }
   # méthode:
   Person instproc greet {} {
     $self instvar age_              set a [new Person 45]
     puts “$age_ years old: How      set b [new Kid 15]
     are you doing?”                 $a greet
   }                                 $b greet




jeudi 14 mai 2009
Evenements
                    • Crée l’ordonnanceur

                      • set ns [new Simulator]

                    • Ordonnance les événements

                      • $ns at <time> <event>

                    • <event>: une commande tcl

                      • $ns at 5.0 “finish”

                    • Lance le l’ordonnanceur

                      • $ns run
jeudi 14 mai 2009
Topologie
                    • Nœuds

                      • set n0 [$ns node]

                      • set n1 [$ns node]

                    • Liens et discipline de file d'attente

                      • $ns <liens> $n0 $n1 <bande passante> <délai>
                        <queue>

                      • <type de lien>: duplex-link, simplex-link

                      • <type de queue>: DropTail, RED, CBQ, FQ, SFQ,
                        DRR, diffserv RED queues

jeudi 14 mai 2009
Trafic (1/3)
                    •   Exponentielle, on-off

                        •   set src [new Application/Traffic/Exponential]

                        •   set src [new Application/Traffic/Pareto]

                    •   UDP

                        •   set udp [new Agent/UDP]

                        •   set null [new Agent/Null]

                        •   $ns attach-agent $n0 $udp

                        •   $ns attach-agent $n1 $null

                        •   $ns connect $udp $null



jeudi 14 mai 2009
Trafic (2/3)

                    • CBR
                     • set src [new Application/Traffic/
                       CBR]
                     • $src set packetSize_ 1500
                     • $src set rate_ 100Kb



jeudi 14 mai 2009
Trafic (2/3)
                    •   TCP                             •   FTP

                        •   set tcp [new Agent/TCP]         •   set ftp [new Application/
                                                                FTP]
                        •   set tcpsink [new Agent/
                            TCPSink]                        •   $ftp attach-agent $tcp

                        •   $ns attach-agent $n0 $tcp   •   Telnet

                        •   $ns attach-agent $n1            •   set telnet
                            $tcpsink                            [newApplication/Telnet]

                        •   $ns connect $tcp $tcpsink       •   $telnet attach-agent $tcp




jeudi 14 mai 2009
Monitor (1/2)
                    •   Monitor flow

                        •   $tcp fid_ 1;

                        •   set flowmon [$ns makeflowmon Fid]

                        •   set lien [$ns link $n0 $n1]

                        •   $ns attach-fmon $lien $flowmon

                        •   set fcl [$flowmon classifier]

                        •   %%% dans FINISH %%%

                        •   set stats_tcp [$fcl lookup auto 0 0 1]

                        •   set bw [$stats_tcp set bdepartures_]


jeudi 14 mai 2009
Monitor (2/2)
                    • Monitor queue
                     • set monitor [ $ns queue-monitor $n0
                       $n1 stdout]
                     • puts stdout “[ $monitor set
                       pdepartures_ ]”
                     • puts stdout “[ $monitor set
                       barrivals_ ]”
                     • puts stdout “[ $monitor set pdrops]”
jeudi 14 mai 2009
Exemple de simulation



jeudi 14 mai 2009
Simulation (1/3)




                    •   Trafic CBR

                    •   Protocole UDP

                    •   Lien 1Mb, discipline de file d ’attente FIFO

                    •   Délai 10ms


jeudi 14 mai 2009
Simulation (2/3)
                    #creation de l ’instance de simulation
                    set ns [new Simulator]
                    #creation des fichier de trace
                    set nf [open out.nam w]
                    $ns namtrace-all $nf
                    proc finish {} {
                            global ns nf
                            $ns flush-trace
                            close $nf
                            exec nam out.nam &
                            exit 0
                    }

                    #scheduler
                    $ns at 5.0 "finish"
                    #lancement de la simulation
                    $ns run




jeudi 14 mai 2009
Simulation (3/3)
                    set n0 [$ns node]
                    set n1 [$ns node]
                    $ns duplex-link $n0 $n1 1Mb 10ms DropTail
                    set udp0 [new Agent/UDP]
                    $ns attach-agent $n0 $udp0
                    set cbr0 [new Application/Traffic/CBR]
                    $cbr0 attach-agent $udp0
                    set null0 [new Agent/Null]
                    $ns attach-agent $n1 $null0
                    $ns connect $udp0 $null0
                    $ns at 0.5 "$cbr0 start"
                    $ns at 4.5 "$cbr0 stop"




jeudi 14 mai 2009
Conseils



jeudi 14 mai 2009
Topologie
                    Dumbbell

                    évaluation de paramètres de
                    bout en bout



                    Parking Lot

                    évaluation de paramètres
                    changeant, RTT, équité ...etc




jeudi 14 mai 2009
Conseils
                    •   Paramètres importants

                    •   taille de la fenêtre TCP, MAX RTT ne doit pas être limitatif

                    •   TCP “flavor”

                    •   Taille des files d'attente (delais*BP)

                    •   Active queue Management

                    •   Problèmes

                    •   Durée des simulations

                    •   Topologie

                    •   RTT


jeudi 14 mai 2009
Références
                    •   [1] Mark Allman, Aron Falk, “On the Effective Evaluation of TCP,”
                        ACM Computer Communication review, vol. 25, no. 5, pp. 59 - 70,
                        1999.

                    •   [2] Sally Floyd and Vern Paxson, “Difficulties of simulating the
                        Internet,” IEEE/ACM transaction on networking, vol. 9, no. 4, pp
                        392-403, 2001.

                    •   [3] Sally floyd and Eddie Kohler, “Internet Research Needs Better
                        Models,” ACM Hotnets-1, October, 2002.

                    •   [4] http://www.icir.org/models/bettermodels.html

                    •   [5] V. Gauthier, S. Gam, "Les simulateurs", Chapter of the book
                        "Simulations des Réseaux (Traité IC2, série Réseaux et télécoms)",
                        Editor: Monique Becker, Andre Luc Beylot, chapter 7, Hermes, 2006,
                        ISBN 2-7462-1166-1.


jeudi 14 mai 2009
Références
                    •   [6] S. Kurkowski, T. Camp and M. Colagrosso, "MANET simulation
                        studies: the incredibles," in SIGMOBILE Mobile Computer
                        Communication Revenue, vol. 9, no. 4, pp. 50 - 61, 2005.

                    •   [7] D. Cavin, Y. Sasson and A. Schiper, "On the accuracy of MANET
                        simulators," In Proc of the Workshop on Principles of Mobile
                        Computing (POMC’02), Toulouse, France, October , 2002, pp. 38-43.

                    •   [8] Jean-Yves Le Boudec, "Performance Evaluation Lecture Notes
                        (Methods, Practice and Theory for the Performance Evaluation of
                        Computer and Communication Systems)", http://icawww.epfl.ch/
                        perfval/lectureNotes.html

                    •   [9] Averill M. Law and W. David Kelton, "Simulation Modeling and
                        Analysis, 3/e”, Mac Graw Hill, 2000.

                    •   [10] F. Baccelli, D. Hong, "Interaction of TCP flows as Billiards," IEEE/
                        ACM Transactions on Networking, vol. 13, no. 4, 2005.

jeudi 14 mai 2009

Weitere ähnliche Inhalte

Was ist angesagt?

Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 
Rapport de stage TOIP/VOIP
Rapport de stage TOIP/VOIPRapport de stage TOIP/VOIP
Rapport de stage TOIP/VOIPMounir Kaali
 
Systèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionSystèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionLilia Sfaxi
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVABachir Benyammi
 
Presentation pfe ingenieur d etat securite reseau et systemes
Presentation pfe ingenieur d etat securite reseau et systemesPresentation pfe ingenieur d etat securite reseau et systemes
Presentation pfe ingenieur d etat securite reseau et systemesHicham Moujahid
 
Connexion point à point (ppp, hdlc)
Connexion point à point (ppp, hdlc)Connexion point à point (ppp, hdlc)
Connexion point à point (ppp, hdlc)EL AMRI El Hassan
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services webCHOUAIB EL HACHIMI
 
conception et réalisation d'une application de gestion des rapports téléphoni...
conception et réalisation d'une application de gestion des rapports téléphoni...conception et réalisation d'une application de gestion des rapports téléphoni...
conception et réalisation d'une application de gestion des rapports téléphoni...ismailbou
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiqueOussama Yoshiki
 
Cours réseaux informatiques ia2
Cours réseaux informatiques  ia2Cours réseaux informatiques  ia2
Cours réseaux informatiques ia2Amel Morchdi
 
Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...
Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...
Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...Ava Axialys
 
Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices sarah Benmerzouk
 
Introduction aux réseaux locaux
 Introduction aux réseaux locaux Introduction aux réseaux locaux
Introduction aux réseaux locauxInes Kechiche
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Ramzi Noumairi
 
Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiquejihene Ab
 

Was ist angesagt? (20)

Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
Rapport de stage TOIP/VOIP
Rapport de stage TOIP/VOIPRapport de stage TOIP/VOIP
Rapport de stage TOIP/VOIP
 
Etude de la WIFI sur NS2
Etude de la WIFI sur NS2Etude de la WIFI sur NS2
Etude de la WIFI sur NS2
 
Systèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introductionSystèmes d'Exploitation - chp1-introduction
Systèmes d'Exploitation - chp1-introduction
 
Programmation réseau en JAVA
Programmation réseau en JAVAProgrammation réseau en JAVA
Programmation réseau en JAVA
 
Presentation pfe ingenieur d etat securite reseau et systemes
Presentation pfe ingenieur d etat securite reseau et systemesPresentation pfe ingenieur d etat securite reseau et systemes
Presentation pfe ingenieur d etat securite reseau et systemes
 
Connexion point à point (ppp, hdlc)
Connexion point à point (ppp, hdlc)Connexion point à point (ppp, hdlc)
Connexion point à point (ppp, hdlc)
 
Architecture réparties et les services web
Architecture réparties et les services webArchitecture réparties et les services web
Architecture réparties et les services web
 
MEMOIRE DE STAGE
MEMOIRE DE STAGEMEMOIRE DE STAGE
MEMOIRE DE STAGE
 
Rapport de stage bts
Rapport de stage btsRapport de stage bts
Rapport de stage bts
 
conception et réalisation d'une application de gestion des rapports téléphoni...
conception et réalisation d'une application de gestion des rapports téléphoni...conception et réalisation d'une application de gestion des rapports téléphoni...
conception et réalisation d'une application de gestion des rapports téléphoni...
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
Cours réseaux informatiques ia2
Cours réseaux informatiques  ia2Cours réseaux informatiques  ia2
Cours réseaux informatiques ia2
 
Présentation PFE
Présentation PFEPrésentation PFE
Présentation PFE
 
Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...
Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...
Sécurité de la VoIP : quels risques et quelles solutions pour votre entrepris...
 
Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices Réseaux et protocoles - Cours + exercices
Réseaux et protocoles - Cours + exercices
 
Introduction aux réseaux locaux
 Introduction aux réseaux locaux Introduction aux réseaux locaux
Introduction aux réseaux locaux
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
Rapport pfe licence
Rapport pfe licenceRapport pfe licence
Rapport pfe licence
 
Projet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatiqueProjet de fin d'etude gestion informatique
Projet de fin d'etude gestion informatique
 

Ähnlich wie Cour simulation ns2

Module_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptxModule_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptxbochramiinfo
 
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des AlgorithmesCh4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmeslotfibenromdhane
 
Design Patterns (2003)
Design Patterns (2003)Design Patterns (2003)
Design Patterns (2003)Pascal Roques
 
Exécution Symbolique
Exécution SymboliqueExécution Symbolique
Exécution SymboliqueIlhem Daoudi
 
iteration par valeur.ppt
iteration par valeur.pptiteration par valeur.ppt
iteration par valeur.pptSaidaSoundouss
 
Owf 2013 rii panorama leroy
Owf 2013 rii panorama leroyOwf 2013 rii panorama leroy
Owf 2013 rii panorama leroyPatrick MOREAU
 
Cours d'algorithmique distribuée (2010-2011)
Cours d'algorithmique distribuée (2010-2011)Cours d'algorithmique distribuée (2010-2011)
Cours d'algorithmique distribuée (2010-2011)Élodie Descharmes
 

Ähnlich wie Cour simulation ns2 (7)

Module_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptxModule_Simulation Cours N° 1 Introduction à la simulation (1).pptx
Module_Simulation Cours N° 1 Introduction à la simulation (1).pptx
 
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des AlgorithmesCh4 Algorthmique Avancée - Analyse & complexité des Algorithmes
Ch4 Algorthmique Avancée - Analyse & complexité des Algorithmes
 
Design Patterns (2003)
Design Patterns (2003)Design Patterns (2003)
Design Patterns (2003)
 
Exécution Symbolique
Exécution SymboliqueExécution Symbolique
Exécution Symbolique
 
iteration par valeur.ppt
iteration par valeur.pptiteration par valeur.ppt
iteration par valeur.ppt
 
Owf 2013 rii panorama leroy
Owf 2013 rii panorama leroyOwf 2013 rii panorama leroy
Owf 2013 rii panorama leroy
 
Cours d'algorithmique distribuée (2010-2011)
Cours d'algorithmique distribuée (2010-2011)Cours d'algorithmique distribuée (2010-2011)
Cours d'algorithmique distribuée (2010-2011)
 

Mehr von Gilles Samba

Installation et configuration asterisk
Installation et configuration asteriskInstallation et configuration asterisk
Installation et configuration asteriskGilles Samba
 
Architecture reseau mobile
Architecture reseau mobileArchitecture reseau mobile
Architecture reseau mobileGilles Samba
 
Etude des modeles_ns2
Etude des modeles_ns2Etude des modeles_ns2
Etude des modeles_ns2Gilles Samba
 
Dsr aodv performance
Dsr aodv performanceDsr aodv performance
Dsr aodv performanceGilles Samba
 
Mpls foudhaili oussama
Mpls foudhaili oussamaMpls foudhaili oussama
Mpls foudhaili oussamaGilles Samba
 
4 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 20124 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 2012Gilles Samba
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3Gilles Samba
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3Gilles Samba
 
Asterisk to ip_rapport
Asterisk to ip_rapportAsterisk to ip_rapport
Asterisk to ip_rapportGilles Samba
 
2 architecture reseau-mobile
2 architecture reseau-mobile2 architecture reseau-mobile
2 architecture reseau-mobileGilles Samba
 

Mehr von Gilles Samba (19)

Asterisk trixbox
Asterisk trixboxAsterisk trixbox
Asterisk trixbox
 
Installation et configuration asterisk
Installation et configuration asteriskInstallation et configuration asterisk
Installation et configuration asterisk
 
Architecture reseau mobile
Architecture reseau mobileArchitecture reseau mobile
Architecture reseau mobile
 
Apport de la_lte
Apport de la_lteApport de la_lte
Apport de la_lte
 
Acces umts efort
Acces umts efortAcces umts efort
Acces umts efort
 
Cours ipv6pdf
Cours ipv6pdfCours ipv6pdf
Cours ipv6pdf
 
Evaluation aodv
Evaluation aodvEvaluation aodv
Evaluation aodv
 
Etude des modeles_ns2
Etude des modeles_ns2Etude des modeles_ns2
Etude des modeles_ns2
 
Dsr aodv performance
Dsr aodv performanceDsr aodv performance
Dsr aodv performance
 
Mpls foudhaili oussama
Mpls foudhaili oussamaMpls foudhaili oussama
Mpls foudhaili oussama
 
4 g evolution
4 g evolution4 g evolution
4 g evolution
 
4 g
4 g4 g
4 g
 
4 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 20124 g americas glossary of wireless acronyms 2012
4 g americas glossary of wireless acronyms 2012
 
4 g lte
4 g lte4 g lte
4 g lte
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3
 
Umts et wan
Umts et wanUmts et wan
Umts et wan
 
4 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v34 ir be-dimensionnement_interface_radio_2012_v3
4 ir be-dimensionnement_interface_radio_2012_v3
 
Asterisk to ip_rapport
Asterisk to ip_rapportAsterisk to ip_rapport
Asterisk to ip_rapport
 
2 architecture reseau-mobile
2 architecture reseau-mobile2 architecture reseau-mobile
2 architecture reseau-mobile
 

Kürzlich hochgeladen

COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfabatanebureau
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.Txaruka
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprisesMajdaKtiri2
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxssuserbd075f
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...M2i Formation
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film françaisTxaruka
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptssusercbaa22
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfachrafbrahimi1
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film françaisTxaruka
 

Kürzlich hochgeladen (16)

COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdfCOURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
COURS SVT 3 EME ANNEE COLLEGE 2EME SEM.pdf
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
gestion des conflits dans les entreprises
gestion des  conflits dans les entreprisesgestion des  conflits dans les entreprises
gestion des conflits dans les entreprises
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
La nouvelle femme . pptx Film français
La   nouvelle   femme  . pptx  Film françaisLa   nouvelle   femme  . pptx  Film français
La nouvelle femme . pptx Film français
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
 
Cours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdfCours ofppt du Trade-Marketing-Présentation.pdf
Cours ofppt du Trade-Marketing-Présentation.pdf
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 

Cour simulation ns2

  • 1. Support de cours Simulations vincent.gauthier@int-evry.fr http://www-public.int-evry.fr/~gauthier/ jeudi 14 mai 2009
  • 2. Simulations de Réseaux !!!!!!!!! jeudi 14 mai 2009
  • 3. • Modélisation des systèmes • Simulation à événements discrets • Intervalles de confiances • Les simulateurs • Exemple de simulation • Conseils jeudi 14 mai 2009
  • 5. Intérêt de la simulation ? • Quand on ne peut pas facilement observer les états du système, • Quand on désire analyser l’enchaînement des événements dans le système, ainsi que les relations de causes à effets, • Quand on désire valider une solution analytique, • Quand la complexité des interactions dans le système est telle quelle ne peut être étudiée qu'au travers de simulations, • Quand on désire visualiser les états d'un système, • Quand on veut tester différentes optimisations pour améliorer un système déjà existant. jeudi 14 mai 2009
  • 6. Les simulations sont elles toujours utiles ? • Quand il y a une solution analytique ? • Quand il est plus facile de faire directement des mesures sur le système réel ? • Quand il manque trop des données sur les systèmes à étudier ? • Quand on ne peut pas valider les résultats de simulations ? • Quand le système a étudier est trop complexe ? jeudi 14 mai 2009
  • 7. Avantages /Inconvénients • Avantages • Inconvénients • Observations des états du • La conception de modèles systèmes, peut nécessiter des compétences spéciales, • Etudes des points de fonctionnement d'un • Une autre forme d'analyse système, plus proche de la réalité est peut être nécessaire • Etudes de systèmes à échelle de temps variable, • Résultats difficilement interprétables : • Etudes de l'impact des variables sur les • Résultats pas forcément performances du système, généralisable, • Etude d'un système sans • Résultats sont fonction des les contraintes matérielles. entrées du système jeudi 14 mai 2009
  • 8. Types de modèles(1/2) Classification des modèles jeudi 14 mai 2009
  • 9. Types de modèles(2/2) • Simulations statiques • Monte Carlo: méthode applicable seulement si le temps n'a pas d'influence (Von Neumann & Ulam, projet Manathan), utilise des tirages aléatoires et souvent uniformes • Simulations dynamiques • Système qui change dans le temps • Simulations Déterministes • Qui ne contient pas de variable aléatoire, une variable d'entrée donnée, produit toujours le même résultat • Simulations Stochastiques • Entrées et sorties sont aléatoires jeudi 14 mai 2009
  • 10. Exemples • Files d'attente • Variable d'état : temps d'attente • Réponse : Discret, Stochastique, Dynamique • Machines de production • Variable d'état: occupé, en attente, en panne • Réponse : Discret, Stochastique, Dynamique • Bruits d'un systèmes électronique • Variable d'état: niveau de bruit • Réponse : Continue, Stochastique, Statique jeudi 14 mai 2009
  • 11. Simulation à événements discrets jeudi 14 mai 2009
  • 12. Simulations à événements discrets (1/3) • Utilisation d'un ordonnanceur comme élément de base du simulateur, • Chaque événement représente un changement d'état, couplé avec une variable qui indique le temps auquel l'événement aura lieu, • Ordonnanceur, gère une liste d'événements triés selon leurs date de déclenchement, • Lorsque que l'ordonnanceur exécute un événement, il modifie la variable représentant le temps courant. jeudi 14 mai 2009
  • 13. Simulations à événements discrets (2/3) jeudi 14 mai 2009
  • 14. Simulations à événements discrets (3/3) L'unité de traitement ne modifie jamais le firetime jeudi 14 mai 2009
  • 16. Simulations à événements discrets (1/3) • Les simulateurs les plus couramment utilisés dans le domaine des réseaux, mais d'autres types de simulateurs existent : • Simulateur à pas fixes, • Simulateur de modèle fluide. • Les simulateurs à pas fixes sont peu utilisés car gourmands en ressources, • Simulateur de modèle fluide, nécessite la connaissance d'équations différentielles permettant de calculer les évolutions du système jeudi 14 mai 2009
  • 17. Simulations à événements discrets (2/3) • Les simulateurs à pas fixe, scrutent l'évolution du systèmes entre deux incréments de temps, • Nécessitent de balayer tous les intervalles de temps • Beaucoup plus coûteux que de sauter d'événements en événements • Simulent le système même quand il ne se passe rien • Très peu utilisés de nos jours • Simplicité d'utilisation jeudi 14 mai 2009
  • 18. Simulations à événements discrets (3/3) • Les simulations avec des modèles fluides, ne sont pas encore beaucoup développées • N2NSoft (Baccelli) • Alcatel : réseaux d'accès ADSL • TCP peut être modélisé par un systèmes d'équations différentielles (TCP Vegas) • Plus besoin de modélisation au niveau paquets pour avoir des résultats précis F. BACCELLI, D. HONG Interaction of TCP flows as Billiards, IEEE/ACM Transactions on Networking (2005) 13, 4 jeudi 14 mai 2009
  • 19. Simulateur de réseaux sans fil jeudi 14 mai 2009
  • 21. Intervalles de confiances f = mx jeudi 14 mai 2009
  • 22. Intervalles de confiances (iid) X = X1 , X2 , ....Xn n 1 ˆ µn = Xi n i=1 n 1 ˆ σn2 = (Xi − µn ) ˆ 2 n−1 i=1 Les intervalles de confiances sont de : ˆ2 σn ˆ µn ± η √ n η est le (1 − α/2) quantile de la distribution de Student tn−1 jeudi 14 mai 2009
  • 23. Intervalles de confiances (iid) Méthode Batch Mean divise les échantillons en b bloc de taille m m 1 Zi = Z2(i−1)+j m j=1 b ¯ 1 Zb = Zj b j=1 b 1 ¯ ˆ2 σb = (Zi − Zb )2 b−1 j=1 Les intervalles de confiances sont de : ¯ ˆ2 σb Zb ± η b η est le (1 − α/2) quantile de la distribution de Student tb−1 jeudi 14 mai 2009
  • 24. Intervalles de confiances (non iid) Méthode Batch Mean, Legal avec intervalles de confiances à 95% ¯ Zb ± εT b εT = 4.5 ˆ2 σb n Ne prend pas comme hypothèse que la moyenne des blocs est i.i.d, distribution à queue lourde, processus avec mémoire...etc jeudi 14 mai 2009
  • 26. Quantile – Quantile Plot ou test de conformité empirique (2/2) • Il est parfois nécessaire de déterminer ou de caractériser  la distribution des résultats obtenus : • Est ce que les données sont i.i.d  selon une loi normale ?  • Vérification rapide Quantile Plot • Le alpha quantile d'une distribution de probabilité est la valeur telle que la probabilité qu'une variable aléatoire suivant cette distribution lui soit inférieure ou égale vaut alpha. Bien entendu, alpha doit être compris entre 0 et 1, puisqu'il représente une probabilité jeudi 14 mai 2009
  • 27. Quantile – Quantile Plot ou test de conformité empirique (2/2) jeudi 14 mai 2009
  • 28. Conclusion • Calculer l'intervalle de confiance permet de connaître la  valeur de l'imprécision de mesure, • Il permet de stopper des simulations  quand la précision  voulue est atteinte (je veux la moyenne avec une précisio n de  +/­0.01)  • Valider qualitativement la valeur du résultat qu’on a obt enu,  • Sur une échelle de 0 à 10 j'obtiens une moyenne de 5 a vec un intervalle de confiance de +/­3 !!!!!  jeudi 14 mai 2009
  • 30. Simulateurs • NS-2, SNS (NS distribué) • Jist + Swans (nouveau) • Jsim (nouveau) • Qualnet, Glomosim (performant) • Opnet (nombreux modèles) jeudi 14 mai 2009
  • 31. Pourquoi NS-2 • NS est le système • Un logiciel de de référence simulation multicouche • Un outil libre • Interface OTcl • Ajout de composants à la • Un noyau en C++ demande (scheduler...) • Développement • Couches réseaux orienté objets codées en C++ jeudi 14 mai 2009
  • 32. Simulations • Support: Lan, • TCP Mobile, satellite, ATM • Contrôle de congestion • IntServ/DiffServ • Application • Multicast • Web cache • Ad hoc • Multimédia • Transport jeudi 14 mai 2009
  • 33. Simulations • Implémentation en C++ • Scénario en Otcl • Test de simulation avec Nam • Résultat, post processing : • perl • awk • gnuplot • xgraph jeudi 14 mai 2009
  • 34. Simulations • NS exécute la simulation, NAM visualisation de la simulation • Gnuplot, Xgraph, Tracegraph, interprétation des résultats jeudi 14 mai 2009
  • 35. Structure de NS-2 jeudi 14 mai 2009
  • 36. Les composants de NS-2 • Ns, Le simulateur • Pre-processing: • Nam, the • Générateur de network trafic et topologie animator (setdest) • Visualise les fichiers • Post-processing: de trace de NS • Analyse des • Nam editor: GUI fichiers de trace, pour générer des Awk, Perl, ou Tcl scripts NS jeudi 14 mai 2009
  • 37. • Modèle de trafic: • Routage (distance vector , link state), ad • Web, FTP, telnet, hoc (dsr, aodv) constant-bit rate, real audio • Discipline de file d’attente: RED, drop-tail, etc • Protocole de la couche transport : • Liens physiques: • Unicast: TCP (Reno, • Filaire (point-to-point, Vegas, etc.), UDP LANs), wireless (propagation multiple), • Multicast: SRM satellite • Routage et file d’attente: jeudi 14 mai 2009
  • 38. Classes du Simulateur • Application • Générateur de trafic • Agent • Protocoles • Nœud • Nœuds du réseau • Link • Liens entre les noeuds • Monitor • Elaboration de statistique sur un lien particulier jeudi 14 mai 2009
  • 40. Interface OTcl • Contrôle la simulation • Un composant du simulateur • Interaction avec le simulateur • Les principales classes sont dans l’interpréteur • Manipulation (création, connections …) des classes du simulateur jeudi 14 mai 2009
  • 41. Otcl (1/3) • Instantiation • set Obj [new Class] • Méthode • $Obj Methode arg1 arg2 • Commande • [<commande>] jeudi 14 mai 2009
  • 42. Otcl (2/3) • Fonction proc printArg {nom} { puts “hello $nom“ } jeudi 14 mai 2009
  • 43. • constructeur # subclass: Class Person Class Kid - superclass Person # constructeur: Kid instproc greet {} { Person instproc init {age} { $self instvar age_ $self instvar age_ puts “$age_ years old kid: set age_ $age What’s up, dude?” } } # méthode: Person instproc greet {} { $self instvar age_ set a [new Person 45] puts “$age_ years old: How set b [new Kid 15] are you doing?” $a greet } $b greet jeudi 14 mai 2009
  • 44. Evenements • Crée l’ordonnanceur • set ns [new Simulator] • Ordonnance les événements • $ns at <time> <event> • <event>: une commande tcl • $ns at 5.0 “finish” • Lance le l’ordonnanceur • $ns run jeudi 14 mai 2009
  • 45. Topologie • Nœuds • set n0 [$ns node] • set n1 [$ns node] • Liens et discipline de file d'attente • $ns <liens> $n0 $n1 <bande passante> <délai> <queue> • <type de lien>: duplex-link, simplex-link • <type de queue>: DropTail, RED, CBQ, FQ, SFQ, DRR, diffserv RED queues jeudi 14 mai 2009
  • 46. Trafic (1/3) • Exponentielle, on-off • set src [new Application/Traffic/Exponential] • set src [new Application/Traffic/Pareto] • UDP • set udp [new Agent/UDP] • set null [new Agent/Null] • $ns attach-agent $n0 $udp • $ns attach-agent $n1 $null • $ns connect $udp $null jeudi 14 mai 2009
  • 47. Trafic (2/3) • CBR • set src [new Application/Traffic/ CBR] • $src set packetSize_ 1500 • $src set rate_ 100Kb jeudi 14 mai 2009
  • 48. Trafic (2/3) • TCP • FTP • set tcp [new Agent/TCP] • set ftp [new Application/ FTP] • set tcpsink [new Agent/ TCPSink] • $ftp attach-agent $tcp • $ns attach-agent $n0 $tcp • Telnet • $ns attach-agent $n1 • set telnet $tcpsink [newApplication/Telnet] • $ns connect $tcp $tcpsink • $telnet attach-agent $tcp jeudi 14 mai 2009
  • 49. Monitor (1/2) • Monitor flow • $tcp fid_ 1; • set flowmon [$ns makeflowmon Fid] • set lien [$ns link $n0 $n1] • $ns attach-fmon $lien $flowmon • set fcl [$flowmon classifier] • %%% dans FINISH %%% • set stats_tcp [$fcl lookup auto 0 0 1] • set bw [$stats_tcp set bdepartures_] jeudi 14 mai 2009
  • 50. Monitor (2/2) • Monitor queue • set monitor [ $ns queue-monitor $n0 $n1 stdout] • puts stdout “[ $monitor set pdepartures_ ]” • puts stdout “[ $monitor set barrivals_ ]” • puts stdout “[ $monitor set pdrops]” jeudi 14 mai 2009
  • 52. Simulation (1/3) • Trafic CBR • Protocole UDP • Lien 1Mb, discipline de file d ’attente FIFO • Délai 10ms jeudi 14 mai 2009
  • 53. Simulation (2/3) #creation de l ’instance de simulation set ns [new Simulator] #creation des fichier de trace set nf [open out.nam w] $ns namtrace-all $nf proc finish {} { global ns nf $ns flush-trace close $nf exec nam out.nam & exit 0 } #scheduler $ns at 5.0 "finish" #lancement de la simulation $ns run jeudi 14 mai 2009
  • 54. Simulation (3/3) set n0 [$ns node] set n1 [$ns node] $ns duplex-link $n0 $n1 1Mb 10ms DropTail set udp0 [new Agent/UDP] $ns attach-agent $n0 $udp0 set cbr0 [new Application/Traffic/CBR] $cbr0 attach-agent $udp0 set null0 [new Agent/Null] $ns attach-agent $n1 $null0 $ns connect $udp0 $null0 $ns at 0.5 "$cbr0 start" $ns at 4.5 "$cbr0 stop" jeudi 14 mai 2009
  • 56. Topologie Dumbbell évaluation de paramètres de bout en bout Parking Lot évaluation de paramètres changeant, RTT, équité ...etc jeudi 14 mai 2009
  • 57. Conseils • Paramètres importants • taille de la fenêtre TCP, MAX RTT ne doit pas être limitatif • TCP “flavor” • Taille des files d'attente (delais*BP) • Active queue Management • Problèmes • Durée des simulations • Topologie • RTT jeudi 14 mai 2009
  • 58. Références • [1] Mark Allman, Aron Falk, “On the Effective Evaluation of TCP,” ACM Computer Communication review, vol. 25, no. 5, pp. 59 - 70, 1999. • [2] Sally Floyd and Vern Paxson, “Difficulties of simulating the Internet,” IEEE/ACM transaction on networking, vol. 9, no. 4, pp 392-403, 2001. • [3] Sally floyd and Eddie Kohler, “Internet Research Needs Better Models,” ACM Hotnets-1, October, 2002. • [4] http://www.icir.org/models/bettermodels.html • [5] V. Gauthier, S. Gam, "Les simulateurs", Chapter of the book "Simulations des Réseaux (Traité IC2, série Réseaux et télécoms)", Editor: Monique Becker, Andre Luc Beylot, chapter 7, Hermes, 2006, ISBN 2-7462-1166-1. jeudi 14 mai 2009
  • 59. Références • [6] S. Kurkowski, T. Camp and M. Colagrosso, "MANET simulation studies: the incredibles," in SIGMOBILE Mobile Computer Communication Revenue, vol. 9, no. 4, pp. 50 - 61, 2005. • [7] D. Cavin, Y. Sasson and A. Schiper, "On the accuracy of MANET simulators," In Proc of the Workshop on Principles of Mobile Computing (POMC’02), Toulouse, France, October , 2002, pp. 38-43. • [8] Jean-Yves Le Boudec, "Performance Evaluation Lecture Notes (Methods, Practice and Theory for the Performance Evaluation of Computer and Communication Systems)", http://icawww.epfl.ch/ perfval/lectureNotes.html • [9] Averill M. Law and W. David Kelton, "Simulation Modeling and Analysis, 3/e”, Mac Graw Hill, 2000. • [10] F. Baccelli, D. Hong, "Interaction of TCP flows as Billiards," IEEE/ ACM Transactions on Networking, vol. 13, no. 4, 2005. jeudi 14 mai 2009