2016-01-05 11 views
5

Vorrei ricevere i vostri consigli sul miglior controller open source SDN disponibile. Voglio implementare e testare alcune idee che ho nella mia ricerca, quindi ho bisogno di usare una simulazione come Mininet. In effetti, ho familiarità con Mininet e sono in grado di gestirlo. Tuttavia, Mininet usa un controller POX un po 'noioso e non così facile da usare, quindi quando si tratta di gestire la topologia della rete e modificare i flussi, diventa un compito difficile dal momento che è necessario codificare tutto da zero (sono un principiante anche in Python). C'è un controller SDN user-friendly che posso usare al posto di POX? Ho provato Floodlight e Opendaylight ma non sono davvero pronti e coinvolgono molti bug.Quali alternative sono disponibili controller SDN per POX?

Grazie.

risposta

2

Penso che si possa provare a utilizzare ryu. È basato su Python e facile da usare.

C'è un modo semplice per l'installazione del controller ryu, provare sdnds-tw/ryuInstallHelper

7

Nox

Tutto cominciò con NOX. Mentre alcuni potrebbero obiettare, NOX è il primissimo controller OpenFlow che ha attirato un sacco di ricercatori attorno a sé e ha raggiunto un ampio consenso. La maggior parte dei documenti e delle applicazioni primari definiti dal software (SDN) e OpenFlow sono implementati su NOX. Persino Google ha usato NOX per costruire (prototipo?) Il proprio controller OpenFlow distribuito, chiamato ONIX. Detto questo, tutto quel chiasso è stato lasciato nel 2010. Da quel momento in poi le mailing-list NOX sono quasi abbandonate e nessun importante cambiamento che io conosca è stato introdotto nel codice base.

Pox

POX si definisce come il fratello più giovane di NOX. (Sono entrambi gestiti/gestiti dalla stessa squadra/organizzazione.) La mia personale convinzione è che il POX sia più o meno motivato dallo scopo di creare un successore del controller OpenFlow adatto allo sviluppatore al NOX. Quasi tutti i nuovi arrivati ​​di OpenFlow sono indirizzati a POX o Floodlight. Quindi, non sorprende che abbia una mailing list piuttosto attiva. POX fornisce un'API web limitata (tramite JSON-RPC) e una raccolta di manuali di dimensioni moderate sul suo wiki. È scritto in Python e fornisce una API Python decente per Pythonistas. A causa del fatto che Python è un linguaggio interpretato, POX riduce davvero il tempo impiegato nel ciclo di sviluppo e implementazione, in particolare rispetto al NOX basato su C++. Inoltre, oltre a supportare la GUI NOX, POX fornisce anche una GUI basata sul web.

Beacon

In sintesi, Beacon offre una base di codice compatto ed espressivo e funziona perfettamente. Detto questo, la dipendenza da Eclipse e OSGi mi uccide davvero e supportare solo le topologie a stella (ovvero topologie senza loop) è molto limitante. Se stai per provare Beacon, ti consiglio di valutare Floodlight.

Floodlight

proiettore ha senza dubbio la comunità più attiva e reattiva tra i software F/OSS OpenFlow. La maggior parte degli sviluppatori di Floodlight che lavorano in BigSwitch Networks partecipa direttamente alle mailing-list. Puoi trovarti a discutere di un problema con gli sviluppatori effettivi di un particolare modulo. Non ho mai visto né una domanda senza risposta, né un problema irrisolto. Era davvero una comunità solidale e attiva.Floodlight espone quasi tutte le sue funzionalità tramite un'API REST e esistono molte utilità utili per attività comuni quali percorsi statici e push (circuito) end-to-end. Floodlight ha un'interfaccia utente basata sul Web (con il contributo di Wes Felter) e una GUI basata su Java, chiamata Avior, con il contributo di Jason Parraga. Nel suo genere, Floodlight può anche essere eseguito come backend di rete per OpenStack utilizzando un plug-in Quantum. Infine, è il progetto di controller più documentato là fuori nell'ecosistema.

Ryu

Ryu è un framework di rete software definito basata su componenti. Ryu fornisce componenti software con API ben definite che consentono agli sviluppatori di creare facilmente nuove applicazioni di gestione e controllo della rete. Ryu supporta vari protocolli per la gestione di dispositivi di rete, come OpenFlow, Netconf, OF-config, ecc. Informazioni su OpenFlow, Ryu supporta completamente le estensioni 1.0, 1.2, 1.3, 1.4, 1.5 e Nicira. Tutto il codice è disponibile gratuitamente con la licenza Apache 2.0. **

ONOS

L'Onos progetto (Sistema Operativo Open Network) è una comunità open source ospitato dalla Linux Foundation. L'obiettivo del progetto è quello di creare un sistema operativo SDN (software-defined networking) per i fornitori di servizi di comunicazione progettato per scalabilità, alte prestazioni e alta disponibilità.

Opendaylight

L'OpenDaylight Project è un progetto open source collaborativo ospitato dalla Linux Foundation. L'obiettivo del progetto è accelerare l'adozione del networking definito dal software (SDN) e creare una solida base per Network Functions Virtualization (NFV). Il software è scritto in Java.

2

In primo luogo, sia Floodlight che OpenDaylight sono pronti per la produzione. Sebbene questo post fosse di alcuni mesi fa, OpenDaylight era già in produzione in molte organizzazioni.

Supponendo per qualche altro motivo si preferisce controllori diversi OpenDaylight e proiettore, si può dare una prova di Onos o Kandoo/alveare distribuito regolatore https://github.com/kandoo/beehive-netctrl

Si prega di notare che il vostro reclamo Mininet utilizza POX è fuorviante. Puoi utilizzare qualsiasi controller con Mininet.

Per esempio,

  1. Configurazione Mininet con proiettore - http://kkpradeeban.blogspot.com/2015/09/configuring-mininet-with-floodlight.html

  2. Configurazione Mininet con OpenDaylight - http://kkpradeeban.blogspot.com/2014/10/configuring-opendaylight-with-mininet.html

Problemi correlati