recently i’ve got some port holding on FIN_WAIT_1 state till two days later. The target port is used by one server process ever and client connect to the server process through this port.
The situation is we stopped the server process, and obviously some client is still connecting with the server at that moment. From my understanding, the server process sends a FIN package to client and waiting for the ACK package back. Unfortunately, that ACK package seems not like coming to server side till two days later.
my question is there any config like timeout to FIN_WAIT_1 status. i walked through the internet searching but found nothing there. Please help tell me if you have any experience with this.
BTW, the server process has already gone while the FIN_WAIT_1 happening to the port.
Thanks in advance
Advertisement
Answer
The FIN_WAIT_1
state is waiting for the peer to ACK
the FIN
that this end has just sent. That outgoing FIN
is subject to all the normal TCP retry and timeout processing, so if the other end has completely disappeared and never responds, TCP should time out the connection and reset it as a matter of course. That’s why you couldn’t find a specific FIN_WAIT_1
timeout: there isn’t one, just the normal TCP write timers.
All that should have happened within ten minutes or so.
If the state persists and it causes other problems I don’t think you don’t have much option but to reboot.