Повторная передача TCP по сравнению с TCP быстрая повторная передача

В Wireshark I видят вещи, которые говорят "Повторную передачу TCP" и "TCP Быстрая Повторная передача". Каково различие? Как может Wireshark для сообщения различия?

9
задан 07.04.2011, 11:53

2 ответа

Когда пакет отправляется с помощью TCP, ему передали порядковый номер с ним. Когда получатель получает пакет, они отправляют подтверждение в отправителя с порядковым номером, показывающим, что пакет был получен. На основе пути Вы задали свой вопрос, я предполагаю, что Вы знаете это. Я хотел вставить его для других читателей.

Повторная передача TCP является просто пакетом, который не подтверждает в тайм-ауте.

TCP, которым состоит в том Быстрая Повторная передача, когда источник получает подтверждение, что пакет не был получен... заключив в кавычки из Быстрого, ретранслирует - Википедия, свободная энциклопедия

если отправитель TCP получает три дублирующихся подтверждения с тем же, подтверждают число (то есть, в общей сложности четыре подтверждения с тем же числом подтверждения), отправитель может быть довольно уверен, что сегмент со следующим более высоким порядковым номером был отброшен

8
ответ дан 07.12.2019, 13:14

Я переварил это от Microsoft:

TCP запускает таймер повторной передачи, когда каждый исходящий сегмент передан к уровню Internet Protocol (IP). Если TCP не получает подтверждение для данных в данном сегменте, прежде чем таймер истечет, сегмент ретранслируется.

Тайм-аут повторной передачи корректируется на лету для соответствия характеристикам соединения, с помощью вычислений Сглаживавшей круговой задержки (SRTT), как описано в Van Jacobson и статье Mike Karels "Предотвращение перегрузки и Управление" в Продолжениях Конференции ACM SIGCOMM по Передаче данных, ноябрь 1988. Данная статья может быть найдена в Цифровой библиотеке ACM в Ассоциации вычислительной техники. Для получения дополнительной информации о вычислениях SRTT посмотрите RFC 793: Протокол управления передачей интернет-Спецификация протокола Программы DARPA. Тайм-аут повторной передачи для данного сегмента удвоен после каждой повторной передачи того сегмента.

Используя этот алгоритм, TCP настраивает себя на обычную задержку соединения. Соединения TCP по ссылкам высокой задержки берут намного дольше для таймаута, чем соединения TCP по ссылкам низкой задержки, чтобы не неправильно испытывать таймаут, когда соединение является просто медленным, а не не существует.

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

То, когда получатель, который поддерживает быстро, ретранслирует, получает пакет с порядковым номером выше, чем текущий ожидаемый, он продолжается, как будто некоторые данные были отброшены. Чтобы помочь сделать отправителя, знающего о, по-видимому, отброшенных данных как можно быстрее, получатель сразу отправляет подтверждение (ACK) с набором числа ACK к порядковому номеру, который, кажется, отсутствует. Получатель отправляет другой ACK за тем порядковым номером для каждого дополнительного сегмента TCP во входящем потоке, который прибывает с порядковым номером выше, чем недостающий.

Когда отправитель получает поток дублирующихся ACKs, которые подтверждают тот же порядковый номер, и обозначенный порядковый номер ранее, чем порядковый номер текущего отсылаемого сегмента, отправитель может вывести, что были отброшены один или несколько сегментов, которые он ранее отправил. После получения определенного числа дублирующегося ACKs отправители, которые поддерживают быстрое, ретранслируют алгоритм, снова посылают сегмент или сегменты, что получатель запрашивает заполнить разрыв в данных, не ожидая таймера повторной передачи для истечения для недостающих сегментов. Эта оптимизация значительно улучшает производительность в занятой сетевой среде.

С быстрым ретранслируют, отправитель ретранслирует недостающие сегменты TCP, прежде чем их таймеры повторной передачи истекут. Поскольку таймеры повторной передачи не истекли для недостающих сегментов TCP, недостающие сегменты получены в месте назначения и подтверждены получателем более быстро, чем они были бы без быстрого, ретранслируют, и отправитель может более быстро отправить более поздние сегменты на получатель. Этот процесс известен как быстрое восстановление. Быстро ретранслируйте, и быстрое восстановление описаны в RFC 2581: Управление перегрузкой TCP.

6
ответ дан 07.12.2019, 13:14

Теги

Похожие вопросы