728x90
먼저 TCP 는 OSI 7계층 중 4계층인 전송계층에서 사용한다.
전송계층에서는 TCP 와 UDP 가 있으며, TCP 에 관련된 내용을 학습하려고 한다.
TCP 3 way handshake 는 연결(가상회선 수립) 하는 과정을 의미한다.
즉, 클라이언트는 서버에 응답을 보낼 수 있는지, 서버는 클라이언트에게 응답을 보낼 수 있는지 확인하는 과정이다.
SYN, ACK 패킷을 주고받으며, 임의의 난수로 SYN 플래그를 전송하고 ACK 플래그에는 1을 더한값을 전송한다.
정리하면, SYN(n) -> ACK(n+1), SYN(m) -> ACK(m+1) 순으로 진행된다.
임의의 난수를 지정하는 이유는 1:1 통신으로 이루어 지는데 기존 요청과 구분하기 위한 것으로 이해했다.
TCP 4 way handshake 는 TCP 연결을 해제 하는 과정을 의미한다.
클라이언트는 서버에게 연결해제를 통지하고 서버가 이를 확인 및 클라이언트에게 요청 받았음을 전송해주고
최종적으로는 연결이 해제된다.
서버에서 소켓이 닫혔다고 통지해도 클라이언트는 일정시간 대기 후 해제를 하는데, 그 이유는 패킷이 해제 후 도착할 수도 있기 때문이다.
728x90
'Knowledge > CS' 카테고리의 다른 글
SSL HandShake 란 ? (0) | 2022.11.17 |
---|---|
[CS] HTTP와 HTTPS의 차이점 (0) | 2022.11.16 |
[CS] TCP/UDP 이란? (1) | 2022.11.14 |
[CS] google.com 을 입력하면 어떻게 될까? (0) | 2022.11.12 |
RFC ( Request for Comments ) 이란? (0) | 2022.10.07 |
댓글