


The NBI is the interface between software applications, such as operational support systems, and a centralized SDN controller. In an open SDN model, a common interface discussed is the northbound interface (NBI). The definition of an API may not, on its own, be overly useful for a network engineer, so let's take that definition and examine it in the context of SDN. Although that's not a common use case for SNMP, it's helpful to keep in mind because APIs provide this same functionality for a wider array of software applications. SNMP also allows applications to write configuration to networking devices. SNMP provides the means to request or retrieve data like interface statistics from forwarding elements. Let's use the Simple Network Management Protocol (SNMP) as an analogy. The inner workings of software may seem alien, but the concept is quite familiar to us networking pros. Simply put, an API is an interface presented by software (such as a network operating system) that provides the capability to collect information from or make a change to an underlying set of resources. This article is designed to help network professionals by diving into a potentially cryptic component of SDN and network programmability: application programming interfaces (APIs). On the other hand, software-defined networking is here to stay, so new skills like network programmability present a slew of new technologies to conquer. On one hand, protocols like BGP, IS-IS and MPLS still play a critical role in networks, so it's vital we maintain their base knowledge of traditional networking. Network engineers and administrators are at a crossroad.
