A flexible GraphQL northbound API for intent-based SDN applications
Résumé
In a Software-Defined Networking (SDN) architecture, Northbound, Southbound, and East-Westbound APIs are used to describe how interfaces operate between the three SDN planes, namely the data, control, and application planes. Apart from the standardization of the Southbound interface, for which OpenFlow has emerged as the widely-accepted standard, there is to date no open and vendor-neutral standard for the Northbound and East-West interfaces to provide the required interoperability between different SDN controller platform designs. This paper addresses the lack of a well-defined standard for the Northbound API that is used for the interaction between the applications and the SDN controllers, by proposing a GraphQL-based Northbound API design for the SDN controllers in the context of large-scale deployments. Our proof-of-concept methodology was validated and evaluated for an intent-based routing application that we designed on top of the ONOS controllers. When compared to ONOS’s native REST API, our Northbound API model proved efficient in optimizing different performance metrics (i.e the number of requests, the request execution time, and the throughput) on both synthetic and real-world network topologies (like Renater and China Telecom) that are emulated using Mininet.