DPDK“端口数必须为偶数”一台以太网设备

2024-01-14

我正在尝试从 DPDK 源代码运行骨架示例,但每当我尝试在 make 过程后构建代码时,我都会收到一条错误消息:“端口数必须为偶数”,但是当我尝试查看以太网设备列表时我只能看到一台设备(我在 vmware 工作站环境下的 Ubuntu 中运行框架示例)

我想过尝试模拟另一个以太网设备,这可能吗?我应该怎么做才能使骨架示例运行?


我正在使用 virtualbox(使用 Ubuntu 16.04 guest)并遵循这两个指南中的大部分说明来测试两个虚拟以太网设备:

http://plvision.eu/blog/deploying-intel-dpdk-in-oracle-virtualbox/ http://plvision.eu/blog/deploying-intel-dpdk-in-oracle-virtualbox/ http://dpdk.org/doc/quick-start http://dpdk.org/doc/quick-start

我所做的事情是:

A。在 virtualbox 中,为了在虚拟机中启用两个桥接网卡,我选择了桌面版本的 Intel Pro/1000 MT:

设置 > 网络 > 适配器 1 > 桥接 > 适配器类型 > Intel Pro/1000 MT 桌面 (82540EM)

在虚拟机中,确保您的环境显示两个以太网设备。

$ ip addr
2: enp0s3: 
[ more output ommitted ]
3: enp0s8: 
[ more output ommitted ]

b.安装 DPDK 必备组件。

$ sudo apt-get install libpcap-dev gcc make hugepages nim
$ sudo apt-get install linux-headers-generic

下载DPDK,解压并

$ make config T=x86_64-native-linuxapp-gcc
$ sed -ri 's,(PMD_PCAP=).*,\1y,' build/.config
$ make -j2
$ sudo make install

C。导出环境变量~/.bashrc

export RTE_SDK=/usr/local/share/dpdk/
export RTE_TARGET=x86_64-native-linuxapp-gcc

重新启动控制台以获取新导出的变量。

d.启用大页:

$ sudo sh -c 'echo 64 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages'

e.然后我像这样运行框架示例,指定两个端口:

$ sudo ./basicfwd -c1 -n1 --vdev=eth_pcap0,iface=enp0s3 --vdev=eth_pcap1,iface=enp0s8
[sudo] password for ubuntu: 
EAL: Detected 2 lcore(s)
EAL: Probing VFIO support...
EAL: WARNING: cpu flags constant_tsc=yes nonstop_tsc=no -> using unreliable clock cycles !
PMD: Initializing pmd_pcap for eth_pcap0
PMD: Creating pcap-backed ethdev on numa socket 0
PMD: Initializing pmd_pcap for eth_pcap1
PMD: Creating pcap-backed ethdev on numa socket 0
PMD: bnxt_rte_pmd_init() called for (null)
EAL: PCI device 0000:00:03.0 on NUMA socket -1
EAL:   probe driver: 8086:100e rte_em_pmd
EAL: PCI device 0000:00:08.0 on NUMA socket -1
EAL:   probe driver: 8086:100e rte_em_pmd
Port 0 MAC: 00 00 00 01 02 03
Port 1 MAC: 00 00 00 01 02 03
Core 0 forwarding packets. [Ctrl+C to quit]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

