backup: 2026-04-17 11:28

This commit is contained in:
Dmitry
2026-04-17 11:28:35 +03:00
commit 21a95ec314
653 changed files with 244637 additions and 0 deletions
@@ -0,0 +1,26 @@
# Networking — TCP vs UDP (one-screen)
**TCP** и **UDP** — основные протоколы транспортного уровня (L4) модели OSI.
Источник: [[01 Library/04 Networking/Протоколы/TCP vs UDP|TCP vs UDP]].
## TCP (Transmission Control Protocol)
- **Надёжный**, ориентирован на соединение.
- Перед передачей — **3way handshake**:
1) **SYN** — запрос на установку соединения
2) **SYN-ACK** — подтверждение
3) **ACK** — соединение установлено, можно передавать данные
- После передачи частей данных получатель отправляет **подтверждения** (ACK), что повышает надёжность.
- Цена: больше накладных расходов → обычно **медленнее**.
- Базовый RFC: **RFC 793**.
## UDP (User Datagram Protocol)
- **Без установления соединения**: просто отправляет датаграммы.
- Возможны потери/перестановка порядка.
- Подходит, когда важнее скорость, чем идеальная точность (видео/звонки и т.п.).
## Практический выбор (очень грубо)
- “точность важнее” → TCP
- “скорость важнее” → UDP
Связанные узлы: [[Networking—MOC]], [[Networking—ICMP & Ping (one-screen)]].