[Cerowrt-devel] [Ecn-sane] how to ecn again on osx and ios!!!

Jan Rüth Jan.Rueth at comsys.rwth-aachen.de
Tue Mar 30 05:38:42 EDT 2021


Hi,

I wrote a small dtrace script to track ECN connections on MacOS.

It basically dumps the ecn_flags from the MacOS kernel to find out if ECN was successfully negotiated or not.
It further counts ECN bits on incoming packets.

For anyone interested (feel free to share), the code is here:

https://github.com/janrueth/macos-passive-ecn-sniffer

During testing I also observed a weird behavior (connections fail) between MacOS and Linux when ECN flags cause packet drops on the downlink (reverse) path.
There is also a more detailed description and a packet trace of this happening in the github repository.

If you have any comments, feel free to contact me.


Best
 Jan

On 9. Mar 2021, at 21:38, Dave Taht <dave.taht at gmail.com<mailto:dave.taht at gmail.com>> wrote:

The additional sysctl required to re-enable ecn negotiation always is

sudo sysctl -w net.inet.tcp.disable_tcp_heuristics=1

See also:
https://github.com/apple-opensource/xnu/blob/master/bsd/netinet/tcp_cache.c#L164

It disables mptcp and tfo, which for purposes of even basic worldwide
testing of the survival of the ect(0) and ect(1) codepoints, don't
really matter. I am delirious with joy to be able to test this stuff
again from devices more people have, and I hope y'all turn it on for a
while, on ethernet/wifi and lte, get a bunch of captures and see what
happens in day to day use. I would so love packet captures from many
many vantage points against the worldwide flent testing network.

Those of you that have root access on your iphones can also test ecn
in this way.

A huge thanks to Christoph Paasch over at apple for pointing this out.

--
"For a successful technology, reality must take precedence over public
relations, for Mother Nature cannot be fooled" - Richard Feynman

dave at taht.net <Dave Täht> CTO, TekLibre, LLC Tel: 1-831-435-0729
_______________________________________________
Ecn-sane mailing list
Ecn-sane at lists.bufferbloat.net
https://lists.bufferbloat.net/listinfo/ecn-sane

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.bufferbloat.net/pipermail/cerowrt-devel/attachments/20210330/e4685e96/attachment.html>


More information about the Cerowrt-devel mailing list