<aside> <img src="/icons/info-alternate_blue.svg" alt="/icons/info-alternate_blue.svg" width="40px" /> 한 줄 요약
연결이 양방향이므로 각 방향을 독립적으로 종료할 수 있어야 하기 때문입니다.
</aside>
연결 설정과 연결 종료 과정에서 TCP/IP 프로토콜이 각각 3-way handshake와 4-way handshake를 사용하는 이유는 데이터 전송의 신뢰성을 보장하고, 양방향 통신의 정확한 종료를 위한 것입니다.
연결을 설정할 때 3-way handshake가 사용되는 이유는 두 통신 주체 간에 초기 시퀀스 번호(SYN)를 교환하고, 양쪽 모두 준비가 되었음을 확인하기 위해서입니다. 이 과정은 다음과 같습니다:
이렇게 3단계로 이루어진 과정을 통해 빠르고 효율적으로 양방향 통신의 시작을 알립니다.
한편, 연결 종료 시에는 4-way handshake가 필요한데, 이는 통신의 양 방향이 독립적으로 종료될 수 있도록 하기 위함입니다. 연결 종료 과정은 다음과 같습니다:
연결 설정 때보다 한 단계 더 필요한 이유는, 연결이 양방향이므로 각 방향을 독립적으로 종료할 수 있어야 하기 때문입니다. 양쪽 모두에서 더 이상 전송할 데이터가 없음을 확인하고, 각자의 연결 종료 요청과 그에 대한 응답을 명확히 해야 합니다. 이렇게 하는 것은 데이터 손실을 방지하고, 모든 데이터가 안전하게 전송된 것을 확인한 후 연결을 종료하기 위함입니다.