OpenFLOW Controllers » History » Version 4

Thiago Paiva, 04 Jun 2013 07:25

1 1 Thiago Paiva
h1. OpenFLOW Controllers
2 1 Thiago Paiva
3 1 Thiago Paiva
4 1 Thiago Paiva
5 1 Thiago Paiva
h2. OpenFLOW
6 1 Thiago Paiva
7 1 Thiago Paiva
* http://routingfreak.wordpress.com/2013/03/01/openflow-controllers-whats-missing-in-routing-protocols-today/
8 1 Thiago Paiva
* http://en.wikipedia.org/wiki/OpenFlow
9 1 Thiago Paiva
* http://www.openflow.org/
10 1 Thiago Paiva
* http://www.openflow.org/wp/openflow-components/
11 1 Thiago Paiva
* http://bigswitch.com/blog/2012/12/20/why-openflow-hardware-control-matters-in-the-data-center
12 1 Thiago Paiva
13 1 Thiago Paiva
14 1 Thiago Paiva
15 1 Thiago Paiva
16 1 Thiago Paiva
h2. Controladores
17 1 Thiago Paiva
18 2 Raphael Cóbe
h3. Tabela Resumo:
19 2 Raphael Cóbe
20 3 Raphael Cóbe
|_. Nome|_. Linguagem|_. Licença|_. Tamanho do Pacote                              |_. Features              |_. URL|_. Versão do OpenFlow |
21 1 Thiago Paiva
|Nox    |C++         |GPL V3    |>. 258 Kb (Fonte)                                 | Provides a C++ OpenFlow 1.0 API
22 1 Thiago Paiva
    Provides fast, asynchronous IO
23 1 Thiago Paiva
    Includes sample components for:
24 1 Thiago Paiva
        Topology discovery
25 1 Thiago Paiva
        Learning switch
26 1 Thiago Paiva
        Network-wide switch |http://www.noxrepo.org/pox/documentation/| 1.0 |
27 1 Thiago Paiva
|Pox    |Python      |GPL V3    |>. 1.1 Mb (Fonte)                                 | “Pythonic” OpenFlow interfacePOX Performance Graph
28 1 Thiago Paiva
Reusable sample components for path selection, topology discovery, etc.
29 1 Thiago Paiva
“Runs anywhere” – Can bundle with install-free PyPy runtime for easy deployment
30 1 Thiago Paiva
Specifically targets Linux, Mac OS, and Windows
31 1 Thiago Paiva
Supports the same GUI and visualization tools as NOX
32 1 Thiago Paiva
Performs well compared to NOX applications written in Python          |http://www.noxrepo.org/nox/documentation/| 1.0|
33 1 Thiago Paiva
|Beacon |Java        |GPL v2    |>. 12.2 Mb (Fonte) 17 Mb (Binários + Dependências)|    *Stable* - Beacon has been in development since early 2010, and has been used in several research projects, networking classes, and trial deployments. Beacon currently powers a 100-vswitch, 20-physical switch experimental data center and has run for months without downtime.
34 1 Thiago Paiva
    *Cross-platform* - Beacon is written in Java and runs on many platforms, from high end multi-core Linux servers to Android phones.
35 1 Thiago Paiva
    *Dynamic* - Code bundles in Beacon can be started/stopped/refreshed/installed at runtime, without interrupting other non-dependent bundles (ie replace your running Learning Switch application without disconnecting switches).
36 1 Thiago Paiva
    *Rapid Development* - Beacon is easy to get up and running. Java and Eclipse simplify development and debugging of your applications.
37 1 Thiago Paiva
    *Fast* - Beacon is multithreaded, check out performance benchmarks.
38 1 Thiago Paiva
    *Web UI* - Beacon optionally embeds the Jetty enterprise web server and a custom extensible UI framework
39 1 Thiago Paiva
    *Frameworks* - Beacon builds on mature Java frameworks such as Spring and Equinox (OSGi)           |https://openflow.stanford.edu/display/Beacon/Guides|1.0|
