[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境)

搭建实验环境:

troubleshoot

第一步加载驱动

第二步切换驱动

使用了所有qemu支持的卡

[[email protected]:~/VM/dpdk]
% cat start.sh
sudo qemu-system-x86_64 -nographic -vnc 127.0.0.1:1 -enable-kvm         -m 2G -cpu Nehalem -smp cores=2,threads=2,sockets=2         -numa node,mem=1G,cpus=0-3,nodeid=0         -numa node,mem=1G,cpus=4-7,nodeid=1         -drive file=disk.img,if=virtio         -net nic,vlan=0,model=virtio,macaddr=‘00:00:00:01:00:00‘         -net nic,vlan=1,model=ne2k_pci,macaddr=‘00:00:00:01:00:01‘         -net nic,vlan=2,model=i82551,macaddr=‘00:00:00:01:00:02‘         -net nic,vlan=2,model=i82557b,macaddr=‘00:00:00:01:00:03‘         -net nic,vlan=2,model=i82559er,macaddr=‘00:00:00:01:00:04‘         -net nic,vlan=2,model=rtl8139,macaddr=‘00:00:00:01:00:05‘         -net nic,vlan=2,model=e1000,macaddr=‘00:00:00:01:00:06‘         -net nic,vlan=2,model=pcnet,macaddr=‘00:00:00:01:00:07‘         -net tap,vlan=0,ifname=tap-dpdk-control         -net tap,vlan=1,ifname=tap-dpdk-1,script=no,downscript=no         -net tap,vlan=2,ifname=tap-dpdk-2,script=no,downscript=no &
#       -device vfio-pci,host=‘0000:00:19.0‘ #ne2k_pci,i82551,i82557b,i82559er,rtl8139,e1000,pcnet,virtio
[[email protected]:~/VM/dpdk]

只有virtio是对队列的

[[email protected] ~]# lspci -vv |grep -E ‘^00|MSI‘
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] (prog-if 80 [Master])
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 03)
00:02.0 VGA compatible controller: Device 1234:1111 (rev 02) (prog-if 00 [VGA controller])
00:03.0 Ethernet controller: Red Hat, Inc Virtio network device
        Capabilities: [98] MSI-X: Enable+ Count=3 Masked-
00:04.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8029(AS)
00:05.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast Ethernet Controller (rev 0f)
00:06.0 Ethernet controller: Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 (rev 02)
00:07.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast Ethernet Controller (rev 09)
00:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8100/8101L/8139 PCI Fast Ethernet Adapter (rev 20)
00:09.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev 03)
00:0a.0 Ethernet controller: Advanced Micro Devices, Inc. [AMD] 79c970 [PCnet32 LANCE] (rev 10)
00:0b.0 SCSI storage controller: Red Hat, Inc Virtio block device
        Capabilities: [98] MSI-X: Enable+ Count=2 Masked-
[[email protected] ~]# 

xxx

[[email protected] tools]# ./dpdk-devbind.py -b igb_uio eth1
[[email protected] tools]# ./dpdk-devbind.py -b igb_uio eth2
[[email protected] tools]# ./dpdk-devbind.py -s

Network devices using DPDK-compatible driver
============================================
0000:00:04.0 ‘Virtio network device‘ drv=igb_uio unused=
0000:00:05.0 ‘Virtio network device‘ drv=igb_uio unused=

Network devices using kernel driver
===================================
0000:00:03.0 ‘Virtio network device‘ if=eth0 drv=virtio-pci unused=igb_uio *Active*

Other network devices
=====================
<none>
[[email protected] tools]# 

qemu的所有nic都可以使用uio

[[email protected] tools]# ./dpdk-devbind.py -s

Network devices using DPDK-compatible driver
============================================
<none>

Network devices using kernel driver
===================================
0000:00:03.0 ‘Virtio network device‘ if=eth0 drv=virtio-pci unused=igb_uio *Active*
0000:00:08.0 ‘RTL-8100/8101L/8139 PCI Fast Ethernet Adapter‘ if=ens8 drv=8139cp unused=igb_uio
0000:00:09.0 ‘82540EM Gigabit Ethernet Controller‘ if=ens9 drv=e1000 unused=igb_uio 

Other network devices
=====================
0000:00:04.0 ‘RTL-8029(AS)‘ unused=igb_uio
0000:00:05.0 ‘8255xER/82551IT Fast Ethernet Controller‘ unused=igb_uio
0000:00:06.0 ‘82557/8/9/0/1 Ethernet Pro 100‘ unused=igb_uio
0000:00:07.0 ‘8255xER/82551IT Fast Ethernet Controller‘ unused=igb_uio
0000:00:0a.0 ‘79c970 [PCnet32 LANCE]‘ unused=igb_uio
[[email protected] tools]# 
时间: 2024-12-29 01:29:23

