UDP(User Datagram Protocol)
- Transport layer에서 할 수 있는 최소한의 기능으로 동작
- App과 IP가 거의 직접 통신하는 것이다.
- mulx(다중화), demulx(역다중화) 기능만을 제공한다.
- "best effort"
- 통신하는 데 있어 최선을 다한다.
- 통신 성공을 보장하지는 않는다.
- connectionless
- UDP sender과 receiver간에 handshaking을 하지 않는다.
UDP를 이용하는 이유
- 연결설정이 없다.
- 연결상태가 없다.
- 연결상태 유지를 위한 변수가 없어 TCP보다 많은 양의 정보를 전달할 수 있다.
- header가 작다.
- 혼잡제어하지 않는다.
UDP의 Segment 양식
![](https://velog.velcdn.com/images/jsgcom/post/88232a5b-7838-432a-90a6-dd173719a8b7/image.png)
UDP의 특징
- 통신중에 깨진 패킷을 복구 또는 재전송받지 않고, 삭제한다.
- 패킷이 깨진 것은 검사합(checksum)을 통해 찾는다.
- 만약 app이 신뢰성을 제공한다면 UDP 상에서도 신뢰성있는 통신이 가능하다.
- 용량이 크고, 패킷이 일부 손실돼도 되는 파일 전송에 유리하다.