Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Introduction à J-SIM (Java Simulator) Maı̈ssa MBAYE LaBRI (Laboratoire Bordelais de Recherche en Informatique) 20 février 2008 Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Plan 1 Introduction 2 Installation 3 La simulation réseau dans J-SIM Les concepts de base Etapes de la simulation Création de topologie Configuration des noeuds Récupération des resultats 4 Création d’un nouveau composant Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Présentation de J-SIM Principales caractéristiques Simulation à temps discret Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Présentation de J-SIM Principales caractéristiques Simulation à temps discret Développé en Java Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Présentation de J-SIM Principales caractéristiques Simulation à temps discret Développé en Java Utilise TCL/ Jacl pour la mise en place de scénarii de simulation Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Présentation de J-SIM Principales caractéristiques Simulation à temps discret Développé en Java Utilise TCL/ Jacl pour la mise en place de scénarii de simulation Basé sur la notion de composants autonomes Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Présentation de J-SIM Principales caractéristiques Simulation à temps discret Développé en Java Utilise TCL/ Jacl pour la mise en place de scénarii de simulation Basé sur la notion de composants autonomes OpenSource Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Étape 1 : téléchargement 1 Configuration requise : JDK1.4 ou supérieur ant ou make (facultative mais utile) Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Étape 1 : téléchargement 1 Configuration requise : JDK1.4 ou supérieur ant ou make (facultative mais utile) 2 Procédure de téléchargement des sources Aller à la page http ://www.j-sim.org/cgi-bin/j-sim_downloader.cgi Entrer une adresse email valide et valider le formulaire Consulter sa boite pour voir le message avec le lien des sources à télécharger Télécharger aussi le patch nécessaire pour JDK5.0 et versions supérieures http ://www.j-sim.org/patch/patch1.3-4.tar.gz Passer à l’étape 2 Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Étape 2 : Compilation Décompresser les sources ainsi que le patch dans un même répertoire Créer ou mettre à jour les variables d’environnement suivants : 1 $J_SIM pointe sur le répertoire ou sont décompressées les sources. 2 $JAVA_HOME # Le répertoire d’installation de JAVA Mettre dans le $CLASSPATH les répertoires : Exemple : $J_SIM= /jsim1.3 3 $J_SIM/jars/tcl.zip $J_SIM/jars/jython.jar $J_SIM/classes Taper dans un terminale : ”ant compile” ou ”make” sur le répertoire $J_SIM Ignorer tous les Warnings et Maı̈ssa MBAYE Passer à l’étape 3 Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Étape 3 : Lancement) Bravo :-) Si vous êtes arrivés jusqu’ici cela veut dire que J-SIM est prêt à être lancer : java drcl.ruv.System pour le lancer Voir le résultat Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Consol TCL de J-SIM Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Étape 3 : Lancement Vous pouvez vous amuser à lancer les scripts qui viennent avec le package de base et qui sont dans le répertoire $J_SIM/script java drcl.ruv.System mm1.tcl donne le résultat Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) suivant Résumé Introduction Installation La simulation réseau dans J-SIM Maı̈ssa MBAYE Création d’un nouveau composant Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Les concepts de base Plan 1 Introduction 2 Installation 3 La simulation réseau dans J-SIM Les concepts de base Etapes de la simulation Création de topologie Configuration des noeuds Récupération des resultats 4 Création d’un nouveau composant Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Les concepts de base Composants et Ports J-SIM est construit sur la base de l’ACA(Autonomous Component Architecture). Les éléments sont des composants et communiquent à travers des port. Un composant est objet qui hérite de drcl.comp.Component Les composants sont des objets qui permettent de communiquer TCL fournit les commandes de base qui permettent de connecter et manipuler les objets Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Les concepts de base Unix-Like systeme de fichier Chaque composant peut contenir d’autre composants : Un composant de type réseau contient des composant de type noeud Un noeud peut contenir des queuer, des interfaces réseaux... Pour acceder à un objet on utilise les chemins du type système de fichier Unix Exemple : /scene/node0/port1@ Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Etapes de la simulation Plan 1 Introduction 2 Installation 3 La simulation réseau dans J-SIM Les concepts de base Etapes de la simulation Création de topologie Configuration des noeuds Récupération des resultats 4 Création d’un nouveau composant Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Etapes de la simulation Etapes de la simulation Les Besoins de la simulation En entrée : Un script TCL En sortie : Des graphiques des traces nam, plotter... Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Etapes de la simulation Etapes d’élaboration d’un script TCL pour J-SIM 1 Créer le composant qui va contenir le scénario 5 Attacher le scénario au runtime 6 Lancer la simulation proprement dite Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Etapes de la simulation Etapes d’élaboration d’un script TCL pour J-SIM 1 2 Créer le composant qui va contenir le scénario Créer la topologie 5 Attacher le scénario au runtime 6 Lancer la simulation proprement dite Les étapes en noir sont toujours les mêmes ! ! ! ! Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Etapes de la simulation Etapes d’élaboration d’un script TCL pour J-SIM 1 Créer le composant qui va contenir le scénario 2 Créer la topologie 3 Construire les noeuds 5 Attacher le scénario au runtime 6 Lancer la simulation proprement dite Les étapes en noir sont toujours les mêmes ! ! ! ! Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Etapes de la simulation Etapes d’élaboration d’un script TCL pour J-SIM 1 Créer le composant qui va contenir le scénario 2 Créer la topologie 3 Construire les noeuds 4 Configurer les noeus 5 Attacher le scénario au runtime 6 Lancer la simulation proprement dite Les étapes en noir sont toujours les mêmes ! ! ! ! Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Etapes de la simulation Etapes d’élaboration d’un script TCL pour J-SIM #Composant qui va contenir le Scenario mkdir drcl.comp.Component /example1 cd /example1 # Creation de la topologie Version 1 mkdir drcl.inet.Node node0 node1 mkdir drcl.inet.Link link0 connect -c node0/0@ -and link0/0@ connect -c node1/0@ -and link0/1@ ! link0 setPropDelay .01; # 10ms ... Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Création de topologie Plan 1 Introduction 2 Installation 3 La simulation réseau dans J-SIM Les concepts de base Etapes de la simulation Création de topologie Configuration des noeuds Récupération des resultats 4 Création d’un nouveau composant Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Création de topologie Matrice d’adjacence # Construction par la matrice d’adjcence : set adjMatrix_ [java::new {int[][]} 4 {{1 3 2}{3 0}{0 3}{0 1 2}}] java::call drcl.inet.InetUtil createTopology [! .] $adjMatrix_ Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Création de topologie Matrice d’adjacence # Construction manuelle: mkdir drcl.inet.Node n0 n1 n2 n3 connect -c n0/0@ -and n1/1@ connect -c n0/1@ -and n3/0@ connect -c n0/2@ -and n2/0@ connect -c n1/0@ -and n3/1@ connect -c n2/1@ -and n3/2@ Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Création de topologie Matrice d’adjacence : Forme générale Port index --> (port 0@) (port 1@) node (node 0) neighbor(0,0) neighbor(0,1) ... neighbor( index (node 1) neighbor(1,0) neighbor(1,1) ... neighbor( | ... V (node (n-1)) neighbor((n-1),0) neighbor((n-1),1) ... neighbor((n Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Configuration des noeuds Plan 1 Introduction 2 Installation 3 La simulation réseau dans J-SIM Les concepts de base Etapes de la simulation Création de topologie Configuration des noeuds Récupération des resultats 4 Création d’un nouveau composant Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Configuration des noeuds Structures des noeuds Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Configuration des noeuds Structures des noeuds Les niveaux UPL (Upper Service Layer : Protocoles Signalisation Transport ... CSL (Core Service Layer) : Service de routage des paquets d’identification (adressage) filtrage des paquets ... Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Configuration des noeuds Structures des noeuds : Répartition du modèle OSI Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Configuration des noeuds Structures des noeuds : Core Service Layer Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Configuration des noeuds Structures des noeud : Core Service Layers pd : PktDispatcher pf* : PacketFliter q : Queuer ni : NetWorkInterface rt : routing Table Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Configuration des noeuds Structures des noeud : Core Service Layers 9 10 11 12 13 14 15 16 set hostBuilder [mkdir drcl.inet.NodeBuilder .hostBuilder ] cd $hostBuilder mkdir drcl.inet.transport udp mkdir <application class> app1 mkdir drcl.inet.protocol.igmp IGMP igmp connect app/down@ -and udp@up connect app/.service_mcast@ -and igmp/.service_mcast@ cd .. Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Récupération des resultats Plan 1 Introduction 2 Installation 3 La simulation réseau dans J-SIM Les concepts de base Etapes de la simulation Création de topologie Configuration des noeuds Récupération des resultats 4 Création d’un nouveau composant Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Récupération des resultats Plotter I Caracteristiques généraux Classe drcl.comp.tool.Plotter Recois les données sous des ports de la forme ID_Courbe@ID_Plot ID_Courbe : un entier qui reprensente une courbe ID_Plot : Un ensemble de courbes qui seront regroupés dans le meme repere (fenêtre) Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Récupération des resultats Plotter II Commandes utiles pour le traçage Classe drcl.comp.tool.Plotter Recois les données sous des ports de la forme ID_Courbe@ID_Plot ID_Courbe : un entier qui reprensente une courbe ID_Plot : Un ensemble de courbes qui seront regroupés dans le meme repere (fenêtre) Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Récupération des resultats TrafficMonitor Permet de recuperer des informations telles que Le débit instantané Le taux de perte Il fonction en deux modes : Paquet : debit exprimé en pkts/secondes et envoyé en pktcount@ Byte : debit exprimé en bytes/secondes et envoyé en bytecount@ Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé Introduction Installation La simulation réseau dans J-SIM Création d’un nouveau composant Résumé Maı̈ssa MBAYE Introduction à J-SIM (Java Simulator) Résumé