3-Way Handshaking

Benedictus Park·2022년 12월 15일
0

TCP/IP

목록 보기
10/11
post-thumbnail

1. 개괄

TCP에서의 연결 설정 과정을 3-Way Handshaking이라 한다. 그 과정을 가볍게 살펴보면 아래와 같다.

1-1. SYN(Synchronize Sequence Numbers)

3-Way Handshaking의 첫 번째 과정으로, '지금 데이터를 보내도 될까요?'를 묻는 메시지를 보낸다.

1-2. SYN + ACK(Acknowledgements)

3-Way Handshaking의 두 번째 과정으로, 'SYN 데이터 잘 받았습니다. 통신 준비가 끝났습니다.' 하는 내용의 메시지를 보낸다.

1-3. ACK

3-Way Handshaking의 마지막 과정으로, '잘 알겠습니다.' 하는 내용의 메시지를 보낸다.

2. 상세

2-1. Shake 1

A가 B에게 접속을 요청하는 SYN 패킷을 보낸다. 그리고 A는 SYN/ACK 응답을 기다린다.

A: 지금 보내는 패킷에 1000번이라는 번호를 부여하니, 잘 받았다면 1001번 패킷을 달라고 알려줘라!
[SYN] SEQ: 1000, ACK: -

2-2. Shake 2

B는 A가 보낸 SYN 패킷을 수신하고, A에게 SYN/ACK 응답을 보낸다.

A: 지금 보내는 패킷에 2000번이라는 번호를 부여한다. 1000번 패킷은 잘 받았으니 1001번 패킷을 전송해라!
[SYN+ACK] SEQ: 2000, ACK: 1001

2-3. Shake 3

A는 B가 보낸 SYN/ACK 패킷을 수신하고, B에게 ACK 응답을 보낸다.

A: 1001번 패킷을 보낸다! 보낸 2000번 패킷은 잘 받았으니 2001번 패킷을 보내주길 바란다!
[ACK] SEQ: 1001, ACK:2001

0개의 댓글