Vai al contenuto

Software-defined networking

Da Wikipedia, l'enciclopedia libera.

La tecnologia Software-defined networking (SDN) costituisce un nuovo approccio in ottica cloud computing, che facilita l'amministrazione delle reti ed abilita la possibilità di configurare le reti in maniera programmata ed efficiente al fine di migliorarne performance e facilitarne il monitoring[1].

Il paradigma SDN tende a sottolineare il fatto che l'architettura statica delle reti tradizionali sia decentralizzata e complessa, mentre tali reti richiedono maggiore flessibilità e capacità di troubleshooting. SDN suggerisce di centralizzare l'intelligenza di rete in un componente separato, disassociando il processo di forwarding dei pacchetti (Data Plane) da quello di routing (Control Plane). Il Control Plane è costituito da uno o più controller che sono considerati il cervello della rete, in cui è incorporata tutta l'intelligenza.

Tuttavia, la centralizzazione dell'intelligenza ha i suoi svantaggi riguardo a sicurezza[2], scalabilità ed elasticità [3] e rappresenta oggi il maggior difetto delle tecnologie SDN.

SDN è stata comunemente associata al protocollo OpenFlow (per la comunicazione remota con elementi di network plane allo scopo di determinare il percorso dei pacchetti di rete attraverso gli switch della rete) a partire dalla nascita di quest ultimo nel 2011. A partire dal 2012[4] , tuttavia, molte compagnie hanno abbandonato OpenFlow e adottato tecniche differenti. Tra queste si possono ricordare Open Network Environment di Cisco Systems e Network Virtualization Platform di Nicira.

SD-WAN applica tecnologie simile alle reti WAN [5].

Storia

La storia dei principi SDN può esser fatta risalire alla separazione tra control e data plane inizialmente utilizzata nella rete telefonica fissa per semplificare il provisioning e la gestione, molto prima che tale architettura venisse utilizzata nelle reti dati.

Le prime proposte di IETF di disaccoppiare le funzioni di controllo e di forwarding, risalgono ad una proposta di interfaccia standard pubblicata nel 2004 con il nome “Forwarding and Control Element Separation” (ForCES)[6]. Il ForCES Working Group propose successivamente un'aggiuntiva Architettura SoftRouter Architecture[7]. Standard successivi che proponevano la separazione di control e data plane includono Linux Netlink as an IP Services Protocol[8] e A Path Computation Element (PCE)-Based Architecture[9].

Questi primi tentativi non riscossero successo per due motivi: il rischio insito nella separazione tra dati e controllo per gran parte della comunità internet, e la preoccupazione da parte dei vendor che la creazione di API standard tra control e data plane avrebbe potuto portare ad una maggiore concorrenza.

L'utilizzo di software open source in architetture che prevedono lo split tra dati e controllo, risale al Progetto Ethane del dipartimento di informatica di Stanford. La semplicità delle funzioni di switch in Ethane ha infatti portato alla creazione di OpenFlow[10]. Al 2008 risale la creazione della prima API [11] e allo stesso anno risale la creazione di NOX, un sistema operativo per le reti[12].

Il lavoro su OpenFlow continuò a Stanford, portando alla creazione di banchi di prova per testare l'utilizzo del protocollo all'interno di un campus e attraverso la WAN come backbone per connettere più campus[13].

Successivamente in ambito accademico, a partire dal 2009, sono cominciate ad emergere reti per ricerca e sviluppo basate su switch OpenFlow da NEC e Hewlett-Packard, così come su prototipi Quanta Computer[14].

Al di fuori dell'ambito accademico, i primi sviluppi si devono a Nicira nel 2010 per controllare OVS (Open vSwitch) da Onix, sviluppato insieme ad NTTGoogle[15].

Al 2012 risale lo sviluppo di B4 da parte di Google[16][17], che, successivamente, ha riconosciuto il primo sviluppo di OpenFlow con Onix all'interno dei propri data center[18].

Nel 2011 fu fondata Open_Networking_Foundation per promuovere lo sviluppo e l'utilizzo di OpenFlow e della tecnologia SDN.

