[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境)
搭建实验环境:
troubleshoot
第一步加载驱动
第二步切换驱动
使用了所有qemu支持的卡
[tong@T7:~/VM/dpdk]
% cat start.sh
sudo qemu-system-x86_64 -nographic -vnc 127.0.0.1: -enable-kvm \
-m 2G -cpu Nehalem -smp cores=,threads=,sockets= \
-numa node,mem=1G,cpus=-,nodeid= \
-numa node,mem=1G,cpus=-,nodeid= \
-drive file=disk.img,if=virtio \
-net nic,vlan=,model=virtio,macaddr='00:00:00:01:00:00' \
-net nic,vlan=,model=ne2k_pci,macaddr='00:00:00:01:00:01' \
-net nic,vlan=,model=i82551,macaddr='00:00:00:01:00:02' \
-net nic,vlan=,model=i82557b,macaddr='00:00:00:01:00:03' \
-net nic,vlan=,model=i82559er,macaddr='00:00:00:01:00:04' \
-net nic,vlan=,model=rtl8139,macaddr='00:00:00:01:00:05' \
-net nic,vlan=,model=e1000,macaddr='00:00:00:01:00:06' \
-net nic,vlan=,model=pcnet,macaddr='00:00:00:01:00:07' \
-net tap,vlan=,ifname=tap-dpdk-control \
-net tap,vlan=,ifname=tap-dpdk-,script=no,downscript=no \
-net tap,vlan=,ifname=tap-dpdk-,script=no,downscript=no &
# -device vfio-pci,host='0000:00:19.0' \
#ne2k_pci,i82551,i82557b,i82559er,rtl8139,e1000,pcnet,virtio
[tong@T7:~/VM/dpdk]
只有virtio是对队列的
[root@dpdk ~]# lspci -vv |grep -E '^00|MSI'
:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev )
:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II] (prog-if [Master])
:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev )
:02.0 VGA compatible controller: Device : (rev ) (prog-if [VGA controller])
:03.0 Ethernet controller: Red Hat, Inc Virtio network device
Capabilities: [] MSI-X: Enable+ Count= Masked-
:04.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-(AS)
:05.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast Ethernet Controller (rev 0f)
:06.0 Ethernet controller: Intel Corporation //// Ethernet Pro (rev )
:07.0 Ethernet controller: Intel Corporation 8255xER/82551IT Fast Ethernet Controller (rev )
:08.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-/8101L/ PCI Fast Ethernet Adapter (rev )
:09.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet Controller (rev )
:0a. Ethernet controller: Advanced Micro Devices, Inc. [AMD] 79c970 [PCnet32 LANCE] (rev )
:0b. SCSI storage controller: Red Hat, Inc Virtio block device
Capabilities: [] MSI-X: Enable+ Count= Masked-
[root@dpdk ~]#
xxx
[root@dpdk tools]# ./dpdk-devbind.py -b igb_uio eth1
[root@dpdk tools]# ./dpdk-devbind.py -b igb_uio eth2
[root@dpdk tools]# ./dpdk-devbind.py -s Network devices using DPDK-compatible driver
============================================
::04.0 'Virtio network device' drv=igb_uio unused=
::05.0 'Virtio network device' drv=igb_uio unused= Network devices using kernel driver
===================================
::03.0 'Virtio network device' if=eth0 drv=virtio-pci unused=igb_uio *Active* Other network devices
=====================
<none>
[root@dpdk tools]#
qemu的所有nic都可以使用uio
[root@dpdk tools]# ./dpdk-devbind.py -s Network devices using DPDK-compatible driver
============================================
<none> Network devices using kernel driver
===================================
::03.0 'Virtio network device' if=eth0 drv=virtio-pci unused=igb_uio *Active*
::08.0 'RTL-8100/8101L/8139 PCI Fast Ethernet Adapter' if=ens8 drv=8139cp unused=igb_uio
::09.0 '82540EM Gigabit Ethernet Controller' if=ens9 drv=e1000 unused=igb_uio Other network devices
=====================
::04.0 'RTL-8029(AS)' unused=igb_uio
::05.0 '8255xER/82551IT Fast Ethernet Controller' unused=igb_uio
::06.0 '82557/8/9/0/1 Ethernet Pro 100' unused=igb_uio
::07.0 '8255xER/82551IT Fast Ethernet Controller' unused=igb_uio
::0a. '79c970 [PCnet32 LANCE]' unused=igb_uio
[root@dpdk tools]#
[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境)的更多相关文章
- [dpdk] 熟悉SDK与初步使用 (二)(skeleton源码分析)
接续前节:[dpdk] 熟悉SDK与初步使用 (一)(qemu搭建实验环境) 程序逻辑: 运行参数: 关键API: 入口函数: int rte_eal_init(int argc, char **ar ...
- [dpdk] 熟悉SDK与初步使用 (四)(L3 Forwarding源码分析)
接续前节:[dpdk] 熟悉SDK与初步使用 (三)(IP Fragmentation源码分析) 前文中的最后一个问题,搁置,并没有找到答案.所以继续阅读其他例子的代码,想必定能在其他位置看到答案. ...
- [dpdk] 熟悉SDK与初步使用 (三)(IP Fragmentation源码分析)
对例子IP Fragmentation的熟悉,使用,以及源码分析. 功能: 该例子的功能有二: 一: 将IP分片? 二: 根据路由表,做包转发. 路由表如下: IP_FRAG: Socket : ad ...
- OVS + dpdk 安装与实验环境配置
***DPDK datapath的OVS的安装与实验环境配置 首先肯定是DPDK的安装 0:安装必要的工具 make gcc ...
- 使用 qemu 搭建内核开发环境
本文主要介绍在 MacOS 上使用 qemu 搭建 Linux Kernel 的开发环境.(在开始之前需要注意的是,本文中的 Linux 开发环境是一个远程服务器,而 qemu 被安装在本地的 Mac ...
- 理解 Linux 网络栈(3):QEMU/KVM + VxLAN 环境下的 Segmentation Offloading 技术(发送端)
本系列文章总结 Linux 网络栈,包括: (1)Linux 网络协议栈总结 (2)非虚拟化Linux环境中的网络分段卸载技术 GSO/TSO/UFO/LRO/GRO (3)QEMU/KVM + Vx ...
- 用Qemu搭建aarch32学习环境
作者信息 作者: 彭东林 邮箱: pengdonglin137@163.com QQ: 405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linu ...
- 用Qemu搭建x86_64学习环境
作者信息 作者:彭东林 邮箱:pengdonglin137@163.com QQ:405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核 ...
- 用Qemu搭建x86学习环境
作者信息 作者:彭东林 邮箱:pengdonglin137@163.com QQ:405728433 软件平台 主机: Ubuntu14.04 64位版本 模拟器:Qemu-2.8.0 Linux内核 ...
随机推荐
- Mysqle 常用 函数
一.数学函数 数学函数主要用于处理数字,包括整型.浮点数等. select 可以用作输出 ABS(x) 返回x的绝对值 SELECT ABS(-1) -- 返回1 CEIL ...
- xcode8 info.plist文件中的各种权限。
NSContactsUsageDescription -> 通讯录 NSMicrophoneUsageDescription -> 麦克风 NSPhotoLibraryUsageDescr ...
- QTableWidget去除选中虚边框
m_tableWidget->setFocusPolicy(Qt::NoFocus); //去除选中虚线框
- ios原声音频播放AVAudioSession 总结
//音频播放/*英译:record:录音 */ 1 导入头文件#import<AVFoundation/AVFoundation.h>//AVAudioSession是一个单例模式.在IO ...
- MongoDB replication set副本集(主从复制)(8)(转)
转载地址:http://www.cnblogs.com/huangxincheng/p/4870557.html replicattion set 就是多台服务器维护相同的数据副本,提高服务器的可用性 ...
- 【转】算法杂货铺——k均值聚类(K-means)
k均值聚类(K-means) 4.1.摘要 在前面的文章中,介绍了三种常见的分类算法.分类作为一种监督学习方法,要求必须事先明确知道各个类别的信息,并且断言所有待分类项都有一个类别与之对应.但是很多时 ...
- testdb11b root.sh执行结果
[root@testdb11b dev]# /u01/app//grid/root.sh Performing root user operation for Oracle 11g The follo ...
- iOS--NSBundle理解
NSBundle:官方文档解释:An NSBundle object represents a location in the file system that groups code and r ...
- HDU3333 Turing Tree(线段树)
题目 Source http://acm.hdu.edu.cn/showproblem.php?pid=3333 Description After inventing Turing Tree, 3x ...
- SpringMVC注解@RequestParam全面解析---打酱油的日子
在SpringMVC后台控制层获取参数的方式主要有两种,一种是request.getParameter("name"),另外一种是用注解@RequestParam直接获取.这里主要 ...