A basic tenet of Software Defined Networking (SDN) involves an application interacting with a network for the purpose simplifying operations or enabling a service. A controller is positioned between the application and network and interacts with network elements (e.g. routers) in the southbound direction using a variety of different protocols. In the northbound direction it present an abstraction of the network using in practice common REST APIs. This innovation supports two applications: BGP-LS Manager and PCEP Manager (aka Pathman).
Figure 1 depicts the architecture of the components used in this innovation.
From the bottom-up we have a network of routers running MPLS for label switching packets across the network, and either OSPF or ISIS to maintain and distribute the topology (link-state) database amongst all routers in the network. One of the routers is a BGP-LS and it transports a copy of the topology database to the ODL controller. The routers will also run a PCEP (stands for path computation element protocol) used by the ODL controller to instruct a source router to setup an MPLS traffic engineered path to a destination router. This is very network- and protocol-specific details, which frankly the end-user may not know or care about. This is where OpenDaylight and applications come into play.
Figure 2 shows the main panel of the BGP-LS Manager application viewed through a Chrome Browser. We see a network of 8 x routers interconnected in a partial mesh with each router labeled based on configuration. The end-user can click on any router to display additional information.
Figure 3 shows the data entry portion of Pathman where the end-user wishes to setup a path from from the SAN router to the SEA router. Upon entering the path source and destination, Pathman will compute all possible paths based on either cost or hop count. The end-user can view each one graphically overlayed on top of the topology (incidentally built using the BGP-LS mechanisms).
The end-user selects, names it below and hits the deploy button. In the background ODL will take the information contained in the RESTCONF API call, convert to PCEP protocols and send them down the SAN router that will then setup a path to the SEA router. The result is shown in Figure 4.
Future enhancements to this project include segment routing support, enhanced topology APIs, multi-area/domain visualizations and ODL release support.
In summary ODL is an application platform abstracting the complexities of a network and presenting a suite of REST API exposed to applications. BGP-LS Manager and Pathman are two applications, one designed to visualize a network topology and other making simple to configure MPLS TE paths across a network.