Протокол UDP

Протокол UDP (User datagram protocol) — один из двух популярных протоколов, использующихся на транспортном уровне модели OSI (и стека протоколов TCP/IP), наряду с протоколом TCP. Для получения более полного представления о транспортном уровне, следует начать изучение его общих функций с основной статьи «Транспортный уровень OSI», кроме того, для закрепления отличий, следует прочитать статью о TCP. В данном же тексте речь пойдёт исключительно о UDP.

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

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

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

Структура заголовка UDP датаграммы очень простая и имеет следующий вид:

Заголовк UDP датаграмы

  • Source port и Destination port — это соответственно номера портов получателя и отправителя, идентифицирующие приложений на отправляющем и принимающем узлах.
  • Length — длина всей датаграмы (включая заголовок и полезные данные).
  • Checksumm — контрольная сумма.
  • В разделе данных содержатся собственно данные, полученные от протокола уровня приложений, либо их кусок, если данные пришлось разбивать.
Тэги: 

Добавить комментарий