Professional Documents
Culture Documents
Opnet Modeler: CS 541 Advanced Networking Spring 2009
Opnet Modeler: CS 541 Advanced Networking Spring 2009
CS 541
Advanced Networking
Spring 2009
Outline
Getting Started
Implement Custom Protocols
Wireless Network Issues
Debugging
Introduction
OPNET (www.opnet.com)
Discrete time simulation
Shipped with lots of models written in
C
Platform: Windows/Linux
Programming Languages: C/C++
GUI/command line simulation
Getting Started
Module Tutorials
Communication Entities
Packets
Implement Custom
Protocols
Node Model:
manet_station_adv
Pipeline Stages
Node Mobility
Antenna Pattern
Terrain Effects
Receiver Group
Transmission Delay
Link Closure
Channel Match
Tx Antenna Gain
Propagation Delay
Rx Antenna Gain
Received Power
Interference Noise
Background Noise
Signal-to-Noise Ratio
Bit Error Rate
Error Allocation
Error Correction
Default stages
<opnet_dir>/<rel_dir>/models/std/links
<opnet_dir>/<rel_dir>/models/std/wirel
ess
To speed up simulations
Set the pipeline stage attribute to
NONE
A fixed pre-determined value will be
used.
4 methods:
Trajectory Files
Motion Vector
Random Waypoint
Mobility KPs
op_ima_obj_pos_get ()
op_ima_obj_pos_get_time ()
op_ima_obj_pos_notification_register
()
op_ima_obj_pos_query_proc_set ()
op_ima_obj_pos_set_geocentric ()
op_ima_obj_pos_set_geodetic ()
Antenna Modeling
Visualize pattern in 3D
Specify gains (, )
Normalization
Consult Naraj
Terrain Effects
Free space
Longley-Rice
TIREM
DTED files
.dem
Debugging
Strategy
Select Kernel
ODB
C/C++ Debugger
Debugging Strategy
Compiler warnings
DES Log
Error Log
OPNET Debugger (ODB)
Memory tracking
Animation and live statistics
Simulation Kernels
Development Kernels
Allows ODB
OPNET Profiler
Detailed error messages
Slower simulation execution
Slightly higher memory usage
Optimized Kernels
ODB Features
Graphical interface
Step through events
Breakpoints for specific
Prefer op_prg_odb_print<major/minor>
() over printf ().
Use op_sim_error () for errors.
Use FIN/FOUT/FRET in every function.
var_name op_sv_ptr->var_name
Questions?