[ovs-discuss] ovs-ofctl doesn't talk proper OF 1.2
Ben Pfaff
blp at nicira.com
Wed Sep 11 16:32:00 UTC 2013
On Wed, Sep 11, 2013 at 03:51:51PM +0200, Torbjorn Tornkvist wrote:
> I'm implementing the OF 1.2 protocol and was trying to set an
> ipv4-src address in an action.
> It seems however that OVS (1.11) dosn't talk proper OF 1.2.
OpenFlow 1.1 and later support is experimental. Thanks for trying it
out and reporting a problem.
> Have a look at two wireshark sessions at:
>
> http://picpaste.com/pics/of-1.2-CqqrPKPw.1378906446.png
That picture is almost unreadably fuzzy because it is an 1852 x 1113
image scaled down to 640 x 384. If you post screenshots, please make
sure them readable.
> The left window is me talking 1.2 and the right window is the result
> of this command:
>
> ovs-ofctl --protocol=OpenFlow12 add-flow 'tcp:192.168.1.120:6633
> lsw' 'in_port=1,dl_src=86:d7:3c:a1:bb:d5,dl_type=0x8000
> actions=mod_nw_src:192.168.111.111'
"lsw"?
> Look at the Action Type!
I'm looking at it. It looks like a bunch of fuzz. It *might* say 00 10
on the left and 00 05 on the right. Oh, I guess that "set-field" is 25
so that must be 00 19 on the left.
> Is it a bug? Is it intentional? or what?
OpenFlow 1.1 uses action 5 to mean OFPAT_SET_NW_SRC.
OpenFlow 1.2 action numbering is backward-compatible with OpenFlow 1.1,
so presumably it means that same thing in OpenFlow 1.2.
I guess the point you're trying to make is that OVS should translate
mod_nw_src into set_field for OF1.2? That's reasonable; I'll make a
note.
> Btw: when I send the proper 1.2 message, I get the following in the
> daemon.log:
>
> ovs-vswitchd: ovs|11535|meta_flow|WARN|destination field ip_src
> lacks correct prerequisites
Based on the command you provided above, this is probably because you
think that 0x8000 is the ethernet type for IPv4. It's not.
> Any ideas on how to perform some interop. testing of the various OF
> proto versions?
I don't know a good way, but this is already some useful feedback.
Thanks.
More information about the discuss
mailing list