[an error occurred while processing this directive]

TCP/IP: Einführung in Pakete im Rahmen der Lehre der Netze und der Lehre des Internetzes. [] (internet, pakete, paket, IP, TCP), Lektion, Seite 720841
https://www.purl.org/stefan_ram/pub/tcp-ip (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram

Pakete und Adressen in Datennetzen

Bei einem klassischen Telefonat erhalten die Teilnehmer eine Leitung  zugeteilt. Dadurch wird sichergestellt, daß die Kapazität der Leitung während der gesamten Dauer  des Gespräches für beide Teilnehmer zur Verfügung steht. Die Endstellen und die verwendete Leitung kann aber auch in Gesprächspausen nicht anderweitig verwendet werden.

Um eine Leitung möglichst gut ausnutzen  zu können, kann man diese auch mehreren Adaptern  zur Verfügung stellen, die dann ihre Daten in Form von Datengruppen, den sogenannten Paketen, über die Leitung schicken. So ist es möglich, daß eine Leitung fast gleichzeitig von mehreren Teilnehmern genutzt werden kann. Die Übertragung eines Pakets beansprucht eine Leitung nur während einer kurzen Zeit. In dieser Zeit wird die Leitung nur von diesem Paket und den dieses Paket austauschenden Adaptern genutzt, doch kurz danach steht sie wieder für andere Adapter zur Verfügung.

Damit die Pakete aber den richtigen Empfänger erreichen können müssen sie nun mit dessen Adresse  beschriftet werden. Zur Erleichterung von Antworten und Rückmeldungen sollte auch der Absender  angegeben sind.

Datenpaket
    -------------------- 
/ /|
----------------------/ |
| Von | |
| Adapter 199131432 | |
| An | /
| Adapter 354982224 |/
----------------------

Paketsequenzen

Größere Datenmengen werden in durchnumerierte Pakete verpackt und können so an Hand ihrer Kennzahl vom Empfänger wieder zusammengesetzt werden. Dies wird auch als Sequenzierung, die zugehörige Kennzahl als Sequenznummer, bezeichnet.

Paketsequenz
   .---------------------.    .---------------------. 
/ /| / /|
.----------------------/ | ----------------------/ |
| Von (0/2)| | | Von (1/2)| |
| Adapter 199131432 | | | Adapter 199131432 | |
| An | / | An | /
| Adapter 354982224 |/ | Adapter 354982224 |/
'----------------------' '----------------------'

Realisierung (IP )

Bei IP  heißen die Pakete Fragmente. Sie enthalten keine Sequenznummer. Das folgende Bild zeigt den Aufbau eines IP -Fragmentkopfes. Darin ist “Source Address ” und “Destination Address ” die Adresse des Empfängers bzw. des Absenders. Für beide Bitmuster gibt es jeweils 2³² mögliche Kombinationen.

Auf den Kopf folgen dann die zu transportierenden Daten, und zwar so, daß das gesamte Fragment insgesamt soviel Oktette enthält, wie in “Total Length ” angegeben ist.

IP fragment (Beispiel) nach RFC 791
 Bit
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

| | |
|Ver= 4 |IHL= 5 |Type of Service| Total Length = 21 |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| | |
| Identification = 111 |Flg=0| Fragment Offset = 0 |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| | |
| Time = 123 | Protocol = 1 | header checksum |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| |
| source address |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| |
| destination address |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

Data

IP -Adressen

Eine IP-Adresse wird oft im Format "〈Oktett3 〉.〈Oktett2 〉.〈Oktett1 〉.〈Oktett0 〉" durch Angabe ihrer vier, durch einen Punkt getrennten, Oktette angegeben.

Die 2³² möglichen Adressen werden zur besseren Organisation des Transports gemäß des RFC 1517, RFC 1518, RFC 1519 und RFC 1520 in Bereiche  unterteilt. Ein Bereich wird zunächst durch die Anzahl der ihn kennzeichnenden Bits benannt. So meint man mit dem /8-Bereich "127.0.0.0/8" dasjenige Teilnetz, dessen erste 8 Bit gleich 127 sind. Das sogenannte Präfix  "/8" legt die Subnetzmaske "255.0.0.0" fest. Eine »1« in der binären Darstellung der Subnetzmaske kennzeichnet den Teil der 32 Bit, der die Adresse des Subnetzes festlegt, eine »0« kennzeichnet den Teil, der die Adresse eines einzelnen Adapters festlegt.

Netze mit dem Präfix »/8«, »/16« und »/24« nennt man auch Netze der Klasse A, Klasse B  bzw. Klasse C.

Eine IP-Adresse mit vier Zahlen kann auch durch eine einzige Zahl angegeben werden. Dazu werden die acht Bit jedes Oktett im Binärsystem ohne Vorzeichen interpretiert und die sich ergebenden vier Zahlen als Ziffern in einem 256er System ohne Vorzeichen. So wird aus der IP-Adresse 130.133.1.46 beispielsweise die Zahl 130 · 4294967296 + 133 · 16777216 + 1 · 256 + 46 = 2181038080 + 8716288 + 256 + 46 = 2189754670. Diese Zahlen können in den meisten Fällen auch an Stelle der Angabe mit Punkten verwendet werden, wie etwa in http://2189754670.

Lokale Schleifen

