Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

The road to SDN: an intellectual history of programmable networks

Published: 08 April 2014 Publication History

Abstract

Software Defined Networking (SDN) is an exciting technology that enables innovation in how we design and manage networks. Although this technology seems to have appeared suddenly, SDN is part of a long history of efforts to make computer networks more programmable. In this paper, we trace the intellectual history of programmable networks, including active networks, early efforts to separate the control and data plane, and more recent work on OpenFlow and network operating systems. We highlight key concepts, as well as the technology pushes and application pulls that spurred each innovation. Along the way, we debunk common myths and misconceptions about the technologies and clarify the relationship between SDN and related technologies such as network virtualization.

References

[1]
A. Al-Shabibi. Programmable virtual networks: From network slicing to network virtualization, July 2013. http://www.slideshare.net/nvirters/virt-july2013meetup.
[2]
D. Alexander, W. Arbaugh, A. Keromytis, and J. Smith. Secure active network environment archtiecture: Realization in SwitchWare. IEEE Network Magazine, pages 37--45, May 1998.
[3]
D. S. Alexander, W. A. Arbaugh, M. W. Hicks, P. Kakkar, A. D. Keromytis, J. T. Moore, C. A. Gunter, S. M. Nettles, and J. M. Smith. The SwitchWare active network architecture. IEEE Network, 12(3):29--36, 1998.
[4]
D. G. Andersen, H. Balakrishnan, M. F. Kaashoek, and R. Morris. Resilient Overlay Networks. In Proc. 18th ACM Symposium on Operating Systems Principles (SOSP), pages 131--145, Banff, Canada, Oct. 2001.
[5]
B. Anwer, M. Motiwala, M. bin Tariq, and N. Feamster. SwitchBlade: A Platform for Rapid Deployment of Network Protocols on Programmable Hardware. In Proc. ACM SIGCOMM, New Delhi, India, Aug. 2010.
[6]
A. Bavier, M. Bowman, D. Culler, B. Chun, S. Karlin, S. Muir, L. Peterson, T. Roscoe, T. Spalink, and M. Wawrzoniak. Operating System Support for Planetary-Scale Network Services. In Proc. First Symposium on Networked Systems Design and Implementation (NSDI), San Francisco, CA, Mar. 2004.
[7]
A. Bavier, N. Feamster, M. Huang, L. Peterson, and J. Rexford. In VINI Veritas: Realistic and Controlled Network Experimentation. In Proc. ACM SIGCOMM, Pisa, Italy, Aug. 2006.
[8]
S. Bhattacharjee, K. Calvert, and E. Zegura. An architecture for active networks. In High Performance Networking, 1997.
[9]
BIRD Internet routing daemon. http://bird.network.cz/.
[10]
J. Biswas, A. A. Lazar, J.-F. Huard, K. Lim, S. Mahjoub, L.-F. Pau, M. Suzuki, S. Torstensson, W. Wang, and S. Weinstein. The ieee p1520 standards initiative for programmable network interfaces. Communications Magazine, IEEE, 36(10):64--70, 1998.
[11]
P. Bosshart, G. Gibb, H. Kim, G. Varghese, N. McKeown, M. Izzard, F. Mujica, and M. Horowitz. Forwarding metamorphosis: Fast programmable match-action processing in hardware for SDN. In ACM SIGCOMM, Aug. 2013.
[12]
M. Caesar, N. Feamster, J. Rexford, A. Shaikh, and J. van der Merwe. Design and implementation of a routing control platform. In Proc. 2nd USENIX NSDI, Boston, MA, May 2005.
[13]
K. Calvert. An architectural framework for active networks (v1.0). http://protocols.netlab.uky.edu/calvert/arch-latest.ps.
[14]
K. Calvert. Reflections on network architecture: An active networking perspective. ACM SIGCOMM Computer Communications Review, 36(2):27--30, 2006.
[15]
K. Calvert, S. Bhattacharjee, E. Zegura, and J. Sterbenz. Directions in active networks. IEEE Communications Magazine, pages 72--78, October 1998.
[16]
M. Casado, M. J. Freedman, J. Pettit, J. Luo, N. McKeown, and S. Shenker. Ethane: Taking control of the enterprise. In ACM SIGCOMM '07, 2007.
[17]
M. Casado, T. Garfinkel, M. Freedman, A. Akella, D. Boneh, N. McKeown, and S. Shenker. SANE: A protection architecure for enterprise networks. In Proc. 15th USENIX Security Symposium, Vancouver, BC, Canada, Aug. 2006.
[18]
B. Chun, D. Culler, T. Roscoe, A. Bavier, L. Peterson, M. Wawrzoniak, and M. Bowman. Planetlab: an overlay testbed for broad-coverage services. ACM SIGCOMM Computer Communication Review, 33(3):3--12, 2003.
[19]
M. Ciosi et al. Network functions virtualization. Technical report, ETSI, Darmstadt, Germany, Oct. 2012. http://portal.etsi.org/NFV/NFV_White_Paper.pdf.
[20]
S. da Silva, Y. Yemini, and D. Florissi. The NetScript active network system. IEEE Journal on Selected Areas in Communications, 19(3):538--551, 2001.
[21]
M. Dobrescu, N. Egi, K. Argyraki, B.-G. Chun, K. Fall, G. Iannaccone, A. Knies, M. Manesh, and S. Ratnasamy. RouteBricks: Exploiting parallelism to scale software routers. In Proc. 22nd ACM Symposium on Operating Systems Principles (SOSP), Big Sky, MT, Oct. 2009.
[22]
D. Drutskoy, E. Keller, and J. Rexford. Scalable network virtualization in software-defined networks. IEEE Internet Computing, March/April 2013.
[23]
D. Erickson. The Beacon OpenFlow controller. In Proc. HotSDN, Aug. 2013.
[24]
D. Erickson et al. A demonstration of virtual machine mobility in an OpenFlow network, Aug. 2008. Demo at ACM SIGCOMM.
[25]
A. Farrel, J. Vasseur, and J. Ash. A Path Computation Element (PCE)-Based Architecture. Internet Engineering Task Force, Aug. 2006. RFC 4655.
[26]
N. Feamster, H. Balakrishnan, J. Rexford, A. Shaikh, and K. van der Merwe. The case for separating routing from routers. In ACM SIGCOMM Workshop on Future Directions in Network Architecture, Portland, OR, Sept. 2004.
[27]
N. Feamster, L. Gao, and J. Rexford. How to lease the Internet in your spare time. ACM SIGCOMM Computer Communications Review, 37(1):61--64, 2007.
[28]
Floodlight OpenFlow Controller. http://floodlight.openflowhub.org/.
[29]
FlowVisor. http://www.openflowswitch.org/wk/index.php/FlowVisor.
[30]
A. Fraser. Datakit--A Modular Network for Synchronous and Asynchronous Traffic. In Proc. Int. Conf. on Communications, 1980.
[31]
NSF Future Internet Design. http://www.nets-find.net/.
[32]
EU Future Internet Research and Experimentation Initiative. http://www.ict-fire.eu/.
[33]
GENI: Global Environment for Network Innovations. http://www.geni.net/.
[34]
GENI. Campus OpenFlow topology, 2011. http://groups.geni.net/geni/wiki/OpenFlow/CampusTopology.
[35]
A. Greenberg, G. Hjalmtysson, D. A. Maltz, A. Myers, J. Rexford, G. Xie, H. Yan, J. Zhan, and H. Zhang. A clean slate 4D approach to network control and management. ACM SIGCOMM Computer Communications Review, 35(5):41--54, 2005.
[36]
K. Greene. TR10: Software-defined networking. MIT Technology Review, March/April 2009. http://www2.technologyreview.com/article/412194/tr10-software-defined-networking/.
[37]
N. Gude, T. Koponen, J. Pettit, B. Pfaff, M. Casado, N. McKeown, and S. Shenker. NOX: Towards an operating system for networks. ACM SIGCOMM Computer Communication Review, 38(3):105--110, July 2008.
[38]
S. Han, K. Jang, K. Park, and S. Moon. PacketShader: a GPU-accelerated software router. In Proc. ACM SIGCOMM, New Delhi, India, Aug. 2010.
[39]
N. Handigol, M. Flajslik, S. Seetharaman, N. McKeown, and R. Johari. Aster*x: Load-balancing as a network primitive. In ACLD '10: Architectural Concerns in Large Datacenters, 2010.
[40]
M. Handley, E. Kohler, A. Ghosh, O. Hodson, and P. Radoslavov. Designing extensible IP router software. In Proc. Networked Systems Design and Implementation, May 2005.
[41]
B. Heller, N. Handigol, V. Jeyakumar, B. Lantz, and N. McKeown. Reproducible network experiments using container based emulation. In Proc. ACM CoNEXT, Dec. 2012.
[42]
B. Heller, S. Seetharaman, P. Mahadevan, Y. Yiakoumis, P. Sharma, S. Banerjee, and N. McKeown. ElasticTree: Saving energy in data center networks. Apr. 2010.
[43]
R. Hinden and J. Postel. IPv6 Testing Address Allocation. Internet Engineering Task Force, January 1996. RFC 1897, obsoleted by RFC 2471 on "6bone Phaseout".
[44]
S. Jain, A. Kumar, S. Mandal, J. Ong, L. Poutievski, A. Singh, S. Venkata, J. Wanderer, J. Zhou, M. Zhu, J. Zolla, U. Hölzle, S. Stuart, and A. Vahdat. B4: Experience with a globally deployed software defined WAN. In ACM SIGCOMM, Aug. 2013.
[45]
E. Kohler, R. Morris, B. Chen, J. Jannotti, and M. F. Kaashoek. The Click modular router. ACM Transactions on Computer Systems, 18(3):263--297, Aug. 2000.
[46]
T. Koponen, M. Casado, N. Gude, J. Stribling, L. Poutievski, M. Zhu, R. Ramanathan, Y. Iwata, H. Inoue, T. Hama, and S. Shenker. Onix: A distributed control platform for large-scale production networks. In OSDI, volume 10, pages 1--6, 2010.
[47]
T. V. Lakshman, T. Nandagopal, R. Ramjee, K. Sabnani, and T. Woo. The SoftRouter Architecture. In Proc. 3nd ACM Workshop on Hot Topics in Networks (Hotnets-III), San Diego, CA, Nov. 2004.
[48]
B. Lantz, B. Heller, and N. McKeown. A network in a laptop: Rapid prototyping for software-defined networks (at scale!). In Proc. HotNets, Oct. 2010.
[49]
J. Lockwood, N. McKeown, G. Watson, G. Gibb, P. Hartke, J. Naous, R. Raghuraman, and J. Luo. NetFPGA: An open platform for gigabit-rate network switching and routing. In IEEE International Conference on Microelectronic Systems Education, pages 160--161, 2007.
[50]
M. R. Macedonia and D. P. Brutzman. Mbone provides audio and video across the internet. Computer, 27(4):30--36, 1994.
[51]
N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner. OpenFlow: Enabling innovation in campus networks. ACM SIGCOMM Computer Communications Review, Apr. 2008.
[52]
NSF Guidelines for Planning and Managing the Major Research Equipment and Facilities Construction (MREFC) Account. http://www.nsf.gov/bfa/docs/mrefcguidelines1206.pdf, Nov. 2005.
[53]
A. Nayak, A. Reimers, N. Feamster, and R. Clark. Resonance: Dynamic access control in enterprise networks. In Proc. Workshop: Research on Enterprise Networking, Barcelona, Spain, Aug. 2009.
[54]
Nicira. It's time to virtualize the network, 2012. http://nicira.com/en/network-virtualization-platform.
[55]
ON.Lab. ONOS: Open network operating system, 2013. http://tinyurl.com/pjs9eyw.
[56]
Open Daylight. http://www.opendaylight.org/.
[57]
Open Networking Foundation. https://www.opennetworking.org/.
[58]
Open vSwitch. http://openvswitch.org.
[59]
L. Peterson, T. Anderson, D. Blumenthal, D. Casey, D. Clark, D. Estrin, J. Evans, D. Raychaudhuri, M. Reiter, J. Rexford, S. Shenker, and J. Wroclawski. GENI design principles. IEEE Computer, Sept. 2006.
[60]
L. Peterson, T. Anderson, D. Culler, and T. Roscoe. A blueprint for introducing disruptive technology into the Internet. In Proc. 1st ACM Workshop on Hot Topics in Networks (Hotnets-I), Princeton, NJ, Oct. 2002.
[61]
L. Peterson, S. Shenker, and J. Turner. Overcoming the Internet impasse through virtualization. In Proc. 3nd ACM Workshop on Hot Topics in Networks (Hotnets-III), San Diego, CA, Nov. 2004.
[62]
B. Pfaff, J. Pettit, K. Amidon, M. Casado, T. Koponen, and S. Shenker. Extending networking into the virtualization layer. In Proc. HotNets, Oct. 2009.
[63]
POX. http://www.noxrepo.org/pox/about-pox/.
[64]
Quagga software routing suite. http://www.quagga.net/.
[65]
J. Salim, H. Khosravi, A. Kleen, and A. Kuznetsov. Linux Netlink as an IP Services Protocol. Internet Engineering Task Force, July 2003. RFC 3549.
[66]
B. Schwartz, A. W. Jackson, W. T. Strayer, W. Zhou, R. D. Rockwell, and C. Partridge. Smart packets for active networks. In IEEE Conference on Open Architectures and Network Programming, pages 90--97. IEEE, 1999.
[67]
R. Sherwood, G. Gibb, K.-K. Yap, G. Appenzeller, M. Casado, N. McKeown, and G. Parulkar. Can the production network be the testbed? In Proc. 9th USENIX OSDI, Vancouver, Canada, Oct. 2010.
[68]
J. Smith et al. SwitchWare: Accelerating network evolution. Technical Report MS-CIS-96-38, CIS Department, University of Pennsylvania, 1996.
[69]
J. M. Smith, K. L. Calvert, S. L. Murphy, H. K. Orman, and L. L. Peterson. Activating networks: A progress report. 32(4):32--41, Apr. 1999.
[70]
J. M. Smith and S. M. Nettles. Active networking: One view of the past, present, and future. IEEE Transactions on Systems, Man, and Cybernetics: Part C: Applications and Reviews, 34(1), February 2004.
[71]
T. Spalink, S. Karlin, L. Peterson, and Y. Gottlieb. Building a robust software-based router using network processors. In Proc. SOSP, Dec. 2001.
[72]
D. Taylor and J. Turner. Diversifying the Internet. In Proc. IEEE GLOBECOM, Nov. 2005.
[73]
D. E. Taylor, J. S. Turner, J. W. Lockwood, and E. L. Horta. Dynamic hardware plugins: Exploiting reconfigurable hardware for high-performance programmable routers. Computer Networks, 38(3):295--310, 2002.
[74]
D. Tennenhouse, J. Smith, W. D. Sincoskie, D. Wetherall, and G. Minden. A survey of active network research. IEEE Communications Magazine, pages 80--86, January 1997.
[75]
D. L. Tennenhouse and D. J. Wetherall. Towards an Active Network Architecture. ACM SIGCOMM Computer Communications Review, 26(2):5--18, Apr. 1996.
[76]
J. Touch. Dynamic Internet overlay deployment and management using the X-Bone. Computer Networks, 36(2):117--135, 2001.
[77]
J. van der Merwe, A. Cepleanu, K. D'Souza, B. Freeman, A. Greenberg, et al. Dynamic connectivity management with an intelligent route service control point. In ACM SIGCOMM Workshop on Internet Network Management, Oct. 2006.
[78]
J. van der Merwe, S. Rooney, I. Leslie, and S. Crosby. The Tempest: A Practical Framework for Network Programmability. IEEE Network, 12(3):20--28, May 1998.
[79]
P. Verkaik, D. Pei, T. Scholl, A. Shaikh, A. Snoeren, and J. van der Merwe. Wresting control from BGP: Scalable fine-grained route control. In Proc. USENIX Annual Technical Conference, June 2007.
[80]
A. Voellmy and P. Hudak. Nettle: Functional reactive programming of OpenFlow networks. In Proc. Workshop on Practical Aspects of Declarative Languages, pages 235--249, Jan. 2011.
[81]
R. Wang, D. Butnariu, and J. Rexford. OpenFlow-based server load balancing gone wild. In Hot-ICE, Mar. 2011.
[82]
D. Wetherall, J. Guttag, and D. Tennenhouse. ANTS: A toolkit for building and dynamically deploying network protocols. In IEEE OpenArch, April 1998.
[83]
B. White, J. Lepreau, L. Stoller, R. Ricci, S. Guruprasad, M. Newbold, M. Hibler, C. Barb, and A. Joglekar. An integrated experimental environment for distributed systems and networks. In Proc. OSDI, Dec. 2002.
[84]
T. Wolf and J. Turner. Design issues for high performance active routers. IEEE Journal on Selected Areas of Communication, pages 404--409, March 2001.
[85]
H. Yan, D. A. Maltz, T. S. E. Ng, H. Gogineni, H. Zhang, and Z. Cai. Tesseract: A 4D Network Control Plane. In Proc. 4th USENIX NSDI, Cambridge, MA, Apr. 2007.
[86]
L. Yang, R. Dantu, T. Anderson, and R. Gopal. Forwarding and Control Element Separation (ForCES) Framework. Internet Engineering Task Force, Apr. 2004. RFC 3746.
[87]
Y. Yiakoumis and N. McKeown. Slicing Home Networks. In ACM SIGCOMM Workshop on Home Networking (Homenets), Toronto, Ontario, Canada, May 2011.
[88]
J. Zander and R. Forchheimer. Softnet: An approach to higher level packet radio. In Proceedings, AMRAD Conference, San Francisco, 1983.

