svn commit: r344368 - head/sys/netinet

Michael Tuexen tuexen at freebsd.org
Thu Feb 21 09:22:05 UTC 2019


> On 21. Feb 2019, at 09:32, Kubilay Kocak <koobs at FreeBSD.org> wrote:
> 
> On 21/02/2019 5:03 am, Michael Tuexen wrote:
>> Author: tuexen
>> Date: Wed Feb 20 18:03:43 2019
>> New Revision: 344368
>> URL: https://svnweb.freebsd.org/changeset/base/344368
>> Log:
>>   Reduce the TCP initial retransmission timeout from 3 seconds to
>>   1 second as allowed by RFC 6298.
>>      Reviewed by:		kbowling@, Richard Scheffenegger
>>   Sponsored by:		Netflix, Inc.
>>   Differential Revision:	https://reviews.freebsd.org/D18941
>> Modified:
>>   head/sys/netinet/tcp_syncache.c
>>   head/sys/netinet/tcp_timer.h
>> Modified: head/sys/netinet/tcp_syncache.c
>> ==============================================================================
>> --- head/sys/netinet/tcp_syncache.c	Wed Feb 20 17:56:38 2019	(r344367)
>> +++ head/sys/netinet/tcp_syncache.c	Wed Feb 20 18:03:43 2019	(r344368)
>> @@ -159,7 +159,7 @@ static int	 syncookie_cmp(struct in_conninfo *inc, str
>>   *                  tcp_backoff[1] +
>>   *                  tcp_backoff[2] +
>>   *                  tcp_backoff[3]) + 3 * tcp_rexmit_slop,
>> - * 3000 ms * (1 + 2 + 4 + 8) +  3 * 200 ms = 45600 ms,
>> + * 1000 ms * (1 + 2 + 4 + 8) +  3 * 200 ms = 15600 ms,
>>   * the odds are that the user has given up attempting to connect by then.
>>   */
>>  #define SYNCACHE_MAXREXMTS		3
>> Modified: head/sys/netinet/tcp_timer.h
>> ==============================================================================
>> --- head/sys/netinet/tcp_timer.h	Wed Feb 20 17:56:38 2019	(r344367)
>> +++ head/sys/netinet/tcp_timer.h	Wed Feb 20 18:03:43 2019	(r344368)
>> @@ -77,7 +77,7 @@
>>  #define	TCPTV_MSL	( 30*hz)		/* max seg lifetime (hah!) */
>>  #define	TCPTV_SRTTBASE	0			/* base roundtrip time;
>>  						   if 0, no idea yet */
>> -#define	TCPTV_RTOBASE	(  3*hz)		/* assumed RTO if no info */
>> +#define	TCPTV_RTOBASE	(  1*hz)		/* assumed RTO if no info */
>>    #define	TCPTV_PERSMIN	(  5*hz)		/* minimum persist interval */
>>  #define	TCPTV_PERSMAX	( 60*hz)		/* maximum persist interval */
>> _______________________________________________
> 
> Any way this can be a run-time tunable?
That is definitely possible. However, changing the default should be separate
from making it sysctl-able.

I'll bring this up in the bi-weekly transport call and see what others think.

Best regards
Michael
> 



More information about the svn-src-all mailing list