Які гарантії надає UDP?
UDP надає мінімум гарантій. Це зроблено свідомо, щоб забезпечити простоту і мінімальну затримку.
Які гарантії у UDP є
1. Межа повідомлень зберігається
UDP передає дані повідомленнями (датаграмами):
- одне відправлення = одне повідомлення
- якщо повідомлення прийшло - воно приходить цілком
Це означає:
- UDP не склеює і не дробить повідомлення для застосунку
2. Доставка "best effort"
UDP намагається доставити дані:
- без обіцянок
- без повторів
- без підтверджень
Якщо повідомлення дійшло - застосунок його отримає. Якщо ні - UDP нічого не робить.
Чого UDP НЕ гарантує (важливо)
UDP не гарантує:
- доставку даних
- порядок доставки
- відсутність дублікатів
- цілісність потоку даних
- керування швидкістю
- контроль перевантаження
- встановлення з'єднання
Усі ці завдання, за потреби, має вирішувати сам застосунок.
Порівняння гарантій TCP і UDP
| Гарантія | TCP | UDP |
|---|---|---|
| Доставка | Так | Ні |
| Порядок | Так | Ні |
| Повтори | Так | Ні |
| Контроль потоку | Так | Ні |
| Контроль перевантаження | Так | Ні |
| Межі повідомлень | Ні (потік) | Так (повідомлення) |
Чому UDP все одно використовують
Тому що іноді важливіша:
- мінімальна затримка
- передбачуваний час доставки
ніж ідеальна надійність.
Тому UDP застосовують для:
- VoIP
- відеостримінгу
- онлайн-ігор
- DNS
Коротко для співбесіди
UDP не гарантує доставку, порядок і цілісність передачі даних; він забезпечує лише передачу окремих повідомлень без встановлення з'єднання і з мінімальними накладними витратами.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.