Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-23 Thread Neal Cardwell
On Wed, Sep 23, 2015 at 10:46 AM, Bendik Rønning Opstad wrote: >> On Tue, Sep 22, 2015 at 2:02 PM, Neal Cardwell wrote: >> > More generally, my sense is that we should tweak the is_cwnd_limited code >> > to >> > shift from saying "set is_cwnd_limited to true iff the cwnd is known to be >> > limi

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-23 Thread Bendik Rønning Opstad
Neal, Eric, sorry for the late replies, but keeping up with your speedy replies is a full time job :-) The packetdrill scripts are certainly useful to test this, so thanks for supplying those! On Tuesday, September 22, 2015 04:04:37 PM you wrote: > On Tue, Sep 22, 2015 at 2:02 PM, Neal Cardwell

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-22 Thread Neal Cardwell
On Tue, Sep 22, 2015 at 2:02 PM, Neal Cardwell wrote: > More generally, my sense is that we should tweak the is_cwnd_limited code to > shift from saying "set is_cwnd_limited to true iff the cwnd is known to be > limiting transmits" to saying "set is_cwnd_limited to true iff the packets in > flight

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-22 Thread Neal Cardwell
> I'll describe two example scenarios in detail. In both scenarios we are in > congestion avoidance after experiencing loss. Nagle is disabled. Thanks for the detailed follow-up! And thanks, Eric, for the packetdrill script! This looks like an issue of how to deal with the case when we run out of

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-22 Thread Eric Dumazet
On Tue, 2015-09-22 at 09:09 -0700, Eric Dumazet wrote: > On Tue, 2015-09-22 at 07:46 -0700, Eric Dumazet wrote: > > > > > Ahem. > > > > packetdrill can make this in one script, as you can exactly control the > > packets that the 'remote' peer would answer. > > > > No need for complex setup. You

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-22 Thread Eric Dumazet
On Tue, 2015-09-22 at 07:46 -0700, Eric Dumazet wrote: > > Ahem. > > packetdrill can make this in one script, as you can exactly control the > packets that the 'remote' peer would answer. > > No need for complex setup. You should try it, and as a bonus we could > easily reproduce the problem an

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-22 Thread Eric Dumazet
On Tue, 2015-09-22 at 16:29 +0200, Bendik Rønning Opstad wrote: > > Thanks for this report! > > Thank you for answering! > > > When you say "CWND is reduced due to loss", are you talking about RTO > > or Fast Recovery? Do you have any traces you can share that illustrate > > this issue? > > The

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-22 Thread Bendik Rønning Opstad
> Thanks for this report! Thank you for answering! > When you say "CWND is reduced due to loss", are you talking about RTO > or Fast Recovery? Do you have any traces you can share that illustrate > this issue? The problem is not related to loss recovery, but only occurs in congestion avoidance s

Re: [PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-19 Thread Neal Cardwell
On Fri, Sep 18, 2015 at 7:38 PM, Bendik Rønning Opstad wrote: > > Application limited streams such as thin streams, that transmit small > amounts of payload in relatively few packets per RTT, are prevented from > growing the CWND after experiencing loss. This leads to increased > sojourn times for

[PATCH net-next] tcp: Fix CWV being too strict on thin streams

2015-09-18 Thread Bendik Rønning Opstad
Application limited streams such as thin streams, that transmit small amounts of payload in relatively few packets per RTT, are prevented from growing the CWND after experiencing loss. This leads to increased sojourn times for data segments in streams that often transmit time-dependent data. After