# 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