System Design Space

    Глава 77

    Обновлено: 15 февраля 2026 г. в 14:45

    TCP протокол

    Прогресс части0/20

    Надёжная доставка байтов: соединение, three‑way handshake, контроль потока и перегрузок.

    Источник

    Transmission Control Protocol

    Определение TCP, свойства надёжной передачи и handshake.

    Перейти на сайт

    TCP — один из ключевых протоколов стека TCP/IP на транспортном уровне. Он обеспечивает надёжную, упорядоченную и проверяемую передачу потока байтов между приложениями в сети IP.

    Ключевые свойства TCP

    Надёжная доставка

    TCP обеспечивает упорядоченную и проверяемую доставку байтового потока между приложениями.

    Соединение (connection-oriented)

    Перед передачей данных стороны устанавливают соединение через three-way handshake.

    Ретрансляции и подтверждения

    Потерянные сегменты обнаруживаются и переотправляются до подтверждения.

    Контроль потока

    Получатель ограничивает скорость отправителя, чтобы не переполнить буферы.

    Контроль перегрузок

    TCP снижает скорость передачи при признаках перегрузки сети.

    Three-way handshake

    TCP устанавливает соединение через трёхшаговое рукопожатие (SYN -> SYN-ACK -> ACK). После него обе стороны могут передавать данные в полном дуплексе.

    TCP three-way handshake

    Нажмите на шаг или используйте кнопки, чтобы проиграть установку соединения

    Состояние

    Нажмите «Начать», чтобы увидеть шаги установки TCP-соединения.

    ClientServer
    Клиент
    -
    Сервер
    После трёх шагов соединение считается установленным.

    Где применяется TCP

    Основные классы приложений

    • Веб-приложения и API
    • Электронная почта
    • Удалённое администрирование
    • Передача файлов и стриминг

    Почему выбирают TCP

    • Надёжная доставка важнее минимальной задержки
    • Нужна упорядоченность и контроль потерь
    • Удобный, знакомый интерфейс для приложений

    Почему это важно для System Design

    • TCP-соединения влияют на латентность и масштабирование (handshake + re-transmit).
    • Контроль потока и перегрузок определяет реальные пределы throughput.
    • От выбора TCP/UDP зависит архитектура realtime-систем и back-pressure.