| OMNeT++ | |
|---|---|
| Basisdaten | |
| Entwickler | OpenSim Ltd. |
| Aktuelle Version | OMNeT++ 5.6.2 |
| Betriebssystem | Linux, macOS, Windows, FreeBSD |
| Programmiersprache | C++ |
| Kategorie | Simulations-Framework |
| Lizenz | Academic Public License |
| deutschsprachig | nein |
| omnetpp.org | |
OMNeT++ (Objective Modular Network Testbed in C++) ist ein Simulations-Framework, mit dem Rechnernetze und Netzwerkprotokolle simuliert und Leistungsanalysen durchgeführt werden können. Für private und akademische Nutzung ist das Framework kostenfrei unter einer Open-Source-Lizenz erhältlich. Für die kommerzielle Nutzung bieten die Entwickler mit OMNEST eine erweiterte Version von OMNeT++ an. Neben einer grafischen Benutzerführung wird eine Eclipse-basierte Entwicklungsumgebung für die Programmierung zur Verfügung gestellt.
Obwohl OMNeT++ selbst in C++ programmiert wurde, besteht die Möglichkeit, andere Programmiersprachen wie Java und C# zur Entwicklung eigener Module zu verwenden. Diese können in Verbindung mit bereits fertigen Standard-Modulen simuliert werden, um deren Zusammenarbeit zu prüfen. Bei einem Modul kann es sich beispielsweise um ein Netzwerk-Protokoll wie IP oder um eine Hardware-Komponente wie einen Switch handeln. Die Simulation der Module erfolgt nach dem Prinzip der ereignisorientierten Simulation.
Verbreitete Anwendungsfälle bestehen darin, neuartige Echtzeit-Ethernet-Netzwerke im Umfeld der Automatisierungstechnik oder im Umfeld von Multimedia-Streaming zu simulieren, bevor sie in Hardware produziert werden.
Das Framework ist lauffähig unter Linux und anderen Unix-basierten Systemen, macOS (Version 10.10 und höher) sowie unter Windows 7 und Windows 10.
Durch den modularen Aufbau von OMNeT++ lässt es sich leicht durch Frameworks erweitern. Diese ergänzen den Funktionsumfang um weitere Simulationsmodelle und Protokolle. Eines der am Häufigsten verwendeten Frameworks ist INET welches OMNeT++ um diverse Simulationsmodelle aus dem Bereich des Internets erweitert. Diese lassen sich in folgende Kategorien einteilen:
INET ist auf GitHub verfügbar. Die jeweiligen Module sind unter der LGPL oder der GPL verfügbar.