Protocol Design

News / Aktuelles

Overview / Überblick

Also have a look at / Siehe auch:

Lecturer / Dozentin: Prof. Anja Feldmann, Ph. D.
additional contact persons / weitere Ansprechpartner:

All supervisors / Alle Betreuer:
praktikum@lists.net.t-labs.tu-berlin.de

event type / Veranstaltungstyp: Lab Course / Praktikum (PR)
area / Gebiet: Operating and Communication Systems / Betriebs- und Kommunikationssysteme (BKS)
SWS: 6
ECTS / LP: 6
Tutorial / Zentral-Übung: Th, 16–18
Room MA851
Debriefings Wed/Fri 16-18
Room TEL0109
Course ID / Veranstaltungsnr.: 0432 L 831
Audience / Hörerkreis bachelor students after their basic studies (from the fifth semester on) and master students /
Bachelor-Studierende nach dem Grundlagenstudium (ab dem fünften Semester) und Master-Studierende
Prerequisites / Voraussetzungen:

basic studies / basic modules and at least one of the following lectures / Grundstudium / Grundlagenmodule und wenigstens eine der Vorlesungen:

  • Network Protocols and Architectures  (by Prof. Feldmann)

  • Telekommunikationsnetze  (by Prof. Wolisz)

Especially / Insbesondere:

  1. Networking:

    • 7 layer OSI stack

    • IP

    • UDP

    • TCP

    • DNS

    • http

    • IP Routing

  2. Programming:

    • procedural programming

    • recursion

    • state machines

Content / Inhalt

Most people know and use the Internet. As computer scientists we also know how it works in theory and we can distinguish between the applications WWW, filetransfer, E-Mail and the protocols implementing them. But what is important when designing network protocols?

In this lab course we examine protocol design. We will implement existing protocols to get a feeling for acutal protocols. After that we will implement a protocol that allows for reliable data transfer over unreliable network connections, and get deep insight into the principles that are common in reliable protocols such as TCP.

This course is intended for students who already have aquired good theoretical insight to TCP/IP networks, as well as to general programming in the UNIX environment. We will repeat the relevant theoretical concepts in a weekly central tutorial, and give guidance to how these can be implemented, but we will neither teach TCP/IP nor basic programming concepts from scratch.

Fast jeder kennt und nutzt das Internet. Als Informatiker wissen wir meist sogar, wie es in der Theorie funktioniert und wir können die Anwendungen WWW, Dateitransfer und E-Mail sowie die benutzten Protokolle auseinander halten. Doch was muss man bei der Implementierung von Netzwerkprotokollen beachten?

In diesem Praktikum untersuchen wir die Entwicklung von Protokollen. Wir werden ein bestehendes Protokoll implementieren, um ein Gefühl für reale Protokolle zu entwickeln. Danach werden wir ein Protokoll entwickeln, das verlässlichen Datentransfer über unverlässliche Netzverbindungen erlaubt, und bekommen dadurch einen tiefen Einblick in die Prinzipien, die in zuverlässigen Protokollen wie TCP gebräuchlich sind.

Dieses Praktikum ist für Studierende gedacht, die bereits einen guten theoretischen Einblick in TCP/IP-Netze sowie allgemeine Programmiererfahrung in einer Unix-Umgebung haben. Wir werden die wichtigsten theoretischen Konzepte in einer wöchentlichen Zentralübung wiederholen und geben auch Hilfestellung, wie diese implementiert werden, aber wir werden weder TCP/IP noch Grundlagen der Programmierung lehren.

Organisation

Also, have a look at the organization page.
Siehe auch Organisationswebseite.

Work Sheets / Übungsblätter

Nr. English version German version Topic / Thema
1 u1en.pdf u1de.pdf Log file analysis/Logfileanalyse
2 u2en.pdf u2de.pdf File transfer/Dateitransfer
3 u3en.pdf u3de.pdf DNS-I
4 u4en.pdf u4de.pdf DNS-II
5 u5en.pdf u5de.pdf RDT 1.0
6 u6en.pdf u6de.pdf RDT 2.2
7 u7en.pdf u7de.pdf RDT 3.0
8 u8en.pdf u8de.pdf RDT 4.0
9 u9en.pdf German version not available RDT Options
10 u10en.pdf u10de.pdf P2P Overlay
11 u11en.pdf u11de.pdf P2P – Flooding
12 u12en.pdf u12de.pdf P2P – Forwarding Table, Peer Search and File Transfer
Review pdprak-review.pdf n/a Review form

Slides / Folien

Materials for the talks / Materialien zu den Vorträgen

Nr. Topic / Thema Date / Datum
1 Einführung in Perl
Introduction to Perl
one, six slides per Page 23.10.2008
2 Socketprogrammierung
Socket Programming
one, six slides per Page 30.10.2008
3 DNS and pack() one, six slides per Page 06.11.2008
4 Questions & Answers Session Fragestunde 13.11.2008
5 / 6 / 7 RDT 1.0 - 3.0 one, six slides per Page 20.11 / 27.11 / 4.12
8 RDT 4.0 Blackboard only, no slides 11.12.2008
9 RDT options no slides 18.12.2008
10 P2P-Overlay one, six slides per Page 08.01.2009
11 P2P – Flooding one, six slides per Page 22.01.2009
12 P2P – Forwarding Table, Peer Search and File Transfer one, six slides per Page 29.01.2009

Literature / Literatur

General Literature