Чем TCP отличается от UDP?
Модели OSI и TCP/IP
TCP — надёжный протокол с установкой соединения, гарантией доставки и порядка байт; UDP — лёгкий протокол дейтаграмм без гарантий: быстрее, но пакеты могут теряться и приходить вразнобой.
Что даёт TCP
- Установка соединения (handshake), подтверждения и ретрансляции, нумерация байт.
- Управление потоком (окно получателя) и контроль перегрузки.
- Цена: задержки на handshake и head-of-line blocking — один потерянный сегмент тормозит всю очередь.
Что даёт UDP
- «Отправил и забыл»: нет соединения, подтверждений и переупорядочивания.
- Минимальные накладные расходы и предсказуемая задержка.
Когда что выбирать
- TCP: HTTP, почта, файлы, SSH — всё, где потеря недопустима.
- UDP: DNS-запросы, VoIP, стриминг, онлайн-игры; QUIC (HTTP/3) строит надёжность поверх UDP самостоятельно.
Коротко для собеседования
TCP платит задержкой за гарантии: рукопожатие, подтверждения и блокировка очереди при потерях. UDP берут, когда свежесть данных важнее полноты — звонки, игры, DNS, а надёжность при необходимости достраивают сверху, как это сделал QUIC.