TCP의 3-way-handshake와 4-way-handshake 방식의 차이점은 무엇일까?

hoon·2023년 3월 21일
0

TCP의 3-way-handshake와 4-way-handshake 방식은 TCP 연결의 생성과 종료를 위해 사용되는 절차이다.

3-way-handshake는 TCP 연결을 생성하는 절차로, 해당 과정은 다음과 같이 진행된다.

  1. 클라이언트는 서버에게 SYN 패킷을 보낸다.
  2. 서버는 SYN 패킷을 받고, SYN-ACK 패킷을 클라이언트에게 보낸다.
  3. 클라이언트는 SYN-ACK 패킷을 받고, ACK 패킷을 서버에게 보낸다.


이미지 출처 : https://velog.io/@nnnyeong/Network-TCP-3-way-4-way-Handshake

이러한 절차를 통해 TCP 연결이 생성되고, 데이터를 주고 받을 준비가 완료된다.

4-way-handshake는 TCP 연결을 종료하는 절차이다. 이 과정은 다음과 같이 진행된다.

  1. 클라이언트는 FIN 패킷을 보낸다.
  2. 서버는 FIN 패킷을 받고, ACK 패킷을 클라이언트에게 보낸다.
  3. 서버는 연결을 종료하기 위해 자신의 모든 데이터를 보낸 후, FIN 패킷을 클라이언트에게 보낸다.
  4. 클라이언트는 FIN 패킷을 받고, ACK 패킷을 서버에게 보낸다. 이후 일정 시간 동안 대기하다가, 서버로부터 FIN 패킷을 받으면 다시 ACK 패킷을 보내고, 연결이 종료된다.


이미지 출처 : https://velog.io/@nnnyeong/Network-TCP-3-way-4-way-Handshake

따라서, 3-way-handshake는 TCP 연결을 생성하는 데 사용되고, 4-way-handshake는 TCP 연결을 종료하는 데 사용된다.

profile
프론트엔드 학습 과정을 기록하고 있습니다.

0개의 댓글