TCP проверяет, что каждый пакет дошёл, а UDP просто отправляет данные и идёт дальше
TCP (Transmission Control Protocol) и UDP (User Datagram Protocol) — два способа, которыми приложение передаёт данные в интернет: TCP подтверждает доставку и сохраняет порядок пакетов, а UDP отправляет каждый пакет один раз и ничего не проверяет.
Оба протокола работают на транспортном уровне, на один шаг выше IP. IP доставляет пакет на нужное устройство, а TCP или UDP — к нужному приложению на этом устройстве, и они же определяют, что делать, если что-то потерялось по пути.
На наш взгляд, проще всего представить это как телефонный звонок и открытку. TCP — это звонок: сначала оба собеседника здороваются, а всё, что собеседник не расслышал, вы повторяете. UDP — это стопка открыток: дёшево, быстро, и никто не сообщит, если одна из них выпала из грузовика.

- 20–60 байт
- Заголовок TCPрастёт при добавлении опций
- 8 байт
- Заголовок UDPвсегда одного размера
- 3 сообщения
- Рукопожатие TCPSYN, SYN-ACK, ACK
TCP устанавливает соединение с помощью трёхэтапного рукопожатия, а UDP обходится без него
TCP работает с установлением соединения: данные не передаются, пока стороны не обменяются тремя короткими сообщениями, а в конце соединение закрывается ещё одним обменом.
UDP работает без установки соединения. Первый же пакет — это уже сами данные. Нет ни подготовки, ни завершения, и ни одна из сторон не хранит состояние между пакетами. Поэтому UDP может отправить один пакет сразу многим получателям, а TCP так не умеет.
SYN
Ваше устройство отправляет серверу сообщение синхронизации: «Хочу начать обмен, вот мой начальный порядковый номер».
SYN-ACK
Сервер отвечает сообщением синхронизации с подтверждением: «Принято, вот мой номер».
ACK
Ваше устройство отправляет подтверждение. Только после этого TCP начинает передавать сами данные.
FIN и ACK для закрытия
Когда одна из сторон закончила передачу, она отправляет FIN, другая подтверждает его, а затем то же самое происходит в обратном порядке. Так выглядит четырёхэтапное закрытие соединения.
TCP повторно отправляет потерянные пакеты и сохраняет их порядок, а UDP оставляет пропуск
TCP гарантирует, что каждый байт придёт один раз и в правильном порядке: для этого он нумерует пакеты и ждёт подтверждений. В UDP есть контрольная сумма, чтобы заметить повреждённый пакет, но после этого он просто отбрасывает его.
Если подтверждение не приходит, TCP отправляет пакет заново. Он также снижает скорость, когда сеть выглядит перегруженной (управление перегрузкой) и когда получатель не успевает принимать данные (управление потоком). Для приложения TCP выглядит как один непрерывный поток байтов.
UDP ничего этого не делает. Каждый пакет — отдельное сообщение. Если пакет 7 приходит после пакета 8 или не приходит вовсе, приложение получает то, что дошло, и должно справляться с этим само. Для голосового звонка это лёгкий треск, а для банковского перевода — серьёзная проблема, поэтому банки не используют чистый UDP.
UDP быстрее, потому что его заголовок занимает 8 байт и он ничего не ждёт
UDP быстрее по двум причинам: заголовок у него занимает 8 байт, а у TCP — от 20 до 60, и он не делает пауз на рукопожатия, подтверждения и повторную отправку.
На стабильном проводном соединении разница на один пакет невелика. В Wi-Fi с потерями она заметна: TCP останавливается, чтобы восстановить каждый потерянный пакет, а UDP продолжает передачу. В этом и состоит суть сравнения скорости TCP и UDP: тот же канал, но разное поведение при потерях.
| TCP | UDP | |
|---|---|---|
| Соединение | Сначала трёхстороннее рукопожатие | Нет, первый же пакет содержит данные |
| Доставка | Гарантированная, с подтверждением | По мере возможности, без подтверждения |
| Потерянные пакеты | Отправляются повторно | Отбрасываются |
| Порядок | Сохраняется | Не гарантирован |
| Управление потоком и перегрузкой | Да | Нет |
| Размер заголовка | 20–60 байт | 8 байт |
| Модель данных | Непрерывный поток байтов | Отдельные сообщения |
| Широковещательная и многоадресная рассылка | Нет | Да |
| Типичные приложения | HTTP, HTTPS, FTP, SMTP | DNS, DHCP, VoIP, потоковое видео и аудио |
Номера портов у TCP и UDP одинаковые, различается сам протокол
Порт — это число, которое показывает принимающему устройству, для какого приложения предназначен пакет. TCP и UDP ведут собственные списки портов, поэтому TCP-порт 80 и UDP-порт 80 — это разные двери.
Поэтому в правиле для роутера нужно указывать и порт, и протокол. Некоторые службы открывают один и тот же номер для обоих протоколов: например, DNS отвечает по UDP на обычные запросы и по TCP, когда ответ большой. В заголовке IP есть отдельный номер протокола: по нему принимающее устройство понимает, передать пакет в TCP или в UDP, ещё до того как будет проверен порт.
Работает поверх TCP
- Веб-страницы (HTTP и HTTPS)
- Отправка электронной почты (SMTP)
- Передача файлов (FTP)
- Всё, где должен дойти каждый байт
Работает по UDP
- DNS-запросы
- DHCP (получение IP-адреса)
- Голосовые и видеозвонки (VoIP)
- Прямые трансляции и большинство онлайн-игр
Выбирайте UDP, когда опоздавший пакет бесполезен, и TCP, когда потеря пакета недопустима
Выбирайте UDP для всего, что происходит в реальном времени: пока TCP повторно отправит потерянный голосовой пакет, разговор уже уйдёт вперёд. Выбирайте TCP для всего, что должно прийти целиком, например для веб-страницы, загрузки или письма.
Игры — самый наглядный пример. Данные о положении игрока 200 мс давности уже никому не нужны, поэтому игровые движки передают их по UDP и просто берут самый свежий пакет. Видеозвонки работают так же, поэтому вы слышите короткий сбой, а не долгое зависание.
Загрузки, входы в аккаунт и платежи устроены иначе. Один потерянный байт портит файл или ломает вход, поэтому единственный разумный выбор — более медленная, но проверяемая доставка TCP.
VPN: UDP или TCP. По умолчанию UDP, а там, где другие VPN не справляются, маршрут по типу TCP
Большинство VPN-туннелей работают по UDP: он быстрее, а трафик внутри туннеля и так идёт по TCP там, где это нужно. Туннель в режиме TCP — чаще всего запасной вариант для сетей, которые пропускают только трафик веб-типа.
Запускать TCP внутри TCP-туннеля медленно: оба уровня заново отправляют один и тот же потерянный пакет и одновременно снижают скорость. Это тот самый выбор «OpenVPN UDP или TCP» в старых приложениях, где нужно выбирать самому. UDP — для скорости, TCP — когда UDP не подключается.
Teal VPN от Fxolio LLC предлагает бесплатный тариф (500 МБ в день) и тариф Pro, а также приложения для Android, Windows, Mac, Linux, Android TV и Chromebook. Приложение не просит выбирать между TCP и UDP. Teal Secure включён для каждого подключения и на каждом тарифе: трафик маскируется, а если сеть закрывает один маршрут, приложение само пробует другие. Ни один VPN не гарантирует подключение в любой сети, поэтому перед поездкой проверьте местные правила. После подключения тест утечек Teal VPN на tealvpn.com/ip-leak-test покажет, какие DNS-серверы отвечают на ваши UDP-запросы.

