Re: [Tsvwg] Is a TFRC sender allowed to increase the send rate more than twice?

Mark Handley <mjh@icir.org> Sat, 11 January 2003 20:53 UTC

Received: from www1.ietf.org (ietf.org [132.151.1.19] (may be forged)) by ietf.org (8.9.1a/8.9.1a) with ESMTP id PAA17991 for <tsvwg-archive@odin.ietf.org>; Sat, 11 Jan 2003 15:53:26 -0500 (EST)
Received: (from mailnull@localhost) by www1.ietf.org (8.11.6/8.11.6) id h0BL6GD10922 for tsvwg-archive@odin.ietf.org; Sat, 11 Jan 2003 16:06:16 -0500
Received: from www1.ietf.org (localhost.localdomain [127.0.0.1]) by www1.ietf.org (8.11.6/8.11.6) with ESMTP id h0BL5CJ10865; Sat, 11 Jan 2003 16:05:12 -0500
Received: from ietf.org (odin.ietf.org [132.151.1.176]) by www1.ietf.org (8.11.6/8.11.6) with ESMTP id h0BKw0J10704 for <tsvwg@optimus.ietf.org>; Sat, 11 Jan 2003 15:58:00 -0500
Received: from vulture.icir.org (ietf-mx.ietf.org [132.151.6.1]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id PAA17873 for <tsvwg@ietf.org>; Sat, 11 Jan 2003 15:44:39 -0500 (EST)
Received: from vulture.icir.org (localhost [127.0.0.1]) by vulture.icir.org (8.12.3/8.12.3) with ESMTP id h0BKlqU2065116; Sat, 11 Jan 2003 12:47:53 -0800 (PST) (envelope-from mjh@vulture.icir.org)
From: Mark Handley <mjh@icir.org>
X-Organisation: ICIR
To: Andrei Gurtov <andrei.gurtov@sonera.com>
cc: tsvwg@ietf.org, Sally Floyd <floyd@icir.org>
Subject: Re: [Tsvwg] Is a TFRC sender allowed to increase the send rate more than twice?
In-reply-to: Your message of "Fri, 10 Jan 2003 11:47:46 +0200." <005d01c2b88d$5471f850$2f25b183@gurtoannb2>
Date: Sat, 11 Jan 2003 12:47:52 -0800
Message-ID: <65115.1042318072@vulture.icir.org>
Sender: tsvwg-admin@ietf.org
Errors-To: tsvwg-admin@ietf.org
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.0.12
Precedence: bulk
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>

>Hi,
>
>In draft-ietf-tsvwg-tfrc-05.txt on p. 11 a TFRC sender computes its send
>rate as
>
>If (p > 0)
>                   Calculate X_calc using the TCP throughput equation.
>                   X = max(min(X_calc, 2*X_recv), s/t_mbi);
>
>when there are some losses detected. A question is, when X_recv and X_calc
>suddenly increase, is the sender allowed to increase its transmission rate X
>more than twice? Such situation could appear when a number of delayed or
>reordered packets show up at the receiver causing the loss rate become low
>and the receive rate higher than the current transmit rate. Alternatively,
>the receiver or PEP having good knowledge of the bottleneck link could
>adjust the loss rate and X_recv in feedback packets to make the sender adapt
>faster to significant changes in available bandwidth. Yet another
>possibility is a spoofing attack doing the same.
>
>According to the equation above more than twofold increase of the send rate
>is ok, but the NS implementation clamps the send rate increase at twice the
>current in all cases.

In practice, I believe the difference has no effect on behaviour.

 - During slowstart, the send rate increase is capped to twice the
   send rate explicitly.

 - During normal operation, the normal increase rate due to the expiry
   of old higher-loss history is (from memory) about 0.12 packets per
   RTT.  Thus to double the sending rate would take about 6 RTTs.  It
   seems rate unlikely that any bunching would cause more than 6
   RTTs of packets to arrive at once without having previously causing
   the receiver to signal the sender to reduce rate because the
   receive rate was so low while the packets were being delayed.  

 - If history discounting has cut in, the 6 RTTs above would be 3
   RTTs, but delaying of 3 RTTs of traffic would still likely trigger
   the receiver to clamp the senders rate to twice the (very low) receive
   rate before the delayed traffic arrives.  

Limiting the send rate to twice the receive rate is a safety measure
that prevents serious overshoot on links with low levels of
statistical multiplexing.  In the case where you can delay several
RTTs worth of packets without losing any, and then deliver them all in
a high-rate burst, it seems rather likely that the level of
statistical multiplexing isn't all that low, so this additional safety
mechanism isn't required.  In the worst and very unlikely case, you
take some losses in the next RTT and slow down again pretty quickly.

So, to summarise, restricting the increase to twice the send rate (as
ns does) is a reasonable thing to do, but not doing it is very
unlikely to have any significant effect, and even less likely to have
any significant adverse effect.

Does this answer your question?

Cheers,
	Mark
_______________________________________________
tsvwg mailing list
tsvwg@ietf.org
https://www1.ietf.org/mailman/listinfo/tsvwg