vpp-expert

Provide VPP plugin and DPDK architecture guidance with C/C++ boundaries.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/stolyarchuk/copilot-skills --skill vpp-expert
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vpp-expert
Source: https://github.com/stolyarchuk/copilot-skills/tree/main/skills/vpp-expert
Command: npx skills add https://github.com/stolyarchuk/copilot-skills --skill vpp-expert

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides authoritative guidance for designing and implementing high-performance VPP/DPDK components, including plugins, nodes, and dataplane integrations, with practical patterns and safe design practices.

Core Features & Use Cases

  • Architecture guidance for VPP plugins, CLI handlers, and dataplane feature arcs.
  • Clear boundaries between C (VPP-facing) and C++ (core logic), bridged by a stable c_api.h.
  • Practical examples and references to official VPP and DPDK docs to accelerate production-ready delivery.

Quick Start

Provide a production-grade architecture plan for a new VPP/DPDK dataplane feature, including a C/C++ boundary strategy and a sample c_api.h bridge.

Frequently Asked Questions about vpp-expert

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure a VPP plugin to mix C and C++ code safely?

Structure VPP plugins by confining C to VPP-facing components and C++ to core logic, bridged by a stable c_api.h interface. This separation ensures safe, scalable dataplane operations while allowing complex logic in C++.

When should I use C versus C++ when developing DPDK integrations?

Use C for DPDK integrations and VPP-facing components requiring direct framework interaction, and C++ for core logic. A stable c_api.h bridge connects the boundaries, maintaining production-grade performance and safe design.

What is the best way to design a testable VPP dataplane feature arc?

Design a VPP dataplane feature arc by establishing clear C/C++ boundaries and outlining a minimal, testable example. Emphasize validation steps and reference official VPP and DPDK docs to ensure scalable architecture.

Can I use C++ for core logic in a VPP plugin without breaking the dataplane?

Yes, you can use C++ for core logic in a VPP plugin by bridging it with a stable c_api.h interface. This pattern maintains high-performance dataplane execution while isolating complex C++ logic from VPP-facing C components.

How do I start building a production-grade VPP plugin architecture?

Start building a VPP plugin by creating a production-grade architecture plan that defines a C/C++ boundary strategy and a sample c_api.h bridge. Include validation steps and reference materials to guide safe, scalable delivery.

Are there limitations to mixing C and C++ in high-performance networking plugins?

Mixing C and C++ in high-performance networking plugins requires strict boundary management via a stable c_api.h interface to prevent ABI mismatches. You must carefully delineate VPP-facing C components from C++ core logic to avoid scalability issues.