Network simulator

Network simulator

Network Simulator

Network Simulator ou plus communément NS est un logiciel libre de simulation par événements discrets très largement utilisé dans la recherche académique et dans l'industrie. Il est considéré par beaucoup de spécialistes des télécommunications comme le meilleur logiciel de simulation par événements discrets, en raison de son modèle libre, permettant l'ajout très rapide de modèles correspondant à des technologies émergentes. Il est basé sur l'utilisation de langages de scripts pour la commande des simulations (tcl/tk) alors que le cœur des simulations est implémenté avec le langage C++.

Le logiciel NS est fourni avec une interface graphique (NAM) permettant de démontrer le fonctionnement des réseaux, ce qui en fait un outil à la valeur pédagogique très intéressante.


Sommaire

installation

sous windows

Avec Cygwin installé sur votre OS, il suffit de l'installer de la même facon que sous linux. Pensez seulement à vérifier que vous posséder bien les packages X11 ou Xfree86.

| Trouvez les détails de l'installation ici (wiki en anglais)

sous linux

Fonctionne sur toutes les distributions linux.

Sous openSuse par exemple, c'est très simple, il suffit de | telecharger les sources puis placer les dans le répertoire de votre choix.

Dans ce repertoire taper:


   tar xvf ns-allinone-2.33.tar.gz


pour décompresser

rentrer dans le répertoire

   cd  ns-allinone-2.33

et lancer l'installation avec

   ./install

