Joint RTI/Cisco response to the SDN RFI (see http://www.omg.org/cgi-bin/doc?mars/13-09-16.zip). …
Joint RTI/Cisco response to the SDN RFI (see http://www.omg.org/cgi-bin/doc?mars/13-09-16.zip).
SDN programming relies on the ability to query network state, define forwarding policies and update policies in a consistent way. Another important aspect is the management and configuration interfaces across heterogeneous devices.
Current northbound API’s still force developers to think in terms of match-action rules and not in higher level abstractions with proper compositional semantics.
Part of the problem lies in the various protocols being adopted for SDN including OpenFlow, OF-CONFIG, PCEP, I2RS, OVSDB, IF-MAP, OnePK, etc. Vendors must either build adapters for each or rely on a mediation server such as OpenDaylight Controller Service Abstraction Layer to provide the mediation between protocols.
Each of these protocols expands the feature space with sometimes conflicting behaviors and representations making it difficult to design a high-level interface which addresses the developers need to build applications out of multiple independent and reusable network policies that must act on the same traffic.
With this in mind, the first step towards developing and/or standardizing a Northbound protocol and/or API should be the standardization of the information model that represents the observable and controllable state of the SDN network elements.
Model Driven Architectures are fundamental to building platform and computation independent services. SDN adopts some of these principals leveraging schema driven approaches and data driven models but there are no efforts to converge onto a well-understood model that can be used to define the protocol and API interaction.
In this respect our motivation is to leverage existing middleware technologies and architectures such as DDS, XMPP, AMQP and REST to provide an extensible and adaptable protocol, which will promote unification and simplify access to the goals of querying state, notification of changes, forwarding policy, security and performance policies.
For instance leveraging middleware platforms which can automatically define the network data representations, network protocols, discovery mechanism, and the means to scale in a fault tolerant way would allow more concentration on the higher level abstractions, composition and segmentation of controller logic. In addition these middleware platforms provide standard APIs in different programming languages, so the API also comes “for free” once the mapping is done.