[ovs-git] [openvswitch/ovs] b1356b: tnl-neigh: Use outgoing ofproto version.

Flavio Leitner noreply at github.com
Wed Aug 28 18:26:57 UTC 2019


  Branch: refs/heads/branch-2.9
  Home:   https://github.com/openvswitch/ovs
  Commit: b1356b50aa6a4242f425d867c5272a2a11583361
      https://github.com/openvswitch/ovs/commit/b1356b50aa6a4242f425d867c5272a2a11583361
  Author: Flavio Leitner <fbl at sysclose.org>
  Date:   2019-08-28 (Wed, 28 Aug 2019)

  Changed paths:
    M ofproto/ofproto-dpif-xlate.c
    M tests/tunnel.at

  Log Message:
  -----------
  tnl-neigh: Use outgoing ofproto version.

When a packet needs to be encapsulated in userspace, the endpoint
address needs to be resolved to fill in the headers. If it is not,
then currently OvS sends either a Neighbor Solicitation (IPv6)
or an ARP Query (IPv4) to resolve it.

The problem is that the NS/ARP packet will go through the flow
rules in the new bridge, but inheriting the ofproto table version
from the original packet to be encapsulated. When those versions
don't match, the result is unexpected because no flow rules might
be visible, which would cause the default table rule to be used
to drop the packet. Or only part of the flow rules would be visible
and so on.

Since the NS/ARP packet is created by OvS and will be injected in
the outgoing bridge, use the corresponding ofproto version instead.

Reviewed-by: David Marchand <david.marchand at redhat.com>
Acked-By: Vasu Dasari <vdasari at gmail.com>
Signed-off-by: Flavio Leitner <fbl at sysclose.org>
Signed-off-by: Ben Pfaff <blp at ovn.org>




More information about the git mailing list