DPDK Open vSwitch не может получить доступ к сети

Я играю с пакетом ovs-dpdk https://github.com/01org/dpdk-ovs И я не совсем понимаю, как я могу подключить мост OVS и виртуальные машины, чтобы получить доступ извне, т. е. в сеть. На обычном openvswitch устройство моста, созданное vswitch, `` видно '' из Linux и может быть настроено с помощью обычных инструментов (ifconfig, ethtool и т. Д.), Поэтому я мог создать интерфейс TAP и добавить его в интерфейс моста vswitch и назначить IP-адрес интерфейса моста. адрес. Однако с ovs-dpdk это не так: любой мост, созданный с помощью ovs-vsctl, недоступен в пользовательском пространстве Linux, по крайней мере, я не вижу его с помощью ifconfig или «ip link show».

Есть ли другой способ, которым OVS-DPDK делает это? Надеюсь, кто-нибудь сможет пролить свет на эту проблему. Спасибо.


person Mark    schedule 21.10.2014    source источник


Ответы (1)


ovs-dpdk, когда он использует DPDK для доступа к сетевой карте, берет на себя nic и не позволяет обычным драйверам ядра выполнять свои функции.

Это означает, что вы больше не увидите интерфейс с хоста linux, если вы привяжете оборудование с драйвером dpdk io. Но вы можете соединить / коснуться / отразить внутри ovs эти необработанные интерфейсы dpdk в dpdk-ovs на вашу виртуальную машину или другой интерфейс, который виден обычным драйверам ядра. Вы просто не можете сделать это на интерфейсах, принадлежащих dpdk.

Весь смысл интеграции dpdk в ovs состоит в том, чтобы обойти все драйверы ядра и как можно быстрее получать пакеты к / от vswitch, чтобы он мог маршрутизировать их изначально через вашу виртуальную машину и другие локальные интерфейсы, как вы установили в конфигурации вашего моста.

person daveyjcrocket    schedule 23.10.2014
comment
Спасибо за ваш комментарий. Похоже, вы достаточно много работали с DPDK / OVS? Я прочитал больше документов о DPDK и узнал, что он предоставляет `` расширенный '' интерфейс TAP, который они называют хостом KNI (сетевой интерфейс ядра), и этот интерфейс может предоставить канал для виртуальной машины, то есть qemu, для доступа за пределами хоста. Значит ли это, что интерфейс KNI также должен быть добавлен в мост OVS, и что KNI будет служить общедоступным интерфейсом (и ему нужно будет назначить общедоступный IP-адрес)? - person Mark; 27.10.2014