sharepoint
Goto Top

Daten senden bei einer TCP-Verbidnung in beide Richtungen...erneuter Handshake notwendig?

Hallöle,

beim Aufbau einer TCP-Verbindung wird im ersten
Schritt die Verbindung über den 3-way-handshake
synchronisiert.
Danach können Daten in beide Richtungen gesendet
werden.

Wenn der Sender sich mit dem Empfänger synchronisiert
hat und Daten sendet ist ja alles in Ordnung.

Aber...
wie sieht es aus, wenn der Empfänger Daten senden
möchte?
Muss er die TCP-Verbindung neu aufbauen und ebenfalls
den 3-way-handshake durchlaufen?

Oder kann der Empfänger "einfach so" auf dem schon
synchronisierten Kanal senden?

Ein Link mit Erklärung zum Nachlesen wäre auch schön. face-wink

Danke
SP

Content-Key: 195571

Url: https://administrator.de/contentid/195571

Printed on: April 20, 2024 at 03:04 o'clock

Member: maretz
maretz Dec 09, 2012 at 14:08:02 (UTC)
Goto Top
da TCP von so ziemlich jedem Programm genutzt werden kann ist das ja ziemlich … ähm… unklar was du meinst, oder?

Wenn du z.B. dir http anguckst - dann wird da üblicherweise in beide Richtungen gearbeitet… Es gibt aber auch Fälle in denen du nur sendest. Jetzt kommt es darauf an was du dann nämlich mit "Empfänger sendet" meinst -> sendet der nur ein ACK usw. - dann geht das über die normale Verbindung (damit bestätigt der ja extra das ein Paket ankam). Redest du aber von richtigen Datenverkehr kann man z.B. bei Tauschbörsen davon ausgehen das die üblicherweise einen neuen Kanal dafür aufmachen…

Von daher - so pauschal wirst du da nix finden, das hängt von der genauen Anforderung ab...
Member: jens2001
jens2001 Dec 09, 2012 at 14:19:46 (UTC)
Goto Top
Wikipedia abgestürzt?
Member: SharePoint
SharePoint Dec 09, 2012 at 14:20:18 (UTC)
Goto Top
Achso face-wink

Bleiben wir mal zunächst mal bei http. face-wink

Ein Client fordert eine Website von einem Server an.
Der Client baut also die Verbindung auf.
Letztendlich sendet er aber nur die Anfrage.
Der Server hingegen, der diese Anfrage empfängt, muss
nun aber die Seite senden.
Baut er eine neue TCP-Verbindung auf oder nutzt er die
schon existierende?

Anderes Szenario:
Ein Client verbindet sich zu einem FTP-Server, um Daten
hochzuladen. Der Client baut die Verbindung auf und
sendet die Daten.
Wie sieht es nun aus, wenn der Client auch etwas
herunterladen möchte?
Baut der FTP-Server eine neue Verbindung zum Client auf?
Denn nun sendet ja der FTP-Server.

Und nun die letzte Frage.
Hast Du ein konkretes Beispiel, wo wirklich richtiger
Datenverkehr (also hin und her) nur über eine einzige
TCP-Verbindung läuft?

Danke und Gruß
SP
Member: danielfr
danielfr Dec 09, 2012 at 14:55:14 (UTC)
Goto Top
Grundsätzlich können beide über einen Kanal "senden und empfangen" um es mal so auszudrücken. Wie das in den verschiedenen Protokollen im einzelnen geregelt wird kannst Du aber in den Spezifikationen nachlesen. Es bietet sich eben, wie schon erwähnt, Wikipedia an, da gibts eine gute Feld zur Suche.
Member: marinux
marinux Dec 09, 2012 at 16:32:51 (UTC)
Goto Top
@SharePoint

In beiden von die geschilderten Fällen ist der Client der Initiator und er baut die TCP-Verbindung auf. Über diese werden dann sämtlichen Daten gesendet (sofern der Client nicht mehrere TCP-Verbindungen zu dem Server aufmacht), bis Client oder Server die Verbindung beenden.
Der Server startet üblicherweise nicht von sich aus TCP-Verbindungen zu einem Client! Wohin sollte er auch auf dem Client Verbinden (fehlender Port etc.)?

Nochmal speziell zu dem FTP-Szenario: Auch beim Herunterladen fragt der CLIENT beim FTP-Server an, eröffnet also eine Verbindung. Über diese erfolgt dann auch der Transfer.


Willst du das selber mal testen, dann installiere dir z.B. Wireshark, sniffe auf deiner Netzwerkkarte und eröffne über sie eine FTP Verbindung. Setze in Wireshark den Filter "FTP" und du kannst alles wunderbar beobachten, ja sogar grafisch ausgeben.

Gruß
Member: SharePoint
SharePoint Dec 11, 2012 at 13:04:42 (UTC)
Goto Top
Vielen Dank an alle "Antwortgeber".

Frage beantwortet.

An Wireshark hatte ich noch gar nicht
gedacht. Werde speziell das FTP-Szenario
mitschneiden.

SP
Member: danielfr
danielfr Dec 11, 2012 at 18:27:56 (UTC)
Goto Top
An Wireshark hatte ich noch gar nicht
gedacht. Werde speziell das FTP-Szenario
mitschneiden.

Besonders praktisch ist dann die "Follow Stream" (o.ä.) Funktion, die Du mit rechtem Mausklick auf ein Paket erreichst. Probiers einfach mal aus.
Have fun.