ダウンロードINET

Download Report

Transcript ダウンロードINET

Network Performance and
Quality of Service
7. Network Simulation
Contents







RQ12
Why use simulation
Systematic simulation study
Types of simulations
Simulation validation and verification
Confidence level of simulation results
Simulation with self similar traffic
Simulation tools
2
Why Use Simulation





Predict performance for proposed network
Allow performance evaluation under a
wide variety of network conditions
Compare alternative architectures under
identical and repeatable conditions
Simulation can incorporate more details
than analytical modeling, thus produce
results closer to reality
Validate analytical results
RQ12
3
Systematic Simulation Study

Pre-software stage
 Define problem/objective
 Design network model and select fixed
parameters
 Select performance metrics
 Select variable parameters
RQ12
4
Systematic Simulation Study

Software stage
 Model construction
 Simulation configuration
 Simulation execution/Data collection
 Result presentation
RQ12
5
Systematic Simulation Study
(Cont.)

Software stage




RQ12
Model construction
Simulation configuration
Simulation execution/Data collection
Result presentation
6
Types of simulations
 Continuous vs. discrete event
 Terminating vs. steady state
 Synthetic vs. trace-driven
RQ12
7
Continuous vs. discrete event

The state of the system model can be …




continuous (concentration of substance in chemical system)
discrete (queues of packets in packet switching system)
A discrete event simulation (DES) uses a
discrete state model of a system
Each event has an associated time value
indicating the time to execute the event
RQ12
8
Terminating vs. steady state



Terminating simulation is to study network system for a
well-defined period of time or number of events.
If we are interested in steady-state behaviour of a
network system, we cannot use terminating simulations
Must continue until it reaches steady state
RQ12
9
Synthetic vs. trace-driven



In many simulations, input traffic is synthetically
generated using random traffic generators.
Actual network traces can be used as
simulation input
Results can be more convincing
RQ12
10
Simulation Validation and
Verification
 Validation: Make sure that the
assumptions are realistic
 Verification: Make sure that the model
implements assumptions correctly
 Guidelines to follow
Look for “surprise” in output
Employ analytical modeling
Compare with real network data
RQ12
11
Confidence Level


Relative precision
formula for 95%
confidence
Confidence level in
terminating simulation

RQ12
Repeat the entire
simulation many times
with different random
numbers (or seeds)
12
Self Similar Traffic
 Poisson model does not capture the burstiness of TCP/IP traffic
 TCP/IP traffic usually exhibits self similar property
 Generated by superimposing many ON/OFF sources with Pareto
distribution
RQ12
14
Classification of Simulation
Tools



RQ12
GPPL: General Purpose Programming Language
PSL: “Plain” Simulation Language
SP: Simulation Package
15
Network simulators

Commercial


OPNET
QualNet

Open Source





RQ12
NS2
NS3
OMNeT++
SSFNet
J-Sim
16
OPNET






RQ12
Developed by OPNET Technologies
Inc.
Commercial SP
Object-oriented
Totally menu-driven package
Built-in model libraries contain most
popular protocols and applications
Simulation task made easy
17
OPNET










RQ12
Lot of component library with source code
Object-oriented modeling
Hierarchical modeling environment
Scalable wireless simulations support
Customizable wireless modeling
Discrete Event, Hybrid, and Analytical simulation
32-bit and 64-bit parallel simulation kernel
Realistic Application Modeling and Analysis
Integrated, GUI-based debugging and analysis
Open interface for integrating external component
libraries
18
OPNET
RQ12
19
OPNET Platform Supported

OPNET Modeler




OPNET IT Guru (Academic Edition)

RQ12
Microsoft Windows (32 and 64 bit)
Red Hat Enterprise Linux
Fedora Linux
Microsoft Windows
20
NS-2 Simulator



Discrete Event Simulator
Packet level
Modeling Network protocols

Collection of Various protocols at multiple layers





RQ12
TCP(reno, tahoe, vegas, sack)
MAC(802.11, 802.3, TDMA)
Ad-hoc Routing (DSDV, DSR, AODV, TORA)
Sensor Network (diffusion, gaf)
Multicast protocols, Satellite protocols, and many
others
21
NS-2 Simulator




Object-oriented
Written in C++ and object-oriented tcl (Otcl)
Network components are represented by classes
From the user’s perspective, NS−2 is an OTcl
interpreter that takes an OTcl script as input and
produces a trace file as output.
RQ12
22
NS-2 Platforms supported

Most UNIX and UNIX-like systems




Windows


RQ12
FreeBSD
Linux
Solaris
Cygwin required
Some work, some doesn’t
23
OMNET++


OMNeT++ is a component-based, modular and
open-architecture discrete event network
simulator.
OMNeT++ represents a framework approach


RQ12
Specific application areas are catered by various
simulation models and frameworks, most of them
open source.
These models are developed completely
independently of OMNeT++, and follow their own
release cycles.
24
OMNET++ Frameworks

Partial list of OMNeT++-based network simulators and
simulation frameworks:





Mobility Framework -- for mobile and wireless simulations
INET Framework -- for wired and wireless TCP/IP based simulations
Castalia -- for wireless sensor networks
MiXiM -- for mobile and wireless simulations
More specialized, OMNeT++-based simulators:






OverSim -- for overlay and peer-to-peer networks (INET-based)
NesCT -- for TinyOS simulations
Consensus Positif and MAC Simulator -- for sensor networks
SimSANs -- for storage area networks
CDNSim -- for content distribution networks
X-Simulator -- for testing synchronization protocols
RQ12
25
OMNET++
RQ12
26
OMNET++ Platform Supported




RQ12
Microsoft Windows
Linux
Mac OS X
other Unix-like systems
27
Important issues in a discrete
event simulation environment





RQ12
Pseudorandom
generators
Flexibility
Programming
model
Model
management
Support for
hierarchical models




Debugging, tracing,
and experiment
specifications
Documentation
Large scale
simulation
Parallel simulation
28
Selecting the Right Tool







RQ12
Built-in libraries
Credibility
User-Friendliness
Technical support
Level of Details
Resource consumption
Cost
29