HomeFreeBSD

Bump amount of queued packets in for unresolved ARP/NDP entries to 16.

Description

Bump amount of queued packets in for unresolved ARP/NDP entries to 16.

Currently default behaviour is to keep only 1 packet per unresolved entry.
Ability to queue more than one packet was added 10 years ago, in r215207,
though the default value was kep intact.

Things have changed since that time. Systems tend to initiate multiple
connections at once for a variety of reasons.
For example, recent kern/252278 bug report describe happy-eyeball DNS
behaviour sending multiple requests to the DNS server.

The primary driver for upper value for the queue length determination is
memory consumption. Remote actors should not be able to easily exhaust
local memory by sending packets to unresolved arp/ND entries.

For now, bump value to 16 packets, to match Darwin implementation.

The proper approach would be to switch the limit to calculate memory
consumption instead of packet count and limit based on memory.

We should MFC this with a variation of D22447.

Reviewers: manpages, network, bz, emaste

Reviewed By: emaste, gbe(doc), jilles(doc)
MFC after: 1 month
Differential Revision: https://reviews.freebsd.org/D28068

Details

Provenance
melifaroAuthored on Jan 11 2021, 7:50 PM
Reviewer
emaste
Differential Revision
D28068: Bump amount of queued packets in for unresolved ARP/NDP entries to 16.
Parents
rGd7a7d6a7c3c6: ndis: Per user request, delay removal to 14
Branches
Unknown
Tags
Unknown