网卡虚拟化技术:VMDq和SR-IOV

上文(http://blog.csdn.net/yeasy/article/details/39178187)中提到了虚机网络流量的接入交换问题。

本文来谈谈虚机跟服务器物理网卡的交互问题。

通常情况下,一个服务器上跑几十个虚机,对计算和网络的需求是很惊人的。前者促生了当下的多核技术发展,后者则不能简单的用多网卡来实现。

试想,每个虚机如果都需要10G的交换能力,服务器要配置几十块物理网卡,且不说主板是否支持这么多的接口,光成本上就难以接受。

另外,如果给vm分配的接口都是软件交换机的虚拟接口,维护这些接口和转发本身就要消耗大量的服务器计算资源。

因此,业界推出了VMDq和SR-IOV技术来提升虚机的网络性能。

VMDq

VMM在服务器的物理网卡中为每个虚机分配一个独立的队列,这样虚机出来的流量可以直接经过软件交换机发送到指定队列上,软件交换机无需进行排序和路由操作。

但是,VMM和虚拟交换机仍然需要将网络流量在VMDq和虚机之间进行复制。

SR-IOV

对于SR-IOV来说,则更加彻底,它通过创建不同虚拟功能(VF)的方式,呈现给虚拟机的就是独立的网卡,因此,虚拟机直接跟网卡通信,不需要经过软件交换机。

VF和VM之间通过DMA进行高速数据传输。

SR-IOV的性能是最好的,但是需要一系列的支持,包括网卡、主板、VMM等。

[1] http://windowsitpro.com/virtualization/q-are-vmdq-and-sr-iov-performing-same-function

时间: 2024-11-08 01:35:10

网卡虚拟化技术:VMDq和SR-IOV的相关文章

KVM虚拟化技术(一)虚拟化简介

一 .虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模 拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率. 虚拟化的类型: 全虚拟化 半虚拟化(涉及修改guestos内核,因此仅支持开源kernel的系统) 硬件辅助虚拟化(主板上开启虚拟化支持) 几种虚拟化软件简介 KVM 完全虚拟化 架构:寄居架构(linux

虚拟化技术原理

每一个I/O设备的组成由两部分组成: 设备控制器和设备本身 控制器:集成在主板上的一块芯片或一组芯片 真正的硬件操作都是由驱动完成 驱动程序:通常由设备生产商制作的,一般位于内核中 每个控制器都有少量的用于通信的寄存器,每个一寄存器表现为一个I/O端口,所有寄存器组合成为设备的IO地址空间 IO端口是在开机时,向主机的I/O端口空间注册使用的(0-65535),是cup通过总线跟设备打交道的地址 实现输入.输出: 三种方式: 1.轮训:cpu处于忙等待状态 2.中断:网卡收到数据时,立即向中断控

虚拟化技术简介(转载学习)

虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率. 几种虚拟化软件 1.RedHat KVM虚拟化方式:完全虚拟化 架构:寄居架构(linux内核);祼金属架构RHEV-H 特点:祼金属架构RHEV-H或在关键的硬盘和网卡上支持半虚拟化VirtIO,达到最佳性能.

虚拟化技术之虚拟化技术介绍及Xen的应用实现

虚拟化技术是什么: 在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器.网络.内存及存储等,予以抽象.转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源.这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制.一般所指的虚拟化资源包括计算能力和资料存储.--转自百度百科 为什么需要虚拟化:  虚拟化技术在近几年来非常的火热, 实际上在上个世纪60年代, 就已经有了虚拟化的实现.由于

让网络更轻盈——网络功能虚拟化技术的现状和未来(中兴通讯)

让网络更轻盈--网络功能虚拟化技术的现状和未来 2014-08-19     作者:周宇翔(中兴通讯) 随着智能终端和移动互联网的发展,"通信"早已脱离传统的话音和短信,人与人广泛连接,甚至物物相连也成为可期的未来,各种OTT类新业务和商业模式不断在挑战运营商的传统优势地位.传统电信网络基于私有平台部署,采用专用设备,部署周期长.运维复杂,一些运营商意识到想要轻盈转身,必须向这些互联网运营商学习,从根本上改变电信网络的部署和运维方式.2012年10月,AT&T.英国电信.德国电

虚拟化技术研究及架构分析

什么是虚拟化 虚拟化是指计算机元件在虚拟的基础上而不是真实的基础上运行.虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程.CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率. 几种虚拟化软件介绍 RedHat KVM 虚拟化方式:完全虚拟化 架构:寄居架构(linux内核);祼金属架构RHEV-H 特点:祼金属架构RHEV-H或在关键的硬盘和网卡上支持半虚拟化VirtIO,达到最佳

Xen虚拟化技术中PV和HVM的区别

转自 这里 Xen是一个开源的type-1或者裸机管理程序,它使得一个物理主机能够同时并行运行多个相同的或者不同的操作系统实例.Xen是目前唯一的开源可得的type-1管理程序.Xen被应用于许多商业和开源的应用程序中,比如:服务器虚拟化(server virtualization).基础设施即服务(Infrastructure as a Service).桌面虚拟化(desktop virtualization).安全应用程序(security applications).嵌入式和硬件设备(e

Linux桌面虚拟化技术KVM介绍及其安装

KVM的简介: KVM,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中.它使 用Linux自身的调度器迚行管理,所以相对亍Xen,其核心源码很少.KVM目前已成为学术界的主流VMM 之一.KVM的虚拟化需要硬件支持(如Intel VT技术戒者 AMD V技术).是基亍硬件的完全虚拟化.而 Xen 早期则是基亍软件模拟的 Para-Virtualization. Linux 内核的虚拟机(Kernel-based Virtual Machine).是

虚拟化技术概览

本篇文章所有资料均收集自网上,本文仅做了一下梳理和汇总.本文首先介绍了虚拟化技术:全虚拟化和半虚拟化,然后介绍了KVM.Xen.Hyper-V.VMWARE EXSI的原理和架构,接着重点对KVM和Xen做了比较,并对两者的未来发展提供了一些业界人士的观点,最后对Google.Amazon.IBM.Microsoft的云计算产品进行了介绍. 一.虚拟化技术:全虚拟化.半虚拟化 1. 全虚拟化(Full Virtualization) 全虚拟化也成为原始虚拟化技术,该模型使用虚拟机协调guest操