hostprofi.ru
Подобрать хостинг
Термин·буква U

UDP

краткое определение

UDP (User Datagram Protocol) — транспортный протокол без установления соединения, обеспечивающий быструю передачу данных без гарантии доставки и порядка пакетов, применяемый в DNS, VoIP, стриминге и играх.

UDP (User Datagram Protocol) — транспортный протокол стека TCP/IP, описанный в RFC 768 (1980). В отличие от TCP, UDP не устанавливает соединение, не гарантирует доставку и не контролирует порядок пакетов. За эту минимальность он платит задержкой в 0–1 мс против 10–50 мс у TCP на практических сетях, что делает его незаменимым для стриминга, игр и DNS.

Как работает UDP

Заголовок UDP занимает 8 байт: поля Source Port (2), Destination Port (2), Length (2) и Checksum (2). Нет полей Sequence Number, Acknowledgement, Window или Flags как в TCP. Отправитель формирует датаграмму и отправляет её напрямую — без handshake, без буферизации, без ожидания подтверждения. Если пакет потерян, протокол об этом не знает; ответственность за повтор лежит на приложении.

UDP работает поверх IP и поддерживает broadcast (255.255.255.255) и multicast (224.0.0.0/4), что TCP не умеет. Broadcast используется в DHCP-запросах; multicast — в протоколах маршрутизации OSPF и PIM для рассылки обновлений маршрутов.

История

UDP разработал Дэвид П. Рид в 1980 году как облегчённую альтернативу TCP для случаев, где задержка важнее надёжности. RFC 768 занимает всего 3 страницы — один из самых коротких RFC в стеке IP. В 1988 году Van Jacobson предложил алгоритмы управления перегрузкой для TCP, но для UDP ничего аналогичного не появилось: приложения сами решают, как реагировать на потери.

Где используется UDP

  • DNS — запросы до 512 байт идут по UDP/53; крупные ответы (DNSSEC, зонные передачи) переключаются на TCP.
  • QUIC / HTTP/3QUIC реализует надёжную доставку поверх UDP, обходя ограничения TCP на уровне ядра ОС.
  • VoIP и видеоконференции — Zoom, Teams, WebRTC используют UDP/RTP для минимальной задержки.
  • Онлайн-игры — игровые серверы обновляют позиции объектов 30–60 раз в секунду; потеря одного пакета менее критична, чем задержка ретрансмиссии.
  • TFTP и SNMP — простые служебные протоколы, где надёжность обеспечивается логикой приложения.

UDP в контексте хостинга

На серверах VDS и выделенных серверах UDP-трафик используется VPN-протоколами (WireGuard работает только на UDP/51820, OpenVPN по умолчанию — UDP/1194). Атаки UDP Flood — одна из форм DDoS: злоумышленник отправляет миллионы датаграмм на случайные порты, вынуждая сервер генерировать ICMP-ответы «Port Unreachable». Для защиты провайдеры применяют rate limiting и anycast-сети.

Брандмауэры на Linux-серверах (iptables, nftables) обрабатывают UDP stateless — каждый пакет проверяется отдельно, что снижает нагрузку по сравнению с отслеживанием TCP-сессий через conntrack.

Отличие UDP от TCP

TCP гарантирует порядок байтов, повторяет потерянные сегменты и управляет скоростью через окно перегрузки. UDP не делает ничего из этого — он быстрее и проще, но требует, чтобы приложение само обрабатывало потери. QUIC, появившийся в 2018 году, фактически реализует TCP-подобные гарантии поверх UDP, получая при этом преимущества в виде 0-RTT handshake и мультиплексирования потоков.

Другие термины