Übung zu TCP

In dieser Übung sollen Sie die Arbeitsweise des Transmission Control Protocol näher kennen lernen. Arbeiten Sie in Gruppen zu drei Personen.

Unter Ubuntu ist es mit dem Befehl tc1) tc steht für traffic control leicht möglich Datenverkehr im Netzwerkverkehr zu manipulieren.

Konfigurieren Sie zunächst das folgende Szenario:

Es ist sinnvoll zunächst die IP-Adresskonfiguration innerhalb der Gruppe abzusprechen.

System	Schnittstelle (z.B. eth0)	IP-Adresse/Subnetzmaske	Netzwerkdose (z.B. 1.2)
PC1
PC2
Router Interface 1
Router Interface 2

Alle Systeme verwenden Virtuelle Maschinen (vergessen Sie nicht die MAC-Adressen der VMs zu verändern!).

Der mittlere PC arbeitet als Router. Dazu müssen zwei Netzwerkkarten konfiguriert werden. Die beiden anderen PCs arbeiten als Client. Sie haben den Router als Standard-Gateway in den IP-Adresseinstellungen eingetragen.

Das IP-Forwarding, also der Routing-Prozess, wird mit dem Befehl sudo sysctl -w net.ipv4.ip_forward=1 auf dem Router aktiviert. Einträge in die Routing-Tabelle des Routers sind nicht nötig.

Ein ping zwischen PC1 und PC2 sollte nach der IP-Adresskonfiguration und dem Starten des Routing-Prozess möglich sein.

Der durchgehende Verkehr auf dem Router lässt sich nun manipulieren.

Beispiel:

sudo tc qdisc add dev eth0 root netem delay 600ms 100msec loss 50%

Erläuterung: Auf der Schnittstelle eth0 wird eine Verzögerung mit 600ms, eine Verzögerungsschwankung von 100ms und eine Paketverlustrate von 50% konfiguriert.

Aufgaben:

Konfigurieren Sie das angegebene Szenario.

Senden Sie TCP-Pakete von PC1 nach PC2. Das erreichen Sie PC1 einen WEB-Server (apache2) auf PC2 ansprechen lassen.
Der Webserver ist auf der VM installiert. Denken Sie daran, dass Sie den Proxy im Internetbrowser bei PC1 deaktivieren.

Schneiden Sie die Pakete mit wireshark mit.

Analysieren Sie den Mitschnitt und erstellen Sie ein MSC2) MSC: Message Sequence Chart; Flussdiagramm der Nachrichten
(wireshark kann Ihnen hier helfen: Statistics→Flow Graph→TCP Flow).

Manipulieren Sie mit tc den Verkehr so, dass Pakete auf dem Router verloren gehen. Schneiden Sie den Datenaustausch wieder mit und analysieren Sie den Mitschnitt auf wiederholte Pakete.