1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
|
---
lastproofread: '2026-02-16'
---
(vpp-requirements)=
```{include} /_include/need_improvement.txt
```
# VPP Dataplane Requirements
VPP Dataplane requires specific hardware. Ensure your system meets these
prerequisites before enabling VPP:
- **Deployment Platform**
VPP Dataplane is available on both bare-metal, on-premise virtualized, and
cloud deployment platforms.
- **CPU Requirements**
Regardless of the platform, VPP Dataplane requires a CPU with:
- SSE4.2 support (available on most modern Intel and AMD CPUs).
- At least 4 physical CPU cores for a minimum configuration (more cores
recommended for higher throughput).
:::{important}
**Physical Cores vs Logical Cores**
VPP Dataplane requires 4 *physical* CPU cores, not logical cores.
Systems with Simultaneous Multithreading (SMT) or Hyper-Threading (HT)
present each physical core as 2 logical cores.
Cloud providers often display logical cores as "cores" or "vCPUs".
For example, a cloud instance showing "4 cores" may have only 2 physical
cores with SMT/HT enabled. Always verify the actual physical core count
in your cloud provider's documentation.
:::
For virtualized environments, ensure CPU features are passed through to the
VM and that sufficient physical cores are allocated.
- **Memory Requirements**
Memory significantly affects VPP stability. Insufficient RAM can cause
initialization failures or prevent the dataplane from starting.
- Minimum: 8 GB RAM. VyOS will not start the VPP Dataplane if less than 8 GB
is available.
- Recommended: 16 GB or more (especially for high throughput, many interfaces,
or large routing tables).
- **Kernel Configuration**
Besides the hardware itself, VPP needs hugepages and isolated CPU cores.
Both are configured under `system option kernel` and only take effect after
a reboot, while VPP validates them against the *running* kernel.
:::{important}
The kernel options and the VPP configuration cannot be applied in the same
commit. Configure them under `system option kernel` first, `commit`, `save`
and reboot, and only then configure VPP.
:::
:::{seealso}
{ref}`VyOS Configuration for VPP <vpp_config_system>` — hugepages, CPU
isolation and kernel tuning, with a worked example of both steps.
:::
- **Network Interface Cards (NICs)**
:::{warning}
VyOS supports only specific NICs for the VPP dataplane. Using unsupported
hardware may cause activation failures, initialization errors, crashes,
or degraded performance.
:::
When enabling VPP, VyOS checks detected network interfaces against a list
of validated NICs. Validation is based on the **PCI ID** of the device or
the **kernel driver** used by the interface.
Supported NICs:
:::{list-table}
:widths: 15 18 40 35
:header-rows: 1
* - **Filter Type**
- **Filter Value**
- **NIC Name/Description**
- **Platform Where NIC Can Be Found**
* - PCI ID
- 15b3:1019
- Mellanox Technologies MT28800 Family
[ConnectX-5 Ex]
- Bare-metal
* - PCI ID
- 15b3:101d
- Mellanox Technologies MT2892 Family
[ConnectX-6 Dx]
- Bare-metal
* - PCI ID
- 15b3:101e
- Mellanox Technologies ConnectX Family
mlx5Gen Virtual Function
- Oracle Cloud
* - PCI ID
- 8086:1592
- Intel Corporation Ethernet Controller
E810-C for QSFP
- Bare-metal
* - PCI ID
- 1ae0:0042
- Google, Inc. Compute Engine Virtual
Ethernet [gVNIC]
- Google Cloud
* - PCI ID
- 1af4:1000
- Red Hat, Inc. Virtio network device
(legacy ID)
- KVM-based hypervisors, including with
Open vSwitch; Google Cloud
* - PCI ID
- 1af4:1041
- Red Hat, Inc. Virtio network device
(modern ID)
- KVM-based hypervisors, including with
Open vSwitch; Google Cloud
* - PCI ID
- 1d0f:ec20
- Amazon.com, Inc. Elastic Network
Adapter (ENA)
- AWS
* - Kernel Driver
- hv_netvsc
- Microsoft Hyper-V network interface
card
- Microsoft Azure
:::
If no supported NIC is detected, VPP activation will be rejected.
In testing or advanced deployments, unsupported hardware can be explicitly
allowed in the configuration:
```{cfgcmd} set vpp settings allow-unsupported-nics
```
:::{note}
This option is a single global switch, not a per-device one: it bypasses
the hardware validation check for every interface attached to VPP, not
only for the one that needed it, and for interfaces attached later as
well. Stability and performance are not guaranteed when using unsupported
NICs or drivers.
:::
|