TCP 프로토콜 (Transmission Control Protocol)
- TCP 프로토콜은 IP 프로토콜 위에서 동작하는 프로토콜로, 신뢰성 있는 데이터 통신을 제공
- 데이터의 순서를 보장하고, 재전송 및 에러 복구 기능을 제공하여 신뢰성을 보장(데이터 전달 보증, 순서 보장)
- 신뢰 가능한 프로토콜
- 연결형 서비스 제공(연결 지향 : TCP 3 way handshake)
- 데이터를 전송하기 전에 먼저 연결 확인을 한다
- 물리적 연결이 아닌 가상, 논리적인 연결이다
- 현재 대부분 애플리케이션을 TCP 프로토콜 사용
- IP 프로토콜로의 문제점들을 해결
TCP 3 wah handshake
UDP 프로토콜 (User Datagram Protocol)
- UDP 프로토콜 또한 IP 프로토콜 위에서 동작하는 프로토콜(TCP와 같은 계층)
- 거의 기능이 없음
- IP 프로토콜 + PORT 정보(같은 애플리케이션 내 구분 가능) + 체크섬(메시지 유효성 체크)
- 데이터 전송에 대한 신뢰성을 보장하지 않음. 데이터를 전송할 때 에러 검사 및 재전송을 수행하지 않음.
- TCP보다 더 빠르고 가벼우며 실시간 응용 프로그램에서 자주 사용.
- 비 연결형 서비스 제공(TCP 3 way handshake 사용하지 않음 X)
- TCP 보다 빠르고 가벼워서, 사용자가 커스터마이징하여 최근에 많이 사용함.
cf) IP 프로토콜 (Internet Protocol)
- IP 프로토콜은 인터넷에서 데이터를 주고받는 데 사용되는 기본 프로토콜
- 데이터 패킷의 라우팅 및 전송을 담당하며, 출발지와 목적지 간의 통신
- IP 주소를 사용하여 각각의 장치를 식별하고, 데이터 패킷을 전달
- 주로 인터넷에서 데이터를 전송하는 데 사용되며, 비연결형 서비스 제공
TCP, IP 패킷 정보
- TCP 세그먼트 안에는 전송 제어, 순서, 검증 정보가 포함되어 있다
프로토콜 계층 화면