Hi, On 2015年04月10日 21:32, kkxue wrote: > Hi,Minoru > Thank you for your reply! > yes,you are right, the flows i added is unnecessary. > > i find out that v350 should go to multi_table profile to support table0 and > table1. > so now i ryu can add controller flow normally, > -------------------------------------------------------------------- > switch# ovs-ofctl dump-flows br0 -O openflow13 > OFPST_FLOW reply (OF1.3) (xid=0x2): > cookie=0x0, duration=33.875s, table=0, n_packets=0, n_bytes=0, priority=0 > actions=goto_table:1 > cookie=0x0, duration=33.91s, table=1, n_packets=0, n_bytes=0, priority=0 > actions=CONTROLLER:65535 > -------------------------------------------------------------------- > but i catch another problem which seems a bug of ryu. > i use ryu v3.20 and my v350 switch is support openflow1.3 > ------------------------------------------------------ > switch# show openflow protocol status > protocol support: > OpenFlow13 > ------------------------------------------------------ > > but when i run ryu and v350 is connected > ------------------------------------------------------ > switch# show openflow controller status > tcp:192.169.1.94:6633 role: other status: online > ------------------------------------------------------ > i found that when execute "datapath.send_msg(mod)" in > /ryu/ryu/app/qos_simple_switch_13.py > error occurs: > EVENT ofp_event->SimpleSwitch13 EventOFPPacketIn > packet in 128983859618 00:16:d3:2a:20:fe b4:99:ba:a9:69:21 19 > error msg ev version: 0x4 msg_type 0x1 xid 0xf142998c > OFPErrorMsg(code=7,data='\x04\x0e\x00`\xf1B\x99\x8c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x00@\x11\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x16\x80\x00\x00\x04\x00\x00\x00\x13\x80\x00\x06\x06',type=4) > type 0x4 code 0x7 0x4 0xe 0x0 0x60 0xf1 0x42 0x99 0x8c 0x0 0x0 0x0 0x0 0x0 > 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x1 0x0 0x0 0x0 0x0 0x0 0x0 0x1 > 0x0 0x0 0x40 0x11 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x1 0x0 > 0x16 0x80 0x0 0x0 0x4 0x0 0x0 0x0 0x13 0x80 0x0 0x6 0x6 > > now i can't debug the code skillfully,would you please have a look? > the debug info is attached.
> OFPErrorMsg(code=7,data=...type=4) According to the of13.4spec, error means the following. TYPE:OFPET_BAD_MATCH = 4, /* Error in match. */ CODE:OFPBMC_BAD_VALUE = 7, /* Unsupported value in a match field. */ For Your Information, you can check out what kinds of actions and matches a switch supports (or not) http://osrg.github.io/ryu/certification.html thanks > > thanks! > xueuganwen > > On 2015年04月10日 12:25, Minoru TAKAHASHI wrote: >> Hi, >> >> On 2015年04月08日 19:22, [email protected] wrote: >>> Hi,everybody: >>> Today i try to test ryu per-flow qos,but it's not working. >>> what i have done are show below,any suggestions will be very appreciated. >>> refs: http://osrg.github.io/ryu-book/en/html/rest_qos.html (the per-flow >>> part) >>> topology: >>> >>> >>> Notice:v350 is centec v350 sdn switch which is supported by ryu. >>> now v350 switch is connected with ryu controller. >>> >>> v350 dpid:0000001e080981a2(from ryu output) >>> >>> *set v350 ovsdb:* >>> ovs-vsctl set-manager ptcp:6632 >>> *use ryu rest_qos to set qos:* >>> curl -X PUT -d '"tcp:192.168.1.33:6632"' http://localhost:8080/v1.0/ >>> curl -X POST -d '{"port_name": "eth-0-19", "type": "linux-htb", >>> "max_rate": "1000000", "queues": [{"max_rate": "500000"}, {"min_rate": >>> "800000"}]}' http://localhost:8080/qos/queue/0000001e080981a2 >>> curl -X POST -d '{"match": {"nw_dst": "192.168.1.239", "nw_proto": >>> "UDP", "tp_dst": "5002"}, "actions":{"queue": "1"}}' >>> http://localhost:8080/qos/rules/0000001e080981a2 >>> >>> *v350 add flows to let PC1 can ping PC2 :* >>> ovs-vsctl add-flow br0 "in_port=19,actions=output:23" -O openflow13 >>> ovs-vsctl add-flow br0 "in_port=23,actions=output:19" -O openflow13 >> I think that following is unnecessary. >> >>> ovs-vsctl add-flow br0 "in_port=19,actions=output:23" -O openflow13 >>> ovs-vsctl add-flow br0 "in_port=23,actions=output:19" -O openflow13 >> Because "qos_simple_switch_13" adds the flow(table=1) automatically. >> >> thanks >> >>> *v350 flows:* >>> switch# ovs-ofctl dump-flows br0 >>> NXST_FLOW reply (xid=0x4): >>> cookie=0x1, duration=1272.22s, table=0, n_packets=0, n_bytes=0, >>> priority=1,udp,nw_dst=192.168.1.239,tp_dst=5002 actions=set_queue:1 >>> cookie=0x0, duration=402.636s, table=0, n_packets=425, n_bytes=43903, >>> in_port=19 actions=output:23 >>> cookie=0x0, duration=393.04s, table=0, n_packets=733, n_bytes=127976, >>> in_port=23 actions=output:19 >>> cookie=0x0, duration=2082.526s, table=0, n_packets=165, n_bytes=31873, >>> priority=0 actions=drop >>> >>> *finally i use iperf to test the bandwidth between PC1 and PC2 ,the command >>> is the same as refs* >>> *but result is not limit in 1M.* >>> >>> Thank you! >>> >>> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ >>> [email protected] >>> >>> >>> ------------------------------------------------------------------------------ >>> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT >>> Develop your own process in accordance with the BPMN 2 standard >>> Learn Process modeling best practices with Bonita BPM through live exercises >>> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_ >>> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF >>> >>> >>> >>> _______________________________________________ >>> Ryu-devel mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/ryu-devel >>> >> ------------------------------------------------------------------------------ >> BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT >> Develop your own process in accordance with the BPMN 2 standard >> Learn Process modeling best practices with Bonita BPM through live exercises >> http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_ >> source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF >> _______________________________________________ >> Ryu-devel mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/ryu-devel > ------------------------------------------------------------------------------ BPM Camp - Free Virtual Workshop May 6th at 10am PDT/1PM EDT Develop your own process in accordance with the BPMN 2 standard Learn Process modeling best practices with Bonita BPM through live exercises http://www.bonitasoft.com/be-part-of-it/events/bpm-camp-virtual- event?utm_ source=Sourceforge_BPM_Camp_5_6_15&utm_medium=email&utm_campaign=VA_SF _______________________________________________ Ryu-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ryu-devel
