Протокол управління передачею

Матеріал з Вікіпедії — вільної енциклопедії.

Набір протоколів Інтернет   ред.
Програмний рівень HTTP, SMTP, FTP, SSH, IRC, SNMP, SIP, IMAP ...
Транспортний рівень TCP, UDP, SCTP, RTP, DCCP ...
Мережевий рівень IPv4, IPv6, ARP, ICMP ...
Канальний рівень Ethernet, 802.11a/b/g WiFi , Token ring, FDDI, ...

Протокол управління передачею (Transmission Control Protocol, TCP)

Інформацію, яку потрібно передати, TCP розбиває на порції. Кожна порція нумерується, щоб можна було перевірити, чи вся інформація отримана, і розташувати інформацію в правильному порядку. Для передачі цього порядкового номера по мережі у протокола є свій власний "конверт", на якому "написана" необхідна інформація. Порція ваших даних розміщується в конверт TCP. Конверт TCP в свою чергу розміщується в конверті IP і передається в мережу.

На приймаючій стороні програмне забезпечення протокола TCP збирає конверти, витягує з них дані і розташовує їх в правильному порядку. Коли яких-небудь конвертів немає, програма просить відправника передати їх ще раз. Після розміщення всієї інформації в правильному порядку ці дані передаються тій програмі, яка використовує послуги TCP.

В реальній ситуації пакети не тільки загублюються, але й отримують зміни у зв’язку з короткочасними неполадками в телефонній лінії. TCP вирішує і цю проблему. При розміщенні даних виробляється так звана контрольна сума. Контрольна сума - це число, яке дозволяє приймаючому TCP виявити помилки в пакеті. Коли пакет прибуває в пункт призначення, приймаючий TCP обраховує контрольну суму і порівнює її з тою, яку послав відправляючий TCP. Якщо значення не співпадають, то при передачі виникла помилка. Приймаючий TCP відкидає цей пакет і запрошує повторну передачу.