Re: [tcpm] rfc2581bis [2]: limiting cwnd inflation

Mark Allman <mallman@icir.org> Wed, 14 February 2007 05:36 UTC

Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1HHCoc-000051-31; Wed, 14 Feb 2007 00:36:26 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1HHCoa-00004r-TM for tcpm@ietf.org; Wed, 14 Feb 2007 00:36:24 -0500
Received: from pork.icsi.berkeley.edu ([192.150.186.19]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1HHCoZ-00026p-Hp for tcpm@ietf.org; Wed, 14 Feb 2007 00:36:24 -0500
Received: from guns.icir.org (adsl-69-222-35-58.dsl.bcvloh.ameritech.net [69.222.35.58]) by pork.ICSI.Berkeley.EDU (8.12.11.20060308/8.12.11) with ESMTP id l1E5aMTc030174; Tue, 13 Feb 2007 21:36:22 -0800
Received: from lawyers.icir.org (adsl-69-222-35-58.dsl.bcvloh.ameritech.net [69.222.35.58]) by guns.icir.org (Postfix) with ESMTP id EADEC7B50F8; Wed, 14 Feb 2007 00:36:16 -0500 (EST)
Received: from lawyers.icir.org (localhost [127.0.0.1]) by lawyers.icir.org (Postfix) with ESMTP id 3A28317BD87; Wed, 14 Feb 2007 00:36:05 -0500 (EST)
To: "Anantha Ramaiah (ananth)" <ananth@cisco.com>
From: Mark Allman <mallman@icir.org>
Subject: Re: [tcpm] rfc2581bis [2]: limiting cwnd inflation
In-Reply-To: <0C53DCFB700D144284A584F54711EC5802DE65F3@xmb-sjc-21c.amer.cisco.com>
Organization: ICSI Center for Internet Research (ICIR)
Song-of-the-Day: Whole Lotta Love
MIME-Version: 1.0
Date: Wed, 14 Feb 2007 00:36:05 -0500
Message-Id: <20070214053605.3A28317BD87@lawyers.icir.org>
X-Spam-Score: 0.1 (/)
X-Scan-Signature: f607d15ccc2bc4eaf3ade8ffa8af02a0
Cc: tcpm@ietf.org
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
Reply-To: mallman@icir.org
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============0420079935=="
Errors-To: tcpm-bounces@ietf.org

> Cwnd  = (f/2 + 3*SMSS) + 6SMSS > f.  This can happen since there seems
> to be no explicit rule to cap the cwnd growth which may cause the higher
> than appropriate sending rate to be used.  To make the above example
> assuming f = 10 before fast recovery entered, we would be in a situation
> where cwnd becomes 14!!, which is un-desirable.

It is not.  After out iteration earlier today I went through this in
more detail in my head.  You want cwnd to grow past where it was before
recovery.  That is how you're able to strobe new segments out.  Simple
example:

FlightSize=40
lose 1 segment; expect 39 dupacks (say none are lost)
after the 3rd dupack:
  cwnd = (FlightSize / 2) + 3 = 23
  ssthresh = FlightSize / 2 = 20
  retransmit
receiver 36 more dupacks, on each:
  cwnd += 1
  if FlightSize < cwnd:
    transmit
    FlightSize += 1
receive an ACK for everything
  cwnd = ssthresh

So, basically before the rexmt is ACKed cwnd will be 59 segments---or,
19 more than it was before the loss happened.  But, this increase is
termed *artificial*.  We did not put 59 segments into the network during
the last RTT, we put 19 segments into the network (or, half of the
FlightSize when the loss occured)---so, we did in fact halve our rate
even though the cwnd is larger.  Before continuing the cwnd collapses
back to what it ought to be (20 segments in this case).

What the new text is attempting to do is to allow stacks to protect
against malicious receivers that strobe many more dupacks into the
stream to boost the sending rate.  Regardless of the value of cwnd, I
don't think there is a case whereby you'll be actually putting an
inappropriate number of segments into the network when things are
working properly.

allman



_______________________________________________
tcpm mailing list
tcpm@ietf.org
https://www1.ietf.org/mailman/listinfo/tcpm