#linux #dpdk
#linux #dpdk
Вопрос:
Есть ли способ использовать dpdk без igb_uio
модуля или других kni
vfio
модулей? также без uio_pci_generic
модуля?
Я имею в виду, может ли dpdk просто нормально работать с обычными (драйверами пространства ядра), например ixgbe
, напрямую.
Я попытался связать 2 интерфейса с ixgbe
использованием скрипта Python для привязки к python от dpdk:
Network devices using kernel driver
===================================
0000:04:00.0 '82599ES 10-Gigabit SFI/SFP Network Connection 10fb' if=p3p1 drv=ixgbe unused=uio_pci_generic
0000:04:00.1 '82599ES 10-Gigabit SFI/SFP Network Connection 10fb' if=p3p2 drv=ixgbe unused=uio_pci_generic
Но мое приложение завершило работу со следующей фатальной ошибкой:
rte_eth_dev_count_avail() returned 0
Спасибо
Комментарии:
1. Похоже, вы уже знаете ответ. ixgbe будет передавать данные только между вашей картой Intel и буфером ядра.
2. удалось ли вам запустить pcap /af_packet/af_xdp с драйвером ixgbe в DPDK без uio_pci_generic/igb_uio / vfio?
Ответ №1:
Можно использовать DPDK без ядра, используя PMD для TAP / TUN / PCAP / XDP. В этих сценариях ни uio_pci_generic /igb_uio / vfio_ pci, ни DPDK KNI не используются. Следовательно, без модулей ядра DPDK можно запускать интерфейсы.
Для вашего конкретного варианта использования, где используется сетевой ixgbe
адаптер, пожалуйста, используйте режим AF_PAACKET / AF_XDP.