Dnscrypt-proxy: Is there any plan to support TFO(TCP Fast Open)?

Created on 29 Apr 2019  路  3Comments  路  Source: DNSCrypt/dnscrypt-proxy

We already have TLS1.3 with 0-RTT now and if we can use TFO when doing DoH queries, the difference of latency between DoH and traditional UDP will be further reduced. However the standard library of golang doesn't have TFO support by now, while lots of other implements using syscall or setsockopt have been talked by peoples(https://github.com/golang/go/issues/4842). So is there any plan to do our step towards TFO?

Most helpful comment

FWIW, you can easily enable TFO in go by setting the appropriate setsockopt using the new net.ListenConfig.

All 3 comments

Go doesn't support 0-RTT, and this is still being discussed due to security issues.

TFO isn't supported by Go either, and also reduces privacy. If the router strips it, it's useless. If it doesn't, and your public IP address changes (for example if you connect to a VPN), TFO can be used to track all your IP addresses.

Along with reliability issues, TFO, if implemented, will be disabled by default. This is still blocked by Go not supporting it for now.

The best way to reduce latency with traditional UDP is to use traditional UDP :)

FWIW, you can easily enable TFO in go by setting the appropriate setsockopt using the new net.ListenConfig.

PR welcome :)

Was this page helpful?
0 / 5 - 0 ratings