SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
Simulation
Outline
 Introduction to Simulation
 Discrete Event Simulation
 Simulator
   CSIM (Simulation Language)
   GloMoSim
   NS-2
   NCTU-NS
 Conclusion
 Mini-Project: Using GloMoSim
 Project: Develop a MAC simulator using PARSEC
Outline
 Introduction to Simulation
 Discrete Event Simulation
 Simulator
   CSIM (Simulation Language)
   GloMoSim
   NS-2
   NCTU-NS
 Conclusion
 Mini-Project: Using GloMoSim
 Project: Develop a MAC simulator using PARSEC
Introduction to Simulation
 What is simulation?
   A simulation is the imitation of the operation of a real-world
   process or system over time.
Introduction to Simulation
 System and System Environment
   To model a system, it is necessary to understand the concept of a
   system and the system boundary.
   A system is defined as a group of objects that are joined together
   in some regular interaction or interdependence toward the
   accomplishment of some purpose.
   A system is often affected by changes occurring outside the
   system. Such changes are said to occur in the system environment.
   In modeling a system, it is necessary to decide on the boundary
   between the system and its environment.
Introduction to Simulation
 Components of a System
   An entity is an object of interest in the system.
   An attribute is a property of an entity.
   An activity represents a time period of specified length.
   The state of a system is defined to be that collection of variables
   necessary to describe the system at any time.
   An event is defined as an instantaneous occurrence that may
   change the state of the system.
 Discrete System
   A discrete system is one in which the state variables change only
   at a discrete set of points in time.
Introduction to Simulation
 Model of a System
   A model is a representation of a system for the purpose of
   studying the system.
   For most studies, it is enough to consider only those aspects of
   the system that affects the problem under investigation.
   Therefore, in most cases, a model is a simplification of the
   system.
   On the other hand, the model should be sufficiently detailed to
   permit valid conclusions to be drawn about the real system.
Introduction to Simulation
 Types of Models
   Static/Dynamic
      A static simulation model, sometimes called a Monte Carlo
      simulation, represent a system at a particular point in time.
      A dynamic simulation model represents a system as it changes
      over time.
   Deterministic/Stochastic
      Simulation models that contain no random variables are classified
      as deterministic
      Deterministic models have a known set of inputs that will result
      in a unique set of outputs.
      On the other hand, a stochastic simulation model has one or more
      random variables as inputs. (e.g., random backoff timers)
Introduction to Simulation
 Types of Models (Continue)
   Discrete/Continuous
     Like the definitions for discrete and continuous systems, discrete
     and continuous models are defined similarly.
     However, a discrete simulation model is not always used to
     model a discrete system, nor is a continuous model always used
     to model a continuous system.
 Discrete-Event System Simulation
   Discrete-event system simulation is widely used and is the focus
   of this course.
   Discrete-event system simulation is the modeling of the systems
   in which the state variables change only at a discrete set of points
   in time.
Outline
 Introduction to Simulation
 Discrete Event Simulation
 Simulator
   CSIM (Simulation Language)
   GloMoSim
   NS-2
   NCTU-NS
 Conclusion
 Mini-Project: Using GloMoSim
 Project: Develop a MAC simulator using PARSEC
Discrete Event Simulation
 Strategies of discrete event simulation
   Activity-oriented simulation
   Event-oriented simulation
   Process-oriented simulation
Discrete Event Simulation
 Activity-oriented simulation
   The programmer defines activities which are started when certain
   conditions are satisfied.
   In many cases, this type of simulation uses a simulated clock
   which advance in constant increments of time.
   With each advance, a list of activities is scanned, and those
   which have become eligible are started.
   This type of model is used more often with simulating physical
   devices.
   Simulate Network System
      Going to be very slow to execute
      Most time increments will produce no change to the system at all
Discrete Event Simulation
 Activity-oriented simulation

                           the list of activities at time 1



     Scan                                      the list of activities at time 2



            Scan




 1    2      3     4   5         6       7        8           9
Discrete Event Simulation
 Event-oriented simulation
   The simulation programmer defines events and then writes
   routines which are invoked as each kind of event occurs
   Simulated time may pass between the events
   Usually, a priority queue will be used
Discrete Event Simulation
                                                  Array
   Event-oriented simulation
                                                          struct sensor
                                                          {
                                        Event A             int id;
                  7:28                                      int location;
                  7:25                                    };

                  7:21




                              Event B

void                   void
Process_Event_A() {}   Process_Event_B() {}
Discrete Event Simulation
 Process-oriented simulation
   The programmer defines the processes (entities, transactions, etc.)
   and the model in terms of interacting processes.
   A process is an independent program or procedure which can
   execute in parallel with other processes.
     The notion of in parallel is used with some liberty
   The processes will use the resources of the system.
     Resource-oriented
     Transaction-oriented
   Time Advance
     Hold
     Send a message to itself in the future
Discrete Event Simulation
 Process-oriented simulation
                  Process
   Process        (Entity)     Process
   (Entity)                    (Entity)



                 Resource
                 (Facility)

                  Process
                  (Entity)


    Process                    Process
    (Entity)                   (Entity)
Outline
 Introduction to Simulation
 Discrete Event Simulation
 Simulator
   CSIM (Simulation Language)
   GloMoSim
   NS-2
   NCTU-NS
 Conclusion
 Mini-Project: Using GloMoSim
 Project: Develop a MAC simulator using PARSEC
