Components of Ryu¶
Base components¶
ryu.base.app_manager¶
The central management of Ryu applications.
- Load Ryu applications
- Provide contexts to Ryu applications
- Route messages among Ryu applications
OpenFlow controller¶
ryu.controller.controller¶
The main component of OpenFlow controller.
- Handle connections from switches
- Generate and route events to appropriate entities like Ryu applications
ryu.controller.ofp_event¶
OpenFlow event definitions.
ryu.controller.ofp_handler¶
Basic OpenFlow handling including negotiation.
OpenFlow wire protocol encoder and decoder¶
ryu.ofproto.ofproto_v1_0¶
OpenFlow 1.0 definitions.
ryu.ofproto.ofproto_v1_0_parser¶
Decoder/Encoder implementations of OpenFlow 1.0.
ryu.ofproto.ofproto_v1_2¶
OpenFlow 1.2 definitions.
ryu.ofproto.ofproto_v1_2_parser¶
Decoder/Encoder implementations of OpenFlow 1.2.
ryu.ofproto.ofproto_v1_3¶
OpenFlow 1.3 definitions.
ryu.ofproto.ofproto_v1_3_parser¶
This module implements OpenFlow 1.3.x.
This module also implements some of extensions shown in "OpenFlow Extensions for 1.3.X Pack 1". Namely, the following extensions are implemented.
- EXT-230 Bundle Extension (without bundle properties)
- EXT-236 Bad flow entry priority error Extension
- EXT-237 Set async config error Extension
- EXT-256 PBB UCA header field Extension
- EXT-260 Duplicate instruction error Extension
- EXT-264 Multipart timeout errors Extension
The following extensions are partially implemented.
- EXT-187 Flow entry notifications Extension (ONFMP_FLOW_MONITOR only)
- EXT-232 Table synchronisation Extension (Error codes only)
The following extensions are not implemented yet.
- EXT-191 Role Status Extension
- EXT-192-e Flow entry eviction Extension
- EXT-192-v Vacancy events Extension
ryu.ofproto.ofproto_v1_4¶
OpenFlow 1.4 definitions.
ryu.ofproto.ofproto_v1_4_parser¶
Decoder/Encoder implementations of OpenFlow 1.4.
ryu.ofproto.ofproto_v1_5¶
OpenFlow 1.5 definitions.
ryu.ofproto.ofproto_v1_5_parser¶
Decoder/Encoder implementations of OpenFlow 1.5.
Ryu applications¶
ryu.app.cbench¶
A dumb OpenFlow 1.0 responder for benchmarking the controller framework. Intended to be used with oflops cbench.
ryu.app.simple_switch¶
An OpenFlow 1.0 L2 learning switch implementation.
ryu.topology¶
Switch and link discovery module. Planned to replace ryu/controller/dpset.
Libraries¶
ryu.lib.packet¶
Ryu packet library. Decoder/Encoder implementations of popular protocols like TCP/IP.
ryu.lib.ovs¶
ovsdb interaction library.
ryu.lib.of_config¶
OF-Config implementation.
ryu.lib.netconf¶
NETCONF definitions used by ryu/lib/of_config.
ryu.lib.xflow¶
An implementation of sFlow and NetFlow.