Commit b510a9f
committed
[multicast] M2P forwarding, OPTE port subscription, and sled-agent propagation
Complete the multicast data path by adding per-sled M2P (multicast-to-
physical) mapping, forwarding entry management, and OPTE port subscription
for multicast group members.
Sled-agent:
- Add `multicast_subscribe` / `multicast_unsubscribe` endpoints (API v29)
that configure M2P, forwarding, and OPTE port subscription for a VMM
- OPTE port_manager gains set/clear operations for M2P and forwarding
- Port subscription cleanup on PortTicket release
Nexus:
- New `sled.rs` (MulticastSledClient) encapsulating all sled-agent
multicast interactions: subscribe/unsubscribe, M2P/forwarding
propagation and teardown
- Groups RPW propagates M2P and forwarding entries to all member sleds
after DPD configuration, with convergent retry on failure
- Members RPW uses MemberReconcileCtx to thread shared reconciliation
state. This handles subscribe on join, unsubscribe on leave, and
re-subscribe on migration
- Dataplane client updated for bifurcated replication groups
Tests:
- Integration tests for M2P/forwarding/subscribe lifecycle
- Instance migration multicast re-convergence1 parent a741697 commit b510a9f
34 files changed
Lines changed: 4436 additions & 955 deletions
File tree
- illumos-utils/src/opte
- nexus
- mgs-updates/src/test_util
- src/app
- background/tasks
- multicast
- multicast
- tests/integration_tests/multicast
- openapi/sled-agent
- sled-agent
- api/src
- src
- bootstrap
- sim
- workspace-hack
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
586 | 586 | | |
587 | 587 | | |
588 | 588 | | |
589 | | - | |
590 | | - | |
| 589 | + | |
| 590 | + | |
591 | 591 | | |
592 | 592 | | |
593 | 593 | | |
| |||
648 | 648 | | |
649 | 649 | | |
650 | 650 | | |
651 | | - | |
| 651 | + | |
652 | 652 | | |
653 | 653 | | |
654 | 654 | | |
| |||
657 | 657 | | |
658 | 658 | | |
659 | 659 | | |
660 | | - | |
| 660 | + | |
661 | 661 | | |
662 | 662 | | |
663 | 663 | | |
| |||
721 | 721 | | |
722 | 722 | | |
723 | 723 | | |
724 | | - | |
| 724 | + | |
725 | 725 | | |
726 | 726 | | |
727 | 727 | | |
| |||
0 commit comments