Simulation Language –
CSIM
 Mesquite Software Inc.
 CSIM 19 is the latest version of the widely-used CSIM
 simulation toolkit, which was initially developed in 1985
 at Austin's Microelectronics and Computer Technology
 Corporation (MCC).
 CSIM is a library of routines for use by C or C++
 programmers.
 Can be used to implement process-oriented, discrete-
 event simulation models of complex system
Simulators –
GloMoSim
 UCLA Parallel Computing Laboratory
   http://pcl.cs.ucla.edu/
 GloMoSim (Global Mobile system Simulator) is a
 library-based simulator for wireless networks.
 It is designed as a set of library modules, each of which
 simulates a specific wireless communication protocol in
 the protocol stack.
   The communication protocol stack for wireless networks is
   divided into a set of layers, each with its own API.
 The library has been developed using PARSEC, a C-
 based parallel simulation language
   New protocols and modules can be programmed and added to the
   library using PARSEC.
Simulators –
NS-2
 An object-oriented, discrete event network simulator
 developed at UC Berkely
 Mainly used for simulating local and wide area networks
 It is written in C++ and OTcl (Object-oriented Tcl) and
 primarily uses OTcl as command and configuration
 language.
   OTcl: Network Topology
   C++: Network Component
Simulators –
NCTU-NS
 The NCTUns network simulator is developed at
 NCTU, Taiwan. Its predecessor is the Harvard
 network simulator.
 By using a novel simulation methodology, it can
 do several tasks that traditional network
 simulators cannot easily do.
 More and more people are using it. (Use the
 Google to search it for yourself.)
Outline
 Introduction to Simulation
 Discrete Event Simulation
 Simulator
   CSIM (Simulation Language)
   GloMoSim
   NS-2
   NCTU-NS
 Conclusion
 Mini-Project: Using GloMoSim
 Project: Develop a MAC simulator using PARSEC
Conclusion
 Discrete Event Simulation
   Three approaches
   The choice is in some sense a matter of taste, as any
   model developed using one approach could have been
   implemented using the other.
 Simulation Language and Simulator
   CSIM, PARSEC
   GloMoSim, NS-2, NCTUns
References
 Jerry Banks, John S. Carson, Barry L. Nelson, David M. Nicol , "Discrete
 Event System Simulation", 4th edition, Prentice Hall, 2005, ISBN 0131293427
 Herb Schwetman, “CSIM: A C-Based, Process-oriented Simulation Language”,
 in Proceedings of the Winter Simulation Conference, 1986
 Mesquite Software Inc. (CSIM19) http://www.mesquite.com/index.htm
 Xiang Zeng, Rajive Bagrodia, and Mario Gerla, “GloMoSim: A Library for
 Parallel Simulation of Large-scale Wireless Networks”, in Proceedings of the
 12th Workshop on Parallel and Distributed Simulations -- PADS '98, May 26-
 29, 1998 in Banff, Alberta, Canada
 NS-2, http://www.isi.edu/nsnam/ns/
 Marc Greis, “Tutorial for the Network Simulator “ns””,
 http://www.isi.edu/nanam/ns/tutorial/index.html
 The ns Manual, http://www.isi.edu/nsnam/ns/ns-documentation.html
 S.Y. Wang, “NCTUns 1.0”, In the column "Software Tools for Networking",
 IEEE Network, Vol.17, No.4, July 2003.
Outline
 Introduction to Simulation
 Discrete Event Simulation
 Simulator
   CSIM (Simulation Language)
   GloMoSim
   NS-2
   NCTU-NS
 Conclusion
 Mini-Project: Using GloMoSim
 Project: Develop a MAC simulator using PARSEC
Mini-Project:
Using GloMoSim
 Download
   UCLA Parallel Computing Laboratory
   http://pcl.cs.ucla.edu/


 Install
   ~/parsec (depend on your OS)
     linux3.csie.nctu.edu.tw
           RedHat Linux 9.0 Powered by Kernel 2.4.27)
           gcc version 3.3.1
   ~/glomosim
Mini-Project:
Using GloMoSim
 Compile

   ~/glomosim/main (make)
   ~/glomosim/bin
 Related Files
   ~/glomosim/bin/config.in
   ~/glomosim/bin/app.in
   ~/glomosim/bin/glomo.stat
   ~/glomosim/bin/mobility.in
   ~/glomosim/bin/nodes.input
Mini-Project:
Using GloMoSim
 Example
   Application: 2 FTP Flows
   Routing: AODV, DSR


 Demonstrate
   How to set?
   How to observe results?
Outline
 Introduction to Simulation
 Discrete Event Simulation
 Simulator
   CSIM (Simulation Language)
   GloMoSim
   NS-2
   NCTU-NS
 Conclusion
 Mini-Project: Using GloMoSim
 Project: Develop a MAC simulator using PARSEC
Project: Develop a MAC
Simulator Using PARSEC
 Introduction to PARSEC
   PARSEC was developed by members of the UCLA Parallel
   Computing Laboratory
      Web page: http://pcl.cs.ucla.edu/
   PARSEC (for PARallel Simulation Environment for Complex
   systems) is a C-based discrete-event simulation language.
   It adopts the process interaction approach to discrete-event
   simulation.
