Kommunikationsarten

Leitungs- vs. paketbasierte Verbindungen

Leitungsbasierende Kommunikation

Leitungsvermittelte Verbindungen öffnen einen exklusiven Kommunikationskanal zwischen zwei Kommunikationspartnern - ein Beispiel ist das frühere Telefonnetz.

1)

Durch Änderung der Steckverbindung, später durch Relais und elektronische Schaltungen wurden die Teilnehmer direkt verbunden. Der gesamte Kommunikationsvorgang nutzte diesen Kanal. Bei leitungsbasierten Verbindungen ist der logistische Aufwand recht hoch, die Vermittlungszeit ebenfalls, dafür kann man sehr genau vorhersagen, mit welcher Bandbreite die Kommunikation durchgeführt werden kann, da die Verbindung für diesen einen Kommunikationsvorgang "reserviert" ist.

Paketbasierte Kommunikation

Bei der Paketbasierten Kommunikation (z.B. per TCP oder UDP), werden die Kommunikationsinhalte in "Datenpakete aufgeteilt und über ein vermaschtes Netz an den Empfänger vermittelt - jedes Paket einzeln. Dabei können verschiedene Teile der Kommunikation durchaus unterschiedliche Wege durch das Netzwerk nehmen und in anderer Reihenfolge am Ziel ankommen, als sie abgesendet wurden.

Ein Experiment mit Filius

Öffne das folgende Filius-Szenario: paketbasierte_kommunikation.fls und aktiviere zunächst alle Modemverbindungen.

Beim empfangenden Modem (das auf eingehende Verbindungsanfragen wartet) die Schaltfläche "Aktivieren klicken", dann beim Gegenstück auf "Verbinden". Wenn die Verbindung zustande gekommen ist, haben beide Modems einen grünen Punkt:

Reduziere dann die Ausführungsgeschwindigkeit auf ca. 70%. Das Ergebnis sollte so aussehen:


(A1)

TCP genauer angeschaut

Mit dem TCP Protokoll kann man Informationen in beide Richtungen übertragen. Kommunikation über TCP ermöglicht es, zur gleichen Zeit Daten zu senden und zu empfangen. Die Übertragungseinheiten, auf die TCP bei der Datenübertragung zurückgreift, sind Segmente (Pakete), die zusätzlich zu den Nutzdaten auch Metainformationen enthalten können. Die maximale Paketgröße ist auf 1.500 Byte beschränkt (MTU - "Maximum Transfer Unit"). Verbindungsauf- und -abbau und auch die Datenübertragung werden von TCP-Software im Netzwerk-Protokollstapel des Betriebssystems übernommen.

Der TCP-Stack des Betriebssystems wird von den Netzwerkanwendungen wie Webbrowsern oder Serverprogrammen über spezifische Schnittstellen bedient, jede Verbindung ist dabei durch zwei Endpunkte – Client und Server – definiert. Welcher Kommunikationspartner die Client- und welche die Serverrolle übernimmt, spielt dabei zunächst keine Rolle – wichtig ist, dass der TCP-Stack an jedem Endpunkt ein eindeutiges, Paar aus IP-Adresse und Port verwenden kann. Sein solches Paar nennt man auch einen Socket.

Beispiel:

Exkurs: Sockets

Ein Server ist ein Programm, das Dienste zur Verfügung stellt, häufig wird es auf einem Server (Gerät) dauerhaft im Hintergrund ausgeführt. Es stellt seine Dienste an einem Port zur Verfügung. Zusammen mit der IP-Adresse des Servergeräts kommuniziert es also über einen Socket mit der Außenwelt. So kann ein Servergrät viele Serverdienste anbieten, ohne dass es zu Kollisionen kommt.

Ein Client ist ein Programm, das auf die Dienste eines Serverprogramms zugreift. Es wird meist auf dem Clientgerät ausgeführt, z.B. dem Laptop oder Smartphone, mit dem ein Benutzer mit Netzwerkdiensten in Interaktion tritt.

Für jede aktive Netzwerkverbindung verwendet auch das Clientgerät einen eigenen Socket - in der Spalte ganz links sind auch die jeweiligen Client-Programme aufgelistet, die den Socket verwenden.

TCP-Verbindungsaufbau: Three-Way-Handshake

Damit Client und Server eine TCP Verbindung aufbauen können, müssen beide über eine IP-Adresse verfügen und den Port für die Datenübertragung definiert und freigegeben haben2).

Der Ablauf beim Verbindungsaufbau mit TCP sieht folgendermaßen aus:


(A2)

Öffne in Filius das folgende Beispiel webserver_client.fls. Auf dem Laptop ist ein Webbrowser installiert, öffne mit diesem die Webseite auf den Server (192.168.0.1)

Vollziehe den TCP Verbindungsaufbau nach.

Kannst in der Analyse des Datenverkehrs herausfinden, ob und wie eine TCP Verbindung auch beendet wird? Recherchiere und erstelle einen Heftaufschrieb.


Material

FilenameFilesizeLast modified
01_kommunikationsarten.odp1.3 MiB15.12.2021 19:59
01_kommunikationsarten.pdf721.9 KiB15.12.2021 19:59
02_besprechung_a2.odp53.4 KiB15.12.2021 17:49
02_besprechung_a2.pdf59.4 KiB15.12.2021 17:49
3wayhs.drawio.png22.6 KiB15.12.2021 17:37
3wayhs.png28.7 KiB05.10.2020 20:07
auswahl_109.png67.7 KiB15.12.2021 16:56
auswahl_110.png79.2 KiB15.12.2021 16:57
filius_modem.png50.9 KiB15.12.2021 16:55
leitungsbasiert.png34.5 KiB05.10.2020 19:07
lsof.png414.4 KiB15.12.2021 20:05
packet_switching.gif7.5 MiB05.10.2020 19:14
server-client.png34.9 KiB05.10.2020 19:50
serverdienste.drawio.png82.6 KiB15.12.2021 20:00
vermittlung.jpg70.9 KiB05.10.2020 18:52
1)
Bildquelle: https://commons.wikimedia.org/wiki/File:Telefonistinde.jpg, Lizenz: Creative-Commons-Lizenz "Namensnennung 3.0 nicht portiert", Beschreibung: Dansk: Manuel betjening på telefoncentral Datum: 2. April 2017 Quelle: MyNewsDesk.com Urheber: Arkiv
2)
Hier greifen z.B. Firewalls ein, indem Sie den Zugriff auf bestimmte Ports blockieren