minimal sending rate in the case of tfrc for small packets and its faster restart variant

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We are sending interactive voice traffic over CCID 3(RFC4342) (also
its variant for small packets draft-ietf-dccp-tfrc-voip-05.txt and
the variant for small packets with with faster restart draft-ietf-
dccp-tfrc-faster-restart-00.txt), trying to observe the impact of
the protocol on the end-to-end quality. Since the codec uses
silence suppresion, our traffic contains periods of data
transmission alternating with periods of idleness, and due to the
fact that we experience frequent slow start (we can only double our
transmission rate during one RTT), the minimal rate of TFRC is an
important factor affecting the transmission quality.
We kindly ask you for some clarifications regarding the way in
which the rate is set in the case of TFRC for small packets and its
faster restart variant.

RFC 3448, section 4.3 states:
"If (p > 0)
           Calculate X_calc using the TCP throughput equation.
           X = max(min(X_calc, 2*X_recv), s/t_mbi);
       Else
           If (t_now - tld >= R)
               X = max(min(2*X, 2*X_recv), s/R);
               tld = t_now;"
while draft-ietf-dccp-tfrc-voip-05.txt requires the nominal packet
size s to 1460 bytes;

Question 1) Should s=1460 bytes be used in the factors s/t_mbi and
s/R ? If so, should they be corrected by a factor s_true / (s_true
+ H) accounting for the header size?
The difference between the two methods is significant in the case
of VoIP packets, reaching over an order of magnitude.

draft-ietf-dccp-tfrc-faster-restart-00.txt states:
"This document suggests a relatively simple approach to this problem.
Some protocols using TFRC [CCID 3 PROFILE] already specify that the
allowed sending rate is never reduced below the RFC-3390 sending
rate of four packets per RTT during an idle period.  Faster Restart
specifies that the allowed sending rate is never reduced below eight
packets per RTT, for small packets."

Question 2) Is the rate of eight packets per RTT the minimal rate
of the protocol even in periods of non-idleness? Relating to the
previous question, should the averaged packet size or the nominal
packet size of 1460 bytes be used in the calculation of the rate?

In case the answer to the previous question is affirmative, should
the rate calculation at the end of section 3. become:
"If p > 0,
     Calculate X_calc using the TCP throughput equation.
     X_recv_limit := 2*X_recv.
     If X_recv_limit < X_fast_max,
        X_recv_limit := min(4*X_recv, X_fast_max).
     X := max(min(X_calc, X_recv_limit), 8*s/R). <= changed minimal
rate
  Else
     If (t_now - tld >= R)
        X := max(min(2*X, 2*X_recv), 8*s/R); <= changed minimal rate
        tld := now."

Changing the minimal rate from s/t_mbi to 8*s/R while in congestion
avoidance mode shortens the time needed to reach the codec's
nominal transmission rate by log_4(8*t_mbi/R) RTTs ~= 6 RTTs for a
connection with 50ms round trip.

Vlad Balan




[Index of Archives]     [Linux Kernel Development]     [Linux DCCP]     [IETF Annouce]     [Linux Networking]     [Git]     [Security]     [Linux Assembly]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [DDR & Rambus]

  Powered by Linux