Die Adressen des als Beispiel gewählten Bereichs »127.0.0.0/8« sind übrigens für die „lokale Schleife“ reserviert, also bezeichnen in der Regel den Absender, der sich so selber adressieren kann. Insbesondere die Adresse »127.0.0.1« ist für diesen Zweck üblich. Pakete mit solchen Adressen als Empfänger werden nicht im Netz weitergeleitet.

/    IP-Kennzahlen verstehen
Welcher Rechner wird mit der URI http://2130706433/ angesprochen?

Verbindungen

Ist es durch das Protokoll gesichert, daß Pakete auch empfangen werden, so spricht man von einer Verbindung  oder einer verbindungsorientierten Kommunikation. Diese Sicherung kann beispielsweise dadurch erfolgen, daß der Empfänger den Erhalt eines Paketes durch Rücksendung eines weiteren Paketes bestätigt. Wird keine Empfangsbestätigung erhalten, so kann ein Paket erneut verschickt werden.

Werden Pakete ohne Verbindung übertragen, so spricht man auch von verbindungsfreier Kommunikation. Dann kann der Absender sich des Empfanges nicht sicher sein. Der Empfänger könnte aber unter Umständen vermißte Pakete erneut anfordern.

Verschachtelungen

Um Daten an ein bestimmtes Fach  zu schicken, kann ein entsprechend beschriftetes Paket innerhalb  eines größeren Pakets transportiert werden. Das umhüllende Paket enthält dann die Adresse der Zieladapters. Dort angekommen wird es geöffnet und dem enthaltene Pakete alsdann die Information über das Zielfach  entnommen.

Paketverschachtelung
      .-------------------------------------.
/ /|
/ / |
/ / |
. ------------------------------------. |
| Von Adapter 199131432 /| | |
| An Adapter 354982224 ------' | | |
| | Von Fach 521 | | | |
| | An Fach 23 | | | |
| | | / | .
| | |/ | /
| ----------------------' | /
| |/
'-------------------------------------'

TCP 

Die Paketverschachtelung wird bei TCP/IP  dadurch realisiert, daß das zu transportieren TCP -Paket als zu transportierender Inhalt in einem IP -Paket übertragen wird.

Beim TCP/IP -Protokoll erfolgt die Numerierung der Pakete während der Adapter-zu-Adapter-Übertragung nicht durch das grundlegende IP -Protokoll, sondern erst bei der Fach-zu-Fach-Übertragung durch das darauf aufbauende TCP -Protokoll.

TCP Header Format
 Bit
0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

| | |
| Source Port | Destination Port |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| |
| Sequence Number |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| |
| Acknowledgment Number |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| Data | |U|A|P|R|S|F| |
| Offset| Reserved |R|C|S|S|Y|I| Window |
|-|-|-|-|-|-|-|-|-|-|G|K|H|T|N|N|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| | |
| Checksum | Urgent Pointer |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| Options | Padding |
| | |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

| |
| data |
|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|-|

Man sieht gleich am Anfang die beiden wichtigen Angaben der Kennzahlen des Quell- und des Zielfaches. Die Sequenznummer  erlaubt es, die erhaltenen Pakete wieder in der richtigen Reihenfolge zusammenzusetzen. Wenn der Empfänger innerhalb einer gewissen Zeitspanne nicht mit einer Anerkennung der erhaltenen Daten antwortet, kann das Paket erneut übertragen werden. Der Anwender von TCP  erhält dadurch effektiv eine (virtuelle) sichere serielle Verbindung.

aus RFC 793
The TCP must recover from data that is damaged, lost, duplicated, or delivered out of order by the internet communication system. This is achieved by assigning a sequence number to each octet transmitted, and requiring a positive acknowledgment (ACK) from the receiving TCP. If the ACK is not received within a timeout interval, the data is retransmitted. At the receiver, the sequence numbers are used to correctly order segments that may be received out of order and to eliminate duplicates. Damage is handled by adding a checksum to each segment transmitted, checking it at the receiver, and discarding damaged segments.

UDP 

Wenn es reicht, ohne Verbindung, ohne weitere Sicherung (außer einer Prüfsumme) und ohne Serialisierung einen kleinen Datenblock zu verschicken, kann ein Datagramm  per UDP  verschickt werden. Das dazugehörige RFC 768 ist vergleichsweise kurz und einfach.

TCP/IP  und das Internetz

Die häufig anzutreffende Verschachtelung eines TCP -Pakets in einem IP -Paket wird auch zusammenfassend als TCP/IP  bezeichnet und kennzeichnet die heutige Internetz-Technik. Rechner, die auf diese Weise kommunizieren kann man auch als ein Internetz  (englisch "internet ") bezeichnen. Wenn LAN-Rechner mit TCP/IP  untereinander kommunizieren, so spricht man auch von einem Intranetz  (englisch "intranet ").

Den weltweiten Zusammenschluß von Netzen, deren Rechner mit IP  untereinander Daten austauschen können, bezeichnet man auch als „das Internetz“. (Der Begriff “internet ” wird auch im RFC 1462 angesprochen.)

Relevante RFCs

Address Allocation for Private Internets
1918

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Von der Stefan-Ram-Startseite ausgehend finden sich oft noch mehr Informationen zu Themen, die auf einer Seite angesprochen wurden. (Eine Verbindung zur Stefan-Ram-Startseite befindet sich ganz oben auf dieser Seite.)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. slrprd, PbclevtugFgrsnaEnz