본문 바로가기
CS/[널널한 개발자] 네트워크

4-2] L4 수준에서 외울 것들 - TCP 연결과정

by 묻공러 2023. 6. 20.

TCP 연결과정 (3-way handshaking)

Segment 단위로 서로 정보를 주고받는데

여기서 Segment는 기존에 알고 있는 Segment와는 다르게

Payload가 없이 TCP Header와 IP Header만 있는 관리 목적의 Segment로 이동한다

 

1_

Client에서 Sequence Number를 랜덤으로 생성한다

그리고 그 Sequence Number를 SYN(Synchronization)으로 보낸다

 

2_

그 Sequence Number를 받았다는 의미로 Server는 ACK로

그 Sequence Number에 +1을 한 것과

Server도 랜덤으로 Sequence Number 생성한 것을 SYN으로 보낸다

 

3_

Client가 Server에게 받은 값에 +1 ACK를 보내면서 끝난다

 

Client는 2번 과정을 받고 연결이 되었다고 판단하고

Server는 3번 과정을 받고 연결이 되었다고 판단하며 둘 간의 시간차가 존재한다

 

TCP 연결은 정책 교환이 핵심이다

정책 교환 중 대표적인 것은

앞서 본 Sequence Number 교환

MSS의 정보 교환이다

MSS의 정보 교환은 MSS(Maximum Segment Size)의 크기를 알려주어

통신 단위의 사이즈를 서로 맞추는 것이다

이러한 TCP 연결은 Physical이 아닌 Logical, Virtual이라는 점도 잊지 말자