Представь, что интернет - это огромный город, где миллионы компьютеров и телефонов всё время обмениваются «сообщениями». Чтобы это не превратилось в хаос, данные передаются по правилам - протоколам.
Два из самых важных протоколов для нас:
TCP
UDP
Их постоянно спрашивают в настройках роутера, фаервола, игры или сервера: «Выберите протокол: TCP или UDP». Давай разберёмся по‑человечески, что это вообще такое и чем они отличаются.
Немного базовой картины: кто за что отвечает
Представь, что ты отправляешь посылку другу в другой город.
IP‑адрес - это адрес дома (улица, дом, квартира).
Порт - это как номер комнаты внутри дома или отдел конкретного человека (например, «отдел доставки»).
TCP/UDP - это способ, как именно ты отправляешь посылку:
с квитанцией, отслеживанием и подписью (надёжный, но дольше);
или быстро и дёшево, без гарантий (быстро, но рискованно).
IP доставляет «куда» (на нужный компьютер), TCP/UDP - «как» и «какому приложению» (какой программе на этом компьютере).
TCP: как дорогая посылка с уведомлением и подписью
Как это работает по смыслу
TCP - это протокол, который следит за надёжностью.
Аналогия:
Ты отправляешь важный документ курьерской службой:
курьер звонит получателю;
у вас есть номер отслеживания;
получатель расписывается при получении;
если что-то потерялось — служба будет разбираться и доставит ещё раз.
То же самое делает TCP с данными:
сначала устанавливается соединение ("привет, ты на связи?");
данные отправляются по кусочкам;
каждый кусочек подтверждается ("я получил");
если кусок не дошёл - он отправляется снова;
в конце соединение аккуратно закрывается.
Где используется TCP
TCP нужен там, где:
нельзя потерять ни байта информации;
важен строгий порядок данных.
Примеры:
сайты и веб‑приложения (HTTP/HTTPS);
почта (SMTP, IMAP, POP3);
удалённый доступ (SSH, RDP);
загрузка файлов (FTP, SFTP и т.д.).
Если страница сайта при загрузке «поменяет местами куски» или исчезнет часть HTML - всё развалится. Поэтому TCP следит за порядком и целостностью.
Плюсы и минусы TCP простыми словами
Плюсы TCP:
данные приходят полностью;
данные приходят в правильном порядке;
если что-то потерялось - автоматически отправляется заново;
удобно для «серьёзных» вещей: сайты, файлы, пароли.
Минусы TCP:
чуть дольше (есть лишние шаги: установление соединения, подтверждения);
больше «служебных» данных - немного тяжелее по сети;
для голосового чата или игры лишние задержки могут быть заметны.
UDP: как открытка без гарантии доставки
Как это работает по смыслу
UDP - протокол «отправил и забыл».
Аналогия:
Ты отправляешь другу открытку:
нет отслеживания;
нет подписи;
если открытка потерялась — никто её не перешлёт ещё раз;
иногда приходит, иногда нет.
UDP делает примерно это:
просто отправляет пакет данных на нужный адрес и порт;
не проверяет, дошло ли;
не ждёт подтверждений;
не восстанавливает порядок пакетов.
Где используется UDP
UDP берут там, где скорость важнее идеальной точности.
Примеры:
онлайн‑игры;
голосовой чат (VoIP);
видеозвонки и стримы;
DNS‑запросы ("какой IP у этого домена?").
Если в видеозвонке потеряется один‑два кадра — это почти незаметно. Если задержка будет большой - уже неприятно. Поэтому там чаще выбирают UDP.
Плюсы и минусы UDP простыми словами
Плюсы UDP:
очень быстрый;
мало «служебных» данных;
минимальные задержки.
Минусы UDP:
нет гарантии, что данные дошли;
нет гарантии, что пришли по порядку;
если нужно исправлять ошибки - это делает уже само приложение.
TCP vs UDP: как запомнить разницу
Запомни простой образ:
TCP - как разговор по телефону с подтверждением.
«Алло, слышно?» - «Да, слышно».
Если связь прерывается, вы понимаете это оба.
UDP - как крик в толпе или сообщение в бутылке.
Ты кричишь — кто‑то может услышать, а может и нет.
Главное, что ты кричишь быстро, без ожидания ответа.
Ещё проще - в табличке:
| Свойство | TCP | UDP |
|---|---|---|
| Устанавливает соединение | Да | Нет |
| Гарантия доставки | Есть | Нет |
| Порядок данных | Гарантируется | Не гарантируется |
| Скорость | Ниже (из‑за контроля) | Выше (меньше проверок) |
| Где используется | Сайты, почта, файлы, SSH | Игры, звонки, видео, DNS |
Зачем знать про TCP и UDP
Когда ты настраиваешь:
роутер,
сервер,
игру,
VPN,
фаервол,
ты часто видишь: «Разрешить порт 443/TCP» или «Открыть 1194/UDP».
Зная разницу:
ты понимаешь, почему для HTTPS всегда TCP;
почему многие VPN и игры хотят именно UDP;
когда нельзя «просто поменять TCP на UDP» и наоборот.
Пример 1. Веб‑сервер
Сайт на Nginx/Apache → всегда работает через HTTP/HTTPS (TCP).
Поэтому в правилах фаервола ты открываешь:
порт 80 TCP;
порт 443 TCP.
Пример 2. Игровой сервер
Большинство онлайн‑игр используют UDP, чтобы было меньше задержек.
Поэтому в инструкции к игре часто пишут: «Откройте такой‑то порт UDP». Если открыть этот порт только по TCP — игра всё равно не заработает.
Пример 3. DNS
DNS‑запросы обычно идут по UDP на порт 53.
Если на фаерволе закрыть UDP 53 - интернет «как будто есть, но сайты не открываются», потому что имена не превращаются в IP‑адреса.
Немного практики в Linux (очень простая)
Если ты уже работаешь с Linux‑сервером, полезно уметь посмотреть, какие порты и протоколы он использует.
Посмотреть, что слушает сервер
ss -tunlp
Расшифровка:
-t- TCP;-u- UDP;-n- показывать номера портов, а не имена сервисов;-l- показывать только «слушающие» порты;-p- показать, какой процесс использует порт.
Ты увидишь строки вида:
tcp LISTEN 0 128 0.0.0.0:22— SSH по TCP, порт 22;udp 0 0 0.0.0.0:1194— VPN по UDP, порт 1194.
Это помогает понять:
что уже запущено;
надо ли открывать порты на фаерволе.
Главные мысли, которые стоит унести с собой
TCP и UDP — это способы доставки данных между приложениями.
TCP - надёжный, но более «тяжёлый» и медленный. Отлично подходит для сайтов, файлов и всего важного.
UDP - быстрый и лёгкий, но без гарантий. Идеален для игр, звонков и стримов.
В настройках сети и фаервола важно указать и порт, и протокол — просто «открыть порт» может быть недостаточно.
Начинай думать так: «Насколько мне важна надёжность? Насколько критична задержка?» - и уже от этого выбирай TCP или UDP.
Когда ты это понимаешь, многие «магические» настройки в роутерах, VPN и играх перестают быть страшными за ними появляется логика. Если хочешь, можем следующей статьёй разобрать: как на практике настроить фаервол (ufw/iptables) для разных типов трафика с готовыми командами и комментариями.