Serial Composition of Heterogeneous Control Planes

Standardized data-path provision as achieved by OpenFlow enables the integration of network elements from different vendors in the same forwarding plane, with these elements being managed by the same logically centralized control plane. However, there is no clear abstraction that enables the integration of control planes from different vendors into a single virtually centralized controller. Yet, today’s software-defined network (SDN) control planes are highly homogeneous and require networks (or slices thereof) to be controlled by the same controller platform [6, 2, 4, 1, 9]. Hence to deploy a new service in a network, an operator needs to acquire and integrate new implementation modules into the existing controller platform. Though some earlier work has considered increasing the flexibility of controllers by allowing dynamic addition and removal of services, all integrated services need to obey specific constraints of the integrating platform [3, 11]. There is a very stong incentive to integrate heterogeneous control planes. Modern networks are intelligent, and require implementation of sophisticated services such as advanced VPN services, deep packet inspection, firewalling, intrusion detection – to list just a few. Moreover, this list continues to grow, increasing the need for methods to implement new network policies. However, not all services may be available on the same controller platform. Furthermore, it is unlikely that a single controller vendor will have the best-in-class implementation for all services. As a consequence, network operators are brought to choose between not deploying a service at all or moving to a different controller platform, which is expensive, disruptive and often simply infeasible. Thus, network operators are in need of constructors for flexible implementation of policies (that consist of services from various controller vendors, ideally, transparently to the services of integrated controllers) which allow for flexible and sound assemblage. A standardization of datapath provision makes an integration of services from heterogeneous vendors possible. Previous research has tackled two types of service integration: parallel and serial. Parallel integration allows a network operator to slice the managed network and assign a controller to each slice; it is important to note that in this case each slice is an independent network, and services integrated from different controllers