Sobes.tech
Junior
117
questionbank

Что такое протокол TCP?

Ответ от нейросети

sobes.tech AI

TCP (Transmission Control Protocol) - это протокол транспортного уровня в стеке протоколов TCP/IP, обеспечивающий надежную, ориентированную на соединение доставку потока байтов между приложениями.

Основные характеристики TCP:

  • Надежность: Гарантирует доставку всех сегментов данных в правильном порядке, повторно отправляя потерянные или поврежденные сегменты. Использует подтверждения (ACK) и тайм-ауты.
  • Ориентированность на соединение: Перед передачей данных устанавливается логическое соединение между отправителем и получателем (трехэтапное рукопожатие). Соединение поддерживается на протяжении всей сессии.
  • Управление потоком (Flow Control): Регулирует скорость передачи данных, чтобы отправитель не перегрузил буфер получателя. Использует окно приема.
  • Управление перегрузками (Congestion Control): Предотвращает перегрузку сети, динамически регулируя скорость передачи данных в зависимости от условий сети. Использует алгоритмы типа Slow Start, Congestion Avoidance.
  • Потоковая передача (Stream-oriented): TCP рассматривает данные как непрерывный поток байтов, а не отдельные пакеты. Гарантирует, что данные будут доставлены в том же порядке, в котором были отправлены.
  • Дуплексная связь: Позволяет передавать данные в обоих направлениях одновременно после установления соединения.

Применение TCP:

  • HTTP/HTTPS (веб-трафик)
  • FTP (передача файлов)
  • SMTP (электронная почта)
  • SSH (удаленное управление)

Сравнение с UDP:

Характеристика TCP UDP
Надежность Высокая (гарантия доставки) Низкая (без гарантии)
Ориентация на соединение Да (установление и поддержание) Нет (передача без установления)
Упорядоченность данных Да (доставка в порядке отправки) Нет (возможна доставка не по порядку)
Управление потоком Да Нет
Управление перегрузками Да Нет
Быстродействие Ниже (из-за накладных расходов) Выше
Примеры HTTP, FTP, SSH, SMTP DNS, DHCP, VoIP, онлайн-игры