[Socket 프로그래밍] 7. TCP의 우아한 연결 종료
소켓의 우아한 연결종료 TCP에서는 연결과정보다 중요한 것이 종료과정이다. 연결과정에서는 큰 변수가 발생하지 않지만 종료과정에서는 예상치 못한 일이 발생할 수 있기 때문이다. 따라서 종료과정은 명확해야한다. 이번에 설명하는 Half-close는 명확한 종료를위해 반드시 알아야한다. 일방적인 연결종료의 문제점 리눅스의 close 함수호출과 윈도우의 closesocket 함수 호출은 완전종료를 의미한다. 완전 종료라는 것은 데이터를 전송하는 것은 물론, 수신하는 것조차 더 이상 불가능한 상황을 의미한다. 때문에 한쪽에서의 일방적인 close 또는 closesocket 함수 호출은 경우에 따라서 우아해 보이지 못할 수 있다. 위 그림은 양방향으로 통신하고 있는 두 호스트의 상황을 묘사한 것이다. 상황은 이렇다..