27 lines
1.2 KiB
Markdown
27 lines
1.2 KiB
Markdown
# BGP
|
|
|
|
The `bgp` crate is an implementation of the Border Gateway Protocol, which is used to exchange routing and control plane information between Autonomous Systms.
|
|
|
|
The aim of this project is to provide a modern, high performance, secure and programatic and customizable software package that can be useful to network operators, researchers, and people interested in Internet.
|
|
|
|
## Current status.
|
|
|
|
The project is currently being rewritten from scratch to be more modular and maintainable, as well as to fix deeper issues with the previous implementation.
|
|
|
|
⚠️ Warning: This is currently a work in progress and not ready for use.
|
|
|
|
### 🛣️ Roadmap to v1.0
|
|
|
|
We aim for the 1.0 release to be functional and stable to operate peering sessions, and to install routes in the Linux Kernel.
|
|
|
|
* ☐ Implement basic parsers for the fundamental types required
|
|
* ✅ Path Attributes from RFC4271
|
|
* ☐ Open message
|
|
* ☐ Capabilities from RFC4271
|
|
* ☐ Update message
|
|
* ☐ Notification message
|
|
* ☐ Implement connection logic to establish sessions with peers
|
|
* ☐ Implement an efficient data structure for storing prefixes (e.g. Poptrie)
|
|
* ☐ Filtering for peer RIB in / out
|
|
* ☐ Main / auxillary RIBs for exchanging routes between peers
|