Lewati ke isi

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

Upgrade dari format lama

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