Протокол пользовательских дейтаграм UDP
Протокол пользовательских дейтаграмм UDP (User Datagram Protocol) не требует соединения и «ненадёжный», т.е. этот простой протокол передает пакеты без подтверждений и гарантированной доставки. Здесь совершенно отсутствует проверка правильности доставки дейтаграмм по назначению. Контроль ошибок и повторная передача выполняются протоколами более высокого уровня. UDP используется тогда, когда надежностные механизмы TCP не нужны. Например, для передачи данных через высоконадежную сеть.
Протокол UPD, так же как и TCP, использует номера портов (или сокетов) для передачи информации протоколам более высокого уровня - уровня приложений (табл.6.2).
Таблица 6.2
Номера портов | |||||||
Уровень приложений | F T P | T E L N E T | S M T P | D N S | T F T P | S N M P | |
Номера портов | |||||||
Транспортнй уровень | TCP | UDP |
Протокол UDP определяет множество приложений-приемников как порты протокола. Каждому приложению на компьютере, которое хочет принимать и посылать информацию, присвоен 16-разрядный номер, называемый портом этой программы. Есть два типа портов:
· обычный порт;
· порт с динамическими границами.
Номера обычных портов присваиваются широко используемым приложениям. Например, протокол передачи файлов (FTP) использует номер порта назначения 21. Порты с динамическими границами не имеют фиксированных номеров. Поэтому при обработке запроса приложения необходимо определить порт, который оно использует. Например, клиентский компьютер, запрашивающий FTP-сессию может первый раз получить номер порта 1026, а в следующий раз - 1252.
Протокол UDP разрешает клиентским приложениям, стоящим на машинах с разными IP-адресами использовать один и тот же номер порта. Пакеты UDP доставляются приложениям с соответствующим как IP-адресом, так и номером порта.
Дейтаграммы UDP заключаются в один или несколько IP-пакетов. IP-адрес позволяет отправить IP-пакеты нужному узлу. IP-программы извлекают из IP-пакета пакет UDP и передает его программе уровня UDP. А уже программы уровня UDP передают полученные данные в нужный порт.
Порт-источник | Порт-приемник | Длина | Контроль ная сумма | Данные | ||
Нет полей номера в последовательности и номера подтверждения | ||||||
Рисунок 6.6
Заголовок UDP имеет только четыре поля - номер порта-источника, номер порта-приемника, длины и контрольной суммы (рис. 6.6). Поле длины содержит длину заголовка UDP и данных. Поле контрольной суммы может не заполняться. Оно предназначено для проверки целостности пакета. Когда, все же, оно используется, контрольная сумма рассчитывается на основе как заголовка, так и данных.
Протокол UDP не посылает подтверждений. Эта функция оставленоа для более высокоуровневым протоколам.
Протокол UDP поддерживает широковещательные сообщения, благодаря чему один хост может общаться со многими.
Дата добавления: 2015-02-16; просмотров: 878;