1:orphan: 2 3.. _getting_started: 4 5*************** 6Getting Started 7*************** 8 9Overview/What's Ryu the Network Operating System 10================================================ 11Ryu is an open-sourced Network Operating System which is licensed under Apache v2.0. 12It supports openflow protocol. 13 14If you are not familiar with Software Defined Network(SDN) and 15OpenFlow/openflow controller, 16please refer to `openflow org <http://www.openflow.org/>`_ . 17 18The mailing list is available at 19`ryu-devel ML <https://lists.sourceforge.net/lists/listinfo/ryu-devel>`_ 20 21 22Installing Ryu Network Operating System 23======================================= 24Extract source code and just type:: 25 26 % python ./setup.py install 27 28Then, run ryu-manager. 29It listens to ip address 0.0.0.0 and port 6633 by default. 30Then have your openflow switch (hardware or openvswitch OVS) to connect to 31ryu-manager. 32 33For OVS case, you can done it by 34 35 % ovs-vsctl set-controller <your bridge> tcp:<ip addr>[:<port: default 6633>] 36 37At the moment, ryu-manager supports only tcp method. 38If you want to use it with openstack nova and quantum OVS plugin, 39Please refer to :ref:`using_with_openstack`. 40 41invoking application and Configuration 42====================================== 43It can be configured by passing configuration file like:: 44 45 ryu-manager [generic/application specific options...] 46 47At the moment applications including the following ones are available 48(And more to come as Ryu evolves.) 49 50 * ryu.app.simple_isolation.SimpleIsolation 51 * ryu.app.rest.RestAPI 52 * ryu.app.simple_bridge.SimpleSwitch 53 54The generic available is as follows:: 55 56 --app-lists: application module name to run; 57 repeat this option to specify a list of values 58 --help: show help 59 60The options for REST server:: 61 62 --wsapi-host: webapp listen host 63 (default: '') 64 --wsapi-port: webapp listen port 65 (default: '8080') 66 (an integer) 67 68The options for openflow controller:: 69 70 --ofp-listen-host: openflow listen host 71 (default: '') 72 --ofp-tcp-listen-port: openflow tcp listen port 73 (default: '6633') 74 (an integer) 75 76The options for log:: 77 78 --default-log-level: default log level 79 (an integer) 80 --log-dir: log file directory 81 --log-file: log file name 82 --log-file-mode: default log file permission 83 (default: '0644') 84 --[no]use-stderr: log to standard error 85 (default: 'true') 86 --use-syslog: output to syslog 87 (default: 'False') 88 --[no]verbose: show debug output 89 (default: 'false') 90 91The option for oslo.config.cfg:: 92 93 --config-file: Path to a config file to use. Multiple config files 94 can be specified, with values in later files taking precedence. 95 (default: []) 96 --config-dir: Path to a config directory to pull *.conf files from. 97 This file set is sorted, so as to provide a predictable parse order if 98 individual options are over-ridden. The set is parsed after the file(s), 99 if any, specified via --config-file, hence over-ridden options in the 100 directory take precedence. 101 102 103Invoking Example 104================ 105The example is as follows:: 106 107 % PYTHONPATH=. ./bin/ryu-manager --wsapi-port 8081 --verbose --app-lists ryu.app.simple_isolation,ryu.app.rest 108 loading app ryu.app.simple_isolation 109 loading app ryu.app.rest 110 loading app ryu.controller.ofp_handler 111 creating context dpset 112 creating context wsgi 113 creating context network 114 instantiating app ryu.app.simple_isolation 115 instantiating app ryu.app.rest 116 instantiating app ryu.controller.ofp_handler 117 BRICK dpset 118 CONSUMES EventOFPStateChange 119 CONSUMES EventOFPPortStatus 120 CONSUMES EventOFPSwitchFeatures 121 BRICK ofp_event 122 PROVIDES EventOFPStateChange TO ['dpset'] 123 PROVIDES EventOFPPortStatus TO ['dpset', 'SimpleIsolation'] 124 PROVIDES EventOFPPacketIn TO ['SimpleIsolation'] 125 PROVIDES EventOFPSwitchFeatures TO ['dpset', 'SimpleIsolation'] 126 CONSUMES EventOFPEchoRequest 127 CONSUMES EventOFPErrorMsg 128 CONSUMES EventOFPSwitchFeatures 129 CONSUMES EventOFPHello 130 BRICK network 131 BRICK RestAPI 132 BRICK SimpleIsolation 133 CONSUMES EventOFPPacketIn 134 CONSUMES EventOFPPortStatus 135 CONSUMES EventOFPSwitchFeatures 136