RFC: 5348
Оригинал: TCP Friendly Rate Control (TFRC): Protocol Specification
Предыдущие версии: RFC 3448
Категория: Предложенный стандарт
Дата публикации:
Авторы: , , ,
Перевод: Николай Малых

5. Расчет частоты потерь (p)

Точное и стабильное измерение частоты потерь имеет первоочередное значение для TFRC. Измерение частоты потери пакетов осуществляется на приемной стороне путем детектирования потери пакетов по порядковым номерам прибывающих пакетов или при получении маркированного пакета. Опишем этот процесс прежде, чем разбираться с остальной частью приемного протокола. Если получатель еще не обнаружил потери или маркировки пакетов, он не рассчитывает вероятность потерь и сообщает о нулевой частоте потерь.

5.1. Детектирование потерь и маркированных пакетов

TFRC предполагает, что в каждом пакете содержится порядковый номер и эти номера увеличиваются на 1 в каждом переданном пакете. Данная спецификация требует, чтобы при повторе передачи потерянного пакета использовался новый порядковый номер в соответствии с последовательностью нумерации. Если транспортный протокол требует при повторе передачи использовать исходный порядковый номер, разработчики транспортного протокола должны обеспечить механизм, позволяющий отличить задержанные пакеты от переданных повторно, и механизм детектирования потери пакетов при повторе передачи.

TFRC предполагает, что каждый пакет содержит порядковый номер и номера увеличиваются на единицу в каждом переданном пакете. Данная спецификация требует, чтобы при повторной передаче потерянных пакетов использовались новые порядковые номера, а не номера, с которыми потерянные пакеты были переданы изначально. assumes that all packets contain a sequence number that is incremented by one for each packet that is sent. For the purposes Если используемый транспортный протокол требует повтора передачи с исходными порядковыми номерами, разработчики транспортного протокола должны обеспечить механизм, позволяющий отличить исходный пакет от переданного повторно.

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

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

Потеря пакета детектируется по факту прибытия по крайней мере NDUPACK пакетов с большими порядковыми номерами; для NDUPACK задано значение 3. Требование приема NDUPACK последующих пакетов совпадает с аналогичным требованием TCP и обеспечивает TFRC устойчивость к нарушению порядка доставки пакетов. В отличие от TCP, если пакет приходит позднее (после доставки NDUPACK следовавших за ним пакетов), информация об этом пакете может заполнить пробел в записях TFRC и получатель сможет пересчитать вероятность потерь. В будущих версиях TFRC значение NDUPACK для детектирования потери может быть заменено адаптивным значением, учитывающим реальное нарушение порядка доставки, но в данной спецификации механизм такого учета не рассматривается.

Для соединений, поддерживающих ECN, прибытие маркированных пакетов трактуется как факт насыщения без ожидания доставки последующих пакетов.

Если перед пакетами с маркерами ECN была возможна потеря пакетов, детектированием факта насыщения считается потеря первого пакета. Например, если получатель принимает пакет с порядковым номером n-1, за которым следует немаркированный пакет с порядковым номером n+1, а затем маркированный пакет с порядковым номером n+2, тогда получатель обнаруживает насыщение по приему пакета n+2. Начало обнаруженного факта перегрузки связано с потерей пакета n. Рекомендации параграфа 5.2 позволяют определить принадлежность потерь и маркированных пакетов к одному или нескольким фактам потерь.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.