Go to file
Santiago Rodriguez 20c0ececeb doc: Consider null buffer_id in first example
If the switch does not buffer the packet (like when using mininet), the example does not work.
For such cases, include the packet contents in  OFPPacketOut
2020-06-14 16:13:22 +01:00
bin delete bin/neutron-ofagent-agent 2014-04-21 19:06:25 +09:00
debian We don't support msgpack 1.0.0 yet. 2020-06-11 16:52:55 +12:00
doc doc: Consider null buffer_id in first example 2020-06-14 16:13:22 +01:00
etc/ryu ryu.conf: obsoleted argument used in sample configuration 2014-03-16 20:26:09 +09:00
ryu Allow user to set cipher list. 2020-06-12 14:53:37 +12:00
tools We don't support msgpack 1.0.0 yet. 2020-06-11 16:52:55 +12:00
.gitignore add .tox/ to .gitignore 2013-09-02 14:44:29 +09:00
.pylintrc .pylintrc: Remove deprecated output format feature 2016-02-27 20:40:35 +09:00
.readthedocs.yml Add .readthedocs.yml. 2020-05-23 11:12:24 +12:00
.stickler.yml Add .stickler.yml. 2020-06-12 15:18:59 +12:00
.travis.yml Upgrade to ubuntu bionic. 2020-06-12 11:03:00 +12:00
CONTRIBUTING.rst Update how to contribute to Ryu. 2020-05-12 16:32:54 +12:00
LICENSE LICENCE: change end-of-line code CRLF to LF 2013-02-13 06:10:15 +09:00
MANIFEST.in Revert "tests: Separate test files from Ryu module" 2017-06-30 14:23:03 +09:00
README.rst Update URLs. 2020-05-12 14:04:33 +12:00
run_tests.sh pycodestyle: Replace pep8 2017-12-17 19:27:41 +09:00
setup.cfg Deprecate using Ryu with older python versions. 2020-06-08 14:34:31 +12:00
setup.py Remove workaround for issue with older python versions. 2020-06-08 14:34:42 +12:00
tox.ini Deprecate using Ryu with older python versions. 2020-06-08 14:34:31 +12:00

What's Ryu
==========
Ryu is a component-based software defined networking framework.

Ryu provides software components with well defined API's 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, 1.4, 1.5 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 https://github.com/faucetsdn/ryu.git
   % cd ryu; pip install .

If you want to write your Ryu application, have a look at
`Writing ryu application <http://ryu.readthedocs.io/en/latest/writing_ryu_app.html>`_ document.
After writing your application, just type::

   % ryu-manager yourapp.py


Optional Requirements
=====================

Some functions of ryu require extra packages:

- OF-Config requires lxml and ncclient
- NETCONF requires paramiko
- BGP speaker (SSH console) requires paramiko
- Zebra protocol service (database) requires SQLAlchemy

If you want to use these functions, please install the requirements::

    % pip install -r tools/optional-requires

Please refer to tools/optional-requires for details.


Prerequisites
=============
If you got some error messages at the installation stage, please confirm
dependencies for building the required Python packages.

On Ubuntu(16.04 LTS or later)::

  % apt install gcc python-dev libffi-dev libssl-dev libxml2-dev libxslt1-dev zlib1g-dev


Support
=======
Ryu Official site is `<https://ryu-sdn.org/>`_.

If you have any
questions, suggestions, and patches, the mailing list is available at
`ryu-devel ML
<https://lists.sourceforge.net/lists/listinfo/ryu-devel>`_.
`The ML archive at Gmane <http://dir.gmane.org/gmane.network.ryu.devel>`_
is also available.