Skip to content

[DOCS] Document netkit pod interfaces for Calico CNI (tech preview)#2713

Open
tomastigera wants to merge 2 commits into
tigera:mainfrom
tomastigera:tomas/docs-netkit-cni
Open

[DOCS] Document netkit pod interfaces for Calico CNI (tech preview)#2713
tomastigera wants to merge 2 commits into
tigera:mainfrom
tomastigera:tomas/docs-netkit-cni

Conversation

@tomastigera
Copy link
Copy Markdown
Contributor

@tomastigera tomastigera commented May 8, 2026

Product Version(s):
Calico Open Source (next, master)

Issue:
Companion to projectcalico/calico#12619 (CNI support for device_type: netkit) and tigera/operator#4767 (operator-side linuxPodInterfaceType field). Tracked under CORE-10672.

Link to docs preview:
Will fill in once the build finishes.

SME review:

  • An SME has approved this change.

DOCS review:

  • A member of the docs team has approved this change.

Additional information:

Adds a tech-preview section to calico/operations/ebpf/enabling-ebpf.mdx describing how to opt the Calico CNI plugin into creating netkit L2 pairs (Linux 6.7+) instead of veth, via spec.calicoNetwork.linuxPodInterfaceType=Netkit on the operator Installation. Covers:

  • The performance motivation (BPF programs attach via BPF_NETKIT_PRIMARY inside ndo_start_xmit() for better throughput and tail latency under contention).
  • The 6.7 kernel prerequisite, with the silent fallback to veth on older kernels (so the field is safe on heterogeneous clusters).
  • Reverting: existing netkit interfaces stay, but the eBPF data plane treats them as veth (TC/TCX) — only newly created pods get veth.

Notes:

  • The _api.mdx reference is auto-generated from the operator API by crd-ref-docs, so the new LinuxPodInterfaceType field will pick up automatically on the next docs build.
  • This page is in calico/operations/ebpf/; the new section is contextually with the eBPF data plane because that is where the perf benefit applies.

Merge checklist:

  • Deploy preview inspected wherever changes were made
  • Build completed successfully
  • Tests have passed

Adds a section to the eBPF "enabling" page describing how to opt the
Calico CNI plugin into creating netkit L2 pairs (Linux 6.7+) instead of
veth, via spec.calicoNetwork.linuxPodInterfaceType=Netkit on the
operator's Installation. Notes the BPF_NETKIT_PRIMARY perf benefit, the
6.7 kernel prerequisite (with silent veth fallback on older kernels),
and the asymmetric revert behavior (existing netkit interfaces stay,
but eBPF treats them as veth via TC/TCX).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 8, 2026 19:36
@netlify
Copy link
Copy Markdown

netlify Bot commented May 8, 2026

Deploy Preview for calico-docs-preview-next ready!

Name Link
🔨 Latest commit eac4bdf
🔍 Latest deploy log https://app.netlify.com/projects/calico-docs-preview-next/deploys/6a19cfbf22439a000823e77d
😎 Deploy Preview https://deploy-preview-2713--calico-docs-preview-next.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify
Copy link
Copy Markdown

netlify Bot commented May 8, 2026

Deploy Preview for tigera failed. Why did it fail? →

Built without sensitive environment variables

Name Link
🔨 Latest commit eac4bdf
🔍 Latest deploy log https://app.netlify.com/projects/tigera/deploys/6a19cfbf3354d900071dfaca

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds documentation to Calico OSS “next” eBPF enablement guide describing how to opt the Calico CNI into using Linux netkit pod interfaces (tech preview) for improved eBPF dataplane performance on Linux 6.7+.

Changes:

  • Documented the netkit vs veth behavior and performance motivation for the eBPF data plane.
  • Added prerequisites (Linux 6.7+) and operator-based enable/revert procedures via spec.calicoNetwork.linuxPodInterfaceType.

Comment thread calico/operations/ebpf/enabling-ebpf.mdx
Comment thread calico/operations/ebpf/enabling-ebpf.mdx Outdated
@tomastigera tomastigera marked this pull request as ready for review May 14, 2026 18:48
@tomastigera tomastigera requested a review from a team as a code owner May 14, 2026 18:48
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
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.

2 participants