Professional Documents
Culture Documents
Opnet Tranning PDF
Opnet Tranning PDF
Modeler Package
• Modeler
– modeler_[version]_[build]_[release date]_win.exe
• Model Library
– models_[version]_[build]_[release date]_win.exe
• Modeler Documentation
– modeler_docs_[version]_[build]_[release date]_win.exe
2/147
How to Installing Modeler on Windows ?
3/147
• Modeler를 설치 할 디렉토리를 선택
• Report Server를 사용하고자 하는 경우 Send reports to Report Server 체크박스를 클릭
4/147
How to Installing Modeler on Windows ?
• Licensing type 선택
– Standalone: 사용자 혼자 사용 할 경우
– Floating- access licenses from remote server: 기존의 라이센스 서버에 접속하여 사용 할 경우
– Floating- serve licenses from this computer: 라이센스 서버로 사용 할 경우
• Standalone을 선택한 경우 바로 인스톨 시작
5/147
6/147
How to Installing Modeler on Windows ?
• Install 시작
7/147
8/147
INTRODUCTION
What is Modeler?
10/147
Questions and Goals
• Goals
– Learn what problems can be solved with Modeler
– Learn how to use the Modeler software in a hands-on environment
– Use Modeler to solve real problems
11/147
Expectations
• Prerequisites:
– Ability to program in C or C++ or at least be comfortable in reading/understanding C or
C++ code
– Basic understanding of networks
• For basic information, see
– http://compnetworking.about.com/library/glossary/blglossary.htm
– http://www.whatis.com
– http://www.wikipedia.com
• Ask questions. It will enhance your learning experience, as well as the other
students’.
12/147
Format
• Purpose of the class: To give students a hands-on learning experience and introduce
many of the features of Modeler.
• About half lecture, half lab
• More lecture at the beginning – this will lay a strong foundation
• Lecture is interactive – do not hesitate to ask questions
• Labs not completed in class may be completed on your own
• During labs, raise your hand and an assistant will help you.
• Concepts will be taught during lecture, and you will apply them to labs. We
encourage you to ask questions.
13/147
Course Content
• Introduction
• OPNET Technologies
• Modeling Framework
14/147
OPNET TECHNOLOGIES
16/147
Network R&D Clients (partial list)
Alcatel-Lucent Hewlett Packard SAIC
Alion Science and Technology Hitachi Ltd. Samsung
Aperto Networks Honeywell Sandia National Labs
AutoNetworks Technologies, Ltd. Huawei SELEX Communications Spa
Avaya Hughes Network Systems Space & Naval Warfare Sys. Command
BAE Systems IBM Global Services Sparta
Ball Solutions Group Innovative Wireless Technologies Stellaris Networks
Booz Allen Hamilton Internap Syracuse Research Corporation
CACI Federal Systems MIT Lincoln Labs Systems Planning & Analysis, Inc.
Cisco Systems MITRE Telenor
DISA NASA Tenacity Solutions Inc
Defence Communication Services Agency UK National Communications System Textron
Defence Science & Technology Org. Australia National Geospatial Intelligence Agency U.S. Air Force
EADS National Institute of Standards and Tech. U.S. Army
Eagan, McAllister Associates NEC U.S. Army Research Lab
Eagle Alliance Northrop Grumman U.S. Central Command
Ericsson NTL U.S. Coast Guard
French Nat’l Inst. for Transport & Safety Oak Ridge National Lab U.S. Department of Homeland Security
Research Panasonic U.S. Marine Corps
Fujitsu Philips U.S. Military Academy
Generic Systems Sweden AB Raytheon U.S. Naval Research Lab (NRL)
Georgia Tech Research Institute Research in Motion Ltd. U.S. Navy
Halliburton RF Monolithics
Harris Corporation Ricoh Company, Ltd.
17/147
19/147
20/147
Wireless Network Modeling and Simulation
*Optional module
21/147
22/147
OPNET Solutions Portfolio
Network
Network Audit Security, and Policy-Compliance
Operations
23/147
• Node Editor
– Protocol and Application functions
– Flows of data
• Other Editors
– Link Model
– Packet Format
– Antenna Pattern
– Modulation Editor Open Model Source code
24/147
Project Editor – Network modeling
• Project Editor
– Create node and link objects to represent network topology
– Lay out trajectories to define node mobility
– Set attributes of network objects
25/147
• Node Editor
– Represent protocol and application
functions, and the flow of data
Architecture
internal to the device
– Like the OSI architecture, the node Application
models contain blocks which operate
on packets Transport
Network
Data Link
Physical
26/147
Process Editor
• Process Editor
– Use extended Finite State Machines to define protocol logic and control flow
– C/C++ code controls the behavior of each state
27/147
Simulation Output
28/147
Scalable Wireless Modeling and Simulation
30/147
Intuitive 3D Visualization
31/147
Distribute simulations to
remote computers
Monitor simulations on
local machine
32/147
Leveraging Specialized Simulators with Co-simulation
33/147
34/147
Customizing the OPNET Environment
with OPNET Development Kit (ODK)™
• Create product extensions
• Example: ODK can be used to customize the OPNET Modeler GUI so that new
menu items appear when a network scenario is invoked
35/147
37/147
38/147
Projects and Scenarios Example
Compare results
between scenarios
39/147
• Create project
• Create baseline scenario
– Import or create topology
– Import or create traffic
– Choose results and reports to be collected
– Run simulation
– View results
• Duplicate scenario
– Make changes
– Re-run simulation
Iterate
– Compare results
40/147
Starting Project Editor
• Several tools are included in Modeler to intuitively map from network specifications
to a modeled network.
– Manual Creation
• Use the Startup Wizard to specify the initial environment of a scenario.
• Select objects from an Object Palette. Use Node and Link objects to represent actual
topology.
• Use Rapid Configuration to quickly deploy common network topologies.
• Use Wireless Network Deployment to quickly deploy wireless network
– Import from network management data
• Router configuration files
• ATM Text Files
• XML
• ACE
• VNE Server
41/147
Startup Wizard
42/147
Rapid Configuration
43/147
44/147
Map Backgrounds
45/147
46/147
Changing Icon Size
• You can scale the size of an icon on the screen to improve the appearance of the
topology
– View>Layout>Scale Node Icons Interactively…
47/147
Annotation Palette
48/147
Network Objects
49/147
• You can also create new models or derive models from an existing database.
• Modeler’s naming conventions, custom palettes, icons, and derived models all
facilitate your selection of the correct components for your network.
50/147
Model Library
• The “Model Library” is an extensive library of standards-based and vendor models.
• Models are created using published protocol standards and other widely used vendor
implementations.
– IEEE Specifications (e.g., 802.1q, 802.3, 802.11, etc.)
– ANSI Standards (e.g., X3.139, T1.513, etc.)
– ATM Forum Specifications (e.g, UNI 3.1, TM 4.0, etc.)
– RFC Documents (e.g., RFC-793, RFC-1058, RFC-1771, etc.)
– Vendor Technologies (e.g., VLAN tagging, EIGRP, etc.)
51/147
Model Libraries
• Standard
– 150+ built-in protocol and vendor device models including:
• Transport: TCP (ECN, New Reno, Reno, SACK, Tahoe), UDP, …
• Network & Routing: BGP, EIGRP, IGRP, IP, IPv6, OSPF, OSPFv3, RIP, RIPng, …
• MAC: 802.1p, ATM, Ethernet (802.3,a,i,j,u,y,z,ab,ac,ad,ae), Spanning Tree, VLAN, …
• Wireless: MANET (AODV, DSR, GRP, OLSR, TORA, OSPFv3), Mobile IPv4, Mobile IPv6,
WLAN (802.11a,b,e,g), ZibBee…
• Vendor device: Alcatel-Lucent, Cisco, Extreme, Foundry, HP, IBM, Intel, Juniper, Motorola,
NEC, Nortel, Sun, …
• Specialized
– Selected protocol models available separately
– IPv6, MPLS, PNNI, UMTS, and WiMAX
52/147
Model Libraries (cont’d)
53/147
• OPNET’s standard model suite uses a specific naming convention for its node
models:
<protocoln>…<protocoln >_<function>_<modifier>
54/147
Model Naming Convention (cont.)
• Example: ethernet128_hub_adv
– This model represents a hub with 128 Ethernet interfaces. Since it is an advanced model,
all the model’s attributes are visible and editable.
55/147
Vendor Models
56/147
Vendor Models (cont.)
• Naming convention for vendor models
<Vendor_Name>_<Device_Name>_<Number_of_Slots>_<Configuration>
Example: CS_4000_3s_e6_f_fr2_sl2
– This model represents a Cisco Systems 4000 Router with 3 slots, 6 Ethernet ports,
1 FDDI port, 2 frame relay ports, and 2 SL-IP ports.
57/147
• Example:
– 100BaseT_int
58/147
Organizing Models - Object Palettes
• An object palette is a dialog box that displays a group of node and link models
• Open the object palettes by
– Clicking on the “Open Object Palette” button on the toolbar
– Choose “Topology > Open Object Palette”
• The object palettes have two viewing modes: Tree View and Icon View
59/147
60/147
Object Palettes – Icon View
Switch to tree Model list pull-down Modify this palette or create new palette
view menu
61/147
• Object palettes can be customized to contain only the nodes and links that you
require
62/147
Creating a New Palette - Model List Method
63/147
• Although OPNET Modeler includes hundreds of standard and vendor devices, you
may need to customize models.
• There are several ways to create new devices or derive models from the existing
database to custom specifications.
– Two methods discussed here to change and existing model
• Deriving a new model
• Using Device Creator
– Modeling new devices and protocols discussed later in course
64/147
Deriving New Models
65/147
• Makes it easy for you to configure and integrate models for specialized needs.
• Allows you to benefit from past work by basing new, specialized models on
previously created ones.
• Gives you benefit of control over certain aspects of a new model while preserving its
essential structure.
• Allows creation of a new device that has preset and possibly hidden attributes.
66/147
Device Creator
• Advantages
– Allows you to select any number of
interfaces and protocols that a
device will need to support.
– Provides you more control over
memory efficiency, reducing
simulation run-time.
67/147
68/147
Selecting Objects
69/147
• A group of objects can have their attributes assigned simultaneously by using the
“Apply Changes to Selected Objects” button.
• Note that selected objects that do not contain the attribute being changed will not be
affected by the group assignment.
70/147
Verify Links
• It is always a good idea to use the “Verify Link (Ctrl+L)” before running a
simulation to ensure connectivity
71/147
72/147
Searching Product Documentation
73/147
• Objectives
– “Play” with the different features of the Project Editor
– Use the “Device Creator” and model derivation to create new node models
– Modify attributes’ values in order to reflect particular behavior
– Use the online documentation
• Time allotted: 30 minutes
75/147
77/147
• Types of statistics:
– Global: relate to network as a whole
– Node: collected on individual nodes
– Link: collected on individual links
• Common statistics:
– Global: application response times
– Node: delay, delay variation
– Link: utilization, throughput, queuing
delay
78/147
Choosing Statistics
79/147
Statistic Description
Draw style :
How the data is displayed in
a graph
Collection mode:
How the data points are
collected while the
simulation is running
80/147
Statistic Attributes
• Right-clicking on a statistic while in the Choose Results dialog box presents a menu
of statistic attributes
• Statistic attributes include:
– Record Statistic Animation
– Generate Live Statistics
– Change Collection Mode
– Change Draw Style
81/147
82/147
All value vs. Bucket mode
• Bucket Mode
– Useful for showing the general trend of the statistic’s variations
– With some statistics that can quickly rise and fall, this fails to show how high and
queue size can get.
83/147
84/147
Choosing Statistics - Advanced
85/147
86/147
DES Concept – Running Simulations
Agenda
• Starting Simulations
– Configuring Simulations
– Running a Simulation
– DES Log
– Simulation Options
• Simulation Results
– Viewing Results
– Results Options
– Find Top Statistics
– Exporting Data
– Generating Web Reports
88/147
Configuring Simulations
• Scenarios automatically provide a default duration and random number seed for
simulations
• User can set simulation attributes by choosing “Configure Simulation” from the
simulation menu, or by clicking the “running man” icons
89/147
Running a Simulation
90/147
DES Log
– Right click on a node or link and choose “Open DES Log”. This will provide
information from the simulation log that applies only to this object.
91/147
92/147
Simulation Mechanics - Simulation Options
• Duration
– Time to simulate in the network model
– May be shorter or longer than real time
– Less discrete traffic = shorter real time for simulation to complete
• Global attributes
– Protocol specific
– Control behavior of every applicable object
– Sim efficiency modes: disable these for failure / recovery studies
– Tracer packet options: determine how quickly flows reroute in failure case
• Values Per Statistic
– Increase number to increase granularity of statistics that use default bucket mode
93/147
Viewing Results
94/147
Results Options
Results Options
• Filters:
– As is: Every data point collected during sim
– Average: average of several data points together
• Use the Add button in the lower-right corner of the “View Results” dialog box to add
another stat to an existing panel
– Ex: Add the average response time to a graph that shows As is response time
96/147
Find Top Statistics
97/147
Exporting Data
98/147
Exporting Data - Spreadsheets
99/147
100/147
Why use Web Reports?
101/147
• After running a simulation, select Generate Web Report from the Results menu
102/147
LAB: BUILD YOUR FIRST NETWORK
Overview
56k
DS1
104/147
Objectives
• 30 min
105/147
MODELING FRAMEWORK
Agenda
• Object Hierarchy
– Network Objects
– Node Objects
– Process Model Objects
• Kernel Procedures
• Object Attributes
– Setting Attributes
– Assigning Attributes Values
– Promoting Attribute Values
107/147
108/147
Network Objects - Nodes
109/147
• Subnet objects:
– Are simply containers used to organize your nodes
– Can represent identical constructs in an actual network.
– Have no behavioral aspects, but simplify representation of
large networks.
– May be stationary or mobile.
110/147
Network Objects - Links
• Link objects model physical layer effects between nodes, such as delays, noise, etc.
111/147
112/147
Node Objects - Modules
113/147
114/147
Process Model Objects - States
115/147
Process Editor
116/147
State Connections - Transitions
• Transitions describe the possible movement of a process from state to state and the
conditions allowing such a change.
• Exactly one condition must evaluate to true.
• If the condition statement (x == y) is true, the transition executive (Reset_Timers;) is
invoked.
117/147
Executive Blocks
118/147
Kernel Procedures - Introduction
• KPs are pre-written functions that abstract difficult, tedious, or common operations.
• KPs free you from addressing memory management, data structure, handling event
processing, etc.
119/147
Kernel Procedures
120/147
Object Attributes
121/147
122/147
Assigning Attribute Values
Type Definition
Integer Whole number; storage capacities; transmission window size, etc.
Double Decimal numbers: processing speeds, timer values
String General text information: statistic name, object names, options
Toggle True/False condition: status flags, semaphores
Typed File User defined files: routing tables, address mapping, script files
Compound Nested, complex data; routing table, circuit table, subqueue
123/147
124/147
Promoting Attributes Example
• When an attribute assignment is made, priority has been promoted from buf and set at
promotion stops. An attribute value was mktg_lan
assigned at mktg_lan, so the attribute does corporate
not appear in the object corporate.
router.buf.priority: high
• Attribute names are used as prefixes at mktg_lan
each new level of the object hierarchy.
buf.priority: promoted
router
priority: promoted
buf
125/147
126/147
Packets
127/147
Packet Format
128/147
Events for Packet Transmission
129/147
Summary
130/147
General Simulation Methodology
Agenda
• Topics
– Understanding what you are modeling
– Granularity
– Defining Data
– Results
• Conceptual Goals
– Use basic methodology for developing a network simulation study.
– Plan simulation studies using a consistent method.
132/147
Flow Diagram: A Simulation Study
Understanding your
Understanding Choosing aspects Defining
Start goals for the
the System to be modeled input and output
simulation
No
No
System Results
Specifying the Choosing input and
result Yes sufficiently
system model running simulations
accurate detailed
Results
No Statistically
useful
End
133/147
134/147
Understanding Your Goals
• Sample questions:
– How much will replacing our Ethernet hub with an FDDI hub increase throughput?
– How much does a customized protocol improve efficiency in my cellular network?
– How much will adding 1000 users lengthen response time?
135/147
• These objectives determine the “granularity” (level of detail) required in the model.
136/147
What is Granularity?
137/147
• Choose the coarsest granularity that still answers all questions accurately.
• Often, some portions of a model require fine granularity, and others much less.
• OPNET is flexible -- it allows you to vary the granularity within a single model.
138/147
Granularity - Example 1
• Model and calculate application end-to-end delay (ETE delay) for 10 workstations
connected via an Ethernet hub.
• Compare the delay measurements with those obtained using an FDDI hub instead.
139/147
• Important to model the full data flow of the TCP/IP/MAC layer protocol stacks
within each workstation.
• Ethernet and FDDI protocols, especially, must be detailed and exact to precisely
model ETE delay.
140/147
Granularity - Example 2
• Model the following scenario: 2,000 workstations in Chicago and another 4,000 in
New York communicate via an OC12 link. How much will an OC48 link decrease
response time?
141/147
• Observation: modeling full detail might be prohibitively slow to develop and run.
142/147
Defining the Data Input and Output
• If you
– Understand the system
– Understand your goals
– Have defined the specific aspects to be modeled
– Have clarified the questions to be addressed
143/147
• Input may refer to a predefined aspect of the model (such as connectivity) or may be
more parametric (such as traffic generation rate).
• To study effects on a system, keep most inputs constant and vary one or two over a
range.
• Determine which output (throughput, ETE delay, etc.) you need and the best
presentation method (graphs, tables, animations, etc.)
144/147
Defining the Data Input and Output (con’t)
Output may be presented as:
animations,
graphs,
145/147
• Simulation software can represent your system in many different ways. To use it
effectively
– Understand the features your simulation software offers.
– Understand how those features can best describe your system.
146/147
Choosing a Range of Input
• Keep most variables constant except for one or two that you vary over a range.
• Usually it is possible to analytically estimate upper and lower bounds for the range.
147/147
• First range chosen was 2.0 - 2.9 Mb/s with step 0.1 Mb/s.
• Second range chosen was 2.4 - 2.6 Mb/s with step 0.02 Mb/s.
148/147
System Results Accurate?
• One technique: predict output first, then compare predicted to actual output.
149/147
• As needed, either widen the input range to get “the bigger picture” or narrow it to
focus on a specific region.
• Should you
– Collect more or different statistics?
– Change the level of granularity?
– Model different aspects of your system?
150/147
Results Statistically Useful?
151/147
152/147
Results Statistically Useful?
153/147
Summary
Understanding your
Understanding Choosing aspects Defining
Start goals for the
the System to be modeled input and output
simulation
No
No
System Results
Specifying the Choosing input and
result Yes sufficiently
system model running simulations
accurate detailed
Results
No Statistically
useful
End
154/147