Ryu is a component-based software defined networking framework. Ryu provides software components with well defined API that make it easy for developers to create new network management and control applications. Ryu supports various protocols for managing network devices, such as OpenFlow, Netconf, OF-config, etc. About OpenFlow, Ryu supports fully 1.0, 1.2, 1.3 and Nicira Extensions.
NTT laboratories OSRG group started Ryu project and the members are actively involved in the development. Our aim is developing an Operating System for SDN that has high quality enough for use in large production environment.
All of the code is freely available under the Apache 2.0 license. Ryu is developed openly.
- 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.
- You can try Now. Ryu's pre-configured VM image file enables you to easily set up multi-node OpenStack environment.
- We try Ryu with software OpenFlow Switch (OpenvSwitch) and bunch of hardware OpenFlow Switches.
- You can write your Ryu application with Python, which you love, don't you? Ryu is fully implemented by Python. No language binding mess, easy to play with.
- Ryu fully supports OpenFlow v1.0 with Nicira Extensions and OpenFlow v1.2 and v1.3. It enables you to implement whatever tricks you like to use with your network, GRE, IPv6, etc.
- The development is truly open. We openly discuss everything on the mailing list. No CLA mess, just send a patch to the mailing list. We are ready to discuss the patch for merging.
Installing Ryu is very easy:
% pip install ryu
If you prefer to install Ryu from the source code:
% git clone git://github.com/osrg/ryu.git
% cd ryu; python ./setup.py install
Do you want to know how to write Ryu applications? Let's start with our tutorial.