[ovs-dev] Multiple ARP cache entries for one same dest IP?
Joo Kim
itsolution at gmail.com
Thu Aug 3 19:18:49 UTC 2017
Darrell,
I guess you said link-local addresses is one scenario where multiple
entries for a given IP may exist.
But, could you elaborate a bit more on 'routing space segmentation is
another'?
Thanks
On Wed, Aug 2, 2017 at 5:32 PM, Darrell Ball <dlu998 at gmail.com> wrote:
>
>
> On Wed, Aug 2, 2017 at 3:51 PM, Joo Kim <itsolution at gmail.com> wrote:
>
>> Hello,
>>
>> In OVS userspace implementation(See below), looks like, given a dest IP,
>> multiple ARP entries are allowed as long as bridge-names are different for
>> the same dest IP.
>> But, is there real scenario where multiple ARP entries for the same dest
>> IP
>> (because of different bridge-name)?
>>
>
>
> link-local addresses is one way
> routing space segmentation is another
>
>
>
>>
>>
>> int
>> tnl_neigh_lookup(const char br_name[IFNAMSIZ], const struct in6_addr *dst,
>> struct eth_addr *mac)
>> {
>> struct tnl_neigh_entry *neigh;
>> int res = ENOENT;
>> neigh = tnl_neigh_lookup__(br_name, dst);
>> if (neigh) {
>> *mac = neigh->mac;
>> res = 0;
>> }
>> return res;
>> }
>>
>> static struct tnl_neigh_entry *
>> tnl_neigh_lookup__(const char br_name[IFNAMSIZ], const struct in6_addr
>> *dst)
>> {
>> struct tnl_neigh_entry *neigh;
>> uint32_t hash;
>> hash = tnl_neigh_hash(dst);
>> CMAP_FOR_EACH_WITH_HASH (neigh, cmap_node, hash, &table) {
>> if (ipv6_addr_equals(&neigh->ip, dst) && !strcmp(neigh->br_name,
>> br_name)) {
>> neigh->expires = time_now() + NEIGH_ENTRY_DEFAULT_IDLE_TIME;
>> return neigh;
>> }
>> }
>> return NULL;
>> }
>> _______________________________________________
>> dev mailing list
>> dev at openvswitch.org
>> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>>
>
>
More information about the dev
mailing list