A Survey of Software-Defined Networking: Past, Present, and Future of Programmable Networks

The idea of programmable networks has recently re-gained considerable momentum due to the emergence of the Software-Defined Networking (SDN) paradigm. SDN, often referred to as a "radical new idea in networking", promises to dramatically simplify network management and enable innovation through network programmability. This paper surveys the state-of-the-art in programmable networks with an emphasis on SDN. We provide a historic perspective of programmable networks from early ideas to recent developments. Then we present the SDN architecture and the OpenFlow standard in particular, discuss current alternatives for implementation and testing of SDN-based protocols and services, examine current and future SDN applications, and explore promising research directions based on the SDN paradigm.

[1]  Edjard de Souza Mota,et al.  An inter-AS routing component for software-defined networks , 2012, 2012 IEEE Network Operations and Management Symposium.

[2]  Anja Feldmann,et al.  Internet clean-slate design: what and why? , 2007, CCRV.

[3]  Jennifer Rexford,et al.  Live migration of an entire network (and its hosts) , 2012, HotNets-XI.

[4]  Russell J. Clark,et al.  Resonance: dynamic access control for enterprise networks , 2009, WREN '09.

[5]  David Wetherall,et al.  Towards an active network architecture , 1996, CCRV.

[6]  Paul Congdon,et al.  Hey, you darned counters!: get off my ASIC! , 2012, HotSDN '12.

[7]  Rob Enns,et al.  NETCONF Configuration Protocol , 2006, RFC.

[8]  Roberto Bifulco,et al.  A Practical Experience in Designing an OpenFlow Controller , 2012, 2012 European Workshop on Software Defined Networking.

[9]  Xingang Shi,et al.  Analysis of Comparisons between OpenFlow and ForCES , 2012 .

[10]  Rob Sherwood,et al.  The controller placement problem , 2012, HotSDN '12.

[11]  Rob Sherwood,et al.  Carving research slices out of your production networks with OpenFlow , 2010, CCRV.

[12]  Avri Doria,et al.  General Switch Management Protocol (GSMP) V3 , 2002, RFC.

[13]  Minlan Yu,et al.  Software Defined Traffic Measurement with OpenSketch , 2013, NSDI.

[14]  David Walker,et al.  Abstractions for network update , 2012, SIGCOMM '12.

[15]  Jacobus E. van der Merwe,et al.  Switchlets and Dynamic Virtual ATM Networks , 1997, Integrated Network Management.

[16]  Jennifer Rexford,et al.  Scalable Network Virtualization in Software-Defined Networks , 2013, IEEE Internet Computing.

[17]  Hung X. Nguyen,et al.  A frequency control algorithm for a mobile adhoc network , 2010 .

[18]  Luca Veltri,et al.  Supporting information-centric functionality in software defined networks , 2012, 2012 IEEE International Conference on Communications (ICC).

[19]  Thomas A. Limoncelli OpenFlow: a radical new idea in networking , 2012, CACM.

[20]  Xuan-Nam Nguyen Software Defined Networking in Wireless Mesh Networks , 2012 .

[21]  Yashar Ganjali,et al.  Kandoo: a framework for efficient and scalable offloading of control applications , 2012, HotSDN '12.

[22]  David Walker,et al.  Frenetic: a network programming language , 2011, ICFP.

[23]  Andrea Bianco,et al.  OpenFlow Switching: Data Plane Performance , 2010, 2010 IEEE International Conference on Communications.

[24]  Lei Liu,et al.  OpenFlow-based wavelength path control in transparent optical networks: A proof-of-concept demonstration , 2011, 2011 37th European Conference and Exhibition on Optical Communication.

[25]  Nick McKeown,et al.  Experimental demonstration of OpenFlow control of packet and circuit switches , 2010, 2010 Conference on Optical Fiber Communication (OFC/NFOEC), collocated National Fiber Optic Engineers Conference.

[26]  Andrea Passarella,et al.  A survey on content-centric technologies for the current Internet: CDN and P2P solutions , 2012, Comput. Commun..

[27]  Philip Levis,et al.  OpenRadio: a programmable wireless dataplane , 2012, HotSDN '12.

[28]  Brighten Godfrey,et al.  Debugging the data plane with anteater , 2011, SIGCOMM.

[29]  Jamal Hadi Salim,et al.  Forwarding and Control Element Separation (ForCES) Protocol Specification , 2010, RFC.

[30]  Markus Hidell,et al.  Improving PC-based OpenFlow switching performance , 2010, 2010 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[31]  Yashar Ganjali,et al.  HyperFlow: A Distributed Control Plane for OpenFlow , 2010, INM/WREN.

