From fa54a080fac977157454beb0853daf0ac0e6af66 Mon Sep 17 00:00:00 2001 From: Yuriy Andamasov Date: Sat, 2 May 2026 17:25:47 +0300 Subject: feat(swap): import .md files and webp transition from myst/current MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Selective import from origin/myst/current (cf9c9b34): - Add/update 255 .md files (full MyST conversion plus webp ref updates) - Delete 175 PNG/JPG from docs/_static/images (webp twins already present) - Delete 5 autotest topology.png (webp twins already present) Preserved on swap (untouched): - All .rst files (incremental swap pattern) - conf.py, _ext/, _include/*.txt, .gitignore - 115 canary md-*.md files - 7 superpowers/specs/*.md design docs - Logos vyos-logo.png / vyos-logo-icon.png (referenced by conf.py) 🤖 Generated by [robots](https://vyos.io) --- docs/vpp/description.md | 87 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 docs/vpp/description.md (limited to 'docs/vpp/description.md') diff --git a/docs/vpp/description.md b/docs/vpp/description.md new file mode 100644 index 00000000..b6899564 --- /dev/null +++ b/docs/vpp/description.md @@ -0,0 +1,87 @@ +--- +lastproofread: '2026-02-16' +--- + +(vpp-description)= + +```{include} /_include/need_improvement.txt +``` + + +# VPP Dataplane Description + +## What is VPP in VyOS? + +VyOS supports two packet forwarding dataplanes: +- **Linux kernel dataplane** (traditional) +- **Vector Packet Processor (VPP) dataplane** (optional) + +VPP is a high-performance user space packet processor that improves +throughput for demanding network workloads. + +## Key Benefits + +**Performance Improvement** + +VPP uses vector-based packet processing instead of one-by-one handling, +delivering: +- **Higher throughput** compared to kernel forwarding. +- **Lower and more consistent latency** for time-sensitive applications. +- **Linear scaling** with additional CPU cores. + +**VyOS Hybrid Integration** + +VyOS supports both dataplanes simultaneously, providing: +- **Cross-dataplane forwarding**: Traffic can flow between the VPP dataplane + and kernel interfaces seamlessly. +- **Transparent configuration**: Same CLI commands and most services work + regardless of dataplane. +- **Gradual migration**: Enable VPP on high-traffic interfaces while keeping + others on kernel. + +## When to Use VPP + +**Consider VPP if you have:** +- High-throughput requirements +- Latency-sensitive applications requiring consistent performance + +**Stay with kernel dataplane if you have:** +- Low to moderate traffic volumes +- No latency-sensitive workloads +- Applications requiring specific features not supported by VPP Dataplane + +## Packet Processing Integration + +VPP Dataplane integration minimizes configuration changes. Features in the +kernel dataplane continue to operate there. VPP Dataplane only handles packet +forwarding for interfaces explicitly assigned to it. + +Traffic flow examples between VPP and kernel dataplane interfaces: + +```{image} /_static/images/vpp/vyos_vpp_integration.svg +:align: center +``` + + +### Green path + +Traffic between two VPP interfaces stays within VPP for maximum performance +and can use only VPP dataplane features. + +### Blue path + +Traffic between a VPP interface and a kernel interface is processed by both +dataplanes and can use features from both. + +**Note:** This path has slower performance than pure VPP or pure kernel +forwarding because packets traverse both dataplanes. + +### Red path + +Traffic between two kernel interfaces stays within the kernel dataplane without +VPP acceleration. This is the traditional VyOS dataplane operation. + +## CLI Integration + +VyOS CLI commands work with both dataplanes. Use the same commands to +configure interfaces, routing, and other features regardless of the dataplane. -- cgit v1.2.3