UDP

UDP (англ. User Datagram Protocol — протокол пользовательских датаграмм) — один из ключевых элементов набора сетевых протоколов для Интернета. С UDP компьютерные приложения могут посылать сообщения (в данном случае называемые датаграммами) другим хостам по IP-сети без необходимости предварительного сообщения для установки специальных каналов передачи или путей данных. Протокол был разработан Дэвидом П. Ридом в 1980 году и официально определён в RFC 768.

UDP использует простую модель передачи, без неявных «рукопожатий» для обеспечения надёжности, упорядочивания или целостности данных. Таким образом, UDP предоставляет ненадёжный сервис, и датаграммы могут прийти не по порядку, дублироваться или вовсе исчезнуть без следа. UDP подразумевает, что проверка ошибок и исправление либо не нужны, либо должны исполняться в приложении. Чувствительные ко времени приложения часто используют UDP, так как предпочтительнее сбросить пакеты, чем ждать задержавшиеся пакеты, что может оказаться невозможным в системах реального времени. При необходимости исправления ошибок на сетевом уровне интерфейса приложение может задействовать TCP или SCTP, разработанные для этой цели.

Существуют общие задачи транспортного уровня, с которыми справляется как TCP, так и UDP. Основных задач собственно две: сегментация данных, приходящих с уровня приложений и адресация приложений(передающего и принимающего) при помощи портов. Помимо этого, TCP обеспечивает много дополнительных функций, таких как надёжная доставка и установка соединений. UDP — не обеспечивает ничего этого, его основное назначение — это максимально быстрая доставка, то есть UDP — это наиболее тонкая возможная прослойка между сетевым уровнем и уровнем приложений. UDP умеет:

  1. Сегментировать данные, полученные с уровня приложений.
  2. Адресовать работающие приложений при помощи портов.

Никаких сессий, плавающего размера окна, упорядочивания датаграмм в UDP нет. Приложениям, использующим UDP требуется быстрая доставка данных. Типичный пример — IP телефония. Если датаграмма UDP придёт позже чем она нужна для вставки в речь, она уже не нужна. Нет никакого смысла пересылать её в этом случае. Поэтому идеальным для телефонии является UDP. Так же UDP используется, например, в протоколах TFTP, DNS, DHCP, SNMP и другими.

Природа UDP как протокола без сохранения состояния также полезна для серверов, отвечающих на небольшие запросы от огромного числа клиентов, например DNS и потоковые мультимедийные приложения вроде IPTVVoIP, протоколы туннелирования IP и многие онлайн-игры.

 

 

 

Обсуждение закрыто.