Pushed to master with an updated comment and description:
Clarify tunnel wildcarding.
It would seem we should set the 'tunnel.ip_dst' in 'wc' when calling
tnl_port_should_receive(), as it is reading that flow field. However,
since tunnels' datapath port numbers are different from the non-tunnel
ports, and we always unwildcard the 'in_port', we do not need to
unwildcard the 'tunnel.ip_dst' for non-tunneled packets.
Also, 'nw_tos' need not be unwildcarded if it is not examined.
Signed-off-by: Jarno Rajahalme <[email protected]>
Jarno
On Apr 9, 2014, at 1:38 PM, Ben Pfaff <[email protected]> wrote:
> On Tue, Apr 08, 2014 at 04:38:52PM -0700, Jarno Rajahalme wrote:
>> It would seem that we should set the 'tun_dst' in 'wc' when calling
>> tnl_port_should_receive(), as it is reading that flow field.
>>
>> However, tnl_port_should_receive() returns true, if the flow has
>> tunnel metadata. If there is no tunnel metadata, then there is
>> nothing to mask, so we do not set the 'ip_dst' field in the 'wc' if
>> this test fails, even though we used that field to determine the
>> non-presence of the tunnel metadata.
>>
>> Datapath flow matching ensures that a key that does not include tunnel
>> metadata cannot match a tunneled packet.
>>
>> Signed-off-by: Jarno Rajahalme <[email protected]>
>
> Acked-by: Ben Pfaff <[email protected]>
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev