Hochschule Fulda

University of Applied Sciences

TCP/IP-Programmierung im WS 2016/2017

Problemstellung

Der Entwurf und die Implementierung von TCP/IP-Programmen sind ein wesentlicher Aspekts in der heutigen IT. Der Entwurf und die Implementierung von effektiver und gut strukturierter TCP/IP-Software ist eine Herausforderung, die die Probleme des Software Engineering mit den Problemen der Netzwerkprotokolle, der Betriebssysteme und der verteilten Systeme kombiniert.  Der Life Cycle eines TCP/IP-Programms und besonders sein Testen werden durch die nichtdeterministische Natur des unterliegenden Netzwerks und der kommunizierenden autonomen Computersysteme zusätzlich erschwert. Weiterhin sollten die Programme in der Lage sein gemeinsame Datentypen zu nutzen, trotz der physikalisch getrennten Adressräume.

Writing communication software becomes very important with the growing network market. Writing good communication software represents a challenge to overcome the software engineering problems and the problems concerning network protocols and distributed systems. The life cycle of a communication program and especially its testing becomes more complicating due to the non deterministic behavior of the underlying network and of the interacting computing systems. Furthermore, the communicating programs should be able to use common types of data structures in spite of the separate address spaces.

Ziel der LVA

Das Ziel dieser LVA ist es solide Kenntnisse bei dem Entwurf, der Implementierung, dem Testen und der Leistungsbemessung von Kommunikationssystemen zu vermitteln.

Die Studierenden lernen die in der Praxis üblichen TCP/IP-Programmiertechniken und -mechanismen kennen, sowie die Werkzeuge für verschiedene Entwicklungsphasen für Internet-Software und die Gegenüberstellung ihrer quantitativen Charakteristika. Die Laborversuche umfassen den Entwurf und die Implementierung vollständiger, lauffähiger Internet-Protokolle (basierend auf IPv4 und IPv6), Client- und Serverprogramme als Modifikation bzw. Erweiterung der in der Vorlesung behandelten Beispielprogramme.

Ich bin sicher, dass Sie die LVA genießen werden! Weiterhin werden diese praktischen Kenntnisse Ihre Position am heutigen (schwierigen) Arbeitsmarkt wesentlich verbessern. Seien Sie aber bitte bereit auch zu Hause an Ihren Programmen zu arbeiten. 

 

The goal of this course is to provide a solid background in the design, analysis and testing of the major classes of Internet application protocols and cooperation mechanisms, in a popular environment (UNIX). Students who have completed the course will be able to develop their own Internet application programs (in C) and to test them. The course considers the basic Application Programming Interfaces APIs (IPv4 and IPv6) for UNIX. The client-server paradigm and the socket interface used by application programs to access TCP/IP protocol suite are introduced. Server algorithms are discussed in depth and evaluated based on the choice of concurrency and transport (e.g. connection-oriented TCP or connectionless UDP).

 

Rumen Stainov

Tel.: 0661/9640-319.

Email: rumen.stainov@cs.hs-fulda.de

Webseite der LVA: http://www2.hs-fulda.de/~stainov/TCPIP/index.htm

 

Benotung:

The final grade will be assigned based on the following weighting

 

Voraussetzung:

Voraussetzung für die Teilnahme an die Klausur ist die erfolgreiche Teilnahme an die praktischen Übungen. Zweimal entschuldigte Abwesenheit wird toleriert (und nachgeholt). Mehr als 5 Minuten Verspätung für die Übungen wird nicht toleriert.

Weekly mandatory practical exercises are prerequisite for the final examination. I will accept two times absence from practical exercises, which should be redone.  Each practical exercise is due one week after the scheduled date. Late practical exercises will not be accepted unless permission by the instructor was given prior to the scheduled date.

Warnung:
Übernehmen von fremden (gleichen) Programmlösungen machen beide Arbeiten ungültig. Besonders, wenn Sie in einer Gruppe zusammenarbeiten, werde ich mehr als eine originale Programmlösung erwarten und nicht die gleichen Fehler.

Cheating and plagiarism will not be tolerated. They will result in no credit for the examination. This should not be understood as a discouragement for discussing the material or your particular approach to a problem with other students in the class. On the contrary - I urge you to share your thoughts, questions and solutions. Naturally, if you choose to work in a group, I will be expecting more than one and highly original solutions rather than the same mistakes.

Textbücher:

image002Comer, D.E., Stevens, W., Internetworking with TCP/IP, Vol. 3: Client-Server Programming and Applications, Linux/Posix Sockets Version, 1/e, Copyright 2001, 601 pp. ISBN 0-13-032071-4

 

 


image006Stainov, R.  IPnG - Das Internet-Protokoll der nächsten Generation, Bonn ; Albany [u.a.] : Internat. Thomson Publ., 1997,. ISBN: 3826640187


Weitere Bücher:

Comer, D.E., Stevens, W., Internetworking with TCP/IP, Vol. III (ANSI C, BSD Socket Version): Client-Server Programming and Applications, 2-d edition, Prentice Hall, 1996

Comer, D.E., W. Stevens, W., Internetworking with TCP/IP, Vol. III (Windows Sockets Version): Client-Server Programming and Applications, Addison-Wesley, 1997

Stevens, R., UNIX Network Programming, Volume 1: Networking APIs - Sockets and XTI: 2/e, Second edition, Prentice Hall Int., 1998

Relevante Internet RFCs


Zeitplanung

Übungsaufgaben

Teilnehmerliste

Skript

 


IPv6


Networked Multimedia


Mobile and Wireless Computing


Networked Security

·       Cryptography and Security

 


Interested Materials and Tutorials

 


Telecom Useful Resources

 


Organizations

·        Broadband Forum

·        Federal Communications Commission (FCC)

·        Institute of Electrical and Electronics Engineers (IEEE)

·        IEEE Computer Society

·        IEEE Communications Society

·        International Telecommunication Union (ITU)

·        Internet Society

·        Technical Committee on Computer Communication (TCCC)


Hochschule Fulda, Angewandte Informatik, Leipziger Str. 123, Zimmer E 124, 36043 Fulda, phone: +49 661 9640319,  fax: +49 661 9640349, e-mail: rumen.stainov@informatik.hs-fulda.de
Go to HS Fulda Home Page/Go to FB AI Home Page