Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement QUIC Address discovery #2842

Open
2 of 3 tasks
b5 opened this issue Oct 25, 2024 · 0 comments
Open
2 of 3 tasks

Implement QUIC Address discovery #2842

b5 opened this issue Oct 25, 2024 · 0 comments
Labels
c-iroh-net feat New feature or request tracking an overview issue that tracks completion of a project

Comments

@b5
Copy link
Member

b5 commented Oct 25, 2024

Currently, STUN packets are sent as raw UDP packets. We've run into situations in the wild where STUN packets get dropped due to high latency or congestion. Since STUN packets tell us what our own public IP address is, when these packets get lost, we no don't know our own address, and therefore can't tell other's what our dialable addresses are.

Doing address discovery over QUIC rather than through the usual STUN / UDP process does two things:

  1. QUIC connections have guaranteed delivery. In highly congested / low latency networks, we will still get our public addresess.

  2. QUIC connections are encrypted! No more leaking your public address information for anyone to peak at.

Our plan is to implement QUIC Address Discovery, which replaces the functionality of STUN with a new protocol that runs over a QUIC connection.

This work will happen in a few phases:

@b5 b5 changed the title send STUN packets over QUIC Implement QUIC Address discovery Oct 25, 2024
@flub flub added feat New feature or request tracking an overview issue that tracks completion of a project c-iroh-net labels Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c-iroh-net feat New feature or request tracking an overview issue that tracks completion of a project
Projects
Status: No status
Development

No branches or pull requests

2 participants