Studiengänge

Informatik, Ingenieurinformatik, Wirtschaftsinformatik

(Es gibt keine Beschränkung auf einen Studiengang von unserer Seite. Wenn Ihnen ihr Prüfungsamt dieses Seminar anrechnet, dann sind Sie herzlich willkommen.)

Betreuer

Dr.-lng. Michael Roßberg

Inhalt

Simulation ist ein wichtiges Instrument bei dem Entwurf und der Bewertung von Kommunikationsprotokollen, da das Protokollverhalten und kritische Leistungskenngrößen oft nicht mit anderen Techniken vor einer großflächigen Einführung eines Protokolls adäquat bewertet werden können. In diesem Projektseminar sollen grundlegende Protokollmechanismen wie Paketweiterleitung, Routing, Fehlerkontrolle sowie Fluss- und Staukontrolle simulativ erprobt werden, so dass die wesentlichen im Internet zum Einsatz kommenden Konzepte anschaulich erfahren und experimentell untersucht werden können. Die Programmierung erfolgt hierbei mit dem Open-Source-Werkzeug OMNeT++ in der Programmiersprache C++ (grundlegende Vorkenntnisse in Java sollten bei entsprechender Bereitschaft zum Erlernen von C++ ausreichend sein).

Empfehlung

Wir empfehlen Ihnen dieses Seminar frühestens im 2. FS durchzuführen, sodass Kenntnisse aus den Vorlesungen "Algorithmen und Programmierung" sowie "Telematik 1" vorhanden sind. Falls Sie dieses Seminar ohne jegliche Grundkenntnisse in C++ durchführen so planen Sie bitte im Vorfeld mehr Zeit zur Bearbeitung der Aufgaben, sowie zum Erlernen der Programmiersprache ein. Die Vorbereitungszeit für jedes Seminar kann mit etwa einer Stunde angesetzt werden.

Zu Beginn des ersten Seminars sind Grundkenntnisse zur Simulationstechnik und der eingesetzten Werkzeuge unbedingt notwendig. Zur Aneignung dieser Kenntnisse soll das in diesem Kurs zu findende Selbststudienmaterial dienen. Setzen Sie sich am besten noch vor der Einführungsveranstaltung damit auseinander. Für das erste Seminar ist das gesamte Material (ausgenommen statistische Auswertung) relevant. Ein zusätzlicher Besuch der Vorlesung "Telematik2/Leistungsbewertung" ergibt zudem Synergieeffekte beim Lernen, da dort die Konzepte der Simulation und die im Projektseminar verwendeten Werkzeuge ausführlich behandelt werden. Dies ist unabhängig von der Reihenfolge, Sie können also auch erst das Projektseminar durchführen und später oder parallel die Vorlesung besuchen.

Einschreibung und Abschluss

Eine verbindliche Einschreibung für das Seminar erfolgt in den ersten Wochen der Vorlesungszeit über das Thoska-System (genauer Zeitraum wird noch über den Kurs bekannt gegeben).

Am Ende des Semesters wird es eine mündliche Prüfung geben. Die Modulnote setzt sich aus zwei Teilen zusammen, welche sich aus den Leistungen im Seminar und den Leistungen der Prüfung zusammensetzt (50/50).

 

Am Freitag, den 13.10.2023 um 09:00 Uhr, wird es eine Einführungsveranstaltung im Zusebau Raum 2073 geben, bei der Sie sich einschreiben können und bei dem ein wöchentlicher gemeinsamer Termin vereinbart wird. Details finden Sie im Moodle.

Termine und Ort

Nach Vereinbarung

Ablauf

In der Einführungsveranstaltung wird ein wöchentlicher Termin zur gemeinsamen Besprechung der praktischen Aufgaben vereinbart. Die Abgabe der Lösung für die Vorbereitungsklausuren muss jeweils spätestens einen Tag vor dem Termin erfolgen (bis 24 Uhr). Die Abgabe der praktischen Lösung sollte idealerweise direkt nach dem wöchentlichen Termin und spätestens bis 24 Uhr am selben Tag geschehen.