Project: Develop a MAC
Simulator Using PARSEC
 Entity (Driver Entity)
 entity NODE(int myno) {
            ename neighbor[6];
            int i, N, count;
            receive () {}
            while (1) {
                       receive (MSG msg) {
                       }
            }
            finalize { }
 }
 entity driver(){
 }
Project: Develop a MAC
Simulator Using PARSEC
 Message
 message MSG {
         int source;
 };
 receive (MSG msg) {
 }
 send MSG{myno} to neighbor[GET_NEIGHBOR(N)];
Project: Develop a MAC
Simulator Using PARSEC
      Example
 1.    Topology

 2.    When a node receives a message, it will transmit a message to
       one of its neighbors within 10~20 time units. (Initially, each
       node can send a message to itself to start simulation.)
 3.    The neighbor is chosen randomly.
 4.    When the program terminates, each node will report how many
       messages it receives.
 5.    The maximum simulation time. 100000 time units.
Project: Develop a MAC
Simulator Using PARSEC
 Project Goal:
   Unslotted CSMA defined in IEEE 802.15.4
     IEEE standard for information technology -
     telecommunications and information exchange between
     systems - local and metropolitan area networks specific
     requirements part 15.4: wireless medium access control
     (MAC) and physical layer (PHY) specifications for low-rate
     wireless personal area networks (LR-WPANs)
Project: Develop a MAC
Simulator Using PARSEC
1.   Topology (You can assume that interference range is equal to communication range)
2.   Transmission Mechanism (http://www.eecs.berkeley.edu/~csinem/) “ZigBee/IEEE
     802.15.4 Summary” (unslotted CSMA/CA)
3.   States: {IDLE, RECEIVING, PENDING, TRANSMITTING}
        A node will not receive any packet when it is in TRANSMITTING state.
        A node can transmit a packet only when it is in IDLE state.
4.   When a node transmits a packet, the packet will be broadcasted due to broadcast
     nature in wireless environment. However, the packet will carry the neighborid
     information (The neighbor is chosen randomly). Only the neighbor whose id is equal
     to neighbored will increase its receiving count.
5.   When the program terminates, each node will report how many messages it receives
     successfully (receiving count) and how many messages it transmits (transmitting
     count). (Collision should be simulated.)
6.   After a node transmits a packet successfully or receives a packet successfully or
     discards a packet (due to NB > macMaxCSMABackoffs), it will send a packet again
     within RANDOM_INTERVAL~(RANDOM_INTERVAL + RANDOM_MIN) time
     units.
7.   The maximum simulation time. 100000000 time units.
8.   Transmission delay and propagation delay should be simulated.
Project: Develop a MAC
Simulator Using PARSEC

Contenu connexe

Tendances

Iterative and Incremental Development (RAD)
Iterative  and Incremental Development (RAD)Iterative  and Incremental Development (RAD)
Iterative and Incremental Development (RAD)Roshan Karunarathna
 
Simulation and Modeling
Simulation and ModelingSimulation and Modeling
Simulation and Modelinganhdbh
 
Simulation technique in OR
Simulation technique in ORSimulation technique in OR
Simulation technique in ORSarabjeet Kaur
 
Requirements engineering for agile methods
Requirements engineering for agile methodsRequirements engineering for agile methods
Requirements engineering for agile methodsSyed Zaid Irshad
 
Discrete event simulation
Discrete event simulationDiscrete event simulation
Discrete event simulationssusera970cc
 
Unit 1 introduction
Unit 1 introductionUnit 1 introduction
Unit 1 introductionraksharao
 
Lecture6 activity diagrams
Lecture6 activity diagramsLecture6 activity diagrams
Lecture6 activity diagramsShahid Riaz
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineeringMubashir Jutt
 
Unit 5 general principles, simulation software
Unit 5 general principles, simulation softwareUnit 5 general principles, simulation software
Unit 5 general principles, simulation softwareraksharao
 
Manufacturing simulation
Manufacturing simulationManufacturing simulation
Manufacturing simulationsameer agrawal
 
Presentation on arena software
Presentation on arena softwarePresentation on arena software
Presentation on arena softwareMd Rabiul Hasan
 
System Modeling & Simulation Introduction
System Modeling & Simulation  IntroductionSystem Modeling & Simulation  Introduction
System Modeling & Simulation IntroductionSharmilaChidaravalli
 
SE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour DiagramsSE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour DiagramsAmr E. Mohamed
 
Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Drusilla918
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) ModelDamian T. Gordon
 
Simulation Techniques
Simulation TechniquesSimulation Techniques
Simulation Techniquesmailrenuka
 
Unit 1 introduction to simulation
Unit 1 introduction to simulationUnit 1 introduction to simulation
Unit 1 introduction to simulationDevaKumari Vijay
 
Simulation in terminated system
Simulation in terminated system Simulation in terminated system
Simulation in terminated system Saleem Almaqashi
 

Tendances (20)

Iterative and Incremental Development (RAD)
Iterative  and Incremental Development (RAD)Iterative  and Incremental Development (RAD)
Iterative and Incremental Development (RAD)
 
Simulation and Modeling
Simulation and ModelingSimulation and Modeling
Simulation and Modeling
 
