The topic of today’s blog post is BGPCEP project as a solution for path computation. “BGPCEP project is an effort to bring two south-bound plugins into the controller: one for supporting BGP Linkstate Distribution as a source of L3 topology information, the other one to add support for Path Computation Element Protocol as a way to instantiate paths into the underlying network.”OpenDaylight (ODL) BGP LS PCEP Project

The OpenDaylight’s BGPCEP project has seen a lot of growth in the past few years due to the inclusion of new functionalities as well as the improvements within the implementation process. ODL has enabled the implementation of core projects based on existing networking protocols, such as: BGPCEP, NETConf, OpenFlow, and others. ODL makes it possible to create applications on top of a single protocol platform as well as combine protocol capabilities to achieve traffic engineering.

The ODL BGPCEP project is a Java based implementation that provides clear interfaces in order to manage routes through BGP protocol. This project also contains an extension called PCEP (Path Computation Element Protocol) in order to collect and compute data from PCC (Path Computation Client) elements. Initially, the path computations were done on the network element side, but this approach has created overhead when new elements are added to the network or when new elements are needed to compute a new path for traffic engineering. In order to avoid centralization of path processing from the network element side, the OpenDaylight project provides a path computation service that is also capable of communicating with other PCE (Path Computation Element) from different zones, enabling ODL to separate PCEs per network zones and then provide real state data from each network.

The example above represents an INGRESS to EGRESS traffic between Routers A and G, the ODL PCE has computed the best route path as (Router A ? B ? F ? G) based on the data provided by each PCC.

Solution proposal:

This is a good case to be solved using an Intent-based solution such as ODL NIC. At NIC, a new Intent can be defined in order to request path computation between two different routes, each router and zone can be mapped/labelled on the NIC side.

Once NIC is able to work with multiple ODL plugins at the same time, it is possible to manage networks using different protocols, such as OpenFlow and BGPCEP in order to create a mix of different intents and being transparent to the user (such as any Intent-based solution).

Conclusion:

OpenDaylight BGPCEP provides useful functionalities and exposes clear interfaces that enable applications like ODL NIC to manage the network by using REST API’s. NIC is capable of providing high-level language in order to keep the network administrator focused on the business side, in this case, traffic engineering using path computation.