=================================== Testing OF-config support with LINC =================================== This page describes how to setup LINC and test Ryu OF-config with it. The procedure is as follows. Although all the procedure is written for reader's convenience, please refer to LINC document for latest informations of LINC. https://github.com/FlowForwarding/LINC-Switch The test procedure * install Erlang environment * build LINC * configure LINC switch * setup for LINC * run LINC switch * run Ryu test_of_config app For getting/installing Ryu itself, please refer to http://osrg.github.io/ryu/ Install Erlang environment ========================== Since LINC is written in Erlang, you need to install Erlang execution environment. Required version is R15B+. The easiest way is to use binary package from https://www.erlang-solutions.com/downloads/download-erlang-otp The distribution may also provide Erlang package. build LINC ========== install necessary packages for build ------------------------------------ install necessary build tools ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ On Ubuntu:: # apt-get install git-core bridge-utils libpcap0.8 libpcap-dev libcap2-bin uml-utilities On RedHat/CentOS:: # yum install git sudo bridge-utils libpcap libpcap-devel libcap tunctl Note that on RedHat/CentOS 5.x you need a newer version of libpcap:: # yum erase libpcap libpcap-devel # yum install flex byacc # wget http://www.tcpdump.org/release/libpcap-1.2.1.tar.gz # tar xzf libpcap-1.2.1.tar.gz # cd libpcap-1.2.1 # ./configure # make && make install get LINC repo and built ^^^^^^^^^^^^^^^^^^^^^^^ Clone LINC repo:: % git clone git://github.com/FlowForwarding/LINC-Switch.git Then compile everything:: % cd LINC-Switch % make .. NOTE:: At the time of this writing, test_of_config fails due to a bug of LINC. You can try this test with LINC which is built by the following methods. :: % cd LINC-Switch % make % cd deps/of_config % git reset --hard f772af4b765984381ad024ca8e5b5b8c54362638 % cd ../.. % make offline Setup LINC ========== edit LINC switch configuration file. ``rel/linc/releases/0.1/sys.config`` Here is the sample sys.config for test_of_config.py to run. :: [{linc, [{of_config,enabled}, {capable_switch_ports, [{port,1,[{interface,"linc-port"}]}, {port,2,[{interface,"linc-port2"}]}, {port,3,[{interface,"linc-port3"}]}, {port,4,[{interface,"linc-port4"}]}]}, {capable_switch_queues, [ {queue,991,[{min_rate,10},{max_rate,120}]}, {queue,992,[{min_rate,10},{max_rate,130}]}, {queue,993,[{min_rate,200},{max_rate,300}]}, {queue,994,[{min_rate,400},{max_rate,900}]} ]}, {logical_switches, [{switch,0, [{backend,linc_us4}, {controllers,[{"Switch0-Default-Controller","127.0.0.1",6633,tcp}]}, {controllers_listener,{"127.0.0.1",9998,tcp}}, {queues_status,enabled}, {ports,[{port,1,{queues,[]}},{port,2,{queues,[991,992]}}]}]} , {switch,7, [{backend,linc_us3}, {controllers,[{"Switch7-Controller","127.0.0.1",6633,tcp}]}, {controllers_listener,disabled}, {queues_status,enabled}, {ports,[{port,4,{queues,[]}},{port,3,{queues,[993,994]}}]}]} ]}]}, {enetconf, [{capabilities, [{base,{1,0}}, {base,{1,1}}, {startup,{1,0}}, {'writable-running',{1,0}}]}, {callback_module,linc_ofconfig}, {sshd_ip,{127,0,0,1}}, {sshd_port,1830}, {sshd_user_passwords,[{"linc","linc"}]}]}, {lager, [{handlers, [{lager_console_backend,debug}, {lager_file_backend, [{"log/error.log",error,10485760,"$D0",5}, {"log/console.log",info,10485760,"$D0",5}]}]}]}, {sasl, [{sasl_error_logger,{file,"log/sasl-error.log"}}, {errlog_type,error}, {error_logger_mf_dir,"log/sasl"}, {error_logger_mf_maxbytes,10485760}, {error_logger_mf_maxfiles,5}]}, {sync,[{excluded_modules,[procket]}]}]. setup for LINC ============== As the above sys.config requires some network interface, create them:: # ip link add linc-port type veth peer name linc-port-peer # ip link set linc-port up # ip link add linc-port2 type veth peer name linc-port-peer2 # ip link set linc-port2 up # ip link add linc-port3 type veth peer name linc-port-peer3 # ip link set linc-port3 up # ip link add linc-port4 type veth peer name linc-port-peer4 # ip link set linc-port4 up After stopping LINC, those created interfaces can be deleted:: # ip link delete linc-port # ip link delete linc-port2 # ip link delete linc-port3 # ip link delete linc-port4 Starting LINC OpenFlow switch ============================= Then run LINC:: # rel/linc/bin/linc console Run Ryu test_of_config app ========================== Run test_of_config app:: # ryu-manager --verbose ryu.tests.integrated.test_of_config ryu.app.rest If you don't install ryu and are working in the git repo directly:: # PYTHONPATH=. ./bin/ryu-manager --verbose ryu.tests.integrated.test_of_config ryu.app.rest Here is the sample output :: kuma% PYTHONPATH=. ./bin/ryu-manager --verbose ryu.tests.integrated.test_of_config ryu.app.rest loading app ryu.tests.integrated.test_of_config loading app ryu.app.rest creating context wsgi instantiating app None of Network creating context network instantiating app ryu.app.rest of RestAPI instantiating app ryu.tests.integrated.test_of_config of OFConfigClient created: client_capabilities=['urn:ie tf:params:netconf:capability:writable-running:1.0','urn:ietf:params:netconf :capability:rollback-on-error:1.0', 'urn:ietf:params:netconf:capability:val idate:1.0', 'urn:ietf:params:netconf:capability:confirmed-commit:1.0', 'urn :ietf:params:netconf:capability:url:1.0?scheme=http,ftp,file,https,sftp', ' urn:ietf:params:netconf:base:1.0', 'urn:liberouter:params:netconf:capabilit y:power-control:1.0', 'urn:ietf:params:netconf:capability:candidate:1.0', ' urn:ietf:params:netconf:capability:xpath:1.0', 'urn:ietf:params:netconf:cap ability:startup:1.0', 'urn:ietf:params:netconf:capability:interleave:1.0'] Unable to handle key of type ecdsa-sha2-nistp256 Unable to handle key of type ecdsa-sha2-nistp256 Unable to handle key of type ecdsa-sha2-nistp256 Unable to handle key of type ecdsa-sha2-nistp256 Unable to handle key of type ecdsa-sha2-nistp256 Unable to handle key of type ecdsa-sha2-nistp521 Unable to handle key of type ecdsa-sha2-nistp256 Unable to handle key of type ecdsa-sha2-nistp521 Unable to handle key of type ecdsa-sha2-nistp256 Unable to handle key of type ecdsa-sha2-nistp256 starting thread (client mode): 0xf0d2f890L Connected (version 2.0, client Erlang) kex algos:['diffie-hellman-group1-sha1'] server key:['ssh-rsa', 'ssh-dss'] client encrypt:['aes128-cbc', '3des-cbc'] server encrypt:['aes128-cbc', '3d es-cbc'] client mac:['hmac-sha1'] server mac:['hmac-sha1'] client compress: ['none', 'zlib'] server compress:['none', 'zlib'] client lang:[''] server l ang:[''] kex follows?False Ciphers agreed: local=aes128-cbc, remote=aes128-cbc using kex diffie-hellman-group1-sha1; server key type ssh-rsa; cipher: loca l aes128-cbc, remote aes128-cbc; mac: local hmac-sha1, remote hmac-sha1; co mpression: local none, remote none Switch to new keys ... Not a valid RSA private key file (bad ber encoding) userauth is OK Authentication (password) successful! [chan 1] Max packet in: 34816 bytes [chan 1] Max packet out: 32768 bytes Secsh channel 1 opened. [chan netconf] Sesch channel 1 request ok installing listener queueing urn:ietf:params:netconf:capability:writable-running:1.0urn:ietf:params:netconf:capability:rollback-on -error:1.0urn:ietf:params:netconf:capability :validate:1.0urn:ietf:params:netconf:capabil ity:confirmed-commit:1.0urn:ietf:params:netc onf:capability:url:1.0?scheme=http,ftp,file,https,sftpurn:ietf:params:netconf:base:1.0ur n:liberouter:params:netconf:capability:power-control:1.0urn:ietf:params:netconf:capability:candidate:1.0urn:ietf:params:netconf:capability:xpath:1.0urn:ietf:params:netconf:capability:startup:1.0urn:ietf:params:netconf:capability:interleave:1.0 starting main loop Sending message parsed new message dispatching message to : urn:ietf:params :netconf:base:1.0urn:ietf:params:netconf:base:1.1< /capability>urn:ietf:params:netconf:capability:startup:1.0urn:ietf:params:netconf:capability:writable-running:1.0 1 discarding listener initialized: session-id=1 | server_capabilities=['urn:ietf:params:netconf:c apability:startup:1.0', 'urn:ietf:params:netconf:capability:writable-runnin g:1.0', 'urn:ietf:params:netconf:base:1.0', 'urn:ietf:params:netconf:base:1 .1'] BRICK RestAPI BRICK OFConfigClient BRICK network installing listener Requesting 'Get' queueing Sync request, will wait for timeout=30 (8836) wsgi starting up on http://0.0.0.0:8080/ Sending message parsed new message dispatching message to : CapableSwitch0LogicalSwitch0-Por t22Port250005000upfalsefalsefalseupfalsetrue100 Mb-FDtruecopperunsupportedothertruecopperunsupported< /advertised>100Mb-FDtruecopperunsupported100Mb-FDtrue copperunsupportedLogicalSwitch0-Port11Port150005000< configuration>upfalsefalsefalseupfalsetrue100Mb-FDtruecopperunsupportedothertruecop perunsupported100Mb-F Dtruecopper unsupported100Mb-FDtruecopperunsupported

