13.2.1 | Grundlagen |
Eine Socket-Verbindung zwischen zwei Rechnern kann man durch vier Parameter charakterisieren:Durch diese vier Werte ist die Verbindung zwischen zwei Rechnern eindeutig beschrieben. Stellt man Analogien zwischen dem Telefonnetz und einer Socketverbindung her, so könnte man den Rechnername z. B. mit der Vorwahl und die Port-Nummer mit der Rufnummer vergleichen. Eine Verbindung kann hergestellt werden, wenn sowohl Rechnername als auch Port-Nummer beim Verbindungsaufbau stimmen.
- Rechnername des Quellrechners
- Port-Nummer des Quellrechners
- Rechnername des Zielrechners
- Port-Nummer des Zielrechners
Unter dem Rechnernamen und der Port-Nummer des Zielrechners muss ein Server-Dienst zur Verfügung stehen, um eine Kommunikationsverbindung aufzubauen. Der Server wartet unter dieser Adresse auf eingehende Anfragen von Clients.
Will ein Client mit einem Server kommunizieren, versucht er über den Rechnernamen und die Port-Nummer (beide müssen bekannt sein) eine Verbindung herzustellen. Beim Aufbau der Verbindung teilt der Client dem Server den Namen und die Port-Nummer seines Rechners mit. Danach haben beide Kommunikationspartner die Informationen, die sie benötigen, um Daten miteinander auszutauschen.
Die Kommunikation zwischen zwei Rechnern kann sowohl verbindungsorientiert über Streamsockets als auch verbindungslos über Datagramsockets durchgeführt werden. Die Übertragung der Daten erfolgt bei beiden Kommunikationsformen mit Hilfe so genannter Pakete. Jedes Paket kann eine bestimmte Menge an Daten aufnehmen. Ist die Menge der zu verschickenden Daten größer als das Fassungsvermögen eines Pakets, was in den allermeisten Fällen zutrifft, werden die Daten auf mehrere Pakete aufgeteilt, die nacheinander zum Zielrechner geschickt werden.