[tor-bugs] #33336 [Circumvention/Snowflake]: Trial deployment of Snowflake with Turbo Tunnel
Tor Bug Tracker & Wiki
blackhole at torproject.org
Fri Feb 21 10:57:27 UTC 2020
#33336: Trial deployment of Snowflake with Turbo Tunnel
-------------------------------------+--------------------------
Reporter: dcf | Owner: dcf
Type: task | Status: accepted
Priority: Medium | Milestone:
Component: Circumvention/Snowflake | Version:
Severity: Normal | Resolution:
Keywords: turbotunnel | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
-------------------------------------+--------------------------
Comment (by arma):
Replying to [comment:12 dcf]:
> I think I know why idle browsing seemed to disconnect more, at least in
the quic case. It's because the older version of quic-go we are using
(2019-04-01) does not send frequent enough keepalives. It sets the
keepalive interval to half the idle timeout, which for us is
[https://gitweb.torproject.org/user/dcf/snowflake.git/tree/client/lib/snowflake.go?h
=turbotunnel-quic&id=d5be0906ffe4ef8de8a9345690713bc362d3bcee#n72 10
minutes]. Keepalives every 5 minutes are not enough to prevent
[https://gitweb.torproject.org/user/dcf/snowflake.git/tree/client/lib/webrtc.go?h
=turbotunnel-quic&id=d5be0906ffe4ef8de8a9345690713bc362d3bcee#n110
checkForStaleness] from killing the connection after 30 seconds of
idleness.
Remember that Tor has its own application level (i.e. tor client <=> tor
bridge in this case) keepalives.
Which by an odd quirk of fate are also sent and received every 5 minutes:
see the KeepalivePeriod torrc option:
https://gitweb.torproject.org/tor.git/tree/src/core/mainloop/mainloop.c#n1236
You could in theory crank this number down to 20 seconds to workaround the
problem at the quic layer. But it is definitely not the right long term
answer, and also it might introduce other weird side effects, like
apparently we use the Keepalive parameter to decide if we've waited long
enough that we should give up on an in-progress-but-not-yet-open OR
connection:
https://gitweb.torproject.org/tor.git/tree/src/core/mainloop/mainloop.c#n1236
It is in any case an option to explore if upgrading the quic libs turns
out to be messier than expected. :)
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/33336#comment:13>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list