[ 정리 ] 4 way handshake
4 Way-Handshake란, 전송 제어 프로토콜(TCP)에서 통신을 중단할 때 사용하는 과정/방법입니다. 더 쉽게 말하면 연결을 중단할 때 한번더 확인하고 중단한다고 생각하면 쉽습니다.
여기서 전송제어 프로토콜 TCP에 대해 궁금하다면, 아래에 정리된 글을 참조하기 바랍니다.
[정리] TCP 프로토콜
// 추후 작성 예정
hyemsinabro.tistory.com
그리고 3 Way-handshake와 4 Way-handshake는 짝꿍과 같기 때문에 3 way-handshake도 알아야합니다. 아래의 링크는 3 way-handshake를 정리한 글입니다.
[정리] 3 Way-Handshake
3 Way-Handshake 란, 전송제어 프로토콜(TCP)에서 통신을 하는 장치간 서로 연결이 잘 되어있는지 확인하는 과정/방식이다. 더 쉽게 말해서 송수신자(데이터를 주고 받는 2사람이라고 생각하면 쉬울
hyemsinabro.tistory.com
4 way handshake는 클라이언트가 서버에게 연결해제를 요청할 때 하는 과정입니다. 여기서 연결해제는 서버와 상호작용을 통해 통신을 하다가 이제는 그 통신을 하지 않겠다는 것입니다.
4 way handshake를 간단히 설명하자면,
1단계 : 나 연결 그만두고 싶어
2단계 : 응 확인햇어. 그래도 보내던 것은 마저 보낼게
3단계 : 나 이제 전송 끝났어 연결 끊자!
4단계 : 응 알았어
라는 단계를 가지고 있다.
자세히 설명하자면,
1 단계
클라이언트는 연결을 종료하자고 서버에게 FIN 신호를 전송합니다.
2 단계
서버는 FIN 신호를 받으면, 잘 받았다고 ACK 신호를 전송하게 됩니다. 여기서 ACK신호는 그냥 OK?신호라고 이해하면 쉬울 것 같습니다. 그리고 ACK신호를 받은 클라이언트는 서버에서 남은 신호를 받을 때까지 기다립니다 [이 과정을 TIME_OUT이라고 합니다]
3 단계
서버는 남은 신호를 마저 보내고, 이제 끝내도 된다는 의미로 FIN 신호를 전송합니다.
4 단계
클라이언트는 FIN메시지를 확인했다는 의미에서 ACK 메시를 보냅니다.
이러한 과정으로 연결이 해제되게 됩니다.
참고자료
https://asfirstalways.tistory.com/356