[32]  Marcos Rogério Salvador,et al.  Revisiting routing control platforms with the eyes and muscles of software-defined networking , 2012, HotSDN '12.

[33]  Thierry Turletti,et al.  Towards truly heterogeneous internets: Bridging infrastructure-based and infrastructure-less networks , 2011, 2011 Third International Conference on Communication Systems and Networks (COMSNETS 2011).

[34]  Martín Casado,et al.  Ethane: taking control of the enterprise , 2007, SIGCOMM '07.

[35]  Martín Casado,et al.  Software-defined internet architecture: decoupling architecture from infrastructure , 2012, HotNets-XI.

[36]  Sujata Banerjee,et al.  ElasticTree: Saving Energy in Data Center Networks , 2010, NSDI.

[37]  Oscar Mayora-Ibarra,et al.  Trade-offs in monitoring social interactions , 2013, IEEE Communications Magazine.

[38]  Sujata Banerjee,et al.  DevoFlow: scaling flow management for high-performance networks , 2011, SIGCOMM.

[39]  Luke M. Leslie,et al.  The Tempest-a practical framework for network programmability , 1998, IEEE Netw..

[40]  David A. Maltz,et al.  Network-Wide Decision Making: Toward A Wafer-Thin Control Plane , 2004 .

[41]  Matthew Caesar,et al.  Walk the line: consistent network updates with bandwidth guarantees , 2012, HotSDN '12.

[42]  Nick Feamster,et al.  Design and implementation of a routing control platform , 2005, NSDI.

[43]  Marco Canini,et al.  A NICE Way to Test OpenFlow Applications , 2012, NSDI.

[44]  Nick Feamster,et al.  Procera: a language for high-level reactive network control , 2012, HotSDN '12.

[45]  Hiroshi Yamada,et al.  Honeyguide: A VM migration-aware network topology for saving energy consumption in data center networks , 2012, 2012 IEEE Symposium on Computers and Communications (ISCC).

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

[47]  Jennifer Rexford,et al.  Toward Software-Defined Cellular Networks , 2012, 2012 European Workshop on Software Defined Networking.

[48]  Yongqiang Xiong,et al.  Using CPU as a traffic co-processing unit in commodity switches , 2012, HotSDN '12.

[49]  Aditya Akella,et al.  Toward software-defined middlebox networking , 2012, HotNets-XI.

[50]  Scott M. Nettles,et al.  Towards Practical Programmable Packets , 2001 .

[51]  Anja Feldmann,et al.  OFRewind: Enabling Record and Replay Troubleshooting for Networks , 2011, USENIX Annual Technical Conference.

[52]  Syed Ali Khayam,et al.  Revisiting Traffic Anomaly Detection Using Software Defined Networking , 2011, RAID.

[53]  Zdravko Bozakov,et al.  AutoSlice: automated and scalable slicing for software-defined networks , 2012, CoNEXT Student '12.

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

[55]  Zhi Liu,et al.  LiveCloud: A lucid orchestrator for cloud datacenters , 2012, 4th IEEE International Conference on Cloud Computing Technology and Science Proceedings.

[56]  Leandros Tassiulas,et al.  Pursuing a Software Defined Information-centric Network , 2012, 2012 European Workshop on Software Defined Networking.

[57]  Nick McKeown,et al.  A network in a laptop: rapid prototyping for software-defined networks , 2010, Hotnets-IX.

[58]  G.J. Minden,et al.  A survey of active network research , 1997, IEEE Communications Magazine.

[59]  Thierry Turletti,et al.  Efficient caching in content-centric networks using OpenFlow , 2013, 2013 Proceedings IEEE INFOCOM.

[60]  Mathieu Bouet,et al.  OpenFlow: Why latency does matter , 2013, 2013 IFIP/IEEE International Symposium on Integrated Network Management (IM 2013).

[61]  Jia Wang,et al.  Scalable flow-based networking with DIFANE , 2010, SIGCOMM '10.

[62]  Fang Hao,et al.  Towards an elastic distributed SDN controller , 2013, HotSDN '13.

[63]  Marcos Rogério Salvador,et al.  Virtual routers as a service: the RouteFlow approach leveraging software-defined networks , 2011, CFI.

[64]  Julio Ortega Lopera,et al.  Accelerating OpenFlow switching with network processors , 2009, ANCS '09.

[65]  Alan L. Cox,et al.  Maestro: A System for Scalable OpenFlow Control , 2010 .

[66]  Brighten Godfrey,et al.  VeriFlow: verifying network-wide invariants in real time , 2012, HotSDN '12.

[67]  Scott Nettles,et al.  Practical programmable packets , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[68]  Min Zhu,et al.  B4: experience with a globally-deployed software defined wan , 2013, SIGCOMM.

