mirror of
https://github.com/netbirdio/netbird.git
synced 2024-11-24 09:03:14 +01:00
0c039274a4
This update adds new relay integration for NetBird clients. The new relay is based on web sockets and listens on a single port. - Adds new relay implementation with websocket with single port relaying mechanism - refactor peer connection logic, allowing upgrade and downgrade from/to P2P connection - peer connections are faster since it connects first to relay and then upgrades to P2P - maintains compatibility with old clients by not using the new relay - updates infrastructure scripts with new relay service
15 lines
736 B
Go
15 lines
736 B
Go
//Package main
|
|
/*
|
|
The `relay` package contains the implementation of the Relay server and client. The Relay server can be used to relay
|
|
messages between peers on a single network channel. In this implementation the transport layer is the WebSocket
|
|
protocol.
|
|
|
|
Between the server and client communication has been design a custom protocol and message format. These messages are
|
|
transported over the WebSocket connection. Optionally the server can use TLS to secure the communication.
|
|
|
|
The service can support multiple Relay server instances. For this purpose the peers must know the server instance URL.
|
|
This URL will be sent to the target peer to choose the common Relay server for the communication via Signal service.
|
|
|
|
*/
|
|
package main
|