Nel 2014, durante il Interop and Tech Field Day, Avaya ha tenuto una dimostrazione di tecnologia SDN utilizzando shortest path bridging (IEEE_802.1aqOpenStack come un campus automatizzato, estendo l'automazione dai data center ai dispositivi finali, rimuovendo il provisioning manuale dai processi di service delivery)[19].

Concetti fondamentali

L'architettura SDN nasce con l'intento di essere dinamica, gestibile, economicamente efficiente e adattabile, cercando di essere funzionale per le la natura dinamica e ad alto consumo di banda delle applicazioni odierne. Le architetture SDN disaccoppiano il controllo di rete e le funzioni di forwarding, dando la possibilità al controllo di rete di divenire direttamente programmabile e alla sottostante infrastruttura di essere astratta dalle applicazioni e dai servizi di rete[20].

Il protocollo OpenFlow può essere utilizzato nelle tecnologie SDN. L'architettura SDN è:

  • Direttamente programmabile: il controllo della rete è direttamente programmabile perché è disaccoppiato dalle funzioni di forwarding.
  • Agile: L'astrazione del controllo dal forwarding permette agli amministratori di modificare dinamicamente il flusso di traffico nell'intera rete per soddisfare le necessità di cambiamento.
  • Gestita centralmente: L'intelligenza della rete è (logicamente) centralizzata all'interno dei controller SDN che mantengono una vista globale della rete, la quale appare alle applicazioni ed ai motori di policy come un unico switch logico.
  • Programmaticamente configurata: SDN permette ai gestori della rete di configurare, gestire, rendere sicure e ottimizzare le risorse di rete in maniera molto veloce attraverso script automatizzati che essi stessi possono scrivere, in quanto non devono basarsi su software proprietario.
  • Basata su standard aperti e indipendente dai vendor: Se implementata attraverso standard aperti, SDN semplifica il disegno e manutenzione della rete poiché le istruzioni sono fornite dai controller SDN invece che da molteplici dispositivi e protocolli proprietari.

Note

  1. ^ Benzekki Kamal et al.Software‐defined networking (SDN): a survey., Security and Communication Networks 9, no. 18 (2016): 5803-5833.
  2. ^ Benzekki Kamal et al.Devolving IEEE 802.1 X authentication capability to data plane in software‐defined networking (SDN) architecture., Security and Communication Networks 9.17 (2016): 4369-4377.
  3. ^ Benzekki Kamal et al Software‐defined networking (SDN): a survey., Security and Communication Networks 9, no. 18 (2016): 5803-5833.
  4. ^ Software-defined networking is not OpenFlow, companies proclaim[1]
  5. ^ Predicting SD-WAN Adoption, su blogs.gartner.com, gartner.com, 15 dicembre 2015. URL consultato il 27 giugno 2016.
  6. ^ L. Yang (Intel Corp.), R. Dantu (Univ. of North Texas), T. Anderson (Intel Corp.) & R. Gopal (Nokia.), Forwarding and Control Element Separation (ForCES) Framework, su tools.ietf.org, April 2004.CS1 maint: Multiple names: authors list (link)
  7. ^ T. V. Lakshman, T. Nandagopal, R. Ramjee, K. Sabnani, and T. Woo, The SoftRouter Architecture (PDF), su conferences.sigcomm.org, Nov 2004.CS1 maint: Multiple names: authors list (link)
  8. ^ J. Salim (Znyx Networks), H. Khosravi (Intel), A. Kleen (Suse), and A. Kuznetsov (INR/Swsoft), Linux Netlink as an IP Services Protocol, su tools.ietf.org, July 2003.CS1 maint: Multiple names: authors list (link)
  9. ^ A. Farrel (Old Dog Consulting), J. Vasseur (Cisco Systems, Inc.), and J. Ash (AT&T), A Path Computation Element (PCE)-Based Architecture, su tools.ietf.org, August 2006.CS1 maint: Multiple names: authors list (link)
  10. ^ Martìn Casado, Michael J. Freedman, Justin Pettit, Jianying Luo, and Nick McKeown (Stanford University), Ethane: Taking Control of the Enterprise (PDF), su cs.brown.edu, August 2007.CS1 maint: Multiple names: authors list (link)
  11. ^ N. McKeown, T. Anderson, H. Balakrishnan, G. Parulkar, L. Peterson, J. Rexford, S. Shenker, and J. Turner., OpenFlow: Enabling Innovation in Campus Networks (PDF), su ccr.sigcomm.org, April 2008.CS1 maint: Multiple names: authors list (link)
  12. ^ N. Gude, T. Koponen, J. Pettit, B. Pfaff, M. Casado, N. McKeown, and S. Shenker., NOX: Towards an Operating System for Networks (PDF), su benpfaff.org, July 2008.CS1 maint: Multiple names: authors list (link)
  13. ^ GENI. Campus OpenFlow topology, su groups.geni.net, 2011.
  14. ^ Kuang-Ching “KC” Wang, Software Defined Networking and OpenFlow for Universities: Motivation, Strategy, and Uses (PDF), su internet2.edu, Oct 3, 2011.
  15. ^ What are SDN Controllers (or SDN Controllers Platforms)?, su sdxcentral.com.
  16. ^ Sushant Jain, Alok Kumar, Subhasree Mandal, Joon Ong, Leon Poutievski, Arjun Singh, Subbaiah Venkata, Jim Wanderer, Junlan Zhou, Min Zhu, Jonathan Zolla, Urs Hölzle, Stephen Stuart and Amin Vahdat (Google), B4: Experience with a Globally-Deployed Software Defined WAN (PDF), su cseweb.ucsd.edu, August 12–16, 2013.CS1 maint: Multiple names: authors list (link)
  17. ^ brent salisbury, Inside Google's Software-Defined Network, su networkcomputing.com, May 14, 2013.
  18. ^ Arjun Singh, Joon Ong, Amit Agarwal, Glen Anderson, Ashby Armistead, Roy Bannon, Seb Boving, Gaurav Desai, Bob Felderman, Paulie Germano, Anand Kanagala, Jeff Provost, Jason Simmons, Eiichi Tanda, Jim Wanderer, Urs Hölzle, Stephen Stuart, Amin Vahdat, Jupiter Rising: A Decade of Clos Topologies and Centralized Control in Google’s Datacenter Network, su research.google.com, 2015.CS1 maint: Multiple names: authors list (link)
  19. ^ Camille Campbell, Avaya Debuts Networking Innovations at 'Tech Field Day', su avaya.com, February 6, 2014.
  20. ^ Software-Defined Networking (SDN) Definition, su opennetworking.org. URL consultato il 26 October 2014.

[[Categoria:Tecnologie future]]