January 7, 2023 12:00 AM (GMT+9)
<aside>
🚧 전체적인 흐름도
프로토콜 스택: Transport와 Network 계층을 일컫는 말
</aside>
4. 서버에서 연결을 끊어 소켓을 말소한다.
📍 데이터 보내기를 완료했을 때 연결을 끊는다.
[연결 끊는 대상 - 서버라 가정]
- 소켓 라이브러리의 close 호출
- 서버의 프로토콜 스택이 tcp헤더를 만들고 컨트롤 비트의 fin 비트에 1을 설정
- ip담당 부분에 전달하여 클라이언트에 송신
- 이와 동시에 서버측의 소켓에 연결 끊기 동작에 들어갔다는 정보 기록
[연결이 끊긴 대상 - 클라이언트라 가정]
- 서버에서 보낸 fin=1인 tcp 헤더가 도착
- 자신의 소켓에 서버측이 연결 끊기 동작에 들어갔다는 것을 기록
- 서버의 소켓을 잘 받았다는 사인을 ack으로 서버측에 전송
- 애플리케이션이 데이터를 가지로 올 때까지 대기