DSACK

Scheffenegger, Richard Richard.Scheffenegger at netapp.com
Sun Feb 24 14:43:50 UTC 2019


https://wiki.freebsd.org/action/login/TransportProtocols/tcp_rfc_compliance

Apparently, it was added there with change #13	2015-09-27 01:23:40	8925	 to previous	EitanAdler

It's not unlikely, that I was mistaken seeing this in upstream, and the "support" of DSACK claimed here really is only about "ignoring" incoming DSACK packets...

Currently checking to see, if this can be added with a relatively straightforward logical condition, and cleared on the next incoming segment (data or pure ACK).


-----Original Message-----
From: Randall Stewart <rrs at netflix.com> 
Sent: Sonntag, 24. Februar 2019 04:15
To: Scheffenegger, Richard <Richard.Scheffenegger at netapp.com>
Cc: Michael Tuexen <tuexen at freebsd.org>; freebsd-transport at freebsd.org
Subject: Re: DSACK

Richard:

I agree it would be a nice to add thing.. I have thought about doing it for Rack and BBR, but there are so many other things that need tending too :)

As to “support is claimed”.. where is that, A simple grep through the code for 2883  i.e.

cd sys/netinet
grep “2883” tcp*

does not show anything.. is it in one of the man pages or something?

Thanks

R

> On Feb 24, 2019, at 7:10 AM, Scheffenegger, Richard <Richard.Scheffenegger at netapp.com> wrote:
>
> Well, RFC2883 support is claimed, and it may have been working somewhat in very old code (before 2005?) incidentally...
>
> Even though FBSD doesn't make use of DSACK information, Linux does (unwind of spurious RTOs for example). So having minimal DSACK (again?) is certainly good to have.
>
> Also, I wanted to see what tcp_update_sack_list does under certain corner cases, where we've run into issues, when not adjusting the sack block left edge (belt + suspenders).
>
> -----Original Message-----
> From: Randall Stewart <rrs at netflix.com>
> Sent: Sonntag, 24. Februar 2019 04:03
>
>
> I just don’t remember ever seeing code in the stack to do DSACK. I know I have added some small bits to be aware of DSACK coming in from other stacks in BBR and Rack, but it only does accounting and does not use the information.. nor does it generate any..
>
> I have thought about doing it, but I have not placed a big priority on it….
>
> R
>
>> On Feb 24, 2019, at 7:01 AM, Michael Tuexen <tuexen at freebsd.org> wrote:
>>
>>> On 24. Feb 2019, at 12:32, Randall Stewart <rrs at netflix.com> wrote:
>>>
>>> I don’t think I have ever seen FreeBSD emit a DSACK. Now admittedly 
>>> I have only paid close attention in current. But that spans even 
>>> back into 11 days I think.
>>>
>>> Hmm wonder if I have a 10 machine I can go back and look at :)
>> I tried to test on 10.4 yesterday, but packetdrill doesn't run that 
>> well on 10.4 (missing pcap functions)... I'm not sure I want to backport it.
>>
>> Best regards
>> Michael
>>>
>>> R
>>>
>>>> On Feb 23, 2019, at 5:30 AM, Michael Tuexen <tuexen at freebsd.org> wrote:
>>>>
>>>>> On 23. Feb 2019, at 11:28, Scheffenegger, Richard <Richard.Scheffenegger at netapp.com> wrote:
>>>>>
>>>>>
>>>>> Bin grad am flughafen und hab leider nur HEAD bei mir (und ein iso von 10, wo ich grad versuch, das mit scapy zu checken).
>>>>>
>>>>> Falls du schnell einen packetdrill gegen BSD11 ohne D18960 machen kannst, und es da noch DSACKs raussendet, wäre das toll!
>>>>>
>>>>> Ich fürchte aber, das das schon längere Zeit kaputt ist - da wir nun doch noch nicht D18960 drinnen haben, wie ich irrtümlich dachte.
>>>> OK. I'll take a look.
>>>>
>>>> Have a save trip!
>>>>
>>>> Best regards
>>>> Michael
>>>>>
>>>>>
>>>>>
>>>>> -----Original Message-----
>>>>> From: Michael Tuexen <tuexen at freebsd.org>
>>>>> Sent: Samstag, 23. Februar 2019 11:25
>>>>> To: Scheffenegger, Richard <Richard.Scheffenegger at netapp.com>
>>>>> Cc: freebsd-transport at freebsd.org
>>>>> Subject: Re: DSACK
>>>>>
>>>>> NetApp Security WARNING: This is an external email. Do not click links or open attachments unless you recognize the sender and know the content is safe.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> On 23. Feb 2019, at 10:29, Scheffenegger, Richard <Richard.Scheffenegger at netapp.com> wrote:
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> A colleague pointed me to the stack (HEAD) no longer emitting DSACK options a few days ago...
>>>>>>
>>>>>> I was under the impression, that older versions of FreeBSD would send out DSACKs for spurious duplicate packets.
>>>>>>
>>>>>> But when I try this script against HEAD, regular cumulative ACKs without DSACK blocks are showing up.
>>>>>>
>>>>>> Currently bandwidth starved - but was that a conscious decision? Or was me observing DSACKs never a thing?
>>>>> I would say if it is working in stable/11, but not in stable/12 and head, it is a regression.
>>>>>
>>>>> Best regards
>>>>> Michael
>>>>>>
>>>>>> Thanks a lot,
>>>>>> Richard
>>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> freebsd-transport at freebsd.org mailing list 
>>>> https://lists.freebsd.org/mailman/listinfo/freebsd-transport
>>>> To unsubscribe, send any mail to "freebsd-transport-unsubscribe at freebsd.org"
>>>
>>> ------
>>> Randall Stewart
>>> rrs at netflix.com
>>>
>>>
>>>
>>
>
> ------
> Randall Stewart
> rrs at netflix.com
>
>
>

------
Randall Stewart
rrs at netflix.com





More information about the freebsd-transport mailing list