Die Vorbereitungsaufgaben sind von jedem individuell zu lösen, die praktischen Aufgaben können auch in Zweiergruppen gelöst werden. Weiter unten findet sich die entsprechende Gruppenwahl.

Es gibt zudem ein Forum für Ankündigungen sowie ein Diskussions-Forum, falls sich bereits vor dem wöchentlichen Termin Fragen zu den praktischen Aufgaben ergeben.

Arbeitsumgebung

Die Bearbeitung der Aufgaben wird über die WebIDE des Fachgebiets empfohlen. Weitere Informationen zur Einrichtung entnehmen Sie den folgenden PDF-Dateien: Deutsch  English

Bitte beachten Sie, dass sich alle verbindlichen Informationen vorrangig im jeweiligen Moodlekurs befinden.

Themen

 

PDF-File

 

Inhalt

Projekt 1

 

Die Simulationsumgebung, Einstieg

Projekt 2

 

Forwarding, Shortest Path Routing, Metriken

Projekt 3

 

Random Routing, Backward Learning, Flooding

Projekt 4

 

Distance Vector Routing

Projekt 5

 

Link State Routing, Dijkstra

Projekt 6

 

FIFO-Queue, Messung statistischer Größen

Projekt 7

 

Transientenerkennung, Konfidenzintervalle,

Projekt 8

 

ARQ Send and Wait

Projekt 9

 

Go Back N

Projekt 10

 

Verbindungsauf- und -abbau

Projekt 11

 

Zustandsmaschine und Go Back N, Flusskontrolle

Projekt 12

  

Staukontrolle

  

Ausweichtermine bei Bedarf

Sie können alle Versuche über die WebIDE durchführen und müssen sich deshalb keine Software installieren, um die Aufgaben zu bearbeiten.

Literatur

[Wolf09]
 

Jürgen Wolf. C++ von A bis Z. 2009. Galileo Press

[WGG10]
 

K. Wehrle, M. Günes, J. Gross. Modelling and Tools for Network Simulation. Springer Berlin Heidelberg, 1st Edition, 2010.

[SVN11]
 

http://svnbook.red-bean.com/nightly/de/svn-book.pdf

[Tan10]
 

A.S. Tanenbaum. Computer Networks. 5th edition, Prentice Hall, 2010.
Eines der meistgelesenen Standardlehrbücher zu Rechnernetzen.

[Var11]
    

A. Varga. OMNeT++: Object-Oriented Discrete Event Simulator. http://www.omnetpp.org/
Die offizielle Web-Seite zu OMNeT++. Enthält Links zum Download der Software sowie des Referenzhandbuchs (User Manual, API Documentation).

Selbststudienmaterial

Material

File

 

Content

01_Intro

 

Simulation Introduction

02_C++

 

Java to C++ Primer

03_OMNeT++

 

Introduction to OMNeT++

04_Protsim

   

Overview of the Protsim Framework

05_ObtainingData

 

Obtaining Data from Simulations & Short Probability Primer

CppTutorial

 

Java to C++ Transition Tutorial

Abschluss

Die erfolgreiche Teilnahme an der Lehrveranstaltung wird durch eine regelmäßige Abnahme der zu erstellenden Simulationsprogramme und abzugebenden Projektprotokolle erfolgen. Eine regelmäßige Teilnahme an der Veranstaltung ist hierfür eine notwendige Voraussetzung. Zu jedem Projektseminar gehört eine gründliche Vorbereitung und die Lösung der Vorbereitungsaufgaben. Wir behalten uns vor, dies durch mündliche Rücksprachen zu überprüfen.

Am Ende des Semesters wird es ein kurzes Abschlussgespräch mit dem Betreuer geben, in dem die endgültige Note festgelegt wird, welche sich aus den Leistungen im Seminar und den Leistungen im Gespräch zusammensetzt. Wurden alle Aufgaben erfolgreich gelöst, so ist die Lehrveranstaltung in jedem Fall bestanden.