./testpmd -l 0-1 -n 1 --file-prefix=test --no-pci --vdev 'net_virtio_user2,mac=00:00:00:00:00:02,path=/var/run/openvswitch/vhost-user2' -- -i --forward-mode=io --auto-start
./testpmd -l 0-1 -n 1 --vdev 'eth_vhost0,iface=/tmp/virtio/sock0' --vdev 'eth_vhost1,iface=/tmp/virtio/sock1' --file-prefix=test --no-pci -- -i --forward-mode=io --auto-start
# -l 列出所使用的CPU核
# -n 给出memory channels的数量
# --socket-mem 限制用于每个socket的内存量(单位:M)
# --vdev 创建vhost的socket文件用于进行网络连接,可以理解为虚拟网卡
# --file-prefix hugepages字首,用于区分所使用的hugepage
# testpmd的参数
# --forward-mode=io 对两个端口情况从一个端口进来的包直接从另一个端口发出
pktgen -c 5 -n 3 --vdev='virtio_user0,path=/tmp/virtio/sock0' --vdev='virtio_user1,path=/tmp/virtio/sock1' -- -P -m "1.0,2.1"
# DPDK的参数同上,--vdev在这里用来连接到socket文件
# pktgen的参数
# -P 在所有端口启用混杂模式
# -m 定义CPU核到端口的绑定,在这里core5绑定到prot0,core6绑定到port1
-c 是指选择的core的掩码,f等于1111也就是选择 1、2 、3、4 core;
-m "2.0, 3.1" 是指一个矩阵模型,2.0是指,在2号lcore上绑定的端口0 , 3.1是指在lcore3上绑定端口1
-P 使能网络混装模式,
--file-prefix pg 设置/mnt/huge/内存分配模块的文件名前缀;
# 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l
本文详细解析了DPDK及pktgen工具的参数配置,包括如何指定CPU核、内存通道数量、虚拟网卡创建、端口绑定及混杂模式等关键操作。适用于网络性能测试与优化的专业人士。
7251

被折叠的 条评论
为什么被折叠?



