summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2014-06-29Initializing the variable 's' so that the get_desc_stats() call does not ↵Srini Seetharaman
cause an exceptions when there are no messages Signed-off-by: Srini Seetharaman <srini.seetharaman@gmail.com> Reviewed-by: TAKAHASHI Minoru <takahashi.minoru7@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-29Add a small library to deal with TCP-MD5 socket optionYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-26doc: improve the appearance of the tableYoshihiro Kaneko
I don't want to write a directive of sphinx in scripts, but I was not able to find other methods. Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-26doc: leave out too large samplesYoshihiro Kaneko
To let compilation of the document succeed, this patch leave out large samples. Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23bgp: add ssh_console option for bgpspeaker moduleISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23document: ryu.app.gui_topologyYAMADA Hideki
Signed-off-by: YAMADA Hideki <yamada.hideki@po.ntts.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Add default test files (of14: new features)Yuichi Ito
OF 1.4.0 spec (B.14.14 PBB UCA header field) says: A new OXM field OFPXMT_OFB_PBB_UCA has been added to match the "use customer address" header field from the PBB header (EXT-256). These test files aim to examine new features of 'set-field action' and 'match' of FlowMod message. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Add default test files (of14: group:all/select)Yuichi Ito
These test files aim to examine 'group action' of FlowMod message. This patch only copies ryu/tests/switch/of13/group. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Add default test files (of14: meter)Yuichi Ito
These test files aim to examine 'meter instruction' of FlowMod message. This patch only copies ryu/tests/switch/of13/meter. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Add default test files (of14: match)Yuichi Ito
These test files aim to examine 'match' of FlowMod message. This patch only copies ryu/tests/switch/of13/match. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Add default test files (of14: action with set-field only)Yuichi Ito
These test files aim to examine 'set-field action' of FlowMod message. This patch only copies ryu/tests/switch/of13/action/25_SET_FIELD. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Add default test files (of14: action without set-field)Yuichi Ito
These test files aim to examine 'action' excluding 'set-field' of FlowMod message. This patch only copies ryu/tests/switch/of13/action. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: run_mininet: support Open vSwitch with OpenFlow 1.4Yuichi Ito
usage) to use Open vSwitch with OpenFlow 1.4: sudo ryu/tests/switch/run_mininet.py --swtich ovs14 to use Open vSwitch with OpenFlow 1.3: sudo ryu/tests/switch/run_mininet.py --switch ovs13 or sudo ryu/tests/switch/run_mininet.py --switch ovs or sudo ryu/tests/switch/run_mininet.py Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Modify OFPActionSetField to normalizeYuichi Ito
This patch is for avoiding the following issues when using ofproto_v1_4_parser: - OFPActionSetField that is created from JSON keeps unicode strings, instead of usual strings. - In OFPActionSetField that is created from JSON, IPv6 formats like 'ff::0' or '00ff:0000:0000:0000:0000:0000:0000:0000' are not normalized to 'ff::'. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Modify OFPMatch to normalizeYuichi Ito
This patch is for avoiding the following issues when using ofproto_v1_4_parser: - OFPMatch that is created from JSON keeps unicode strings, instead of usual strings. - In OFPMatch that is created from JSON, IPv6 formats like 'ff::0' or '00ff:0000:0000:0000:0000:0000:0000:0000' are not normalized to 'ff::'. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Enable using connected switches to compareYuichi Ito
Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Enable using user-specified versions to parseYuichi Ito
Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Add support for using user-specified versionsYuichi Ito
Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23ryu/flags: Add config parameters related sw test toolYuichi Ito
Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-23sw test tool: Modify conditions of ofp_packet_in_reasonYuichi Ito
OF 1.4.0 spec (B.14.2 More descriptive reasons for packet-in) says: The main change is that the the "output action" reason OFPR_ACTION is effectively split into four reasons, "apply-action", "action-set", "group bucket" and "packet-out", representing the four distinct context where this action is used. A set of reason values for ofp_packet_in message in OF 1.3.3 is: enum ofp_packet_in_reason { OFPR_NO_MATCH = 0, /* No matching flow (table-miss flow entry). */ OFPR_ACTION = 1, /* Action explicitly output to controller. */ OFPR_INVALID_TTL = 2, /* Packet has invalid TTL */ }; And a new set of reason values for ofp_packet_in message in OF 1.4.0 is: enum ofp_packet_in_reason { OFPR_TABLE_MISS = 0, /* No matching flow (table-miss flow entry). */ OFPR_APPLY_ACTION = 1, /* Output to controller in apply-actions. */ OFPR_INVALID_TTL = 2, /* Packet has invalid TTL */ OFPR_ACTION_SET = 3, /* Output to controller in action set. */ OFPR_GROUP = 4, /* Output to controller in group bucket. */ OFPR_PACKET_OUT = 5, /* Output to controller in packet-out. */ }; Therefore, "reason != OFPR_ACTION" means "reason == OFPR_NOMATCH or reason == OFPR_INVALID_TTL". NOTE: OFPR_TABLE_MISS is defined as OFPR_NO_MATCH in ryu.ofproto.ofproto_v1_4. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-22bgp: fix ipv6 peering regressionFUJITA Tomonori
Workaround. Needs to clean up get_peername and get_sockname usage. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-22bgp: fix best_path_change_handler for best_path_lostFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-22bgp: fix example codeFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-22bgp: fix another crash (recv_open -> recv_open_msg)YAMAMOTO Takashi
Tested-by: Itsuro ODA <oda@valinux.co.jp> Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-22bgp: fix some leftover of transition to packet lib bgpYAMAMOTO Takashi
fix some leftover of commit 9d5e66fa4e49ce66103dbc9640a33bd9c22fab3f. ("bgp: use ryu bgp packet library instead of original one") Tested-by: Itsuro ODA <oda@valinux.co.jp> Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-22bgp: fix a crash in path comparisonYAMAMOTO Takashi
this fixes the following crash. API method core.start called with args: {'router_id': '172.17.190.2', 'waiter':< <ryu.lib.hub.Event object at 0x7f903ed084d0>, 'bgp_server_port': 179, 'local_as: : 64512, 'refresh_max_eor_time': 0, 'refresh_stalepath_time': 0} API method neighbor.create called with args: {'cap_mbgp_vpnv6': False, 'ip_addrs ss': '172.17.190.3', 'cap_mbgp_vpnv4': False, 'remote_as': 64512, 'cap_mbgp_ipv' ': True} API method neighbor.create called with args: {'cap_mbgp_vpnv6': False, 'ip_addrs ss': '172.17.190.4', 'cap_mbgp_vpnv4': False, 'remote_as': 64512, 'cap_mbgp_ipv' ': True} Connection to peer: 172.17.190.3 established Connection to peer: 172.17.190.4 established the best path changed: 64512 0.0.0.0/0 172.17.190.3 False hub: uncaught exception: Traceback (most recent call last): File "/opt/ryu/ryu/lib/hub.py", line 52, in _launch func(*args, **kwargs) File "/opt/ryu/ryu/services/protocols/bgp/base.py", line 241, in start self._run(*args, **kwargs) File "/opt/ryu/ryu/services/protocols/bgp/processor.py", line 97, in _run self._process_dest() File "/opt/ryu/ryu/services/protocols/bgp/processor.py", line 114, in _proces_ _dest next_dest.process() File "/opt/ryu/ryu/services/protocols/bgp/info_base/base.py", line 396, in prc cess self._process() File "/opt/ryu/ryu/services/protocols/bgp/info_base/base.py", line 366, in _po ocess new_best_path, reason = self._process_paths() File "/opt/ryu/ryu/services/protocols/bgp/info_base/base.py", line 485, in _po ocess_paths current_best_path, reason = self._compute_best_known_path() File "/opt/ryu/ryu/services/protocols/bgp/info_base/base.py", line 588, in _cm mpute_best_known_path next_path) File "/opt/ryu/ryu/services/protocols/bgp/processor.py", line 252, in computeb best_path best_path = _cmp_by_router_id(local_asn, path1, path2) File "/opt/ryu/ryu/services/protocols/bgp/processor.py", line 495, in _cmp_byr router_id local_bgp_id = path_source1.protocol.sent_open.bgpid AttributeError: 'Peer' object has no attribute 'protocol' Tested-by: Itsuro ODA <oda@valinux.co.jp> Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-22library_bgp_speaker.rst: make an example more completeYAMAMOTO Takashi
also, while i'm here, remove trailing whitespaces in the example. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19ofa_neutron_agent: Change the copyright noticeYAMAMOTO Takashi
As a preparation to move this module to neutron repo, change the copyright notice to the style commonly found there. Also, add myself as co-author. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19ofa_neutron_agent: Remove unused logger instanceYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19ofa_neutron_agent: Use AppManager.run_appsYAMAMOTO Takashi
No functional changes are intended. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19AppManager: Add a convenient method to run appsYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19ofa_neutron_agent: SimplifyYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19app_manager: prevent loading unnecessary RyuAppsISHIDA Wataru
don't load RyuApps which is just imported and not defined in the module. for example, if we run the script "test.py" as shown below by $ ryu run test.py the past implementation loads and instantiates not only Test but also RyuApp and DPSet. this patch fix this wrong behavior test.py === from ryu.base.app_manager import RyuApp from ryu.controller.dpset import DPSet class Test(RyuApp): _CONTEXTS = {'dpset' : DPSet} Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19package: add python-ryu-docYoshihiro Kaneko
This patch adds python-ryu-doc package which contains the HTML documentation generated from doc/. Also updates the man pages in doc/source/man/. Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-19sw test tool: Enable IPv6 flow label maskableYuichi Ito
OF 1.3.4 spec (B.15.1 Changes) says: Make IPv6 flow label maskable (EXT-101). This patch makes IPv6 flow label maskable, and adds a test file for IPv6 flow label with masks. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-18document ryu.app.ofctlYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-18ws_topology: shut up pep8 for long lines in a commentYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-18bgp: support IPv6 peeringFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-18Add GUI appYAMADA Hideki
Signed-off-by: YAMADA Hideki <yamada.hideki@po.ntts.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-18ws_topology: Handle WebSocket disconnectionYAMADA Hideki
Signed-off-by: YAMADA Hideki <yamada.hideki@po.ntts.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-18ws_topology: Avoid controller name conflictionYAMADA Hideki
Signed-off-by: YAMADA Hideki <yamada.hideki@po.ntts.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-17add debian files to make packages for UbuntuYoshihiro Kaneko
Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-17app_manager: Stop checking h.callers in get_handlers()YAMAMOTO Takashi
dynamically registered handlers (vs. ones registered via set_ev_cls/handler decorators) do not necessarily have h.callers. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-16bgp: catch socket error with sendallFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-16bgp: use sendall with lockFUJITA Tomonori
With the current design, multiple greenlets calls sendall() on a single tcp socket. This leads to a corrupted bgp message. This patch introduces mutex to work around the problem. However, I hope that we _fix_ the design where only one greenlet call sendall() on a signel tcp socket in the future. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-16bgp: use TCP_NODELAY for bgp connectionFUJITA Tomonori
Disables Nagle to send data immediately. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-15ryu.lib.hub: add logging wrapper for wsgi serverYoshihiro Kaneko
This patch adds a wrapper to relay the log of the wsgi server to the logger. Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-15contrib: import tinyrpc libraryYoshihiro Kaneko
https://pypi.python.org/pypi/tinyrpc/0.5 https://github.com/mbr/tinyrpc Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-15downgrade required version of msgpack-pythonYoshihiro Kaneko
For Ubuntu 14.04, downgrade the required version of msgpack-python. Signed-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-06-14app_manager: Let application module to use require_app()YAMADA Hideki
Signed-off-by: YAMADA Hideki <yamada.hideki@po.ntts.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>