Si vous rencontrez un problème ou une erreur avant la fin de la compilation c'est sans doute qu'il vous manque un package. Reperez dans les erreurs la ligne qui pause problème, par exemple un problème avec gcc. Vérifiez avec Yast (ou autre application d'installation de votre distribution linux) que vous possédez bien la librairie demandée. Les problèmes les plus courants sont:

  • une mauvaise version d'une librairie (gcc par exemple)
  • une librairie de developpement manquante car l'installation de base de linux ne les installe par forcement. ( par exemple xfree86-devel ou xorg-devel peuvent manquer)

Recommencez erreur après erreur en relançant l'installation


Une fois tout installé n'oubliez pas de créer un lien symbolique ou de faire un export PATH pour pouvoir utiliser network simulator.

Le plus simple étant de faire ceci: ("si vou êtes encore dans le repertoire ns-allinone-2.33)

   ln -s bin/ns /usr/local/bin/ns

et n'oubliez pas

   ln -s bin/nam /usr/local/bin/nam

Voila maintenant de n'importe quelle console vous pourrez taper ns pour lancer network simulator. C'est surtout très important pour pouvoir appeler ns ou nam depuis un fichier tcl.

utilisation

Voici les bases pour creer une petite simulation ultra simple. D'abord vous verrez le code permettant d'utiliser ns avec le nam. Puis vous verrez comment creer une topologie. Et enfin comment initier une communication entre deux noeuds de cette topologie.

les bases

   #+++++++++++++++++++
   #
   # creation du simulator
   #
   #+++++++++++++++++++++++
   #creation du simulateur => NB :on aurait pu l'appeler autrement que ns
   set ns [new Simulator]
   #on redirige la sortie vers un fichier nam => *.nam => NB: un autre nom que nf est possible
   set nf [open out.nam w]
   #on demande à ns de tout tracer dans le fichier nam
   $ns namtrace-all $nf
   #procedure obligatoire qui ferme tout proprement
   proc finish {} {
       global ns nf
       $ns flush-trace
       close $nf
       exec nam out.nam &
       exit 0
   }


creation de topologie

   #++++++++++++++++++++++++++++++++++++
   #
   #  creation de la topologie
   #
   #+++++++++++++++++++++++++++++++++++++++


   #on creer des noeuds
   #set nomDunoeud [$varSimulateur node] => NB: varSimulateur est le nom du simulateur : ici ns
   set n0 [$ns node]
   set n1 [$ns node]
   set n2 [$ns node]
   set n3 [$ns node]


   #on creer les liens
   #$varSimulateur typeDeLiens $varNoeud $varNoeud2 vitesseLien delaiLiens typeQueue
   $ns duplex-link $n0 $n1 1Mb 10ms DropTail
   $ns duplex-link $n2 $n1 1Mb 10ms DropTail
   $ns duplex-link $n2 $n3 1Mb 10ms DropTail
   $ns duplex-link $n0 $n3 1Mb 10ms DropTail
   $ns duplex-link $n0 $n2 1Mb 10ms DropTail

Echange de données

   #+++++++++++++++++++++++++++++++++++++++
   #
   #  simulation des paquets de données
   #
   #+++++++++++++++++++++++++++++++++++++


   #creer un agent udp
   set udp0 [new Agent/UDP]
   #attache cet agent au noeud n0
   $ns attach-agent $n0 $udp0
   #un generateur de traffic est cree
   #NB CBR = "constant bit rate"
   set cbr0 [new Application/Traffic/CBR]
   $cbr0 set packetSize_ 500
   $cbr0 set interval_ 0.005 # = 200 paquets / sec
   $cbr0 attach-agent $udp0
   #$cbr0 attach-agent $udp0 # on attach a l agent udp
   #on creer un agent null qui sera le puit
   set null0 [new Agent/Null] 
   $ns attach-agent $n1 $null0
   #les deux agents sont connectés entre eux
   $ns connect $udp0 $null0
   #on lance les comm des agents avec start et stop
   $ns at 0.5 "$cbr0 start" 
   # demare 0.5 seconde apres le debut
   $ns at 4.5 "$cbr0 stop" 
   # s'arrete 0.5 secondes avant la fin


pour finir

Ce code est à mettre obligatoirement tout à la fin

   #on appel la procedure finish dans 5 secondes
   $ns at 5.0 "finish"
   #on demarre ns
   $ns run

NotaBene

Le code donné en exemple est tiré d'un très bon tutoriel, cette explication n'est autre qu'une traduction/simplification commentée par mes soins. Si vous désirez plus d'info et pour allez plus loin allez sur le lien suivant :

Marc Greis'Tutorial

liens externes

pour toutes les anciennes versions de NS

  • Portail des logiciels libres Portail des logiciels libres
Ce document provient de « Network Simulator ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Network simulator de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • Network simulator — A network simulator is a piece of software or hardware that predicts the behavior of a network, without an actual network being present. Contents 1 Uses of network simulators 2 Examples of network simulators 3 See also …   Wikipedia

  • Network Simulator — ns 3 Développeur (en) …   Wikipédia en Français

  • Stuttgart Neural Network Simulator — (Abkürzung: SNNS) ist ein Softwarepaket für künstliche neuronale Netze das zunächst an der Universität Stuttgart entwickelt wurde und zur Zeit (2009) an der Universität Tübingen gepflegt wird. Das Projekt wurde 1991 mit dem Deutschen… …   Deutsch Wikipedia

  • Network emulation — is a technique where the properties of an existing, planned and/or non ideal network are simulated in order to assess performance, predict the impact of change, or otherwise optimize technology decision making. Contents 1 Methods of emulation 2… …   Wikipedia

  • Network traffic simulation — is a process used in telecommunications engineering to measure the efficiency of a communications network. Contents 1 Overview 2 Simulation methods 3 Advantages of simulation 4 …   Wikipedia

  • Network simulation — In communication and computer network research, network simulation is a technique where a program models the behavior of a network either by calculating the interaction between the different network entities (hosts/routers, data links, packets,… …   Wikipedia

  • Network congestion avoidance — is a process used in computer networks to avoid congestion.The fundamental problem is that all network resources are limited, including router processing time and link throughput. Eg.: *today s (2006) Wireless LAN effective bandwidth throughput… …   Wikipedia

  • Network congestion — In data networking and queueing theory, network congestion occurs when a link or node is carrying so much data that its quality of service deteriorates. Typical effects include queueing delay, packet loss or the blocking of new connections. A… …   Wikipedia

  • Ns (simulator) — ns or the network simulator (also popularly called ns 2, in reference to its current generation) is a discrete event network simulator. It is popular in academia for its extensibility (due to its open source model) and plentiful online… …   Wikipedia

  • ns (simulator) — ns 2 redirects here. For the fictional robot from the works of Isaac Asimov, see NS 2 (literary character). For other uses of NS , see NS (disambiguation). ns 3 Initial release June 30, 2008 (2008 06 30) …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”