Development issues regarding the cerowrt test router project
 help / color / mirror / Atom feed
* [Cerowrt-devel] how to ecn again on osx and ios!!!
@ 2021-03-09 20:38 Dave Taht
  2021-03-09 21:24 ` [Cerowrt-devel] [Bloat] " Jonathan Morton
  2021-03-30  9:38 ` [Cerowrt-devel] [Ecn-sane] " Jan Rüth
  0 siblings, 2 replies; 3+ messages in thread
From: Dave Taht @ 2021-03-09 20:38 UTC (permalink / raw)
  To: ECN-Sane, bloat, Make-Wifi-fast, cerowrt-devel, Cake List,
	tsvwg IETF list

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@taht.net <Dave Täht> CTO, TekLibre, LLC Tel: 1-831-435-0729

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Cerowrt-devel] [Bloat] how to ecn again on osx and ios!!!
  2021-03-09 20:38 [Cerowrt-devel] how to ecn again on osx and ios!!! Dave Taht
@ 2021-03-09 21:24 ` Jonathan Morton
  2021-03-30  9:38 ` [Cerowrt-devel] [Ecn-sane] " Jan Rüth
  1 sibling, 0 replies; 3+ messages in thread
From: Jonathan Morton @ 2021-03-09 21:24 UTC (permalink / raw)
  To: Dave Taht
  Cc: ECN-Sane, bloat, Make-Wifi-fast, cerowrt-devel, Cake List,
	tsvwg IETF list

> On 9 Mar, 2021, at 10:38 pm, Dave Taht <dave.taht@gmail.com> wrote:
> 
> sudo sysctl -w net.inet.tcp.disable_tcp_heuristics=1

Now that might well be the missing link.  I think we missed it before since it doesn't have "ecn" in its name.

 - Jonathan Morton

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Cerowrt-devel] [Ecn-sane] how to ecn again on osx and ios!!!
  2021-03-09 20:38 [Cerowrt-devel] how to ecn again on osx and ios!!! Dave Taht
  2021-03-09 21:24 ` [Cerowrt-devel] [Bloat] " Jonathan Morton
@ 2021-03-30  9:38 ` Jan Rüth
  1 sibling, 0 replies; 3+ messages in thread
From: Jan Rüth @ 2021-03-30  9:38 UTC (permalink / raw)
  To: Dave Taht
  Cc: ECN-Sane, bloat, Make-Wifi-fast, cerowrt-devel, Cake List,
	tsvwg IETF list

[-- Attachment #1: Type: text/plain, Size: 2031 bytes --]

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@gmail.com<mailto:dave.taht@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@taht.net <Dave Täht> CTO, TekLibre, LLC Tel: 1-831-435-0729
_______________________________________________
Ecn-sane mailing list
Ecn-sane@lists.bufferbloat.net
https://lists.bufferbloat.net/listinfo/ecn-sane


[-- Attachment #2: Type: text/html, Size: 4615 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-03-30  9:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-09 20:38 [Cerowrt-devel] how to ecn again on osx and ios!!! Dave Taht
2021-03-09 21:24 ` [Cerowrt-devel] [Bloat] " Jonathan Morton
2021-03-30  9:38 ` [Cerowrt-devel] [Ecn-sane] " Jan Rüth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox