FIN_WAIT_2 가 없어지지 않습니다.
글쓴이: nyulnim / 작성시간: 목, 2008/09/25 - 4:37오후
대강 리처드 아저씨 책을 찾아봤습니다.
TCP에서 connection 연결 해제에 대한 질문입니다.
FIN_WAIT_2 상태가 FIN을 보내고 ACK을 받고,
상대편으로FIN을 기다리고 있는 상태인데,
TCP 연결을 했던 프로세스가 이미 종료한 상태인데도,
FIN_WAIT_2로 소켓이 남아있습니다.
소켓이 남아있다는 것은 netstat로 봤을 경우 해당 port번호로
소켓이 FIN_WAIT_2로 남아 있다는 의미입니다.
제 생각으로는 어떤 경우에서건
프로세스 자체가 종료를 하고 나면
프로세스가 쓰던 socket을 더 이상 이용하지 않을 것이므로
시스템(혹은 커널)에서 알아서 해당 socket에 대한 후처리를
할것으로 생각했습니다.
즉 FIN_WAIT_2 상태에서 프로세스가 죽어버렸다면,
나머지 후처리는 커널이 하지 않을까 생각했습니다.
제 생각이 틀렸나요?
프로세스가 종료된지는 만 하루가 지났는데,
FIN_WAIT_2의 아직 없어지지 않는군요.
reboot만이 해결일지도 모르겠다는 생각도 드는데요,
일단 원인을 알고 다시 이런 상황이 생기지 않도록 하려 합니다.
조언을 기다리겠습니다.
Forums:
댓글 달기