TCP
- 연결형 서비스로 가상 회선 방식을 제공한다 - 소켓 통신과 같은 논리적 경로를 구축한다.
- 연결 시에 3 way handshaking 과정, 연결 해제 시에 4 way handshaking 과정을 거친다.
- 흐름 제어, 오류 대응, 혼잡 제어 등 을 제공한다. -> 높은 신뢰성 보장!
- UDP 보다는 속도가 느리다.
- 데이터 전송 시 크기가 무제한으로 가능하다.
- p to p 연결 방식이다.
- 연속성 보다 신뢰성 있는 전송이 중요할 때에 사용하는 프로토콜이다.
UDP
- 비연결형 서비스로 데이터 그램 방식을 제공한다 - ip 기반 통신
- TCP 와 달리 연결, 해제 과정이 없다.
- TCP 와 달리 오류 대응, 제어를 할 수 없고 checksum만을 통해 최소한의 오류만 검출한다.
- 따라서 신뢰성이 낮지만 속도가 빠르다.
- 1 대 1 연결이 아니라 서로 다른 경로로 데이터그램이 독립적으로 전달된다 - 순서보장이 안 된다.
- 크기에 제한이 있다.
- 파일 전송과 같은 신뢰성이 중요한 경우보다, streaming 같은 연속성, 신속성이 중요한 연결에 사용된다.