Re: [tcpm] RFC3465:TCP ABC and SACK'ed data

Erik Hugne <erik.hugne@ericsson.com> Mon, 26 May 2014 09:12 UTC

Return-Path: <erik.hugne@ericsson.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B77971A008E for <tcpm@ietfa.amsl.com>; Mon, 26 May 2014 02:12:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.301
X-Spam-Level:
X-Spam-Status: No, score=-1.301 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, J_CHICKENPOX_42=0.6, SPF_PASS=-0.001] autolearn=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 2pBZ_TnVWG1m for <tcpm@ietfa.amsl.com>; Mon, 26 May 2014 02:12:38 -0700 (PDT)
Received: from sessmg22.ericsson.net (sessmg22.ericsson.net [193.180.251.58]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3E5051A007E for <tcpm@ietf.org>; Mon, 26 May 2014 02:12:38 -0700 (PDT)
X-AuditID: c1b4fb3a-f79746d000006fe2-02-5383058153fe
Received: from ESESSHC013.ericsson.se (Unknown_Domain [153.88.253.124]) by sessmg22.ericsson.net (Symantec Mail Security) with SMTP id F6.D8.28642.18503835; Mon, 26 May 2014 11:12:33 +0200 (CEST)
Received: from eerihug-hybrid.rnd.ki.sw.ericsson.se (153.88.183.153) by smtp.internal.ericsson.com (153.88.183.59) with Microsoft SMTP Server id 14.3.174.1; Mon, 26 May 2014 11:12:32 +0200
Date: Mon, 26 May 2014 11:12:32 +0200
From: Erik Hugne <erik.hugne@ericsson.com>
To: Yoshifumi Nishida <nishida@sfc.wide.ad.jp>
Message-ID: <20140526091232.GN20942@eerihug-hybrid.rnd.ki.sw.ericsson.se>
References: <20140521073611.GA1940@eerihug-hybrid.rnd.ki.sw.ericsson.se> <20140521114628.C72DB6B339F@lawyers.icir.org> <20140521125518.GC1940@eerihug-hybrid.rnd.ki.sw.ericsson.se> <012C3117EDDB3C4781FD802A8C27DD4F4A3C3904@SACEXCMBX02-PRD.hq.netapp.com> <20140523133251.GA28880@eerihug-hybrid.rnd.ki.sw.ericsson.se> <CAO249ydqjyrK1fh8xvV6S-f3OB52ag0gwEyM0eN03AF7Yf1+Dw@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <CAO249ydqjyrK1fh8xvV6S-f3OB52ag0gwEyM0eN03AF7Yf1+Dw@mail.gmail.com>
User-Agent: Mutt/1.5.21 (2010-09-15)
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrJLMWRmVeSWpSXmKPExsUyM+JvjW4ja3OwwZ8XJhbT1kxjsti45Aab xcp/Z9gttp2cz+TA4vHv0E1mjyVLfjJ5zPj0hc3j4uvrzAEsUVw2Kak5mWWpRfp2CVwZ9x5s Yytocav4+2YzWwPjErMuRg4OCQETiV+PBbsYOYFMMYkL99azdTFycQgJHGWUOLT9JZRzgFFi w4L/zCBVLAKqEh2L5rKC2GwCWhITn09kArFFBPQkPnz/yATSwCzwk1HiXPcPsCJhoA17Px5l BLF5BTwlZvRuZ4GY2sks8ezESqiEoMTJmU9YQGxmAR2JBbs/sYGcxywgLbH8HwdImFMgUOLM my52EFtUQEViysltbCC2EJB9/+Vs9gmMgrOQTJqFZNIshEkLGJlXMYoWpxYX56YbGemlFmUm Fxfn5+nlpZZsYgSG9cEtv612MB587niIUYCDUYmH90F6U7AQa2JZcWXuIUZpDhYlcd6LGtXB QgLpiSWp2ampBalF8UWlOanFhxiZODilGhiTmh+517qsv935NTA94sAhU85bai+P/LDLuqDF verQ3gUN62ICf9gpqO0Mv7DnkqvqjF2HfCYfZrfYl6xT4834JCnw+MpG6ZYo0We9qw8eTci6 YxyymX+5Urgpz5qUaXwG8y18OPPSqrYs25H/o9rv2K3aAN/8ezOb0k7M8d7lzLGvjjNl0Rwl luKMREMt5qLiRABatAKhTAIAAA==
Archived-At: http://mailarchive.ietf.org/arch/msg/tcpm/Hee5BdAfqzhHeyry8gDaerBLLMQ
Cc: "ingemar.s.johansson@ericsson.com" <ingemar.s.johansson@ericsson.com>, "tcpm@ietf.org" <tcpm@ietf.org>, Mark Allman <mallman@icir.org>, "martin.isaksson@ericsson.com" <martin.isaksson@ericsson.com>
Subject: Re: [tcpm] RFC3465:TCP ABC and SACK'ed data
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 26 May 2014 09:12:40 -0000

Here's from a test just this morning, wgetting a 10MB file.
https://www.dropbox.com/sh/86u3nzcwukjzpzv/AAAlp_Me7wXf7PRyuWFq9Lmwa

//E

On Fri, May 23, 2014 at 04:06:12PM -0700, Yoshifumi Nishida wrote:
> This is just out of my curiosity, but can we share the tcpdump file for
> this?
> --
> Yoshi
> 
> On Friday, May 23, 2014, Erik Hugne
> <erik.hugne@ericsson.com<javascript:_e(%7B%7D,'cvml','erik.hugne@ericsson.com');>>
> wrote:
> 
> > Maybe..
> > This is a standard Linux 3.0 kernel with sack and frto enabled.
> > Additional lab experiments have shown that following the path change, a
> > stream
> > of lost packets occurs (almost a full window, ~400kB). The receiver sends
> > dupacks on the new path to trigger fast retransmit, but then the
> > retransmission
> > timer on the sender side fires and all unacked data will be resent. At the
> > RTO,
> > we get the expected cwnd drop. While the receiver keeps kicking the the
> > sender
> > by sending dupacks, the retransmission is reasonably fast but after a few
> > ms it
> > grinds down to a stop-and-go behaviour.
> >
> > I failed in my efforts to find some explanation to this in the RFC's.
> > What i did find was in VJ's paper from '88.
> >
> > -When starting or restarting after a loss, set cwnd to one packet.
> > -On each ack for new data, increase cwnd by one packet
> >
> > If retransmitted data are not considered "new", that would explain the
> > behavior
> > i guess.
> >
> > Scripted ss -ti for the connection every 3 sec.
> > In this test it wasn't even a path change, we just downed the interface on
> > a
> > router in the middle for some 300ms to simulate the packetloss (This was
> > done at 15:06:18)
> >
> > Fri May 23 15:06:01 CEST 2014
> >         reno wscale:9,7 rto:1892 rtt:1678/7 ato:40 cwnd:2215 send 15.3Mbps
> > rcv_space:14480
> > Fri May 23 15:06:04 CEST 2014
> >         reno wscale:9,7 rto:1888 rtt:1678/8 ato:40 cwnd:2215 send 15.3Mbps
> > rcv_space:14480
> > Fri May 23 15:06:07 CEST 2014
> >         reno wscale:9,7 rto:1888 rtt:1676/9 ato:40 cwnd:2215 send 15.3Mbps
> > rcv_space:14480
> > Fri May 23 15:06:10 CEST 2014
> >         reno wscale:9,7 rto:1884 rtt:1675.5/5 ato:40 cwnd:2215 send
> > 15.3Mbps rcv_space:14480
> > Fri May 23 15:06:14 CEST 2014
> >         reno wscale:9,7 rto:1816 rtt:1607.5/22 ato:40 cwnd:2215 send
> > 16.0Mbps rcv_space:14480
> > Fri May 23 15:06:17 CEST 2014
> >         reno wscale:9,7 rto:1892 rtt:1681.5/7 ato:40 cwnd:2215 send
> > 15.3Mbps rcv_space:14480
> > Fri May 23 15:06:20 CEST 2014
> >         reno wscale:9,7 rto:1548 rtt:651/225 ato:40 cwnd:3 ssthresh:1107
> > send 53.4Kbps rcv_space:14480
> > Fri May 23 15:06:23 CEST 2014
> >         reno wscale:9,7 rto:1224 rtt:263/110 ato:40 cwnd:3 ssthresh:1107
> > send 132.1Kbps rcv_space:14480
> > Fri May 23 15:06:26 CEST 2014
> >         reno wscale:9,7 rto:1172 rtt:210.5/18 ato:40 cwnd:3 ssthresh:1107
> > send 165.1Kbps rcv_space:14480
> > Fri May 23 15:06:29 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/6 ato:40 cwnd:3 ssthresh:1107
> > send 170.8Kbps rcv_space:14480
> > Fri May 23 15:06:32 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:3 ssthresh:1107
> > send 170.8Kbps rcv_space:14480
> > Fri May 23 15:06:35 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:06:38 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/4 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:06:41 CEST 2014
> >         reno wscale:9,7 rto:1168 rtt:204/4 ato:40 cwnd:6 ssthresh:1107
> > send 340.7Kbps rcv_space:14480
> > Fri May 23 15:06:44 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:06:47 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:06:50 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:06:53 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:06:56 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:06:59 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/4 ato:40 cwnd:6 ssthresh:1107
> > send 341.5Kbps rcv_space:14480
> > Fri May 23 15:07:02 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:9 ssthresh:1107
> > send 512.3Kbps rcv_space:14480
> > Fri May 23 15:07:05 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:9 ssthresh:1107
> > send 512.3Kbps rcv_space:14480
> > Fri May 23 15:07:08 CEST 2014
> >         reno wscale:9,7 rto:1164 rtt:203.5/3 ato:40 cwnd:9 ssthresh:1107
> > send 512.3Kbps rcv_space:14480
> > Fri May 23 15:07:11 CEST 2014
> >         reno wscale:9,7 rto:1260 rtt:487.5/8 ato:40 cwnd:960 ssthresh:1107
> > send 22.8Mbps rcv_space:14480
> > Fri May 23 15:07:14 CEST 2014
> >         reno wscale:9,7 rto:1244 rtt:863.5/6 ato:40 cwnd:1111
> > ssthresh:1107 send 14.9Mbps rcv_space:14480
> > Fri May 23 15:07:17 CEST 2014
> >         reno wscale:9,7 rto:1148 rtt:864/6 ato:40 cwnd:1114 ssthresh:1107
> > send 14.9Mbps rcv_space:14480
> > Fri May 23 15:07:20 CEST 2014
> >         reno wscale:9,7 rto:1096 rtt:868/8 ato:40 cwnd:1118 ssthresh:1107
> > send 14.9Mbps rcv_space:14480
> >
> > On Thu, May 22, 2014 at 06:47:56AM +0000, Scheffenegger, Richard wrote:
> > >
> > > Are you perhaps observing an effect of the ACK clock loss, when you
> > refer to a huge number of consecutive lost segments?
> > >
> > > Standard SACK does suffer from an issue that during loss recovery, there
> > may be a gap (SACKs don't clock out new/retransmitted packets while
> > flightsize > cwnd (which is now 1/2); only during the 2nd half, SACK starts
> > to clock out packets, but at the same rate as before (which may not that
> > bright an idea if a path change with differnet characteristics is now
> > there).
> > >
> > > RateHalving (Linux has some kind of variant of this) / Proportional Rate
> > Reduction RFC6937 may be the thing that you are after?
> > >
> > >
> > > ABC really only comes into play during slowstart, to make connections
> > which use delayed ACKs not perform much less aggressive than sessions where
> > the receiver features QuickAck (Linux non-standard).
> > >
> > > Best regards,
> > >
> > >
> > > Richard Scheffenegger
> > >
> > >
> > > > -----Original Message-----
> > > > From: tcpm [mailto:tcpm-bounces@ietf.org] On Behalf Of Erik Hugne
> > > > Sent: Mittwoch, 21. Mai 2014 14:55
> > > > To: Mark Allman
> > > > Cc: ingemar.s.johansson@ericsson.com; martin.isaksson@ericsson.com;
> > > > tcpm@ietf.org
> > > > Subject: Re: [tcpm] RFC3465:TCP ABC and SACK'ed data
> > > >
> > > > On Wed, May 21, 2014 at 07:46:28AM -0400, Mark Allman wrote:
> > > > >
> > > > > > TCP ABC (still in the experimental track) defines a method to
> > > > > > increase the cwnd based on the bytes being acknowledged, instead of
> > > > > > the number of acks that arrive. I am assuming that SACK'ed
> > (RFC2018)
> > > > > > data should be included in this calculation, but i could find no
> > > > > > mention of this in RFC3465.  Could someone confirm this?
> > > > >
> > > > > ABC does not include SACK information in its calculations and it
> > > > > cannot include SACK information.  ABC applies to slow start---which
> > > > > ends when loss occurs.  And, (essentially) SACKs only arrive during
> > loss
> > > > recovery.
> > > > > So, there is no need for ABC to deal with SACKs.
> > > > >
> > > >
> > > > Thanks for taking the time to explain this.
> > > >
> > > > The problem (this is related to Ingemars posts around "Problem with low
> > > > SSthresh") is that following the path change, there is a large train of
> > > > segments being lost (say 150k out of a 500k window). Data at the end of
> > > > the window did make it through and is SACK'ed. Upon receiving these
> > SACK's
> > > > the sending side enters loss recovery. It will take a very long time
> > > > before recovering the 100k lost segments.
> > > >
> > > > An aggressive recovery algorithm would mitigate the effects of this,
> > but i
> > > > was hoping for a more elegant solution.
> > > >
> > > > //E
> > > >
> > > > _______________________________________________
> > > > tcpm mailing list
> > > > tcpm@ietf.org
> > > > https://www.ietf.org/mailman/listinfo/tcpm
> >
> > _______________________________________________
> > tcpm mailing list
> > tcpm@ietf.org
> > https://www.ietf.org/mailman/listinfo/tcpm
> >