Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Introduction to Simulation Shiv Kalyanaraman Rensselaer Polytechnic Institute

Slides:



Advertisements
Similar presentations
1 The ns-2 Network Simulator H Plan: –Discuss discrete-event network simulation –Discuss ns-2 simulator in particular –Demonstration and examples: u Download,
Advertisements

11 Simulation. 22 Overview of Simulation – When do we prefer to develop simulation model over an analytic model? When not all the underlying assumptions.
Simulation Overview COMP5416. Courtesy of David Everitt COMP5416 Simulation - 2 Simulation Simulation: allows experiments on a software model of some.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4690: Experimental Networking Informal Quiz: Prob/Stat Shiv Kalyanaraman:
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4690: Experimental Networking Informal Quiz: TCP Shiv Kalyanaraman:
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #07 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #11 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 TCP/IP Stack Introduction: Looking Under the Hood! Shiv Kalyanaraman Rensselaer Polytechnic Institute.
FIN 685: Risk Management Topic 5: Simulation Larry Schrenk, Instructor.
The Production Process
Simulation Where real stuff starts. ToC 1.What, transience, stationarity 2.How, discrete event, recurrence 3.Accuracy of output 4.Monte Carlo 5.Random.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Basic Ideas in Probability and Statistics for Experimenters: Part I: Qualitative Discussion Shivkumar.
Classification of Simulation Models
Introduction to Simulation
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Basic Ideas in Probability and Statistics for Experimenters: Part II: Quantitative Work, Regression.
AQM for Congestion Control1 A Study of Active Queue Management for Congestion Control Victor Firoiu Marty Borden.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Term Projects Shiv Kalyanaraman, Rensselaer Polytechnic Institute
Discrete Event Simulation How to generate RV according to a specified distribution? geometric Poisson etc. Example of a DEVS: repair problem.
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Informal Quiz 1 True or False? T F  The structure of MAC addresses facilitates performance.
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4963: Experimental Networking Exam 1: SOLUTIONS Time: 60 min (strictly enforced) Points:
Rensselaer Polytechnic Institute © Shivkumar Kalvanaraman & © Biplab Sikdar1 ECSE-4730: Computer Communication Networks (CCN) Network Layer Performance.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Introduction to Experiment Design Shiv Kalyanaraman Rensselaer Polytechnic Institute
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Understanding Linux Kernel to Build Software Routers (Qualitative Discussion) Shiv Kalyanaraman,
Performance Evaluation
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-4963: Experimental Networking Exam 1 Time: 60 min (strictly enforced) Points: 50 YOUR NAME:
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Introduction to Experiment Design Shiv Kalyanaraman Rensselaer Polytechnic Institute
OS Fall ’ 02 Performance Evaluation Operating Systems Fall 2002.
1 Simulation Methodology H Plan: –Introduce basics of simulation modeling –Define terminology and methods used –Introduce simulation paradigms u Time-driven.
Monté Carlo Simulation MGS 3100 – Chapter 9. Simulation Defined A computer-based model used to run experiments on a real system.  Typically done on a.
COMPUTER NETWORK: MODELING AND SIMULATION -Abhaykumar Kumbhar Computer Science Department.
Modeling and Simulation
1 Introduction to Simulation Chapters 24. Overview Simulation: Key Questions Introduction to Simulation Common Mistakes in Simulation Other Causes of.
EstiNet Network Simulator & Emulator 2014/06/ 尉遲仲涵.
Analysis of Simulation Results Andy Wang CIS Computer Systems Performance Analysis.
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
Constrained Forecast Evaluation (CFE) Ronald P. Menich AGIFORS Res & YM 2-5 June 2003 HNL.
Parallel and Distributed Simulation Introduction and Motivation.
1 Network Simulator Tutorial. 2 Network Simulation * Motivation: Learn fundamentals of evaluating network performance via simulation Overview: fundamentals.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #14 Shivkumar Kalyanaraman: GOOGLE: “Shiv RPI”
Simulation Tutorial By Bing Wang Assistant professor, CSE Department, University of Connecticut Web site.
Workshop BigSim Large Parallel Machine Simulation Presented by Eric Bohm PPL Charm Workshop 2004.
Interconnect simulation. Different levels for Evaluating an architecture Numerical models – Mathematic formulations to obtain performance characteristics.
Interconnect simulation. Different levels for Evaluating an architecture Numerical models – Mathematic formulations to obtain performance characteristics.
Monte Carlo Process Risk Analysis for Water Resources Planning and Management Institute for Water Resources 2008.
Prentice HallHigh Performance TCP/IP Networking, Hassan-Jain Chapter 4 TCP/IP Network Simulation.
ECE 466/658: Performance Evaluation and Simulation Introduction Instructor: Christos Panayiotou.
Simulation Techniques Overview Simulation environments emulation/ exec- driven event- driven sim trace- driven sim stochastic sim Workload parameters System.
CPSC 441 Tutorial TA: Fang Wang. Simulation Methodology Plan: Introduce basics of simulation modeling Define terminology and methods used Introduce simulation.
Network Simulation Motivation: r learn fundamentals of evaluating network performance via simulation Overview: r fundamentals of discrete event simulation.
ETM 607 – Output Analysis: Estimation of Relative Performance Output comparison between two or more alternative systems Common Random Numbers (CRN) Comparison.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Based upon slides from Jay Lepreau, Utah Emulab Introduction Shiv Kalyanaraman
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Informal Quiz #02 SOLUTIONS (part I) Shivkumar Kalyanaraman: GOOGLE:
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Experimental Networking ECSE-4690 Shivkumar Kalyanaraman Rensselaer Polytechnic Institute
An Efficient Gigabit Ethernet Switch Model for Large-Scale Simulation Dong (Kevin) Jin.
Introduction to Simulation Andy Wang CIS Computer Systems Performance Analysis.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 ECSE-6600: Internet Protocols Spring 2007, Exam 1 Time: 75 min (strictly enforced) Points: 50.
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Basic Ideas in Probability and Statistics for Experimenters: Part I: Qualitative Discussion Shivkumar.
Simulation. Types of simulation Discrete-event simulation – Used for modeling of a system as it evolves over time by a representation in which the state.
7. Network Simulation Network Performance and Quality of Service.
Traffic Simulation L2 – Introduction to simulation Ing. Ondřej Přibyl, Ph.D.
Computer Simulation Henry C. Co Technology and Operations Management,
Network Simulators.
Modeling and Simulation (An Introduction)
Introduction to Simulation
Computer Simulation of Networks
CPSC 531: System Modeling and Simulation
MECH 3550 : Simulation & Visualization
Presentation transcript:

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Introduction to Simulation Shiv Kalyanaraman Rensselaer Polytechnic Institute Refs: Chap1-3, Chap 24 of Raj Jain’s book

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 2 Why simulate ? q 1. Eg: real-system not available, is complex/costly or dangerous (eg: space simulations, flight simulations) q 2. Want to quickly evaluate (kick the tires!) and design alternatives (eg: networking protocols) q Can get cool graphs, and leverage lots of existing protocol models q 3. Want to evaluate complex functions for which closed forms not available (eg: Monte Carlo simulations, Matlab) q 4. Want to animate or graphically visualize complex behavior (Eg: protocol animations, performance graphs, Matlab plots)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 3 Simulators q Networking stuff: ns-2/nam, SSFnet, Opnet q Math stuff: Mathematica, Matlab, Maple or Monte-Carlo methods q For more on simulation: CS has a detailed class on parallel and distributed simulation (PADS)

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 4 Simulation vs Measurement/Implementation q 1. Real system is more credible, but more complex – lot of auxiliary concerns & murphy’s law strikes often! q But simulation must be thought of as a first step to real implementation q (I.e. to get a stable design that must be validated by implementation and/or analysis) q 2. Measurement of Internet traffic may not be the same as measurement tomorrow (real, but still random samples!) q Representative measurement traces can be used to drive simulation (I.e. trace-driven simulation) q 3. New emulation platforms: Utah’s emulab (next slide) q Takes out the configuration complexity from small/medium sized real experiments! q 4. Bottom line: mix and match both tools depending upon the problem at hand

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 5 Utah Emulab and Click: Emulation and Modular Implementation Platforms Utah’s Emulab Testbed: control & interconnect the kernels of 100s of machines just by using ns-2 scripting!!! MIT’s Click Modular Router On Linux: Forwarding Plane Implns

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 6 Simulation Lingo q “State”: variables whose values define system state. q If a simulation is stopped & restarted – you need to “checkpoint” the state. q Hard problem in distributed simulations! q “Event”: Change in system state = event q Discrete-event model/simulation: events are not continuous but take on discrete values q All network simulations are of this type!

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 7 Deterministic vs Probabilistic Results q “Deterministic”: results the same if you repeat the simulations q Usually the case if there is no randomness in the input or in the simulation process/protocols etc q “Probabilistic”: results vary with every run! q Eg: similar to your RTT estimation exercise! q Random results => cannot make deterministic inferences EVER! q Multiple (truly random) simulation repetitions needed q Get averages, deviations, and to form a confidence interval around results.

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 8 Things to remember about Discrete Event Simulation q The programming model revolves around “events” (eg: packet arrivals): q Events trigger particular sub-routines q Huge “switch” statement to classify events and call appropriate subroutine q The subroutine may schedule new events! (cannot schedule events for past, I.e., events are causal) q Rarely you might introduce new event types q Events have associated with them: q 1. Event type, event data structures (eg: packet) q 2. Simulation time when the event is scheduled q Key event operations: Enqueue (I.e. schedule a event). q Dequeue is handled by the simulation engine

Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 9 Discrete Event Simulation: Scheduler q Purpose: maintain a notion of simulation time, schedule events. A.k.a: “simulation engine” q Simulation time  Real time q A simulation for 5 sec of video transmission might take 1 hour! q Events are sorted by simulation time (not by type!): priority queue or heap data structure q After all subroutines for an event have been executed, control is transferred to the simulation engine q The simulation engine schedules the next event available at the same time (if any) q Once all the events for current time have been executed, simulation time is advanced and nearest future event is executed. q Simulation time = time of currently executing event