-
Notifications
You must be signed in to change notification settings - Fork 5
RFC: FPGA Routing Architecture #2519
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces an RFC detailing the FPGA routing architecture for DoubleZero's edge-filtration (EF) mode, enabling FPGA-based packet filtering for Solana validators while maintaining interoperability with existing IBRL and multicast modes.
Key Changes:
- Introduces a new
vrf1-edge-filtrationVRF to route traffic through FPGA hardware - Defines traffic flows between EF users, IBRL users, and non-DZ users with FPGA inline filtering
- Specifies BGP routing policies and DZ-owned IP address space allocation for EF users
Reviewed changes
Copilot reviewed 2 out of 10 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| rfcs/rfc-fpga-routing-architecture.md | New RFC document describing FPGA routing architecture, VRF design, traffic flows, BGP policies, and IP address management for edge-filtration mode |
| CHANGELOG.md | Added entry for the new FPGA Routing Architecture RFC |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Typo fix Co-authored-by: Copilot <[email protected]>
Typo fix Co-authored-by: Copilot <[email protected]>
Typo fix Co-authored-by: Copilot <[email protected]>
Typo fix Co-authored-by: Copilot <[email protected]>
| 3. EF user to EF user (different DZDs) | ||
| 3. EF user to/from non-DZ user | ||
|
|
||
| Note that for EF users, intra-metro routing policies supports connectivity to any user - EF or IBRL - except for intra-DZD EF to EF users. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From our conversation in Chicago, my understanding was:
Users could in theory be able to subscribe to different types of Edge Filtering. For the moment, the only type we're going to create is Edge Filtering (Solana), but there might be Edge Filtering (SomeOtherChain). Other types of edge filtering would land into a different VRF lite instance for that type of filtering (vrf#-edge-filtration).
With that, EF(Solana)<->EF(Solana) users within a single DZD would still have connectivity, but their connectivity will not flow through the filtering since it won't have to leave the vrf1-edge-filtration.
EF(Solana)<->Any other type of user will go through the FGPAs. In the future this will include EF(solana)<->EF(some other type).
| ## Backward Compatibility | ||
| - IBRL and multicast connection modes should continue to operate as is. | ||
|
|
||
| ## Open Questions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Should the implementation enable some DZDs to support edge filtration, while others do not?
- This would allow us to only roll it out on DZDs that have sufficient DIA capacity to handle DZ<->NonDZ traffic.
Summary of Changes