HTTP работает поверх TCP, а ICMP — это ни TCP, ни UDP
HTTP — не конкурент TCP или UDP, а уровень над ними: классический HTTP и HTTPS работают поверх TCP, а новый HTTP/3 — поверх UDP, с собственной надёжностью доставки, построенной сверху.
ICMP стоит особняком. Он находится рядом с TCP и UDP, а не над ними, совсем не использует порты и передаёт служебные сообщения, например те, которые нужны ping и traceroute. Так что «tcp vs udp vs icmp» — это на самом деле три разные задачи: надёжно доставить данные, быстро доставить данные и сообщить о состоянии самой сети.
Читайте также
Источники
- GeeksforGeeks: TCP и UDP
- IPCisco: TCP и UDP, порты и заголовки
- AVG: TCP и UDP — основные различия и применение
Нужна помощь с Teal VPN? Напишите в поддержку.
Вопросы
UDP быстрее, чем TCP?
Да. У UDP заголовок всего 8 байт, нет установления соединения и повторной отправки пакетов, поэтому служебных данных меньше, а передача не делает пауз. На чистом канале разница небольшая, а на канале с потерями — заметная.
Что безопаснее, TCP или UDP?
Ни один из них сам ничего не шифрует. Защиту обеспечивает уровень выше, например HTTPS поверх TCP или VPN-туннель поверх UDP. TCP сложнее подделать из-за установления соединения, но это часть надёжной доставки, а не шифрование.
VPN использует TCP или UDP?
Большинство VPN-протоколов по умолчанию используют UDP ради скорости. В некоторых приложениях есть режим TCP для сетей, где UDP ограничен. Приложение Teal VPN само выбирает маршрут и переключается, если один перестаёт работать (по состоянию на ноябрь 2026 года).
OpenVPN: UDP или TCP — что выбрать?
UDP, если только он не подключается. Режим TCP работает в более строгих сетях, но медленнее: когда пакет теряется, TCP внутри TCP удваивает число повторных отправок.
Можно ли передавать файлы по UDP?
Только если приложение добавляет собственные проверки поверх протокола. Обычный UDP отбрасывает потерянные пакеты, и файл придёт с пропусками. Поэтому FTP и большинство программ для загрузки используют TCP.
Используют ли TCP и UDP одни и те же порты?
Диапазон номеров портов одинаковый, но у каждого протокола свой набор, поэтому TCP-порт 80 и UDP-порт 80 — это разные порты. В правиле для роутера нужно указывать и номер, и протокол.
Почему игры используют UDP?
Потому что устаревшие данные о положении игрока бесполезны. UDP сразу доставляет самый свежий пакет и не останавливается, чтобы повторно отправить предыдущий, поэтому игра остаётся отзывчивой.