Spiral Model
Spiral ModelSpiral Model
Spiral Model
 
Simulation technique in OR
Simulation technique in ORSimulation technique in OR
Simulation technique in OR
 
Requirements engineering for agile methods
Requirements engineering for agile methodsRequirements engineering for agile methods
Requirements engineering for agile methods
 
Discrete event simulation
Discrete event simulationDiscrete event simulation
Discrete event simulation
 
Unit 1 introduction
Unit 1 introductionUnit 1 introduction
Unit 1 introduction
 
Lecture6 activity diagrams
Lecture6 activity diagramsLecture6 activity diagrams
Lecture6 activity diagrams
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 
Unit 5 general principles, simulation software
Unit 5 general principles, simulation softwareUnit 5 general principles, simulation software
Unit 5 general principles, simulation software
 
Manufacturing simulation
Manufacturing simulationManufacturing simulation
Manufacturing simulation
 
Presentation on arena software
Presentation on arena softwarePresentation on arena software
Presentation on arena software
 
System Modeling & Simulation Introduction
System Modeling & Simulation  IntroductionSystem Modeling & Simulation  Introduction
System Modeling & Simulation Introduction
 
SE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour DiagramsSE_Lec 09_ UML Behaviour Diagrams
SE_Lec 09_ UML Behaviour Diagrams
 
Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...
 
Prototyping model advantages and disadvantages
Prototyping model advantages and disadvantagesPrototyping model advantages and disadvantages
Prototyping model advantages and disadvantages
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) Model
 
Simulation Techniques
Simulation TechniquesSimulation Techniques
Simulation Techniques
 
Unit 1 introduction to simulation
Unit 1 introduction to simulationUnit 1 introduction to simulation
Unit 1 introduction to simulation
 
Simulation in terminated system
Simulation in terminated system Simulation in terminated system
Simulation in terminated system
 

En vedette

Chapter3 general principles of discrete event simulation
Chapter3   general principles of discrete event simulationChapter3   general principles of discrete event simulation
Chapter3 general principles of discrete event simulationDe La Salle University-Manila
 
Introduction to Discrete-Event Simulation Using SimPy
Introduction to Discrete-Event Simulation Using SimPyIntroduction to Discrete-Event Simulation Using SimPy
Introduction to Discrete-Event Simulation Using SimPypycontw
 
Chapter 02 simulation examples
Chapter 02   simulation examplesChapter 02   simulation examples
Chapter 02 simulation examplesImran Ali Chaudhry
 
Introduction to simulation
Introduction to simulationIntroduction to simulation
Introduction to simulationn_cool001
 
Mourão Moura - input2012
Mourão Moura - input2012Mourão Moura - input2012
Mourão Moura - input2012INPUT 2012
 
Introduction to Simulation- Predictive Analytics
Introduction to Simulation- Predictive AnalyticsIntroduction to Simulation- Predictive Analytics
Introduction to Simulation- Predictive AnalyticsPerformanceG2, Inc.
 
Simulation Technology Challenges
Simulation Technology ChallengesSimulation Technology Challenges
Simulation Technology ChallengesCETES
 
The use of 3D simulation technology to improve health and safety performance ...
The use of 3D simulation technology to improve health and safety performance ...The use of 3D simulation technology to improve health and safety performance ...
The use of 3D simulation technology to improve health and safety performance ...Stephen Au
 
02 20110314-simulation
02 20110314-simulation02 20110314-simulation
02 20110314-simulationSaad Gabr
 
An Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciencesfsmart01
 
Future Of Simulation In Healthcare Education
Future Of Simulation In Healthcare EducationFuture Of Simulation In Healthcare Education
Future Of Simulation In Healthcare EducationCarolyn Jenkins
 
Esri CityEngine
Esri CityEngineEsri CityEngine
Esri CityEngineEsri
 

En vedette (20)

Chapter3 general principles of discrete event simulation
Chapter3   general principles of discrete event simulationChapter3   general principles of discrete event simulation
Chapter3 general principles of discrete event simulation
 
Introduction to Discrete-Event Simulation Using SimPy
Introduction to Discrete-Event Simulation Using SimPyIntroduction to Discrete-Event Simulation Using SimPy
Introduction to Discrete-Event Simulation Using SimPy
 
SIMULATION
SIMULATIONSIMULATION
SIMULATION
 
8. probabilidad y variables aleatorias
8.  probabilidad y variables aleatorias8.  probabilidad y variables aleatorias
8. probabilidad y variables aleatorias
 
Ejercicio de Simulación
Ejercicio de Simulación Ejercicio de Simulación
Ejercicio de Simulación
 
Chapter 02 simulation examples
Chapter 02   simulation examplesChapter 02   simulation examples
Chapter 02 simulation examples
 
Introduction to simulation
Introduction to simulationIntroduction to simulation
Introduction to simulation
 
Mourão Moura - input2012
Mourão Moura - input2012Mourão Moura - input2012
Mourão Moura - input2012
 
Introduction to Simulation- Predictive Analytics
Introduction to Simulation- Predictive AnalyticsIntroduction to Simulation- Predictive Analytics
Introduction to Simulation- Predictive Analytics
 
Simulation Technology Challenges
Simulation Technology ChallengesSimulation Technology Challenges
Simulation Technology Challenges
 
