Netzwerk-Programmierung

Prof. Jürgen Plate

Netzwerk-Programmierung

(Internet-Technologie)

Any sufficiently advanced technology is indistinguishable from magic.
-- Arthur C. Clarke


Any sufficiently advanced bug is indistinguishable from a feature.
-- Rich Kulowiec


Zum Verständnis sind Kenntnisse über die Funktionsweise von Computernetzen (LAN, WAN), insbesondere die Kapitel "Die TCP/IP-Protokolle" und "Höhere Protokolle" aus dem Skript "Computernetze" von Vorteil. Ebenso können grundlegende praktische Erfahrungen mit dem Betriebssystem UNIX/Linux, das die Basis der Serveranwendungen darstellt, nicht schaden. Für die Beispiele werden die Programmiersprachen Perl und C eingesetzt.

Inhalt

1 Grundlagen der Netzwerkprogrammierung und C-Programmierung

  1. Die Socket-Netzwerkschnittstelle
  2. Behandlung von Signalen und Timeouts
  3. TCP/IP-Sockets: Die Funktionen
  4. Namensauflösung
  5. Programmbeispiele
  6. Ein-/Ausgabe-Polling mit select()
  7. Eingabepuffer splitten
  8. Was noch zu beachten ist
  9. Der Internet-Superserver
  10. Einen Daemon beschwören
  11. Common Gateway Interface in C

2 Client und Server in Perl programmieren

  1. Erste Perl-Server und Clients
  2. Parallelität und Signale
  3. Netzwerk-Funktionen in Perl
  4. Einfache Server und Clients in Perl
  5. Fork-Server und -Clients in Perl
  6. Perl-Clients für Standard-Dienste

3 RAW Sockets und spezielle Anwendungen

  1. Beispiel: Wake-on-LAN
  2. RAW IP-, ICMP-, UDP- und TCP-Pakete
  3. Programmierung mit RAW-Sockets
  4. Daten senden und empfangen mit RAW-Sockets
  5. Programmierung mit PACKET-Sockets
  6. Netzwerk-Sniffer

Anhang

  1. Beispielprogramme
  2. UNIX-Socket-FAQ
  3. Portnummern
  4. "Client-Server Applications" aus "The Perl Journal, Issue 15, Fall 1999
  5. Literatur und Linux-Links
  6. Sockets in Linux (Prof. R. Thomas)
  7. UNIX-Domain-Sockets in Linux (Prof. R. Thomas)
  8. INET-Sockets in Linux (Prof. R. Thomas)
  9. Fit in einem Tag für TCP/IP-Sockets (Fa. Wiesemann & Theis)

  10. Übungsaufgaben

Download des gesamten Skripts


Copyright © Hochschule München, FK 04, Prof. Jürgen Plate
Letzte Aktualisierung: