---
title: Протоколы
seo:
  description: >-
    Тема «Протоколы» для собеседования C++ Developer. Какая разница между TCP и
    UDP? Для чего нужен такой ненадежный UDP-протокол?
  title: Протоколы — C++ Developer
---

[Все темы C++ Developer](/prep/c-developer)

## <strong>Какая разница между</strong> <code>TCP</code> <strong>и</strong> <code>UDP</code><strong>?</strong> [#q-14bee738d69b8121908aebdade43f852]

<strong>Между протоколами</strong> <code>TCP</code> <strong>и</strong>
<code>UDP</code> <strong>есть существенная разница&#58;</strong>

#### <code>TCP</code>&#58;

- Надёжный поток байтов с контролем порядка и повторной передачей потерь. Соединение может завершиться ошибкой, поэтому доставка при любом сбое не гарантирована.

- <strong>Ориентированный на соединение</strong>&#58; Устанавливает соединение
  перед передачей данных.

- <strong>Контроль ошибок</strong>&#58; Восстанавливает потерянные данные и
  соблюдает порядок передачи.

#### <code>UDP</code>&#58;

- <strong>Ненадёжный</strong>&#58; Не гарантирует доставку данных.

- <strong>Без соединения</strong>&#58; Передаёт данные без установления
  соединения.

- <strong>Меньше накладных расходов</strong>&#58; Быстрее, подходит для
  приложений, где важна скорость, а не надёжность (например, видеостриминг).

:::note[Ссылки для изучения]

1. [TCP: надежный упорядоченный байтовый поток](https://www.opennet.ru/man.shtml?topic=tcp&category=7&russian=0)
1. [UDP: датаграммы без установления соединения](https://www.opennet.ru/man.shtml?topic=udp&category=7&russian=0)
   :::

---

## <strong>Для чего нужен такой ненадежный</strong> <code>UDP</code><strong>-протокол?</strong> [#q-14bee738d69b817e860ed2f7dd986a64]

<code>UDP</code>-протокол используется для приложений, где важна скорость и
минимальные задержки, а не надёжность, таких как видеостриминг, онлайн-игры и
голосовые вызовы.

:::note[Ссылки для изучения]

1. [TCP: надежный упорядоченный байтовый поток](https://www.opennet.ru/man.shtml?topic=tcp&category=7&russian=0)
1. [UDP: датаграммы без установления соединения](https://www.opennet.ru/man.shtml?topic=udp&category=7&russian=0)
   :::
