OMNeT++

OMNeT++ — Free Download. Modular network simulation
OMNeT++ is a general-purpose simulation environment with a modular, component-based architecture. The system is designed for modeling communication networks, network protocols, and distributed systems. The platform provides infrastructure and tools for discrete event simulations. Models are built using the NED topology description language. Components are programmed in C++ and extend the classes of the simulation library. The framework includes a graphical runtime environment and result analysis tools.
4.0(2 ratings)

Download OMNeT++ (Official links)
File size: 1120 MB
The latest version of OMNeT++ is: 6.3.0
Operating system: Windows, Linux, MacOS
Languages: English
Price: $0.00 USD

  • NED Language. Specification of network topologies using a declarative language. The NED language describes the structure of models through simple and compound modules. Connections between modules define communication paths. Modular hierarchy allows building complex systems from reusable components. Topologies can be parameterized to vary experimental configurations.
  • Discrete Event Simulation. Execution engine based on scheduled events. The simulation kernel manages a time-ordered event queue. Each event contains specific data and triggers handlers in components. Execution progresses through sequential event processing. The time model uses simtime_t variables with arbitrary precision.
  • Qtenv Graphical Environment. Interactive visualization of running simulations. Qtenv displays the module structure and active connections. Messages between modules are visualized with animations. Allows inspection of the internal state of components during pauses. Offers execution control with variable speed.
  • Result Analysis. Statistical processing of output data. Tools capture vectors and scalars during runs. Data is stored in .vec and .sca files for post-processing. The histogram calculator generates statistical distributions. Filters allow selection of specific data subsets.
  • Parallel Simulation. Distributed execution on multiple processors. The Parsim support splits large models across computational nodes. Conservative synchronization ensures correctness of events. Inter-node communication uses message passing protocols. Reduces execution time for complex simulations.
  • Documentation Generation. Automatic creation of model documentation. The opp_neddoc tool produces HTML descriptions of NED topologies. Includes structural diagrams and documented parameters. Documentation is generated directly from definition files. Maintains consistency between implementation and documentation.
  • Fingerprint Checking. Consistency verification in repeated runs. Fingerprints calculate cryptographic hashes of results. Detect non-deterministic changes between identical runs. Used in regression testing to validate modifications. Allows identification of alterations in model behavior.
  • Component Architecture. Modular design with defined interfaces. Simple modules implement specific functionality in C++. Compound modules group components forming hierarchies. Connections define communication channels between modules. Gates manage entry and exit points for messages.
  • Parameter Management. Flexible configuration of model variables. Parameters support constant values and dynamic expressions. Can be defined in .ini configuration files or NED. Supports parameter inheritance through hierarchies. Allows conditional configurations based on context.
  • Model Libraries. Collections of specialized components. The INET Framework provides models of Internet protocols. SimuLTE offers components for LTE and 5G networks. Veins integrates vehicular traffic simulations. These libraries extend the basic functionality of the framework.
  • Model Debugging. Tools for error diagnosis. The logging system captures debug messages during execution. Breakpoints allow pausing the simulation under conditions. Variable inspection shows the internal state of modules. Message tracing follows the flow through components.
  • Eclipse Integration. Unified development environment based on an IDE. The OMNeT++ IDE provides code editing with syntax highlighting. Includes autocompletion assistance for NED and C++ files. Navigation tools allow moving between definitions. The build system manages compilation and linking.

Development of OMNeT++ began in 1997 at the Technical University of Budapest. The original creator was András Varga. The first public version was released in 1999 as academic software. The project has maintained active development for over two decades. The implementation is written primarily in the C++ language. The source code contains approximately one million lines. The development team includes engineers from multiple academic institutions. The platform has evolved through incremental versions with regular improvements. The user community contributes extensions and fixes. The system is maintained as a publicly available code project.


Alternatives to OMNeT++:

OpenModelica — Free Download. Modelica modeling and simulation environment

OpenModelica

OpenModelica is an open-source environment for modeling, simulation, optimization, and analysis of complex multi-domain systems using the Modelica language.
Price: Free   Size: 2000 MB   Version: 1.25.7   OS: Windows, Linux, MacOS