The use of 3D simulation technology to improve health and safety performance ...
The use of 3D simulation technology to improve health and safety performance ...The use of 3D simulation technology to improve health and safety performance ...
The use of 3D simulation technology to improve health and safety performance ...
 
02 20110314-simulation
02 20110314-simulation02 20110314-simulation
02 20110314-simulation
 
An Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciences
 
Future Of Simulation In Healthcare Education
Future Of Simulation In Healthcare EducationFuture Of Simulation In Healthcare Education
Future Of Simulation In Healthcare Education
 
Distribuciones de probabilidad discretas
Distribuciones de probabilidad discretasDistribuciones de probabilidad discretas
Distribuciones de probabilidad discretas
 
Adm ventas i parcial
Adm ventas i parcialAdm ventas i parcial
Adm ventas i parcial
 
Retailing cruz azul
Retailing cruz azulRetailing cruz azul
Retailing cruz azul
 
Ejemplos sim manual cap 4
Ejemplos sim manual cap 4Ejemplos sim manual cap 4
Ejemplos sim manual cap 4
 
Distribuciones de probabilidad continuas
Distribuciones de probabilidad continuasDistribuciones de probabilidad continuas
Distribuciones de probabilidad continuas
 
Esri CityEngine
Esri CityEngineEsri CityEngine
Esri CityEngine
 

Similaire à Simulation

Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016DevOpsDays Tel Aviv
 
An integrated event summarization approach for complex system management
An integrated event summarization approach for complex system managementAn integrated event summarization approach for complex system management
An integrated event summarization approach for complex system managementVenkat Projects
 
Automatic Test Generation for Space
Automatic Test Generation for SpaceAutomatic Test Generation for Space
Automatic Test Generation for SpaceUlisses Costa
 
From Simulation to Online Gaming: the need for adaptive solutions
From Simulation to Online Gaming: the need for adaptive solutions From Simulation to Online Gaming: the need for adaptive solutions
From Simulation to Online Gaming: the need for adaptive solutions Gabriele D'Angelo
 
Discrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventDiscrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventNitish Nagar
 
Introduction to System, Simulation and Model
Introduction to System, Simulation and ModelIntroduction to System, Simulation and Model
Introduction to System, Simulation and ModelMd. Hasan Imam Bijoy
 
Introduction to networks simulation
Introduction to networks simulationIntroduction to networks simulation
Introduction to networks simulationahmed L. Khalaf
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulationAysun Duran
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulationmukmin91
 
A Survey on Wireless Network Simulators
A Survey on Wireless Network SimulatorsA Survey on Wireless Network Simulators
A Survey on Wireless Network SimulatorsjournalBEEI
 
Seminar on computer simulation and modeling The Activity Approach By:Asamene.K
Seminar on computer simulation and modeling The Activity Approach By:Asamene.KSeminar on computer simulation and modeling The Activity Approach By:Asamene.K
Seminar on computer simulation and modeling The Activity Approach By:Asamene.Kmekelle university(EiT-M)
 
Cs854 lecturenotes01
Cs854 lecturenotes01Cs854 lecturenotes01
Cs854 lecturenotes01Mehmet Çelik
 
discrete-event-simulation-190410063238.pptx
discrete-event-simulation-190410063238.pptxdiscrete-event-simulation-190410063238.pptx
discrete-event-simulation-190410063238.pptxubaidullah75790
 
PATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event ModelPATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event ModelMichael Heron
 
An integrated event summarization approach for complex system management
An integrated event summarization approach for complex system managementAn integrated event summarization approach for complex system management
An integrated event summarization approach for complex system managementVenkat Projects
 

Similaire à Simulation (20)

Simulator
SimulatorSimulator
Simulator
 
Unit i
Unit iUnit i
Unit i
 
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
Event-driven Infrastructure - Mike Place, SaltStack - DevOpsDays Tel Aviv 2016
 
An integrated event summarization approach for complex system management
An integrated event summarization approach for complex system managementAn integrated event summarization approach for complex system management
An integrated event summarization approach for complex system management
 
Automatic Test Generation for Space
Automatic Test Generation for SpaceAutomatic Test Generation for Space
Automatic Test Generation for Space
 
From Simulation to Online Gaming: the need for adaptive solutions
From Simulation to Online Gaming: the need for adaptive solutions From Simulation to Online Gaming: the need for adaptive solutions
From Simulation to Online Gaming: the need for adaptive solutions
 
Discrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and eventDiscrete event systems comprise of discrete state spaces and event
Discrete event systems comprise of discrete state spaces and event
 
Introduction to System, Simulation and Model
Introduction to System, Simulation and ModelIntroduction to System, Simulation and Model
Introduction to System, Simulation and Model
 
Introduction to networks simulation
Introduction to networks simulationIntroduction to networks simulation
Introduction to networks simulation
 
Open modeling and simulation framework for evolutive analysis
Open modeling and simulation framework for evolutive analysisOpen modeling and simulation framework for evolutive analysis
Open modeling and simulation framework for evolutive analysis
 
Poster Vensim Repast
Poster Vensim RepastPoster Vensim Repast
Poster Vensim Repast
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulation
 
Introduction to modeling_and_simulation
Introduction to modeling_and_simulationIntroduction to modeling_and_simulation
Introduction to modeling_and_simulation
 
