This group is locked. No changes can be made to the group while it is locked.
Error when installing flow with ArbitraryMask
Vincent Jahjah <vincent_jahjah@...>
I have been using OpenFlowPlugin a bit, and I have been noticing strange behavior regarding the rules I've been installing in the newer version of my code.
I have been successfully installing flows with ArbitraryBitMask on ipv4 addresses, but I have found that some such specific flows were causing errors in openflowplugin.
Here is the code relevant to the error:
Here are the errors I get every time I install a rule that walks through these lines:
Explaination: I may or may not know the IP of the flows. If I do not know the IP of the flows, I put an "any" kind of mask that is scattered across the least significant n bits of the unknown ip addresses.
If the IP address is known, typically, I will not set a mask, and I will put the known address instead. This may lead to having the "set" the fields twice, overwriting the previous values... but the resulting values always seem clean. Last attempt, I printed the contents of my matcher, and got the following:
(first flow installed: the known address was injected, which caused an error)
SRC: Ipv4Address [_value=10.99.99.1] DEST: Ipv4Address [_value=0.0.0.0]
SRCM:DottedQuad [_value=255.255.255.255] DESTM: DottedQuad [_value=0.0.0.3]
(second flow installed: I purposefully commented the lines that would set the destination, resulting in null destination fields. This did not cause any errors. I know this from experiment, although it was not obvious with this experiment alone.)
SRC: Ipv4Address [_value=0.0.0.0] DEST: null
SRCM:DottedQuad [_value=0.0.0.3] DESTM: null
Interestingly, if I invert the values, I still get an error, and still an error concerning the destination.
The flows that don't fail are installed correctly, as they are shown by "ovs-ofctl dump-flows".
... My question is... what's wrong here? Obviously, "10.99.99.1" and "255.255.255.255" are valid Ipv4Addresses and DottedQuads. They are by no means "malformed".