《思科UCS服务器统一计算》一2.5 芯片组虚拟化支持

简介:

本节书摘来自异步社区《思科UCS服务器统一计算》一书中的第2章,第2.5节,作者 【美】Silvano Gai , Tommi Salli , Roger Andersson,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.5 芯片组虚拟化支持

思科UCS服务器统一计算
除了Nehalem提供的虚拟化支持外,在芯片组/主板级也增强了对虚拟化的支持。这些改进对于提高Hypervisor(按照Intel公司的说法,Hypervisor指的是VMM:虚拟机监视程序)的I/O性能很重要。

2.5.1 Intel直接I/O虚拟化技术(Intel VT-d for Direct I/O)

服务器使用输入/输出内存管理单元(Input/Output Memory Management Unit,IOMMU)将具有DMA能力的I/O总线(如PCIe)连接到主内存。和传统的内存管理单元(Memory Management Unit,MMU)一样,MMU将CPU可见的虚拟地址转换成物理地址,而IOMMU负责将设备可见的虚拟地址映射到物理地址。这些单元也提供了内存保护功能,以免受到错误操作设备的影响。

I/O虚拟化的一个基本要求是能够隔离和限制设备访问由管理设备的分区所拥有的资源。

2008年,Intel公司发布了IOMMU技术规范:直接I/O虚拟化技术,缩写为VT-d。

Intel VT-d为VMM软件提供了下列功能。

I/O设备分配:可为VM灵活分配I/O设备,为I/O操作扩展VM的保护和隔离属性。
DMA重映射:为设备的直接内存访问(Direct Memory Accesses,DMA)提供独立的地址转换功能。
中断重映射:隔离和路由来自设备和外部中断控制器的中断到对应的VM。
可靠性:记录并报告系统软件DMA和可能会损坏内存或影响VM隔离的中断错误。

2.5.2 Intel连接虚拟化技术(Intel VT-c for Connectivity)

Intel连接虚拟化技术(Virtualization Technology for Connectivity,VT-c)是一组I/O虚拟化技术集,可降低CPU利用率,减少系统延迟,提高网络和I/O吞吐量。

Intel VT-c由平台级技术和创新的下一代I/O虚拟化技术集合而成:

虚拟机设备队列(Virtual Machine Device Queues,VMDq)极大地提高了服务器的流量管理,有助于为大数据流提供更好的I/O性能,同时减少了基于软件的虚拟机监视程序(VMM)的处理负担。
虚拟机直接连接(Virtual Machine Direct Connect,VMDc)通过提供到虚拟机的专用I/O,完全绕过Hypervisor中的软件虚拟交换机,提供了接近原生的性能。同时还增强了虚拟机之间的数据隔离,通过虚拟机实时迁移功能提供了更好的灵活性和移动性。
1.VMDq
在虚拟环境中,Hypervisor管理所有VM(虚拟机)的网络I/O活动。随着VM数量的持续增长,I/O负载也随之增加,Hypervisor需要更多的CPU周期来给网络接口队列中的数据包排序,然后将它们路由到目标VM,这降低了应用程序可用的CPU容量。

Intel虚拟机设备队列(Virtual Machine Device Queue,VMDq)通过在芯片组上添加硬件支持,减轻了Hypervisor的负担,同时增强了网络I/O。特别是,增加了多个网络接口队列和硬件级智能排序,如图2-45所示。


c50a043c1ead0f000898515cf961819ed822c30e

当数据包抵达网络适配器时,网络控制器中的二层分类器/排序器根据MAC地址和VLAN标记对数据包进行排序,并确定每个数据包的目的地应该是哪一个VM。然后按顺序将数据包放入分配给该VM的接收队列中。Hypervisor的二层软件交换机只是将数据包路由到各自的VM,不会执行繁重的数据排序操作。

当数据包从虚拟机向适配器传输时,Hypervisor会将数据包放入各自的队列中。为了防止阻塞,确保每个队列得到公平服务,网络控制器以一种轮循方式传输队列中的数据包,从而保证VM服务质量(QoS)。

2.NetQueue
如果要充分利用VMDq,就需要修改VMM以便每台虚拟机支持一个队列。例如,VMware在它的Hypervisor中引入了一个称为NetQueue的特性。NetQueue可以利用帧、VMDq的排序功能。NetQueue和VMDq结合使用可以减轻ESX路由数据包的负担,从而减轻了CPU压力,并降低了延迟(参见图2-46)。


305785b065f94879f2703df018b5dd2c33641f3a

3.VMQ
VMQ是微软的一项Hyper-V排队技术,使用了Intel以太网控制器的VMDq功能,在将数据包传递到虚拟机的过程中,将软件参与处理的过程降低到最少。

4.VMDc
虚拟机直接连接(VMDc)可给独立的VM分配直接网络I/O。这个功能提高了整体网络性能和VM之间的数据隔离,并让VM实时迁移成为可能。

VMDc符合单根I/O虚拟化(Single Root I/O Virtualization,SR-IOV)标准(参见第3章的“SR-IOV”部分)。

最新的Intel以太网服务器控制器支持SR-IOV,将物理I/O端口虚拟成多个称为虚拟功能(Virtual Functions,VF)的虚拟I/O端口。

将物理设备分为多个VF可以让VM实现与物理I/O设备相当的I/O性能。该功能可以增加每台物理主机支持的VM数量,从而增强服务器的整合能力。

2.5.3 VMDirectPath

VMDq和VMDc的结合就诞生了VMware VMDirectPath,以一种类似于“内核旁路”的方式绕过了ESX/vSphere Hypervisor,不使用Hypervisor中的软件交换机,数据直接从物理适配器传递到vNIC,反之亦然。参见第3章的“VN-Link”部分,特别是图3-20。