A Survey on Wireless Network Simulators
A Survey on Wireless Network SimulatorsA Survey on Wireless Network Simulators
A Survey on Wireless Network Simulators
 
Seminar on computer simulation and modeling The Activity Approach By:Asamene.K
Seminar on computer simulation and modeling The Activity Approach By:Asamene.KSeminar on computer simulation and modeling The Activity Approach By:Asamene.K
Seminar on computer simulation and modeling The Activity Approach By:Asamene.K
 
MODELING & SIMULATION.docx
MODELING & SIMULATION.docxMODELING & SIMULATION.docx
MODELING & SIMULATION.docx
 
Cs854 lecturenotes01
Cs854 lecturenotes01Cs854 lecturenotes01
Cs854 lecturenotes01
 
discrete-event-simulation-190410063238.pptx
discrete-event-simulation-190410063238.pptxdiscrete-event-simulation-190410063238.pptx
discrete-event-simulation-190410063238.pptx
 
PATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event ModelPATTERNS06 - The .NET Event Model
PATTERNS06 - The .NET Event Model
 
An integrated event summarization approach for complex system management
An integrated event summarization approach for complex system managementAn integrated event summarization approach for complex system management
An integrated event summarization approach for complex system management
 

Plus de Leonardo Daniel López Condoy

Plus de Leonardo Daniel López Condoy (19)

Distribucion 3 weibull
Distribucion 3   weibullDistribucion 3   weibull
Distribucion 3 weibull
 
Distribucion 4 erlang
Distribucion 4   erlangDistribucion 4   erlang
Distribucion 4 erlang
 
Distribucion 2 beta
Distribucion 2   betaDistribucion 2   beta
Distribucion 2 beta
 
Distribucion 1 gamma
Distribucion 1   gammaDistribucion 1   gamma
Distribucion 1 gamma
 
Analisis tecnico bursatil
Analisis tecnico bursatilAnalisis tecnico bursatil
Analisis tecnico bursatil
 
3 unidad 2 ejemplos de simulacion
3 unidad 2   ejemplos de simulacion3 unidad 2   ejemplos de simulacion
3 unidad 2 ejemplos de simulacion
 
2 simulacion unidad 1
2   simulacion unidad 12   simulacion unidad 1
2 simulacion unidad 1
 
1 simulacion unidad1
1 simulacion   unidad11 simulacion   unidad1
1 simulacion unidad1
 
Técnicas y administración de ventas ii (color)
Técnicas y administración de ventas ii (color)Técnicas y administración de ventas ii (color)
Técnicas y administración de ventas ii (color)
 
Teoria de colores
Teoria de coloresTeoria de colores
Teoria de colores
 
Retailing kfc
Retailing kfcRetailing kfc
Retailing kfc
 
Retail marketing espol iche bpl
Retail marketing espol iche bplRetail marketing espol iche bpl
Retail marketing espol iche bpl
 
9. distribuciones continuas
9.  distribuciones continuas9.  distribuciones continuas
9. distribuciones continuas
 
5. regresión lineal multiple
5.  regresión lineal multiple5.  regresión lineal multiple
5. regresión lineal multiple
 
4. estadística descriptiva
4.  estadística descriptiva4.  estadística descriptiva
4. estadística descriptiva
 
Tablas dinamicas de excel
Tablas dinamicas de excelTablas dinamicas de excel
Tablas dinamicas de excel
 
1. estadistica descriptiva
1.  estadistica descriptiva1.  estadistica descriptiva
1. estadistica descriptiva
 
2. estadistica descriptiva
2.  estadistica descriptiva2.  estadistica descriptiva
2. estadistica descriptiva
 
Aplicaciones de la biología
Aplicaciones de la biologíaAplicaciones de la biología
Aplicaciones de la biología
 

Dernier

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 

Dernier (20)

TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 

