spezifikation von kommunikationssystemenmidas1.e-technik.tu-ilmenau.de/~webkn/webdaten... ·...

Post on 23-Mar-2020

4 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Spezifikation von Kommunikationssystemen12. Simulation von Kommunikationsnetzen

Prof. Jochen Seitz

Fachgebiet „Kommunikationsnetze“

Sommersemester 2018

1 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Übersicht

1 Motivation

2 Definition

3 Simulationsumgebung

4 Simulation

5 Beispieltools

2 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Motivation

Bisher → SpezifikationASN.1, SDL, UMLAutomaten, Weg-Zeit-Diagramme

BewertungKonformitätZuverlässigkeit

Aber: keine Realisierung und EvaluationSimulation ganzer Knoten / Netze

Leistungsparameter

3 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Was sind Simulationen?

DefinitionVorgänge anhand realitätsgetreuer Modelle nachbilden undanalysierenhier: Kommunikationsnetze

Zieleein komplexes System / Modell verstehenFinden von robusten Lösungen für ein ProblemVergleich von verschiedener Lösungen

4 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Warum als Simulation?

Möglichkeiten ein System zu untersuchen:

Reales Systemmeist (noch) nicht verfügbar

Testbeds / Feldtestsbegrenzte Aussage zu Skalierbarkeiteventuell unerwünschte Nebeneffekte

Physische Modelleunüblich

Analytische mathematische Beschreibungals ”closed-form expression” darstellbarwird schnell komplexbasiert auf restriktiven Annahmen

5 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Komponenten

Zentrale SimulationsengineSammlung von Modellen (Links, Protokolle usw.)KonfigurationsskripteBenutzerschnittstelleVorverarbeitungswerkzeugeWerkzeuge zur Datenauswertung

6 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Simulationsengine

Beschreibt, wie die Simulationen ablaufenAbarbeitung erfolgt einheitlich, unabhängig vonAnwendungenHat Zugriff auf alle Parameter / Knoten

7 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Klassifikation

Zeitabhängigkeitstatisch (keine Auswirkungen)dynamisch (Änderungen über die Zeit)

Zufälligkeitdeterministisch (ohne zufälligen Komponenten)stochastisch (mit zufälligen Komponenten)

Variablenänderungendiskret (eventbasiert)kontinuierlich (Differentialgleichungen)

8 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Zeitänderung

t0 t1 t3t2

t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11

t0

t5 t6 t7t9

Eventbasiert

Feste Zeitintervalle

Kontinuierliche reale Zeit

9 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Arten von Simulationen

Basierend auf Auswahl an Klassifikationsmerkmalen

Typisch: ereignisdiskrete Simulationengl. Discrete Event Simulator (DES)Systemzustand ändert sich nur, wenn Ereignisse auftretenZustand muss zwischen Ereignissen nicht betrachtetwerdennach Abarbeiten des aktuellen Ereignisses:

Simulationszeit auf Zeitstempel des nächsten EreignissesEngine berechnet neuen Systemzustand (inkl. weitererEreignisse)

Kontinuierliche SimulationSystemzustand ändert sich zu vorgegebenenZeitintervallenverwendet echte Zeitbei ausreichend kleinen Zeitintervallen: alleZusandsübergänge beobachtbar

10 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Ereignisse in DES

EreignisverwaltungEreignislisten (Ereignistyp und Zeitstempel)Ereignisse werden an Modelle weitergegebenModelle können als Reaktion neue Ereignisse auslösen

EventtypenBasisereignisseändern den Zustand des Systems(ankommende / erzeugte Pakete)Hilfsereignissewerden für Auswertung und Steuerung der Simulationbenötigt

11 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Allgemeiner Ablauf

InitialisierungSetzen der Simulationszeit (idealerweise auf 0.0)Startzustand der Simulation festlegenEreignislisten erzeugen und erstes Ereignis laden

Ereignisverarbeitung während der SimulationAktualisierung der Simulationszeit mit Zeitstempel desnächsten EreignissesBearbeitung des Ereignisses → alle entsprechendenAktionen ausführenEntsprechende Aktualisierung des Systemzustands

Beenden der Simulation

Was fehlt?Sammlung statistischer DatenAuswertung der Daten

12 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Benötige Informationen

NetztopologieKnoten (Endsysteme, Router, Server, ...)Verbindungen (mit ihren Eigenschaften)

Protokollstack auf den KnotenModularer AufbauStandardisierte Protokolle / eigene EntwicklungenAnwendung mit realistischem Verkehrsaufkommen

AuswertemoduleAnimationSammlung / Darstellung der ermittelten Werte

13 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Anforderungen an Simulationen

Realistische Modellierung vonSignalausbreitungProtokollen (den Schichten entsprechend)Mobilität der KnotenZu analysierender Algorithmus

