ProximaMPProximaMP

Что такое UDP-протокол простыми словами

UDP — протокол, на котором работают голосовые чаты, онлайн-игры и видеозвонки. Он ничего не гарантирует: не подтверждает доставку, не восстанавливает порядок и не просит переслать потерянное. Разберём, что такое UDP простыми словами и почему «ненадёжный» здесь — достоинство, а не изъян.

Что делает UDP

Почти ничего — и в этом вся суть. UDP (User Datagram Protocol) берёт твои данные, приклеивает к ним адрес и порт, отправляет и забывает.

Он не делает ничего из того, чем занят TCP:

  • не устанавливает соединение — можно слать сразу;
  • не ждёт подтверждения, что пакет дошёл;
  • не отправляет потерянное заново;
  • не выстраивает пакеты по порядку;
  • не притормаживает, когда сеть перегружена.

Пакет ушёл — и дальше как повезёт. Дойдёт, не дойдёт, придёт вторым вместо первого — UDP это не волнует.

Почему это удобно

Потому что ожидание бывает хуже потери.

Представь голосовой звонок. Один пакет с 20 миллисекундами звука потерялся. У TCP есть только один путь: остановить поток и ждать повтора. Собеседник в это время молчит, а когда пакет наконец придёт, он уже никому не нужен — разговор ушёл вперёд. Результат — заикание и растущая задержка.

UDP просто едет дальше. Потерянные 20 миллисекунд ты либо не заметишь, либо услышишь как мгновенный щелчок. Звук остаётся живым.

Та же логика в играх. Позиция игрока, которая опоздала на полсекунды, бесполезна — за это время пришли три новые. Лучше потерять устаревший пакет, чем задержать актуальный.

Что работает по UDP

СервисПорт
CS 1.6, Day of Defeat, Condition Zero, Sven Co-op27015
Valheim2456–2458
Rust28015
Minecraft Bedrock Edition19132
TeamSpeak 3 (голос)9987
Mumble64738
DNS (разрешение доменных имён)53
WireGuard51820

Обрати внимание: Minecraft Java Edition в этом списке нет — он работает по TCP. А вот Bedrock — по UDP. Одна игра, разные издания, разные протоколы.

Кто отвечает за надёжность, если не UDP

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

Смысл в том, что UDP не навязывает решение, а отдаёт его приложению.

Что такое UDP-порт

То же, что и у TCP: номер от 1 до 65535, по которому операционная система понимает, какой программе отдать пришедшие данные. Нумерация у протоколов независимая — порт 27015 UDP и порт 27015 TCP это два разных порта, их могут занимать разные программы. Серверы GoldSrc, кстати, так и делают: игра идёт по UDP 27015, а RCON — по TCP 27015.

Частые вопросы

UDP хуже TCP? Нет, он другой. Для файла TCP лучше, для голоса — UDP.

Почему UDP называют ненадёжным? Это термин, а не оценка: протокол не даёт гарантий доставки. К качеству связи отношения не имеет.

UDP быстрее? Не по скорости передачи, а по задержке: он не тратит время на рукопожатие, подтверждения и ожидание повторов.

Почему проброс UDP-портов сложнее? У UDP нет соединения, поэтому роутеру не за что зацепиться, чтобы понять, кому вернуть ответ. NAT выкручивается таймерами, и работает это заметно капризнее, чем с TCP.

Хочешь открыть UDP-порт наружу?

Туннель избавляет от проброса портов и белого IP целиком — как это делается, разобрано в гайде Как открыть UDP-порт через туннель.

Ещё по теме: что такое TCP · TCP или UDP: в чём разница

Скачать ProximaClient для Windows →

Все статьи