Пересылка пакетов между сетевыми адаптерами виртуальной функции SR-IOV (VF)

Aug 17 2020

У меня есть сетевая карта Intel 82599ES 10G, которая поддерживает Intel SR-IOV. Я успешно создал 8 виртуальных функций (VF) из него и назначил 2 виртуальных машины qemu / kvm (2 VF на каждую виртуальную машину). Обе виртуальные машины запускают приложения DPDK (warp17 на одном и мое пользовательское приложение на другом) с использованием назначенных VF. Что мне нужно сделать, так это протестировать мое пользовательское приложение DPDK, отправив через него трафик с помощью warp17. Моя тестовая установка выглядит так: Красная стрелка представляет путь движения.

Моя физическая сетевая карта (PF) использует драйвер режима опроса dpdk (igb_uio). Что мне нужно сделать, это направить трафик между VF, как показано красными стрелками. я думаюhttps://doc.dpdk.org/guides/prog_guide/switch_representation.htmlобъяснил поведение переключения, но я не могу его понять. warp17 и мое собственное приложение dpdk отлично работают на физическом оборудовании. Я пытаюсь виртуализировать свою тестовую установку, чтобы сохранить ресурсы. Кто-нибудь пробовал делать такую ​​настройку?

Ответы

2 VipinVarghese Aug 17 2020 at 17:53

ни X710, fortvilleни 82599ESASIC Ninatic не имеют внутреннего моста или пересылки VERBили feature. Лучший вариант - иметь программный виртуальный коммутатор, например SPP, OVS-DPDKили настраиваемое приложение для пересылки пакетов через virtio или tap.

если вы все еще хотите использовать физический сетевой адаптер или x710 или 82599ES, вам потребуется подключение на другом конце и запуск логики для направления пакетов в соответствующий VF (изменение dst mac).