Szenarien / NetztopologieRahmenbedingungennormales Verhalten von KnotenStraßen, Wege, VerkehrsregelnAnwendungsfallKatastrophe, Unfall

MetrikenWas soll gemessen werden?Durchsatz, Erfolgsrate, Verzögerungen . . .Bezug zum Use Casez.B. im Straßenverkehr: Bremsweg, Schadstoffaustoß,aber auch: Dauer des Staus

14 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Simulation Aufbauen

Simulationsumgebung erzeugenNetzwerk erzeugenProtokollstapel erzeugenAnwendungen konfigurierenModule zur Sammlung von Messdaten konfigurieren

15 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Problemdefinition - Welche Art von Simulation

Simulationen mit Abbruchkriteriumverwenden definierte Start- und AbbruchbedingungenMesswerte abhängig von Start- und Abbruchbedingungenähnlich zur Analyse von Einschwingverhalten (aber nichtidentisch)

Simulation stabiler Zustände – EinschwungphaseErgebnisse einer Start- oder Warmlaufphaseschwanken stark und

Simulation stabile Zustände – stationäre PhaseLangzeitverhalten eines Systems unter normaler Lastausreichend großer Beobachtungszeitraum notwendigentspricht einer Analyse von stationären Zuständen

16 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Eingaben

Trace-basiertvorher gesammelte Daten in der Simulation verwendensehr realitätsnah, zeigt was aufgezeichnet wurdeunflexibel:

andere Fälle werden eventuell nicht berücksichtigtAnpassung des Systems an einen Spezialfall möglich

Empirische Verteilungaus Messwerten ableiten, indem Messpunkte verbundenwerdeneinfach, relativ genauÄnderungen schwierig, limitierte Anzahl Fälle abbildbar

Statistische Verteilungeine passende statistische Verteilungsfunktion (z.B.Exponential, Gamma) verwendenkompakte Darstellung der Werte mit wenigen Parameterngeglättete Daten, passende Funktion schwer zu finden

17 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Warum Wahrscheinlichkeiten und Statistik?

Um ein Gefühl für die Daten zu bekommenErgebnisse der Experimente vorstellen und vergleichen

Wie vergleicht man Statistiken?graphischstatistische Hypotesentests

Aber: nicht Äpfel und Birnen vergleichen!

18 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Statistik - Wieviele Experimente sind notwendig?

Abhängig von der Anzahl variabler Parametern Parameter mit jeweils 10 möglichen Wertenergeben 10n mögliche KonfigurationenJede Konfiguration sollte mehrfach wiederholt werdenexponentieller Anstieg der Durchläufe

Sinvolle Auswahl der Konfigurationen notwendigaber: alle Zusammenhänge zwischen Parametern erfassen

19 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Statistik - Daten sammeln

Verwendung von Tools der SimulationsumgebungMittelwerte, Histogramme, QuantilschätzungErkennung von transientem VerhaltenErkennung von vorgegebener Genauigkeit der Ergbnisse

Speichern von RohdatenStandardmethode der jeweiligen ProgrammierspracheLogging-Funktion des Simulators

20 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Statistik - Von Rohdaten zum Diagramm

Werte aus Rohdaten aufbereitenSkripte (perl, bash)

Metriken berechnen (inkl. Standardabweichung fürVarianz)berechnete Werte in gefordertes Datenformat abspeichern

csvplotten der Daten

gnuplotR

gegebenenfalls fitten einer Verteilung

21 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Notwendige Arbeitsschritte

Problemdefinition

Datenanalyse

Modelle definieren

Konzeption prüfen

Programmierung

Testläufe / Debugging

Modell prüfen

Experiment planen

Simulation

Ergebnisse auswerten

Ergebnisse präsentieren

Modelle kombinieren

22 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Vorteile von Simulationen

oft die einzig mögliche Analyseformermöglicht den Vergleich verschiedener Alternativlösungenerlaubt die Beobachtung des Systems unter vorgegebenenUmgebungsparameternbietet Kontrolle über Umgebungsparameterermöglich Analyse von

Systemem mit großem Zeithorizont in verkürzter Zeitdetaillierten Abläufen bei verzögerter Ausführung

erfordert weniger / keine restriktiven Annahmenermöglicht schnellen Austausch von Modellen,Algorithmen und Variablenerlaubt die Verwendung externer Traces aus Messungenals Eingabe

23 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Nachteile von Simulationen

teilweise sehr zeitaufwendig (Entwicklung und Ausführung)sehr rechenintensivErgebnisse immer nur eine Schätzung des realenVerhaltens aufgrund im Modell getroffener AnnahmenAuswertung und Prüfung der Ergebnisse erfordertzusätzliche ZeitUngenaue Ergebnisse möglich, wennBeobachtungszeitraum zu kurzEventuell hörere Komplexität als notwendigAbhängigkeiten zwischen Variablen schwer zu erklärenund zu visualisierenAnalyse der Sensitivität schwierigviele Daten und realistische Animationen verleiten zuungerechtfertigtem Vertrauen in Ergebnisse

