* [Cake] Status of sch_cake and sctp with ECN @ 2018-10-07 8:45 Ruben 2018-10-08 5:06 ` Dave Taht 2018-10-08 5:16 ` Jonathan Morton 0 siblings, 2 replies; 4+ messages in thread From: Ruben @ 2018-10-07 8:45 UTC (permalink / raw) To: cake [-- Attachment #1: Type: text/html, Size: 728 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Cake] Status of sch_cake and sctp with ECN 2018-10-07 8:45 [Cake] Status of sch_cake and sctp with ECN Ruben @ 2018-10-08 5:06 ` Dave Taht 2018-10-08 5:16 ` Jonathan Morton 1 sibling, 0 replies; 4+ messages in thread From: Dave Taht @ 2018-10-08 5:06 UTC (permalink / raw) To: ruben; +Cc: Cake List, ecn-sane On Sun, Oct 7, 2018 at 9:46 PM Ruben <ruben@vfn-nrw.de> wrote: > > Hey guys, > > I googled this but I found no answers. RFC4960 (the sctp RFC) is mentioning ECN, but just in the appendix. I was wondering if the Linux library has ECN support, and how one might active it (as socket option or as system setting?) Pretty good question. The added reliability of ecn would benefit sctp applications. There's two ways to get sctp out of linux, the kernel way and a userspace way. Kernel I thought was the most common. Netperf has support for it. 4+ years back I'd mostly tested sctp over ipv6 and at least from the kernel code in net/sctp/ipv6 it appears to mark packets as ecn capable, but I wasn't looking at the time. whether the congestion control in sctp is currently working worth a damn, don't know. So I can quickly setup a server to test this over ipv6 this week. >and if this tags are currently supported to be handled by sch_cake? ecn capability is a property of any protocol built on top of ip, tcp, udp, sctp, udp_lite, etc. > Hope someone got a bit more overview about this, than me, without digging into code documentations. > > Thanks in advance! > > > Best regards > > Ruben > _______________________________________________ > Cake mailing list > Cake@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/cake -- Dave Täht CTO, TekLibre, LLC http://www.teklibre.com Tel: 1-831-205-9740 ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Cake] Status of sch_cake and sctp with ECN 2018-10-07 8:45 [Cake] Status of sch_cake and sctp with ECN Ruben 2018-10-08 5:06 ` Dave Taht @ 2018-10-08 5:16 ` Jonathan Morton 2018-10-10 13:48 ` Dave Taht 1 sibling, 1 reply; 4+ messages in thread From: Jonathan Morton @ 2018-10-08 5:16 UTC (permalink / raw) To: Ruben; +Cc: cake > On 7 Oct, 2018, at 11:45 am, Ruben <ruben@vfn-nrw.de> wrote: > > I googled this but I found no answers. RFC4960 (the sctp RFC) is mentioning ECN, but just in the appendix. I was wondering if the Linux library has ECN support, and how one might active it (as socket option or as system setting?) and if this tags are currently supported to be handled by sch_cake? ECN itself is an IP-level protocol, using two bits in the former TOS byte. Cake will treat any packets advertising themselves as ECN-capable in this way as supporting ECN. Additionally, Cake uses Linux' packet-dissection mechanism (which I believe supports SCTP) to identify and isolate traffic flows, so it doesn't need to understand every possible transport protocol or encapsulation itself. Of course, it is the responsibility of the sender to set those bits, and of the receiver to interpret them and echo their meaning back to the sender, and of the transport-layer protocol as a whole to respond appropriately to any congestion signal encoded in them. I don't personally know how well SCTP does that. - Jonathan Morton ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Cake] Status of sch_cake and sctp with ECN 2018-10-08 5:16 ` Jonathan Morton @ 2018-10-10 13:48 ` Dave Taht 0 siblings, 0 replies; 4+ messages in thread From: Dave Taht @ 2018-10-10 13:48 UTC (permalink / raw) To: Jonathan Morton; +Cc: ruben, Cake List It turns out that years ago we incorporated an sctp test into flent but it doesn't work. also, I tend to compile netperf with --enable-demo --enable-sctp - but that *silently* fails unless libsctp is installed. Anyway flent-fremont's netperf server now supports sctp, and my firewall for ipv6 doesn't block sctp, and lo and behold, sctp negotiates ecn. It does this independent of the setting of the net.ipv4.tcp_ecn variable. It always negotiates ecn. However, its congestion control (at least in the framework of the netperf test) is just miserable, the SCTP_STREAM test has serious issues trying to saturate a 20Mbit link over 60 seconds. the STREAM_STREAM_MULTI test does, though, and you can see cake making CE markings on it. I don't have sufficient tools or time to look into whether it's doing the right things or not. If anyone cares, a packet cap is up at: http://flent-fremont.bufferbloat.net/~d/sctp/sctp.cap On the other hand, I'm perfectly happy to have a standard, non-greedy, reliable, protocol, one capable of multihoming, actually work from within my home, over ipv6. It feels like the 80s, back when the future for new protocols looked bright, and disco was king. d@dancer:~/sctp$ Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 4096 60.00 4.96 Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 4096 60.00 4.89 Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 4096 60.00 4.89 Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 4096 60.00 4.91 Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 212992 60.01 0.03 Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 212992 60.01 0.03 Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 212992 60.01 0.09 Recv Send Send Socket Socket Message Elapsed Size Size Size Time Throughput bytes bytes bytes secs. 10^6bits/sec 212992 212992 212992 60.01 0.03 ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-10-10 13:48 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-10-07 8:45 [Cake] Status of sch_cake and sctp with ECN Ruben 2018-10-08 5:06 ` Dave Taht 2018-10-08 5:16 ` Jonathan Morton 2018-10-10 13:48 ` Dave Taht
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox