Reputation: 23
Is there every a case, with HTTP or HTTPS, where a server sends an HTTP response to a client, the client gets the response in full, but the server cannot be certain that the client got the response in full, for example if the final ACK or FIN message from the client wasn't received by the server?
And, if so, what are the conditions under which this might occur?
I looked through several RFCs and googled around, but couldn't find any relevant answers.
Upvotes: 2
Views: 143
Reputation: 121881
Let's ask slightly different questions:
Q1: Is it possible for the server to determine its response was successfully sent?
A: Yes.
Q2: Is it possible for the server to detect an error occurred sending its response?
A: Yes.
Q3: What happens if the TCP/IP connection abnormally terminates before a message is completely received by the client?
A: Both the client and the server get a RST.
The answer to Q1 and Q2 is "Yes" on either/both of two different levels:
TCP/IP connection level: the connection is closed gracefully ... or not.
HTTP "Persistent Connection" (RFC 2616): provides additional Application Layer error reporting capabilities.
Upvotes: 1