DPDK“端口数必须为偶数”一台以太网设备 的相关文章

  • 一次DPDK-L3FWD-ACL的问题排查

    其实说起来不是什么大问题 xff0c 所有的配置按照下面这个来的 包括写入arp和配置默认路由 xff0c 不过我用的单文件那个l3fwd acl https blog csdn net sinat 20184565 article det
  • dpdk探究1-理解dpdk的运行逻辑

    DPDK介绍 DPDK主要功能 xff1a 利用IA xff08 intel architecture xff09 多核处理器进行高性能数据包处理 Linux下传统的网络设备驱动包处理的动作可以概括如下 xff1a 数据包到达网卡设备网卡设
  • ubuntu20 编译dpdk错误 -Werror=address-of-packed-member

    0x0 在ubuntu20上编译dpdk 18 11报错 xff0c gcc 版本为9 3 0 xff0c 报错如下 xff1a error converting a packed const struct ether addr point
  • KVM虚拟机热扩容

    创建一个虚拟机用于练习在线扩容 virt install name centos8 3 memory 4096 currentMemory 1024 vcpus 2 maxvcpus 8 disk var lib libvirt image
  • docker安装和基本操作

    简介 docker的三个基本概念 镜像 Image Docker 镜像可以看作是一个特殊的文件系统 除了提供容器运行时所需的程序 库 资源 配置等文件外 还包含了一些为运行时准备的一些配置参数 如匿名卷 环境变量 用户等 容器 Contai
  • 网络性能测试工具:iperf3

    一 iperf3简介 iperf3是一个网络性能测试工具 iperf3下载地址 iperf可以测试TCP和UDP带宽质量 iperf可以测量最大TCP带宽 具有多种参数和UDP特性 iperf可以报告带宽 延迟抖动和数据包丢失 iperf3
  • openssl生成椭圆曲线的私钥是如何做到每次不同的?

    目录 例子 排查 随机算法 小结 例子 生成一个私钥只需要3步 1 获得指定曲线的group 如比特币的secp256k1 2 group和key绑定 3 用key来生成私钥 先上一段代码例子 key1 EC KEY new if key1
  • 杂项记录

    2019 07 14 查看一些基础的信息 比如CPU 逻辑核等系你 查看某个网卡在哪个numa节点上https blog csdn net jpmsdn article details 84561294 DPDK最大支持核数 128 在rt
  • virtio代码分析(一)-qemu部分

    virtio内容众多 代码分布于qemu linux dpdk等中 而且分为frontend和backend 可以运行于userspace也可以运行于kernelspace 极其难以理解 不看代码只看原理性文档往往流于表面 只有真正看懂了代
  • Linux系统中如何查看TCP连接数

    这篇文章主要为大家展示了 Linux系统中如何查看TCP连接数 内容简而易懂 条理清晰 希望能够帮助大家解决疑惑 下面让小编带领大家一起研究并学习一下 Linux系统中如何查看TCP连接数 这篇文章吧 一 查看哪些IP连接本机 netsta
  • TCP/IP 协议是一个“有层次的协议栈”

    在上一讲中 我简单提到了 TCP IP 协议 它是 HTTP 协议的下层协议 负责具体的数据传输工作 并且还特别说了 TCP IP 协议是一个 有层次的协议栈 在工作中你一定经常听别人谈起什么 四层负载均衡 七层负载均衡 什么 二层转发 三
  • DPDK的PMD(uio/igb_uio/vfio-pci/uio_pci_generic)

    目录 linux收包的方式 中断对性能的影响有多大 轮询对性能的提升有多大 PMD 介绍 收包对比 内核收包的弊端 DPDK 收包的优点 uio igb uio uio pci generic vfio pci igb uio IGB UI
  • 网络性能评估

    在Linux中常见的网络性能指标如下 l 带宽 表示链路的最大传输速率 单位是b s 比特 秒 在位服务器选网卡时 带宽就是最核心的参考指标 常用的带宽有1000M 10G 40G 100G等 网络带宽测试 测试的不是带宽 而是网络吞吐量
  • TCP参数参数调优

    前言 TCP 性能的提升不仅考察 TCP 的理论知识 还考察了对于操心系统提供的内核参数的理解与应用 TCP 协议是由操作系统实现 所以操作系统提供了不少调节 TCP 的参数 如何正确有效的使用这些参数 来提高 TCP 性能是一个不那么简单
  • DPDK — 安装部署

    1 基础环境 1 1 硬件配置 1 2 操作系统要求 2 测试环境编译测试过程 2 1 升级GCC版本至GCC 7 3 0 步骤1 升级GCC依赖包设置 编译安装gmp cd home tar xvf home gmp 6 1 2 tar
  • LVS的原理

    一 LVS的介绍 linux virtual server简称LVS Internet的快速增长使多媒体网络服务器面对的访问数量快速增加 服务器需要具备提供大量并发访问服务的能力 因此对于大负载的服务器来讲 CPU I O处理能力很快会成为
  • 查看linux中的TCP连接数

    一 查看哪些IP连接本机 netstat an 二 查看TCP连接数 1 统计80端口连接数 netstat nat grep i 80 wc l 2 统计httpd协议连接数 ps ef grep httpd wc l 3 统计已连接上的
  • 在 SR-IOV 虚拟功能 (VF) NIC 之间转发数据包

    我有一个支持 Intel SR IOV 的 Intel 82599ES 10G NIC 我已成功创建了 8 个虚拟功能 VF 并将其分配给 2 个 qemu kvm VM 每个 VM 2 个 VF 两台虚拟机都使用分配的 VF 运行 DPD
  • DPDK“端口数必须为偶数”一台以太网设备

    我正在尝试从 DPDK 源代码运行骨架示例 但每当我尝试在 make 过程后构建代码时 我都会收到一条错误消息 端口数必须为偶数 但是当我尝试查看以太网设备列表时我只能看到一台设备 我在 vmware 工作站环境下的 Ubuntu 中运行框
  • 您可以以非 root 用户身份在非特权容器中运行 DPDK 吗?

    我正在尝试在非特权 Docker 容器中运行 DPDK 虽然我可以限制容器的权限并将容器指定为非特权容器 但我仍然需要以 root 身份运行 dpdk 应用程序 例如 testpmd 我还可以以非 root 身份运行容器并使用 sudo 启

