Re: [PATCH 1/3] net: TCP thin-stream detection

From: Arnd Hannemann
Date: Thu Oct 29 2009 - 12:32:49 EST


Andreas Petlund schrieb:
> Den 28. okt. 2009 kl. 04.09 skrev William Allen Simpson:
>
>> Andreas Petlund wrote:
>>> +/* Determines whether this is a thin stream (which may suffer from
>>> + * increased latency). Used to trigger latency-reducing mechanisms.
>>> + */
>>> +static inline unsigned int tcp_stream_is_thin(const struct
>>> tcp_sock *tp)
>>> +{
>>> + return tp->packets_out < 4;
>>> +}
>>> +
>> This bothers me a bit. Having just looked at your Linux presentation,
>> and not (yet) read your papers, it seems much of your justification
>> was
>> with 1 packet per RTT. Here, you seem to be concentrating on 4,
>> probably
>> because many implementations quickly ramp up to 4.
>>
>
> The limit of 4 packets in flight is based on the fact that less than 4
> packets in flight makes fast retransmissions impossible, thus limiting
> the retransmit options to timeout-retransmissions. The criterion is

There is Limited Transmit! So this is generally not true.

> therefore as conservative as possible while still serving its purpose.
> If further losses occur, the exponential backoff will increase latency
> further. The concept of using this limit is also discussed in the
> Internet draft for Early Retransmit by Allman et al.:
> http://www.icir.org/mallman/papers/draft-ietf-tcpm-early-rexmt-01.txt

This ID is covering exactly the cases which Limited Transmit does not
cover and works "automagically" without help of application. So why not
just implement this ID?

Best regards,
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/