RETIRED, further work has moved to Debian project infrastructure
Go to file
FUJITA Tomonori 323610d21f nxm: fix nxm to OFPMatch conversion
This fixes a bug that the conversion ignores dl_dst.

Soheil Hassas Yeganeh reported a problem about simple_isolation:

The problem is that the isolation service tries to install
flow-entries for a specific src and dst (in
SimpleIsolation._modflow_and_send_packet), but instead the nx match
code installs flow-entries only with src addresses and ignores the
dst.  So, when I boot multiple vms, only one of them is reachable.

For instance, assume that you have two VM's A and B. When a packet
comes from the gw to A, it installs "gw->A: A's port", but the acutal
installed rule is "gw: A's port". This works for A, but, when you boot
B, it tries to install "gw->B: B's port", but the acutal rule to be
installed is "gw: B's port".  So, it always connect the gateway to
only one VM at a time.

Reported-by: Soheil Hassas Yeganeh <soheil@cs.toronto.edu>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Reviewed-by: Soheil Hassas Yeganeh <soheil@cs.toronto.edu>
2012-07-13 16:43:18 +09:00
bin add '--version' command line option 2012-06-28 22:54:05 +09:00
doc doc/source/step_by_step.rst: add item to setup quantum db 2012-05-07 15:57:25 +09:00
etc/ryu ryu.conf: eliminate obsolete config 2012-01-24 11:54:53 +09:00
ryu nxm: fix nxm to OFPMatch conversion 2012-07-13 16:43:18 +09:00
tools test: improve the framework 2012-06-27 20:57:07 +09:00
.gitignore Added test framework, ported from Quantum 2012-05-07 21:29:47 +09:00
.pylintrc test: improve the framework 2012-06-27 20:57:07 +09:00
HACKING.rst add HACKING.rst: style guide 2012-02-22 20:25:15 +09:00
LICENSE Switch to Apache 2.0 license 2012-04-06 08:38:45 +09:00
MANIFEST.in remote COPYRIGHT file from MANIFEST.in 2012-05-07 21:52:52 +09:00
README.rst doc: add the supported OF versions to README.rst 2012-06-27 14:09:32 +09:00
run_tests.sh test: improve the framework 2012-06-27 20:57:07 +09:00
setup.cfg update setup.py and setup.cfg for better packaging 2012-06-06 12:45:46 +09:00
setup.py Move version string to ryu/__init__.py 2012-06-19 22:33:29 +09:00

Ryu Network Operating System

What's Ryu

Ryu is an Operating System for Software Defined Networking.

Ryu aims to provide a logically centralized control and well defined API that make it easy for operators to create new network management and control applications. Currently, Ryu manages network devices by using OpenFlow. You can say that Ryu is an OpenFlow Controller, which support OpenFlow v1.0, v1.2, and Nicira Extensions.

All of the code is freely available under the Apache 2.0 license. Ryu is fully written in Python.

Quick Start

Installing Ryu is quite 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

If you want to use Ryu with OpenStack, please refer detailed documents. You can create tens of thousands of isolated virtual networks without using VLAN. The Ryu application is included in OpenStack mainline as of Essex release.

If you want to run your Ryu application, have a look at a simple example. After writing your application, just type:

% ryu-manager yourapp.py

Support

Ryu Official site is http://osrg.github.com/ryu/.

If you have any questions, suggestions, and patches, the mailing list is available at ryu-devel ML. The ML archive at Gmane is also available.