Information to make sense of the state of open switching/routing
name |
active development |
bare-metal |
routing |
state |
hardware abstraction |
license |
notes |
ACS |
no? |
yes? |
|
SONiC |
SAI |
|
announced in 2015, not sure if this is an actual product or just the predecessor to SONiC? |
cumulus |
yes |
yes |
FRR |
Linux kernel |
switchd |
|
|
picOS |
yes |
yes |
|
OVSDB? |
openflow |
|
|
ONL |
yes |
yes |
|
|
openflow |
|
|
switch light |
|
Switch Light OS |
|
indigo |
ivs/openflow? |
|
|
stratum |
no public release |
yes? |
|
|
P4Runtime |
|
not yet available (09/2019) |
OpenSwitch OPS |
no |
yes |
|
OVSDB |
openNSL |
|
deprecated? |
OpenSwitch OPX |
yes |
yes |
|
Linux/CPS adapter |
SAI |
APLv2, various? |
|
Noviware |
|
yes |
|
proprietary? |
P4/openflow |
proprietary? |
|
Vyatta/VyOS |
|
yes |
quagga |
Linux |
Linux (software) |
various open-source |
runs on x86 hardware for software forwarding |
snaproute |
|
CN-NOS |
|
FlexSwitch |
asicd |
|
|
FBOSS |
|
|
FBOSS? |
|
SAI (was OpenNSL) |
BSD-style |
all-in-one? |
ONOS |
|
|
|
|
openflow/netconf/openconf/... |
APLv2 |
wiki |
openvswitch |
|
|
N/A |
OVSDB |
software? |
APLv2 |
software forwarding |
ZebOS |
yes |
|
|
ZebM/ZebOS-XP |
ZebIC |
proprietary |
|
. |
|
|
|
|
|
|
|
I haven't decided where these fit yet:
- Ryu (openflow controller, written in python)
- openstack neutron (datacenter virtualization orchestration?)
- open daylight
name |
license |
notes |
SONiC |
|
|
Linux Kernel |
|
|
OVSDB |
APLv2 |
There are a lot of proprietary vendor implementations, part of openvswitch |
FlexSwitch |
|
|
IVS (indigo) |
EPLv1 or proprietary |
|
. |
|
|
Hardware abstraction (forwarding)
name |
license |
supported hardware |
notes |
SAI |
OWFa1.0 |
|
|
switchdev |
GPLv2 |
|
|
openflow |
implementation-specific |
|
IP-based API specification, not an implementation |
P4Runtime |
implementation-specific? |
|
match-action programming language |
openNSL |
APL2.0/Proprietary |
Broadcom |
|
asicd |
APL2.0? |
|
|
linux/software |
GPLv2 |
|
|
indigo |
EPLv1 or proprietary |
|
abstraction layer on top of openflow |
. |
|
|
|