Hi Gopal,

What you're doing seems to be right, but my (very arbitrary) guess is
that you either have some endian issues or are not packing the message
correctly.  The way to check is to grab the openflow wireshark
dissector from the openflow reference implementation.  Let it to parse
your messages and make sure that all of the bits are where you think
they are.  If that all works out, it's possible (though hopefully less
likely) that you've found a bug in the switch you're using -- what
switch are you using?


- Rob
.



On Tue, May 17, 2011 at 8:00 AM, G A <[email protected]> wrote:
> Hi all,
>
> Been experimenting with openflow 1.0 for past few months and I'm a bit (err..
> majorly) confused with the setting for wildcards when sending a
> ofp_flow_stats_request message. I can see that if I set the wildcards to 'all'
> (i.e., 0x3fffff), I will get back all flows no matter what I specify for the
> other match fields. However, I want to fetch some flows using "in_port" as the
> filter criteria. I tried to set the last bit to 0 and some in_port value.
>
>
>
> match.wildcards = 0x3ffffe  (i.e., last bit cleared - aka. in_port is not
> wildcarded).
>
>
> match.in_port   = 3 (or any other value).
>
> I kept only a single flow in the OF-switch with in_port = 2. But no matter 
> what
> value I apply for match.in_port in the ofp_flow_stat_request, I am always able
> to retrieve this flow. What am I doing wrong ?  Here is the actual hexdump
> (slightly edited with comments) as seen at the reference controller: Starts 
> off
> with the 8 byte header ...
>
>
> Request = 01 10 00 38 00 18 84 0e  <-- header
> 00 01 00 00 <-- ofp_stat_request fields indicating ofp_flow_stat_request
> 00 3f ff fe <-- wildcards
> 00 03 <-- in_port
> 00 00 00 00 00 01 00 00 00 00 00 02 ff ff 04 00 08 00 0c 06 00 00 0a 00 00 01 
> 0a
> 00 00 02 04 00 04 00 ff 00 ff ff
>
> Response = 01 11 00 6c 00 18 84 0e  <- header
> 00 01 00 00 00 60 01 00 00 3f ff 8f 00 02 01 02 03 04 05 06 07 08 09 01 02 03 
> 00
> 2d 04 00 08 00 0c 06 00 00 0a 00 03 06 0a 00 00 08 09 c4 08 3d 00 00 0f c8 0e 
> 7b
> e2 c0 02 8f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00 00 00 
> 00
> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 01 ff ff
>
> Note that even though I specified in_port as 3 in my request, I got back a 
> flow
> with in_port of 2.  Is the original wildcard value in the flow relevant 
> during a
> flow stat request ?
>
>
> Thanks for any help I can get.
>
> regards
> Gopal Agrawal
> _______________________________________________
> openflow-discuss mailing list
> [email protected]
> https://mailman.stanford.edu/mailman/listinfo/openflow-discuss
>
_______________________________________________
openflow-discuss mailing list
[email protected]
https://mailman.stanford.edu/mailman/listinfo/openflow-discuss

Reply via email to