随机推荐

  • ASP.NET HttpContext 缓存在插入后立即删除

    我有一个 ASP NET 4 Web 服务 它有一个ImportModule行动在一个ModuleController控制器 这就是它的工作原理 用户将模块上传为 CSV 文件 正在使用该文件读取HttpPostedFileBase Inp
  • PHP 致命错误:在非对象上调用成员函数bind_param() [重复]

    这个问题在这里已经有答案了 我有以下代码 statement mysqli gt prepare INSERT INTO paypal transactions txn id payer email mc gross mc currency
  • Go的interface{}和C中的void*一样吗?

    由于类型变量interface 可以有任何值 这是否意味着它本质上是一个像 C 中的 void 一样的通用指针 而C的void 指针和 Go 的interface 变量共享可以存储任意类型的属性 但有一个很大的区别 Go 接口变量还存储它们
  • 可以用jade/pug 编写PHP 吗?

    是否可以 如果是这样 怎么办 如果不是 如果我需要在文档中编写 PHP 我是否必须放弃 pug 环顾四周后 我没有找到任何人解决了这个问题 您可以将 PHP 嵌入到 Pug 模板中 就像您希望通过相对不受干扰的任何文字纯文本一样 有文档中涵
  • Xcode 11 升级 |找不到 iPhone X 模拟器 | XRPackageModel 9.0.omo

    自从升级后还有其他人得到这个Xcode 10 3 https developer apple com documentation xcode release notes xcode 10 3 release notes to Xcode 1
  • WPF 拖动滚动功能无法正常工作

    我想在我的应用程序中实现拖动滚动功能 但在路上遇到了问题 有谁能够帮助我 我有一个 ScrollViewer 里面有一个 ItemsControl 在 ItemsTemplate 中我有一个 UserControl 我想将该 UserCon
  • UserWarning:X 没有有效的特征名称,但 LogisticRegression 已安装了特征名称

    我在 Flask 中编写了一个程序来获取用户的输入 以输入长度和宽度来预测鱼的类型 但是当我输入时 它会显示一个错误 称为 UserWarning X does not have valid feature names but Logist
  • 如何使用 6*k +- 1 规则生成素数

    我们知道 3 以上的所有素数都可以使用以下方法生成 6 k 1 6 k 1 然而 从上述公式生成的所有数字都不是素数 For Example 6 6 1 35 which is clearly divisible by 5 为了消除这种情况
  • 获取 SQL 中另一列的每个值的最常见值

    我有一个这样的表 Column Type Modifiers country text food id int eaten date 对于每个国家 我想要获得最常吃的食物 我能想到的最好的 我正在使用 postgres 是 CREATE T
  • 在 ElasticSearch 中保存用户搜索查询的最佳方式?

    我正在开发使用 ElasticSearch 和 SQL 数据库的应用程序 那么 保存用户搜索查询并显示统计信息 例如最流行的请求是什么 的最佳方法是什么 最简单的方法就是保存在SQL数据库中并统计 但也许 ElasticSearch 中内置
  • 计算pyspark数据框中的地理距离

    我的数据框 DF spark createDataFrame 114 038696 22 5315 114 047302 22 531799 114 027901 22 5228 114 026299 22 5238 114 026299
  • 当密码和确认密码输入错误时,错误响应 500 不会显示

    当密码和确认密码输入正确时 我的响应成功显示 但是当它不匹配时 它不会显示其他部分 不显示任何内容 请指导我 需要帮助 提前致谢 这是当邮递员中密码和确认密码输入错误时我的回复 status 500 message Could not re
  • PhoneGap 3.1 构建设备未定义

    我有一个煎茶触摸项目 我是用phonegap 2 9构建的 并且工作正常device uuid返回设备ID 当我尝试使用 3 1 device uuid 进行构建时 抛出 设备未定义 错误 我的配置 xml
  • 使用 XPATH 选择所有其他节点

    给定任意数量的节点来选择
  • 当两个标记相邻时,Google 地图错误的标记单击事件

    我已经为标记应用了自定义 PNG 图像 与默认标记聚类器圆的大小大致相同 并且发生了这种奇怪的事情 当两个标记靠近时 但即使它们不重叠 我需要点击一个标记两次 因为第一次点击错误地给了我前一个标记 That is 有两个标记 A 和 B 彼
  • React Native WebView 未加载源

    我正在遵循 React Native 文档中的示例 但不知道为什么我的 WebView 无法加载网站 这是我的代码 Sample React Native App https github com facebook react native
  • 你可以让 mongo $push 前置而不是附加吗?

    我希望在我的集合的开头添加push add 而不是在执行mongo push 时附加到末尾 是否可以进行原子推送更新 将元素添加为第一个而不是最后一个 2014年更新 是的你可以 http docs mongodb org manual r
  • WPF FlowDocument 绑定

    我正在使用微软的XAML HTML 转换器 http msdn microsoft com en us library aa972129 aspx将 HTML 从数据库转换为 XAML 字符串 Microsoft 转换器似乎正确设置了文本格
  • urlencode() 是否足以阻止 2011 年的所有 SQL 注入攻击

    我正在将一些简单的用户数据传递到 mysql 数据库中 PHP 的 urlencode 返回一个字符串 其中包含除 之外的所有非字母数字字符 已替换为百分号 后跟两个十六进制数字 我不担心空格变成加号 或其他格式问题 我也不担心 XSS 和
  • DPDK“端口数必须为偶数”一台以太网设备

    我正在尝试从 DPDK 源代码运行骨架示例 但每当我尝试在 make 过程后构建代码时 我都会收到一条错误消息 端口数必须为偶数 但是当我尝试查看以太网设备列表时我只能看到一台设备 我在 vmware 工作站环境下的 Ubuntu 中运行框