Cited By

View all
  • (2024)Towards a Software-Defined Industrial IoT-Edge Network for Next-Generation Offshore Wind Farms: State of the Art, Resilience, and Self-X Network and Service ManagementEnergies10.3390/en1712289717:12(2897)Online publication date: 13-Jun-2024
  • (2024)Network-driven TCP Harmonized Management Utilizing a Programmable SDN Data PlaneSDNのプログラマブルデータプレーンによるネットワーク主導型TCPフロー制御調和手法IEICE Communications Society Magazine10.1587/bplus.17.35917:4(359)Online publication date: 2024
  • (2024)Application of SDN-IP hybrid network multicast architecture in Commercial Aerospace Data CenterOpen Astronomy10.1515/astro-2022-022333:1Online publication date: 16-Mar-2024
  • Show More Cited By

Index Terms

  1. The road to SDN: an intellectual history of programmable networks

    Recommendations

    Reviews

    Alberto Egon Schaeffer-Filho

    Software-defined networking (SDN) is arguably the single most important development in the networking field in the past few years. SDN decouples how packets are forwarded between routers/switches (data plane) from how packets must be handled (control plane). Feamster et al. present a history lesson on how different technologies and paradigms played a role in shaping what is now called SDN. A chronological overview of past efforts in the area of programmable networking is depicted from early research on active networks, through control-data separation, and finally on to the more recent OpenFlow and network operating system efforts. Furthermore, the authors discuss what has driven the interest from academia and industry through the years: initially, it was the search for more pragmatism, and later it was the need to generalize previous solutions. Even experienced researchers and practitioners will appreciate the chronological relationships highlighted by the authors. Not surprisingly, many concerns faced earlier by more primitive solutions surfaced later in the SDN domain, including the need for distributed state management. The reliance on existing protocols and application programming interfaces (APIs) significantly limited what could be done in the early 2000s, but the authors emphasize that present-day SDN and OpenFlow as its primary realization build on similar principles for supporting a more general manner of network programming. If one thing is missing in this paper, however, it is a discussion on abstractions for expressing network programmability and for the specification of management functions. This would have included early work on policy-based network management (PBNM), the Internet Engineering Task Force (IETF) script management information base (MIB), and more recent efforts along the lines of Pyretic. Online Computing Reviews Service

    Access critical reviews of Computing literature here

    Become a reviewer for Computing Reviews.

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGCOMM Computer Communication Review
    ACM SIGCOMM Computer Communication Review  Volume 44, Issue 2
    April 2014
    96 pages
    ISSN:0146-4833
    DOI:10.1145/2602204
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 08 April 2014
    Published in SIGCOMM-CCR Volume 44, Issue 2

    Check for updates

    Author Tags

    1. network virtualization
    2. programmable networking
    3. software defined networking

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)546
    • Downloads (Last 6 weeks)60
    Reflects downloads up to 22 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Towards a Software-Defined Industrial IoT-Edge Network for Next-Generation Offshore Wind Farms: State of the Art, Resilience, and Self-X Network and Service ManagementEnergies10.3390/en1712289717:12(2897)Online publication date: 13-Jun-2024
    • (2024)Network-driven TCP Harmonized Management Utilizing a Programmable SDN Data PlaneSDNのプログラマブルデータプレーンによるネットワーク主導型TCPフロー制御調和手法IEICE Communications Society Magazine10.1587/bplus.17.35917:4(359)Online publication date: 2024
    • (2024)Application of SDN-IP hybrid network multicast architecture in Commercial Aerospace Data CenterOpen Astronomy10.1515/astro-2022-022333:1Online publication date: 16-Mar-2024
    • (2024)A Decentralized SDN Architecture for the WANProceedings of the ACM SIGCOMM 2024 Conference10.1145/3651890.3672257(938-953)Online publication date: 4-Aug-2024
    • (2024)Security of Topology Discovery Service in SDN: Vulnerabilities and CountermeasuresIEEE Open Journal of the Communications Society10.1109/OJCOMS.2024.34064895(3410-3450)Online publication date: 2024
    • (2024)Intelligent Sensing, Communication, Computation, and Caching for Satellite-Ground Integrated NetworksIEEE Network: The Magazine of Global Internetworking10.1109/MNET.2024.341354338:4(9-16)Online publication date: 1-Jul-2024
    • (2024)QuIP: A P4 Quantum Internet Protocol Prototyping FrameworkIEEE Journal on Selected Areas in Communications10.1109/JSAC.2024.338009642:7(1936-1949)Online publication date: 27-Mar-2024
    • (2024)A Lightweight Path Validation Scheme in Software-Defined NetworksIEEE INFOCOM 2024 - IEEE Conference on Computer Communications10.1109/INFOCOM52122.2024.10621099(731-740)Online publication date: 20-May-2024
    • (2024)Study on Networking Models of SDN using Mininet and MiniEdit2024 2nd International Conference on Intelligent Data Communication Technologies and Internet of Things (IDCIoT)10.1109/IDCIoT59759.2024.10467218(1159-1164)Online publication date: 4-Jan-2024
    • (2024)Automated Data Ingestion Framework for Enhanced Control and Maintenance of Optical Networks [Invited]2024 24th International Conference on Transparent Optical Networks (ICTON)10.1109/ICTON62926.2024.10647637(1-4)Online publication date: 14-Jul-2024
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media