首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >virtio vs e1000 vs rtl8139:有什么区别?

virtio vs e1000 vs rtl8139:有什么区别?
EN

Unix & Linux用户
提问于 2020-07-10 16:22:17
回答 1查看 22.2K关注 0票数 17

在Ubuntu上创建虚拟机时,我可以选择三个虚拟网络接口的设备模型: virtio、e1000和rtl8139。

这三者之间有什么区别?换句话说,在选择设备模型时,我应该考虑什么?

谷歌搜索“virtio vs e1000 vs rtl8139”并没有多大帮助。前两页的结果都是官方文档,没有太多说明,博客文章总结为“使用选项N,因为我试过了,它很棒”。我找到的唯一有用的资源是讨论,它似乎表明e1000速度慢,但与virtio相比兼容性最强。讨论似乎暗示e1000在某种程度上比rtl8139更受欢迎,但没有说明原因。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-07-10 17:47:44

在设置虚拟机的上下文中,e1000模拟Intel,rtl8139模拟Realtek,而virtio是一个准虚拟化驱动程序,也就是说,它“知道”它在VM中运行,基本上只是以最直接的方式传递VM和主机之间的网络流量。

如果在VM中运行遗留操作系统,则可能需要根据遗留操作系统中支持什么NIC来选择虚拟NIC。英特尔e1000的驱动程序甚至可以用于非常老而晦涩的开放源码软件。但是物理e1000网卡的硬件相当复杂,因此由于需要对其进行仿真,会产生一些开销。

Realtek 8139显然是相当简单的,硬件方面的,所以它可能比较容易在VM中模仿比英特尔的e1000。但是另一方面,简单性也意味着VM内部的操作系统可能需要做一些额外的工作,以满足NIC仿真的条件,而实际的主机NIC可以在硬件中完成其中的一些工作。

但是,如果您在VM中运行的任何操作都支持virtio,那么它可能会给您提供最好的性能(除了为VFIOpass身/ skip设计的主机NIC硬件之外),因为它允许VM简单地跳过与仿真虚拟NIC和控制虚拟硬件有关的大部分步骤,并且允许主机利用实际物理NIC的硬件特性,最大限度地造福于VM的流量。

票数 33
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/597789

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档