TCP는 신뢰성 있는 데이터 전송을 보장하기 위해 여러 기능들을 제공하는 전송 계층의 연결 지향적 포로토콜이다. TCP를 통해 데이터를 주고 받기 위해서는 먼저 클라이언트와 서버간에 연결이 수립되어야 한다. (클라이언트-서버 간 통신에 자주 사용되는 HTTP도 TCP 기반으로 동작함.) 어떠한 과정을 통해 TCP 연결이 맺어지는지 살펴보자. 1. 3-way handshakeTCP 3-way handshake를 통해 클라이언트와 서버간의 연결(커넥션)이 성립되는 것이다. 안전한 통신을 위해 서로 얼마만큼의 데이터를 송수신 및 처리할 수 있는지 알아야해서 TCP 3-way handshake 과정 중 윈도우 크기(Window Size)와 최대 세그먼트의 크기(MMS, Maximum Segment Size)를..