UDP
정의
- User Data Protocol 의 약자로 데이터를 데이터그램 단위로 처리하는 프로토콜이다.
- 비연결형, 신뢰성 없는 전송 프로코톨이다.
특징
- 데이터를 패킷으로 나누고 반대편에서 재조립하는 과정을 거치지 않는다.
- 즉, 수신자가 제대로 받던지 받지 않던 상관안하고 데이터를 보내기만 합니다.
- 잘못된 전송 (재전송, 순서 뒤바뀜, 전송 중 에러)는 어플리케이션이 처리해 주어야 합니다.
- 별도의 연결이 필요하지 않기 때문에 속도가 빠릅니다.
사용 이유
- UDP의 결정적인 장점은 데이터의 신속성이다. 데이터의 처리가 TCP보다 빠르다.
- 주로 실시간 방송과 온라인 게임에서 사용된다. 네트워크 환경이 안 좋을때, 끊기는 현상을 생각하면 된다.
- Source Port : 시작 포트
- Destination Port : 도착지 포트
- Length : 길이
- Checksum : 오류 검출
- 중복 검사의 한 형태로, 오류 정정을 통해 송신된 자료의 무결성을 보호하는 단순한 방법이다.
이렇게 Header의 구조가 간단하므로, TCP보다 용량이 가볍고 송신 속도가 빠르게 작동된다.
TCP vs UDP
오류 해결 방법
-
TCP
- 데이터의 분실, 중복, 순서가 뒤바뀜 등을 자동으로 보정해준다.
- 송수신 데이터의 정확한 전달을 보장해준다.
-
UDP
- IP가 제공하는 정도의 수준만을 제공하는 간단한 IP상위 계층의 프로토콜이다.
- TCP와 다르게 에러가 날 수도 있고, 재전송이나 순서가 뒤바뀔 수 도 있다.
이 경우 어플리케이션에서 처리하는 번거러움이 존재한다.