handshake 없이 datagram을 보냅니다. 상대 상태를 저장하지 않으므로 서버 구현이 단순하지만 도달 보장은 없습니다.
UDP는 연결 관리 없이 메시지 단위를 빠르게 보낸다
UDP는 TCP의 연결, 순서, 재전송을 제공하지 않습니다. 대신 헤더가 작고 메시지 경계가 유지되어 실시간성과 단순성이 중요한 곳에서 자주 쓰입니다.
UDP 헤더는 출발지 포트, 목적지 포트, 길이, 체크섬으로 구성됩니다. 오버헤드가 작습니다.
sendto 한 번의 datagram은 수신에서도 메시지 단위로 보입니다. TCP의 바이트 스트림과 다릅니다.
전송 중 손상을 감지하지만 손실 복구나 재전송은 애플리케이션이 직접 설계해야 합니다.
Payload size
큰 UDP datagram은 IP 단편화 위험이 커서 MTU 아래로 유지하는 설계가 안전합니다.
sendto recvfrom
주소를 매번 지정하거나 연결된 UDP 소켓으로 기본 목적지를 정할 수 있습니다.
Loss policy
위치 업데이트처럼 버릴 데이터와 결제 이벤트처럼 보장할 데이터를 분리합니다.