Subject: Re: [PATCH net] tcp: do not grow receive window if skb->len < 128

From: Weiping Pan <[email-masked]>
Date: Fri, 27 Dec 2013 15:40:20 +0800

On 12/27/2013 02:11 PM, Eric Dumazet wrote:
> On Fri, 2013-12-27 at 11:20 +0800, Weiping Pan wrote:
>> Commit 4e4f1fc22681(tcp: properly increase rcv_ssthresh for ofo packets) can
>> grow receive window for out of order packets,
>> but for in order packets, we only call tcp_grow_window() if skb->len >= 128,
>> I think we should add the same condition for out of order packets.
>>
> Why do you think so ? Do you have any experimental data to share ?
Hi, Eric,

No. I am just wondering why you not treat out of order and in order 
packets in the same way,
so I raised this question.
>
> I personally think the basic test in tcp_event_data_recv() is redundant
> with the logic in tcp_grow_window()
I think the original purpose of this test is to reduce the number of 
times of modifying rcv_ssthresh,
then to avoid SWS. And it can help reduce CPU cycles waisted in 
tcp_grow_window()
since it is on the critical path for in order packets.

>
> skb->len < 128 seems a poor test, real factor is skb->len/skb->truesize
> ratio.
Yes.
But since we already have "if (tcp_win_from_space(skb->truesize) <= 
skb->len)" in tcp_grow_window(),
I do not know how to choose another test, or the logic in 
tcp_grow_window() is enough and we can skip that test
in tcp_event_data_recv().
>
> Note: Please always CC a patch author when you mention a commit in
> a changelog.
Ok, I will remember that.

thanks
Weiping Pan
> Thanks