Simulation

  • 2. Outline Introduction to Simulation Discrete Event Simulation Simulator CSIM (Simulation Language) GloMoSim NS-2 NCTU-NS Conclusion Mini-Project: Using GloMoSim Project: Develop a MAC simulator using PARSEC
  • 3. Outline Introduction to Simulation Discrete Event Simulation Simulator CSIM (Simulation Language) GloMoSim NS-2 NCTU-NS Conclusion Mini-Project: Using GloMoSim Project: Develop a MAC simulator using PARSEC
  • 4. Introduction to Simulation What is simulation? A simulation is the imitation of the operation of a real-world process or system over time.
  • 5. Introduction to Simulation System and System Environment To model a system, it is necessary to understand the concept of a system and the system boundary. A system is defined as a group of objects that are joined together in some regular interaction or interdependence toward the accomplishment of some purpose. A system is often affected by changes occurring outside the system. Such changes are said to occur in the system environment. In modeling a system, it is necessary to decide on the boundary between the system and its environment.
  • 6. Introduction to Simulation Components of a System An entity is an object of interest in the system. An attribute is a property of an entity. An activity represents a time period of specified length. The state of a system is defined to be that collection of variables necessary to describe the system at any time. An event is defined as an instantaneous occurrence that may change the state of the system. Discrete System A discrete system is one in which the state variables change only at a discrete set of points in time.
  • 7. Introduction to Simulation Model of a System A model is a representation of a system for the purpose of studying the system. For most studies, it is enough to consider only those aspects of the system that affects the problem under investigation. Therefore, in most cases, a model is a simplification of the system. On the other hand, the model should be sufficiently detailed to permit valid conclusions to be drawn about the real system.
  • 8. Introduction to Simulation Types of Models Static/Dynamic A static simulation model, sometimes called a Monte Carlo simulation, represent a system at a particular point in time. A dynamic simulation model represents a system as it changes over time. Deterministic/Stochastic Simulation models that contain no random variables are classified as deterministic Deterministic models have a known set of inputs that will result in a unique set of outputs. On the other hand, a stochastic simulation model has one or more random variables as inputs. (e.g., random backoff timers)
  • 9. Introduction to Simulation Types of Models (Continue) Discrete/Continuous Like the definitions for discrete and continuous systems, discrete and continuous models are defined similarly. However, a discrete simulation model is not always used to model a discrete system, nor is a continuous model always used to model a continuous system. Discrete-Event System Simulation Discrete-event system simulation is widely used and is the focus of this course. Discrete-event system simulation is the modeling of the systems in which the state variables change only at a discrete set of points in time.
  • 10. Outline Introduction to Simulation Discrete Event Simulation Simulator CSIM (Simulation Language) GloMoSim NS-2 NCTU-NS Conclusion Mini-Project: Using GloMoSim Project: Develop a MAC simulator using PARSEC
  • 11. Discrete Event Simulation Strategies of discrete event simulation Activity-oriented simulation Event-oriented simulation Process-oriented simulation
  • 12. Discrete Event Simulation Activity-oriented simulation The programmer defines activities which are started when certain conditions are satisfied. In many cases, this type of simulation uses a simulated clock which advance in constant increments of time. With each advance, a list of activities is scanned, and those which have become eligible are started. This type of model is used more often with simulating physical devices. Simulate Network System Going to be very slow to execute Most time increments will produce no change to the system at all
  • 13. Discrete Event Simulation Activity-oriented simulation the list of activities at time 1 Scan the list of activities at time 2 Scan 1 2 3 4 5 6 7 8 9
  • 14. Discrete Event Simulation Event-oriented simulation The simulation programmer defines events and then writes routines which are invoked as each kind of event occurs Simulated time may pass between the events Usually, a priority queue will be used
  • 15. Discrete Event Simulation Array Event-oriented simulation struct sensor { Event A int id; 7:28 int location; 7:25 }; 7:21 Event B void void Process_Event_A() {} Process_Event_B() {}
  • 16. Discrete Event Simulation Process-oriented simulation The programmer defines the processes (entities, transactions, etc.) and the model in terms of interacting processes. A process is an independent program or procedure which can execute in parallel with other processes. The notion of in parallel is used with some liberty The processes will use the resources of the system. Resource-oriented Transaction-oriented Time Advance Hold Send a message to itself in the future
  • 17. Discrete Event Simulation Process-oriented simulation Process Process (Entity) Process (Entity) (Entity) Resource (Facility) Process (Entity) Process Process (Entity) (Entity)
  • 18. Outline Introduction to Simulation Discrete Event Simulation Simulator CSIM (Simulation Language) GloMoSim NS-2 NCTU-NS Conclusion Mini-Project: Using GloMoSim Project: Develop a MAC simulator using PARSEC
  • 19. Simulation Language – CSIM Mesquite Software Inc. CSIM 19 is the latest version of the widely-used CSIM simulation toolkit, which was initially developed in 1985 at Austin's Microelectronics and Computer Technology Corporation (MCC). CSIM is a library of routines for use by C or C++ programmers. Can be used to implement process-oriented, discrete- event simulation models of complex system
  • 20. Simulators – GloMoSim UCLA Parallel Computing Laboratory http://pcl.cs.ucla.edu/ GloMoSim (Global Mobile system Simulator) is a library-based simulator for wireless networks. It is designed as a set of library modules, each of which simulates a specific wireless communication protocol in the protocol stack. The communication protocol stack for wireless networks is divided into a set of layers, each with its own API. The library has been developed using PARSEC, a C- based parallel simulation language New protocols and modules can be programmed and added to the library using PARSEC.
  • 21. Simulators – NS-2 An object-oriented, discrete event network simulator developed at UC Berkely Mainly used for simulating local and wide area networks It is written in C++ and OTcl (Object-oriented Tcl) and primarily uses OTcl as command and configuration language. OTcl: Network Topology C++: Network Component
  • 22. Simulators – NCTU-NS The NCTUns network simulator is developed at NCTU, Taiwan. Its predecessor is the Harvard network simulator. By using a novel simulation methodology, it can do several tasks that traditional network simulators cannot easily do. More and more people are using it. (Use the Google to search it for yourself.)
  • 23. Outline Introduction to Simulation Discrete Event Simulation Simulator CSIM (Simulation Language) GloMoSim NS-2 NCTU-NS Conclusion Mini-Project: Using GloMoSim Project: Develop a MAC simulator using PARSEC
  • 24. Conclusion Discrete Event Simulation Three approaches The choice is in some sense a matter of taste, as any model developed using one approach could have been implemented using the other. Simulation Language and Simulator CSIM, PARSEC GloMoSim, NS-2, NCTUns
  • 25. References Jerry Banks, John S. Carson, Barry L. Nelson, David M. Nicol , "Discrete Event System Simulation", 4th edition, Prentice Hall, 2005, ISBN 0131293427 Herb Schwetman, “CSIM: A C-Based, Process-oriented Simulation Language”, in Proceedings of the Winter Simulation Conference, 1986 Mesquite Software Inc. (CSIM19) http://www.mesquite.com/index.htm Xiang Zeng, Rajive Bagrodia, and Mario Gerla, “GloMoSim: A Library for Parallel Simulation of Large-scale Wireless Networks”, in Proceedings of the 12th Workshop on Parallel and Distributed Simulations -- PADS '98, May 26- 29, 1998 in Banff, Alberta, Canada NS-2, http://www.isi.edu/nsnam/ns/ Marc Greis, “Tutorial for the Network Simulator “ns””, http://www.isi.edu/nanam/ns/tutorial/index.html The ns Manual, http://www.isi.edu/nsnam/ns/ns-documentation.html S.Y. Wang, “NCTUns 1.0”, In the column "Software Tools for Networking", IEEE Network, Vol.17, No.4, July 2003.
  • 26. Outline Introduction to Simulation Discrete Event Simulation Simulator CSIM (Simulation Language) GloMoSim NS-2 NCTU-NS Conclusion Mini-Project: Using GloMoSim Project: Develop a MAC simulator using PARSEC
  • 27. Mini-Project: Using GloMoSim Download UCLA Parallel Computing Laboratory http://pcl.cs.ucla.edu/ Install ~/parsec (depend on your OS) linux3.csie.nctu.edu.tw RedHat Linux 9.0 Powered by Kernel 2.4.27) gcc version 3.3.1 ~/glomosim
  • 28. Mini-Project: Using GloMoSim Compile ~/glomosim/main (make) ~/glomosim/bin Related Files ~/glomosim/bin/config.in ~/glomosim/bin/app.in ~/glomosim/bin/glomo.stat ~/glomosim/bin/mobility.in ~/glomosim/bin/nodes.input
  • 29. Mini-Project: Using GloMoSim Example Application: 2 FTP Flows Routing: AODV, DSR Demonstrate How to set? How to observe results?
  • 30. Outline Introduction to Simulation Discrete Event Simulation Simulator CSIM (Simulation Language) GloMoSim NS-2 NCTU-NS Conclusion Mini-Project: Using GloMoSim Project: Develop a MAC simulator using PARSEC
  • 31. Project: Develop a MAC Simulator Using PARSEC Introduction to PARSEC PARSEC was developed by members of the UCLA Parallel Computing Laboratory Web page: http://pcl.cs.ucla.edu/ PARSEC (for PARallel Simulation Environment for Complex systems) is a C-based discrete-event simulation language. It adopts the process interaction approach to discrete-event simulation.
  • 32. Project: Develop a MAC Simulator Using PARSEC Entity (Driver Entity) entity NODE(int myno) { ename neighbor[6]; int i, N, count; receive () {} while (1) { receive (MSG msg) { } } finalize { } } entity driver(){ }
  • 33. Project: Develop a MAC Simulator Using PARSEC Message message MSG { int source; }; receive (MSG msg) { } send MSG{myno} to neighbor[GET_NEIGHBOR(N)];
  • 34. Project: Develop a MAC Simulator Using PARSEC Example 1. Topology 2. When a node receives a message, it will transmit a message to one of its neighbors within 10~20 time units. (Initially, each node can send a message to itself to start simulation.) 3. The neighbor is chosen randomly. 4. When the program terminates, each node will report how many messages it receives. 5. The maximum simulation time. 100000 time units.
  • 35. Project: Develop a MAC Simulator Using PARSEC Project Goal: Unslotted CSMA defined in IEEE 802.15.4 IEEE standard for information technology - telecommunications and information exchange between systems - local and metropolitan area networks specific requirements part 15.4: wireless medium access control (MAC) and physical layer (PHY) specifications for low-rate wireless personal area networks (LR-WPANs)
  • 36. Project: Develop a MAC Simulator Using PARSEC 1. Topology (You can assume that interference range is equal to communication range) 2. Transmission Mechanism (http://www.eecs.berkeley.edu/~csinem/) “ZigBee/IEEE 802.15.4 Summary” (unslotted CSMA/CA) 3. States: {IDLE, RECEIVING, PENDING, TRANSMITTING} A node will not receive any packet when it is in TRANSMITTING state. A node can transmit a packet only when it is in IDLE state. 4. When a node transmits a packet, the packet will be broadcasted due to broadcast nature in wireless environment. However, the packet will carry the neighborid information (The neighbor is chosen randomly). Only the neighbor whose id is equal to neighbored will increase its receiving count. 5. When the program terminates, each node will report how many messages it receives successfully (receiving count) and how many messages it transmits (transmitting count). (Collision should be simulated.) 6. After a node transmits a packet successfully or receives a packet successfully or discards a packet (due to NB > macMaxCSMABackoffs), it will send a packet again within RANDOM_INTERVAL~(RANDOM_INTERVAL + RANDOM_MIN) time units. 7. The maximum simulation time. 100000000 time units. 8. Transmission delay and propagation delay should be simulated.
  • 37. Project: Develop a MAC Simulator Using PARSEC