Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#18627 closed defect (fixed)

Run a separate websocket server reporting the transport as "snowflake"

Reported by: arlolra Owned by: dcf
Priority: Medium Milestone:
Component: Circumvention/Snowflake Version:
Severity: Normal Keywords:
Cc: serene Actual Points:
Parent ID: Points:
Reviewer: Sponsor:


Also, maybe we also need to spin up a pretty much identical but separate websocket server, to more easily measure the number of snowflake proxies available?

If we wanted to purely count Snowflake users, does it make sense to spin up another websocket server and maybe label it as "snowflake" instead? Is there anything special we need to do to get it displayed on the metrics website?

This is what we should do. (I meant to do it already...) It will be a websocket server but will record users as snowflake.

Child Tickets

Change History (3)

comment:1 Changed 5 years ago by dcf

What I'm planning to do is just to import the existing websocket-server code into the snowflake repo, and make the necessary changes. The necessary changes are pretty trivial, but perhaps we'll want to make further changes independent of the upstream websocket.git repo, like #18628.

comment:2 Changed 5 years ago by dcf

Resolution: fixed
Status: newclosed

There's a server running at

  • [2600:3c01::f03c:91ff:fe73:b602]:9902

I added the server source code to the snowflake repo. I put it in the /server directory, moving the existing WebRTC server out of the way into /server-webrtc. Here are the commits related to the server source code:
c4cfc7f8 Move server to server-webrtc.
e5370551 Add a copy of websocket-server in the server directory.
cfca4767 Build the websocket-server.
a269053a Make Snowflake-specific changes to the websocket server.

comment:3 Changed 5 years ago by dcf

BTW I tested the server locally by pointing Firefox to file:///.../snowflake/proxy/build/snowflake.html?manual=1&relay= I had to rewind the client to 598e2a3b because of #18653.

Note: See TracTickets for help on using tickets.