Hi,

I've just joined the list and found this in the archive. I don't know 
how to respond to an older thread, so I post it here:

Have you had any success yet?

I'm also working with Ryu and HP switches and experienced similar 
behaviours. As far as I understand this, it's not an issue with Ryu but 
rather that the switch accepts the command because the syntax is correct 
but can't install the flow.
HP switches have some limitations on what types of actions and matches 
the can install in certain tables.
Per default flows in table 100 will be handled by hardware and flows in 
table 200 will be handled in software.
So if you try to install a flow in a 'hardware table' and the switch 
can't process that flow in hardware it simply won't install the flow and 
also don't give an error message.

I'm thinking of implementing 2 solutions:
First I don't let users install flows the switch can't process. (This is 
tricky to implement because I don't yet fully grasp which flows HP 
supports) and secondly after a add-flow I get all flows and check if it 
has been installed. If not I throw a warning in the interface.

Hope this helps a little.

Cheers
Marvin


And props to the Ryu Team. I really like this controller!


On 2015-03-05 22:39, Hakan Calim wrote:
 > Hi all,
 >
 > I try to add flows on my OpenFlow Switch which is created on a HP 5900
 > as a OpenFlow instance. I am using app/ofctl_rest.py. When I send the
 > following command I get:
 >
 > curl -X GET http://10.16.0.10:8080/stats/flow/637929653646665
 > {"637929653646665": [{"actions": ["OUTPUT:6"], "idle_timeout": 0,
 > "cookie": 0, "packet_count": 1031, "hard_timeout": 0, "byte_count":
 > 18446744073709551615, "length": 96, "duration_nsec": 4294967295,
 > "priority": 1, "duration_sec": 167475, "table_id": 0, "flags": 0,
 > "match": {"dl_dst": "52:54:00:53:31:7d", "in_port": 7}}, {"actions":
 > ["OUTPUT:7"], "idle_timeout": 0, "cookie": 0, "packet_count": 864,
 > "hard_timeout": 0, "byte_count": 18446744073709551615, "length": 96,
 > "duration_nsec": 4294967295, "priority": 1, "duration_sec": 167475,
 > "table_id": 0, "flags": 0, "match": {"dl_dst": "52:54:00:3f:6e:a6",
 > "in_port": 6}}, {"actions": ["OUTPUT:4294967293"], "idle_timeout": 0,
 > "cookie": 0, "packet_count": 6113, "hard_timeout": 0, "byte_count":
 > 18446744073709551615, "length": 80, "duration_nsec": 4294967295,
 > "priority": 0, "duration_sec": 90772, "table_id": 0, "flags": 0,
 > "match": {}}]}
 >
 > Then I try to add a flow with the following command:
 > curl -X POST -d '{ "dpid": 637929653646665, "cookie": 2, "cookie_mask":
 > 2, "table_id": 0, "idle_timeout": 10, "hard_timeout": 10, "priority":
 > 11111, "flags": 1, "match":{ "in_port":7}, "actions":[ {
 > "type":"OUTPUT", "port": 6 } ] }' 
http://10.16.0.10:8080/stats/flowentry/add
 >
 > On the controller I see:
 > (18345) accepted ('10.16.0.1', 57610)
 > 10.16.0.1 - - [04/Mar/2015 15:16:17] "GET /stats/flow/637929653646665
 > HTTP/1.1" 200 1012 0.112544
 >
 >
 > but nothing happens. When I call again the GET command from above I get
 > the same result. Nothing changed. What is wrong?
 >
 > Best regards,
 > Hakan

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Ryu-devel mailing list
Ryu-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to