相关文章
|
13天前
|
机器学习/深度学习 弹性计算 人工智能
阿里云服务器ECS架构区别及选择参考:X86计算、ARM计算等架构介绍
在我们选购阿里云服务器的时候,云服务器架构有X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器、高性能计算可选,有的用户并不清楚他们之间有何区别,本文主要简单介绍下这些架构各自的主要性能及适用场景,以便大家了解不同类型的架构有何不同,主要特点及适用场景有哪些。
|
18天前
|
存储 人工智能 运维
面向AI的服务器计算软硬件架构实践和创新
阿里云在新一代通用计算服务器设计中,针对处理器核心数迅速增长(2024年超100核)、超多核心带来的业务和硬件挑战、网络IO与CPU性能增速不匹配、服务器物理机型复杂等问题,推出了磐久F系列通用计算服务器。该系列服务器采用单路设计减少爆炸半径,优化散热支持600瓦TDP,并实现CIPU节点比例灵活配比及部件模块化可插拔设计,提升运维效率和客户响应速度。此外,还介绍了面向AI的服务器架构挑战与软硬件结合创新,包括内存墙问题、板级工程能力挑战以及AI Infra 2.0服务器的开放架构特点。最后,探讨了大模型高效推理中的显存优化和量化压缩技术,旨在降低部署成本并提高系统效率。
|
18天前
|
存储 人工智能 芯片
面向AI的服务器计算互连的创新探索
面向AI的服务器计算互连创新探索主要涵盖三个方向:Scale UP互连、AI高性能网卡及CIPU技术。Scale UP互连通过ALink系统实现极致性能,支持大规模模型训练,满足智算集群需求。AI高性能网卡针对大规模GPU通信和存储挑战,自研EIC网卡提供400G带宽和RDMA卸载加速,优化网络传输。CIPU作为云基础设施核心,支持虚拟化、存储与网络资源池化,提升资源利用率和稳定性,未来将扩展至2*800G带宽,全面覆盖阿里云业务需求。这些技术共同推动了AI计算的高效互联与性能突破。
|
2月前
|
机器学习/深度学习 弹性计算 人工智能
阿里云服务器架构有啥区别?X86计算、Arm、GPU异构、裸金属和高性能计算对比
阿里云ECS涵盖x86、ARM、GPU/FPGA/ASIC、弹性裸金属及高性能计算等多种架构。x86架构采用Intel/AMD处理器,适用于广泛企业级应用;ARM架构低功耗,适合容器与微服务;GPU/FPGA/ASIC专为AI、图形处理设计;弹性裸金属提供物理机性能;高性能计算则针对大规模并行计算优化。
109 7
|
3月前
|
存储 固态存储 安全
阿里云服务器X86计算架构解析与X86计算架构云服务器收费价格参考
阿里云服务器架构分为X86计算、Arm计算、高性能计算等多种架构,其中X86计算是用户选择最多的一种架构,本文将深入探讨阿里云X86计算架构的云服务器,包括其技术特性、适用场景、性能优势以及最新价格情况。
|
3月前
|
编解码 弹性计算 应用服务中间件
阿里云服务器Arm计算架构解析:Arm计算架构云服务器租用收费标准价格参考
阿里云服务器架构分为X86计算、Arm计算、高性能计算等多种架构,其中Arm计算架构以其低功耗、高效率的特点受到广泛关注。本文将深入解析阿里云Arm计算架构云服务器的技术特点、适用场景以及包年包月与按量付费的收费标准与最新活动价格情况,以供选择参考。
|
3月前
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器计算架构X86/ARM/GPU/FPGA/ASIC/裸金属/超级计算集群有啥区别?
阿里云服务器ECS提供了多种计算架构,包括X86、ARM、GPU/FPGA/ASIC、弹性裸金属服务器及超级计算集群。X86架构常见且通用,适合大多数应用场景;ARM架构具备低功耗优势,适用于长期运行环境;GPU/FPGA/ASIC则针对深度学习、科学计算、视频处理等高性能需求;弹性裸金属服务器与超级计算集群则分别提供物理机级别的性能和高速RDMA互联,满足高性能计算和大规模训练需求。
134 6
|
3月前
|
监控 Serverless 云计算
探索Serverless架构:无服务器计算的新纪元
Serverless架构作为云计算的新范式,让开发者无需管理服务器即可构建和运行应用,从而专注于代码开发。其核心优势包括成本效益、自动扩展及高效部署。通过事件驱动模型和微服务部署,开发者按需付费,减少了资源浪费。尽管面临冷启动、状态管理和调试等挑战,Serverless架构仍凭借其高效性与可扩展性展现出广阔的应用前景。流行平台如AWS Lambda、Azure Functions等使其实施更为便捷。
|
5月前
|
机器学习/深度学习 算法 数据库
阿里云服务器架构区别解析:从X86计算、Arm计算到高性能计算架构的区别参考
在我们选择阿里云服务器的架构时,选择合适的云服务器架构对于提升业务效率、保障业务稳定至关重要。阿里云提供了多样化的云服务器架构选择,包括X86计算、ARM计算、GPU/FPGA/ASIC、弹性裸金属服务器以及高性能计算等。本文将深入解析这些架构的特点、优势及适用场景,以供参考和选择。
阿里云服务器架构区别解析:从X86计算、Arm计算到高性能计算架构的区别参考
|
4月前
|
KVM 虚拟化
计算虚拟化之CPU——qemu解析
【9月更文挑战10天】本文介绍了QEMU命令行参数的解析过程及其在KVM虚拟化中的应用。展示了QEMU通过多个`qemu_add_opts`函数调用处理不同类型设备和配置选项的方式,并附上了OpenStack生成的一个复杂KVM参数实例。

热门文章

最新文章