-
Notifications
You must be signed in to change notification settings - Fork 0
Components
The main executable.
The central management of Ryu applications.
- Load Ryu applications.
- Provide 'contexts' to Ryu applications.
- Route messages among Ryu applications.
The main component of OpenFlow controller.
- Handle connections from switches.
- Generate and route events to appropriate entities like Ryu Applications.
Manage switches. Planned to be replaced by ryu/topology.
OpenFlow event definitions.
Basic OpenFlow handling including negotiation.
A dumb OpenFlow 1.0 responder for benchmarking the controller framework. Intended to be used with oflops cbench.
An OpenFlow 1.0 L2 learning switch implementation.
MAC address based isolation logic.
VLAN based isolation logic.
Flow table updater for OpenStack integration. Despite of the name, this isn't GRE specific.
Tunnel port updater for OpenStack integration.
Listen OpenFlow port status change notifications from switches. Consult ovsdb to retrieve the corresponding port uuid. Notify relevant parties, including quantum (via Ryu plug-in) and Ryu applications. (via Ryu Events)
Provide a basic set of REST API. Used by OpenStack Ryu plug-in.
- Network registration
- End-point port management (OpenFlow port number, MAC address for anti-spoofing)
Provide a set of REST API for switch configurations. Used by OpenStack Ryu agent.
- Per-switch Key-Value store
Provide a set of REST API dedicated to OpenStack quantum Ryu plug-in. Used by OpenStack Ryu plug-in.
- Interface (uuid in ovsdb) registration
- Manage interface association to a network.
Provide a set of REST API for tunnel key management. Used by OpenStack Ryu plug-in.
- Tunnel key registration for a network
- Manage switches and their ports which are used to establish a tunnel
Switch and link discovery module. Planned to replace ryu/controller/dpset.
Ryu packet library. Decoder/Encoder implementations of popular protocols like TCP/IP.
ovsdb interaction library.
OF-Config implementation.
NETCONF definitions used by ryu/lib/of_config.
An implementation of sFlow and NetFlow.
Open vSwitch python binding. Used by ryu/lib/ovs.
Oslo configuration library. Used for ryu-manager's command-line options and configuration files.
Python library for NETCONF clients. Used by ryu/lib/of_config.