Skip to content

[dualtor]: Add IPv6 only active-active control plane design - #2403

Open
zjswhhh wants to merge 3 commits into
sonic-net:masterfrom
zjswhhh:soc_ipv6
Open

zjswhhh wants to merge 3 commits into
sonic-net:masterfrom
zjswhhh:soc_ipv6

Conversation

@zjswhhh

@zjswhhh zjswhhh commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

[dualtor]: Add IPv6 only active-active control plane design

Add a SONiC-level design document for IPv6-only active-active DualToR control-plane support. The document describes the intended behavior for config generation, linkmgrd, ycabled, compatibility, error handling, and sonic-mgmt validation without implementation-specific details.

The design is intentionally conservative: existing IPv4-only and dual-stack deployments continue to use IPv4, and IPv6 is selected only when the corresponding IPv4 field is missing.

Repo Title State
sonic-linkmgrd [linkmgrd]: Add IPv6 only active-active link probing GitHub issue/pull request detail
sonic-platform-daemons [ycabled]: Add IPv6 only active-active SoC gRPC GitHub issue/pull request detail
sonic-buildimage [dualtor]: Add IPv6 only active-active mux support GitHub issue/pull request detail
sonic-mgmt [nic_simulator]: Add IPv6 only active-active gRPC support GitHub issue/pull request detail

sign-off: Jing Zhang zhangjing@microsoft.com

Signed-off-by: Jing Zhang <zhangjing@microsoft.com>
@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
No pipelines are associated with this pull request.

Signed-off-by: Jing Zhang <zhangjing@microsoft.com>
@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
No pipelines are associated with this pull request.

@zjswhhh
zjswhhh marked this pull request as ready for review June 23, 2026 18:43
@prsunny
prsunny requested review from Ndancejic and lolyu June 30, 2026 18:48

@lolyu lolyu left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: #2403

Clear, conservative, well-structured HLD. I read the full document and verified its load-bearing claims against source rather than taking them on faith:

  • ✅ The MUX_CABLE schema already carries server_ipv6/soc_ipv6 (confirmed in sonic-swss muxorch.cpp), so "no new Config DB fields" holds.
  • ✅ Loopback2 = prober source / Loopback3 = GUID source matches the actual linkmgrd source (MuxManager.h, LinkProberBase.cpp, DbInterface.cpp) and the companion PR #344.
  • ✅ Companion linkmgrd #344 exists, same author, and its IPv4-first/IPv6-fallback logic matches this doc's Component Requirements.

The design accurately describes the feature its companion PRs implement. Nothing blocks. Two substantive suggestions inline (independent server-vs-soc family selection; missing-loopback error handling); the rest is polish.

One structural point that doesn't anchor to a single line — the server-vs-soc family cross-product. server_* (linkmgrd probing) and soc_* (ycabled gRPC) are selected independently per-field, so a port with server_ipv4 present but only soc_ipv6 would probe over IPv4 while doing gRPC over IPv6. Is that mixed-family case intended and supported? The Compatibility matrix only varies the soc_* axis and doesn't show the server×soc cross-product. Recommend either stating explicitly that family is selected independently per endpoint (and confirming mixed is valid), or adding a constraint that a port's server and soc endpoints must share a family. That's the one genuine spec gap — see inline #1.

Minor (polish): the <ul><li> HTML inside the Component Requirements table renders on GitHub but may not on the SONiC doc site's static generator or other markdown processors — worth checking whether the repo's other HLDs use raw HTML in tables or prefer sub-sections.

Comment thread doc/dualtor/active_active_ipv6_only_control_plane.md Outdated
Comment thread doc/dualtor/active_active_ipv6_only_control_plane.md
Comment thread doc/dualtor/active_active_ipv6_only_control_plane.md
Signed-off-by: Jing Zhang <zhangjing@microsoft.com>
@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
No pipelines are associated with this pull request.

@zjswhhh
zjswhhh requested a review from lolyu September 8, 2026 02:56
@zjswhhh

zjswhhh commented Sep 8, 2026

Copy link
Copy Markdown
Contributor Author

Hi @lolyu - addressed the comment, please help review again

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants