MPLS demonstrator

The SPARC project aims at designing and prototyping a scalable control plane solution for public networks by splitting the control and forwarding functions. This is done by the use of an open interface between a centralized controller and a set of forwarding elements. The focus use-case is an MPLS based access and aggregation network and the inter-working with IP/MPLS based core network. Making use of open-source components, our proof-of-concept prototype demonstrates a semi-centralized control scheme, where a centralized controller manages an MPLS based aggregation domain and seamlessly inter-works with a legacy distributed MPLS core network.


MPLS demonstrator

In our demo we show our latest achievements, including:

  • MPLS OpenFlow Controller for best effort point-to-point and multicast traffic
  • Seamless interworking with MPLS control plane, represented by a SmartEdge router
  • Establishment of BFD Monitoring in the OpenFlow domain
  • OpenFlow controller driven restoration and data plane triggered protection

The screenplay of our demo presentation includes:

  • The connectivity setup across OpenFlow aggregation and the core IP/MPLS network, utilizing the OSPF and LDP protocols,
  • A multicast video streaming with dynamic subscription/un-subscription and optimal transmission tree recalculation, and
  • LLDP based controller driven restoration versus BFD based data plane managed protection.

Our demo has been presented at 10th GENI Engineering Conference (GEC10) March 15 – 17, 2011 in Puerto Rico.

A video recording of the demo presentation will be available before the autumn of 2011.

In our demo we make use of open-source components, extended with our additions:

  • The OpenFlow switches are Stanford's reference 1.0 software switch implementations with Ericsson's MPLS extensions and our BFD extensions.
  • The controller is a pre-Zaku NOX release for 1.0, with our MPLS and BFD extensions, and with our value-added applications.
  • The protocol stack used in the controller is Quagga's OSPF and LDP.
  • The graph library used in our domain management application is Lemon.
  • The server and the clients are PCs, with VLC, Apache and Firefox
  • The core network is represented by a real Smart Edge 100 or 400 router.

Our NOX applications can be grouped into three main categories:

  • OpenFlow domain management: responsible for the configuration of the OpenFlow domain, like LSP calculation, configuration and management.
  • UNI trigger processing: responsible to process and action on trigger packets coming from the users, like multicast video subscription or unsubscription.
  • NNI protocol proxy is responsible for the control plane communication with the core network, in our case it interacts with the Quagga protocol stack.

We continue to develop our NOX based MPLS-OpenFlow controller within the project, e.g. by adding more control plane protocols, or migrating to OpenFlow 1.1. Our plan is to make most part of our controller open-source.