UDP는 Transport Layer Protocol (L4) (IP packet 상 protocol # = 17)
⇒ Application process간 communication을 지원하는 kernel 내 최상위 계층!
UDP Properties
TCP 다음으로 많이 사용되는 Transport protocol
- Connectionless
→ Multiplexing / Demultiplexing 외에 해주는게 없음
- ‘Optional’ Checksum in IPv4
IPv6에서는 의무
Connection을 따로 구축하지 않기 때문에 복잡성이 낮음
⇒ 속도가 중요한 경우에 좋음! (ex: Real-time, Simple Transaction, Multicast/Broadcast)
- Real-time : VoIP, Videa Streaming(스트리밍의 경우는 구글의 QUIC이 많이 쓰임!)
- Simple Transaction : DNS, DHCP, SNMP
- Multicast/Broadcast : IPTV
UDP Datagram

Protocol의 복잡도는 곧 header의 복잡도에 비례할 수 밖에 없음!
- Source / Destination Port
- Length → 사실 IP datagram만 봐도 알 수 있기 때문에, Kernel 입장에서는 redundant한 값
- Checksum → IPv4에서는 optional
‣ 참조
1. UDP Checksum