24 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Typische Probleme

zu Beginn oft unpräzise Zieldefinitionfalsche Detaillierungs- / Abstraktionsebeneungeeignete SimulationsumgebungSimulationsumgebung mit schlecht dokumentiertenFunktionenMissbrauch von Animationenfalsche Messwerte verwendeneinfaches Nachbilden eines Systems undErgebnisse als ”einzig wahre Lösung” ansehenkein Verständnis für Statistikfehlende Betrachtung der zufälligen Elementefehlende Erfassung von MesswertenBetrachtung als Programmieraufgabe

25 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Simulatoren

Freiverfügbare SimulatorenOMNeT++ns2ns3ONEQualNet

Kommerzielle SimulatorenMatlabOPNET/SteelCentral

weitere

26 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Beispiel: Drahtlose Sensornetze

Herausforderungen:Modellierung der beschränkten Ressourcen(Prozessorleitsung, Speicher, Energieeffizienz)Spezielle Hardware und BetriebssystemePhysikalischer Prozess, der überwacht werden soll

Spezielle SimulatorenTOSSIM - TinyOSCOOJA - ContikiCastalia - allgemein, basiert auf OMNeT++

27 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Beispiel: Delay Tolerante Netze

Herausforderungen:Lange SimulationszeitenInteraktionen zwischen Overlay und UnderlayVerschiedene Mobilitätsarten

Spezielle SimulatorenONE

28 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Beispiel: Car-2-X-Kommunikation

Herausforderungen:Fahrzeugverkehr realistisch nachbildenHohe Geschwindigkeiten

Spezielle SimulationserweiterungenVeins (OMNeT++ und SUMO)iTetris (ns3 und SUMO)

29 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Beispiel: Click

Herausforderungen:Wiederverwendbarkeit des Simulationsmodells fürImplementierung

Click Modular RouterRouting-Funktionalität als Click-Graph entwerfenGraph

in ns-3 integrierbarunter Linux lauffähigim Kernel als Thread oder im User-Space

30 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Zusammenfassung

Auswahl des geeigneten ToolsErkennen der Möglichkeiten des ToolsVerfügbarkeit von ModulenBeherrschen der betreffenden Programmiersprache

Kein optimales Tool für alle Fragestellungen

31 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Literatur I

Dressler, Falko und Christoph Sommer (2014). NetworkSimulation. University of Paderborn. Distributed EmbeddedSystems. URL:http://www.ccs-labs.org/teaching/nwsim/2014s/.

Kohler, Eddie, Robert Morris, Benjie Chen, John Jannotti undM. Frans Kaashoek (Aug. 2000). „The Click Modular Router“.In: ACM Transactions on Computer Systems 18 (3),S. 263–297.

Levis, Philip, Nelson Lee, Matt Welsh und David Culler (Nov.2003). „TOSSIM: Accurate and Scalable Simulation of EntireTinyOS Applications“. In: 1st ACM Conference on EmbeddedNetworked Sensor Systems (SenSys). ACM, S. 126–137.

MiXiM project (2011). URL: http://mixim.sourceforge.net/.

32 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Literatur II

Moltchanov, Dmitri A. (2012). Network Simulation andSimulators. Vorlesungfolien. Tampere University ofTechnology, Institute of Communication Engineering. URL:http://www.cs.tut.fi/kurssit/SGN-5876/netSimSGN.pdf.

Network Simulator 3 (ns-3) (2018). URL:http://www.nsnam.org/.

OMNeT++ Network Simulation Framework (2018). URL:http://www.omnetpp.org/.

Osterlind, Fredrik, Adam Dunkels, Joakim Eriksson,Niclas Finne und Thiemo Voigt (Nov. 2006). „Cross-LevelSensor Network Simulation with COOJA“. In: 31stConference on Local Computer Networks. IEEE, S. 641–648.

QualNet (2018). URL: https://web.scalable-networks.com/qualnet-network-simulator-software.

33 / 34

Motivation Definition Simulationsumgebung Simulation Beispieltools Literatur

Literatur III

The Network Simulator (ns-2) (2011). URL: http://nsnam.sourceforge.net/wiki/index.php/User_Information.

The Opportunistic Network Environment simulator (2015). URL:https://akeranen.github.io/the-one/.

TOSSIM (2013). URL: http://tinyos.stanford.edu/tinyos-wiki/index.php/TOSSIM.

Veins (Vehicle in Network Simulation) – The Open SourceVehicular Network Simulation Framework (2018). URL:http://veins.car2x.org/.

34 / 34

top related