본문/내용
1. TCP 개요
TCP(Transmission Control Protocol)는 인터넷과 같은 네트워크 환경에서 데이터 전달의 신뢰성과 정확성을 보장하는 핵심 프로토콜이다. 1981년에 RFC 793 문서로 표준화되었으며, 현재 전 세계 인터넷 트래픽의 약 70% 이상이 TCP를 통해 전달되고 있다. TCP는 연결지향적 프로토콜로서, 데이터를 송수신하기 전에 송신자와 수신자 간에 논리적 연결을 설정하는 3way 핸드쉐이킹 과정을 거친다. 이 과정은 데이터 전송의 신뢰성을 확보하는 데 중요한 역할을 한다. TCP는 연속된 데이터 스트림을 제공하며, 데이터 손실 시 재전송 메커니즘을 통해 오류를 교정한다. 또한, 흐름제어와 혼잡제어 기법을 통해 네트워크 과부하를 방지한다. TCP의 헤더는 20바이트에서 최대 60바이트까지 가변적이며, 포트 번호, 시퀀스 번호, 확인 응답 번호, 윈도우 크기, 체크섬 등 다양한 필드로 구성되어 있다. 포트 번호는 0부터 65535까지 존재하며, 0~1023번은 well-known 포트로서 HTTP(80), FTP(21), SMTP(25)와 같은 대표 서비스에 할당되어 있다. TCP는 신뢰성 있는 서비스 제공으로 많은 인터넷 서비스에 필수적이며, 특히 웹 브라우징, 이메일, 파일 전송, 원격 …