SO_LINGER1 (소켓,프로토콜)TCP 소켓의 종료 1. 깔끔한 종료 TCP에서 연결된 소켓을 종료할때는 4-way handshake라는 과정을 거친다. 총 4단계로 tcp의 특성에 맞게 안전하게 종료 가능한 방법이다. - 과정 먼저 종료를 원하는 쪽에서 closesocket과 같은 소켓 종료함수를 호출한다. 그럼 해당 소켓에 대한 권한이 tcp커널로 넘어가게 되고 만약 소켓이 블로킹 소켓이면 위의 종료과정이 완전히 끝날때까지 블로킹되고, 논블로킹 소켓이면 EWOULDBLOCK을 리턴한다. 그리고 해당 호스트는 FIN_WAIT상태에 들어가고 상대호스트의 FIN을 기다린다(FIN_WAIT). FIN 메시지를 받은 상대 호스트는 받은 메시지에 대한 ACK 신호를 보내고 역시나 closesocket과 같은 소켓종료함수를 보내기 전까지 ClOSE_WAIT상태가 .. 2020. 10. 5. 이전 1 다음