• Blog
  • Что такое UDP и как работает UDP?

Что такое UDP и как работает UDP?

Oct 19, 2023   |   3 мин.
Что такое UDP и как работает UDP?

Содержание

Что такое протокол UDP?

UDP (Протокол пользовательских датаграмм) - это долгосрочный протокол, используемый с протоколом IP для отправки данных, где скорость передачи и эффективность важнее безопасности и надежности. UDP использует простую, безсоединительную модель коммуникации с минимальными механизмами протокола. UDP использует контрольные суммы для обеспечения целостности данных и номера портов для различения между различными приложениями в отправителе и получателе данных.

Каковы преимущества и недостатки протокола UDP?

Преимущества

Быстрая скорость передачи

UDP не имеет рукопожатия, подтверждения, повторной передачи, контроля за перегрузкой и других механизмов TCP. Вместо этого UDP является безсостоятельным протоколом передачи данных, который работает быстрее.

Заголовок короче

Заголовок TCP составляет 20 байт, а заголовок UDP - 8 байт.

UDP не имеет контроля за перегрузкой

Слой приложения может лучше контролировать отправку данных. Время отправки и контроль за перегрузкой в сети не будут влиять на скорость отправки хоста. Некоторые приложения реального времени требуют отправки с постоянной скоростью, которая может терпеть потерю данных, но не может позволить значительную задержку (например, видео в реальном времени, прямая трансляция и т. д.).

UDP - это протокол, ориентированный на сообщения.

Режим передачи по сообщениям определяет, что данные UDP отправляются по частям. Если прикладной уровень отправляет UDP сообщение одинаковой длины, UDP отправляет сообщение за один раз. Поэтому приложению необходимо выбрать размер сообщения.

UDP используется для передачи меньшего объема данных одновременно.

UDP часто используется в мультимедийных приложениях (таких как IP-телефония, видеоконференции в режиме реального времени, потоковое медиа и т. д.), но надежная передача данных для них не является необходимой. Контроль за перегрузкой TCP приведет к значительной задержке, а UDP будет использовать однократную передачу меньшего объема сетевых данных.

UDP поддерживает различные режимы связи.

Он поддерживает одно-к-одному одно-к-всему и одно-к-нескольким интерактивным коммуникациям.

Конс

UDP - это протокол без установления соединения.

Отправитель и получатель не устанавливают соединение перед передачей данных, что отличается от процесса трехстороннего рукопожатия TCP для установления отношений. Вместо этого, при передаче данных ему нужно только получить данные из приложения и отправить их вне очереди другой стороне, которая их получает.

UDP - это ненадежный протокол.

Поскольку соединение не устанавливается до передачи информации, UDP часто теряет пакеты во время передачи, что делает его ненадежным протоколом. Если сообщение потеряно, через несколько секунд будет отправлено новое сообщение.

Потерянные данные

Не используйте UDP в качестве транспортного протокола для ненадежных сетей. UDP не является протоколом типа "соединение". Поэтому, если вам не нужно устанавливать соединение, вы можете напрямую отправлять сообщения, что может привести к серьезной потере пакетов.

Однако он потребляет меньше ресурсов, имеет более быструю скорость обработки и более подходит для передачи аудио, видео и общих данных. Поэтому, даже если один или два пакета потеряны, это не приведет к серьезным последствиям для полученных результатов.

Когда использовать протокол UDP?

Пакеты UDP обладают низкой надежностью, так как они не имеют гарантии надежности, гарантии последовательности или полей управления потоком. Однако, благодаря меньшему количеству опций управления в протоколе UDP, задержка при передаче данных незначительна, а эффективность передачи данных высока. Поэтому он подходит для приложений, которым не требуется высокая надежность или которые могут гарантировать надежность, такие как DNS, TFTP и SNMP.