Протоколи TCP проти UDP
І TCP, і UDP вписуються в четвертий шар моделі OSI, який є транспортним шаром трохи вище рівня IP. TCP і UDP підтримують передачу даних двома різними способами, TCP орієнтований на з'єднання, а UDP - менше.
У перевезенні пакетів є два основних обмеження: одне - надійність, а інше - затримка. Надійність - це гарантована доставка пакета, а затримка - своєчасна доставка пакета. І те й інше не може бути досягнуто свого піку одночасно, але їх можна оптимізувати.
Для того, щоб ініціювати передачу даних між двома вузлами, відправник повинен знати IP приймачів, а також номер порту. IP-адреса призначена для маршрутизації пакету, а номер порту - передача пакета правильній особі. Далі пояснюючи цей сценарій на прикладі реального світу, подумайте про багатоскладне торговельне середовище, і хтось скеровував вас до магазину 30 (Що таке перукарський салон), Golden Plaza, No 21 Park Ave, щоб дістатися до цього місця, вам потрібно знати лише Ні Проспект парку 21, але щоб отримати послугу з салону, вам потрібно знати номер магазину, який становить 30. Ви можете вважати, що номер 21 не IP, а магазин не 30 як порт ні.
Те саме, що в моделі передачі даних та прикладних моделей, TCP-додатки прослуховують номери портів, щоб приймати TCP-з'єднання. Так само, як програми UDP також слухають номери портів для доставки послуг UDP.
TCP:
Визначено в RFC 793
TCP - орієнтований на з'єднання надійний протокол для підтримки гарантованої передачі даних. Від самого встановлення з'єднання TCP забезпечує надійність. Деякі основні особливості TCP - це трехсторонне рукостискання (SYN, SYN-ACK, ACK), виявлення помилок, повільний пуск, контроль потоку та контроль застійності..
TCP - надійний транспортний механізм, тому він буде використовуватися там, де доставка пакетів є необхідною навіть у заторах. Типовим прикладом для програм TCP та номерів портів є дані FTP (20), FTP-контроль (21), SSH (222), Telnet (23), пошта (25), DNS (53), HTTP (80), POP3 (110) , SNMP (161) і HTTPS (443). Це добре відомі програми TCP.
UDP:
Визначено в RFC 768
UDP (User Datagram Protocol) - простий протокол передачі, що забезпечує ненадійну послугу. Це не означає, що UDP не буде доставляти дані, але немає механізмів контролю за перевантаженням перевантажень або втрати пакетів і т. Д. Оскільки це просто, це дозволяє уникнути накладних обробок на мережевому інтерфейсі. У додатках у режимі реального часу здебільшого використовується UDP, оскільки відмовляти пакети краще, ніж пакети із затримкою. Типовим прикладом є потоки голосу через IP-медіа.
Підсумок:
(1) TCP орієнтований на з'єднання і надійний там, де UDP є менш надійним і ненадійним.
(2) TCP потребує більшої обробки на рівні мережевого інтерфейсу там, де в UDP це не так.
(3) TCP використовує тристоронній рукостискання, контроль заторів, контроль потоку та інший механізм для забезпечення надійної передачі.
(4) UDP в основному застосовується у випадках, коли затримка пакету є більш серйозною, ніж втрата пакету. (Програми в режимі реального часу)