Hasty Briefsbeta

Bilingual

Closing the IPv6 First-Packet Gap with Grand

10 hours ago
  • IPv6 Neighbour Discovery has a subtle asymmetry: a host knows its router before the router knows the host.
  • GRAND (Gratuitous Neighbour Discovery) fixes this by having hosts proactively announce their IPv6 addresses via unsolicited Neighbour Advertisements.
  • The asymmetry causes first return packets to be delayed or dropped while the router resolves the host's link-layer address reactively.
  • RFC 9131 specifies that routers should create a STALE Neighbour Cache entry upon receiving a valid unsolicited Neighbour Advertisement for an unknown address.
  • Implementing GRAND in FreeBSD required adding queueing and delayed-transmission infrastructure for Neighbour Advertisements, including handling multiple addresses, anycast, and proxy cases.
  • GRAND also covers link-layer address changes and integrates with RFC 4861 timing rules to avoid multicast bursts.
  • RFC 9898 identifies GRAND as a mechanism to address router forwarding delays in real IPv6 deployments.