TCP (Transmission Control Protocol) — основной протокол транспортного уровня стека TCP/IP. В отличие от UDP, он ориентирован на соединение: перед передачей данных узлы выполняют «трехстороннее рукопожатие» (SYN, SYN-ACK, ACK). Протокол гарантирует, что данные будут доставлены без потерь и в том же порядке, в котором они были отправлены.
Механизм работы
Работа TCP строится на системе подтверждений и порядковых номеров. Если отправитель не получает ACK (подтверждение) в течение заданного интервала времени, сегмент считается утерянным и отправляется повторно. Протокол также управляет размером «окна» (window size), динамически регулируя скорость передачи в зависимости от состояния сети для предотвращения перегрузок.
TCP применяется в сценариях, где недопустима потеря даже одного бита информации:
- Просмотр веб-страниц (HTTP/HTTPS);
- Передача файлов (FTP, SFTP);
- Электронная почта (SMTP, IMAP);
- Удаленный доступ (SSH).
Факт: Минимальный размер заголовка TCP составляет 20 байт, что в 2,5 раза больше заголовка UDP. Эта избыточность необходима для хранения метаданных, обеспечивающих надежность и контроль потока.