OMNeT++
| OMNeT++
| |
|---|---|
| [[Datei:Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)|150px]] | |
| Basisdaten
| |
| Maintainer | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Entwickler | OpenSim Ltd. |
| Erscheinungsjahr | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) |
| Aktuelle Version | OMNeT++ Lua-Fehler in Modul:Wikidata, Zeile 273: attempt to index field 'wikibase' (a nil value) |
| Aktuelle Vorabversion | Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value) (Lua-Fehler in Modul:Wikidata, Zeile 1686: attempt to index field 'wikibase' (a nil value)) |
| Betriebssystem | Linux, macOS, Windows, FreeBSD |
| Programmiersprache | C++ |
| Kategorie | Simulations-Framework |
| Lizenz | Academic Public License<ref name="academic-public">OMNeT++ License. Abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> |
| deutschsprachig | ja |
| omnetpp.org | |
OMNeT++<ref>OMNeT++ Discrete Event Simulator. Abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> (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<ref name="academic-public" />. Für die kommerzielle Nutzung bieten die Entwickler mit OMNEST<ref>OMNEST - High-Performance Simulation for All Kinds of Networks. Abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref><ref>OMNEST - OMNeT++ Comparison. Abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> 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.
Unterstützte Plattformen
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.<ref>András Varga and OpenSim Ltd.: OMNeT++ Installation Guide Version 5.0. (PDF) OpenSim Ltd., 2016, abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value), 883 KB).</ref>
Erweiterungen
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<ref>INET Framework. Abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> welches OMNeT++ um diverse Simulationsmodelle aus dem Bereich des Internets erweitert<ref>INET Framework: Model Catalog. Abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref>. Diese lassen sich in folgende Kategorien einteilen:
- Anwendungsschicht
- Anwendungen wie z. B. HTTP, FTP oder DHCP
- Transportschicht
- Hauptsächlich SCTP, TCP und UDP
- Vermittlungsschicht
- Protokolle wie IPv4, IPv6 und ICMP
- Routingprotokolle
- Routingprotokolle wie z. B. BGP, RIP und Link-State. Es werden auch diverse Protokolle aus dem Bereich der Ad-hoc-Netze (MANET) unterstützt.
- Netzzugang
- Unterstützung für drahtgebundene (z. B. Ethernet, STP, PPP) sowie drahtlose Standards (z. B. WLAN, IEEE 802.15.4, LTE) für den Netzzugang.
- Bewegungsmodelle
- Modelle, die die Bewegung der Objekte in der Simulation bestimmen
INET ist auf GitHub<ref>INET framework for the OMNeT++ discrete event simulator. Abgerufen am 22. April 2017 (Lua-Fehler in Modul:Multilingual, Zeile 153: attempt to index field 'data' (a nil value)).</ref> verfügbar. Die jeweiligen Module sind unter der LGPL oder der GPL verfügbar.
Einzelnachweise
<references />