svn commit: r242263 - head/sys/netinet

Andre Oppermann andre at freebsd.org
Sun Oct 28 21:45:58 UTC 2012


On 28.10.2012 22:26, Rui Paulo wrote:
> On 28 Oct 2012, at 12:20, Andre Oppermann <andre at FreeBSD.org> wrote:
>
>> Author: andre
>> Date: Sun Oct 28 19:20:23 2012
>> New Revision: 242263
>> URL: http://svn.freebsd.org/changeset/base/242263
>>
>> Log:
>>   Add SACK_PERMIT to the list of TCP options that are switched off after
>>   retransmitting a SYN three times.
>>
>>   MFC after:	2 weeks
>>
>> Modified:
>>   head/sys/netinet/tcp_timer.c
>>
>> Modified: head/sys/netinet/tcp_timer.c
>> ==============================================================================
>> --- head/sys/netinet/tcp_timer.c	Sun Oct 28 19:16:22 2012	(r242262)
>> +++ head/sys/netinet/tcp_timer.c	Sun Oct 28 19:20:23 2012	(r242263)
>> @@ -585,7 +585,7 @@ tcp_timer_rexmt(void * xtp)
>> 	 * unknown-to-them TCP options.
>> 	 */
>> 	if ((tp->t_state == TCPS_SYN_SENT) && (tp->t_rxtshift == 3))
>> -		tp->t_flags &= ~(TF_REQ_SCALE|TF_REQ_TSTMP);
>> +		tp->t_flags &= ~(TF_REQ_SCALE|TF_REQ_TSTMP|TF_SACK_PERMIT);
>> 	/*
>> 	 * If we backed off this far, our srtt estimate is probably bogus.
>> 	 * Clobber it so we'll take the next rtt measurement as our srtt;
>
> Do you have any data regarding this commit or you're just trying to make sure
 > the SACK option follows the same behaviour of the WSCALE/TSTMP options?

The latter.  For the purpose of turning off the options after three tries
it is contradictory to leave SACK on.

There is discussion of scrapping this whole option disabling altogether.
Until then better have the 'correct' behavior.

-- 
Andre



More information about the svn-src-all mailing list