Skip to contentSkip to conversation

SCTP performance?

DISCUSSION Ben Greear 4 participants 5 messages Aug 9, 2013 – Aug 12, 2013

Subsystems (2)
lore
Share & tools
lore

Ben Greear

author
#0 lore raw

I just added some support for SCTP to my traffic-generator tool.

I tried to send 1Gbps of traffic, bi-directional, across two 10G interfaces. TCP does this without any trouble at all, but SCTP was asymetric and never got above around 700Mbps, and was usually stuck at < 500Mbps.

perf top didn't show any obvious CPU bottlenecks.

Has anyone done any recent performance testing with SCTP?

I'd be interested to know the results if so...

Thanks,
Ben

Signature · 2 lines
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com
#1 lore raw
Quoted 7 lines · Ben Greear

I just added some support for SCTP to my traffic-generator tool.

I tried to send 1Gbps of traffic, bi-directional, across two 10G interfaces. TCP does this without any trouble at all, but SCTP was asymetric and never got above around 700Mbps, and was usually stuck at < 500Mbps.

Quoted 5 lines

perf top didn't show any obvious CPU bottlenecks.

Has anyone done any recent performance testing with SCTP?

I'd be interested to know the results if so...

You mean there is no SCTP offload on the NIC and/or GRO, yes that's too bad.

author
#2 lore raw
Quoted 8 lines · Eric Dumazet
Quoted 7 lines · Ben Greear

I just added some support for SCTP to my traffic-generator tool.

I tried to send 1Gbps of traffic, bi-directional, across two 10G interfaces. TCP does this without any trouble at all, but SCTP was asymetric and never got above around 700Mbps, and was usually stuck at < 500Mbps.

Quoted 9 lines
Quoted 5 lines

perf top didn't show any obvious CPU bottlenecks.

Has anyone done any recent performance testing with SCTP?

I'd be interested to know the results if so...

You mean there is no SCTP offload on the NIC and/or GRO, yes that's too bad.

I'm sure that is part of the problem.

I got much better results when I explicitly set the tx/rx socket buffer sizes to 2MB, so maybe it just sucks at auto-tuning it's socket buffer sizes.

Thanks,
Ben

Signature · 2 lines
Ben Greear <[email protected]>
Candela Technologies Inc  http://www.candelatech.com
maintainer
#3 lore raw

From: Ben Greear <[email protected]>
Date: Fri, 09 Aug 2013 17:04:59 -0700

Quoted 3 lines

I got much better results when I explicitly set the tx/rx socket buffer sizes to 2MB, so maybe it just sucks at auto-tuning it's socket buffer sizes.

TCP is the only protocol in our stack which does socket buffer size autotuning.

#4 lore raw
In reply to Ben Greear
Quoted 19 lines · Ben Greear
Quoted 8 lines · Eric Dumazet
Quoted 7 lines · Ben Greear

I just added some support for SCTP to my traffic-generator tool.

I tried to send 1Gbps of traffic, bi-directional, across two 10G interfaces. TCP does this without any trouble at all, but SCTP was asymetric and never got above around 700Mbps, and was usually stuck at < 500Mbps.

Quoted 9 lines
Quoted 5 lines

perf top didn't show any obvious CPU bottlenecks.

Has anyone done any recent performance testing with SCTP?

I'd be interested to know the results if so...

You mean there is no SCTP offload on the NIC and/or GRO, yes that's too bad.

Quoted 9 lines

I'm sure that is part of the problem.

I got much better results when I explicitly set the tx/rx socket buffer sizes to 2MB, so maybe it just sucks at auto-tuning it's socket buffer sizes.

Thanks,
Ben

There is no buffer autotunning. There is also no GRO since SCTP doesn't lend itself easily to GRO. :(

There has been some research efforts at autotunning, but nothing proposed. I'll see if I can find the code and make it work better.

-vlad