dataplane.conf
/etc/cidr/dataplane.conf menentukan NIC mana yang dipegang VPP, dan bagaimana VPP memakai CPU dan memori. File ini dibuat oleh cidr-dataplane init (atau install.sh --ports). Perubahan berlaku setelah restart dataplane atau reboot.
# CID Router - dataplane ports (generated by cidr-dataplane init)
[dataplane]
config-version = 2
driver = dpdk
main-core = auto
workers = auto
main-heap = 1G
buffers = auto
nat-sessions = 65536
uio-driver = auto
rx-distribution = auto
[port eth1]
pci = 0000:00:04.0
kernel = enp0s4
[port eth2]
pci = 0000:00:05.0
kernel = enp0s5
Bagian [dataplane]
| Opsi |
Nilai |
Default |
Keterangan |
driver |
dpdk | af-packet |
dpdk |
Cara VPP memegang NIC |
main-core |
auto | nomor CPU |
auto |
Thread utama VPP |
workers |
auto | daftar CPU (2-5,8) | none |
auto |
Worker thread; lihat Multi-core |
main-heap |
ukuran |
1G |
Heap utama VPP (NAT dengan banyak sesi butuh ≥ 1G) |
buffers |
auto | angka |
auto |
Buffer paket per NUMA node |
nat-sessions |
angka |
65536 |
Sesi NAT44 maksimum |
uio-driver |
auto | vfio-pci | uio_pci_generic |
auto |
Driver kernel untuk DPDK |
rx-distribution |
auto | rss | handoff | off |
auto |
Cara membagi koneksi ke worker |
config-version |
|
2 |
Ditulis otomatis; file tanpa ini dianggap format lama |
Bagian [port ethN]
| Opsi |
Keterangan |
pci |
Alamat PCI (wajib untuk dpdk) |
kernel |
Nama NIC di Linux sebelum diambil VPP (wajib untuk af-packet) |
Nilai auto
| Opsi |
Cara dihitung |
main-core |
CPU pertama yang boleh dipakai |
workers |
Satu per core fisik selain core utama; di ≥ 8 core, core ke-2 juga disisakan untuk Linux |
buffers |
port × (antrean RX + thread) × 1024 + 512 × thread + 8192, minimal 16384, dibatasi oleh setengah hugepages per NUMA |
uio-driver |
vfio-pci (IOMMU) → vfio no-IOMMU → uio_pci_generic |
rx-distribution |
RSS kalau NIC punya antrean ≥ worker, selain itu handoff |
File tanpa config-version berasal dari versi sebelum core otomatis. Nilai default lamanya (main-core = 1, workers kosong, buffers = 16384) dibaca sebagai auto. Nilai lain yang sengaja diisi tetap dipakai.
File yang dihasilkan
| File |
Isi |
/etc/vpp/startup.conf |
Konfigurasi proses VPP: CPU, memori, DPDK, plugin, linux-cp |
/etc/cidr/vpp-bootstrap.cli |
Perintah VPP saat start: membuat port af-packet dan pasangan linux-cp |
Keduanya ditulis ulang setiap boot, jadi jangan diedit manual. Untuk melihat isinya:
cidr-dataplane show --startup