RIOT icon indicating copy to clipboard operation
RIOT copied to clipboard

NDP: implement missing functionality

Open miri64 opened this issue 9 years ago • 5 comments

This is an overview issue to organize ongoing development of IPv6 neighbor discovery:

  • [ ] Main ND, RFC 4861
    • [x] Router Discovery and Prefix Discovery; section 6 [#3049 -> merged]
    • [x] Address Resolution and Neighbor Unreachability Detection; section 7 [#2910 -> merged]
    • [ ] Redirect Function; section 8
  • [x] IPv6 Stateless Address Autoconfiguration, RFC 4862
    • [x] Assign Link-local address to interface [as part of #2944]
    • [x] Duplicate Address Detection
    • [x] Creating Global Addresses
  • [ ] Neighbor Discovery Optimization for 6LoWPANs, RFC 6775 [#3134 -> merged]

Unsure, because important for understanding of RFC 6775, but unknown if implementation effort is needed:

Optional:

  • [x] Unhastify NUD, RFC 7048 (as part of #7925)
  • [ ] Router prioritization, RFC 4191

miri64 avatar May 23 '15 09:05 miri64

Should look into this when working on #5293.

miri64 avatar Oct 17 '16 14:10 miri64

@miri65 now that the new NDP is nearly there, could you update the "missing functionalities" list please

PeterKietzmann avatar Nov 27 '17 15:11 PeterKietzmann

@miri65

I'm getting older :sob:

This is still up-to-date. The NIB did not add any significant new functionality. It's in the project as a reminder to the testers, that some functionality isn't implemented yet (and won't be in #7925).

(side-note: even if there would be new functionalities, I only would update them after #7925 got merged ;-))

miri64 avatar Nov 27 '17 15:11 miri64

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. If you want me to ignore this issue, please mark it with the "State: don't stale" label. Thank you for your contributions.

stale[bot] avatar Aug 10 '19 06:08 stale[bot]

@miri64 @benpicco I was wondering what happens when the ABRO valid lifetime expires since RFC 6775 is rather ambiguous (at least to me it is) on this subject. For example, it states on page 29:

When the ABRO Valid Lifetime associated with a 6LBR times out, all information related to that 6LBR MUST be removed.

But then on page 36 it says:

The router keeps state for each 6LBR that it sees with an ABRO. This includes the version number, the Valid Lifetime, and the complete set of PIOs and 6COs. The prefixes are timed out based on the Valid Lifetime in the PIO. The Context Prefix is timed out based on the Valid Lifetime in the 6CO.

I've tried digging through the code and I think I understood that RIOT just times out all information stored for a given 6LBR (i.e., including contexts and prefixes) when the ABRO valid lifetime expires, regardless of the fact that prefix and context lifetimes may not have expired yet. Conversely I understood from the code that when prefixes and / or contexts expire before the ABRO does, they are timed-out independently. Is my assumption correct?

tinstructor avatar Nov 20 '20 11:11 tinstructor