zllovesuki / specter

like ngrok, but more ambitious with DHT for flavor
MIT License
26 stars 1 forks source link

overlay/alpn_mux: multiplex via alpn on a simple udp port #12

Closed zllovesuki closed 2 years ago

zllovesuki commented 2 years ago

This PR introduces major changes in the architecture to do away with separate ports for client and gateway. Since we can specify NextProtos in the handshake, ALPNMux is used to handle http3(h3/h3-29), tcp tunnel (specter-tcp), and client connection (specter-tun) over a single quic listener.

This simplifies the network stack and requires less ports to be opened for specter.