its-dokumentationen/08-Kittelberger_Carl_TCP.md

4.4 KiB

author date title institute lang babel-lang babel-otherlangs polyglossia-lang classoption colorlinks documentclass fontsize logo mainfont papersize sansfont tables template toc header-includes
Carl Kittelberger 2018-04-19 ITS: Transmission Control Protocol Ferdinand-von-Steinbeis Berufsschule de-DE ngerman
english
name options
german
spelling=new
oneside true report 12pt img/steinbeis.png Arial a4 Arial true template.tex true
\usepackage{lastpage}
\usepackage{xcolor}
\usepackage{fancyhdr}
\usepackage{graphicx}
\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{\large{\textit{\textbf{ITS} \ TCP}}}
\fancyhead[R]{\raisebox{-0.1\height}{\includegraphics[height=32pt]{img/steinbeis.png}}}
\fancyfoot[L]{\textcolor{gray}{Carl Kittelberger}}
\fancyfoot[R]{\textcolor{gray}{\bfseries{Seite \thepage{}/\pageref*{LastPage}}}}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
\setlength\headheight{36pt}
\fancypagestyle{plain}{}
\lstset{basicstyle=\footnotesize\ttfamily,breaklines=true}
\lstset{framextopmargin=50pt}

\newpage

Download einer Datei via FTP

IP und Port des Rechners

Die IP des Rechners im Protokoll ist 192.168.217.128 und der verwendete lokale Port ist 60176 in der ersten Verbindung.

IP des Port des Servers

Die Daten, die vom Server gesendet werden, kommen von der IP 192.168.217.10 und vom Port 21.

Sequence und Acknowledgement Numbers der ersten Pakete

Sequence Numbers

  1. Sequence Number: 3459893177 (relativ 0)
  2. Sequence Number: 2015123918 (relativ 0)
  3. Sequence Number: 3459893178 (relativ 1)

Acknowledgement Numbers

  1. Acknowledgement Number: 0
  2. Acknowledgement Number: 3459893178 (relativ 1)
  3. Acknowledgement Number: 2015123919 (relativ 1)

Kennzeichen eines Acknowledgements

Ein Acknowledgement lässt sich an den Flags in einem TCP-Paket erkennen. Jedes Bit des Flags-Feldes stellt eine Eigenschaft des TCP-Pakets da, von denen eines vorgibt, dass ein TCP-Paket ein Acknowledgement ist.

Sequence und Acknowledgement Numbers im Datenstrom enthalten?

Im eigentlichen Datenstrom finden die Sequence und die Acknowledgement Numbers keine Erwähnung. Beide Zahlen sind TCP-Metadaten die alleine der Wiederzusammensetzung der einzelnen TCP-Pakete dienen, um den eigentlichen Inhalt daraus wieder zu lesen.

Download einer größeren Datei via FTP

Verbindungsaufbau und -abbau

Verbindungsaufbau

Verbindungsabbau

Größe des Dateninhalts der Pakete vom Server

Laut der Antwort zu der FTP-Anfrage (dem RETR), die Linux-Buch-PDF zu übertragen, werden 15144102 bytes übertragen.

Die Daten werden in jeweils 1448 Bytes großen TCP Paketen geliefert.

Entwicklung der Sequence und Acknowledgement Numbers

Die Pakete, die wir vom Server erhalten, starten mit einer Sequence Number von 1. Von da an, steigt die Sequence Number von den Daten die wir erhalten immer um die Anzahl der Bytes.

Die Pakete, die von uns kommen, mit denen wir jeweils die Übertragung der Pakete bestätigen, haben immer die Sequence Number 1.

Die letzte Sequence Number die vom Server gemeldet wird ist 15144104 per Verbindungsabbau und wir bestätigen von unserer Seite mit der Sequence Number 2.

Zeitabstand zwischen Paketen vom Server

Die Zeitabstände zwischen den Paketen, die wir vom Server erhalten, variieren im Bereich von üblicherweise bis zu 100 Mikrosekunden.

Window Size Value-Feld und Veränderungen

Window Size Value hat den Wert 91 bei allen Paketen die wir vom Server erhalten, die den Inhalt der Datei übertragen. Pakete von uns haben den Wert 52886. Über die Übertragung hinweg ändert sich der Wert nicht.

Datendurchsatz des Downloads und Berechnung

Doppelte ACKs? Retransmitted Segments?