TCP는 트랜스포트 계층에서 사용되는 프로토콜로 다음과 같은 특징을 지닌다.
UDP는 트랜스포트 계층에서 사용되는 프로토콜로 다음과 같은 특징을 지닌다.
클라이언트와 서버간의 데이터 전송에는 다음과 같은 문제가 발생할 수 있다.
TCP 프로토콜은 신뢰적 데이터 전송을 보장하기때문에 위에서 발생하는 문제들을 다룰 수 있고 수신측에서 중요한 데이터를 온전하게 받지 못했다면 다시 보내달라고 요청할 수 있다.
UDP 프로토콜은 비신뢰적 데이터 전송을 보장하기때문에 수신측이 데이터를 어떻게 받는지는 중요하지 않고 보내는데에만 관심이 있다. 예를들어, 스트리밍 서비스에서는 UDP가 사용될 수 있다.