Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pimd: Candidate RP/BSR preparation #15969

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

eqvinox
Copy link
Contributor

@eqvinox eqvinox commented May 8, 2024

Please refer to individual commits.

Fixes that got accumulated during C-RP/C-BSR development:

  • DR priority range was wrong, 0 is valid
  • sending null registers before register stop age-out wasn't quite working right
  • order of update ops for join evaluation was slightly off
  • "no path to RP" wrongly rejects valid configurations

Preparations for C-RP/C-BSR:

  • make clang-format not wreck the YANG module lists
  • print a debug if we're RP ourselves (helpful when debugging C-RP)
  • allow sending unicast PIM packets that are routed normally by the kernel (C-RP advertisements)
  • pre-plumb in the NHT infrastructure for BSRs to track C-RPs

@eqvinox
Copy link
Contributor Author

eqvinox commented May 8, 2024

CI "Verify Source" complains about "do not add new typedefs"

⇒ we use typedefs for pim ipv4<>ipv6 switching

pimd/pim_upstream.c Outdated Show resolved Hide resolved
pimd/pim_upstream.c Outdated Show resolved Hide resolved
pimd/pim6_cmd.c Outdated Show resolved Hide resolved
pimd/pim_cmd.c Outdated Show resolved Hide resolved
pimd/pim_nb_config.c Outdated Show resolved Hide resolved
@eqvinox eqvinox force-pushed the pim-fixes-20240508-cand-rp-bsr-prep branch 2 times, most recently from 90836e6 to 039f5eb Compare May 8, 2024 19:57
@Jafaral Jafaral self-requested a review May 8, 2024 20:10
@Jafaral
Copy link
Member

Jafaral commented May 8, 2024

@eqvinox , does it make sense to split the fixes into a separate PR so we can backport those to older branches? You have already made the effort to put those in separate commits :)

@Jafaral
Copy link
Member

Jafaral commented May 8, 2024

Also, why did you not include pimd: no path to RP is not an error ?

UPDATE: I did see @donaldsharp's comment.

@eqvinox
Copy link
Contributor Author

eqvinox commented May 9, 2024

fixes split into #15975

The YANG module list is really better as 1-item-per-line.

Signed-off-by: David Lamparter <[email protected]>
This proved helpful in debugging the Candidate-RP code.

Signed-off-by: David Lamparter <[email protected]>
The Candidate-RP code is about to use these.

Signed-off-by: David Lamparter <[email protected]>
The upcoming Candidate-RP code needs to send PIM packets that go through
normal unicast routing, without forcing a specific output interface.
Allow passing in NULL ifp to do that.

Signed-off-by: David Lamparter <[email protected]>
For BSMs, we should track which of the RP candidates in the BSM message
are actually available, before trying to use them (which also puts them
in NHT for that).  This applies for both BSRs as well as BSM receivers.

Signed-off-by: David Lamparter <[email protected]>
@eqvinox eqvinox force-pushed the pim-fixes-20240508-cand-rp-bsr-prep branch from 039f5eb to 36fd6da Compare May 9, 2024 16:44
@github-actions github-actions bot added size/M and removed size/L labels May 9, 2024
Jafaral added a commit that referenced this pull request May 9, 2024
donaldsharp added a commit that referenced this pull request May 9, 2024
donaldsharp added a commit that referenced this pull request May 9, 2024
ton31337 added a commit that referenced this pull request May 11, 2024
pimd: fixes split off from #15969 (backport #15975)
ton31337 added a commit that referenced this pull request May 13, 2024
pimd: fixes split off from #15969 (backport #15975)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants