On offloading programmable SDN controller tasks to the embedded microcontroller of stateful SDN dataplanes

This paper presents a method to implement complex tasks into stateful SDN programmable dataplanes. In particular, the presented method proposes to use the internal microcontroller typically used to configure the programmable dataplane also to perform some complex operations that do not require to be executed on each packet. These operations can be executed on a set of data gathered by the dataplane and processed in a time scale that is much higher than the time window of a packet, but is much less than time scale needed for an external SDN controller. Moreover, the use of the configuration microcontroller instead of an external SDN controller to avoid the exchange of data on the control links permits a fine grain tuning of the operations to perform from the timing point of view (precise timestamping, low latency etc.). A set of measurements showing the feasibility of the method are presented, and a simple use case is described to show the effectiveness of this method to enhance the capability of stateful programmable dataplanes.

[1]  Fang Hao,et al.  ElastiCon; an elastic distributed SDN controller , 2014, 2014 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[2]  Sajad Shirali-Shahreza,et al.  FleXam: flexible sampling extension for monitoring and security applications in openflow , 2013, HotSDN '13.

[3]  Ramesh Govindan,et al.  Flow-level state transition as a new switch primitive for SDN , 2014, SIGCOMM.

[4]  Sakir Sezer,et al.  Queen ' s University Belfast-Research Portal Are We Ready for SDN ? Implementation Challenges for Software-Defined Networks , 2016 .

[5]  Yashar Ganjali,et al.  On scalability of software-defined networking , 2013, IEEE Communications Magazine.

[6]  George Varghese,et al.  P4: programming protocol-independent packet processors , 2013, CCRV.

[7]  George Varghese,et al.  Forwarding metamorphosis: fast programmable match-action processing in hardware for SDN , 2013, SIGCOMM.

[8]  Salvatore Pontarelli,et al.  Open Packet Processor: a programmable architecture for wire speed platform-independent stateful in-network processing , 2016, ArXiv.

[9]  Andrew W. Moore,et al.  NetFPGA SUME: Toward 100 Gbps as Research Commodity , 2014, IEEE Micro.

[10]  Giuseppe Bianchi,et al.  Stateful OpenFlow: Hardware proof of concept , 2015, 2015 IEEE 16th International Conference on High Performance Switching and Routing (HPSR).

[11]  Martín Casado,et al.  Onix: A Distributed Control Platform for Large-scale Production Networks , 2010, OSDI.

[12]  Nerea Toledo,et al.  Toward an SDN-enabled NFV architecture , 2015, IEEE Communications Magazine.

[13]  Giuseppe Bianchi,et al.  OpenState: programming platform-independent stateful openflow applications inside the switch , 2014, CCRV.

[14]  Pavlin Radoslavov,et al.  ONOS: towards an open, distributed SDN OS , 2014, HotSDN.

[15]  Mathieu Bouet,et al.  DISCO: Distributed SDN controllers in a multi-domain environment , 2014, 2014 IEEE Network Operations and Management Symposium (NOMS).

[16]  Alvin Cheung,et al.  Packet Transactions: High-Level Programming for Line-Rate Switches , 2015, SIGCOMM.