40 1 Thiago Paiva
|Maestro |Java        |LGPL v2.1    |>. 117 Kb (Binários) 262 Kb (Fonte) |*Developed in Java* (both the platform and the components) - Highly portable to various operating systems and architectures.
41 1 Thiago Paiva
    *Multi-threaded* - Takes full advantage of multi-core processors. 
42 1 Thiago Paiva
    Currently provides the control components for realizing either a learning switch network, or a routed network using OpenFlow switches.              |http://code.google.com/p/maestro-platform/wiki/MaestroTutorial|1.0|
43 4 Thiago Paiva
44 4 Thiago Paiva
45 4 Thiago Paiva
h3. Listas
46 4 Thiago Paiva
47 4 Thiago Paiva
* http://tech.saroscorner.com/2012/12/list-of-openflow-controllers-for-sdn.html
48 4 Thiago Paiva
49 4 Thiago Paiva
50 4 Thiago Paiva
h3. BigSwitch
51 4 Thiago Paiva
52 4 Thiago Paiva
* closed-source
53 4 Thiago Paiva
* based on Beacon 
54 4 Thiago Paiva
* java
55 4 Thiago Paiva
* targets production networks
56 4 Thiago Paiva
* user-friendly cli
57 4 Thiago Paiva
58 4 Thiago Paiva
59 4 Thiago Paiva
h3. floodlight
60 4 Thiago Paiva
61 4 Thiago Paiva
* http://www.projectfloodlight.org/floodlight/
62 4 Thiago Paiva
* http://groups.geni.net/geni/wiki/OpenFlow/Controllers/Floodlight
63 4 Thiago Paiva
64 4 Thiago Paiva
* enterprise class (production)
65 4 Thiago Paiva
* apache-licensed (open-source)
66 4 Thiago Paiva
* support a broad range of OpenFLOW switches
67 4 Thiago Paiva
* can manage multiple island of OpenFLOW switches
68 4 Thiago Paiva
* the core of 'BigSwitch' (BigSwitch open-sourced FloodLight)
69 4 Thiago Paiva
* fisical and virtual switches
70 4 Thiago Paiva
* open community of developers
71 4 Thiago Paiva
* simple to use
72 4 Thiago Paiva
* java
73 4 Thiago Paiva
* modular (simple to extend and enhance)
74 4 Thiago Paiva
* minimal dependencies
75 4 Thiago Paiva
* mixed OpenFLOW and non-OpenFLOW networks
76 4 Thiago Paiva
* high performance
77 4 Thiago Paiva
* support for OPENSTACK cloud orchestration platform
78 4 Thiago Paiva
* (tem no repositório???)
79 4 Thiago Paiva
* Floodlight VM (run mininet for tests)
80 4 Thiago Paiva
* Examples at flood light site
81 4 Thiago Paiva
* Avior (GUI open-source)
82 4 Thiago Paiva
83 4 Thiago Paiva
h3. POX
84 4 Thiago Paiva
85 4 Thiago Paiva
* python
86 4 Thiago Paiva
* multi-platform
87 4 Thiago Paiva
* research and education
88 4 Thiago Paiva
* open-source
89 4 Thiago Paiva
90 4 Thiago Paiva
h3. NOX
91 4 Thiago Paiva
92 4 Thiago Paiva
* concurrent applications
93 4 Thiago Paiva
* python and C++
94 4 Thiago Paiva
* sample controller applications
95 4 Thiago Paiva
96 4 Thiago Paiva
h3. MUL
97 4 Thiago Paiva
98 4 Thiago Paiva
h3. Jaxon
99 4 Thiago Paiva
100 4 Thiago Paiva
h3. Trema
101 4 Thiago Paiva
102 4 Thiago Paiva
h3. Beacon
103 4 Thiago Paiva
104 4 Thiago Paiva
* java
105 4 Thiago Paiva
* OSGI framework (openflow applications built on the platform to be started / stopped / refreshed / installed at runtime
106 4 Thiago Paiva
* cross-platform
107 4 Thiago Paiva
* modular
108 4 Thiago Paiva
* "robusto"
109 4 Thiago Paiva
110 4 Thiago Paiva
111 4 Thiago Paiva
h3. Maestro
112 4 Thiago Paiva
113 4 Thiago Paiva
* java
114 4 Thiago Paiva
* extensible
115 4 Thiago Paiva
* multi-threading
116 4 Thiago Paiva
* target researchers
117 4 Thiago Paiva
* open-source
118 4 Thiago Paiva
119 4 Thiago Paiva
120 4 Thiago Paiva
h3. NDDI-OESS
121 4 Thiago Paiva
122 4 Thiago Paiva
h3. NodeFlow
123 4 Thiago Paiva
124 4 Thiago Paiva
h3. Ryu
125 4 Thiago Paiva
126 4 Thiago Paiva
* well-defined API
127 4 Thiago Paiva
* NTT Labs (instituição por trás)
128 4 Thiago Paiva
129 4 Thiago Paiva
130 4 Thiago Paiva
h3. OVS-Controller
131 4 Thiago Paiva
132 4 Thiago Paiva
h3. Helios
133 4 Thiago Paiva
134 4 Thiago Paiva
* C
135 4 Thiago Paiva
* NEC (empresa que desenvolve)
136 4 Thiago Paiva
* targetting researchers
137 4 Thiago Paiva
* programmatic shell (integrated experiments)
138 4 Thiago Paiva
139 4 Thiago Paiva
140 4 Thiago Paiva
h3. SNAC
141 4 Thiago Paiva
142 4 Thiago Paiva
* targets production networks
143 4 Thiago Paiva
* based on NOX 0.4 
144 4 Thiago Paiva
* python e C++
145 4 Thiago Paiva
* flexible policy definition language
146 4 Thiago Paiva
* user-friendly interface (configuration + monitoring)
147 4 Thiago Paiva
148 4 Thiago Paiva
149 4 Thiago Paiva
h3. HP Virtual Application Networks SDN Controller
150 4 Thiago Paiva
151 4 Thiago Paiva
* dinamic control plane
152 4 Thiago Paiva
* full support for OpenFLOW protocol
153 4 Thiago Paiva
* Open API enable third part application
154 4 Thiago Paiva
155 4 Thiago Paiva
156 4 Thiago Paiva
h3. IBM PNC (IBM Programmable Network Controller)
157 4 Thiago Paiva
158 4 Thiago Paiva
* unlimited virtual machine mobility
159 4 Thiago Paiva
* enterprise class (production)
160 4 Thiago Paiva
* automatically and continuous discovers network topology
161 4 Thiago Paiva
162 4 Thiago Paiva
163 4 Thiago Paiva
h2. Hypervisor
164 4 Thiago Paiva
165 4 Thiago Paiva
To a controller: ordinary switch. To a switch: a controller. Must stay on top of switches and under the controller.
166 4 Thiago Paiva
167 4 Thiago Paiva
h3. FlowVisor
168 4 Thiago Paiva
169 4 Thiago Paiva
* transparent proxy between switches and controller
170 4 Thiago Paiva
* slices of network
171 4 Thiago Paiva
* network virtualization platform
172 4 Thiago Paiva
* hypervisor
173 4 Thiago Paiva
* isolate services at slices (groups?)
174 4 Thiago Paiva
175 4 Thiago Paiva
h2. Guias
176 4 Thiago Paiva
177 4 Thiago Paiva
* http://searchsdn.techtarget.com/guides/OpenFlow-protocol-tutorial-SDN-controllers-and-applications-emerge
178 4 Thiago Paiva
179 4 Thiago Paiva
180 4 Thiago Paiva
181 4 Thiago Paiva
h2. Comparativos
182 4 Thiago Paiva
183 4 Thiago Paiva
* Nox, Nox D, Beacon, Maestro
184 4 Thiago Paiva
http://www.openflow.org/wk/index.php/Controller_Performance_Comparisons