lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 2 May 2012 20:14:31 -0400
From:	Neal Cardwell <ncardwell@...gle.com>
To:	Yuchung Cheng <ycheng@...gle.com>
Cc:	davem@...emloft.net, ilpo.jarvinen@...sinki.fi,
	nanditad@...gle.com, netdev@...r.kernel.org
Subject: Re: [PATCH v4 2/3] tcp: early retransmit

On Wed, May 2, 2012 at 7:30 PM, Yuchung Cheng <ycheng@...gle.com> wrote:
> This patch implements RFC 5827 early retransmit (ER) for TCP.
> It reduces DUPACK threshold (dupthresh) if outstanding packets are
> less than 4 to recover losses by fast recovery instead of timeout.
>
> While the algorithm is simple, small but frequent network reordering
> makes this feature dangerous: the connection repeatedly enter
> false recovery and degrade performance. Therefore we implement
> a mitigation suggested in the appendix of the RFC that delays
> entering fast recovery by a small interval, i.e., RTT/4. Currently
> ER is conservative and is disabled for the rest of the connection
> after the first reordering event. A large scale web server
> experiment on the performance impact of ER is summarized in
> section 6 of the paper "Proportional Rate Reduction for TCP”,
> IMC 2011. http://conferences.sigcomm.org/imc/2011/docs/p155.pdf
>
> Note that Linux has a similar feature called THIN_DUPACK. The
> differences are THIN_DUPACK do not mitigate reorderings and is only
> used after slow start. Currently ER is disabled if THIN_DUPACK is
> enabled. I would be happy to merge THIN_DUPACK feature with ER if
> people think it's a good idea.
>
> ER is enabled by sysctl_tcp_early_retrans:
>  0: Disables ER
>
>  1: Reduce dupthresh to packets_out - 1 when outstanding packets < 4.
>
>  2: (Default) reduce dupthresh like mode 1. In addition, delay
>     entering fast recovery by RTT/4.
>
> Note: mode 2 is implemented in the third part of this patch series.
>
> Signed-off-by: Yuchung Cheng <ycheng@...gle.com>
> ---
> ChangeLog in v2:
>  - swapped part1 and part2
> ChangeLog in v3:
>  - trivial text fixes in documentation.
> ChangeLog in v4:
>  - disables ER if any reordering. shuffle early retransmit vars in tcp_sock.

Acked-by: Neal Cardwell <ncardwell@...gle.com>

neal
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