Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

In TCP Connection Termination, when client enters in TIME_WAIT state means the client waits for a period of time equal to double the maximum segment life (MSL) time, to ensure the ACK it sent was received.

(I read above from a book computer networking by kurose and also given in following URL http://www.tcpipguide.com/free/t_TCPConnectionTermination-2.htm )

But how it was detected if last ACK(send by client as a response to server FIN) lost?

share|improve this question
add comment

1 Answer

It's essentially a "don't care". The wait period is to prevent confusion with subsequent connections. Why is the final ACK then sent? It helps clear connection resources on the other side.

share|improve this answer
    
I got that point. TIME_WAIT is time requires for clearing connection resources for preventing confusion with subsequent connections. –  sonali Sep 22 '12 at 0:10
    
But that time is also for ensuring that ACK(send by client as a response to server FIN) it sent was received or not? Then my question is that, how it will detect if that last ACK was lost? further question, what happens if that last ACK lost...means will connection remains open? –  sonali Sep 22 '12 at 0:22
    
@sonali: It's a fundamental issue known as the "Two Generals problem". You cannot detect the loss of the last message, because that would require another "past-the last" message. –  MSalters Sep 24 '12 at 8:10
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.