기본 콘텐츠로 건너뛰기

3-way handshaking, 4-way handshaking

TCP 3-way-handshaking은 TCP/IP프로토콜을 이용해서 통신을 하는 응용프로그램이 데이터를 전송하기 전에 먼저 정확한 전송을 보장하기 위해 상대방 컴퓨터와 사전에 세션을 수립하는 과정을 의미한다.

(연결설정)
Client > Server : TCP SYN

Server > Client : TCP SYN ACK

Client > Server : TCP ACK

(연결종료)
Client > Server : TCP FIN

Server > Client : TCP FIN ACK

Client > Server : TCP ACK

TCP 4-way-handshaking은 연결을 종료할때 connections을 독립적으로 닫도록 허용한다.

[STEP 1]
클라이언트가 연결을 종료하겠다는 FIN플래그를 전송한다.

[STEP 2]
서버는 일단 확인메시지를 보내고 자신의 통신이 끝날때까지 기다리는데 이 상태가 TIME_WAIT상태다.

[STEP 3]
서버가 통신이 끝났으면 연결이 종료되었다고 클라이언트에게 FIN플래그를 전송한다.

[STEP 4]
클라이언트는 확인했다는 메시지를 보낸다

출처: http://mindnet.tistory.com/entry/네트워크-쉽게-이해하기-22편-TCP-3-WayHandshake-4-WayHandshake [Mind Net]

댓글