在modinfo igb max_vfs=8 不好用的情况下(lspci -nn | grep eth 没有分出来)
使用echo的方式直接写入:echo 8 > /sys/class/net/ens9f0/device/sriov_numvfs
sriov的网卡使用的驱动 igbvf ixgbevf i40evf
https://blog.csdn.net/jacicson1987/article/details/103586551?utm_source=app
bios开启sr-iov配置
网卡支持情况
lspci -v -s 00:01.0 查看网卡是否支持sr-iov
modprobe igb max_vfs=7
grub.conf里添加也可以:添加intel_iommu=on iommu=pt igb.max_vfs=1,然后重启设备
ip link set
ens11f2 vf 2 vlan 2
ip link set dev p5p1 vf 0 mac aa:bb:cc:dd:ee:00
ip link set dev p5p1 vf 0 trust on
ip link set dev p5p1 vf 0 spoof checking off
ifconfig ens11f2 promisc
[root@localhost srv]# ip link show dev ens11f2
10: ens11f2: mtu 1500 qdisc mq state down mode default group default qlen 1000
link/ether 00:10:f3:76:ac:54 brd ff:ff:ff:ff:ff:ff
vf 0 mac aa:da:2a:db:3a:46, spoof checking on, link-state auto
vf 1 mac 2a:94:18:cb:2d:02, spoof checking on, link-state auto
vf 2 mac 56:55:94:5f:fa:84, vlan 2, spoof checking on, link-state auto
vf 3 mac f2:ac:19:f8:05:ee, spoof checking on, link-state auto
vf 4 mac 16:7a:73:89:96:d6, spoof checking on, link-state auto
vf 5 mac 56:54:66:01:8d:b8, spoof checking on, link-state auto
vf 6 mac 62:ce:35:44:8b:77, spoof checking on, link-state auto
[root@localhost srv]#
modinfo igb
dpdk工具查看驱动绑定情况
lspci -凯发app官方网站
其实,从逻辑上可以认为启用了 sr-iov 技术后的物理网卡内置了一个特别的 switch,将所有的 pf 和 vf 端口连接起来,通过 vf 和 pf 的 mac 地址以及 vlan id 来进行数据包分发。
-
在 ingress 上(从外部进入网卡):如果数据包的目的 mac 地址和 vlan
id 都匹配某一个 vf,那么数据包会分发到该 vf,否则数据包会进入 pf;如果数据包的目的 mac 地址是广播地址,那么数据包会在同一个
vlan 内广播,所有 vlan id 一致的 vf 都会收到该数据包。
-
在 egress 上(从 pf 或者 vf 发出):如果数据包的 mac 地址不匹配同一 vlan 内的任何端口(vf 或 pf),那么数据包会向网卡外部转发,否则会直接在内部转发给对应的端口;如果数据包的 mac 地址为广播地址,那么数据包会在同一个 vlan 内以及向网卡外部广播。
note:所有未设置 vlan id 的 vf 和 pf,可以认为是在同一个 lan 中,不带 vlan
的数据包在该 lan 中按照上述规则进行处理。此外,设置了 vlan 的 vf,发出数据包时,会自动给数据包加上
vlan,在接收到数据包时,可以设置是否由硬件剥离 vlan 头部。
原来的物理网卡还可以正常使用,在宿主机上也可以直接虚拟出网卡来
sr-iov 标准将一个pcie的网络控制器虚拟化成多个pcie设备,即多个pci虚拟网卡,这些虚拟网卡不仅可以给虚拟机使用,也可以直接给操作系统使用,也可以给物理机上的dpdk使用。
宿主机加载igbvf驱动即可
[root@localhost /]# ethtool -i enp1s19f2
driver: igbvf
version: 2.0.2-k
firmware-version:
bus-info: 0000:01:13.2
supports-statistics: yes
supports-test: yes
supports-eeprom-access: no
supports-register-dump: yes
supports-priv-flags: no
[root@localhost /]#
阅读(6204) | 评论(0) | 转发(0) |