К списку
Сети и протоколыJuniorСкрининг с HR

Что означают timeout и retransmit в сетевом взаимодействии

Краткий ответ

Timeout — это ограниченный интервал ожидания ответа, после которого система предпринимает корректирующие действия. Retransmit — повторная отправка данных, если подтверждение не получено в пределах таймаута.

Развёрнуто

Краткий ответ

Timeout — это заранее установленное время ожидания отклика от другого узла или компонента. Если за это время ответ не поступил, запускается процедура обработки ошибки или повторной отправки (retransmit). Retransmit — это механизм повторной передачи данных для обеспечения их доставки при потере или отсутствии подтверждения.


Как это работает

В сетевых протоколах, например в TCP, timeout задаёт максимальный интервал, в течение которого отправитель ждёт подтверждение получения данных (ACK). Если подтверждение не приходит, происходит retransmit — повторная отправка тех же данных для гарантии доставки.

  • Timeout предотвращает бесконечное ожидание ответа.
  • Retransmit повышает надёжность передачи, компенсируя потери пакетов.
Понятие Описание
Timeout Время ожидания ответа перед признанием ошибки
Retransmit Повторная отправка данных при отсутствии ответа

Пример

Отправитель посылает пакет с данными и запускает таймер таймаута.
Если в течение 3 секунд не приходит подтверждение (ACK),
происходит retransmit — повторная отправка того же пакета.

Что важно знать на собеседовании

  • Timeout помогает системе не зависать в ожидании ответа.
  • Retransmit необходим для обеспечения надёжности и целостности данных.
  • Параметры timeout настраиваются в зависимости от условий сети.
  • В протоколах с подтверждениями (например, TCP) retransmit — ключевой механизм.
  • Неправильные настройки timeout могут привести к лишним повторным передачам или задержкам.

Тема: Сети и протоколы | Уровень: junior