LogicalSwitch7- Port44Port450005000upfalsefalsefalseupfalsetrue 100Mb-FDtruecopper unsupportedothertruecopperunsupported100Mb-FDtruecopperunsupported100Mb-FDtruecopperunsupportedLogicalSwitch7-Port33Port350005000upfalsefalsefalseupfalsetrue< /live>100Mb-FDtrue< /auto-negotiate>copperunsupported othertrue copperunsupported100M b-FDtruecopperunsupported100Mb-FDtruecopperunsupported LogicalSwit ch0-Port2-Queue991991210120LogicalSwitch0-Port2-Queue992992210130< /queue>LogicalSwitch7-Port3-Queue9939 933200300LogicalSwitch7-Port3-Queue99 49943400900
LogicalSwitch0025516777216truetruetruetruetruefalsefalseallcontrollerta bleinportanyallselectindirectfast-fai loverselect-weightselect-livenesschainingoutputgroupset-queueset-mpls-ttldec-mpls-ttlset-nw-ttldec-nw-ttlcopy-ttl-outcopy-ttl-inpush-vlanpop-vlanpush- mplspop-mplspush-pbbpop-pbbset-fieldgoto-tablewrite-metadatawrite-actionsapply-actions< /type>clear-actionsmeter08:60:6E:7F:74:E7:00:00truefalse< lost-connection-behavior>failSecureModeSwitch0-Default-Controllerequal127.0.0.16633tcpdown1.3LogicalSwitc h0-Port2LogicalSwitch0-Port1LogicalSwitch0-Port2 -Queue991LogicalSwitch0-Port2-Queue992LogicalSwitch70 25516777216truetruetruetruetruefalsefalseallcontrollertableinportanyallselectindirectfas t-failoverselect-weigh tselect-livenesschaining< /capability>outputgro upset-queueset-mpls-ttldec-mpls-ttl< /type>set-nw-ttldec-nw-ttlcopy-ttl-outcopy-ttl-inpush-vlanpop-vlan push-mplspop-mplsset-field< instruction-types>goto-tablewrite-metadataw rite-actionsapply-actionsclear-actions08:60:6E:7F:74:E7:00:07truefalsefailSecureModeSwitch7-Controllerequal 127.0.0.16633tcpdown 1.2LogicalSwitch7-Port4LogicalSwitch7-Port3Logical Switch7-Port3-Queue993LogicalSwitch7-Port3-Queue994< /resources>
Delivering to Traceback (most recent call last): File "/nfs/eos-fs.nfskuro/git/ryu/ryu/tests/integrated/test_of_config.py" , line 226, in _validate xmlschema.assertValid(tree) File "lxml.etree.pyx", line 3303, in lxml.etree._Validator.assertValid (s rc/lxml/lxml.etree.c:159771) DocumentInvalid: Element '{urn:onf:of111:config:yang}type': [facet 'enumera tion'] The value 'push-pbb' is not an element of the set {'output', 'copy-t tl-out', 'copy-ttl-in', 'set-mpls-ttl', 'dec-mpls-ttl', 'push-vlan', 'pop-v lan', 'push-mpls', 'pop-mpls', 'set-queue', 'group', 'set-nw-ttl', 'dec-nw- ttl', 'set-field'}., line 2 set(['urn:onf:of111:config:yang']) source = running Requesting 'GetConfig' queueing Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : CapableSwitch0LogicalSwitch0-Por t2upfal sefalsefalseothertruecopperunsupportedLogicalSwitch0-Port1upfalsefalsefalseothertruecopperunsupportedLogicalSwitch7-Port4upfalsefalsefalseothertrue copperunsupportedLogicalSwitch7-Port3upfalsefalse< /no-forward>falseothertruecop perunsupportedLogicalSwitch0-Port2-Queue99110120LogicalSwitch0-Port2-Queue99210< /min-rate>130 LogicalSwitch7-Port3-Queue993200300Logica lSwitch7-Port3-Queue994400900LogicalSwitch008:60:6E:7F:74:E7:00:00Switch0-Default-Controllerequal< /role>127.0.0.16633tcpdown1 .3 LogicalSwitch0-Port2LogicalSwitch0-Port1LogicalS witch0-Port2-Queue991LogicalSwitch0-Port2-Queue992LogicalSwitch708:60:6E:7F: 74:E7:00:07Switch7-Controllerequal127.0.0.16633tcpdown1.2LogicalSwitch7-Port4LogicalSwitch7-Port3< queue>LogicalSwitch7-Port3-Queue993LogicalSwitch7-Port3-Queu e994 Delivering to source = startup Requesting 'GetConfig' queueing Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : CapableSwitch0LogicalSwitch7-Por t4upfal sefalsefalse100Mb-FDtruecopperunsupported< /advertised>LogicalSwitch7-Port3upfalsefalsefalse100Mb-FDtrue copperunsupportedLogicalSwitch0-Port1 upfalse< no-forward>falsefalse100Mb-FDtruecopperunsupportedLogicalSwitch0-Port2upfalsefalsefalse100Mb-FDtruecopperunsupported< /port>LogicalSwitch7-Port3-Queue994400900 LogicalSwitch7-Port3-Queue993 200300LogicalSwitch0-Port2-Queue99210130LogicalSwitch0-Port2-Queue99110< /min-rate>120LogicalSwitch708:60:6E:7F:74:E7:00: 07LogicalSwitch7-Port4< port>LogicalSwitch7-Port3LogicalSwitch7-Port3-Queue994LogicalSwitch7-Port3-Queue993< id>LogicalSwitch008:60:6E:7F:74:E7:00:00LogicalSwitch0-Port1LogicalSwitch0 -Port2LogicalSwitch0-Port2-Queue992LogicalSwit ch0-Port2-Queue991 Delivering to Traceback (most recent call last): File "/nfs/eos-fs.nfskuro/git/ryu/ryu/tests/integrated/test_of_config.py" , line 226, in _validate xmlschema.assertValid(tree) File "lxml.etree.pyx", line 3303, in lxml.etree._Validator.assertValid (s rc/lxml/lxml.etree.c:159771) DocumentInvalid: Element '{urn:onf:of111:config:yang}controllers': Missing child element(s). Expected is ( {urn:onf:of111:config:yang}controller )., l ine 2 source = candidate Requesting 'GetConfig' queueing Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : invalid-valueapplicationerror Delivering to Traceback (most recent call last): File "/nfs/eos-fs.nfskuro/git/ryu/ryu/tests/integrated/test_of_config.py" , line 315, in _do_of_config self._do_get_config('candidate') File "/nfs/eos-fs.nfskuro/git/ryu/ryu/tests/integrated/test_of_config.py" , line 246, in _do_get_config config_xml = self.switch.raw_get_config(source) File "/nfs/eos-fs.nfskuro/git/ryu/ryu/lib/of_config/capable_switch.py", l ine 102, in raw_get_config reply = self.netconf.get_config(source, filter) File "/nfs/eos-fs.nfskuro/git/ryu/ryu/contrib/ncclient/manager.py", line 78, in wrapper return self.execute(op_cls, *args, **kwds) File "/nfs/eos-fs.nfskuro/git/ryu/ryu/contrib/ncclient/manager.py", line 132, in execute raise_mode=self._raise_mode).request(*args, **kwds) File "/nfs/eos-fs.nfskuro/git/ryu/ryu/contrib/ncclient/operations/retriev e.py", line 87, in request return self._request(node) File "/nfs/eos-fs.nfskuro/git/ryu/ryu/contrib/ncclient/operations/rpc.py" , line 289, in _request raise self._reply.error RPCError: {'info': None, 'severity': 'error', 'tag': 'invalid-value', 'path ': None, 'message': None, 'type': 'application'} Requesting 'EditConfig' queueing CapableSwitch0 LogicalSwitch0-Port2 down false false false Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : Delivering to Requesting 'EditConfig' queueing CapableSwitch0 LogicalSwitch0-Port2 10Mb-FD true copper unsupported Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : Delivering to Requesting 'EditConfig' queueing CapableSwitch0 LogicalSwitch0 Switch0-DefaultController master 127.0.0.1 6633 tcp Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : Delivering to Requesting 'Get' queueing Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : CapableSwitch0LogicalSwitch0-Por t22Port250005000downfalsefalsefalseup falsetrue1 00Mb-FDtruecopper< pause>unsupportedothertruecopperunsupported100Mb-FDtruecopperunsupported100Mb-FDtruecopperunsupported

