UDP
Материал из Википедии — свободной энциклопедии
Название: | User Datagram Protocol |
---|---|
Уровень (по модели OSI): | Транспортный |
Семейство: | TCP/IP (иногда называют UDP/IP) |
Создан в: | {{{Создан}}} г. |
Порт/ID: | 17 (в IP) |
Назначение протокола: | {{{Назначение}}} |
Спецификация: | RFC 768 / STD 6 |
Основные реализации (клиенты): | Ядро Windows, Linux |
Основные реализации (серверы): | Ядро Windows, Linux |
Расширяемость: | нету |
Основные расширения: | {{{Основные расширения}}} |
UDP (англ. User Datagram Protocol — протокол пользовательских датаграмм) — это сетевой протокол для передачи данных в сетях IP. Он является одним из самых простых протоколов транспортного уровня модели OSI. Его IP-идентификатор — 17.
В отличие от TCP, UDP не гарантирует доставку пакета, поэтому аббревиатуру иногда расшифровывают как «Unreliable Datagram Protocol» (протокол ненадёжных датаграмм). Это позволяет ему гораздо быстрее и эффективнее доставлять данные для приложений, которым не требуется большая пропускная способность линий связи, либо требуется малое время доставки данных. В отличие от TCP, UDP используется для широковещательной и многоадресной рассылки.
Содержание |
[править] Порты
Для взаимодействия сетевых приложений протокол UDP использует 16-ти битные порты, которые могут принимать значения от 0 до 65535. Порт 0 является зарезервированным, но может использоватся как порт источника, если приложение не ожидает ответных данных.
Порты с 1 по 1023 яляются системными и фиксированными, во многих ОС привязка к ним требует повышенных привилегий приложения.
Порты с 1024 по 49151 — зарегистрированные.
Порты с 49152 по 65535 — свободно используемые и временные. Используются клиентскими приложениями для связи с серверами.
[править] Формат пакета
Заголовок UDP содержит 4 поля, 2 из которых («порт отправителя» и «контрольная сумма») опциональны. Поля «порт отправителя» и «порт получателя», по 16 бит, определяющие процесс, которому предназначен данный пакет. Поле «размер заголовка» в октетах, минимально 8. И поле «контрольная сумма» длиной 16 бит.
+ | Биты 0—15 | 16—31 | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Порт отправителя | Порт получателя | ||||||||||||||||||||||||||||||
32 | Размер | Контрольная сумма | ||||||||||||||||||||||||||||||
64 | Данные |
Недостаточная надёжность протокола может выражаться как в потере отдельных пакетов, так и в их дублировании. UDP используется при передаче потокового видео, игр реального времени, а также некоторых других типов данных.
Если приложению требуется большая надёжность, то используется протокол TCP или SCTP.
[править] Использование
UDP используется в следующих протоколах: