BSDForen.de  

Zurück   BSDForen.de > Geekstuff > Netzwerk

Antwort
 
Themen-Optionen Thema bewerten Ansicht
Alt 24.04.2012, 09:03   #1
Herakles
Profifragensteller
 
Benutzerbild von Herakles
 
Registrierungsdatum: Jun 2003
Ort: Emsdetten
Beiträge: 984
Herakles eine Nachricht über ICQ schicken
Question [TCP/IP]Zeitpunkt eines ACKs

Moin!

Wann und von "wem" wird ein TCP-Acknowledge generiert?

Die Idee hinter meiner Frage ist, ob ein ACK wirklich erst dann versendet wird, wenn die Anwendung, die mit einem read(2) Daten liest, die Daten bekommen hat oder schon vorher.

TCP ist ja bekanntlich Layer 3 und demzufolge müsste das ACK schon versendet werden, bevor die Anwendung die Daten erhalten hat.

Aber was geschieht, wenn das ACK versendet wird, die Anwendung das Paket aber nicht erhalten hat(aus welchen Gründen auch immer). Wird dann die Nachricht so lange im Puffer vorgehalten, bis sie von der Anwendung abgeholt wurde?

Für Tipps bin ich sehr dankbar.

Viele Grüße
Herakles
Herakles ist offline   Mit Zitat antworten
Alt 24.04.2012, 10:07   #2
unull
Nervensäge
 
Benutzerbild von unull
 
Registrierungsdatum: Feb 2005
Ort: ::1
Beiträge: 146
Zitat:
Zitat von Herakles Beitrag anzeigen
Moin!
Salve.

Zitat:
Wann und von "wem" wird ein TCP-Acknowledge generiert?
Client: SYN
Server: SYN ACK
Client: ACK

Zitat:
Die Idee hinter meiner Frage ist, ob ein ACK wirklich erst dann versendet wird, wenn die Anwendung, die mit einem read(2) Daten liest, die Daten bekommen hat oder schon vorher.

TCP ist ja bekanntlich Layer 3 und demzufolge müsste das ACK schon versendet werden, bevor die Anwendung die Daten erhalten hat.
connect(2) stellt die Verbindung her, d.h. der Handshake erfolgt vor write(2) oder read(2). Also wie Du vermutest. Sollte man mit tcpdump auch sehen können.

Zitat:
Aber was geschieht, wenn das ACK versendet wird, die Anwendung das Paket aber nicht erhalten hat(aus welchen Gründen auch immer). Wird dann die Nachricht so lange im Puffer vorgehalten, bis sie von der Anwendung abgeholt wurde?
Dazu habe ich folgendes gefunden: http://stackoverflow.com/questions/1...isten-function

Hoffe, dass das hilfreich ist.
unull ist offline   Mit Zitat antworten
Alt 24.04.2012, 11:19   #3
Herakles
Profifragensteller
 
Benutzerbild von Herakles
 
Registrierungsdatum: Jun 2003
Ort: Emsdetten
Beiträge: 984
Herakles eine Nachricht über ICQ schicken
Das hilft auf jeden Fall! Genau nach sowas hatte ich im Netz gesucht, im Gegensatz zu Dir aber nichts gefunden.

Danke!
Herakles ist offline   Mit Zitat antworten
Antwort


Dieses Thema betrachten zurzeit 1 Personen. (0 registrierte Benutzer und 1 Gäste)
 
Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:28 Uhr.


Powered by vBulletin (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.