LogicalSwitch0-Port11 Port150005000upfalse falsefalseupfalsetrue100Mb-FDtruecopperunsupported< advertised>othertruec opperunsupported100Mb -FDtruecopperunsupported100Mb-FDtruecopperunsupported< /pause>LogicalSwitch 7-Port44Port45000 5000upfalsefalsefalseupfalsetrue100Mb-FDtruecopperunsupportedothertruecopperunsupported100Mb-FDtruecopperunsupported100Mb-FDtruecopperunsupported LogicalSwitch7-Port33Port350005000upfalsefalsefalseupfalsetru e100Mb-FDtru ecopperunsupportedothertruecopperunsupported10 0Mb-FDtruecopper

unsupported100Mb-FD< auto-negotiate>truecopperunsupport edLogicalSw itch0-Port2-Queue991991210120LogicalSwitch0-Port2-Queue9929922

10130LogicalSwitch7-Port3-Queue9939933200300LogicalSwitch7-Port3-Queue 9949943400900
LogicalSwitch0025516777216truetruetruetruetruefalsefalseallcontroller ableinportanyallselectindirectfast-fa iloverselect-weightselect-livenesschainingoutputgroupset-queueset-mpls-ttldec-mpls-ttlset-nw-ttldec-nw-ttlcopy-ttl-outcopy-ttl-inpush-vlanpop-vlanpush -mplspop-mplspush-pbbpop-pbb< type>set-fieldgoto-tablewrite-metadatawrite-actionsapply-actions clear-actionsmeter08:60:6E:7F:74:E7:00:00true< /enabled>false failSecureModeSwitch0-DefaultControllerequal127.0.0.16633tcpdown1.3Switch0-Default-Controller< /id>equal127.0.0.16633

