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

Connection Migration #55

Open
CMCDragonkai opened this issue Sep 25, 2023 · 0 comments
Open

Connection Migration #55

CMCDragonkai opened this issue Sep 25, 2023 · 0 comments
Labels
development Standard development r&d:polykey:core activity 4 End to End Networking behind Consumer NAT Devices

Comments

@CMCDragonkai
Copy link
Member

Specification

The QUIC specification allows connections to be migrated. Usually this applies to the client. This means the client can migrate its connection from an old IP address and port to a new IP address and port while maintaining connection context with the server. Which is useful for mobile clients.

However I don't think anything actually prevents the server from doing this too.

Connection migration hasn't been investigated at all. So supporting this would be an interesting capability to allow Polykey agents to be mobile.

My understanding is that any given client (and or server) may find itself with a new IP/port. In that case, it would still have all the existing QUICConnection objects. Thus when they send packets out, they'd be sending from a new origin IP address and port.

There are some functions on the quiche code that apparently allows one to start the connection migration process. I'm not sure if this is done before or after the IP/port has already changed?

Additional context

Tasks

  1. ...
  2. ...
  3. ...
@CMCDragonkai CMCDragonkai added the development Standard development label Sep 25, 2023
@CMCDragonkai CMCDragonkai added the r&d:polykey:core activity 4 End to End Networking behind Consumer NAT Devices label Aug 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development Standard development r&d:polykey:core activity 4 End to End Networking behind Consumer NAT Devices
Development

No branches or pull requests

1 participant