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

3.1. Уравнение для пропускной способности TCP

Любое реалистичное выражение пропускной способности TCP, как функции RTT и вероятности потери пакетов, следует рассматривать, как подходящее для использования с TFRC. Однако следует отметить, что используемое для пропускной способности TCP уравнение должно отражать поведение повторов передачи по тайм-ауту, поскольку это поведение доминирует при определении пропускной способности TCP в условиях высокой вероятности потерь. Отметим также, что допущения, принятые относительно вероятности потерь в уравнении для пропускной способности, зависят от реального механизма определения вероятности потерь. Хотя это допущение не вполне соответствует приведенному ниже уравнению для пропускной способности и описанным механизмам измерения, оно достаточно хорошо подходит на практике.

Уравнение пропускной способности, которое в настоящее время требуется использовать в TFRC, является слегка упрощенным вариантом уравнения для Reno TCP из работы [PFTK98]. В идеальном случае уравнение для пропускной способности следовало бы создавать на основе SACK TCP, однако тесты и эксперименты показывают, что различия между двумя уравнениями достаточно малы [FF99] (Приложение B).

Уравнение для средней скорости передачи TCP (в байтах в секунду) X_Bps имеет вид:

                             s
X_Bps = ----------------------------------------------------------
        R*sqrt(2*b*p/3) + (t_RTO * (3*sqrt(3*b*p/8)*p*(1+32*p^2)))

где:

  • X_Bps — средняя скорость передачи TCP (байт/сек); параметр X_Bps идентичен X_calc в RFC 3448;
  • s — размер сегмента (байт) с учетом заголовков транспортного уровня и IP;
  • R — время кругового обхода в секундах;
  • p — вероятность потерь (0 — 1.0) — доля потерянных пакетов в от общего числа переданных пакетов;
  • t_RTO — тайм-аут повторной передачи TCP в секундах;
  • b — максимальное число пакетов, подтверждаемых одним пакетом TCP ACK.

Выбор значения тайм-аута повторной передачи TCP — t_RTO

Реализациям следует использовать значение t_RTO = 4*R. Возможно использование более точного метода расчета t_RTO. Реализации могут также выбирать в качестве t_RTO значение max(4*R, 1 секунда) в соответствии с рекомендуемым для значения RTO минимумом [RFC2988].

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