TCP: Was bietet es?

TCP bietet an, Datenströme (beliebig große Mengen und kontinuierlich) verlässlich zwischen zwei Apps zu übertragen.

Dazu kann eine TCP-Verbindung zwischen zwei sogenannten Sockets etabliert werden. Eine Verbindung wird genau durch solch ein Socketpaar beschrieben, welches ein Paar von IP-Adressen um ein Paar von sogenannten Portnummern erweitert:

Eine Portnr. ist eine Zahl zwischen 0 und 65535 (16 Bit).

Nun bietet TCP an, nach Herstellung einer solchen Verbindung einen Datenstrom von A nach B und einen Datenstrom von B nach A verlässlich (fehlerfrei, vollständig & die Reihenfolge der Daten respektierend) zu übermitteln.

Eine Portnummer ist eine Zahl zwischen 0 und 65535, was einer Datenmenge von 16 Bit entspricht. Prüfe dies.

Erstelle ein einfaches Netz mit drei Rechnern wie rechts abgebildet.

Installiere auf $192.168.0.12$ einen Echo-Server. Installiere auf $192.168.0.10$ und $192.168.0.11$ einen „einfachen Client“.

Starte den Server auf Port $4444$.

Starte die folgenden Verbindungen:

  • Von $192.168.0.10$ zu $192.168.0.12$
  • Von $192.168.0.11$ zu $192.168.0.12$

Sende Nachrichten von den Clients an den Server. Wie antwortet der Server? Wird dies seinem Namen „Echo-Server“ gerecht?

Betrachte den Datenaustausch unter „Datenaustausch anzeigen“:

Die meisten angezeigten Informationen sind zunächst irrelevant. Betrachte nur die Quelle- und Ziel-Spalten. Welche Port-Nummern sind beteiligt, an welchen Rechnern?

Zeichne eine Skizze, in der alle Rechner eingezeichnet sind und ebenso die etablierten Verbindungen. Verwende dieselbe Notation wie in der Skizze ganz oben.

Installiere auf zwei verschiedenen Rechnern einen Webbrowser und einen Webserver. Starte eine Abfrage im Webbrowser, indem du im Adressfeld http://192.168.0.10 eingibst. Prüfe, dass die aufgebaute TCP-Verbindung auf der Serverseite an Port 80 besteht. Dieser Port ist auf den meisten Rechnern reserviert für Web-Server.