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.