[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境)的相关文章

[dpdk] 熟悉SDK与初步使用 (二)(skeleton源码分析)

接续前节:[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境) 程序逻辑: 运行参数: 关键API: 入口函数: int rte_eal_init(int argc, char **argv) 内存池函数: rte_pktmbuf_pool_create.  它是函数 rte_mempool_create 的一个封装. struct rte_mempool * rte_pktmbuf_pool_create(const char *name, unsigned n, unsigne

[dpdk] 熟悉SDK与初步使用 (三)(IP Fragmentation源码分析)

对例子IP Fragmentation的熟悉,使用,以及源码分析. 问题一: main()函数大概是这样的:标红的三行将与下面叙述的事情相关 int main(int argc, char **argv) { ... ... /* init EAL */ ret = rte_eal_init(argc, argv); if (ret < 0) rte_exit(EXIT_FAILURE, "rte_eal_init failed"); ... ... /* launch per-

Linux下的Mysql初步认实和搭建LAMP环境

Linux下的Mysql初步认实和搭建LAMP环境   实验目标 Mysql服务器常见概念 Mysql服务器安装及相关配置文件 实战:安装mysql数据库并去除安全隐患 实战:搭建LAMP环境部署Ucenter和Ucenter-home网站   实验概述 MySQL服务概述: MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Databas

Mysql初步认实和搭建LAMP环境部署Ucenter和Ucenter-home网站

目标: 在xuegod63.cn服务器上,使用网站模版UCenter_1.5.0_SC_UTF8.zip和UCenter_Home_2.0_SC_UTF8.zip为公司搭建一个类似人人网的网站.在windows上,使用访问uc.duwers63.cn可以访问UCenter:使用www.duwers63.cn可以访问UCenter_Home. 安装 yum -y install httpd mysql-server mysql phpphp-mysql 软件包解释: httpd #web网站服务器

OVS + dpdk 安装与实验环境配置

***DPDK datapath的OVS的安装与实验环境配置 首先肯定是DPDK的安装 0:安装必要的工具 make gcc libssl libcap-ng0 libtool autoconf python 2.7 python module six(可用PIP安装) 1:设置hugepages,host最好有4G以上的内存可用, 共搞1024个hugepage,每个page 2M,所以光hugepages就占用2G内存 $  grep Huge /proc/meminfo $ echo 10

用Qemu搭建x86_64学习环境

作者信息 作者:彭东林 邮箱:[email protected] QQ:405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核版本: Linux-4.10 Busybox版本:busybox-1.24.2 工具链: gcc 具备的功能 模拟一个双核或者单核的x86_64架构的系统,根文件系统用ramdisk的形式,跟Host之间采用NFS的方式实现文件共享. 正文 1.Qemu的编译安装 请参考博文用qemu搭建aarch64学习环

用Qemu搭建aarch32学习环境

作者信息 作者: 彭东林 邮箱: [email protected] QQ: 405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核版本: Linux-4.10 Busybox版本:busybox-1.24.2 工具链: arm-none-linux-gnueabi-gcc  (gcc version 4.8.3 20140320) 具备的功能 模拟一个vexpress 双核或者单核的环境,采用NFS跟Host共享一些文件,为了简单

[HIT操作系统][lab1]熟悉实验环境 文件交互遇到的小盲区

实验链接: https://www.shiyanlou.com/courses/115 课程链接 http://mooc.study.163.com/course/HIT-1000002004#/info 本实验主要是熟悉实验环境目录结构,如何编译Linux源文件,并在bochs模拟器下运行. 要感谢实验楼提供的环境,我在Ubuntu 16.04下自行编译和Bochs运行非常不顺利,而实验楼非常的顺滑,可以专注于课程知识的学习. 实验楼环境里按步骤操作并没有遇到什么大问题,不过我觉得老师的实验步

安装Java SDK,搭建运行环境

百度搜索:java se development kit,就可以下载Java SDK了,最新版本的是8.0的. 下载地址:jdk-8u11-windows-i586.1406279697.exe 当然也可以到官方去下载. 安装这里就不发图,大家一直可以点下一步了. 我的安装在D盘. 安装后我们找到安装目录的bin目录,并复制它,我的是:D:\Program Files (x86)\Java\jdk1.8.0_11\bin 再右击桌面上的"计算机",选择"属性",打开