Northbound Interface
What Is a Northbound Interface?
A northbound interface is an application programming interface (API) or protocol that allows a lower-level component of a networked system to communicate with a higher-level component in the architectural hierarchy above it. In software-defined networking (SDN), the northbound interface sits between the SDN controller and the applications or management systems that consume the controller's network services. It exposes an abstract view of the underlying network topology and forwarding resources, hiding the details of physical hardware and vendor-specific protocols from the application developer. The term contrasts with "southbound interface," which connects the controller downward to network devices such as switches and routers.
The concept of a northbound interface arose from the layered architecture of SDN, which separates the data plane (packet forwarding by network hardware), the control plane (centralized network logic managed by the controller), and the application plane (business and network management applications). This separation is one of the foundational principles of SDN as defined by the Open Networking Foundation, and the northbound interface is the communication channel that makes the separation operational.
SDN Architecture and the Controller Layer
In the SDN architecture, the controller maintains a global view of the network by collecting topology and state information from all connected forwarding devices via the southbound interface. Applications above the controller use the northbound interface to query this global view and to instruct the controller to modify forwarding behavior across the network. Common queries include requesting current traffic statistics, retrieving topology graphs, and checking link utilization. Common commands include requesting the installation of new forwarding rules, reserving bandwidth for a flow, or migrating a virtual machine's traffic path to a less-congested route. The IEEE paper on enabling high-level network programming via a northbound API for SDNs describes how this abstraction layer allows applications to express network intent without referencing individual switch tables or OpenFlow rules.
API Design and Abstraction
Northbound APIs are most commonly implemented as RESTful web service APIs, where the controller exposes HTTP endpoints returning JSON or XML representations of network state. This design allows network applications to be written in any programming language and deployed without tight coupling to a specific controller implementation. Intent-based networking extends the abstraction further: instead of specifying which switches to configure and with what rules, an application declares a desired network behavior (for example, "provide at least 10 Gbps of guaranteed bandwidth between host A and host B"), and the controller translates that intent into the specific forwarding rules required. Research on RESTful northbound interface design for incompatible SDN controllers shows how mediation layers can bridge the gap between different controller implementations that expose incompatible API schemas.
Standardization and Controller Diversity
The northbound interface has historically lacked a universal standard. Each major SDN controller, including OpenDaylight, the Open Network Operating System (ONOS), and the Cisco Application Policy Infrastructure Controller (APIC), defines its own northbound API with different data models, endpoint structures, and authentication requirements. This variation requires applications to be modified or wrapped in a compatibility layer whenever they move between controller environments. Efforts by standards bodies including the IETF's I2RS (Interface to the Routing System) working group and the OpenDaylight Project documentation have produced candidate models for common northbound data representations, but controller-specific APIs remain prevalent in production deployments. The absence of a dominant standard continues to be an active engineering challenge in SDN ecosystem interoperability.
Applications
The northbound interface has applications in a range of fields, including:
- Network orchestration platforms managing multi-tenant cloud data centers
- Traffic engineering and quality-of-service enforcement for enterprise networks
- Wide area network optimization for service providers and internet exchanges
- Security policy automation pushing firewall and access control rules network-wide
- Network-as-a-service platforms exposing programmatic control to end customers