Beluganos is a new network OS designed for white-box switches, which can apply large-scale networks.
- IP Routing (BGP, OSPF, IPv6, ...) and L2 switching
- IP/MPLS, BGP/MPLS IP-VPNs, IP-IP tunneling
- Interoperability with conventional IP or IP/MPLS router
- ASIC based hardware packet processing
The feature matrix of Beluganos is available at doc/function.md. Beluganos was named after beluga whale.
Architecture
Beluganos has one or more Linux containers. The main effort of Beluganos is that the route table which is installed to Linux containers is copied to white-box switches. If you will configure router settings like IP addresses or parameter of routing protocols, you may configure the settings of Linux containers by ansible or NETCONF. Moreover, in order to control white-box switches, OpenNSL or OF-DPA is used.
For more details, please check doc/architecture.md.
Getting Started
1. Quick start by example case
In order to try Beluganos quickly, some example cases are prepared. This example can configure automatically not only Beluganos but also other routers to connect with Beluganos. If you wish to use this, please refer to doc/example/case1/case1.md instead of the following description.
2. Step-by-step procedure
- Step 1: Build
- Install Beluganos and related OSS automatically.
- Step 2: Setup
- Register your white-box switch to Beluganos.
- Initial setup of your white-box switch.
- Initial setup of ASIC API.
- Step 3: Configure
- Change router settings like IP address, VLAN, and routing protocols as you like.
- Some advanced configuration technology is also supported.
- Step 4: Operation
- Start Beluganos. Monitor Beluganos.
Other document is listed at document index page.
Support
Github issue page and e-mail are available. If you prefer to use e-mail, please contact msf-contact-ml [at] hco.ntt.co.jp
.
Development & Contribution
Any contribution is encouraged. The main component is written in Go and Python. For more details, please refer to CONTRIBUTING.md.
License
Beluganos is licensed under the Apache 2.0 license. Check LICENSE.
Project
This project is a part of Multi-Service Fabric.