TCP-проксі керують сеансовими, орієнтованими на з'єднання потоками даних з гарантованою доставкою та порядком, тоді як UDP-проксі пересилають безз'єднальні дейтаграми, пропонуючи нижчу затримку та накладні витрати, але без властивої надійності, впорядкування або керування сеансами на транспортному рівні. Ця фундаментальна відмінність визначає їхню реалізацію, характеристики продуктивності та відповідні застосування.
Розуміння протоколів TCP та UDP
Протокол керування передачею (TCP) та Протокол дейтаграм користувача (UDP) є двома основними протоколами транспортного рівня в наборі IP. Їхні відмінні характеристики безпосередньо впливають на те, як проксі-сервіс повинен працювати для обробки трафіку для кожного з них.
TCP: Орієнтований на з'єднання та надійний
TCP встановлює постійне, двостороннє з'єднання між клієнтом і сервером до початку будь-якої передачі даних. Ця орієнтована на з'єднання природа забезпечує:
* Надійна передача даних: Сегменти даних підтверджуються одержувачем. Якщо підтвердження не отримано, відправник повторно передає дані.
* Впорядкована доставка даних: Сегменти даних збираються в правильному порядку в пункті призначення, навіть якщо вони надходять не по порядку.
* Керування потоком: Запобігає перевантаженню повільного одержувача швидким відправником.
* Керування перевантаженням: Керує мережевим трафіком для запобігання колапсу через перевантаження.
Ці функції роблять TCP придатним для застосунків, де цілісність і порядок даних є критично важливими.
UDP: Безз'єднальний та ненадійний
UDP — це простіший, безз'єднальний протокол. Він надсилає незалежні пакети, що називаються дейтаграмами, без встановлення попереднього з'єднання