[69]  David Erickson,et al.  The beacon openflow controller , 2013, HotSDN '13.

[70]  Nick Feamster,et al.  Improving network management with software defined networking , 2013, IEEE Commun. Mag..

[71]  Nico Bayer,et al.  OpenFlow for Wireless Mesh Networks , 2011, 2011 Proceedings of 20th International Conference on Computer Communications and Networks (ICCCN).

[72]  Alan L. Cox,et al.  PAST: scalable ethernet for data centers , 2012, CoNEXT '12.

[73]  Andrew T. Campbell,et al.  Open Signaling for ATM, INTERNET and Mobile Networks (OPENSIG'98) , 1999, OPSR.

[74]  Rob Sherwood,et al.  Blueprint for introducing innovation into wireless mobile networks , 2010, VISA '10.

[75]  Rob Sherwood,et al.  OpenRoads: empowering research in mobile networks , 2010, CCRV.

[76]  Reza Nejabati,et al.  Software defined optical networks technology and infrastructure: Enabling software-defined optical network operations , 2013 .

[77]  Jeffrey D. Case,et al.  Simple Network Management Protocol (SNMP) , 1990, RFC.

[78]  Jeffrey D. Case,et al.  Simple network management protocol , 1995 .

[79]  R. Nejabati,et al.  Software-defined optical networks technology and infrastructure: Enabling software-defined optical network operations [invited] , 2013, IEEE/OSA Journal of Optical Communications and Networking.

[80]  Ting Wang,et al.  QoS-aware optical burst switching in OpenFlow based Software-Defined Optical Networks , 2013, 2013 17th International Conference on Optical Networking Design and Modeling (ONDM).

[81]  Richard Wang,et al.  OpenFlow-Based Server Load Balancing Gone Wild , 2011, Hot-ICE.

[82]  Tom Rodden,et al.  Control and understanding: Owning your home network , 2012, 2012 Fourth International Conference on Communication Systems and Networks (COMSNETS 2012).

[83]  Nick McKeown,et al.  Where is the debugger for my software-defined network? , 2012, HotSDN '12.

[84]  Anja Feldmann,et al.  Logically centralized?: state distribution trade-offs in software defined networks , 2012, HotSDN '12.

[85]  Hong Yan,et al.  A clean slate 4D approach to network control and management , 2005, CCRV.

[86]  Anja Feldmann,et al.  Towards programmable enterprise WLANS with Odin , 2012, HotSDN '12.

[87]  Nick McKeown,et al.  OpenFlow: enabling innovation in campus networks , 2008, CCRV.

[88]  Martín Casado,et al.  Practical declarative network management , 2009, WREN '09.

[89]  Miao Zhang,et al.  Driving Software Defined Networks with XSP , 2012, 2012 IEEE International Conference on Communications (ICC).

[90]  Simon Oechsner,et al.  Modeling and performance evaluation of an OpenFlow architecture , 2011, 2011 23rd International Teletraffic Congress (ITC).

[91]  David Walker,et al.  Composing Software Defined Networks , 2013, NSDI.

[92]  Nicola Blefari-Melazzi,et al.  An OpenFlow-based testbed for information centric networking , 2012, 2012 Future Network & Mobile Summit (FutureNetw).

[93]  Andreas Voellmy,et al.  Scalable software defined network controllers , 2012, SIGCOMM '12.

[94]  Martín Casado,et al.  Fabric: a retrospective on evolving SDN , 2012, HotSDN '12.

[95]  Paul Hudak,et al.  Nettle: Taking the Sting Out of Programming Network Routers , 2011, PADL.

[96]  Martín Casado,et al.  NOX: towards an operating system for networks , 2008, CCRV.

[97]  David Walker,et al.  Optimizing the "one big switch" abstraction in software-defined networks , 2013, CoNEXT.

[98]  Jorge Lobo,et al.  Dynamic graph query primitives for SDN-based cloudnetwork management , 2012, HotSDN '12.

[99]  Nick Feamster,et al.  Instrumenting home networks , 2010, CCRV.

[100]  Rob Sherwood,et al.  On Controller Performance in Software-Defined Networks , 2012, Hot-ICE.

[101]  Nick Feamster Outsourcing home network security , 2010, HomeNets '10.

[102]  Isaac Keslassy,et al.  Palette: Distributing tables in software-defined networks , 2013, 2013 Proceedings IEEE INFOCOM.

[103]  Thomas R. Henderson,et al.  Network Simulations with the ns-3 Simulator , 2008 .

[104]  Van Jacobson,et al.  Networking named content , 2009, CoNEXT '09.