From 002eb7cc64ee6697fc264b9ac5bc93eb33c7e213 Mon Sep 17 00:00:00 2001 From: Felix Date: Fri, 8 Nov 2019 00:35:00 +0000 Subject: [PATCH] Se reinstalo ryu para configurar STP y que el restAPI no sea publico(127.0.0.1) --- clusterGRE.py | 17 +- precompiler.py | 2 +- ryu/AUTHORS | 138 +- ryu/ChangeLog | 3564 +----------------------------------- ryu/ryu.egg-info/pbr.json | 2 +- ryu/ryu/app/wsgi.py | 2 +- ryu/ryu/lib/packet/bpdu.py | 4 +- topotest.py | 34 +- 8 files changed, 30 insertions(+), 3733 deletions(-) diff --git a/clusterGRE.py b/clusterGRE.py index 56b2a95..d46988c 100755 --- a/clusterGRE.py +++ b/clusterGRE.py @@ -7,16 +7,17 @@ from mininet.examples.clustercli import ClusterCLI as CLI from mininet.node import RemoteController from topotest import MiTopo from precompiler import TopoFromCompiler - + def inicia(): - #IPs = '/home/pi/iplist' + IPs = '/home/pi/iplist' c = RemoteController('c1', ip='192.168.25.10', port=6633) - #servers = readIPs(IPs) - servers = ['192.168.25.2', '192.168.25.3', '192.168.25.4','192.168.25.5','192.168.25.6'] - topo1 = TreeTopo(depth=2, fanout=2) - topo2 = MiTopo() - topo3 = TopoFromCompiler() - net = MininetCluster(topo=topo3, servers=servers, link=RemoteGRELink, placement=SwitchBinPlacer, controller=c) + servers = readIPs(IPs) + #servers = ['192.168.25.2', '192.168.25.3', '192.168.25.4','192.168.25.5','192.168.25.6'] + topo1 = TreeTopo(depth=2, fanout=2) # Topologia basica + topo2 = MiTopo() # Topologia desde el archivo topotest + topo3 = TopoFromCompiler() # Topologia creada a partir del archivo data + topo4 = TreeTopo(depth=3, fanout=3) # Topologia grande en arbol + net = MininetCluster(topo=topo2, servers=servers, link=RemoteGRELink, placement=SwitchBinPlacer, controller=c) net.start() CLI(net) net.stop() diff --git a/precompiler.py b/precompiler.py index 86bd4d4..2b495cb 100755 --- a/precompiler.py +++ b/precompiler.py @@ -23,7 +23,7 @@ time.sleep(.300) document = open("data" + "_clean" ,"r+") links = document.readlines() document.close - +#"data" is the file with the topo vsorc script #clean the \n in the colected data a = 0 diff --git a/ryu/AUTHORS b/ryu/AUTHORS index f1d29c7..47c9747 100644 --- a/ryu/AUTHORS +++ b/ryu/AUTHORS @@ -1,136 +1,2 @@ -Aeschlimann Philipp -Akihiro Suda -Alan Quillin -Albert Siersema -Anantha Ramaiah -Andrew Ragusa -Atzm Watanabe -Atzm Watanabe -Benjamin Eggerstedt -Bill Allen -Brad Cowie -Can Zhang -Charles M.C. Chan -Charlie Lewis -Che-Wei Lin -Chia-Lin Cho -Chiu,Cheng-Han -Chris Small -Christopher Scherb -Claudio Pisa -Claudiu Belu -Corey Bryant -Dingyuan Hu -Eder Leão Fernandes -EisukeTAKAHASHI -Eran -Evan Gray -FUJITA Tomonori -FUJITA Tomonori -FUJITA Tomonori -Fadi Moukayed -Felician Nemeth -Fumihiko Kakuma -Gal Sagie -Glenn McGuire -HIYAMA Manabu -Henkel, Michael -Hiroaki KAWAI -Hiroshi Yokoi -Hisaharu Ishii -Hiyama Manabu -ISHIDA Wataru -IWAMOTO Toshihiro -IWASE Yusuke -Isaku Yamahata -Isaku Yamahata -Iwase Yusuke -Jan Keler -Jason Kölker -Jerico Moeyersons -Jerry Cen -Joe Mader -John-Lin -Jonas Grunert -KAWAI Hiroaki -KONDOH Tasuku -Kawai, Hiroaki -Kei Ohmura -Kiyonari Harigae -Krzysztof Rutka -Kyle Mestery -MORITA Kazutaka -Marcin Chron -Mark Lentczner -Michael Haro -Michał Rzepka -Minoru TAKAHASHI -Monthadar Al-Jaberi -OHMURA Kei -Olivier DESNOE -Omer Anson -Oren Spector -Palubinskas Vilius -Peng Xiao -Philipp Aeschlimann -Rob Udechukwu -Rom -Satoshi Fujimoto -Satoshi KOBAYASHI -Satoshi Kobayashi -Shaun Crampton -Shinpei Muraoka -Shu Shen -Shu Shen -Simon Horman -Slawek Kaplonski -Srini Seetharaman -Sriram Natarajan -Sriram Natarajan -Steffen Gebert -Takeshi -Thomas Bechtold -Thomas Boros -Toshiki Tsuboi -Travis Gockel -Victor J. Orlikowski -Victor Orlikowski -WATANABE Fumitaka -WATANABE Fumitaka -Wataru ISHIDA -Wataru Ishida -Wei-Li Tang -Xiao Peng -YAMADA Hideki -YAMAMOTO Takashi -YAMAMOTO Takashi -YAMAMOTO Takashi -YAMAMOTO Takashi -Ygor Amaral -Ygor Amaral -Yi Tseng -Yoshiharu Yamashita -Yoshihiro Kaneko -Yuichi Ito -Yuichi Sudo -Yuji Oshima -Yury Kulazhenkov -Yusuke Iwase -Zhang Dongya -alex -blacksheeep -fortitude.zhang -fumihiko kakuma -ishida wataru -marcelo -mgrex97 -morland -surlyjake -takahashi.minoru -tungyueh -watanabe.fumitaka -watanabe.fumitaka -yuta-hamada -张东亚 -竹下昇 -胡鼎原 +Felix +josuer08 diff --git a/ryu/ChangeLog b/ryu/ChangeLog index e2f58da..30cffc1 100644 --- a/ryu/ChangeLog +++ b/ryu/ChangeLog @@ -1,3563 +1,7 @@ CHANGES ======= -v4.32 ------ - -* Ryu 4.32 -* app/ofctl: fix possible deadlock - -v4.31 ------ - -* Ryu 4.31 -* Choose the highest TLS version - -v4.30 ------ - -* Ryu 4.30 -* Grammatical improvements to some of the documentation - -v4.29 ------ - -* Ryu 4.29 -* app/ofctl: fix possible deadlock when the datapath disconnects - -v4.28 ------ - -* Ryu 4.28 -* Fix convertion of ipv4 to string on i386 and arch -* mrtlib: Define JSON representation types -* test\_mrtlib: Test cases for ADD\_PATH -* mrtlib: Support RFC8050 -* mrtlib: Missing subclass for SUBTYPE\_RIB\_\*\_MULTICAST - -v4.27 ------ - -* Ryu 4.27 -* Declare support of recent python3 versions -* Test more python versions on travis CI -* Bump oslo.config to 2.5.0 -* Fix UT when running in python 3.7 env -* lib/ovs/bridge: Return multiple controllers -* BGPSpeaker: Enable to specify remote port for neighbor -* switch.tester: Fix name shadowing -* gui\_topology: Avoid wildcard URL matching - -v4.26 ------ - -* Ryu 4.26 -* nx\_actions: Fix NXActionSetTunnel docstring -* Fix pycodestyle W605 warnings -* BGPSpeaker: Fix BGP state string conversion -* pycodestyle: Ignore W504 -* BGPSpeaker: Advertise local routes to RR clients -* pip: Blacklist eventlet 0.23.0 -* lldp: Remove remaining SystemCapabilities.subtype from tests -* lldp: fixed SystemCapabilities TLV - -v4.25 ------ - -* Ryu 4.25 -* allow versions of eventlet > 0.21.0 - -v4.24 ------ - -* Ryu 4.24 -* ofproto: add Nicira extension ct\_clear action -* ofproto: Encode data field on OFPErrorMsg -* ofp\_handler: Close socket when HELLO failed -* controller: Wait for switch to disconnect connection -* controller: Option to close socket after sending Message -* controller: Improve pylint result -* test\_requirements: Avoid using pip as library -* utils: Remove "parse\_requirements" function -* Switch to msgpack in pip-requires -* nicira\_ext: Support DEC\_NSH\_TTL action -* nicira\_ext: Support Network Service Header match -* doc: Fix unexpected indent in ofctl.api doc - -v4.23 ------ - -* Ryu 4.23 -* doc: Document for ryu.lib.ovs -* lib/ovs: Fix a typo of "--may-exist" option - -v4.22 ------ - -* Ryu 4.22 -* bgp/application: Add note for BGPSpeaker API reference -* BGPSpeaker: Move docstring from \_\_init\_\_ to class -* BGPSpeaker: Enable to notify adj-RIB-in changed -* ofctl: Enable to get all datapath objects -* confroller/dpset: Add usage example of instantiation -* test\_rpc: Adopt to msgpack-python>=0.50 -* doc: Usage for ryu/services/protocols/bgp/application.py - -v4.21 ------ - -* Ryu 4.21 -* \*: Apply autopep8 -* travis: Introduce autopep8 test -* \*: Adopt to pycodestyle's checks -* pycodestyle: Replace pep8 -* ofproto\_v1\_5\_parser: oxm\_ids with name str in OFPActionCopyField -* ofproto\_v1\_5\_parser: Missing trailing pads of OFPActionCopyField -* ofproto\_v1\_5\_parser: Fix length calculation of OFPOxmId -* ovsdb: Fix small bug -* packet\_data\_generator3: Generate OF13 Ext-230 bundle packets -* packet\_data\_generator3: Support ovs-2.8 -* ofproto\_v1\_3: Add bundle extension -* ofproto: Correct OFPBundle{Ctrl, Add}Msg docstrings -* rest\_vtep: Add some descriptions for troubleshooting -* topology: Enable to detect migrations of hosts - -v4.20 ------ - -* Ryu 4.20 -* fix bug in the example of flow\_stats\_reply -* app: added simple switch with openflow 1.5 support -* ofproto\_v1\_5\_parser: Change default of command\_bucket\_id -* app: Fix simple\_switch for multi switch env -* doc: fix typo -* test\_icmpv6: Catch proper Exception -* packet/icmp: Avoid TypeError when calculating length -* \*: Reject Binary Represented IP Addresses -* serivice/bgp: Fix ssh connection problem in Python 2.7 -* flags: Inject \_\_class\_\_ attribute to LooseVersion -* library\_ovsdb\_manager: Descriptions for OVS configs -* app/ofctl: Enable to send single BarrierRequest -* packet/zebra: Support FRRouting version 3.0 -* of14: Implement OFPBundleCtrlMsg parser -* rest\_qos: Avoid None when deleting OVSDB addr -* lib/ovs/vsctl: Function for validate OVSDB address - -v4.19 ------ - -* Ryu 4.19 -* BGPSpeaker: Enable to specify local listen addresses -* bgp/application: Enhance arguments handling for BGPSpeaker -* test\_controller: Test cases for \_split\_addr() -* controller: APIs to register switch address dynamically -* controller: Support proactive connection - -v4.18 ------ - -* Ryu 4.18 -* zclient/zserver: Support FRRouting messages format -* test\_zebra: Enhance test cases -* packet/zebra: Support MPLS Labels messages -* packet/zebra: Support Interface Router Advertisement messages -* packet/zebra: Support VRF related messages -* packet/zebra: Support BFD Destination messages -* packet/zebra: Support Neighbor Connected Address messages -* test\_zebra: Add pcap for API version 4 on FRR v2.0 -* packet/zebra: Support some FRRouting messages format -* packet/zebra: Constants for supporting FRRouting format -* packet/zebra: Support asymmetric structure of ZEBRA\_\*\_IMPORT\_LOOKUP -* packet/zebra: Parse messages based on Zebra API version -* packet/zebra: Missing bw\_cls\_num in InterfaceLinkParams -* packet/zebra: Constants for Link Parameters Status -* packet/zebra: Constants for Interface Address Flags -* packet/zebra: Return "ZebraMessage" for message from Zebra -* packet/zebra: Fix unresolved reference for \_serialize\_nexthops -* Only import pip if needed - -v4.17 ------ - -* Ryu 4.17 -* topology/switches: Fix delete port can't immediately remove link -* BGPSpeaker/net\_ctrl: Close activity for each session -* packet/bmp: Correctly parse peer address with IPv4 -* rest\_qos: Avoid discarding Queues info for each request -* services/ovsdb: Listen on IPv6 Address -* packet/icmpv6: Assert length in options are valid -* packet/icmpv6: Fix parsing undefined nd\_option fails -* ofp\_event: Timestamp when OpenFlow event was generated - -v4.16 ------ - -* Ryu 4.16 -* doc: Fix unexpected indent in ryu/lib/packet/bgp.py -* doc: Deprecated option html\_use\_smartypants -* ofproto: Avoid emitting illegal instruction sets -* doc: Minor grammar changes in ryu\_app\_api -* unit/ofproto: Adopt to rename of OFPErrorExperimenterMsg -* ofproto: Handle OFPErrorExperimenterMsg -* bgp\_sample\_conf: absolute\_import to suppress warnings -* service/ovsdb: get socket from RemoteOvsdb - -v4.15 ------ - -* Ryu 4.15 -* Revert "tests: Separate test files from Ryu module" -* tests: Separate test files from Ryu module -* service/ovsdb: Use dict.items() instead of six.iteritems() -* doc/ovsdb\_manager: Update Sample Code -* service/ovsdb: Use Python 2/3 compatible code -* service/ovsdb: Avoid to use dict as default argument -* service/ovsdb: Add properties to EventNewOVSDBConnection -* test\_vsctl: Strip unexpected double quote -* pip: OpenStack updated requirements of eventlet again -* manager: Introduce user flags option -* CONTRIBUTING: Update info of Python ver/lib and links -* CONTRIBUTING: Update procedure for running tests -* CONTRIBUTING: Update procedure for submitting patches -* README: Dependencies for installing optional requirements -* service/ovsdb: Default of controller\_info in set\_controller - -v4.14 ------ - -* Ryu 4.14 -* doc: fix error in ovsdb\_manager.rst code -* fix dhcp6.py bug using python3 -* pip: OpenStack avoids newer eventlet -* ofctl: Add some tests for ofp\_instruction\_from\_str -* ofctl: Add ovs-ofctl style action string parser -* nicira\_ext: Define some CT constants -* BGPSpeaker/SSH: Support to show L2VPN Flow Spec routes -* BGPSpeaker: Support IPv6 Flow Spec update messages -* BGPSpeaker/info\_base: Add tables for L2VPN Flow Spec -* utils/test\_bgp: Add unit tests for L2VPN Flow Spec -* test\_table\_manager: Add unit tests for L2VPN Flow Spec -* test\_bgpspeaker: Add unit tests for L2VPN Flow Spec -* packet/bgp: Support L2VPN Flow Spec -* packet/bgp: Properly calculate length for FlowSpec -* test\_bgp: Add test cases for L2VPN Flow Spec -* BGPSpeaker/SSH: Support to show IPv6 Flow Spec routes -* BGPSpeaker: Support IPv6 Flow Spec update messages -* BGPSpeaker/info\_base: Add tables for IPv6 Flow Spec -* utils/test\_bgp: Add unit tests for IPv6 Flow Spec -* test\_table\_manager: Add unit tests for IPv6 Flow Spec -* test\_bgpspeaker: Add unit tests for IPv6 Flow Spec -* packet/bgp: Support IPv6 Flow Spec -* test\_bgp: Add test cases for IPv6 Flow Spec -* ofproto: Allow CIDR notation for ipv[46]\_{src, dst} -* utils.import\_module: Prefer filepath than Python module -* library\_packet\_ref: Separate ref into each protocol -* lib/packet: Use literal block for diagram in pydoc -* packet/bgp: Omit description of default value -* packet/lldp: Add description for each class -* packet/arp: Update description for arguments -* BGPSpeaker/info\_base/base: Unify documentation format -* BGPSpeaker: Unify documentation format -* BGPSpeaker: Improve EVPN Redundancy Mode validation -* bgp: Enable to configure default local preference -* packet/zebra: Support IP\_ROUTE message from Zebra -* lib/hub: Workaround for issue of eventlet - -v4.13 ------ - -* Ryu 4.13 -* nicira\_ext: Constants for IP fragment matching -* bgp/info\_base: Refactor has\_nexthop() method -* bgp/peer: Fix invalid NEXT\_HOP in UPDATE message -* ofctl\_v1\_5: Fix lack of arguments for modify role API -* ofctl\_rest: Add get role API -* ofctl: Fix type of fields of DescStat -* utils/test\_bgp: Add unit tests for Flow Specification -* core\_managers/test\_table\_manager: Add unit tests for Flow Specification -* test\_bgpspeaker: Add unit tests for Flow Specification -* library\_packet\_ref: Add description of action for Flow Specification -* BGPSpeaker: Support Flow Specification update messages -* BGPSpeaker/SSH: Supports display of Flow Specification RIB -* BGPSpeaker/info\_base: Add tables for Flow Specification -* packet/bgp: Implement the utility of Flow Specification for BGPSpeaker -* packet/bgp: Fix subtype for Traffic Filtering Actions of Flow Specification -* packet/bgp: Unify variable names for Flow Specification -* packet/bgp: Add the address converter for Flow Specification -* packet/bgp: Fix data structure for VPNv4 Flow Specification -* library\_packet\_ref:Add bgp reference for Flow Specification -* test\_bgp: Add test cases for user interface of Flow Specification -* packet/bgp: Implement user interface of Flow Specification - -v4.12 ------ - -* Ryu 4.12 -* hub.StreamServer: Ommit validation for IPv4 address -* wsgi: Change default wsgi listen host to "0.0.0.0" -* zebra: Add sample application for Zebra server service -* zebra: Implement Server APIs for Zebra protocol service -* zebra: Implement database for Zebra protocol service -* tools/optional-requires: SQLAlchemy for Zebra service -* lib/netdevice: Constants defined in netdevice(7) -* controller: Change default OPF listen host to "0.0.0.0" -* hub: Enable StreamServer to listen Unix domain socket -* zebra: Add sample application for Zebra client service -* Implement Zebra protocol client service -* bgp/utils/bgp: Use lib/ip for Python 3 compatibility -* BGPSpeaker: Use isinstance(\*, bool) for boolean check -* BGPSpeaker: Support Route Reflector features [RFC4456] -* packet/zebra: Enable to specify "prefix" arg in str -* lib/ip: Add wrapper for netaddr.valid\_ipv4/6 -* allow\_local\_as\_in\_count : allow local ASN in AS patch, e.g. "rd auto/route-target both auto" -* BGPSpeaker: Advertise VNI on EVPN Multicast Ethernet-Tag -* BGPSpeaker: Allow empty IP Address in EVPN advertisement -* RyuBGPSpeaker: Enable to notify BGP events -* ofctl\_v1\_\*: Use utility functions of ofctl\_utils -* ofctl\_v1\_\*: Use str\_to\_int instead of builtin int -* test\_bgp: Add test cases for Flow Specification -* packet/bgp: Support Flow Specification -* pakcket/bgp: pylint -* BGPSpeaker: Support to advertise Type 1, 2 Route Target - -v4.11 ------ - -* Ryu 4.11 -* utils: Re-implement parse\_requirements -* docker\_base.py: fix an ip option of "docker network connect" -* library\_packet\_ref: Add doc for Zebra packet library -* test\_zebra: Unit tests for Zebra packet library -* packet/zebra: Add Zebra protocol parser -* bgp\_scenario\_test: Clean previous builds before installing -* sync ryu.services.protocols.ovsdb.client.Idl code with ovs lib -* packet lib: adding DHCPv6 support -* doc: library\_packet\_ref: Add reference of openflow -* test\_openflow: Add unit tests for OpenFlow packet library -* packet lib: Add packet library of OpenFlow - -v4.10 ------ - -* Ryu 4.10 -* library\_packet\_ref: Update dhcp reference method -* test\_dhcp: Extend unit test for fragmented options -* packet/dhcp: Revert b'str' conversion -* packet/dhcp: Support fragmented options -* BGPSpeaker/net\_ctrl: Support multiple RPC sessions -* BGPSpeaker/base: Stop child activity by name -* BGPSpeaker/net\_ctrl: Move \_send\_\*\_response() function -* BGPSpeaker/net\_ctrl: Close RPC session when disconnected -* BGPSpeaker/net\_ctrl: Pylint and fixes of typos -* rpc\_cli: Avoid to use eval() -* rpc\_cli: Close peer connections when exiting prompt -* rpc\_cli: Enable to execute a single command -* ryu/app: Use Request/Response wrappers in REST Apps -* wsgi: Wrapper classes of Request/Response in WebOb -* library\_bgp\_speaker\_ref: Fix unexpected unindent -* optional-requires: Specify lxml version for OpenStack -* ryu-client: Remove client for OpenStack plugin/agent -* doc: Deprecate OpenStack plugin ref -* test\_geneve: Add unit tests for Geneve -* packet lib: Add packet library of Geneve -* test\_gre: Add unit tests for NVGRE -* packet/gre: Support NVGRE extension -* doc: library\_packet\_ref: Update references -* rest\_router: Fix ARP THA in reply message -* install\_docker\_test\_pkg: Remove unnecessary pip pacakges -* tox: Move dependencies installation to .travis.yml -* bgp\_scenario\_test: Switch Python version -* test\_requirements: Test cases for checking requirements -* tox: Test ryu-manager without additional requirements -* pip: Add doc requirements for convenience -* library\_bgp\_speaker\_ref: Fix unexpected indentation -* doc: Add MRT file library reference -* test\_mrtlib: Add unit tests for MRT paser -* mrtlib: Add parser for MRT format [RFC6396] -* packet/ospf: Reduce Pylint warnings -* type\_desc: Define TypeDisp class for re-usability -* bgp\_scenario\_test/bgp: Pylint -* bgp\_scenario\_test/common: Pylint -* Delete an unnecessary function -* Get some debug information -* Add DHCP options constants to DHCP lib -* lib/ofctl\_v\_\*: Enable to filter flow stats by priority -* packet/bgp: Fix default of esi for IP Prefix route -* BGPSpeaker: ESI to be optional arg in MAC/IP Adv route -* packet/bgp: Support multiple next\_hop in BGPPathAttributeMpReachNLRI -* packet/bgp: Unpack mpls\_label in BGPPathAttributePmsiTunnel -* stringify: Add optional attributes list to be displayed -* packet/bgp: Support multiple BGP messages in a packet -* BGPSpeaker: Support Ethernet A-D Route and Ethernet Segment Route -* packet/bgp: Fix the ESI Label Extended Community to use mpls\_label - -v4.9 ----- - -* Ryu 4.9 -* scenario test: Fix the wrong retry check in command execution -* Enable to run a scenario test with a specific python version -* rest\_firewall: Compare reserved port in str representation -* test\_vsctl: Use osrg/ryu-book image as Mininet container -* test\_vsctl: Wait for loading OVS kernel module -* integrated/bgp: Use Ubuntu:16.04 for base image -* docker\_base: Update base image to Ubuntu:16.04 -* BGPSpeaker: Confirm SSH feature to be optional -* docker\_base: Add missing requirements for test-requires -* README: Use pip to resolve dependencies -* pip: Separate test-requires -* RPC: Specify encoding to msgpack.Packer/Unpacker -* test\_rpc: Use numbers.Integral instead of long type -* wsgi: Avoid using inspect.getargspec -* wsgi: Reduce pylint warnings -* wsgi: Use six.text\_type instead of unicode -* contrib: Revert module path to ryu.contrib -* protocols/bgp/base: Add missing \_\_next\_\_ method -* BGPSpeaker: Support to advertise EVPN IP Prefix route -* packet/bgp: Support for IP Prefix Route encoding -* packet/bgp: Fix the EvpnNLRI to use the ryu.lib.packet.vxlan -* packet/bgp: Fix the EvpnNLRI to use the ryu.lib.packet.mpls -* packet/bgp: Fix the EvpnNLRI to use the ryu.lib.ip -* BGPSpeaker: Enable to set capability for IPv6 -* test\_bgp: Add test cases for IPv6 and VPNv6 routes -* test\_bgp: Enable to check parsed BGP message -* packet/bgp: Refactor MP\_REACH\_NLRI and MP\_UNREACH\_NLRI -* lib/ip: Add method to convert IPv4/IPv6 to int -* test\_bgp: Uncomment out test case for UPDATE -* packet/bgp: Enable Extended Length flags if specified -* pip: Move tinyrpc to pip-requires -* Ryu 4.8 -* contrib/tinyrpc: Remove embedded tinyrpc, use upstream -* contrib/ncclient: Remove embedded ncclient, use upstream -* ut/ovs: Add UT using Docker for ryu.lib.ovs -* BGPSpeaker: Support to advertise PMSI Tunnel Attribute -* packet/bgp: Add PMSI Tunnel Attribute -* packet/vxlan: Add method to convert the format of vni -* packet/mpls: Add method to convert the format of label -* lib/ip: Add method to convert the format of Ipv4 or Ipv6 -* Enable to run a scnario test for ryu bgp on travis -* Add scripts which install a dependency package -* Add bgp scenario tests -* Add bgp scenario tests tool -* bgp/application: Re-implement base BGP application -* flags: Add CLI options for BGP application -* BGPSpeaker: Enable to specify settings for SSH CLI -* bgp/operator/ssh: Enable to quit gracefully -* bgp/operator/ssh: Reduce pylint warnings -* BGPSpeaker: Use dictConfig in the standard library -* utils: Backward compatibility for 'imp.load\_source' -* Log OFPErrorMsg.data as ascii when type is OFPET\_HELLO\_FAILED -* ovs/vsctl: Fix API for parsing column/key/value set -* ovs/vsctl: Add missing Controller commands in OVS v2.6.0 -* ovs/vsctl: Add missing Port commands in OVS v2.6.0 -* ovs/vsctl: Add missing Interface commands in OVS v2.6.0 -* ovs/vsctl: Add missing Bridge commands in OVS v2.6.0 -* ovs/vsctl: Sort out commands order -* ovs/bridge: Add APIs for missing Database commands -* ovs: Add API corresponding to ovs-vsctl remove command -* ovs: Add API corresponding to ovs-vsctl add command -* ovs: Add API corresponding to ovs-vsctl list command -* ovs: Add API corresponding to ovs-vsctl add-bond command -* ovs/vsctl: Update command list with OVS v2.6.0 -* ovs/vsctl: Avoid applying next() to non-iterator object -* ovs/vsctl: Add missing required argument for find\_vlan\_bridge -* ovs: Reduce pylint warnings -* ovs: Revert ovs module path -* ovs/vsctl: Fix VSCtlCommand to inherit StringifyMixin -* ovs/vswitch\_idl: Update OVSDB schema with v7.14.0 -* ovs/vsctl: Change log level of redundant messages -* rest\_router: Fix conversion of Packet Library to dict -* dpset: Fix iteration error when disconnecting switches -* test\_parser: Add an truncate packet test -* test\_parser: Enable tests for truncated packets -* ofproto\_v1\_3\_parser: Raise OFPTruncatedMessage exception on truncated messages -* ofproto/nicira\_ext: Add missing NXMs in OVS v2.6.0 -* ryu/lib/ofctl\_v1\_3: port name decoding fix -* BGPSpeaker: Enhance APIs for operator.show - -v4.7 ----- - -* Ryu 4.7 -* BGPSpeaker: Fix to enable to notify peer down -* use old cryptography version -* packet: Avoid parsing an empty buffer -* pip-requires: Add ovs>=2.6.0 -* doc: Add API reference for REST EVPN switch -* app: Add sample application for REST EVPN switch -* app: Integrate aplication of Ryu-book -* ovs/bridge: Enable to request tunnel port number -* ovs/bridge: Add utility method to create VXLAN port -* ovs/bridge: Make local\_ip to optional field for tunnel -* ovs/vsctl: Catch the default tag type in Port Table -* stplib: Fix to store current OFPPort status -* stplib: Fix to compare MAC address and Bridge ID -* BGPSpeaker/api/operator: Simplify registration decorator -* BGPSpeaker: Fix typos -* ofproto/ofproto\_v1\_5\_parser: OFPMultipartReply malformed message offset fix -* tests/switch: fix bug in \_diff\_packets function -* Add Nicira extension vlan\_tci field -* BGPSpeaker: Shutdown BGPSpeaker gracefully -* BGPSpeaker: Enable to get path from EventPrefix -* BGPSpeaker/vrf: Handle non MPLS labled NLRI -* BGPSpeaker: Add EVPN routes from Global to VRF Table -* table\_manager: Fix conversion of De Morgan's laws -* test\_bgpspeaker: Add UT for advertising VNI for EVPN -* BGPSpeaker: Extend to advertise VNI for EVPN routes -* BGPSpeaker: Support to advertise Tunnel Encapsulation -* packet/bgp: Add BGP Encapsulation Extended Community -* doc: specify OFP v1.0 for sample application -* add modify role API in ofctl\_rest -* lib/ofctl\_v1\_4: correct argument order for OFPFlowMod constructor - -v4.6 ----- - -* Ryu 4.6 -* Validate OpenFlow message length in header, to prevent controller receive loop DoS -* PyInstaller: Enable to build stand-alone executables -* handler: Fix for frozen builds -* BGPSpeaker: Suppress RD in EVPN VRF on SSH console -* doc: Update the API Reference for BGPSpeaker -* test\_validation: Add unit tests for validation utilities -* BGPSpeaker: Enable validation for optional arguments -* BGPSpeaker: Raise exception when validation fails -* BGPSpeaker: Improve validation utility methods -* BGPSpeaker: Resolve unused argumet 'multi\_exit\_disc' -* BGPSpeaker: Reduce Pylint warnings -* test\_table\_manager: Add UTs for the Global Table API -* table\_manager: Rename internal API for consistency -* test\_table\_manager: Add UTs for the VRF Table API -* BGPSpeaker: Support VRF Table for Ethernet VPN -* test\_bgpspeaker: Add unit test for the API of EVPN -* BGPSpeaker: Support Ethernet VPN update messages -* packet/bgp: Fix to serialize BGPNotification on Python3 -* BGPSpeaker/info\_base: Add comparison methods for Python3 -* BGPSpeaker: Support Python3 on SSH console -* test\_bgp: Add unit tests for Ethernet VPN -* packet/bgp: Support MPLS-Based Ethernet VPN (RFC7432) -* packet/bgp: Enable to parse the entire packet data -* tests: Add tests for specifying Packet library for OFPPacketOut.data -* lib/packet: Support the Json format data -* ofproto: Enable to specify packet library for OFPPacketOut.data -* lib: Reduce Pylint warnings -* stringify: Fix to utilise six.moves.builtins -* ofctl\_nicira\_ext: Fix not enough arguments for format string -* ofctl\_nicira\_ext: Resolve not initialized values - -v4.5 ----- - -* Ryu 4.5 -* Ensure that send() and send\_msg() in controller return status to calling applications -* Clean up stale Datapath objects in the ofctl\_service application -* packet lib: Add packet library of GRE -* ofproto/nx\_actions: Update argument of NXActionCT -* ofproto/nx\_actions: Revert API of NXAction -* manager: Except KeyboardInterrupt to suppress traceback -* stplib: Handle the port state not changed events -* stplib: Adopt to Python3 -* rest\_qos: Fix to handle the case without QoS action -* packet: support relayed DHCP packet -* Fix: LLDP.OrganizationallySpecific not ignoring info field -* test\_parser: Add test data for some NXAction -* ofproto/nx\_actions: Support some NXAction -* ofproto/nx\_actions: Add comment for Ryu documents -* test\_parser: Add test data for missing NXAction -* ofproto/nx\_actions: Support missing NXAction -* ofproto/nx\_actions: Update arguments to be compatible with ovs-ofctl -* test\_parser: Add test data for NXAction used only in OpenFlow1.0 -* ofproto/nx\_actions: Add NXAction used only in OpenFlow1.0 -* test\_packet: Avoid to use array.array as input binary -* packet: Fix minimum ethernet frame length -* test\_peer: Unit test for peer.py of BGPSpeaker -* BGPSpeaker: Support Four-Octet AS number -* packet/bgp: Support Four-Octet AGGREGATOR Path Attribute -* BGPSpeaker: Fix capability check when MP-BGP not supported -* fix of13 VLAN\_PCP test case - -v4.4 ----- - -* Ryu 4.4 -* topology: ignore cfm packets on packet in -* topology: pep8 fixes -* ofproto: Fix example of OFPSetAsync message -* Update the readthedoc URL -* lib/ofctl\_utils: Log the datapath sent to -* Avoid parallel executions of AppManager.close() -* python3: Use six.add\_metaclass for metaclass -* python3: Use six.string\_types instead of basestring -* python3: Improve Table class in services.protocols.bgp.info\_base.base -* python 3: Replace deprecated logging.warn with logging.warning -* Python3: Explicit string type encoding -* BGPSpeaker: Remove unused utility modules -* BGPSpeaker: Fix unresolved references in Python3 -* BGPSpeaker: Support Per-Peer AS -* packet\_data\_generator3/gen: Add some NXAction packets -* ofproto/nicira\_ext: Move the variable and method for Nicira Extension -* tests/test\_parser\_v10: Update test parameter -* ofproto/nx\_actions: Update arguments to be compatible with ovs-ofctl -* ofproto/ofproto\_v1\_0: Delete some NX actions -* ofproto/nx\_actions: Porting the NX Action definition of ofproto\_v1\_0\_parser -* ofproto/nx\_actions: Update serialize and parse -* Extend OVSDB api -* Fix RuntimeError of lldp\_packet\_in\_handler - -v4.3 ----- - -* Ryu 4.3 -* nx\_match: add tun\_ipv6\_{src,dst} -* packet\_data\_generator3: Clear xid into zero -* ofproto: Implement OFPFlowMod parser -* doc: Add PCAP file library reference -* test\_pcaplib: Add unit tests for pcaplib -* pcaplib: Reduce Pylint warnings -* test\_bgp: Enable to test parser with pcap file -* packet/bgp: Reduce Pylint warnings -* bgp: fix typos -* test-requires: Update to use the latest Pylint -* test-requires: Add tinyrpc for RPC controller in wsgi -* Make ovs optional -* packet: Add VXLAN parser -* packet/bgp: Add missing \_\_hash\_\_ function -* controller: Add backward compatibility for 6633 port -* Update default OpenFlow port to 6653 -* BGP: Make RouteFamily class hashable -* doc: Remove warnings when building doc pages -* doc: Move Ryu App API doc into each source code -* network: Fix unresolved reference -* doc: Add description for EventOFPPortStateChange -* controller: Implement EventOFPPortStateChange -* doc/app/ofctl\_rest: Remove unused match field -* doc/source/conf: Set the False to SmartyPants -* doc/app/ofctl\_rest: Add a description for openflow1.5 -* doc/app/ofctl\_rest: Update the optional parameter of the message -* doc/app/ofctl\_rest: Add pbb\_uca to match field -* doc/app/ofctl\_rest: Update the description method of Example -* doc/app/ofctl\_rest: Add Openflow version -* Bump version requirement for oslo.config, given usage of min parameter to IntOpt -* tox: Integrate Coveralls.io -* tox: Add Python 3.5 -* test\_ofctl: Add test cases for new Actions of of15 -* test\_ofctl\_rest: Add unit tests for ofctl\_rest -* test\_ofctl: Add test cases for OpenFlow 1.5 -* ofctl\_rest: Support OpenFlow 1.5 -* lib/ofctl: Support OpenFlow 1.5 -* ofproto\_v1\_5\_parser: Fix serialized length of OFPActionCopyField -* ofctl\_v1\_4: Port some improvements from ofctl\_v1\_3 -* ofctl\_v1\_4: Rename to get\_queue\_desc for uniformity -* ofctl\_v1\_4: Support request parameters -* ofctl\_utils: Enhance user value conversion -* REST Apps: Adopt to Python 3 -* topology: Adopt to Python 3 -* ofctl\_rest: Enable to omit port\_no and queue\_id -* ofctl\_rest: Adopt decorator to simplify -* test\_ofctl: Test cases for omitting port\_no in get\_queue\_config -* lib/ofctl\_v1\_[23]: Unify the arguments order -* ofctl\_utils: Confirm binary type data in send\_experimenter -* test\_import\_module: Update test cases -* utils: fix for temporarily storing the value of sys.path - -v4.2 ----- - -* Ryu 4.2 -* Enable filtering the OVSDB schema tables/columns -* tox: Upgrade PyPy version to 2.6 -* Eventlet throws a subclass of IOError when an SSL read timeout occurs. Ensure that the read loop continues in this case -* Added support for the tcp flags nicira extension -* Removes unnecessary Windows requirements - -v4.1 ----- - -* Ryu 4.1 -* doc/app/ofctl\_rest: Update example of set-field action -* doc/app/ofctl\_rest: Update the code-block language of response data -* doc/app/ofctl\_rest: Update the ryu.app.ofctl\_rest version from openflow1.3 to openflow1.4 -* lib/ofctl\_v1\_[234]: Consolidate send\_experimenter -* lib/ofctl\_v1\_[34]: Consolidate common functions -* lib/ofctl\_v1\_3: Support nicira extensions -* lib/ofctl\_v1\_3: Allow caller to disable conversion -* lib/ofctl\_\*: Consolidate \`send\_stats\_requst\` -* lib/ofctl\_\*: Log the xid of messages being sent -* unit/lib/test\_ofctl: Fix Flake8 [e731] -* ofproto/ofproto\_v1\_4\_parser: Flake8 Fixes -* ofproto/ofproto\_v1\_3\_parser: Flake8 Fixes -* ofproto/ofproto\_v1\_2\_parser: Flake8 Fixes -* ofproto/ofproto\_v1\_0\_parser: Flake8 Fixes -* ofproto/nx\_actions: Flake8 Fixes -* lib/ofctl\_v1\_4: Flake8 Fixes -* lib/ofctl\_v1\_3: Flake8 Fixes -* lib/ofctl\_v1\_2: Flake8 Fixes -* lib/ofctl\_v1\_0: Flake8 Fixes -* pip-requires: force ovs>=2.6.0dev0 for everyone -* packet/tcp: Add TCP Control Flags -* lib/ofctl\_utils: Add a deprecated value -* lib/ofctl\_v1\_4: Fix json format of queue\_desc\_reply -* lib/ofctl\_v1\_4: Fix an omission in OFPTFPT\_\* -* lib/ofctl\_v1\_4: Fix a small bug in mod\_group\_entry() -* lib/ofctl\_v1\_0: Fix a small bug in get\_desc\_stats() and get\_aggregate\_flow\_stats() -* protocols/ovsdb: Add api for systemd\_id lookup -* protocols/ovsdb: Add bulk read support -* protocols/ovsdb: Fix shadow variables -* protocols/ovsdb: Update wrapped Idl() -* protocols/ovsdb: Remove patched ovs.vlog -* test\_ofctl: Add test cases -* doc/app/ofctl\_rest: Add the attribute for message -* ofctl\_rest: Support port number and queue id in get\_queue\_stats() -* ofctl\_rest: Support meter id in get\_meter\_config() -* ofctl\_rest: Support meter id in get\_meter\_stats() -* ofctl\_rest: Support group id in get\_group\_stats() -* ofctl\_rest: Support port number in get\_port\_stats() -* hub: Preserve functions return value -* protocols/ovsdb: Improve non-blocking performance -* contrib/ovs: Remove embeded ovs, use upstream -* protocols/ovsdb: Fix variable name issue -* protocols/ovsdb: Allow setting backoff settings -* Cleanups to controller.py -* protocols/ovsdb: Allow setting probe interval -* protocols/ovsdb: Fix shadow loop variables [F402] -* protocols/bgp: PEP-8 and Python3 fixes -* packet/bgp: PEP-8 and Python3 fixes -* doc/app/ofctl\_rest: Update description for action type of experimenter -* ofctl\_v1\_3: Add support for using action experimenter -* ofproto\_v1\_3: Add unit test cases for action experimenter -* ofproto\_v1\_5: Reduce an unnecessary code -* ofproto\_v1\_5: Add test case for OFPExperimenter - -v4.0 ----- - -* Ryu 4.0 -* Typo fixes -* of: add echo request support -* make socket-timeout config file option -* Clean up socket close() handling -* Wrap handler calls in the event loop in a try/except and log exceptions -* Use a slightly lighter Queue implementation -* Protect events queue with a semaphore -* .pylintrc: Remove deprecated output format feature -* run\_mininet: Specify the controller port -* run\_mininet: Adopt utility methods of Mininet class -* run\_mininet: Support protocols option of ovs-vsctl -* ofp\_handler: Handle empty data field in OFPErrorMsg -* lib/ofctl: add test files for ofctl\_v14 -* lib/ofctl: add ofctl\_v1\_4 library -* app/ofctl\_rest: support OpenFlow1.4 -* ofproto: Fixes invalid async config property types -* simple\_switch: Separate simple\_switch for beginners -* drop python2.6 support -* Fix i386 test failures -* test\_parser: add an NXActionRegLoad test -* packet\_data\_generator3: generate an NXActionRegLoad packet -* Implement NXActionRegLoad -* test\_parser: Fix ofp\_multipart\_type in OFPFlowStatsRequest -* ofproto\_v1\_5\_parser: Add missing field in OFPMeterFeaturesStats -* ofproto\_v1\_5\_parser: Fix unresolved structure references -* test\_parser: Add missing packet data for OFP15 -* tox: Adapt to PyPy interpreter -* of12/3/4/5: fix to\_jsondict of OFPActionSetField -* protocols/bgp: Log socket creation error - -v3.30 ------ - -* Ryu 3.30 -* Update conntrack test json and binary packets -* test\_parser: add conntrack NAT tests -* packet\_data\_generator3: add a couple of conntrack packets -* Implement NXActionNAT -* rest\_router: Ensure that usage of icmp.dest\_unreach and icmp.TimeExceeded complies with RFC 4884 -* packet: Better validate parameters to constructors better icmp -* doc: remove obsolete OpenStack info -* bgp: Clean up syntax in services/protocols/bgp/operator/views/base.py to avoid SyntaxErrors -* Reconnected event additions and cleanups -* test: Yet another typo fix -* test: ImportError fix, error caused by unordered import Link -* topology: Make sure the last IP in the list is the newest IP -* Message cleanup in ofproto\_parser -* Typo cleanup -* Typo fixes in lib/packet/bgp.py -* Fix: "AddrFormatError: address '...' is not an EUIv48" -* packet/bgp: Gaurd against extra data in the buffer -* protocols/ovsdb: Forcably kill the main\_thread -* protocols/ovsdb: Handle accept() errors -* protocols/ovsdb: Handle disconnects gracefully -* test: disable rpc unittest with large file for now -* ofproto/NXAction: Fix NXActionUnknown parsing -* of14\_parser: unify OFPActionExperimenter implementation -* test\_ofctl: Update json representations -* test\_ofctl\_utils: Add unit tests for ofctl\_utils.py -* lib/ofctl: Add utility library for ofctl\_v1\_\*.py -* doc: Add Nicira Extension Structures references -* doc: ofproto\_ref: Update supported actions/matches list -* packet\_data: regen -* test\_parser: Add expected json representations -* packet\_data\_generator2: Add some OFP13/15 messages -* lib/ofctl\_v1\_\*: Confirm hw\_addr is str in mod\_port\_behavior -* test\_ofctl: Compare sent messages in json representation -* Remove old link when link updates -* fixes for mutable default arguments -* Cleanup variable name for clarity -* cap oslo.config version only in python2.6 - -v3.29 ------ - -* Ryu 3.29 -* Generate new datapath event for switch connecting multiple times -* Fix handling of state transition to config mode -* Clean up for stability patch submitted previously -* Ensure to terminate threads where RyuApp.start() gives a thread object -* ofctl\_v1/2/3: Some improvements -* of14: Add action experimenter to flow stats reply unit test -* test\_tcp: Update test cases for tcp option -* lib/packet/tcp: Parse TCP Option field -* bgp: fix handling unknown and unsupported transitive path -* ofp\_handler: Remove sending SET\_CONFIG message -* lib/ofctl: Add test cases for ofctl\_v1\_0 -* lib/ofctl: Add test cases for ofctl\_v1\_2 -* lib/ofctl: Add test cases for ofctl\_v1\_3 -* lib/ofctl: Implement unit test for sending messages -* lib/ofctl: Rename unit test for action/match -* lib/ofctl: Confirm UTF-8 in binary fields -* ofproto\_v1\_[23]\_parser: Add default arguments in OFPQueueProp -* test\_parser: Add some expected json representations -* packet\_data: Regen -* packet\_data\_generator: Add ofp\_group\_stats messages for OF1.2 -* ofproto\_v1\_[2345]\_parser: Set default length field -* avoid oslo.config 3.1.0 and later for python2.6 support -* test\_controller: Add unit test for \_recv\_loop() -* controller: Split received message buffer -* Fix a stability issue relating to switch disconnection/re-connection events - -v3.28 ------ - -* Ryu 3.28 -* test\_parser: add conntrack tests -* packet\_data\_generator3: add a couple of conntrack packets -* Implement NXActionCT and related ct\_\* matches -* tox: disable wheel cache -* python3: implicit relative import was deprecated -* python3: itertools.ifilter() doesn't exist -* python3: iter#next() doesn't exist -* python3: #func\_name is renamed to \_\_name\_\_ -* python3: import \_\_future\_\_ for just in case -* python3: StandardError doesn't exist -* ofctl\_v1\_3: Fix unsuitable error log in mod\_meter\_entry() - -v3.27 ------ - -* Ryu 3.27 -* bgp: fix of sending "Start-of-RIB" and "End-of-RIB" in Enhanced Route-Refresh -* doc/app/ofctl\_rest: Add description for OFPTableStats message -* doc/app/ofctl\_rest: Add description for OFPQueueGetConfig message -* doc/app/ofctl\_rest: Add description for OFPTableFeaturesStats message -* ofctl\_rest: support OFPQueueGetConfig Message -* ofctl\_rest: support OFPTableFeaturesStats Message -* ofctl\_rest: support OFPTableStats Message -* vrrp: fix param of virtual\_ip\_address for rpc\_api -* tester: Reduce pylint warnings -* tester: Add test cases for OpenFlow1.0 -* tester: Support to test OpenFlow1.0 switch -* packet\_data: Fix wildcarded match value in OF1.0 -* of10: Human readable address field in json Match/Action -* Try logging.config.dictConfig before in-tree version -* Python3: use int instead of long -* Python3: complete previous removal of types usage -* Python3: use dict instead of types.DictType -* doc: Change Sphinx html\_theme to sphinx\_rtd\_theme -* bgp: support of CAP\_ENHANCED\_REFRESH for vpnv4 -* tester: Use six.binary\_type for binary data comparison -* tester: Enable to sort instructions instance by type -* tester: Remove too broad exception handling -* tester: Strict string argument encoding in Python3 -* tester: Adapt to Python3 dictview -* packet\_data: Regen -* test\_parser: Add expected json for OFP13/15 Messages -* packet\_data\_generator2: Add OFP13/15 Messages -* packet\_data\_generator2: Sort by OF1.5 index order -* packet\_data\_generator2: Fix to use struct eth\_addr -* doc: Add openflow api reference for of1.0 -* ofproto\_v1\_0\_parser: Add comments for OF1.0 protocol -* doc: Handle ERROR of unexpected indentation -* test\_ip: Add tests for IPv4-int conversion -* of10: Add \_\_contains\_\_ method into OFPMatch -* test\_parser\_v10: Fix wildcards param for unit test -* of10: Support human readable MAC/IPv4 address in OFPMatch - -v3.26 ------ - -* Ryu 3.26 -* switch/tester: Add sleep interval for each test case -* ofproto\_v1\_[45]\_parser: Add parser() for OFPRequestForward -* remove old Ryu OpenStack plugin stuff -* packet: lldp: python3 fix -* bgp: support disabling listening socket -* bgp: python3 fixes -* test\_parser\_ofpmatch: Add tests for Experimenter OXMs -* OXM/OXS: Enable to sort Experimenter oxm\_type/oxs\_type in Python3 -* test\_parser\_ofpmatch: Add test cases for OF1.4 and OF1.5 -* .travis.yml: Suppress the output of unit tests -* ofproto: Sort out the NX OXMs definition -* ofproto: Refine module import -* ofproto\_v1\_[45]\_parser: Remove unused OFPMatchField -* doc/ofproto\_v1\_2\_ref: Add description for Port Structures -* doc/ofproto\_v1\_3\_ref: Add description for Port Structures -* doc/ofproto\_v1\_4\_ref: Add description for Port Structures -* doc/ofproto\_v1\_5\_ref: Add description for Port Structures and Controller Status Structure -* Examples contain invalid MAC addresses -* ofproto\_v1\_0\_parser: Add \_\_getitem\_\_ method into OFPMatch -* test\_parser\_v10: Add test case for \_\_getitem\_\_ of OFPMatch -* doc/app/ofctl\_rest: Add command examples for WRITE/CLEAR\_ACTIONS -* Uncap pbr version -* topology: Fixed conditional statement -* ofproto\_v1\_5: Add OFPBAC\_BAD\_METER -* bgp: enable nexthop\_self for locally generated routes -* test\_ofctl: improving readability -* test\_ofctl: Add unit test for OFPIT\_[WRITE/CLEAR]\_ACTIONS -* ofctl\_v1\_[23]: Add support for OFPIT\_[WRITE/CLEAR]\_ACTIONS -* ofp\_handler: Output human readable error msg ev log -* ofproto\_parser: Unify str representation of MsgBase -* utils: Add binary\_str() method to print binary data -* utils: Unify output str format of hex\_array() -* doc: Add some JSON examples to openflow api reference for of1.5 -* test\_parser: Add expected json outputs for OF1.5 -* doc: Add openflow api reference for of1.5 -* test\_parser: Add test case for OFP15 table\_features\_reply - -v3.25 ------ - -* Ryu 3.25 -* packet: dhcp should set \_MIN\_LEN -* packet: udp should detect dhcp -* ofctl\_v1\_[23]: Fix the output result of get\_flow\_stats() -* ofctl\_v1\_[23]: Convert masked match value into str -* packet/igmp: Python 3: truncate IGMP timer fields to integers before packing -* doc: ofctl\_rest: Add table of contents -* README.rst: add OF 1.5 support -* bgp: Added support to indicate the next hop IP address for the BGP module -* bgp: add neighbor\_state\_get method -* Remove hosts from edge port when link added -* ofproto\_v1\_5\_parser: Fix typo in comment -* ofproto\_v1\_4\_parser: Fix typo in comment -* ofproto\_v1\_3\_parser: Fix typo in comment -* ofproto\_v1\_2\_parser: Fix typo in comment -* python3: Fix relative imports -* doc: Include snort\_integrate page into toctree -* Add missing comment to rest\_topology -* Add EventHostAdd handler for web socket application -* test\_parser: Add test case for OFPQueuePropExperimenter -* ofproto\_v1\_3\_parser: Add OFPQueuePropExperimenter support -* ofproto\_v1\_3\_parser: Backport OFPTableFeatureProp class -* ofproto\_v1\_[45]\_parser: Add missing OFPTFPT\_EXPERIMENTER\_MISS -* ofproto\_v1\_3\_parser: Backport OFPPropBase/OFPPropCommonExperimenter4ByteData -* test\_parser: Fix some expected json representations -* ofproto\_v1\_[45]\_parser: Fix to parse experimenter\_data -* ofproto\_v1\_[345]: Define common structure for experimenter property -* ofproto\_v1\_4\_parser: Move utility method to OFPPropBase -* test\_parser: Add test case for OFP15 packet\_out -* ofproto\_v1\_5\_parser: Enable setting OFPMatch in OFPPacketOut message -* test\_parser: Add test case for OFP15 controller connection status messages -* test\_parser: Add implemented type for OFPT\_CONTROLLER\_STATUS -* ofproto\_v1\_5\_parser: Add OFPControllerStatusStats support -* ofproto\_v1\_5\_parser: Add OFPControllerStatus support -* ofproto\_v1\_5\_parser: Add OFPControllerStatusProp support -* ofproto\_v1\_5\_parser: Enable OFPRoleRequest to set short\_id -* Add register\_service to topology events -* Add EventHostAdd event -* Allow specifing match fields in ClsRule.\_\_init\_\_ -* Sprinkle StringifyMixin -* PEP8 Line length -* Remove unused import -* Stop old app on reconnection -* Use system\_id from event -* Handle disconnection during discover\_system\_id -* test\_parser: Add tests generated by packet\_data\_generator3 -* Introduce packet\_data\_generator3 -* test\_parser: prepare for tests with packet\_data\_generator3 -* Add register0 for nicira extensions -* packet\_data\_generator2: Add Makefile for GNU environment -* use idle timeout in ofctl to avoid incomplete querying -* Python 3: Fix search for bound methods -* Python 3: Filter out None values returned by getmodule(...) to fix the stack inspection -* ofproto\_v1\_5\_parser: Add OFPBundleFeaturesStats support -* ofproto\_v1\_5\_parser: Support new OFPTableFeaturesStats structure -* ofproto\_v1\_5\_parser: Add OFPBundlePropTime support -* test\_parser: Add test case for OFP15 bundle\_features request/reply -* test\_parser: Add test case for OFP15 table\_features\_request -* ofproto\_v1\_5\_parser: Add OFPBundleFeaturesProp support -* ofproto\_v1\_5\_parser: Add new table feature properties support -* test\_parser: Regen OFP15 port\_desc request packet -* test\_parser: Regen OFP15 group\_desc request packet -* test\_parser: Add test case for OXS related messages in OF1.5 -* ofproto\_v1\_5\_parser: Add OFPFlowDesc support -* ofproto\_v1\_5\_parser: Fix OFPFlowStats/OFPAggregateStats to use OFPStats -* ofproto\_v1\_5\_parser: Fix OFPFlowRemoved to use OFPStats -* ofproto\_v1\_5\_parser: Use b'str' for binary data -* ofproto\_v1\_5\_parser: Use six.binary\_type instead of buffer -* test\_parser: Add test case for OFP15 group\_desc reply -* test\_parser: Add expected json representations of OF1.5 GroupMod -* packet\_data: Regen -* packet\_data\_generator2: Generate OF1.5 GroupMod packets -* ofproto\_v1\_5\_parser: Support OF1.5 OFPGroupDescStats structure -* ofproto\_v1\_[345]: Fix backward compatibility for OFPGroupDescStats -* ofproto\_v1\_5\_parser: Support OF1.5 OFPGroupMod structure -* ofproto\_v1\_5\_parser: Add OFPGroupProp support -* ofproto\_v1\_5\_parser: Add OFPGroupBucketProp support -* ofproto\_v1\_5: Fix a typo - -v3.24 ------ - -* Ryu 3.24 -* ospf: fix serialize() to work with packet.Packet() -* of1.5: Multipart METER\_CONFIG was renamed to METER\_DESC -* of1.5: Meter statistics field flow\_count was renamed to ref\_count -* test\_parser: Add test case for OFP15 port\_desc request -* of1.5: port statistics and port descriptions use a common request format -* test\_parser: Add test case for OFP15 group\_desc request -* of1.5: group statistics and group descriptions use a common request format -* test\_parser: Add test case for OFP15 queue\_desc request -* of1.5: queue statistics and queue descriptions use a common request format -* ofproto\_v1\_[2345]\_parser: Add items method to OFPMatch/OFPStats -* Add OVSDB manager protocol application -* OF: send fin/ack in response to fin packet -* packet\_data\_generator2: Adopt upgrade of ofputil\_packet\_in -* test\_ofctl: Add some test cases of OF1.0 actions -* ofctl\_v1\_0: fix output string of ENQUEUE -* OXM/OXS: Initialize exp\_type with oxm\_field -* ofproto\_v1\_5\_parser: Add OFPPortDescPropRecirculate class -* ofproto\_v1\_5\_parser: Add OFPPortDescPropOxm class -* ofproto\_v1\_5\_parser: Move utility method to OFPPropBase -* ofproto\_v1\_[45]\_parser: Sort out the inheritance relation of OFP\*Prop -* ofproto\_v1\_[45]\_parser: Correct example of OFPPortMod -* ofproto\_v1\_[45]\_parser: Rename Port Description Properties class -* ofproto\_v1\_5\_parser: Enable setting mask in OFPActionSetField -* ofproto\_v1\_5\_parser: Add OFPActionCopyField support -* ofproto\_v1\_5\_parser: Add OFPInstructionStatTrigger support -* add host restful api -* add host discovery functions -* ignore lldp packet to avoid wrong links -* bgp: fix withdrawn label handling again -* ignore lldp packet to avoid wrong links -* declare python3 support -* bgp: fix bug of not taking care of withdrawn label -* Add registers 1-7 as nicira extensions for matching and setting -* Implement NX Resubmit-table action -* travis: run tests with python3 -* python3: Convert chr to six.int2byte -* Fix test packet data generation -* Use the asciilist type for lists of ip addresses -* python3: Misc str related fixups -* python3: Round time() return value to microseconds -* python3: Adapt to iterator change -* python3: Use b'str' for binary data -* python3: Convert str to six.binary\_type -* packet\_utils: Remove checksum() side-effect -* python3: Use {encode, decode}('ascii') for text packet data -* python3: Partially revert b'str' conversion -* python3: Use six.indexbytes for extracting single byte of data -* python3: Store AsciiStringType class data as str - -v3.23 ------ - -* Ryu 3.23 -* python3: fix bgp reggression -* python3: Misc. python3 fix -* python3: Make stringify test functional -* python3: Make ryu.utils.hex\_array functional -* python3: Use b'str' for binary data -* python3: Use six.binary\_type for I/O of ryu.lib.rpc -* python3: Use 'str' not b'str' for user test data -* python3: Restore original str()s where six.binary\_type shouldn't be used -* python3: fix bgp reggression -* Avoid string exception raising -* packet.ospf: Avoid parameter 'cls' reassignment -* Remove duplicated definitions -* test\_ofctl: Fix dynamic addition of test cases -* test\_ofctl: Some improvement -* test\_ofctl: Remove unused codes -* test\_ofctl: Add unit test for ofctl\_v1\_0 -* python3: Don't use str.encode -* python3: Remove harmful AsciiStringType.{encode, decode} -* python3: Decode return value of b64encode into str -* python3: More b'str' conversion -* python3: Calculate the number of ports as integer -* python3: encode from string to bytes for s type of pack format -* python3: Modify a literal argument in a bytes method call to bytes type -* Add support for pkt\_mark nicira ext (NXM\_NX\_PKT\_MARK) -* python3: Continuous patch to replace buffer to six.binary\_type -* python3: Continuous patch to replace str to six.binary\_type -* python3: Convert str to six.binary\_type -* python3: More b'str' conversion -* python3: Apply "2to3 -f map" -* python3: Convert str to six.binary\_type where appropriate -* python3: Use six.binary\_type instead of str for binary data -* python3: adapt @wsgi.route() -* python3: Use items instead of iteritems -* python3: Use zip instead of itertools.izip -* python3: Avoid applying ord() to integers -* python3: Use formencode instead of xml\_compare -* python3: Open packet data with binary mode -* python3: Fix dynamically added test methods -* python3: Use b'str' for binary literals -* python3: Remove use of buffer() -* python3: Use six.text\_type instead of unicode -* eventlet has already supported WebSocket(RFC6455) in stable releases (>= 0.15) -* python3: Use integer division where appropriate -* python3: Fix import issues with python2 -* python3: Use bytes type for binary data -* python3: Adapt to new iterator names -* python3: Fix starndard library imports -* ofproto: Fix ImportError on python3 -* tox.ini: Be able to run python3 unit tests -* test\_parser\_ofpstats: Add unit test for OFPStats class -* ofproto\_v1\_5\_parser: Add OPFStats parser for Flow Stats Structures -* test\_oxs: Add unit test for oxs\_fields.py -* oxs\_fields: Add OXS class support -* Clean up server socket and thread when shutting down -* Fixed the function name of out filter -* ofctl\_rest: fix error of delete\_flow\_entry -* ofctl\_v1\_0: fix output of get\_flow\_stats - -v3.22 ------ - -* Ryu 3.22 -* test\_parser: Add some expected json representations -* packet\_data: Regen -* packet\_data\_generator2: Generate conjunction packets -* Implement NXActionConjunction and conj\_id match for OF1.3 and OF1.5 -* Add missing ryu.contrib.update\_module\_path calls -* Cap pbr version -* packet\_data: Regen -* packet\_generator2: learn action -* test\_parser: Add some expected json representations -* ofproto\_v1\_5: Add legacy NXM aliases for some OXMs -* ofproto\_v1\_3: Add legacy NXM aliases for some OXMs -* Pull nx\_actions for OpenFlow 1.5 -* \_NXFlowSpec: Add type annotation for stringify stuff -* nx\_actions: Modify \_\_module\_\_ for generated classes for stringify stuff -* NXActionRegMove: Add type annotation for stringify stuff -* Adapt to namespace-less oslo -* test\_lib: Remove a questional exception re-raising -* Be able to parse classes that start with "NX" - -v3.21 ------ - -* Ryu 3.21 -* Suppress warning -* sw test tool: Fix typo -* tests: Remove some unnecessary shebangs -* packet\_data: Regen -* test\_parser: Add expected json representations -* packet\_data\_generator2: Generate OF1.3 packets where appropriate -* packet\_data\_generator2: Make the list of OF versions per messages -* tests: Fix dynamically added test cases -* tests: Remove unnecessary shebang and x bit from test\_lib.py -* test\_parser\_compat: Fix indent -* test\_parser: Try to detect test discovery failures and bail out loudly -* MANIFEST.in: Exclude packet\_data\_generator2 -* tox.ini: Pass posargs to make "tox -e py27 path.to.test" work -* bgpspeaker: Import paramiko only when necessary -* README.rst: Correct component which needs paramiko -* disable padding check for llc packets -* ryu.contrib: Be explicit about sys.path modification -* Revert recent py3 changes under ryu/contrib -* str to bytes -* 'reload' has been renamed to 'imp.reload' in Python 3 -* Integers between '/' operation become float in Python 3 -* 'string.upper' and 'string.lower' has been deprecated in Python 3 -* 'map' returns iterator like object with Python 3 -* 'izip' has been deprecated in Python 3 -* 'reduce' has been renamed to 'functools.reduce' in Python 3 -* 'long' has been deprecated in Python 3 -* 'reduce' has been renamed to 'functools.reduce' in Python 3 -* 'sys.maxint' has been deprecated in Python 3 -* 'itertools.izip()' has been deprecated in Python 3 -* 'ConfigParser' is renamed to 'configparser' in Python 3 -* '\_\_div\_\_' is renamed to '\_\_truediv\_\_' in Python 3 -* app\_manager: Clean up apps harder -* Fix ImportError(s) with Python3 -* Use range() instead of xrange() -* Reduce pep8 warnings with Python3 -* Treatment was not enough -* '+' operator can't combine no-string object -* Avoid invalid dpid and simplify the checking of ofctl version -* packet\_data\_generator2: Fix message length field -* test\_parser: Add an expected result (bundle\_add) -* packet\_data: regen (bundle\_add) -* packet\_data\_generator2: Add bundle\_add -* test\_parser: Add an expected result (flow\_mod) -* packet\_data: regen (flow\_mod) -* packet\_data\_generator2: clear XID field -* packet\_data\_generator2: Add flow\_mod -* test\_parser: Add a expected result (bundle\_ctrl) -* packet\_data: regen (bundle\_ctrl) -* packet\_data\_generator2: Add bundle\_ctrl -* of15: Implement OFPBundleCtrlMsg parser -* packet\_data\_generator2: README -* Show warning when Datapath#ports is read -* Syntax level compatibility with Python 3 - -v3.20 ------ - -* Ryu 3.20 -* rest\_firewall: Prevent adding fields which is unrelated to match -* ofctl\_v1\_[23]: Ignore unkown match fields -* Revert "pip-requires: Remove comments" -* test\_parser: Enable OpenFlow 1.5 tests -* test\_parser: Add a expected result -* packet\_data: regen -* packet\_data\_generator2: another packet data generator using libofproto -* pip-requires: Remove comments -* lib.ovs.vsctl: Fix a crash -* bmp: fix bug of logging format in bmpstation -* ofctl\_rest: Reduce pylint warnings -* doc/app/ofctl\_rest: Fix example of ipv6\_exthdr match field -* test\_ofctl: Add unit test for masked ipv6\_exthdr match field -* ofctl\_v1\_3: Support masked ipv6\_exthdr match field -* requirements: Drop some optional requirements -* README.rst: Replace a reference to ryu-plugin with ofagent -* pip-requires: Add comments to say what's required by what -* UT: Remove unused imports -* bgp: Remove an unused import -* yet more logging call cleanups -* ryu.app.ofctl: Handle a race with connection close -* silence pep8 warnings to the previous commit -* Reduce logging overhead by cleaning up logging calls - -v3.19 ------ - -* Ryu 3.19 -* snortlib: Remove disabled flag MSG\_WAITALL -* ryu.cfg: Use a dedicated ConfigOpt instance -* snortlib: Fix nw\_sock handling -* of: Prevent \_\_str\_\_() methods from raising exceptions -* bgp: Prevent \_\_str\_\_() methods from raising exceptions -* packet lib: dhcp: Fix to calculate Hardware address length -* travis-ci: use container-based infrastructure for faster testings -* Move msg\_pack\_into from ofproto to lib -* tox.ini: Disable pep8 W503 for now -* bgp/bmp: bug fix. remove redundant construction of path attributes -* Move the definitions of ether types and inet protocols to lib.packet -* ofproto: Fix invalid error code OFPQCFC\_EPERM -> OFPSCFC\_EPERM (EXT-208) -* ofproto: Openflow 1.5 support (work-in-progress) -* ignore some pep8 errors for now -* test\_oxm: Add tests for EXT-109 and EXT-233 -* ofproto\_v1\_3: Implement EXT-109 and EXT-233 -* oxm\_fields: Rename ONFExperimenter to OldONFExperimenter -* oxm\_fields: Update comment for the new version of EXT-256 -* bgp: support of new api for "show neighbor" -* bgp: Fixed error in bgp implementation with single peer -* bgp: fix bug of Path formatting in "show neighbor" - -v3.18 ------ - -* Ryu 3.18 -* bgp: bug fix of sending Adj-RIB-Out -* ryu-manager: add --enable-debugger option -* bgp/cli: fix internel data destruction due to cli show command -* bgp: remove unnecessary bgp update construction -* bgp: fix bug of NameError: global name 'sent\_route' is not defined -* bmpstation: bug fix. stop closing fds which are in use -* bgp: don't hold withdrawn routes in adj\_rib\_in -* bgp/bmp: send unmodified BGPUpdate to bmp server -* Add parsing libpcap and reading/writing PCAP file -* nx\_actions: Avoid confusing StringifyMixin -* nx\_actions: Implement nx\_action\_learn -* test\_nx\_flow\_spec: Add UTs for NX flow\_mod\_spec -* nx\_actions: Implement NX flow\_mod\_spec -* type\_desc: Separate type conversion classes from oxm\_fields -* nx\_actions: Remove redundant initializations -* Implement nx\_action\_reg\_move for OpenFlow 1.3 -* doc/app/ofctl\_rest: Add description for OFPAggregateStats message -* ofctl\_rest: support OFPAggregateStats message -* doc/app/ofctl\_rest: Add description for OFPQueueStats message -* ofctl\_rest: support OFPQueueStats message -* test\_oxm: Add UTs for 64-bit experimenter OXMs -* test\_oxm: dedicated UTs for oxm\_fields module -* oxm\_fields: Fix 64-bit experimenter OXM support -* oxm\_fields: Fix oxm\_length calculation for experimenter OXMs -* oxm\_fields: Add header-only variants of serializer/parser -* oxm\_fields: Prefix internal functions with \_ for readability -* oxm\_fields: Add comments -* OF 1.0: Use ofproto\_common.NX\_EXPERIMENTER\_ID instead of NX\_VENDOR\_ID -* nicira\_ext: Separate the most of NX definitions from ofproto\_v1\_0 -* Cleanup isinstance(foo, (int, long)) -* doc/app/ofctl\_rest: Add descriptions for duration\_nsec field -* of\_v1\_0: Fixed the flow format logic to set it correctly when registers matches are set -* of\_v1\_0: Added support for the NXM\_NX\_TUN\_IPV4\_{SRC & DST}[\_W] fields -* ospf: fix wrong OSPF LSA type -* bgp: support of understanding assigned mpls-label for prefix\_add in vpnv4 -* ofctl\_v1\_0/2/3: Fix unsuitable log level - -v3.17 ------ - -* Ryu 3.17 -* ospf: add SummaryLSA class -* ofctl\_v1\_2, 3: Fix regression of IP arbitrary bitmask support -* bgp: bug fix of timestamps of BMPRouteMonitoring in bmp.py -* topology/switches: add of1.2+ support for the drop\_packet function -* bgp: Fix filter message variable -* bgp: support New best path selecting -* ofctl\_rest: Fix clear flow entries command -* rest\_qos: fix error of additional a qos rule with "priority" -* rest\_qos: fix a comment -* bgp: support new handler in case of changing BGP session -* doc/app/ofctl\_rest: Add description for capabilities field in OPFMeterFeatures -* ofctl\_v1\_3: Fix to parse capabilities field in OPFMeterFeatures -* ofproto\_v1\_[234]\_parser: Add notes for vlan\_vid match field - -v3.16 ------ - -* Ryu 3.16 -* packet lib: don't crash with bogus ospf packet -* bmp: bug fix of peer bgp ID in BMP Message -* doc/app/ofctl\_rest: Add command examples for OFPVID\_NONE/PRESENT -* ofctl\_v1\_2/3: Fully support the match combinations for VLAN ID -* fix security problem of some RESTful apps -* Workaround of os.path.samefile -* test\_ofctl: Modify to use new match api and field parser -* ofctl\_v1\_/2/3: Modify to\_match() to use new match api -* ofctl\_v1\_/2/3: Modify match\_to\_str() to use new match field parser -* bgp: bug fix of handling nexthop for eBGP peering -* test\_utils: Add unit test for ryu.utils -* utils: Fix bytearray conversion -* test\_ofctl\_v1\_2/3: Add a test case of masked metadata -* test\_ofctl\_v1\_2/3: Fix some test cases -* bgp: bug fix of Multi Exit Discriminator (MED) -* ofctl\_rest: fix some mistypes -* doc/app/ofctl\_rest: Correct command examples -* fix security problem of some RESTful apps -* bgp: support connect modes to choose how to connect to the neighbors -* bgp: enable to stop a chile thread by specifying its name -* bgp: fix lacking import -* bgp/cli: show adjacency rib in/out by show neighbor commands -* ofctl\_v1\_0: Add remaining actions -* doc: Add tables about match and actions structures -* bgp: remove uncommon open msg check -* bgp: fix \_OptParamCapability parser - -v3.15 ------ - -* Ryu 3.15 -* simple\_switch\_12: handle non-buffering switch -* simple\_switch: handle non-buffering switch -* simple\_switch\_13.py: Added ability to use buffer\_id in FlowMod -* simple\_switch\_13: Added a logging when running in --verbose for truncated packets -* bgp: supporting best\_path\_change\_handler for Vpnv4/6 prefix in BGPSpeaker -* rest\_router: fix security problem -* packet lib: don't crash with truncated dhcp packet -* packet lib: don't crash with corrupted lldp packet -* ofctl\_v1\_0: match\_to\_str() does not convert nw\_tos correctly -* bgp: fix bug of ASPathFilter in case of iBGP peering -* stplib.py: Should wildcard non-relevant bits in the mask field of port mod message for OpenFlow 1.2+ -* simple\_switch\_14: Update a comment about OVS bug -* simple\_switch\_13: Update a comment about OVS bug -* Add a simple switch for Openflow 1.4, an easy adaption of SimpleSwitch13 -* sw test tool: Fix typos -* ofproto\_v1\_4: Add tun\_ipv4\_src and tun\_ipv4\_dst NXMs -* test\_parser: Update expected json representations -* packet\_data: Regen -* packet\_data\_generator: Add tun\_ipv4\_src and tun\_ipv4\_dst for OF1.3 -* ofproto\_v1\_3: Add tun\_ipv4\_src and tun\_ipv4\_dst NXMs -* oxm\_fields: Add Nicira Extended Match (NXM) support -* oxm\_fields: Add comments -* oxm\_fields: Avoid shadowing python builtin -* travis: Run tests via tox -* test\_addrconv: Fix a way to import the tested module -* test\_parser: Make this independent from test environment path -* tox.ini: Add pep8 environment -* pyang\_plugins: pep8 style fix -* bgp: fix pep8 warnings -* bgp: supporting loopback interface as neighbour\_source\_address for iBGP -* bfdlib: follow TTL/hop limit in RFC5881 explicitly -* doc: add lib.packet.bfd classes to library\_packet\_ref -* lib: add IPv4 single hop BFD (RFC5881) support -* unit test for lib.packet.bfd -* packet lib: add BFD support -* ofctl\_v1\_0/2/3: check lock timeout by lock.is\_set() -* test: add unittests for of1.3 parser -* of12/3: support setting the oxm\_value to OFPVID\_NONE -* ofproto\_v1\_4\_parser: Handle experimenter OXMs in TableFeatures -* ofproto\_v1\_3\_parser: Handle experimenter OXMs in TableFeatures -* oxm\_fields: Add a comment -* bgp: support next\_hop\_self - -v3.14 ------ - -* Ryu 3.14 -* doc: Add ryu.app.ofctl\_rest document -* of: Fix name of class member variables -* gui\_topology: fix to work using WebSocket -* bgp: ignore link-local address -* bgp: local preference support IPv6, VPNv4/v6 route family -* Improve debug messages for unsupported request Log correct debug message -* Fix spell check in group feature message Maintain name consistency in meter type in Meter Features message in OF 1.3 Add length field in group statistics reply in OF 1.2 -* sw test tool: fix an error caused by changing enum name in of1.4 -* ofctl: Add default value to type field of OFPGroupMod -* of: Add missing fields in OpenFlow statistics messages -* of: Fix Enum Names and Values -* of: Fix Enum Name for Bad Instruction Code Corrected Reset Count enum name -* bgp: local preference support -* sw test tool: add unit test -* sw test tool: add a comment about specifying the port number support -* sw test tool: support specifying the port number -* ofctl\_v1\_0: correct flow modify message -* ryu.cfg: Fix a comment -* ofa\_neutron\_agent: Add a comment to explain what uses this -* ofp\_pktinfilter: add 'logging' option -* Snort Integrate: -* bgp: rpc-api 'core.start' method in Network Controller -* import BGPPathAttributeCommunities in peer manager -* bmp: add client information to each bmp message - -v3.13 ------ - -* Ryu 3.13 -* ws\_topology: bugfix an event is dropped -* bgp: should not use dict comprehension -* Snort integrate: Add the snort lib supporting snort integration. Add an sample application simple\_switch\_snort.py which can dump alert message -* packet lib: add linux cooked header support -* doc: update obsolete Linux kernel SubmittingPatches url -* packet bmp: fix Peer Down Reason -* bgp: add parameter 'label\_ranges' for 'core.start' method in BGPSpeaker -* ofctl\_rest: support OFPFlowStats filtered by fields -* bgp: reduce duplicate codes with helper\_function -* sw test tool: add a "note" for help to understand -* bmpstation: make configurable through environment variables -* bgp: make reserved private variable -* bgp: encode 'next\_hop' in human readable format -* bgp: use \_class\_suffixes to support various AddrPrefix -* stringify: introduce \_class\_suffixes for easy jsonize -* bgp: move \_TYPE declaration of IPAddrPrefix to the appropriate place -* bgp: add support for RFC3107 -* fix setup.cfg entry -* bgp: simplify CLUSTER\_LIST attribute parser -* bgp: fix bug of receiving 'RouteRefresh' Message -* bgp: refine the API for connecting to bmp server -* bgp: add BGP capability code 64 (graceful restart) -* bgp: add attribute ORIGINATOR\_ID and CLUSTER\_LIST -* bgp: move ssh configuration to bgp config file -* bgp: add route server function to bgpspeaker -* bgp: fix bug of labels formatting for show VPNv4 prefix information -* bgp: fix bug of Path(Origin) formatting for show VPNv4 prefix information -* bgp: show VPNv4 Prefix information -* packet/bgp: add open capability code of 128 -* bgp: support add/delete vpnv6 prefix -* bgp: support add/delete VPNv6 VRF -* app/bmpstation: fix to work with empty BMPMessage -* packet/bmp: fix bug of BMP Peer Down Notification class -* packet/bgp: add 32bit AS number support to BGPPathAttributeAsPath -* added parameter for vrfs\_get (in case of format = 'cli') -* added parameter for rib\_get - -v3.12 ------ - -* Ryu 3.12 -* ofctl\_rest: Add support for strict matching -* bgp: fix conflict of PEER\_NEXT\_HOP and NEXT\_HOP value -* bgp: add code to handle RD 0:0 at the head of nexthop network address in MP\_REACH\_NLRI path attribute -* bgp: add parameter for site\_of\_origins to neighbor\_add and vrf\_add method -* bmpstation: add copyright -* app: add simple bmp station application -* bgp: add bmp client function -* bmp: add unit test -* packet lib: add bmp(BGP Monitoring Protocol) -* packet lib: sctp: fix default arguments -* packet lib: udp: fix default arguments -* packet lib: tcp: fix default arguments -* packet lib: ipv6: fix default arguments -* packet lib: ipv4: fix default arguments -* bgp: fix bugs related to filter -* bgp: fix AttributeError bug -* bgp: fix NameError bug -* ofproto\_v1\_4\_parser: Remove a stale comment on OFPTableFeaturesStatsReply -* ofproto\_v1\_3\_parser: Remove a stale comment on OFPTableFeaturesStatsReply -* bgp: make 'core.reset\_neighbor' API asynchronously -* bgp: add show neighbor command to ssh client -* bgp: refine and fix filter code -* bgp: manage filter in a peer instance instead of rtconf -* bgp: create adjacent rib in peer instance -* bgp: add in-filter function -* bgp: enable filter configuration via configuration file -* bgp: move filter class under info\_base/ -* ofctl\_v1\_2/3: fix unsuitable log -* ofctl\_v1\_2/3: fix tcp\_dst/src match fields -* unit test for ofctl\_v1\_2/3 -* bgp: add neighbor\_reset method to bgpspeaker -* bgp: remove an unused variable from bgpspeaker -* bgpspeaker: refine logs -* bgp: make marker private variable -* bgp: fix bug when restart neighbor -* bgp: add neighbor\_update -* bgp: add med parameter to neighbor\_add -* bgp: shut up runtime warning due to configuration file loading -* bgp: fix bug in net\_ctrl listen\_tcp -* bgp: fix logic for checking BGP capability -* bgp: fix the way of getting RouteFamily object -* bgp: add out-filter function -* ofctl\_rest: enable getting Description of a port -* ofctl\_rest: support Port Modification Message -* ws\_topology: fix typo -* Correct tcp option values in the test set -* ofctl\_v1\_2/3: fix POP\_MPLS action and some match fields -* adding FloatOpt to the config parser -* add --pid-file option to cli -* bgp: support specifying nexthop per prefix -* pip-requires: gui\_topology requires webob>=1.2 -* bgp: fix send\_notificaiton crash - -v3.11 ------ - -* Ryu 3.11 -* ospf: describe prefix in one attribute 'prefix' for ease of use -* ospf: add segment routing opaque types -* ospf: fix bug in encoding -* ospf: support for opaque message -* bgp: support md5 authentication for re-active sessions -* bgp: support md5 authentication for pro-active sessions -* bgp: fix withdraw in EventPrefix notification -* sw test too: use assured Forwarding behavior DSCP value for dscp\_remark -* bgp: support specifying next hop for neighbor -* bgp: add IPv6 advertisement support -* packet/bgp: fix BGPPathAttributeMpReachNLRI next\_hop parser and serializer -* bgp: clean up getpeername() and getsockname() usage -* Initializing the variable 's' so that the get\_desc\_stats() call does not cause an exceptions when there are no messages -* Add a small library to deal with TCP-MD5 socket option -* doc: improve the appearance of the table -* doc: leave out too large samples -* bgp: add ssh\_console option for bgpspeaker module -* document: ryu.app.gui\_topology -* sw test tool: Add default test files (of14: new features) -* sw test tool: Add default test files (of14: group:all/select) -* sw test tool: Add default test files (of14: meter) -* sw test tool: Add default test files (of14: match) -* sw test tool: Add default test files (of14: action with set-field only) -* sw test tool: Add default test files (of14: action without set-field) -* sw test tool: run\_mininet: support Open vSwitch with OpenFlow 1.4 -* sw test tool: Modify OFPActionSetField to normalize -* sw test tool: Modify OFPMatch to normalize -* sw test tool: Enable using connected switches to compare -* sw test tool: Enable using user-specified versions to parse -* sw test tool: Add support for using user-specified versions -* ryu/flags: Add config parameters related sw test tool -* sw test tool: Modify conditions of ofp\_packet\_in\_reason -* bgp: fix ipv6 peering regression -* bgp: fix best\_path\_change\_handler for best\_path\_lost -* bgp: fix example code -* bgp: fix another crash (recv\_open -> recv\_open\_msg) -* bgp: fix some leftover of transition to packet lib bgp -* bgp: fix a crash in path comparison -* library\_bgp\_speaker.rst: make an example more complete -* ofa\_neutron\_agent: Change the copyright notice -* ofa\_neutron\_agent: Remove unused logger instance -* ofa\_neutron\_agent: Use AppManager.run\_apps -* AppManager: Add a convenient method to run apps -* ofa\_neutron\_agent: Simplify -* app\_manager: prevent loading unnecessary RyuApps -* package: add python-ryu-doc -* sw test tool: Enable IPv6 flow label maskable -* document ryu.app.ofctl -* ws\_topology: shut up pep8 for long lines in a comment -* bgp: support IPv6 peering -* Add GUI app -* ws\_topology: Handle WebSocket disconnection -* ws\_topology: Avoid controller name confliction -* add debian files to make packages for Ubuntu -* app\_manager: Stop checking h.callers in get\_handlers() -* bgp: catch socket error with sendall -* bgp: use sendall with lock -* bgp: use TCP\_NODELAY for bgp connection -* ryu.lib.hub: add logging wrapper for wsgi server -* contrib: import tinyrpc library -* downgrade required version of msgpack-python -* app\_manager: Let application module to use require\_app() -* bgp: add bgpspaker module for non Ryu application usage -* fix failure of instantiating app -* fix: wrong copyright -* sw test tool: Improve readability of IP mask values -* sw test tool: Improve readability of MAC mask values -* sw test tool: Improve readability of padding data -* sw test tool: Improve readability of tcp options -* rest\_qos: Enable queue setting to interface individually -* packet lib: add Connectivity Fault Management Protocol(CFM, IEEE 802.1ag) -* app\_manager: Fix a crash in unregister\_handler - -v3.10 ------ - -* Ryu 3.10 -* doc: add test-of-config-with-linc page -* doc: add test-vrrp page -* ofctl\_v1\_2: fix errors of get\_flow\_stats -* ofctl\_v1\_2: fix pep8 -* bgp: remove unnecessary OutgoingRoute attribute 'bgp4\_format' -* bgp: fix typo -* bgp: fix bug of exchanging paths between vrf and global\_table -* packet/bgp: add route distinguisher classes and refine codes -* bgp: keep and use nexthop value as a string internally -* ofctl\_v1\_2/3: MAC arbitrary bitmask support -* bgp: add 'neighbors.get' and 'show.rib' JSON RPC API -* bgp: add JSON RPC API -* bgp: set bgp-config-file default None -* bgp: fix non configured peer exception -* bgp: import lacking constants -* doc: add components page -* bgp: use host's ssh host key if not specified -* sw test tool: Add default test files (group:all/select) -* sw test tool: Enable sending packets using random values -* sw test tool: Enable parsing OFPGroupMod messages in 'prerequisite' -* sw test tool: Add support for confirmation of installed group entries -* sw test tool: Add support for installation of group tables -* sw test tool: Add support for initialization of group tables -* sw test tool: Add a link between switches -* wsgi: add ws\_topology application -* rest\_topology: use decorator api -* sw test tool: pylint -* sw test tool: Reduce similar methods of checking entries exist -* sw test tool: Reduce similar methods of handling events -* sw test tool: Reduce similar methods of initializing flows -* sw test tool: Reduce similar methods of deleting flows -* sw test tool: Reduce similar classes -* sw test tool: Remove an unnecessary wrapper method -* simple\_switch\_websocket\_13: Add get\_arp\_table RPC method -* pip-requires: WebSocket-RPC requires tinyrpc -* Add WebSocket JSON RPC feature -* simple\_switch\_websocket\_13: fix typo -* New API for WebSocket support -* Add PacketIn dumper websocket application -* wsgi: Support WebSocket -* Import eventlet.websocket from master branch -* hub: import semaphore -* tester: cleanup the code of couting the results -* tester: let each attribute of meter had a chance to be compared -* add openflow api reference for of1.4 -* app/rest\_qos: fix pep8 -* add pep8 options to tox.ini -* tests/unit: fix pep8 -* tests: fix pep8 -* services/protocols: fix pep8 -* lib/xflow: fix pep8 -* lib/packet: fix pep8 -* lib/of\_config: fix pep8 -* lib: fix pep8 -* controller: fix pep8 -* app: fix pep8 -* topology/switches: fix pep8 -* base/app\_manager: fix pep8 -* ofproto: fix pep8 -* Added rest\_qos module -* packet/bgp: bug fix of route target nlri class -* bgp: fix bug of accessing dead socket -* bgp: improve how to show rib -* bgp: fix typo -* packet/bgp: enhanced route refresh support -* packet/bgp: fix bug in serializing AS PATH path attribute -* bgp: add ssh client -* bgp: fix wrong module path -* packet/bgp: add helper methods to nlri class for bgp ssh client -* bgp: don't block at start method -* bgp: bug fix when the peer initiated the connection -* bgp: remove unnecessary log message -* set default attributes for OFPPortMod -* sw test tool: pylint -* sw test tool: Remove unused codes -* sw test tool: Reduce similar methods -* Added queue stats request -* Added ovs-vsctl commands of QoS-related - -v3.9 ----- - -* Ryu 3.9 -* sw test tool: Modify lengths of pad fields for ARP -* sw test tool: Revert changes of test files -* tests/integrated: Enable MPLS set-field and push MPLS tests -* tests/integrated: Match on MPLS dl\_type for flows with MPLS TTL actions -* tests/integrated: Match on MPLS dl\_type for flows with pop MPLS actions -* tests/integrated: Match on IP dl\_type for flows with set IPv6 addresses -* tests/integrated: Enable ARP tests -* tests/integrated: Match on IP dl\_type for flows with set NW TTL actions -* tests/integrated: Match on VLAN tag for flows which set VLAN tags -* tests/integrated: Match on VLAN tag for flows with pop VLAN TTL actions -* tests/integrated: Match on IP dl\_type for flows with dec NW TTL actions -* tests/integrated: Do not verify buffer\_id of packet\_in resulting from packet\_out -* sw test tool: Modify lengths of pad fields for ARP -* packet lib: ipv6: support Routing header (type3) -* sw test tool: Fix MAC addresses used in tests -* tests/integrated: Use table\_id greater than the current table for goto-table instruction -* tests/integrated: Specify table\_id for flow\_mod modify tests -* bgp: fix connect timeout error -* bgp: add \_\_init\_\_.py files -* packet lib: ipv6: Fix to calculate AH length -* bgp: fix pep8 -* bgp: add sample configuration file -* bgp: improve log visibility -* bgp: avoid the trouble of having to explicitly specify IDs in configuration -* bgp: enable to use system IP addr implicitly for binding -* bgp: enable default label range -* bgp: make bgpspeaker RyuApp -* bgp: use ryu.lib.hub instead of the direct use of eventlet -* bgp: clean up codes which constructs an update message -* bgp: fix typo -* remove obsolete man pages (rpc\_cli and neutron\_ofagent\_agent) -* delete bin/neutron-ofagent-agent -* delete ryu/tests/bin/of-config-cli -* delete bin/rpc-cli -* document ryu command -* add bin/ryu to PYLINT\_INCLUDE -* add bin/ryu -* pip-requires: require oslo.config >= 1.2.0 -* allow overriding argv and progname -* ryu.cfg: re-export some more stuff for convenience -* sw test tool: Fix to compare OFPMatch using masks without byte boundary -* bgp: remove original bgp packet library -* bgp: use ryu bgp packet library instead of original one -* bgp: add stuff for integration with bgp speaker -* Rename to CONTRIBUTING.rst -* of14: set default attributes for group-related classes -* of13: set default attributes for group-related classes -* of12: set default attributes for group-related classes -* sw test tool: Correct the comparison method to treat matches as the set -* sw test tool: Fix to compare OFPMatch ignoring fields that masks are all zero bits -* sw test tool: Fix to compare OFPMatch ignoring masks that are all one bits -* fix pbb itag related tests -* RyuApp: delete a key without handlers when unregistering a handler -* ryu.app.ofctl: raise exceptions on openflow error messages -* ryu.app.ofctl: implement multipart -* ryu.app.ofctl: implement reception of reply message -* ofp\_event: add a function to find Event class for given OFP class -* RyuApp: add methods to observe/unobserve specific event dynamically -* RyuApp: allow observing events without having handlers -* RyuApp.get\_handlers: restructure code and add a comment -* RyuApp: add a method to unregister a handler -* controller.handler: simplify code -* controller.handler: use normal classes rather than a namedtuple -* controller.handler: g/c now unused code -* igmplib: Fix a problem that querier stops sending a query message - -v3.8 ----- - -* Ryu 3.8 -* bgp: fix pep8 -* bgp: enable to propagate ipv4 networks -* bgp: improved debug message in neighbor creation -* bgp: changed default configuration value for ease of use with bgp4 -* bgp: use hub.Event to wait for the core\_service boot instead of sleep -* bgp: enable to show ipv4 rib -* bgp: send BGP UPDATE msg in BGP4 format when nlri is ipv4 -* bgp: handle non-MPBGP UPDATE msg -* bgp: remove inappropriate assertion assuming only MPBGP (not BGP4) -* bgp: fix wrong path -* add BGP daemon feature -* ofctl\_v1\_3: Fix to enable using meter flags multiply -* stplib: reduce unnecessary constant -* sw test tool: Add default test files (meter) -* sw test tool: Add support for throughput analysis -* sw test tool: Enable throughput analysis -* sw test tool: Add support for getting throughput -* sw test tool: Add support for installation of flows for throughput analysis -* sw test tool: Add support for deletion of flows for throughput analysis -* sw test tool: Enable parsing a new 'egress' format -* sw test tool: Enable sending packets continuously -* sw test tool: Rename STATE\_UNMATCH\_PKT\_SEND to STATE\_SEND\_BARRIER -* sw test tool: Refactor packet sending processes -* sw test tool: Add support for sending packets continuously -* sw test tool: Enable parsing a new 'ingress' format -* sw test tool: Enable parsing OFPMeterMod messages in 'prerequisite' -* sw test tool: Add support for confirmation of installed meter entries -* sw test tool: Add support for installation of meter entries -* sw test tool: Add support for initialization of meter tables -* sw test tool: Rename STATE\_INIT to STATE\_INIT\_FLOW -* remove ryu.cmd.ofa\_neutron\_agent from console\_scripts in setup.cfg -* of: set TCP\_NODELAY for secure channel socket -* vrrp tests: update comments -* vrrp.api: request ryu.services.protocols.vrrp.manager -* ryu.topology.api: request ryu.topology.switches -* test\_vrrp\_multi.sh: allow overriding ovs-vsctl -* vrrp: update after ryu.topology.api change -* rest\_topology: update after ryu.topology.api change -* topology: split out exported API from the implementation -* ofa\_neutron\_agent: no need to load ofctl.service explicitly anymore -* ryu.app.ofctl.api: request ryu.app.ofctl.service -* app\_manager: add a function to request to load the server application -* doc: remove a stale reference -* add ryu-manager to PYLINT\_INCLUDE -* ofctl\_rest: use multistage @set\_ev\_cls -* enable multistage @set\_ev\_cls or @set\_ev\_handler -* ofproto: get rid of fragile and slow glob'ing modules -* topology/switches: duplicate datapath connections handling -* Add request forward message unit test -* Add request forward message support -* of14: Add bundle add message unit test -* of14: Add bundle add message support -* Allow messages inside messages -* ofctl\_v1\_2:support whole of match fields -* rest\_router: fix OFPSetAsync bit mask -* ofp\_event: fix a typo -* ofctl\_v1\_2/3: IP arbitrary bitmask support -* sw test tool: Fix a problem for disconnection -* of14: Add bundle control message unit test -* of14: Add bundle control message support -* of14: Remove incorrect OFP\_ASYNC\_CONFIG\_{PACK\_STR, SIZE} -* of14: Update get async reply and set async implementation to follow spec -* of14: Add OFPAsyncConfigProp -* of14: Add table status unit test -* of14: Add table status support -* of14: Add flow monitor reply message unit test -* of14: Add flow monitor request unit test -* packet\_data\_generator: New ofproto dependency for v5 updates -* of14: Add flow monitor reply support -* of14: Add flow monitor request support -* of14: Add OFPFlowUpdate -* dpset: absorb \*args, \*\*kwargs passed to \_\_init\_\_ -* ofctl\_v1\_2/3: Convert IP fields to string with dotted decimal mask -* sw test tool: avoid test termination in initialization -* ofctl\_v1\_2: Fix unsuitable log -* ofctl\_v1\_3: Fix unsuitable log -* library\_packet.rst: fix an example code -* pyang plugin to generate of\_config.generated\_classes -* fix NX\_EXPERIMENTER\_ID -* reduce direct uses of oslo.config.cfg.CONF -* ryu.cfg: re-export some frequently used stuff for convenience -* add ryu.cfg -* ryu.conf: obsoleted argument used in sample configuration -* ofctl\_v1\_2/3: IPv4 dotted decimal subnet mask support - -v3.7 ----- - -* Ryu 3.7 -* test\_parser: update expected json representation -* OFPPropCommonExperimenter4ByteData: change payload to bytes -* Apply normalize\_json.py -* of14: Correct documentation of table mod flags and properties -* of13: Correct documentation of meter mod flags -* of13: Correct documentation of flow mod flags -* of13: Correct documentation of set config flags -* of13: Correct documentation and example of get config reply flags -* of14: Correct documentation of flow mod flags -* of14: Correct documentation of meter mod flags -* of14: Correct documentation of set config flags -* of14: Correct documentation and example of get config reply flags -* of14: set default attributes for meter-related classes -* of13: set default attributes for meter-related classes -* fix load\_apps() in AppManager class -* six.add\_metaclass requires six>=1.4.0 -* of14: Add experimenter property to port mod reply unit test -* of14: Add port mod experimenter property -* of14: Add optical property to port mod reply unit test -* of14: Add port mod optical property -* of14: Remove \_PACK\_STR from port mod ethernet property -* of14: Add experimenter property to port stats reply unit test -* of14: Add port stats experimenter property -* of14: Add optical property to port stats reply unit test -* of14: Add experimenter property to port status unit test -* ofctl\_v1\_3:support whole of match fields -* of14: Add port stats optical property -* of14: Add experimenter property to queue stats reply unit test -* of14: Add queue stats experimenter property -* of14: Rename QueueProp as QueueStatsProp -* of14: Add experimenter property to table features request unit test -* of14: Add experimenter property to table features reply unit test -* of14: Add table feature experimenter property -* of14: Add table feature table sync from property -* of14: Add experimenter property to port desc reply unit test -* of14: Add port desc experimenter property -* of14: Add optical property to port desc reply unit test -* of14: Add optical property to port status unit test -* of14: Add port desc optical property -* of14: Add action experimenter to flow mod unit test -* of14: Add action experimenter support -* of13: Add experimenter property to table features reply unit test -* of13: Add experimenter property to table features request unit test -* of13: Add table feature experimenter property -* ofproto\_v1\_3\_parser: update OFPActionSetField docstring -* ofproto\_v1\_2\_parser: update OFPActionSetField docstring -* ofproto\_v1\_4\_parser: update OFPActionSetField docstring -* of14: Remove supruious comment from OFPPropBase -* of14: Add role status unit test -* packet\_data\_generator: of14: Add role status message -* of14: Add role status support -* of14: Add OFPRoleProp -* of14: Add OFPPropCommonExperimenter4ByteData -* of14: Add queue desc reply unit test -* packet\_data\_generator: of14: Add queue desc reply -* of14: Add queue desc request support -* of14: Add queue desc request unit test -* packet\_data\_generator: of14: Add queue desc request -* of14: Add queue desc request support -* of14: Add OFPQueueDesc -* of14: Add OFPQueueDescProp -* of14: table mod with properties -* of14: Add properties support to flow mod -* of14: Add OFPTableModProp serialization -* of14: Add table desc unit tests -* packet\_data\_generator: of14: Add table desc -* of14: Add table desc request and reply message support -* of14: Add OFPTableDesc -* of14: Add OFPTableModProp -* sw test tool: fix missing to receive error of PacketOut -* of13: support OFPAactionExperimenter with data -* sw test tool: fix pop\_pbb action -* of14: Document OFPRR\_{METER\_DELETE, EVICTION} reasons for flow removed message -* sw test tool: add test report output -* ofproto: correct typo -* test\_add\_flow\_v12\_actions: fix a typo -* rename neutron agent from "ofswitch" to "ofagent" -* of13/14: fix OFPFMFC\_TABLE\_FULL typo -* ofconfig: add commit and discard\_changes operation support -* of\_config: add OFPortStateType class -* topology: support OF1.2 and 1.4 -* handler.register\_service: comment -* use six.add\_metaclass -* pip-requires: sort in alphabetical order -* of14: set default attributes for OFPMeterMod -* of13: set default attributes for OFPMeterMod -* neutron-ofswitch-agent man page -* setup.cfg: add neutron-ofswitch-agent to console\_scrpits -* run\_tests.sh: add neutron-ofswitch-agent to PYLINT\_INCLUDE -* neutron-ofswitch-agent: neutron agent for ofswitch ML2 mechanism driver -* ofproto\_v1\_3\_parser: add a comment about extensions support -* pbb: add a comment -* of\_config\_cli: remove a unused import -* run\_tests.sh: add of-config-cli to PYLINT\_INCLUDE -* ofctl\_v1\_3: let action group can be converted to string -* sw test tool: FIX: return the transaction id when flow entries were deleted -* sw test tool: correct the comparison method to treat instructions as the set -* sw test tool: correct error message -* sw test tool: remove unnecessary debug code -* of12: fix InstructionWriteMetadata json decoder -* sw test tool: fix wrong match(ipv6\_exthdr) value of test file -* sw test tool: fix wrong instruction(write metadata) value of test files -* test\_ofctl\_v1\_3: replace a hack with ProtocolDesc -* test\_parser\_v12: replace a hack with ProtocolDesc -* test\_ofp\_pktinfilter: replace a hack with ProtocolDesc -* ProtocolDesc: provide supported\_ofp\_version for ofp\_handler -* ofproto\_protocol: fix UnboundLocalError -* tests: add a test case for ofproto\_protocol -* test\_ofp\_pktinfilter: simplify -* OFPGroupMod: Fix OFPGC\_\* typo in examples -* test\_parser: replace a hack with ProtocolDesc -* controller: use ProtocolDesc -* ofproto\_protocol: provide a class to describe an openflow version -* ofproto\_v1\_3\_parser: import ofproto\_v1\_3 as 'ofproto' -* ofproto\_v1\_2\_parser: import ofproto\_v1\_2 as 'ofproto' -* ofproto\_v1\_0\_parser: import ofproto\_v1\_0 as 'ofproto' -* of14: Add to ofproto unit tests -* of14: Add port mod message support -* of14: Add queue stats request and reply message support -* of14: Add port stats request and reply message support -* of14: Add generic OFPropBase class -* of14: Rename OFPPortDescPropUnknown as OFPPortPropUnknown -* of14: Add port status message support -* of14: Add meter mod message support -* of14: Add OFPMeterBandDscpRemark and OFPMeterBandExperimenter -* of14: Move OFPMeterBand\* to above OFPMeterConfigStats -* of14: Add table features stats request and reply message support -* of14: Add \_ordered\_fields to .4 OFPMatch -* of14: Fix OFPInstructionWriteMetadata JSON decode -* of14: set default attributes for OFPMultipartRequest subclasses -* of14: add some assertions - -v3.6 ----- - -* Ryu 3.6 -* of13: set default attributes for OFPMultipartRequest subclasses -* of12: set default attributes for OFPStatsRequest subclasses -* allow application to specify its logger name -* fix syslogd usage on OSX -* vrrp: fix busy timer by the default parameter -* of14: fix OFPMatch from\_jsondict method -* of14: Fix OFPInstructionMeter json format -* of14: default ethernet type for PUSH\_VLAN action -* of14: set default ethernet types for MPLS actions -* of14: remove of1.2/1.3 old SetField aciton API -* doc: announce OF1.4 support in README -* Add OF1.4 set async message support -* Add OF1.4 get async request and reply support -* Add OF1.4 meter features stats request and reply message support -* Add OF1.4 meter stats request and reply message support -* Add OF1.4 meter config stats request and reply message support -* Add OF1.4 meter band drop -* Add OF1.4 group mod message supoort -* Add OF1.4 table mod message support -* Add OF1.4 flow removed message support -* Add OF1.4 group desc stats request and reply message support -* Add OF1.4 OFPBucket -* Add OF1.4 group features stats request and reply message support -* Add OF1.4 table stats request and reply message support -* Add OF1.4 aggregate stats request and reply message support -* Add OF1.4 role request and reply message support -* Add OF1.4 barrier request and reply message support -* Add OF1.4 experimenter message support -* Add OF1.4 error message support -* Add OF1.4 echo request and reply message support -* Add OF1.4 SetNwTtl action support -* Add OF1.4 DecNwTtl action support -* Add OF1.4 DecMplsTtl action support -* Add OF1.4 PushVlan action support -* Add OF1.4 PopVlan action support -* Add OF1.4 PushMpls action support -* Add OF1.4 PopMpls action support -* Add OF1.4 PushPbb action support -* Add OF1.4 PopPbb action support -* Add OF1.4 CopyTtlIn action support -* Add OF1.4 CopyTtlOut action support -* Add OF1.4 SetField action support -* Add OF1.4 OFPMatchField support -* Add OF1.4 desc stats request and reply message support -* Add OF1.4 group stats request and reply message support -* Add OF1.4 multipart experimenter request and reply message support -* packet\_data\_generator: Remove OF1.4 queue set config request and reply message support -* Correct OF1.4 OFPMatch JSON serialisation and formatting -* Correct OF1.4 OFP\_ACTION\_HEADER\_PACK\_STR -* of12: set default ethernet types for MPLS actions -* of13: set default ethernet types for MPLS actions -* ofproto\_v1\_3\_parser: have a default value for push\_vlan ethertype -* ofproto\_v1\_2\_parser: have a default value for push\_vlan ethertype -* ofproto\_v1\_3\_parser: put some assertions -* ofproto\_v1\_2\_parser: put some assertions -* Make type and len class attributes of OFPInstructionMeter -* doc: improve RyuApp documentation -* doc: update after the sync request change -* vrrp: Add RPC API -* ofctl.service: fix a crash on error msg -* ofctl.service: reduce log level of some messages -* ofctl.service: fix some crashes -* Fix OFPInstructionWriteMetadata JSON decode -* dpset: start up dpset if there are subscribers of dpset events -* fix bidirectional event confusion -* packet\_data\_generator: Add OF1.4 -* ofctl\_v1\_2/3: fix SET\_FIELD action and some match fields -* bgp: fix IP/MPLS\_VPN addresses -* bgp: comments about notification data -* bgp: a comment -* bgp: RFC 4486 -* bgp: constants for NOTIFICATION code/subcode -* bgp: a comment -* ryu.app.ofctl: Add a proxy application to send OF messages -* test tool: run\_mininet: support CPqD Software Switch -* bgp: implement the rest of RFC 3107 -* bgp: implement BGPOptParamCapabilityCarryingLabelInfo -* bgp: add a constant for enhanced route refresh -* safi: add a constant for route target constrain -* rest\_firewall: support IPv6 match conditions -* ofctl\_v1\_2/3: fix match conditions about ARP -* enable OpenFlow 1.4 -* packet\_data\_generator: update of\_protocol upstream -* test\_bpdu: add unit test -* bpdu: handling based on version and type -* ofctl\_rest: improve readability of the result of MeterFeatures -* ofctl\_rest: support group-related messages -* lib.of\_config: import ryu.contrib -* tests: add some tests for ryu.lib.of\_config.classes -* A happy new year 2014 - -v3.5 ----- - -* Ryu 3.5 -* firewall: correct acquisition result of DENY rule -* ofctl\_rest: fix mod\_meter\_entry in OpenFlow1.0/1.2 -* ofctl\_rest: support OFPExperimenter message -* ofctl\_rest: fix delete\_flow\_entry -* topology: Setting highest rule priority to LLDP packets -* Fix Windows setup dependency bug -* add IGMP snooping application -* packet lib: icmpv6: support MLD (v1/v2) -* packet lib: igmp: support IGMP v3 -* firewall: packet blocking log for DENY rule -* ofctl\_v1\_2/3: support IPv6 -* ofctl\_v1\_2/3: support OXM field names -* ofctl\_rest: support OpenFlow1.2 -* of\_config\_cli: remove no longer necessary "\_pythonify" stuff -* of\_config: allows both of of-config element names and python style names -* of\_config\_cli: add add\_queue command -* of\_config\_cli: add delete\_config and copy\_config -* a simple of-config client command -* of\_config.capable\_switch: add delete\_config and copy\_config -* tests.integrated.test\_of\_config: update after capable\_switch api change -* of\_config.capable\_switch: api tweak -* add some convenient OF-Config classes -* requires lxml -* oxm\_fields: make a crash less cryptic -* ofctl\_v1\_3: support OFPMeterConfigStats -* ofctl\_v1\_3: fix match for metadata -* ofctl\_v1\_3: correct MeterStats and MeterFeatures -* topology: add of13 support -* ofctl\_v1\_3: support meter -* ofctl\_v1\_3: support metadata -* packet.ospf: workaround a bytearray vs buffer problem -* rest\_firewall: use the explicit max\_len of flow\_mod -* lib: ofctl: support the specified max\_len of flow\_mod -* packet lib: improve readability of json -* add license to ospf files -* test tool: add a script to make the test environment on mininet -* test tool: add default test files (match) -* test tool: add default test files (action with set-field only) -* test tool: add default test files (action without set-field) -* test tool: add OpenFlowSwitch test tool -* unit test for lib.packet.ospf -* packet lib: add ospf -* lib/packet/packet\_utils: Add a function to calculate fletcher checksum -* packet lib: ipv6: correct a default parameter of opt\_header -* packet lib: add unittests for reversibility about json -* packet lib: slow: fix reversibility about json -* packet lib: sctp: fix reversibility about json -* packet lib: lldp: fix reversibility about json -* packet lib: llc: fix reversibility about json -* packet lib: ipv6: fix reversibility about json -* packet lib: icmpv6: fix reversibility about json -* packet lib: icmp: fix reversibility about json -* packet lib: dhcp: fix reversibility about json -* packet lib: bpdu: fix reversibility about json -* packet lib: bgp: fix reversibility about json -* packet lib: packet\_base: add a method which makes '\_class\_prefixes' easy to use -* stplib: support OF 1.2/1.3 -* stplib: Reduction of the number of threads -* add OpenFlow 1.4 definitions -* packet lib: igmp: support default parameters - -v3.4 ----- - -* Ryu 3.4 -* vrrp: handle interface failure -* rpc-cli man page -* a simple command line msgpack-rpc client -* add rpc.Client.peek\_notification -* msgpack-rpc: unit tests -* rpc: prefix closed\_by\_peer with \_ as it's private -* rpc: If the socket is closed by peer, endpoint stop the serve -* msgpack-rpc fixes and improvements -* msgpack rpc helper -* test\_parser: expected json for onf\_flow\_monitor\_request -* packet\_data: regen for onf\_flow\_monitor\_request -* packet\_data\_generator: add a case for onf\_flow\_monitor\_request -* packet\_data\_generator: update of\_protocol for onf\_flow\_monitor\_request -* of13: implement ONFFlowMonitorStatsRequest -* ofproto\_parser.StringifyMixin: add "ONF" to the list of class prefixes -* of13: EXT-187 definitions -* of13 OFPExperimenterStatsRequest: api tweak -* of13: add a bunch of ONFERR\_ constants from OF Extensions for 1.3.X -* of13 OFPTableFeaturesStatsRequest: remove an unused argument -* unit test: test ryu.cmd.manager -* vrrp: declare event.py to be dependent for manager.py -* vrrp: add statistics support -* Add support for admin\_state (role) -* fix vrrp utils -* register monitor\_linux and monitor\_openflow for VRRPInterfaceMonitor class -* vrrp: use sysfs instead of ioctl to get ifindex -* rest\_firewall: support OF 1.3 -* ofctl\_v1\_3: support some actions -* ofctl\_v1\_3: correct the output result of get\_flow\_stats() -* rest\_router: support OF 1.3 -* ofp: use RyuApp start() to return Greenlet thread -* allow RyuApp start() method returns Greenlet thread -* Revert "doc: update tls example" -* run OFP if no application is specified -* fix the regression due to e45f382e51c9a3d57a6d8c01cec9e70f7ca364fd -* a script to set up an environment for test\_vrrp\_multi.py -* a script to set up an environment for test\_vrrp\_linux\_multi.py -* test apps for VRRP service -* vrrp service -* packet.vrrp: some convenient routines -* base/app\_manager: context might be RyuApp -* base/app\_manager: create/destroy RyuApp instances dynamically -* base/app\_manager: introduce singleton pattern to AppManager -* base/app\_manager: RyuApp initialization race at startup -* topology.switches: stop abusing Packet.next() -* test\_lldp: stop abusing Packet.next() -* Packet: fix iterator -* skip malformed OF messages and continue instead of stopping -* of13: fix wrong comments -* test\_parser: update expected json representations for EXT-256 -* packet\_data: regen -* packet\_data\_generator: add a case for EXT-256 (PBB UCA match field) -* packet\_data\_generator: update of\_protocol upstream -* of13: implement EXT-256 (PBB UCA match field) -* lacplib: reduce unnecessary constant -* of13: OFPTableFeaturesStatsRequest: update docstring -* of13: OFPOxmId: update comment -* ryu.app.client: comments -* ryu.app.tunnel\_port\_updater: comments -* ryu.app.gre\_tunnel: comments -* ryu.app.rest\_quantum: comments -* ryu.app.rest\_conf\_switch: comments -* ryu.app.rest: comments -* doc: update tls example -* of12: implment OFPT\_EXPERIMENTER serializer -* of13: implment OFPT\_EXPERIMENTER serializer -* test\_parser: enable serializer tests for OFPT\_EXPERIMENTER -* solve application dependency via @set\_ev\_cls -* dpset: fix a reconnect race -* doc: hook up dpset -* dpset: add some docstrings -* dpset: remove dead code -* dpset: prefix private methods with \_ -* ofproto: fixed comments of ofp\_capabilities -* test\_parser: expected json representations for OFPMP\_EXPERIMENTER -* packet\_data: regen -* packet\_data\_generator: add cases for experimenter mp request/reply -* of13: implement OFPMP\_EXPERIMENTER request and reply -* packet lib: ipv6: change some default parameters -* packet lib: ethernet: support default parameters -* bgp: add tests for extended communities -* bgp: implement extended communities -* test\_parser: test OFPET\_EXPERIMENTER serializer as we now have it -* test\_parser: expected json representation -* packet\_data: regen -* packet\_data\_generator: uncomment ofp\_error\_msg\_experimenter -* of13: OFPErrorExperimenterMsg: implement serializer -* of12: OFPErrorExperimenterMsg: implement serializer -* of13: implement OFPErrorExperimenterMsg -* of12: reduce unnecessary diffs from of13 -* ofproto\_common: define some experimenter id -* add STP application -* packet lib: add unittests that use default parameters of IPv4/IPv6 and ICMP/ICMPv6 -* packet lib: icmp: support default parameters -* packet lib: icmp: support len(icmp.\*) -* packet lib: icmpv6: support default parameters and the auto calculation of lengths -* packet lib: icmpv6: support len(icmpv6.\*) -* packet lib: icmpv6: omit type of nd\_option object -* packet lib: icmpv6: include type and length in nd\_option object -* packet lib: icmpv6: move ND\_OPTION\_\* constants from classes to the module -* packet lib: icmpv6: change the timing of bit shift -* packet lib: icmpv6: correct typos -* ofctl\_rest.py: Fix compatibily for both OF 1.0 & 1.3 datapaths -* ofctl\_v1\_3.py: Add get\_desc\_stats & get\_port\_stats from ofctl\_v1\_0.py -* lacplib: set the max priority to LACP flow entries -* packet lib: add unittests that use default parameters of IPv4/6 and TCP/UDP/SCTP -* packet lib: ipv6: support default parameters and the auto calculation of payload\_length -* packet lib: udp: support default parameters -* packet lib: tcp: support default parameters and the auto calculation of offset -* packet lib: sctp: correct len(sctp) -* SubmittingPatches: mention tools/normalize\_json.py -* test\_parser: expected json representations for new test cases -* packet\_data: regen -* packet\_data\_generator: add cases to use all oxm types -* packet\_data\_generator: update of\_protocol -* normalize \*.json files - -v3.3 ----- - -* Ryu 3.3 -* Decoration Based PacketIn Filter -* of13: correct variable name same as spec -* ofproto\_parser: dump packets if error is encountered during parse -* packet lib: support Provider Backbone Bridges (PBB, IEEE 802.1ah) -* packet lib: vlan: support Q-in-Q (IEEE 802.1ad) -* rest\_router: fix mac address conversion -* packet lib: sctp: change the timing of the auto calculation -* packet lib: sctp: remove the past 'TODO' comments -* rest\_router: bug fix of match parameter -* test\_parser: expected json output for ofp\_table\_features\_request/reply -* packet\_data: regen -* packet\_data\_generator: uncomment ofp\_table\_features\_request -* packet\_data\_generator: update of\_protocol upstream -* of13: implement table features request/reply -* OFPMultipartRequest: remove a wrong assertion -* oxm\_fields: allow None values -* packet lib: sctp: support default parameters and the auto calculation of lengths -* packet lib: sctp: aggregate the same method into the base class -* packet lib: sctp: correct typos -* packet lib: sctp: correct sphinx document format -* correct typos -* test\_parser: update expected json output -* packet\_data: regen -* packet\_data\_generator: use more actions -* packet\_data\_generator: update upstream -* tests: apply tools/normalize\_json.py -* ofproto.test\_parser: fix an expected json output -* packet\_data: regen -* packet\_data\_generator: adapt to of\_protocol upstream api change -* packet\_data\_generator: change of\_protocol upstream -* packet lib: sctp: correct comments -* of13: support PUSH\_PBB/POP\_PBB actions -* of1.0, of1.2, of1.3: Modify the default of max\_len in OFPActionOutput -* packet lib: sctp: support the auto calculation of lengths of parameters and causes -* packet lib: sctp: fill up lack of decolators -* packet lib: sctp: remove unnecessary \_\_init\_\_() -* packet lib: sctp: reduce computation -* To specify a logging configuration file -* bgp: implement communities attribute -* bgp: well known communities -* bgp: implement multiprotocol capability -* bgp: implement MP\_UNREACH\_NLRI -* bgp: implement MP\_REACH\_NLRI -* bgp: update a comment -* packet lib: sctp: add tests for protocol stack -* packet lib: sctp: fix problems about padding -* lib.packet.sctp: fix misuses of abstractproperty -* doc: hook up lib.packet.sctp -* packet lib: sctp: add a unittest for SCTP -* packet lib: add Stream Control Transmission Protocol -* packet lib: icmpv6.nd\_router\_advert: skip unknown options correctly -* packet lib: icmpv6: comment -* packet lib: ipv6: correct parser() about flow\_label -* simple\_switch\_13: using table-miss flow -* of13: fix OFPGroupStats -* ofproto tests: add expected json outputs -* packet\_data: regen -* packet\_data\_generator: add of1.3 group\_stats\_request/reply -* of10: fix pep8 -* of13: correct parser() in several OFPActions -* of10: Register TCP\_DST and UDP\_DST headers in NXM -* simple\_switch: use packet library -* packet.bgp: parse/serialize FOUR OCTET AS NUMBER capability -* packet.bgp: parse/serialize ROUTE REFRESH capability -* packet.bgp: implement ROUTE REFRESH message -* packet lib: some AFI/SAFI constants -* packet.bgp: parse/serialize capability options -* packet.bgp: some capability related constants -* bgp test: appease pep8 -* packet.bgp: appease pep8 -* of13: fix InstructionMeter parser -* Switch how to call the API of Routes for every version -* To specify a context of a controller from WSGIApplication#register() -* packet.bgp test: parse real packets taken from quagga -* packet.bgp test: some on-wire packets snooped from running quagga -* packet.bgp: implement RFC 4893 -* packet.bgp: parse/serialize path attribute values -* python-oslo-config is necessary for Ryu built by RPM - -v3.2 ----- - -* Ryu 3.2 -* fix setup from a tarball again -* avoid pbr's non multi-version aware script -* revert "support setup.py install with git archive tarballs" commit -* revert "stick with pbr 0.5.19" commit - -v3.1 ----- - -* Ryu 3.1 -* packet lib: dhcp: remove unnecessary import -* packet lib: dhcp: add unittest -* packet lib: dhcp: use text addresses -* packet lib: add get\_protocol API -* of1.3: set default arguments for FlowStatsRequest -* of1.2: set default arguments for FlowStatsRequest -* topology.switches: fix link discovery -* ofproto: remove a bogus comment -* ofproto: remove unused definitions -* ofproto: fix OF1.0 packet\_in parser -* packet lib: icmp: rewrite unittest -* tests/integrated: fix mac address format -* Advanced WSGI API -* doc: hook up streaming parser docs -* implement BGP-4 streaming parser -* streaming parser base class -* doc: hook up lib.packet.bgp -* unit test for lib.packet.bgp -* packet lib: implement basic part of BGP-4 -* test\_addrconv: add more test -* packet lib: ipv6: avoid dangerous default value [] as argument -* packet lib: ipv6: simplify the operations of \_\_init\_\_() -* packet lib: ipv6: support udp -* packet lib: ipv6: remove unnecessary import -* packet lib: icmp: correct parser() of TimeExceeded -* unit test for import\_module -* import\_module: deal with cases mod.\_\_file\_\_ is not accessible -* packet lib: ipv6: correct a comment -* packet lib: ipv6: add test for multi extension headers -* packet lib: ipv6: support IP Authentication header -* packet lib: ipv6: support fragment header -* packet lib: ipv6: support destination header -* packet lib: ipv6: support Hop-by-Hop Options header -* packet lib: ipv6: prepare to support Hop-by-Hop Options header and destination header -* packet lib: ipv6: support options for Hop-by-Hop Options header and destination header -* packet lib: ipv6: prepare to support extension headers -* rest\_firewall: improve REST response -* comment on OFP\_xxx\_PORT -* vlan: remove unnecessary import -* doc: ryu app api overview -* document OFPTableFeaturesStatsRequest/OFPTableFeaturesStatsReply -* doc: sprinkle of13 json examples -* doc: sprinkle of12 json examples -* document MsgBase -* add some docstring on StringifyMixin and relevant code -* lib: lacplib: correct comments -* lib: lacplib: add underscore to a protected member -* lib: lacplib: support OpenFlow1.2/1.3 -* packet lib: Simpler API to assemble a packet -* of12, of13: fix OFPActionSetField padding -* test: update expected json outputs -* packet\_data: regen -* tweak packet\_data\_generator -* rest\_firewall: remove of unused constant values -* rest\_firewall: remove of an unnecessary comma of json response -* rest\_firewall: remove of a redundant code -* rest\_firewall: bug fix of handling an empty dict -* ofproto: raise an exception for unsupported operation -* test\_parser: test serializing a message multiple times -* ofproto: remove some assertions -* ryu-manager: copyright notice -* of10: change OFPMatch to support ipv4 src and dst mask when wildcards are omitted in \_\_init\_\_ -* Support old style class -* simple\_switch: simplify -* simple\_switch\_12: reduce difference from simple\_switch\_13 -* test: update of12 expected \*.json outputs after utf-8 change -* test: update of13 expected \*.json outputs after utf-8 change -* test: regen \*.packet after utf-8 changes -* packet\_data\_generator: use utf-8 in table name and port name -* of13: update expected \*.json outputs for table name change -* of13: assume OFPTableFeaturesStats.name UTF-8 -* of12: update expected \*.json outputs for table name change -* of12: assume OFPTableStats.name UTF-8 -* of10: assume OFPTableStats.name UTF-8 -* of13: update expected \*.json results for OFPPort.name change -* of13: assume OFPPort.name UTF-8 -* of12: update expected \*.json results for OFPPort.name change -* of12: assume OFPPort.name UTF-8 -* of10: update expected \*.json results for OFPPhyPort.name change -* of10: assume OFPPhyPort.name UTF-8 -* stringify: add 'utf-8' type -* packet lib: update icmpv6 doc -* use run\_tests.sh -N for Travis CI - -v3.0 ----- - -* Ryu 3.0 -* rest\_firewall: blocked packet logging -* ofctl v1.0/v1.2: add miss\_send\_len for packet in -* restore bin/ryu-manager -* packet lib: bpdu: add some constant values -* rest\_firewall: bug fix of dict keyError -* doc: update format of pages for ofproto -* doc: fix warnings -* doc: update reference page for ofproto -* of12, of13: small update of the document -* test\_parser: ensure that "len" "length" fields can be omitted -* of13: update after OFPMeterBand changes -* of13: make OFPMeterBand's "type" and "len" visible to users -* of13: update \*.json after OFPHelloElemVersionBitmap changes -* of13: make OFPHelloElemVersionBitmap's "type" and "length" to users -* of13: update \*.json after OFPxxxStats.length changes -* of13: make OFPxxxStats.length visible to users -* of13: update \*.json after multipart request/reply's "type" changes -* of13: make multipart request/reply's "type" visible to users -* of13: update \*.json after OFPPacketOut.actions\_len changes -* of13: make OFPPacketOut.actions\_len visible to users -* of13: update \*.json after OFPMatch "type" and "length" changes -* of13: make OFPMatch "type" and "length" visible to users -* of13: update \*.json after OFPQueuePropHeader.property change -* of13: make OFPQueuePropHeader.property visible to user -* of13: update \*.json after "len" "type" changes -* of13: some "len" "type" attributes visible to user -* test\_parser\_v12: update after OFPxxxStats.length changes -* of12: update \*.json after OFPxxxStats.length changes -* of12: make OFPxxxStats.length visible to users -* of12: update \*.json after OFPStatsReply.type changes -* of12: make OFPStatsReply.type visible to users -* test\_parser\_v12: update after OFPPacketOut.actions\_len changes -* of12: update \*.json after OFPPacketOut.actions\_len changes -* of12: make OFPPacketOut.actions\_len visible to users -* test\_parser\_v12: update after OFPErrorExperimenterMsg.type changes -* of12: update \*.json after OFPErrorExperimenterMsg.type changes -* of12: make OFPErrorExperimenterMsg.type visible to users -* of12: update \*.json after OFPMatch "type" and "length" changes -* of12: make OFPMatch "type" and "length" visible to users -* of12: update \*.json after OFPQueuePropHeader.property change -* test\_parser\_v12: update after OFPQueuePropHeader.property change -* of12: make OFPQueuePropHeader.property visible to user -* test\_parser\_v12: update after "len" changes -* of12: update \*.json after "len" "type" changes -* of12: some "len" "type" attributes visible to user -* packet lib: icmpv6: add nd\_router messages -* add .tox/ to .gitignore -* workaround a python bug -* stick with pbr 0.5.19 -* new way to use pbr -* remove bin/ryu-manager from the list of files for pylint/pep8 -* move ryu-manager to entrypoints -* test\_parser: update expected json results -* packet\_data: regen -* packet\_data\_generator: follow the recent fixes in of\_protocol upstream -* packet\_data\_generator: be specific about versions of dependencies -* packet\_data\_generator: move of\_protocol upstream back to the origin -* rest\_router: make pep8 comfortable -* Revert "packet lib: igmp: add some constant values" -* Add a configuration file for tox (http://testrun.org/tox/) -* Fix POP\_MPLS of ofctl\_v1\_3.to\_actions() problem -* packet lib: igmp: add some constant values -* packet lib: bpdu: use text address -* packet lib: igmp: add a constant value -* packet lib: llc: correct a variable name -* of12: add docstrings for openflow messages -* of13: add docstrings for openflow messages -* packet lib: igmp: add some constant values -* add LACP application -* rest\_router: convert haddr to bin for OFPActionSetDlSrc/Dst -* rest\_router: avoid assertion when ip\_text is 0 -* avoid importing a module twice -* of13: set default args for FlowMod -* of12: set default args for FlowMod -* fix of match from\_jsondict mask bug -* of13: update expected \*.json output for OFPTableFeaturesStats.name -* of13: remove trailing NULs in OFPTableFeaturesStats.name -* test\_parser\_v12: update after OFPTableStats.name change -* of12: update expected \*.json output for OFPTableStats.name -* of12: remove trailing NULs in OFPTableStats.name -* of10: remove trailing NULs in OFPTableStats.name -* of13: update expected \*.json output after OFPPort.name change -* of13: remove trailing NULs in OFPPort.name -* of12: update expected \*.json output after OFPPort.name change -* of12: remove trailing NULs in OFPPort.name -* of10: update expected \*.json output after OFPPhyPort.name change -* of10: remove trailing NULs in OFPPhyPort.name -* regen after "packet\_data\_generator: fix port names" commit -* packet\_data\_generator: fix port names -* of13: update expected \*.json after OFPDescStats changes -* of13: make OFPDescStats more human readable -* of12: update expected \*.json after OFPDescStats changes -* of12: make OFPDescStats more human readable -* of10: make OFPDescStats more human readable -* rest\_router: update after ofproto hw\_addr changes -* rest\_router: fix of10 case -* a simple script to plot rest\_topology's output -* topology.switches: fix bin vs text address problem -* of13: update tests -* of13: fix json representation of OFPPort.hw\_addr and OFPPortMod.hw\_addr -* of12: update tests -* of12: fix json representation of OFPPort.hw\_addr and OFPPortMod.hw\_addr -* of10: update tests -* of10: fix json representation of OFPPhyPort.hw\_addr and OFPPortMod.hw\_addr -* stringify: allow user classes to annotate type of their attributes -* of13: use text address for OFPPort.hw\_addr and OFPPortMod.hw\_addr -* of12: use text address for OFPPort.hw\_addr and OFPPortMod.hw\_addr -* of10: use text address for OFPPhyPort.hw\_addr and OFPPortMod.hw\_addr -* MANIFEST.in: exclude packet\_data\_generator -* add simple learning switch app for OF1.2 -* add simple learning switch app for OF1.3 -* of13: set ActionOutput default max\_len to zero -* of12: set ActionOutput default max\_len to zero -* fix the commit 833328a mess-up -* lib/packet: update docstrings to fix broken tables in latex/pdf -* doc: fix overflow from the page in latex/pdf -* of1.2, of1.3: update document for OFPMatch -* packet lib: fix ipv6 parser -* ofctl lib: Actions is a list -* of13: test\_parser: update expected \*.json results -* of13: test\_parser: regen \*.packet -* of13: packet\_data\_generator: use set\_field action -* of13: change OFPActionSetField api, following the recent OFPMatch api -* of12: test\_parser: update expected \*.json results -* of12: test\_parser: regen \*.packet -* of12: packet\_data\_generator: use set\_field action -* of12: change OFPActionSetField api, following the recent OFPMatch api -* of13: update \*.json after OFPMatch changes -* of13: change OFPMatch json representation to match with on-wire -* of13: make OFPMatch use oxm\_fields routines -* of12: update \*.json after OFPMatch changes -* of12: change OFPMatch json representation to match with on-wire -* of12: make OFPMatch use oxm\_fields routines -* oxm\_fields: add some routines -* doc: add reference for ofproto api document -* packet\_base: update docstring -* doc: fix some sphinx warnings and errors -* doc: fix a typo -* ofproto\_v1\_3\_parser: add docstring to OFPMatch -* normalize json files using tools/normalize\_json.py -* a script to normalize json -* lib/packet: add Internet Group Management Protocol -* test\_parser: stop testing unsupported operations -* test\_parser: have a list of operations expected to work -* unit test: test OFPMatch.append\_field -* unit test for OFPMatch old/new api compatibility -* app/rest\_firewall: add API for VLAN configuration -* ofproto: \_baseattribute can be class attribute -* ofproto: make binary code loadable -* packet lib: make vrrp get\_payload robust -* packet lib to string: unit tests -* packet lib to string: add \_\_str\_\_ to base -* packet lib to string: inherits StringifyMixin -* unit tests for the new OFPMatch api -* of13: fix old parser and serializer of PBB\_ID -* of12: stop assuming OFPXMC\_OPENFLOW\_BASIC -* dpset: support OF1.3 -* packet lib: provide bpdu.\_MIN\_LEN -* packet lib: provide llc.\_MIN\_LEN -* packet lib: implement lacp.\_\_len\_\_ -* packet lib: implement ryu.lib.packet.lldp.lldp.\_\_len\_\_ -* packet lib: provide a default impl of \_\_len\_\_ -* support setup.py install with git archive tarballs -* use d2to1 and pbr for packaging -* tests: stop comparing text addresses -* correct file permission -* note about network address representation -* packet lib: pydoc update/improvements after api change -* packet lib api: update documentation -* rest\_router: update after packet lib api changes -* topology.switches: update after packet lib api changes -* packet lib: change the api to use text addresses - -v2.2 ----- - -* Ryu 2.2 -* sync README with the web site -* add 2013 to copyright for documentations -* test\_parser: update of13 expected results -* of13 OFPMatch: remove now unused code -* of13: more OFPMatch old api compat -* of13: make OFPMatch.to\_jsondict work on instances composed with old api -* of13 OFPMatchField: make this safe to serialize multiple times -* of13: OFPMatch api compat -* of13: OFPMatch from\_json/to\_json for new api -* of13: add OFPMatch.get for convenience -* of13: add OFPMatch.iteritems for convenience -* of13: new OFPMatch field query api -* of13: new match field parser -* of13: new OFPMatch composer api -* test\_parser: update of12 expected results -* of12 OFPMatch: remove now unused code -* of12: OFPMatch more old api compat -* of12: make OFPMatch.to\_jsondict work on instances composed with old api -* of12 OFPMatchField: make this safe to serialize multiple times -* of12: OFPMatch api compat -* of12: OFPMatch from\_json/to\_json for new api -* of12: add OFPMatch.get for convenience -* of12: add OFPMatch.iteritems for convenience -* of12: new OFPMatch field query api -* of12: new match field parser -* of12: new OFPMatch composer api -* oxm\_fields: accept [value, mask] as well as (value, mask) -* oxm\_fields: generate OFPXMT\_OFB\_ and OXM\_OF\_ from a single source -* add unit test for packet library llc -* update library\_packet\_ref.rst -* link to LLC sub layer -* lib/packet/llc -* lib/packet/bpdu -* The trick for installing argparse is deleted -* update packet generator code comment -* test\_addrconv: fix a copy and paste mistake -* Remove contrib/oslo directory -* addrconv: remove embedded test code -* add a test for ryu.lib.addrconv -* regenerate packet\_data for meter\_mod -* test\_parser: an expected result for meter\_mod -* packet\_data\_generator: uncomment ofp\_meter\_mod -* of13 OFPMeterMod: fix \_len vs len mismatch -* of13 OFPMeterBandExperimenter: fix super -* ryu/app/ofctl\_rest: add of1.3 support -* add ofctl\_v1\_3 library -* rest\_router: follow packet lib api change -* addrconv: use bytes instead of int to represent ipv4 addresses -* addrconv: replace bin<->text converters for ipv6 -* addrconv: replace bin<->text converters for mac addresses -* addrconv: binary <-> text conversion of mac/ipv4/ipv6 addresses -* lib/packet: add Link Aggregation Control Protocol -* of-wire json test: a program to generate test data for unit tests -* dist: pypi tar ball misses tools directory -* stringify.StringifyMixin.\_\_str\_\_: simplify -* rest\_router: stop catching Exception -* of-wire json test: unit test -* of-wire json test: generated \*.packet -* of-wire json test: expected results -* of-wire json: adapt OF13 OFPMeterBand -* of-wire json: adapt OF13 OFPTableFeaturesStatsReply -* of-wire json: adapt OF13 OFPPortDescStatsReply -* of13: fix OFPTableFeaturesStats.parser -* of13: fix OFP\_TABLE\_FEATURES\_PACK\_STR -* of1.3: fix OFPort parser -* appease pep8 -* add router Ryu application -* app/quantum\_adapter: Lazily initialize neutron client -* ofproto v1.3: implement MeterBand parsers -* Send MeterMod messages -* quantum\_adapter: race between ovs port deletion and plugin port deletion -* simple\_vlan.py: race condition -* gre\_tunnel.py: race condition -* network: add a helper function to list ports that doesn't raise -* gre\_tunnel: exception due to race condition -* network.py: exception in Networks.remove\_port() -* network: sort out order between event and actual deletion of network -* network.py: sort out order between event and actual deletion of port -* app/gre\_tunnel.py: typo has\_network -> has\_networks -* app/quantum\_adapter: pylint -* app/simple\_vlan: pylint -* controller/network: pylint -* add a test for ryu.lib.stringify -* test\_parser\_v12: abuse this to test to\_jsondict and from\_jsondict -* of1.3: omit mask attribute from str() when appropriate -* of1.3: of-wire json adapt -* of1.2: omit mask attribute from str() when appropriate -* of1.2: of-wire json adapt -* of1.0: of-wire json adapt -* StringifyMixin: json support -* ryu/flags: rename config paramerters related to openstack -* app/quantum\_adapter: fix missing change to neutron -* app/quantum\_adapter: project rename quantum -> neutron -* app/client: update for quantum->neutron change -* fix comment typos (ofprotp -> ofproto) -* fix typos (mpls\_lable -> mpls\_label) -* base/app\_manager: teach event dispatcher state -* use ofproto.OFP\_NO\_BUFFER in some places -* define OFP\_NO\_BUFFER -* ryu/app/conf\_switch\_key: fix a comment -* update the site url -* man: remove man page of ryu client -* packege: rpmlint warning -* MANIFEST.in: fix up to address warning -* openstack copyright notice -* lib/packet: teach packet library to truncate padding octet -* lib/packet: make packet\_base.parser abstract method -* lib/packet: make protocol\_name property instead of attributes - -v2.1 ----- - -* Ryu 2.1 -* rename ryu-client under ryu/tests -* of1.3: fix OFPSetConfig default arguments -* of1.2: OFPGroupFeaturesStats: tuple -> list -* of1.3: fix OFP\_GROUP\_DESC\_STATS\_PACK\_STR -* of1.3: fix OFPMeterStats -* topology/switches: exception during serialization -* topology/switches: packet in handler -* packet lib: stop tlv parsing when finding LLDP\_TLV\_END -* packet lib: add ICMP sub encoder/decoder class -* ofctl\_v1\_2.actions\_to\_str: ignore unknown instructions -* of13: prefix private attributes of OFPMatch with \_ -* of12: prefix private attributes of OFPMatch with \_ -* nx\_match: some comments -* datapath\_connection\_factory deal with None datapath.id -* of13: Added InstructionMeter -* packet lib: avoid exception for bogus protocol header parsing -* quantum\_adapter: check if quantum\_controller\_addr is valid -* of13 OFPBucket: fix a fatal typo -* of13 OFPGroupDescStats: fix super call -* of13 OFPExperimenter: fix parser and remove completely broken serializer -* of13 fix OFPQueueProp parsing -* of13 fix multipart reply parsing -* of13 fix OFPGroupFeaturesStats parser -* of13: add missing itertools import -* of12 OFPGroupFeaturesStats: add missing self.length -* of12: fix OFPExperimenter parser -* of1.3: Fix parsing of OFP\_QUEUE\_GET\_CONFIG\_REPLY -* packet lib: packet class supports get\_protocol method -* packet lib: add Packet.\_\_contains\_\_ -* packet lib: packet class accepts protocols list argument -* packet lib: arp default args -* packet lib: vlan default args -* packet lib: mpls default args -* packet lib: ipv4 default args -* packet lib: icmp support time exceeded type -* of1.2: fix OFPSetConfig default arguments -* fix travis config file -* Add config file for Travis -* packet lib: allow packet type to be specified when parsing packet -* packet lib: For convenience, make packet into a sequence type - -v2.0 ----- - -* Ryu 2.0 -* of1.3: various fixes -* fix 77effb29 regression -* packet lib: make test\_packet work stand-alone -* Add Packet library API Reference -* lib/packet: DHCP packet parser/serializer -* ofproto/ofproto\_parser: pylint -* of1.0: use tun\_id instead of tun\_id\_ -* docs: fix ryu module import -* tests/unit/packet/test\_vrrp: add tests for is\_valid() -* lib/packet/vrrp: fix is\_valid() -* test\_parser\_v10: remove tests for \_\_str\_\_ -* of13: Fix for OFPQueueGetConfigReply/Request -* run\_tests: make python interpreter overridable -* app/gre\_tunnel: pylint -* app/quantum\_adapter: unbreak quantum change -* of10: sprinkle StringifyMixin -* of: StringifyMixin -* use dpid\_to\_str in some places -* tests/ofproto: add unit test for ofproto automatic detection -* ofproto: exception during startup related ofp module detaction -* tests/ofproto: add unit test for ofproto automatic detection -* ofproto: exception during startup related ofp module detaction -* of13: add missing UINTxx\_MAX -* controller/ofp\_event: don't hardcode supported OFP parser module -* ofproto: detect supported OFP versions automatically -* ofproto\_parser: simplify msg\_str\_attr() a bit -* update requirements -* Support bind IPv6 addresses in StreamServer -* Revert "add eventlet to test requirement" -* ofproto: change the way \_\_str\_\_ is implemented for of-wire messages -* controller: stop catching GreenletExit -* hub: add some more tests -* hub: handle GreenletExit internally -* hub: comment -* of1.0: simplify NXAction initialization -* of1.0: simplify OFPActionVendor -* of1.0: NXActionHeader should be subclass of OFPActionVendor -* of1.3: fix OFPPortStatus parser -* of1.3: fix parser of OFPGetAsyncReply -* of1.3: fix serializer of OFPSetAsync -* of1.3: fix wrong method name in OFPQueueGetConfigRequest -* of1.3: fix pack string of OFPMeterStatsRequest -* of1.3: fix wrong class name in OFPGroupFeaturesStatsRequest.\_\_init\_\_() -* of1.3: fix attribute name of OFPGroupDescStats -* of1.3: fix lacking argument in OFPAggregateStatsRequest.\_\_init\_\_() -* add eventlet to test requirement -* lib/hub: Event.wait should return its internal flag -* of1.0: match accepts partial parameters -* limit the size of ryu app's event queue -* controller: fix send queue draining again -* sweep the tree to change from gevent to ryu.lib.hub -* add a threading hub module - -v1.9 ----- - -* Ryu 1.9 -* of1.0: add nx\_aggregate\_stats support -* of1.0: OFPMatch support keyword-style parameters -* ovs.poller: workaround a bug in eventlet -* run\_tests.sh: support integrated tests -* tests/integrated: auto testing script using Mininet and OVS -* tests/integrated: Skip MPLS related test -* Fix typo in comments in GRE tunnel class -* ryu/app/simple\_vlan: fix typo -* add a template for ryu.lib.packet class documentation -* ryu.lib.packet: docstring tweaks for better rendering -* nx\_match: support IPv4 mask -* rest\_tunnel: fix comment typos -* of1.3: parser should return msg, not implicit None -* nx\_match: remove an unnecessary import -* of1.3: remove port\_no argument -* of1.3: fix typos in ofproto\_v1\_3.py -* ryu/app/rest\_firewall.py: handling of no switch connection -* ryu.lib.packet: docstring -* ryu.lib.packet: docstring -* of1.0: add nx\_match to NXFlowStatsRequest -* lib: ip address presentation convert helper methods -* g/c a stale reference to find\_protocol -* packet lib: docstring -* tests/unit, lib/packet/vrrp: unit test for vrrp packet parser/serializer -* lib/packet: VRRP packet parser/serializer -* lib/packet/ipv6: add constants for parse/serialize -* lib/packet/ipv4: add constants for parse/serialize -* ofproto/inet: add VRRP protocol number -* lib/packet/arp.py: add convenience function to create arp for ip -* ofproto/nx\_match: pep8 -* doc: fix the mailing list address -* of1.3: Add special group identifier values defined on OpenFlow 1.3.1 -* lib/packet/lldp.py: pylint -* ryu/lib/packet/lldp.py: remove \_\_str\_\_ method from class LLDPBasicTLV and class lldp -* tests/integrated/test\_of\_config: comment on how to run -* tests/integrated/test\_of\_config: disable known host check -* setup.py: install xsd files -* nx: match\_tuple() function now handles nw src/dst -* nx: make pack string of IPv6 address consistent with OF1.2/1.3 -* topology/dumper: define contexts to receive events -* ryu/topology/switches: simplify Switches with RyuApp.reply\_to\_request -* ryu/base/app\_manager: introduce RyuApp:replay\_to\_request() -* base/app\_manager.py: sort out registering bricks -* ryu/base/app\_manager: pylint unused variables -* topology/dumper: use handler.set\_ev\_cls instead of set\_ev\_handler -* remove openstack related document -* ryu/lib/packet/packet.py: should use isinstance instead of \_\_class\_\_.\_\_base\_\_ -* lib/packet/packet\_utils: optimize checksum - -v1.8 ----- - -* Ryu 1.8 -* rest\_firewall: fix comments -* topology/dumper: fix RyuApp.\_\_init\_\_ signature -* doc: fix a program name -* of1.0: fix import error -* of1.0: utils.round\_up cleanup -* lib/packet/tcp: use checksum\_ip() -* lib/packet/udp: use checksum\_ip() -* lib/packet/icmpv6: use checksum\_ip() -* lib/packet: checksum function with pseudo ipv4/ipv6 header -* lib/packet/packet\_utils: improve checksum byteswap -* lib/packet/packet\_utils: improve checksum padding -* tests/unit/packet/test\_tcp.py: typo UDP -> TCP -* test\_icmpv6: correct icmpv6 checksum -* ryu-client: print http response -* ryu-client: support Topology REST API -* topology: Add REST API -* topology: exported function returns Switch/Link list instead of event -* lib/port\_no: handling port\_no as string -* support parse OFPAction in NXFlowStats -* test\_parser\_v10: fix unittest breakage -* lib/packet/packet\_base: fix signature of PacketBase.{parser, serialize} -* of1.0: fix NXActionHeader typo -* lib ofctl\_v1\_2: add VLAN\_ID setting means -* ofproto\_v1\_0\_parser: add nx\_flow\_stats\_{request, reply} -* ofproto\_v1\_0: add nx\_stats constants -* nx\_match: add MFField parser -* lib ofctl\_v1\_2: fix file modes -* add ofctl\_v1\_2 library -* update ofctl\_v1\_0 library -* add firewall Ryu application -* app\_manager: fix close dict handling bug -* ryu-manager: use try-finally statement -* nx\_match: add vlan and vlan\_pop -* topology: support link discovery -* topology: switch discovering module -* event: Add sync flag and event src for request/reply -* TLS: use a full spelling of a cli option -* TLS: test cli options consistently in the same line -* TLS: update an example output -* ofconfig: use ElementTree iterator instead of getchildren -* ryu.controller.controller.Datapath: keep handler list regardless of state -* vsctl: fix timeout -* tunnel\_port\_updater: g/c \_LOCK -* packet lib: fix icmpv6.nd parser -* doc: of\_config library -* of\_config: sample test code to use ofconfig capable\_switch -* of\_config: OF capable switch class to issue OFConfig request -* of\_config: constants for of-config -* of\_config/schema: add missing import -* of\_config: import XML schema files for OF config -* netconf: add constants for netconf -* netconf: improve schema for netconf -* netconf: import XML schema for netconf -* netconf: import xml schema -* MANIFEST.in: include XML schema files -* ofp: send events to others before calling own handlers -* wsgi: remove unused logging code -* doc: fix bug in tls.rst -* log-cleanup: honor --default-log-level in case of --verbose -* log-cleanup: per RyuApp logger -* log-cleanup: remove an unused logger instance -* log-cleanup: remove an unused logger instance -* ryu-manager: stop modifying CONF.app\_list -* of1.3: fix error in group\_mod -* Add request/reply event support to support communication between apps -* ryu.log: change type of --use\_syslog option to Boolean -* contrib ncclient: missing comma -* contrib: import ncclient library (NETCONF clients) -* of1.3: fix a comment typo -* revert s/\_/-/ changes for ryu.conf -* fix missing parameter in calling 'msg\_pack\_info' of OFPActionPushMpls/PopMpls -* add missing 'field' parameter to \_\_init\_\_ function of OFPActionSetField -* fix incorrect naming '\_\_serialize\_body' in OFPRoleRequest -* fix OFPMatch decode error in 'parser' function of OFPFlowRemoved -* add missing 'length' field of OFPPort when decoding -* add missing 'match' parameter to \_\_init\_\_ function of OFPAggregateStatsRequest -* fix error in OFP\_DESC\_PACK\_STR (change 'c' to 's') -* remove port\_no argument of OFPPortDescStatsRequest.\_\_init\_\_ -* fix OFPMultipartRequest.\_serialize\_stats\_body -* test of1.2: fix typos from mid to min -* g/c --monkey-patch option -* test of1.2: add test code of OFPErrorExperimenterMsg - -v1.7 ----- - -* Ryu 1.7 -* RyuApp: allows observers to specify state -* lib/mac: fix raise ValueError -* app\_manager: allow separated modules of Event and RyuApp -* of1.2: fix OFPErrorExperimenterMsg -* try to sync documentation with the reality -* mechanical documentation update after option name changes -* update an example after option name changes -* change --foo\_bar options to --foo-bar -* appease pep8 -* test of1.2: add test code of max, min, and pattern. review of the test code -* xflow: add sflow support -* remove no longer used contrib/openstack -* switch from openstack.common.cfg to oslo.config.cfg -* import oslo-config -* controller: fix that sender thread is never terminated -* test: remove unnecessary variables -* packet lib: fix icmpv6.nd\_s.parser() and support NDP option type -* of1.3: fix error in port\_mod and get\_config\_reply logic -* ryu/controller/dpset.py: duplicate import -* of1.2: fix OFPGroupDescStats parser -* doc: internal document on openstack cooperation -* test: tuning integration test for OFPT\_FLOW\_REMOVED -* of1.3: fix ACTION\_POP\_MPLS -* stop requiring gflags -* fix a typo in the help message of quantum\_controller\_addr -* update a sample and documentation -* adjust import order in ryu-manager and add a comment -* use openstack.common.cfg instead of gflags -* import cfg.py from oslo-incubator -* controller: fix send\_q draining -* of1.2: fix OFPQueueProp parser -* fix breakage the commit 68f3259754fdbd7b5351c9739bf6f238c7ffb313 -* controller/ofp\_handler: improve version negotiation -* quantum\_adapter: exception when VM deletion -* LICENCE: change end-of-line code CRLF to LF -* tests: make run\_tests.py, test\_lib.py executable as it includes #! -* doc: man pages for ryu-manager and ryu-client -* doc: eliminate sphinx warnings -* fix typos in comments -* fix a fatal typo in network.py -* fix a fatal typo in GRETunnel \_CONTEXTS -* gre\_tunnel: adapt to the new world order after dispatcher removal -* tunnel\_port\_updater: adapt to the new world order after dispatcher removal -* controller/handler: allow set\_ev\_handler without dispatchers -* app\_manager: add some assertions and LOG.info -* app\_manager: print event flow for --verbose -* app\_manager: print some info about event flows for --verbose -* app\_manager: add an function to register an app instance explicitly -* Add support live-migration -* ryu/controller/controller: add a helper method, is\_reserved\_port() -* ovs/bridge: more helper methods -* ovs/vsctl: more commands -* lib/ovs/db\_client: library for low-level ovsdb manipulation -* app/client: add mac support -* app/rest: add requirements to path component -* app/rest: add API to register/update mac address for a given port -* app/tunnel\_port\_updater: application that creates/deletes tunnel ports -* ryu/controller/network.py: add helper functions for tunnel updater -* app/gre\_tunnel: implement GRETunnel app -* packet lib: rename icmp6 to icmpv6 -* test: fix integration tests: reflects 978f3e5c -* dpset: fix the new event mechnism breakage -* dpset: improve debug message -* packet lib: fix a bug in ipv6 -* test: update integration tests -* ryu/app/simple\_vlan: simple VLAN app for OVS -* app: Add quantum adapter -* bin/ryu-client: teach quantum iface rest api -* ryu/app/client: teach quantum iface api -* rest/quantum: quantum iface REST API -* ryu/lib/quantum\_ifaces.py: track the relation of quantum iface-id -* bin/ryu-client: support switch\_conf -* bin/ryu-client: support gre tunnel client -* ryu/app/client: support conf\_switch -* ryu/app: REST API to set per-switch configuration -* controller/switch\_conf: introduce a class to manage per-switch configuration -* app/client: add tunnel client -* app/rest\_tunnel: REST API for tunnel -* controller/tunnel: introduce new class for tunneling -* dpset: add port event support -* controller/network: add event supports -* controller/handler: allow set\_ev\_cls not to specify dispatchers -* packet lib: add ipv6 ICMP support -* packet lib: add ipv6 support -* packet lib: add LLDP support -* xflow: add netflow support -* remove event dumper application -* remove old dispatcher and friends -* bin/ryu-manager: import ryu.flags for common options -* app/client: add helper function to ignore NOT\_FOUND, 404 -* ryu/app/client: factor out rest client code -* app/rest\_nw\_id: add port type for reserved port and vport-gre -* app/rest: add requirements to path component -* replace dispatcher mechanism -* lib/ovs/bridge: helper class to manipulate ovs bridge -* lib/ovs/vsctl: python reimplementation of ovs-vsctl -* lib/ovs: add constants for ovsdb Open\_vSwitch db -* contrib: fix a comment typo -* dpset: fix join race -* packet lib: pep8 warning fix -* test: remove some unnecessary bash dependencies - -v1.6 ----- - -* Ryu 1.6 -* test: add mininet-test suite -* test: Add "Decrement IP TTL" integration test -* ofctl\_v1\_0: fix stats timeout handling -* fix lack of comma in flagfile list -* of1.3: Fix a typo in OFPPacketOut -* setup: update installation infos -* test: change the branch of openvswitch to 'of12' -* ofp\_handler: receiving side of OFPHelloElem version negotiation -* of1.3: improve OFPHello and OFPHelloElemVerionsBitmap -* ofctl\_{rest, v1\_0}: update and clean up -* ryu-manager: fix keyError -* don't abuse \_\_dict\_\_ attribute -* ofp\_handler: Improve hello version negotiation -* of1.3: fix OFPMultipartReply parser -* of1.3: support OFPHET\_VERSIONBITMAP -* doc: setup TLS connection -* of1.3: fix OFPT\_PACKET\_IN parser - -v1.5 ----- - -* Ryu 1.5 -* set setup.py install\_requires properly -* python/ovs/stream: Fix Stream.connect() retval for incomplete connection -* Revert "contrib/ovs/stream.py: TypeError: bad operand type for unary -: 'NoneType'" -* ryu/log: bugfix -* ofctl\_v1\_0: update and clean up -* enable OF1.3 support -* of1.3: fix OFPMP\_FLOW -* of1.3: support OFPMatch -* Add workaround to switch\_features\_handler for OF1.3 -* of1.3: fix OFPPacketQueue -* of1.3: fix OFPSetAsyn -* of1.3: fix OFPQueueProp -* of1.3: fix OFPMeterFeaturesStatsRequest -* of1.3: fix OFPMeterConfigStatsReply -* of1.3: fix OFPPortStatsReply -* of1.3: fix OFPMP\_AGGREGATE -* of1.3: fix OFP\_DESC\_PACK\_STR -* of1.3: fix OFP\_METER\_BAND\_DSCP\_REMARK\_PACK\_STR assert -* of1.3: fix OFP\_TABLE\_MOD\_PACK\_STR assert -* of1.3: fix OFP\_OXM\_EXPERIMENTER\_HEADER\_SIZE assert -* contrib/ovs: TypeError: bad operand type for unary -: 'NoneType' -* of1.2: fix some error constant typos -* packet lib: add arp constants -* add TLS support -* of1.2: Fix MTVlanVid() parser and serializer -* don't use select.POLL\* constants -* ofctl\_v1\_0: update get\_flow\_stats() to dump actions -* wsgi/routes: add regex pattern for each REST component -* contrib/ovs/dirs: replace @variables@ which is replaced by configure -* import ovs python binding library -* prepare contrib directory which holds third party library -* of1.2: Fix OFPActionExperimenter parser -* packet lib: remove unnecessary ICMP debug message - -v1.4 ----- - -* Ryu 1.4 -* ryu/app/ofctl\_rest: implements ofctl\_rest app -* ryu/lib/ofctl\_v1\_0: introduce OF interface -* test: add unittests for packet library -* silence unhandled event message -* test: add unittests for packet library -* packet lib: fix udp header length -* packet lib: fix ipv4 assertion of option field -* tools/pip-requires: add routes which is used by wsgi.py module -* packet lib: add unparsed data to Packet.protocols -* doc: update packet library -* packet lib: kill find\_protocol in Packet class -* packet lib: set protocol\_name in each protocol -* packet lib: make Packet class iterator -* packet lib: fix icmp echo serialize -* packet lib: add mpls -* test: fix unittests for of parser -* packet lib: add icmp.py -* ofp\_handler: print msg.data in hex format, not raw string -* utils: a helper function to convert byte array into hex string -* of1.0: fix/add PortMod message -* Removed leading '/' from data\_files - -v1.3 ----- - -* Ryu 1.3 -* Fix zero padding -* packet lib: fix vlan pcp bitshift -* packet lib: ipv4 option data support -* test: add more of1.2 integration tests -* packet lib: tcp option support -* doc: fix typo in openstack.rst -* doc: rearrange top page -* doc: use README as getting\_started -* doc: rename getting\_started.rst -> parameters.rst -* doc: rearrange openstack docs -* doc: packet library -* app/simple\_isolation: update handler registration -* packet lib: fix ipv4 flags bitshift -* simplify handler registration core -* register OFP handlers via register\_instance -* doc: integrate HACKING.rst into SubmittingPatches.rst -* doc: rename SubmittingPatches to SubmittingPatches.rst -* doc: convert SubmittingPatches into reST style -* doc: update README.rst about migration from osrg.net -* doc: set PYTHONPATH for ryu version constant -* doc: write Ryu application -* doc: use ryu version constant -* doc: change Sphinx style to haiku -* doc: fix the link in README.rst - -v1.2 ----- - -* Ryu 1.2 -* remove OFPFlowRemoved and OFPPortStatus handlers in MAIN\_DISPATCHER -* remove unnecessary OFPFlowRemoved and OFPBarrierReply handlers in CONFIG\_DISPATCHER -* remove unnecessary OFPEchoReply handler in dispatchers -* packet lib: fix ipv4 option field handling -* packet lib: set \_MIN\_LEN class variable -* packet lib: add tcp support -* packet lib: convert ip to use the checksum helper function -* packet lib: add udp data transmit and checksum support -* packet lib: add packet\_utils.py -* packet lib: add data serialize support to Packet class -* packet lib: calculate the udp length -* packet lib: calculate the ip total length -* packet lib: serialize in reverse order -* of1.2: fix OFPFlowRemoved parser -* of1.2: fix ofp\_port\_stats pack format -* test: fix pep8 1.3.3 warnings -* fix pep8 1.3.3 warnings -* test: use the latest version of pep8 -* add packet library -* controller: print backtrace when exception in addition to stacktrace -* test: add stats and config tests to integrated test suite -* of: Fix OFPEchoRequest serialize -* of1.2: pretty OFPGetConfigReply parser -* clean up ETH\_TYPE\_ constants -* add ethernet type constants -* test: fix SET\_NW\_TOS action in test\_add\_flow\_v10 -* clean up IPPROTO\_ constants -* add IPPROTO\_SCTP constant -* rename ryu/ofproto/in.py to ryu/ofproto/inet.py -* test: specify OF version in integrated test suite -* Add SubmittingPatches doc - -v1.1 ----- - -* Ryu 1.1 -* of1.2: handle unknown match field properly -* test: simplify integrated OVS test suite -* test: add more of1.2 unittests -* of1.2: fix IPv6 match parsers -* of1.2: make set\_metadata implementation consistent with the rest -* of1.2: fix OFPExperimenter parser -* of1.2: fix Instruction parser -* of1.2: add OXM\_OF\_METADATA support -* fix 475ca44ef4f87b00945ccd5be8ee4ab196c4e86f regression -* test: add integrated OVS test suite -* of1.2: fix OFPPortStatsRequest typo -* of1.2: OFPGroupMod and OFPGroupFeaturesStats -* simple\_switch: remove outside module dependence -* cbench: specify OF1.0 -* simple\_switch: specify OF1.0 -* stop import ofproto\_v1\_0 as ofproto -* nxm: remove import ofproto -* of1.2: OFPMatch serialiser: fix ARP\_SPA, ARP\_TPA and IPV6\_FLABEL masking -* simple\_switch: fix port\_status\_handler -* of1.2: add OFPSF\_REPLY\_MORE constant -* of1.2: remove unused mask in MTEthType -* enable applications to specify OF versions -* of1.2: add OFPQueuePropMinRate and OFPQueuePropMaxRate -* nxm: fix nxm to OFPMatch conversion -* of1.2: fix OFPGroupMod serialize -* of1.2: OFPSetField serializer pads too much -* of1.2: fix OFPPacketIn parser -* of1.2: fix MTIPv6NdTarget -* of1.2: fix OFPActionPopVlan parser -* of1.2: fix OFPActionSetField padding -* of1.2: fix vlan\_vid match -* app/rest: fix value error exception -* of1.2: change IPv6 address representation -* of1.2: fix OFPActionSetField -* of1.2: Correct pad calculation for OFPMatch -* of1.2: fix OFPBucket parser and serialize methods -* of1.2: fix OFAActionCopyTtlOut and OFPActionCopyTtlIn's parsers -* of1.2: fix OFPActionSetField -* of1.2: remove match argument in MT\* class serialize method -* of1.2: add the common serialize method for MT\* classes -* of1.2: make MT\* class make method take value and mask -* of1.2: set value and mask in MT\* instance -* of1.2: remove unused parser method in MT\* classes -* of1.2: add common field\_parser for MT\* classes -* of1.2: make pack\_str class variable -* test: add more of1.2 unittests -* of1.2: add missing struct ofp\_bucket definition -* of1.2: implement FlowStats instruction parser - -v1.0 ----- - -* Ryu 1.0 -* of1.2: add unittest workaround to OFPPortStatus parser -* of1.2: fix bugs -* add '--version' command line option -* of1.2: add OFPG\_ constants -* of1.3: Add OFPQ\_ALL -* of1.2: Add OFPQ\_ALL -* test: improve the framework -* doc: add the supported OF versions to README.rst -* of1.2: add OFPFlowStats support -* of1.2: fix OFPPacketIn parser to set ethernet frame -* of1.2: improve OFPMatch parser -* nxm: fix NXM\_NX\_REG -* of1.2: add OXM\_OF\_IPV6\_ND\_SLL and OXM\_OF\_IPV6\_ND\_TLL -* of1.2: add OXM\_OF\_IPV6\_ND\_TARGET -* of1.2: add OXM\_OF\_ICMPV6\_TYPE and OXM\_OF\_ICMPV6\_CODE -* of1.2: add OXM\_OF\_IPV6\_FLABEL -* of1.2: add OXM\_OF\_IPV6\_SRC and XM\_OF\_IPV6\_DST -* don't call send\_delete\_all\_flows function in the core -* add round\_up utility function -* of1.2: Correct arguments to OFPMatch.parser() in OFPPacketIn -* of1.2: support ofp\_instruction for OFPFlowMod -* of1.2: add OXM\_OF\_ICMPV4\_TYPE and OXM\_OF\_ICMPV4\_CODE -* of1.2: add OXM\_OF\_SCTP\_SRC and OXM\_OF\_SCTP\_DST -* of1.2: add OXM\_OF\_UDP\_SRC and OXM\_OF\_UDP\_DST -* of1.2: add OXM\_OF\_TCP\_SRC and OXM\_OF\_TCP\_DST -* of1.2: add OXM\_OF\_IP\_SRC and OXM\_OF\_IP\_DST -* of1.2: add OXM\_OF\_IP\_PROTO -* of1.2: add OXM\_OF\_IP\_ECN -* of1.2: add OXM\_OF\_IP\_DSCP -* of1.2: remove FWW\_\* constants -* of1.2: fix OFPFlowMod and OFPFlowRemoved -* Add OFPBarrierRequest and OFPBarrierReply -* Remove duplicated OFPMatch definition -* of1.3: initial OF1.3 support -* nxm: add NXM\_NX\_REG -* fix test\_lib.py for SkipTest -* nxm: add NXM\_NX\_IP\_FRAG -* nxm: add NXM\_NX\_ND\_TARGET -* nxm: add NXM\_NX\_IPV6\_SRC and NXM\_NX\_IPV6\_DST -* nxm: add NXM\_NX\_IPV6\_LABEL -* nxm: add NXM\_OF\_ARP\_SPA and NXM\_OF\_ARP\_TPA -* nxm: fix MFField putw -* of1.2: initial ofp\_match support -* of1.2: reorder the arguments of OFPPacketOut -* nxm: add NXM\_NX\_ICMPV6\_TYPE and NXM\_NX\_ICMPV6\_CODE support -* add IPPROTO\_ constants -* nxm: fix NXM\_OF\_ICMP\_TYPE and NXM\_OF\_ICMP\_CODE -* nxm: fix nxm\_put() -* Fix README.rst format -* Move version string to ryu/\_\_init\_\_.py -* Update setup.py -* Update REAME.rst -* of1.2: Add OXM\_OF\_ constants -* of1.2: fix typo -* of1.2: fix some typos -* update the official site url -* ofproto/nx\_match: various minor clean up -* ofproto/nx\_match: simplify set\_dl\_{src, dst}\_mask() -* of1.2: add MAX\_XID constant -* update setup.py for PyPI -* nxm: add NXM\_OF\_ICMP\_TYPE and NXM\_OF\_ICMP\_ICMP\_CODE support -* nxm: add NXM\_OF\_IP\_SRC and NXM\_OF\_IP\_DST support -* nxm: add NXM\_NX\_ARP\_\* support -* nxm: add NXM\_OF\_TCP\_\* and NXM\_OF\_UDP\_\* support -* nxm: add NXM\_OF\_ETH\_SRC\_W support -* nxm: support arbitrary dl\_dst masks -* nxm: add NXM\_OF\_IP\_PROTO support -* nxm: add NXM\_NX\_IP\_TTL support -* of1.2: cleanup and update -* nxm: add NXM\_OF\_VLAN\_TCI support -* kill unused function in utils.py -* support commandline application initialization -* Pass AppManager module name instead of class name -* Make clear that ryu supports all the NX actions -* Add Nicira Extension NXAST\_LEARN support -* Add Nicira Extension NXT\_SET\_ASYNC\_CONFIG support -* Add Nicira Extension NXT\_FLOW\_AGE support -* Add Nicira Extension NXT\_PACKET\_IN support -* Add Nicira Extension NXT\_SET\_PACKET\_IN\_FORMAT support -* Add Nicira Extension NXT\_FLOW\_REMOVED support -* rename NXMatch parse method to parser -* update setup.py and setup.cfg for better packaging -* doc: update the requirement in README -* Replace wsapi -* add Nicira Extension NXAST\_NOTE support -* add Nicira Extension NXAST\_DEC\_TTL support -* add Nicira Extension NXAST\_FIN\_TIMEOUT support -* add Nicira Extension NXAST\_CONTROLLER support -* Add Nicira Extension NXT\_SET\_CONTROLLER\_ID support -* silence pep8 warning -* fix NX\_ACTION\_HEADER pack string and size -* don't close connection when getting OFPT\_ERROR\_MSG -* rename OFPGetSwitchConfig to OFPGetConfigReply class -* discard sample/test\_simple\_switch because of unittest fail -* test: add NTT copyright to unittest files -* app/simple\_switch: fix commit e5e4b844250d36788f9b1bf71cfd36a6e14d5315 regression -* ryu/app: convert existing application to new style ryu application -* base/app\_manager: introduce application context -* add NXT\_ROLE\_REPLY support -* Add Switch to Controller Nicira extension message support -* Add Switch to Controller Vendor message support -* test: add more unittests -* Fix NXActionAutopath parser -* test: add unittests for of1.2 parser -* test: add more unittests for of1.0 parser -* test: add more unittests for of parser -* Fix OFPFlowRemoved \_\_str\_\_ method typo -* Fix OFPVendorStats parser method -* Fix OFPSwitchFeatures parser (of 1.2) -* Fix the commit 458042d4032ad52dff93deb0f78d94cadb4f2d37 messup -* Fix the commit eea434b8e45bc8ee91aa02096903a66af898ae35 messup -* Fix OFPFlowStats parser -* Add Nicira Extension NXAST\_POP\_QUEUE support -* Add Nicira Extension NXAST\_SET\_QUEUE support -* add Nicira Extension NXAST\_AUTOPATH support -* add Nicira Extension NXAST\_EXIT support -* Fix NXActionSetTunnel64 parser -* Fix NXAactionOutputReg parser -* rename NXTRequest to NiciraHeader -* add NXT\_ROLE\_REQUEST support -* Add NXT\_ROLE\_REQUEST/REPLY constants -* ryu/controller/dpset.py: code simplification -* lib/dpid: dpid formatter/parser -* Kill parser\_stats\_body\_array method in OFPFlowStats class -* fix OFPQueueGetConfigReply parser -* fix OFPVendor parser -* fix typo in ofproto\_v1\_0\_parser comment -* fix StatsReply parser -* Fix OFPQueuePropMinRate class -* fix OFPPacketQueue class parser -* ryu/app/wsapi: make json\_parse\_message\_body work -* Pretty NXAcationBundleBase parser up -* fix NXActionRegLoad parser -* fix NXActionRegMove parser -* fix NXActionMultipath parser -* add Nicira Extension NXAST\_OUTPUT\_REG support -* add Nicira Extension NXAST\_BUNDLE and NXAST\_BUNDLE\_LOAD support -* add Nicira Extension NXAST\_REG\_LOAD support -* add Nicira Extension NXAST\_REG\_MOVE support -* Fix OFPStatsReply parser -* Add NXAction parser support -* Add OFPActionStripVlan class -* lib/mac: improve helper functions -* ofproto/ofproto\_v1\_0\_parser: PacketIn parser -* ofproto\_v1\_0\_parser: fix OFPPacketOut serializer -* remote COPYRIGHT file from MANIFEST.in -* README: added the pointer to Gmane ML archive -* add Nicira Extension NXAST\_MULTIPATH action -* Added test framework, ported from Quantum -* doc/source/step\_by\_step.rst: add item to setup quantum db -* Fix OFP\_ACTION\_DL\_ADDR\_PACK\_STR -* Fix OFPActionHeader class 'serialize' method -* controller/controller: make send\_flow\_mod() allow default value for priority -* app: use symbol instead of 32678 for default priority -* ofproto/ofproto\_v1\_0\_parser: flowmod default parameter -* ofproto/ofproto\_v1\_0\_parser: make FlowMod allow meaningful default parameter -* controller, ofproto\_v1\_0: avoid format for argument -* ofproto/ofproto\_v1\_0\_parser: serializer for NXActionResbumit -* ofproto/ofproto\_v1\_0\_parser: serializer for nxt\_flow\_mod\_table\_id -* ofproto/ofproto\_v1\_0\_parser: improve NXTRequest initializer -* ofproto/ofproto\_v1\_0: more constants for nx -* app/wsapi: make WSPathComponent inherit object -* app/wsapi/WSPathArbitraryString: wrong indent -* add missing super().\_\_init\_\_() -* app/simple\_isolation: unbreak nx patch -* fix find\_flagfile path handling bug -* update docs on the license switch -* Switch to Apache 2.0 license -* Use the original file license - -v0.2 ----- - -* ryu 0.2 -* ignore GreenletExit exception -* Add NXActionSetTunnel and NXActionSetTunnel64 -* Allow send\_flow\_mod() to send NXTFlowMod messages -* Add match\_tuple() and flow\_format() methods to ClsRule -* Add NXTFlowMod -* NXM: Add MFIPDSCP and MFIPECN classes -* NXM: Add MFEthType class -* NXM: Add MFEthSrc class -* NXM: Add MFEthDst class -* NXM: Add MFTunId class -* NXM: Add MFInPort class -* Add base for serialising NXM matches -* Add support for NXT\_SET\_FLOW\_FORMAT -* Add Nicira vendor extensions -* ryu/handler: class decorator should return class object -* controller: print stack trace when datapath main loop goes wrong and log it -* controller/network: fix key error -* Avoid loop in OFPAction.parser() -* Increment offset in OFPFlowStats.parser() -* Use struct.unpack\_from() in OFPFlowStats.parser() -* doc: update README.rst (OpenStack mainline inclusion status) -* Correct typos in OFPFlowStatsRequestBase class -* yield the CPU to other greenlets -* avoid reading too much data from socket -* limit the queue size (send\_q) -* kill recv\_q -* dispatcher: eliminate weakref.WeakValueDictionary -* dispatcher: eliminate use of weakref for EventQueue event queue -* controller: eliminate weakref of datapath.ev\_q.aux -* dispatcher: use TrackInstances and kill some WeakValueDictionary -* lib: mixin class to track all instances of a given class -* controller: make Controller::serve more robust -* ryu/controller/ofp\_event: use utils.load\_module -* ryu/utils: make import\_module() reliable -* controller/dispatcher: eliminate unregistering handlers -* enable OF1.2 support -* add initial OF1.2 support -* doc: update using\_with\_openstack.rst to catch up openstack -* add HACKING.rst: style guide -* doc: update osrg/nova, quantum repository -* setup.py: typo autor -> author -* dpset: pep8 -* ryu/controller/handler: pep8 -* ofproto\_parser: pep8 -* ofproto\_v1\_0\_parser: typo -* ofproto/ofproto\_v1\_0\_parser: unbreak 0bff34ca87af74b7eb13d9c996fd869172a7f0a4 -* doc: sample configuration files -* doc: step-by-step example -* app/simple\_isolation: various improvement -* controller/{mac\_to\_port, network}: add more methods to track port status change -* controller/datapath: add a helper function to delete flow entries -* controller/dispatcher: eliminate the use of WeakSet -* fix ofp\_event conversion messup -* add cbench application -* move to the main mode right after sending BARRIER -* fix datapath disconnection cleanup -* rest: add '/network' prefix to its path -* remove unused members in Datapath class -* client: pass http responce when an error occurs -* controller: factor out ofp message event from event.py -* pylint: various fixes for pylint -* doc: how to invoke ryu-manager, its options and example -* app: event dumper application -* controller/dpset: Introduce datapath enter/leave event -* dispatcher, handler: constantiate dispatcher name -* controller: pass datapath to EventQueue for EventQueueCreate event -* dispacher: introduce inheritable handler -* controller/dispatcher: introduce events on event queue itself -* dispatcher: pass name to EventQueue and track all instances -* controller/dispatcher: allow handler that accepts any event type -* controller/dispatcher: pylint -* use 0 dl\_{src, dst} for OFPMatch -* move \_pack\_into and \_str\_attr to ofproto\_parser.py -* xid: improve xid handling -* ofproto\_v1\_0: add a constant, MAX\_XID -* ofproto/ofproto\_v1\_0\_parser: more parsers/serializers -* ofproto\_v1\_0\_parser: allows 0 as dl\_{src, dst} for OFPMatch -* lib/mac: add helper function/values -* ofproto/ofproto\_v1\_0: typo, missing consts -* move MsgBase class to ofproto\_parser.py from ofproto\_parser\_v1\_0.py -* remove OF version dependence from MsgBase class -* pylint: add a script to run pylint and pylintrc -* pep8: utils.py -* pep8: ryu/ofproto/ofproto\_v1\_0.py -* ryu.conf: eliminate obsolete config -* Use from gevent.queue import Queue -* Fix to send OFPT\_HELLO with the highest OpenFlow protocol version -* doc: how-l2-segregation-works: update images a bit -* doc: fix typos -* doc: use Network Operating System instead of Network OS for consistency -* doc: fix typo -* doc: clarify our goal for OpenStack - -v0.1 ----- - -* initial commit +* El precompiler esta avanzado, ahora solo con crear el archivo data con el lenguaje vsorc se puede arrancar la topologia +* added cleaner and precompiler +* second try +* primera publicacion diff --git a/ryu/ryu.egg-info/pbr.json b/ryu/ryu.egg-info/pbr.json index 6fc0bb4..9e46566 100644 --- a/ryu/ryu.egg-info/pbr.json +++ b/ryu/ryu.egg-info/pbr.json @@ -1 +1 @@ -{"git_version": "6456711a", "is_release": false} \ No newline at end of file +{"git_version": "9f435e1", "is_release": false} \ No newline at end of file diff --git a/ryu/ryu/app/wsgi.py b/ryu/ryu/app/wsgi.py index 0b98df9..6ddc003 100644 --- a/ryu/ryu/app/wsgi.py +++ b/ryu/ryu/app/wsgi.py @@ -34,7 +34,7 @@ from webob.response import Response as webob_Response from ryu import cfg from ryu.lib import hub -DEFAULT_WSGI_HOST = '0.0.0.0' +DEFAULT_WSGI_HOST = '127.0.0.1' DEFAULT_WSGI_PORT = 8080 CONF = cfg.CONF diff --git a/ryu/ryu/lib/packet/bpdu.py b/ryu/ryu/lib/packet/bpdu.py index da3d9cb..8257f53 100644 --- a/ryu/ryu/lib/packet/bpdu.py +++ b/ryu/ryu/lib/packet/bpdu.py @@ -134,8 +134,8 @@ from ryu.lib import addrconv # BPDU destination -BRIDGE_GROUP_ADDRESS = '01:80:c2:00:00:00' - +#BRIDGE_GROUP_ADDRESS = '01:80:c2:00:00:00' +BRIDGE_GROUP_ADDRESS = '01:80:c2:00:00:0e' PROTOCOL_IDENTIFIER = 0 PROTOCOLVERSION_ID_BPDU = 0 diff --git a/topotest.py b/topotest.py index 022207c..3c6de24 100755 --- a/topotest.py +++ b/topotest.py @@ -1,7 +1,7 @@ #!/usr/bin/python from mininet.topo import Topo -from mininet.log import setLogLevel, info +# from mininet.log import setLogLevel, info # from mininet.node import Controller, RemoteController, OVSController # from mininet.node import CPULimitedHost, Host, Node # from mininet.node import OVSKernelSwitch, UserSwitch @@ -14,34 +14,20 @@ from mininet.log import setLogLevel, info class MiTopo(Topo): def build(self): - #Contructor de topologia custom - s4 = self.addSwitch('s4') + # Contructor de topologia custom + s1 = self.addSwitch('s1') s2 = self.addSwitch('s2') s3 = self.addSwitch('s3') - s1 = self.addSwitch('s1') - h8 = self.addHost('h8') - h4 = self.addHost('h4') - h6 = self.addHost('h6') h1 = self.addHost('h1') - h5 = self.addHost('h5') h2 = self.addHost('h2') h3 = self.addHost('h3') - h7 = self.addHost('h7') - h9 = self.addHost('h9') - self.addLink(h1, s2) - self.addLink(h9, s4) - self.addLink(h2, s2) self.addLink(s1, s2) - self.addLink(s1, s3) - self.addLink(s3, s4) - self.addLink(h3, s1) - self.addLink(h4, s1) - self.addLink(h5, s3) - self.addLink(h6, s3) - self.addLink(h7, s4) - self.addLink(h8, s4) - #info('llegue al final de mitopo\n') - + self.addLink(s2, s3) + self.addLink(s3, s1) + self.addLink(s1, h1) + self.addLink(s2, h2) + self.addLink(s3, h3) + # info('llegue al final de mitopo\n') -#topos = { 'TopoMia': ( lambda: MiTopo() ) } +# topos = { 'TopoMia': ( lambda: MiTopo() ) } -- 2.25.1