Was ist TCP/IP?
Um im Internet eine Verbindung mit einem anderen Computer herzustellen, braucht man ein Protokoll, das sicherstellt, das man die Daten die man anfordert, auch bekommt.
Dazu muss sich jeder Computer im Internet an einen festgelegten Standard halten.
Ein Protokoll ist eine Sammlung von Regeln oder Konventionen, die Datenformate und die Art der Übermittlung zwischen Kommunikationssystemen beschreiben.
Das ISO/OSI Schichtmodell:
Die übergeordnete Norm ist das ISO/OSI Schichtmodell. Es ist ein gedankliches Referenz¬modell, mit dem Netzwerkkommunikation herstellerunabhängig beschrieben wird.
Dieses Schichtmodell ist kein Protokoll, sondern ein Schema für Protokolle und deren Normierung, ist daher ein Architekturmodell für Protokolle und Standards zur Datenkommunikation.
Das Modell ist aus verschiedenen Schichten aufgebaut. Jede Schicht hat ihre eigenen Normen. Wenn Daten verarbeitet werden, durchlaufen sie alle Schichten. Bei diesem Bild werden Daten empfangen: Der physikalische Empfang der Daten, bis zur Darstellung z.b. einer HTML -Seite.
Die einzelnen Schichten im Detail:
Die physikalische Schicht sorgt für die Weiterleitung der Daten in das Netzwerk. Ihre Aufgabe ist also nur der Transport von unformatierten Bitsequenzen.
Der Link Layer (Sicherungsschicht) sorgt für das Erkennen und Beheben von Fehlern, und sorgt für die Regelung des Zugriffs auf das Medium.
Normalerweise sind die ersten zwei Schichten eine Einheit, zusammen bilden sie die Netzwerkkarte oder das Modem.
Danach folgt der Network Layer, er sorgt für den Aufbau eines Kommunikationskanals zwischen zwei Rechnern, genaugenommen ist das der Transport von Paketen zwischen beliebigen Endpunkten. Das beinhaltet also Adressierung und Routing. Diese Schicht analysiert aber noch nicht den Inhalt.
In der Transportschicht findet die Fehlerkorrektur und Sortierung der Daten statt. Hier kommt das TCP zum Einsatz. Hier findet auch der Aufbau einer Verbindung und ihre Erhaltung statt.
Der Session Layer ist in den meisten Fällen (verschiedene Protokolle) unbenutzt, eventuell sorgt er dafür, wann jeder Teilnehmer senden darf.
Im Presentation Layer (Darstellungsschicht) findet die Ciffrierung oder Dechiffrierung statt, sowie eine Komprimierung oder Dekomprimierung; Eventuell werden noch Konvertierungen durchgeführt, wie eine Umwandlung des Zahlenformates. Danach werden Nachrichten so aufgearbeitet, wie sie die Anwendungssoftware erwartet (z.b. Java- oder HTML - Code).
Die letzte Schicht, der Application Layer ist das Kommunikationsprogramm selbst. Hier werden Daten interpretiert, wie bei Dateitransfer (FTP), Electronic Mail (X.400) oder Hypertext (HTTP).
Das Protokoll:
TCP ist das häufigste Übertragungsprotokoll. Es garantiert die einwandfreie Übertragung der Daten von A nach B. Es wandelt einen verbindungslosen Dienst in einen verbindungs¬orientierten um. Es gibt somit eine Garantie für eine korrekte Verbindung. TCP wird in der Transportschicht eingesetzt.
Die Alternative dazu ist UDP, ein verbindungsloser Dienst. Dieses Protokoll wird nur eingesetzt, wenn nicht unbedingt eine sichere Verbindung notwendig ist, oder wenn die Anwendungssoftware für die korrekte Übertragung sorgt.
Im Internet hat jeder Rechner eine "Identifikationsnummer". Die ersten 24 Bit der Adresse ist die Adresse des Netzwerkes, in dem der Computer steht; Die weiteren 8 sind die Adresse des Computers. Jedes Netzwerk kann maximal 253 Rechner haben, die restlichen sind für spezielle Aufgaben reserviert.
Die Kommunikation im Internet geschieht mit Hilfe von Datenpaketen. Wenn jemand Daten verschicken will, so steckt er sie in ein Paket, und "schreibt die Adresse drauf".
Die Weitervermittlung dieser Daten übernehmen Router (Knotenrechner). Sie treffen die Entscheidung, in welche Richtung das Datenpaket jetzt weitergesandt werden soll.
Wenn der Router feststellt, dass ein Weg blockiert ist, probiert er die Weiterreichung an einen anderen Router. Auf diese Weise konfiguriert und optimiert sich das Internet von alleine.
Das hat aber auch zur Folge, dass die Datenpakete unter Umständen nicht in der Reihenfolge ankommen, in der sie abgeschickt wurden, oder dass große Datenpakete in zersägtem Zustand ankommen.
Der Empfänger muß also die Pakete wieder zusammen¬setzen, das ist aber nur möglich mit einer wohl¬definierten Struktur der einzelnen Pakete.
Deshalb hat jedes Datenpaket einen Header(Kopf), in dem präzise Daten über das Proto¬koll enthalten sind. Danach folgen erst die eigentlichen Daten.
Struktur des IP- Kopfes:
Die Version gibt die IP- Version an. Derzeit ist die aktuelle Ip-version 4. Danach folgt die Angabe, wie groß der Kopf ist.
In "Sevicetypen" wird die Art der Übermittlung festgelegt, wie z.b. besonders dringende Pakete.
Die "Paketlänge" gibt an, wie lang das gesamte Paket, inklusive des Headers ist. Da dafür nur 16 Bit reserviert sind, ist das Paket maximal 65536 Byte lang.
Die "Identifikation" ist eine Nummer, die der Absender der Pakete fortlaufend erhöht. Damit kann er die Pakete, die er aussendet, voneinander unterscheiden.
Das DF- und das MF-Flag sind für die Aufsplittung von Paketen verantwortlich. Wenn DF gesetzt wird, bedeutet das, dass das Paket nicht zersägt werden kann. Wenn MF gesetzt ist, wurde das Paket bereits einmal aufgeteilt. Der "Fragmentabstand" gibt an, ab dem wievielten Byte des Originalpaketes der Inhalt dieses Paketes beginnt.
Die Lebenszeit ist ein Wert, der bei jedem Mal, bei dem ein Paket weitergereicht wurde, um 1 verringert wird. Wenn er null wird, so wird das Paket gelöscht. Damit wird verhindert, dass das Netz unnötig durch ziellose Pakete belastet wird.
Bei "Transport" wird festgelegt, für welche Datenübertragung die Daten bestimmt sind. Das ist meistens TCP. Danach folgt eine Prüfsumme für den Protokollkopf. Die "Optionen" sind für Sonderaufgaben reserviert.
Danach folgt, wenn man TCP als Übertragungs¬protokoll verwendet, der TCP-Kopf.
Die Struktur des TCP-Kopfes:
Meistens wollen mehrere Prozesse gleichzeitig auf das Netzwerk zugreifen. Deshalb bekommt jeder Prozeß eine eigene Portnummer. Damit wird sichergestellt, dass die Daten dem richtigen Prozeß zukommen. z.b. Wenn man gleichzeitig Internet surft und FTP Download macht, wäre es doch schade, wenn sich ein paar falsche Daten in das File einschleichen, da ja beide Prozesse unter der selben IP-Adresse Daten anfordern.
Die Kombination aus IP-Adresse und Port wird als Socket bezeichnet.
Die Sequenznummer und die Quittungsnummer erfüllen den gleichen Zweck wir die Identifikationsnummer beim IP-Header. Durch die Quittungsnummer wird gleichzeitig der Empfang bestätigt.
Der "Datenabstand" definiert die Länge des TCP-Kopfes.
Die "Fenstergröße" definiert, wieviele Bytes der Sender derzeit empfangen kann. Dadurch wehren sich Rechner gegen zu große Datenfluten.
Danach folgt eine Prüfsumme, die sich aber auf das gesamte Datenpaket bezieht. Damit werden Fehler vermieden.
Erst jetzt kommen die Nutzdaten des Pakets, die dann zur nächsthöheren Schicht weitergeleitet werden. Dort übernehmen Protokolle wie SMTP, HTTP, FTP, Telnet, Gopher die weitere Interpretation der Daten.
|