OpenFLOW Controllers » History » Version 17
Thiago Paiva, 06 Jun 2013 13:38
| 1 | 1 | Thiago Paiva | h1. OpenFLOW Controllers |
|---|---|---|---|
| 2 | 1 | Thiago Paiva | |
| 3 | 5 | Thiago Paiva | Características a analisar: |
| 4 | 1 | Thiago Paiva | |
| 5 | 5 | Thiago Paiva | * linguagem |
| 6 | 5 | Thiago Paiva | * licença |
| 7 | 5 | Thiago Paiva | * tamanho do pacote |
| 8 | 5 | Thiago Paiva | * features |
| 9 | 5 | Thiago Paiva | * documentação |
| 10 | 5 | Thiago Paiva | * exemplos |
| 11 | 6 | Thiago Paiva | * versão do OpenFLOW |
| 12 | 1 | Thiago Paiva | |
| 13 | 5 | Thiago Paiva | |
| 14 | 1 | Thiago Paiva | h2. OpenFLOW |
| 15 | 5 | Thiago Paiva | |
| 16 | 5 | Thiago Paiva | * protocol between the controller and the switches |
| 17 | 5 | Thiago Paiva | * set of operations on the switches |
| 18 | 1 | Thiago Paiva | |
| 19 | 1 | Thiago Paiva | * http://routingfreak.wordpress.com/2013/03/01/openflow-controllers-whats-missing-in-routing-protocols-today/ |
| 20 | 1 | Thiago Paiva | * http://en.wikipedia.org/wiki/OpenFlow |
| 21 | 1 | Thiago Paiva | * http://www.openflow.org/ |
| 22 | 1 | Thiago Paiva | * http://www.openflow.org/wp/openflow-components/ |
| 23 | 1 | Thiago Paiva | * http://bigswitch.com/blog/2012/12/20/why-openflow-hardware-control-matters-in-the-data-center |
| 24 | 1 | Thiago Paiva | |
| 25 | 1 | Thiago Paiva | |
| 26 | 1 | Thiago Paiva | |
| 27 | 1 | Thiago Paiva | |
| 28 | 1 | Thiago Paiva | h2. Controladores |
| 29 | 1 | Thiago Paiva | |
| 30 | 2 | Raphael Cóbe | h3. Tabela Resumo: |
| 31 | 2 | Raphael Cóbe | |
| 32 | 3 | Raphael Cóbe | |_. Nome|_. Linguagem|_. Licença|_. Tamanho do Pacote |_. Features |_. URL|_. Versão do OpenFlow | |
| 33 | 7 | Raphael Cóbe | |*Nox* |C++ |GPL V3 |>. 258 Kb (Fonte) | Provides a C++ OpenFlow 1.0 API |
| 34 | 11 | Raphael Cóbe | Provides *fast, asynchronous IO* |
| 35 | 1 | Thiago Paiva | Includes sample components for: |
| 36 | 11 | Raphael Cóbe | *Topology discovery* |
| 37 | 11 | Raphael Cóbe | *Learning switch* |
| 38 | 11 | Raphael Cóbe | *Network-wide switch* |http://www.noxrepo.org/pox/documentation/| 1.0 | |
| 39 | 7 | Raphael Cóbe | |*Pox* |Python |GPL V3 |>. 1.1 Mb (Fonte) | “Pythonic” OpenFlow interfacePOX Performance Graph |
| 40 | 11 | Raphael Cóbe | *Reusable sample components* for *path selection*, *topology discovery*, etc. |
| 41 | 11 | Raphael Cóbe | “Runs anywhere” – Can *bundle with install-free PyPy runtime* for easy deployment |
| 42 | 11 | Raphael Cóbe | Specifically targets *Linux*, Mac OS, and Windows |
| 43 | 11 | Raphael Cóbe | Supports the *same GUI and visualization tools as NOX* |
| 44 | 11 | Raphael Cóbe | *Performs well compared to NOX* applications written in Python |http://www.noxrepo.org/nox/documentation/| 1.0| |
| 45 | 7 | Raphael Cóbe | |*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. |
| 46 | 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. |
| 47 | 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). |
| 48 | 1 | Thiago Paiva | *Rapid Development* - Beacon is easy to get up and running. Java and Eclipse simplify development and debugging of your applications. |
| 49 | 1 | Thiago Paiva | *Fast* - Beacon is multithreaded, check out performance benchmarks. |
| 50 | 1 | Thiago Paiva | *Web UI* - Beacon optionally embeds the Jetty enterprise web server and a custom extensible UI framework |
| 51 | 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| |
| 52 | 8 | Raphael Cóbe | |*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. |
| 53 | 1 | Thiago Paiva | *Multi-threaded* - Takes full advantage of multi-core processors. |
| 54 | 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| |
| 55 | 10 | Raphael Cóbe | |*Ryu* |Python |Apache V2.0 |>. 12.2 Mb (Fonte) |*OpenStack supports Ryu*. You can create tens of thousands of isolated virtual networks without using VLAN. You manage virtual networks, OpenStack notifies of Ryu and Ryu configures OpenvSwitches properly. |
| 56 | 1 | Thiago Paiva | You can try Now. Ryu's *pre-configured VM image* file enables you to easily set up multi-node OpenStack environment. |
| 57 | 1 | Thiago Paiva | We try Ryu with *software OpenFlow Switch* (OpenvSwitch) and bunch of *hardware OpenFlow Switches*.|https://github.com/osrg/ryu/wiki|1.0, 1.2, 1.3 e Nicira Extensions| |
| 58 | 16 | Thiago Paiva | |*Floodlight* |Java |Apache V2.0 |>. 46 Mb (Fonte)| - Offers a *module loading system* that make it simple to extend and enhance. |
| 59 | 16 | Thiago Paiva | - *Support for OpenStack* cloud orchestration platform - *OpenStack Quantum plugin*. |
| 60 | 16 | Thiago Paiva | - *It is the core of 'BigSwitch' (BigSwitch open-sourced FloodLight)*. |
| 61 | 16 | Thiago Paiva | - *Easy to set up* with *minimal dependencies*. |
| 62 | 16 | Thiago Paiva | - Supports a broad range of *virtual- and physical- OpenFlow switches*. |
| 63 | 16 | Thiago Paiva | - Can handle *mixed OpenFlow and non-OpenFlow networks* – it can manage multiple “islands” of OpenFlow hardware switches. |
| 64 | 16 | Thiago Paiva | - Designed to be *high-performance* – is the *core of a commercial product from Big Switch Networks*. |
| 65 | 16 | Thiago Paiva | - *API REST*. |
| 66 | 16 | Thiago Paiva | - Enterprise class (production). |
| 67 | 16 | Thiago Paiva | - Floodlight VM*. It includes floodlight running by default and Mininet. |
| 68 | 16 | Thiago Paiva | - *Nos repositórios do Ubuntu*. |
| 69 | 16 | Thiago Paiva | - *Avior (GUI open-source). |http://www.projectfloodlight.org/documentation/|1.0| |
| 70 | 16 | Thiago Paiva | |*BigSwitch*| java | closed-source | -- | - OpenStack |
| 71 | 16 | Thiago Paiva | - based on Beacon |
| 72 | 16 | Thiago Paiva | - targets production networks |
| 73 | 16 | Thiago Paiva | - user-friendly cli | http://www.bigswitch.com/ | | |
| 74 | 17 | Thiago Paiva | |*MUL*| C | GPLv2 | 16.2 MB (src) | - muli-threaded infrastructure |
| 75 | 17 | Thiago Paiva | - multi-level north bound interface for hooking up applications. |
| 76 | 17 | Thiago Paiva | - designed for performance and reliability (mission-critical networks). |
| 77 | 17 | Thiago Paiva | - core of a commercial controller from Kulcloud Networks |
| 78 | 17 | Thiago Paiva | - Openstack Support through Quantum plugins | http://sourceforge.net/projects/mul/ | 1.0, 1.1, 1.2 | |
| 79 | 17 | Thiago Paiva | |*Jaxon*| java | -- | 109 KB (src) | - NOX-dependent |
| 80 | 17 | Thiago Paiva | - provides a thin interface with the NOX |
| 81 | 17 | Thiago Paiva | - possible to directly access from Java program to C native ones. | http://jaxon.onuos.org/ | -- | |
| 82 | 17 | Thiago Paiva | |*NDDI-OESS*|??|Apache V2.0|??| -- set of programs |
| 83 | 17 | Thiago Paiva | - OESS provides sub-second circuit provisioning |
| 84 | 17 | Thiago Paiva | - automatic circuit failover |
| 85 | 17 | Thiago Paiva | - per-interface permissions |
| 86 | 17 | Thiago Paiva | - automatic per-VLAN statistics |
| 87 | 17 | Thiago Paiva | - simple and user friendly web-based user interface |
| 88 | 17 | Thiago Paiva | - web services API | http://code.google.com/p/nddi/wiki/README | 1.0| |
| 89 | 17 | Thiago Paiva | |*NodeFlow*| javascript| MIT-License | ? | - provides an asynchronous library over JavaScript for server side programming which is perfect for writing network based applications (ones that don’t require an excessive amount of CPU). |
| 90 | 17 | Thiago Paiva | - Uses on OFLIB-NODE Library. | http://garyberger.net/?p=537 | 1.0| |
| 91 | 17 | Thiago Paiva | |*Helios*| C | closed-source | ? | - targetting researchers |
| 92 | 17 | Thiago Paiva | - programmatic shell (integrated experiments) | http://www.nec.com/|1.0| |
| 93 | 17 | Thiago Paiva | |*SNAC*| Python e C++ | GPLv3 | ? | - targets production networks |
| 94 | 17 | Thiago Paiva | - based on NOX 0.4 |
| 95 | 17 | Thiago Paiva | - flexible policy definition language |
| 96 | 17 | Thiago Paiva | - user-friendly interface (configuration + monitoring)| http://www.openflow.org/wp/snac/ |1.0| |
| 97 | 17 | Thiago Paiva | |*HP VANSC*| ? | closed | ? | - dinamic control plane |
| 98 | 17 | Thiago Paiva | - full support for OpenFLOW protocol |
| 99 | 17 | Thiago Paiva | - Open API enable third part application | ? | ? | |
| 100 | 12 | Thiago Paiva | |
| 101 | 17 | Thiago Paiva | |*IBM PNC*| ? | closed | ? | - unlimited virtual machine mobility |
| 102 | 17 | Thiago Paiva | - enterprise class (production) |
| 103 | 17 | Thiago Paiva | - automatically and continuous discovers network topology | ? | ? | |
| 104 | 7 | Raphael Cóbe | |
| 105 | 4 | Thiago Paiva | |
| 106 | 4 | Thiago Paiva | |
| 107 | 4 | Thiago Paiva | h3. Listas |
| 108 | 4 | Thiago Paiva | |
| 109 | 4 | Thiago Paiva | * http://tech.saroscorner.com/2012/12/list-of-openflow-controllers-for-sdn.html |
| 110 | 4 | Thiago Paiva | |
| 111 | 4 | Thiago Paiva | |
| 112 | 4 | Thiago Paiva | h3. BigSwitch |
| 113 | 4 | Thiago Paiva | |
| 114 | 4 | Thiago Paiva | * closed-source |
| 115 | 4 | Thiago Paiva | * based on Beacon |
| 116 | 4 | Thiago Paiva | * java |
| 117 | 4 | Thiago Paiva | * targets production networks |
| 118 | 4 | Thiago Paiva | * user-friendly cli |
| 119 | 4 | Thiago Paiva | |
| 120 | 4 | Thiago Paiva | |
| 121 | 4 | Thiago Paiva | h3. floodlight |
| 122 | 4 | Thiago Paiva | |
| 123 | 4 | Thiago Paiva | * http://www.projectfloodlight.org/floodlight/ |
| 124 | 4 | Thiago Paiva | * http://groups.geni.net/geni/wiki/OpenFlow/Controllers/Floodlight |
| 125 | 4 | Thiago Paiva | |
| 126 | 4 | Thiago Paiva | * enterprise class (production) |
| 127 | 4 | Thiago Paiva | * apache-licensed (open-source) |
| 128 | 4 | Thiago Paiva | * support a broad range of OpenFLOW switches |
| 129 | 4 | Thiago Paiva | * can manage multiple island of OpenFLOW switches |
| 130 | 4 | Thiago Paiva | * the core of 'BigSwitch' (BigSwitch open-sourced FloodLight) |
| 131 | 4 | Thiago Paiva | * fisical and virtual switches |
| 132 | 4 | Thiago Paiva | * open community of developers |
| 133 | 4 | Thiago Paiva | * simple to use |
| 134 | 4 | Thiago Paiva | * java |
| 135 | 4 | Thiago Paiva | * modular (simple to extend and enhance) |
| 136 | 4 | Thiago Paiva | * minimal dependencies |
| 137 | 4 | Thiago Paiva | * mixed OpenFLOW and non-OpenFLOW networks |
| 138 | 4 | Thiago Paiva | * high performance |
| 139 | 4 | Thiago Paiva | * support for OPENSTACK cloud orchestration platform |
| 140 | 4 | Thiago Paiva | * (tem no repositório???) |
| 141 | 4 | Thiago Paiva | * Floodlight VM (run mininet for tests) |
| 142 | 4 | Thiago Paiva | * Examples at flood light site |
| 143 | 4 | Thiago Paiva | * Avior (GUI open-source) |
| 144 | 4 | Thiago Paiva | |
| 145 | 1 | Thiago Paiva | h3. POX |
| 146 | 1 | Thiago Paiva | |
| 147 | 1 | Thiago Paiva | * python |
| 148 | 1 | Thiago Paiva | * multi-platform |
| 149 | 1 | Thiago Paiva | * research and education |
| 150 | 1 | Thiago Paiva | * open-source |
| 151 | 1 | Thiago Paiva | |
| 152 | 1 | Thiago Paiva | h3. NOX |
| 153 | 4 | Thiago Paiva | |
| 154 | 4 | Thiago Paiva | * concurrent applications |
| 155 | 4 | Thiago Paiva | * python and C++ |
| 156 | 4 | Thiago Paiva | * sample controller applications |
| 157 | 4 | Thiago Paiva | |
| 158 | 4 | Thiago Paiva | h3. MUL |
| 159 | 4 | Thiago Paiva | |
| 160 | 4 | Thiago Paiva | h3. Jaxon |
| 161 | 4 | Thiago Paiva | |
| 162 | 4 | Thiago Paiva | h3. Trema |
| 163 | 4 | Thiago Paiva | |
| 164 | 4 | Thiago Paiva | h3. Beacon |
| 165 | 4 | Thiago Paiva | |
| 166 | 4 | Thiago Paiva | * java |
| 167 | 4 | Thiago Paiva | * OSGI framework (openflow applications built on the platform to be started / stopped / refreshed / installed at runtime |
| 168 | 4 | Thiago Paiva | * cross-platform |
| 169 | 4 | Thiago Paiva | * modular |
| 170 | 4 | Thiago Paiva | * "robusto" |
| 171 | 4 | Thiago Paiva | |
| 172 | 4 | Thiago Paiva | |
| 173 | 4 | Thiago Paiva | h3. Maestro |
| 174 | 4 | Thiago Paiva | |
| 175 | 4 | Thiago Paiva | * java |
| 176 | 4 | Thiago Paiva | * extensible |
| 177 | 4 | Thiago Paiva | * multi-threading |
| 178 | 4 | Thiago Paiva | * target researchers |
| 179 | 4 | Thiago Paiva | * open-source |
| 180 | 4 | Thiago Paiva | |
| 181 | 4 | Thiago Paiva | |
| 182 | 4 | Thiago Paiva | h3. NDDI-OESS |
| 183 | 4 | Thiago Paiva | |
| 184 | 4 | Thiago Paiva | h3. NodeFlow |
| 185 | 4 | Thiago Paiva | |
| 186 | 4 | Thiago Paiva | h3. Ryu |
| 187 | 4 | Thiago Paiva | |
| 188 | 4 | Thiago Paiva | * well-defined API |
| 189 | 4 | Thiago Paiva | * NTT Labs (instituição por trás) |
| 190 | 4 | Thiago Paiva | |
| 191 | 4 | Thiago Paiva | |
| 192 | 4 | Thiago Paiva | h3. OVS-Controller |
| 193 | 4 | Thiago Paiva | |
| 194 | 4 | Thiago Paiva | h3. Helios |
| 195 | 4 | Thiago Paiva | |
| 196 | 4 | Thiago Paiva | * C |
| 197 | 4 | Thiago Paiva | * NEC (empresa que desenvolve) |
| 198 | 4 | Thiago Paiva | * targetting researchers |
| 199 | 4 | Thiago Paiva | * programmatic shell (integrated experiments) |
| 200 | 4 | Thiago Paiva | |
| 201 | 4 | Thiago Paiva | |
| 202 | 4 | Thiago Paiva | h3. SNAC |
| 203 | 4 | Thiago Paiva | |
| 204 | 4 | Thiago Paiva | * targets production networks |
| 205 | 4 | Thiago Paiva | * based on NOX 0.4 |
| 206 | 4 | Thiago Paiva | * python e C++ |
| 207 | 4 | Thiago Paiva | * flexible policy definition language |
| 208 | 4 | Thiago Paiva | * user-friendly interface (configuration + monitoring) |
| 209 | 4 | Thiago Paiva | |
| 210 | 4 | Thiago Paiva | |
| 211 | 4 | Thiago Paiva | h3. HP Virtual Application Networks SDN Controller |
| 212 | 4 | Thiago Paiva | |
| 213 | 4 | Thiago Paiva | * dinamic control plane |
| 214 | 4 | Thiago Paiva | * full support for OpenFLOW protocol |
| 215 | 4 | Thiago Paiva | * Open API enable third part application |
| 216 | 4 | Thiago Paiva | |
| 217 | 4 | Thiago Paiva | |
| 218 | 4 | Thiago Paiva | h3. IBM PNC (IBM Programmable Network Controller) |
| 219 | 4 | Thiago Paiva | |
| 220 | 4 | Thiago Paiva | * unlimited virtual machine mobility |
| 221 | 4 | Thiago Paiva | * enterprise class (production) |
| 222 | 4 | Thiago Paiva | * automatically and continuous discovers network topology |
| 223 | 4 | Thiago Paiva | |
| 224 | 4 | Thiago Paiva | |
| 225 | 4 | Thiago Paiva | h2. Hypervisor |
| 226 | 4 | Thiago Paiva | |
| 227 | 4 | Thiago Paiva | To a controller: ordinary switch. To a switch: a controller. Must stay on top of switches and under the controller. |
| 228 | 4 | Thiago Paiva | |
| 229 | 4 | Thiago Paiva | h3. FlowVisor |
| 230 | 4 | Thiago Paiva | |
| 231 | 4 | Thiago Paiva | * transparent proxy between switches and controller |
| 232 | 4 | Thiago Paiva | * slices of network |
| 233 | 4 | Thiago Paiva | * network virtualization platform |
| 234 | 4 | Thiago Paiva | * hypervisor |
| 235 | 4 | Thiago Paiva | * isolate services at slices (groups?) |
| 236 | 17 | Thiago Paiva | |
| 237 | 17 | Thiago Paiva | h2. Framework |
| 238 | 17 | Thiago Paiva | |
| 239 | 17 | Thiago Paiva | h3. Trema |
| 240 | 17 | Thiago Paiva | |
| 241 | 17 | Thiago Paiva | Trema is a full-stack, easy-to-use framework for developing OpenFlow controllers in Ruby and C. |
| 242 | 17 | Thiago Paiva | |
| 243 | 17 | Thiago Paiva | |
| 244 | 4 | Thiago Paiva | |
| 245 | 4 | Thiago Paiva | h2. Guias |
| 246 | 4 | Thiago Paiva | |
| 247 | 4 | Thiago Paiva | * http://searchsdn.techtarget.com/guides/OpenFlow-protocol-tutorial-SDN-controllers-and-applications-emerge |
| 248 | 4 | Thiago Paiva | |
| 249 | 4 | Thiago Paiva | |
| 250 | 4 | Thiago Paiva | |
| 251 | 4 | Thiago Paiva | h2. Comparativos |
| 252 | 4 | Thiago Paiva | |
| 253 | 4 | Thiago Paiva | * Nox, Nox D, Beacon, Maestro |
| 254 | 4 | Thiago Paiva | http://www.openflow.org/wk/index.php/Controller_Performance_Comparisons |