Linux SCTP: what kind of performance should I expect from netperf?

Dave Taht dave.taht at gmail.com
Tue Apr 15 21:23:05 EDT 2014


On Tue, Mar 18, 2014 at 9:03 AM, Dave Taht <dave.taht at gmail.com> wrote:
> On Tue, Mar 18, 2014 at 11:49 AM, Daniel Borkmann <dborkman at redhat.com> wrote:
>> On 03/18/2014 04:16 PM, Jesper Dangaard Brouer wrote:
>>>
>>>
>>> Hi Daniel,
>>>
>>> Can you give some input on this thread?

It appears I despaired of SCTP's performance too early,
according to this commit, it just got vastly improved:

https://git.kernel.org/cgit/linux/kernel/git/davem/net.git/commit/?id=362d52040c71f6e8d8158be48c812d7729cb8df1

way to go daniel!

Have to write some tests for it now!

I do wish someone could get the ledbat linux kernel module up to parity with
at least the osx implementation and get it mainlined.

https://github.com/silviov/TCP-LEDBAT

>>>
>>> On Tue, 18 Mar 2014 10:53:40 -0400 Dave Taht <dave.taht at gmail.com> wrote:
>>>
>>>> I was curious about sctp's performance characteristics on
>>>> AQM'd systems... so
>>>> I built netperf with sctp support, and ran a couple tests on
>>>> kernel 3.11...
>>>>
>>>> +1: SCTP appears to work over IPv6
>>>> -1: Throughput is terrible
>>
>>
>> Yes, performance sucks so far (it's a known problem) and
>> we need to work on it ... ;-)
>
>
> I want to make clear that I don't know diddly about SCTP. I DO grok
> TCP fairly well...
>
> I got interested in sctp again after hearing a proposal to make
> it easier to fq chunks.
>
>> I presume one reason here could be as well that you need to
>> do crc32c checksumming on software (what does perf say?).
>
> Well what I think I see is sctp not opening up a window for packets
> in flight (as tcp would with cwnd), and basically ping-ponging
> sends and acks over the 14ms RTT:
>
> capture here
>
> http://snapon.lab.bufferbloat.net/~d/sctp/
>
> One of my concerns with all the tcp optimization work over the last 3
> years was that it might have broken other protocols and stuff that
> plugged into the congestion control api for Linux. For example, my
> ledbat kernel module behaves similarly, never getting out of slow
> start.
>
> But not having a test for sctp in general (I used netperf, is there a better?).
>
> So if SCTP not ramping up is a known problem I can go back to scratching
> my head at the ledbat code.
>
> I WAS quite delighted to see SCTP "just work" over ipv6. :)
>
>>
>>
>>>> d at nuc:~/git/netperf$ netperf -6 -H snapon.lab.bufferbloat.net -t
>>>> SCTP_STREAM_MANY
>>>> SCTP 1-TO-MANY STREAM TEST from ::0 (::) port 0 AF_INET6 to
>>>> snapon.lab.bufferbloat.net () port 0 AF_INET6 : demo
>>>> Recv   Send    Send
>>>> Socket Socket  Message  Elapsed
>>>> Size   Size    Size     Time     Throughput
>>>> bytes  bytes   bytes    secs.    10^6bits/sec
>>>>
>>>> 212992 212992   4096    10.00       0.31
>>>> d at nuc:~/git/netperf$ netperf -6 -H snapon.lab.bufferbloat.net -t
>>>> TCP_MAERTS
>>>> MIGRATED TCP MAERTS TEST from ::0 (::) port 0 AF_INET6 to
>>>> snapon.lab.bufferbloat.net () port 0 AF_INET6 : demo
>>>> Recv   Send    Send
>>>> Socket Socket  Message  Elapsed
>>>> Size   Size    Size     Time     Throughput
>>>> bytes  bytes   bytes    secs.    10^6bits/sec
>>>>
>>>>   87380  16384  16384    10.00       7.65
>
>
>
> --
> Dave Täht
>
> Fixing bufferbloat with cerowrt: http://www.teklibre.com/cerowrt/subscribe.html



-- 
Dave Täht

NSFW: https://w2.eff.org/Censorship/Internet_censorship_bills/russell_0296_indecent.article



More information about the Bloat-devel mailing list