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

Multipath unsafe routes #1012

Closed
wants to merge 4 commits into from
Closed

Multipath unsafe routes #1012

wants to merge 4 commits into from

Conversation

forfuncsake
Copy link
Contributor

This changeset adds support for discovering weighted multipath routes from the system route table on linux.

Initial commit on experimental concept to support ECMP routing.
When a multipath route is discovered, we can now make use
of any ECMP gateway in the set. Sort by highest weight, with
randomized equal-weight order and route via either the
highest priority gateway with an active tunnel, or the
first gateway if there are no tunnels yet.
@forfuncsake
Copy link
Contributor Author

While this was a working implementation, there are a couple of open questions about how we should treat same-weight routes. TCP connections would likely need to remain sticky to a tunnel/route (where possible), particularly if using NAT on the host that is forwarding to the unsafe network, if the route became unavailable, we could consider sending a reset back to force the client to start a new TCP session over the new path, but obviously there are also a lot of other corner cases.

Secondarily, the feature was broken by #1004 and the use case for which I was experimenting with this became a bit too complex.

Closing for now, we can revisit if there is a future need.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant