[ovs-git] [openvswitch/ovs] ba07cf: Handle gratuitous ARP requests and replies in tnl_...

GitHub noreply at github.com
Tue Apr 10 23:27:10 UTC 2018


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: ba07cf222a0cd05939941eb49bbabb42c1f1bcbb
      https://github.com/openvswitch/ovs/commit/ba07cf222a0cd05939941eb49bbabb42c1f1bcbb
  Author: Manohar Krishnappa Chidambaraswamy <manohar.krishnappa.chidambaraswamy at ericsson.com>
  Date:   2018-04-10 (Tue, 10 Apr 2018)

  Changed paths:
    M lib/flow.h
    M lib/tnl-neigh-cache.c

  Log Message:
  -----------
  Handle gratuitous ARP requests and replies in tnl_arp_snoop()

Problem:
========
In user-space tunneling implementation, tnl_arp_snoop() snoops only ARP
*reply* packets to resolve tunnel nexthop IP addresses to MAC addresses.
Normally the ARP requests are periodically sent by the local host IP stack,
so that the ARP cache in OVS is refreshed and entries do not time out.
However, if the remote tunnel nexthop is a VRRP IP, and the gateway
periodically sends gratuitous ARP *requests* to announce itself,
tnl_arp_snoop() treats them as INVALID. Consequently, the ARP cache in OVS
expires after 10 minutes, which results in dropping of the next packet(s)
until a new ARP request is responded to.

Fix:
====
Enhance the tunnel neighbor resolution logic in OVS to not only snoop on
ARP replies but also on gratuitous ARP requests.

Signed-off-by: Jan Scheurich <jan.scheurich at ericsson.com>
From: Manohar K C <manohar.krishnappa.chidambaraswamy at ericsson.com>
CC: Jan Scheurich <jan.scheurich at ericsson.com>
Signed-off-by: Ben Pfaff <blp at ovn.org>




More information about the git mailing list