tcpdown1.3< resources>LogicalSwitch0-Port2LogicalSwitch0-Port1LogicalSwitch0-Port2-Queue991LogicalSwitch0-Port2-Qu eue992LogicalSwitch7025516777216true< table-statistics>truetruetruetruefalsefalseallcontrollertableinportanyallselectindirectfast-failoverselect-weightselect-livenesschaining outputgroupset-queueset-mpls-t tldec-mpls-ttlset-nw-ttldec-nw-ttlcopy-ttl-outcopy-ttl-inpush-vlanpop-vlanpush-mplspop-mplsset- fieldgoto-table write-metadatawrite-actionsapply-actionsclear-actions08: 60:6E:7F:74:E7:00:07truefalsef ailSecureModeSwitch 7-Controllerequal127.0.0.1 6633tcpdown1.2LogicalSwitch7-Port4LogicalSwitch 7-Port3LogicalSwitch7-Port3-Queue993LogicalSwi tch7-Port3-Queue994 Delivering to Traceback (most recent call last): File "/nfs/eos-fs.nfskuro/git/ryu/ryu/tests/integrated/test_of_config.py" , line 226, in _validate xmlschema.assertValid(tree) File "lxml.etree.pyx", line 3303, in lxml.etree._Validator.assertValid (s rc/lxml/lxml.etree.c:159771) DocumentInvalid: Element '{urn:onf:of111:config:yang}type': [facet 'enumera tion'] The value 'push-pbb' is not an element of the set {'output', 'copy-t tl-out', 'copy-ttl-in', 'set-mpls-ttl', 'dec-mpls-ttl', 'push-vlan', 'pop-v lan', 'push-mpls', 'pop-mpls', 'set-queue', 'group', 'set-nw-ttl', 'dec-nw- ttl', 'set-field'}., line 2 set(['urn:onf:of111:config:yang']) CapableSwitch0 LogicalSwitch0-Port2 2 Port2 5000 5000 down false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch0-Port1 1 Port1 5000 5000 up false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch7-Port4 4 Port4 5000 5000 up false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch7-Port3 3 Port3 5000 5000 up false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch0-Port2-Queue991 991 2 10 120 LogicalSwitch0-Port2-Queue992 992 2 10 130 LogicalSwitch7-Port3-Queue993 993 3 200 300 LogicalSwitch7-Port3-Queue994 994 3 400 900 LogicalSwitch0 0 255 16777216 true true true true true false false all controller table inport any all select indirect fast-failover select-weight select-liveness chaining output group set-queue set-mpls-ttl dec-mpls-ttl set-nw-ttl dec-nw-ttl copy-ttl-out copy-ttl-in push-vlan pop-vlan push-mpls pop-mpls push-pbb pop-pbb set-field goto-table write-metadata write-actions apply-actions clear-actions meter 08:60:6E:7F:74:E7:00:00 true false failSecureMode Switch0-DefaultController equal 127.0.0.1 6633 tcp down 1.3 Switch0-Default-Controller equal 127.0.0.1 6633 tcp down 1.3 LogicalSwitch0-Port2 LogicalSwitch0-Port1 LogicalSwitch0-Port2-Queue991 LogicalSwitch0-Port2-Queue992 LogicalSwitch7 0 255 16777216 true true true true true false false all controller table inport any all select indirect fast-failover select-weight select-liveness chaining output group set-queue set-mpls-ttl dec-mpls-ttl set-nw-ttl dec-nw-ttl copy-ttl-out copy-ttl-in push-vlan pop-vlan push-mpls pop-mpls set-field goto-table write-metadata write-actions apply-actions clear-actions 08:60:6E:7F:74:E7:00:07 true false failSecureMode Switch7-Controller equal 127.0.0.1 6633 tcp down 1.2 LogicalSwitch7-Port4 LogicalSwitch7-Port3 LogicalSwitch7-Port3-Queue993 LogicalSwitch7-Port3-Queue994 LogicalSwitch0-Port2 2 Port2 5000 5000 down false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch0-Port1 1 Port1 5000 5000 up false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch7-Port4 4 Port4 5000 5000 up false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch7-Port3 3 Port3 5000 5000 up false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported Requesting 'EditConfig' queueing CapableSwitch0 LogicalSwitch0-Port2 down LogicalSwitch0-Port1 down LogicalSwitch7-Port4 down LogicalSwitch7-Port3 down Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : Delivering to Requesting 'Get' queueing Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : CapableSwitch0LogicalSwitch0-Por t22Port250005000downfalsefalsefalseup falsetrue1 00Mb-FDtruecopper< pause>unsupportedothertruecopperunsupported100Mb-FDtruecopperunsupported100Mb-FDtruecopperunsupported

