[PR #2244] [relay] Feature/relay integration #3327

Open
opened 2025-11-20 08:05:41 -05:00 by saavagebueno · 0 comments
Owner

Original Pull Request: https://github.com/netbirdio/netbird/pull/2244

State: closed
Merged: Yes


Describe your changes

  • Add Relay server implementation
  • Integrate the Relay server
  • Refactor the conn worker logic
  • Refactor the offer/answer sending logic
  • Add fallback logic to Relay connection in case failed to use ICE p2p connection

Relay package

  • Authentication (client/server)
  • Helathcheck and reconnection (guard.go). The health check is in a separated package but the usage of it is also relevant.
  • Protocol life circle betwen the Relay server - Relay client. Review to process the message types (messages package).
    • Hello (auth msg),
    • package transfer logic and internal store of the peers
    • close procedure
  • Roaming between the server instances in case if the peers are connected on different servers. client/manager.go
  • Review the command line (cmd) package what boot TLS, listeners, metrics components
  • TLS managment code review. It is relevant for the signal and managmenet code also because I reuse these function in all server services.
  • Metrics

Checklist

  • Is it a bug fix
  • Is a typo/documentation fix
  • Is a feature enhancement
  • It is a refactor
  • Created tests that fail without the change (if possible)
  • Extended the README / documentation, if necessary
**Original Pull Request:** https://github.com/netbirdio/netbird/pull/2244 **State:** closed **Merged:** Yes --- ## Describe your changes - Add Relay server implementation - Integrate the Relay server - Refactor the conn worker logic - Refactor the offer/answer sending logic - Add fallback logic to Relay connection in case failed to use ICE p2p connection ### Relay package - Authentication (client/server) - Helathcheck and reconnection (guard.go). The health check is in a separated package but the usage of it is also relevant. - Protocol life circle betwen the Relay server - Relay client. Review to process the message types (messages package). - Hello (auth msg), - package transfer logic and internal store of the peers - close procedure - Roaming between the server instances in case if the peers are connected on different servers. client/manager.go - Review the command line (cmd) package what boot TLS, listeners, metrics components - TLS managment code review. It is relevant for the signal and managmenet code also because I reuse these function in all server services. - Metrics ## Issue ticket number and link ### Checklist - [ ] Is it a bug fix - [ ] Is a typo/documentation fix - [x] Is a feature enhancement - [x] It is a refactor - [ ] Created tests that fail without the change (if possible) - [ ] Extended the README / documentation, if necessary
saavagebueno added the pull-request label 2025-11-20 08:05:41 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: SVI/netbird#3327