Opened 4 weeks ago

Closed 13 days ago

Last modified 7 days ago

#34043 closed task (fixed)

Update snowflake to persist sessions across proxies

Reported by: dcf Owned by: dcf
Priority: Medium Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-rbm TorBrowserTeam202005R snowflake turbotunnel
Cc: cohosh, phw, arlolra, dcf, tbb-team Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

This updates snowflake for #33745 and #33897, which add Turbo Tunnel features to snowflake.

There are two new dependencies, kcp-go and smux, which together make up the inner reliability layer. There's a patch to kcp-go to eliminate dependencies of features we don't use.

This is a Tor Browser ticket but I'm putting it in Circumvention/Snowflake to start to see if there's anything else we want to merge at the same time. Maybe #34042?

Child Tickets

Change History (13)

comment:1 Changed 4 weeks ago by dcf

I'm now testing a build with a branch (an updated version of the one from comment:6:ticket:33745) and will update if it builds successfully.

comment:3 Changed 4 weeks ago by cohosh

I think it's worth including #34042 (it's a one-line change that should improve things quite a bit).

Were there any torrc file modications we want to include here?

comment:4 Changed 3 weeks ago by dcf

Status: needs_reviewneeds_information

#34042 is in, anything else?

I wasn't sure if we wanted to finish all the children of #19001 and merge it into Tor Browser en masse, or do pieces of it as they are ready.

If it's ready to merge now, I can update the merge branch and change this into a Tor Browser ticket.

comment:5 Changed 3 weeks ago by cohosh

IMO, let's get what we have into alpha now so that people start using it.

comment:6 Changed 3 weeks ago by dcf

Cc: tbb-team added
Component: Circumvention/SnowflakeApplications/Tor Browser
Keywords: tbb-rbm TorBrowserTeam202005R added
Status: needs_informationneeds_review

I'll turn this into a tbb-team ticket now. tbb-team, here is a patch for the new snowflake features, rebased on tbb-9.5a12-build3.

https://gitweb.torproject.org/user/dcf/tor-browser-build.git/commit/?h=snowflake-turbotunnel-merge_3&id=68d61e4e0787ba5d088661bce468b1d63f6949de

comment:7 Changed 3 weeks ago by gk

Status: needs_reviewneeds_information

dcf/cohosh: how important is that for the decision about shipping snowflake in Tor Browser 9.5 stable? Should this work go into it if snowflake is picked for stable? Should it get more testing on alpha first?

comment:8 Changed 3 weeks ago by cohosh

IMO, snowflake should not go into stable without this. If we want more testing, we should keep snowflake in alpha for another release. But FWIW, dcf has been releasing browser builds with this feature already and it's gotten quite a bit of testing.

comment:9 in reply to:  7 Changed 3 weeks ago by dcf

Replying to gk:

dcf/cohosh: how important is that for the decision about shipping snowflake in Tor Browser 9.5 stable? Should this work go into it if snowflake is picked for stable? Should it get more testing on alpha first?

cohosh is right, there should not be a stable release without this ticket. The children of #19001 are some other things that may have to happen before a stable release, but for me, this ticket is the big one necessary for a good user experience.

I intended this ticket to go into alpha first. There have been several test bundles made with it, but not much testing by people outside the anti-censorship team. Also, I'm not sure we currently have enough Snowflake proxies to support users of stable if it suddenly becomes very popular; i.e., I expect we could handle 1,000 users but maybe not 10,000 at this point.

comment:10 Changed 3 weeks ago by gk

Status: needs_informationneeds_review

Thanks!

comment:11 Changed 2 weeks ago by dcf

Keywords: snowflake added

comment:12 Changed 13 days ago by gk

Resolution: fixed
Status: needs_reviewclosed

Looks good to me. Cherry-picked to master (commit 8547db1c629adf1bbdabcb44e2245944920472e6).

comment:13 Changed 7 days ago by dcf

Keywords: turbotunnel added
Note: See TracTickets for help on using tickets.