TCP и UDP: в чём разница и почему это важно для VPN
Любое соединение в интернете идёт либо по TCP, либо по UDP. Разница между ними объясняет половину странностей, которые вы наблюдаете при работе VPN.
TCP: доставка с подтверждением
TCP ведёт себя как заказное письмо с уведомлением. Прежде чем передавать данные, стороны устанавливают соединение — обмениваются тремя пакетами, договариваясь о начальных номерах. Дальше каждый отправленный кусок должен быть подтверждён.
Что это даёт:
- Гарантия доставки. Пакет потерялся — отправитель заметит отсутствие подтверждения и пошлёт заново
- Порядок. Данные придут именно в той последовательности, в какой их отправили
- Контроль перегрузки. При потерях TCP сам снижает скорость, чтобы не добивать канал
Цена — задержки. На установку соединения уходит целый круг туда-обратно, а каждая потеря тормозит весь поток: следующие пакеты ждут, пока доедет потерянный. Это называется head-of-line blocking.
Попробуйте бесплатно 3 дня
Без карты и автосписаний. Регистрация на сайте занимает минуту — ссылка подписки появится в личном кабинете сразу.
UDP: отправил и забыл
UDP — это открытка. Никакого установления соединения, никаких подтверждений, никакого контроля порядка. Отправили пакет — дальше как получится.
Звучит ненадёжно, но для многих задач это именно то, что нужно:
- Голос и видеозвонки. Лучше потерять один кадр, чем ждать его повтора и получить рассинхрон
- Онлайн-игры. Устаревшая координата игрока бесполезна, нужна свежая
- DNS. Запрос и ответ помещаются в один пакет, устанавливать соединение дороже
| TCP | UDP | |
|---|---|---|
| Установка соединения | Да, 3 пакета | Нет |
| Гарантия доставки | Есть | Нет |
| Порядок пакетов | Сохраняется | Не гарантирован |
| Накладные расходы | 20 байт заголовка | 8 байт |
| Поведение при потерях | Замедляется | Игнорирует |
Как это касается VPN
WireGuard работает поверх UDP — отсюда его скорость и мгновенное переподключение при смене сети. Но у этого есть обратная сторона: UDP-трафик проще ограничить целиком, и многие корпоративные сети режут его по умолчанию. Плюс системы фильтрации охотнее блокируют UDP, потому что его доля в обычном пользовательском трафике невелика.
VLESS с WebSocket идёт поверх TCP — медленнее на бумаге, зато проходит везде, где работает обычный веб.
Проблема TCP внутри TCP
Отдельный эффект, о котором стоит знать. Если VPN работает поверх TCP, а вы внутри туннеля открываете сайт (тоже TCP), получается два механизма контроля перегрузки один над другим. При потерях они начинают мешать друг другу: внешний замедляется, внутренний тоже, и скорость падает сильнее, чем должна.
На хорошем канале это незаметно. На плохом мобильном интернете — очень даже.
Практический вывод
Если канал стабильный и UDP не режут — берите WireGuard, он будет быстрее. Если интернет капризный или сеть фильтрует — VLESS поверх TCP окажется надёжнее, пусть и с чуть большей задержкой.
Поэтому мы и отдаём в подписке оба варианта: переключиться можно за секунды, не перенастраивая ничего.
Нужен VPN, который не отваливается?
49 конфигураций в 11 странах, три протокола на выбор. Заведите аккаунт на сайте и проверьте три дня бесплатно.
Читайте также
Anycast, CDN и маршрутизация: почему один адрес ведёт в разные места
Как работает раздача контента по всему миру, что такое Anycast и почему через VPN некоторые сайты вд…
СетиЧто происходит за ту секунду, пока VPN подключается
Пошаговый разбор: от нажатия кнопки до первого загруженного байта. DNS, рукопожатие, аутентификация …
О сервисеКак мы узнаём о проблеме раньше, чем вы напишете
Что именно проверяет наш мониторинг, почему простого пинга недостаточно и как устроена реакция на бл…