Studiengänge

Informatik, Ingenieurinformatik, Wirtschaftsinformatik

(Es gibt keine Beschränkung auf einen Studiengang von unserer Seite. Wenn Ihnen ihr Prüfungsamt dieses Projektseminar 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.

Es wird empfohlen die Vorlesung Telematik 2/Leistungsbewertung zu besuchen, da dort die Konzepte der Simulation und die im Projektseminar verwendeten Werkzeuge behandelt werden. Zu Beginn des ersten Seminars sind Grundkenntnisse zur Simulationstechnik und der eingesetzten Werkzeuge unbedingt notwendig. Zur Aneignung dieser Kenntnisse soll das auf dieser Seite angegebene Selbststudienmaterial dienen. Für das erste Seminar ist das gesamte Material (ausgenommen Chapter 5: Obtaining Data) relevant.

Einschreibung

Am Donnerstag, den 14.10.2021 um 14: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

Die Lösungen (pdf) der Vorbereitungsaufgaben müssen dem Seminarleiter mittels Email einen Tag vor dem Seminar zugesendet werden. Die Lösungen der Aufgabenblätter sind jeweils einen Labortermin nach dem entsprechenden Projektseminar abzugeben.

Arbeitsumgebung

Um die Materialien auszuchecken, benötigen Sie SVN Software auf Ihrem Rechner. Unter Debian/Ubuntu genügt dazu die Eingabe des Befehls "sudo apt-get install subversion" auf der Kommandozeile; hierfür benötigen Sie Administratorrechte. Unter OSX können Sie z.B. das Tool "svnX" benutzen (grafisch). Anschließend führen Sie in Ihrem Benutzerverzeichnis den folgenden Befehl aus:

svn co telematik.prakinf.tu-ilmenau.de/svn/Projekte/protsim

Die Zugangsdaten erhalten Sie von Ihrem Betreuer. Machen Sie sich mit dem Inhalt des heruntergeladenen Ordners vertraut. Hier finden Sie auch die Aufgabenblätter in Deutsch und Englisch. Eine Dokumentation zu Subversion finden sie unter [SVN11].

Anleitung zur Installation als PDF: 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 remote auf unseren PCs im Rechnerpool 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.