LogicalSwitch0-Port11 Port150005000downfalsefalsefalseupfalsetrue 100Mb-FDtrue copperunsupportedothertruecopperunsupported100 Mb-FDtruecopperunsupported100Mb-FD
truecopperunsupporte dLogicalSwit ch7-Port44Port450 005000down< /admin-state>falsefalsefalseupfalsetrue 100Mb-FDtruecopperunsupportedothertruecopperunsupported 100Mb-FDtruecopperunsupported100Mb-FDtruecopperunsupportedLogicalSwitch7-Port33Port350005000downfalsefalsefalseupfalse
  • true100Mb-FDtruecopperunsupportedothertrue copperunsupported100Mb-FDtruecopperunsupported100Mb-FDtruecopperuns upportedLog icalSwitch0-Port2-Queue991991210120LogicalSwitch0-Port2-Queue992992210130LogicalSwitch7-Port3-Queue9939933200 300LogicalSwitch7-Port3 -Queue9949943400< /min-rate>900LogicalSwitch0025516777216truetruetruetru etruefalsefalseallcontroller tableinportany allselectindirect fast-failoverselect-we ightselect-livenesschaini ngoutput groupset-queueset-mpls-ttldec-mpls-t tlset-nw-ttldec-nw-ttlcopy-ttl-outcopy-ttl-inpush-vlanpop-vlanpush-mplspop-mplspush-pbbpop-pbb< /type>set-fieldgoto-ta blewrite-metadatawrite-actionsapply- actionsclear-actionsmeter08:60:6E:7F:74:E7:00:00truefalsefailSecureMode< controllers>Switch0-DefaultControllerequal127.0.0.16633tcpdown1.3Switch0-Default-Cont rollerequal127.0.0.16633tcpdown1.3LogicalSwitch0-Port2LogicalSwitch0-Port 1LogicalSwitch0-Port2-Queue991LogicalSwitch0-P ort2-Queue992LogicalSwitch7025516777216truetruetruetruetrue< /queue-statistics>false< block-looping-ports>falsea llcontrollertableinport anyallselectindirectfast-failoverselect-weightselect-livenes schainingoutputgroupset-queueset -mpls-ttldec-mpls-ttlset-nw-ttldec-n w-ttlcopy-ttl-outcopy-ttl-inpush-vla npop-vlanpush-mplspop-mplsset-fieldgoto-tablewrite-metadatawrite-actionsapply-actionsclear-actions08:60:6E:7F:74:E7:00:07truefalsefailSecureModeSwitch7-Controllerequal127.0.0.16633tcpdown1.2LogicalSwitch7-Port4Logica lSwitch7-Port3LogicalSwitch7-Port3-Queue993Log icalSwitch7-Port3-Queue994< /capable-switch> Delivering to Traceback (most recent call last): File "/nfs/eos-fs.nfskuro/git/ryu/ryu/tests/integrated/test_of_config.py" , line 226, in _validate xmlschema.assertValid(tree) File "lxml.etree.pyx", line 3303, in lxml.etree._Validator.assertValid (s rc/lxml/lxml.etree.c:159771) DocumentInvalid: Element '{urn:onf:of111:config:yang}type': [facet 'enumera tion'] The value 'push-pbb' is not an element of the set {'output', 'copy-t tl-out', 'copy-ttl-in', 'set-mpls-ttl', 'dec-mpls-ttl', 'push-vlan', 'pop-v lan', 'push-mpls', 'pop-mpls', 'set-queue', 'group', 'set-nw-ttl', 'dec-nw- ttl', 'set-field'}., line 2 set(['urn:onf:of111:config:yang']) LogicalSwitch0-Port2 2 Port2 5000 5000 down false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch0-Port1 1 Port1 5000 5000 down false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch7-Port4 4 Port4 5000 5000 down false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported LogicalSwitch7-Port3 3 Port3 5000 5000 down false false false up false true 100Mb-FD true copper unsupported other true copper unsupported 100Mb-FD true copper unsupported 100Mb-FD true copper unsupported Requesting 'CloseSession' queueing Sync request, will wait for timeout=30 Sending message parsed new message dispatching message to : Delivering to EOF in transport thread Broke out of main loop, error=SessionCloseError('Unexpected session close', ) dispatching error to