精华内容
下载资源
问答
  • 针对嵌入式系统硬件平台采用纯软件仿真并对嵌入式软件进行功能级测试的相关研究存在较多不足,缺乏整体、统.一、灵活、标准的仿真部件间接口,致使不同体系、类型的处理器仿真核与各类外设间较难进行快速、直接的...
  • 网络功能虚拟化(NFV)技术研究进展

    千次阅读 2019-04-29 17:10:00
    网络功能虚拟化技术研究进展[J]. 计算机学报, 2019(2). 1 引言 欧洲电信标准协会(European Telecom Standards Institute, ETSI)提出了网络功能虚拟化(Network Function Virtualization, NFV),旨在用软件实现...

    文献:

    王进文, 张晓丽, 李琦, et al. 网络功能虚拟化技术研究进展[J]. 计算机学报, 2019(2).


    1 引言

    欧洲电信标准协会(European Telecom Standards Institute, ETSI)提出了网络功能虚拟化(Network Function Virtualization, NFV),旨在用软件实现可在行业标准服务器上运行的网络功能,并可根据需求动态部署在网络中不同的位置而无需重新安装新的专用硬件设备。在这里插入图片描述

    2 NFV标准结构介绍

    NFV的标准结构如下:
    在这里插入图片描述
    由图可见,NFV的标准结构主要分为以下三个部分:

    1. 虚拟化网络功能
    2. 网络功能虚拟化设施
    3. 网络功能虚拟化管理和编排器。

    2.1 虚拟化网络功能

    网络功能(Network Function,NF)是传统网络基础设施中的功能模块,具有固定的内部功能以及良好定义的外部接口。
    而虚拟化网络功能(VNF)则是能部署在虚拟资源上的各类软件NF。

    2.2 网络功能虚拟化设施

    网络功能虚拟化设施(Network Functions Virtualization Infrastructure, NFVI)是提供NFV部署、管理和运行所需环境的软硬件结构总称,主要包括:

    1. 硬件资源
    2. 虚拟化层
    3. 虚拟化资源

    硬件资源主要包括由计算机硬件设备组成的计算资源、存储设备构成的存储资源以及由节点和连接链路组成的网络资源。
    虚拟化层则主要负责抽象硬件资源,并将VNF和底层硬件资源解耦。
    虚拟化资源则是对计算资源、网络资源和存储资源的抽象,与硬件资源相对应。

    2.3 网络功能虚拟化管理和编排

    网络功能虚拟化管理和编排(Management And Network Orchestration, MANO)部分主要向NFV平台提供协调控制所有VNF所需要的功能和操作。
    MANO主要包含以下三个部分:

    1. 虚拟化设施管理器
    2. 虚拟化网络功能管理器(VNF管理器)
    3. 虚拟化网络功能调度器(VNF调度器)

    虚拟化设施管理器主要负责监控NFVI中的资源使用情况,并对NFVI中软/硬件资源进行生命周期管理和分配调度。
    VNF管理器主要负责VNF生命周期的管理
    VNF调度器主要负责协调VNF管理器和虚拟化设施管理器来实现网络功能服务链在虚拟化设施上的部署实施。

    此外,MANO还设置有数据库,并提供了一系列标准接口。

    2.4 NFV与SDN

    软件定义网络(Software Defined Network, SDN)是一种新型的网络架构,其通过解耦网络设备的控制平面和数据平面,旨在实现灵活、智能的网络流量控制。
    SDN结合MANO可以高效地控制网络转发,向NFV平台提供VNF之间的可编程流量转发,以此来实现高效灵活的流量调度。
    故当结合SDN后,NFV网络系统架构如图所示:
    在这里插入图片描述
    其中图左上方的转发设备主要负责数据包的转发,其中转发规则由SDN控制器决定,并以流表项的形式下发到交换机。

    3 NFV技术研究概况

    对NFV的研究可以分为以下6个领域:

    1. VNF构建及运行环境优化
    2. NFV管理系统设计及优化
    3. 策略实施与验证
    4. 资源分配及迁移策略
    5. NFV负载均衡和状态管理技术
    6. NFV架构的安全问题
      在这里插入图片描述

    3.1 VNF构建及运行环境优化

    模块化开发VNF:通过组合不同现成的VNF功能模块,生成定制化的VNF。
    目前对NVF运行环境的优化以及VNF隔离机制的优化,相关工作主要有ClickOS和NetBricks。
    Martins等人通过结合基于Xen的操作系统MiniOS和模块化路由器Click,实现了高性能的模块化VNF构建和运行平台ClickOS。
    但ClickOS无法解决VNF开发过程中需要修改VNF功能模块来实现性能优化的问题,此外VNF运行环境使用VM进行内存隔离的方式,由于VNF频繁穿越内存隔离边界,上下文切换产生的开销使NFV平台处理性能大幅下降。针对以上问题,Panda等人提出了高性能VNF的构建框架NetBricks。
    NetBricks首先通过向开发者提供VNF模块的构建框架,使VNF开发者通过组合必要的VNF模块组件,实现高效的VNF功能模块,避免了开发者对现成VNF模块的重复修改。NetBricks还通过安全语言(Rust)和LLVM来实现软件内存隔离,并利用独特类型方法,在编译阶段通过类型检查实现了数据包的隔离(数据包不能被其他不相关VNF处理)。

    3.2 NFV管理系统设计及优化

    对于不同的VNF通常需要定制化实现其管理功能,其中包括VNF的部署、网络流量过载检测、负载均衡机制、容错恢复机制。而对不同的VNF重复实现管理功能延长了开发周期,阻碍了软件的创新。故集成VNF管理功能的NFV框架成为网络管理员和VNF软件提供商的迫切需求。
    最具代表性的工作:E2,其系统架构如图所示:
    在这里插入图片描述
    其中E2D是对SoftNIC的拓展,而SoftNIC是一种可编程的高效软件交换机,通过对SoftNIC的拓展,可以实现流量监控、负载均衡、流量追踪、数据包分类以及不同VNF之间通信的隧道。
    E2管理器负责根据网络状况和用户配置生成VNF管理决策。E2服务器代理主要负责执行E2管理器的决策并将服务器上VNF的相关信息向E2管理器上报。

    之后的工作则关注于NFV平台的性能优化,目前主要有最小化资源部署量、共用不同VNF之间相同的数据包处理模块以及VNF并行处理数据包三种方式,主要工作包括CoMB、OpenBox和NFP。

    CoMB,首先通过NFV平台中拥有网络和资源信息的控制器,将全部流量根据处理路径进行分类,并生成对应网络功能链(由指定次序的VNF依次连接而成),称为超级应用。然后控制器根据VNF平台中不同服务器的物理资源状况、不同超级应用对资源的使用情况以及每类流量的大小情况,生成流量到不同节点的分配策略。
    CoMB通过最小化NFV平台内节点流量的峰值,减少了每个节点的最大资源部署数量,此外通过分析不同VNF中存在26%~88%的可复用网络功能模块,通过共用这些可复用网络功能模块可用来缩短数据包经过NFV平台的处理延迟。
    但CoMB只分析了在会话重建和协议分析方面的复用潜力,而忽略了更细粒度的核心VNF处理模块的复用优化空间。而OpenBox则通过将NF的控制层与数据层分离,利用逻辑中心化控制器来实现NFV平台的部署管理和优化。
    OpenBox通过将不同VNF重复的网络功能处理模块合并,实现不同VNF之间的相同网络功能处理模块复用。如下图将Firewall和IPS包处理流程合并:
    在这里插入图片描述
    而NFP框架则是考虑不同网络功能之间的可并行性,通过自动化并行不冲突的VNF的NFV来减少处理延迟。例如下图Firewall和IDS都不会对经过的数据包进行修改,故可以并行部署。
    在这里插入图片描述
    最后对NFV管理系统设计及优化的相关工作总结如下:
    在这里插入图片描述

    3.3 策略实施与验证

    在实现NFV平台策略正确实施方面,主要存在数据包携带VNF处理上下文信息和VNF服务链分解两种方法,相关工作包括FlowTags和Stratos。
    目前VNF策略实施验证的手段主要包括静态验证和动态验证,相关工作包括SLA-V和BUZZ。

    3.4 资源分配和迁移策略

    在NFV平台中,MANO负责资源分配和迁移策略的计算,其根据虚拟化设施管理器以及VNF管理器中虚拟资源和VNF的相关信息,利用优化模型进行问题建模,从VNF服务链的构造、VNF部署以及VNF调度三个角度来计算NFV平台的资源分配及迁移策略。
    VNF服务链构造是指按照网络策略的定义,根据不同VNF之间的依赖,依次连接VNF。
    VNF部署是指将VNF服务链部署在实际的物理资源之上。
    VNF调度是指,在保证VNF服务链策略依赖的前提下,在有限的物理资源上对不同VNF服务链上的VNF进行运行调度,使得不同的VNF服务链在有限的资源上得以有序高效地运行。

    对于不同的NFV部署场景中,资源分配和迁移策略使用的优化模型由不同的优化目标。例如最小化NFVI上的VNF部署数量或最大化NFVI上能够部署的NFV服务链数量。这些目标通常与服务质量、容错、负载均衡、节能、利润收益紧密相关。

    在NFV资源分配和迁移的优化策略方面,由于NFV资源分配和迁移策略问题可以视为**虚拟网络嵌入(Virtual Network Embeding, VNE)**的一般化问题,根据VNE为NP-hard问题可知,大部分NFV资源分配和迁移也是NP-hard问题。
    目前针对该问题的解决策略包括使用最优解算法、启发式算法和元启发式算法。

    最优解算法
    通常使用线性规划算法求解优化问题的最优解,虽然规划问题很多情况下是NPC问题,但通过分支定界、分支定价等算法,可以在合理的时间内,在小型网络中得出最优解。
    启发式算法
    为了在任意规模的网络中最小化资源分配和VNF迁移的决策计算时间,各种基于启发式的算法得以应用。例如在无线局域网NFV场景中,使用递归贪心和最短路径算法,实现了满足约束条件的VNF部署
    元启发式算法
    该问题可以视为在离散搜索空间内寻求最优解的最优化问题,迭代改进问题的解决方案可以接近最优解。例如使用禁忌搜索算法来解决VNF的动态部署和调度问题。

    网络攻击防御:
    Fayaz等人结合SDN技术和NFV技术实现了灵活的、可拓展的DDoS防御系统Bohatei。Bohatei防御系统根据DDoS攻击流量大小和类型来判断防御虚拟机的部署数量和位置,利用NFV技术灵活地在相应位置部署相应数量和类型的防御虚拟机,实现了实时有效地防御DDoS攻击。SDN技术用于在最小化用户可感知延迟和网络阻塞的前提下,将可疑流量调度到部署有防御机制的虚拟机中。

    3.5 NFV负载均衡及状态管理技术

    对NFV负载均衡策略、NFV负载均衡系统实现及VNF状态管理方面进行了大量研究,相关工作包括Stratos、FreeFlow、OpenNF、StateAlyzr以及VFW。此外物理机器故障、电路故障等情况引起的网络功能异常会严重影响NFV平台的稳定性,因此,VNF如何快速、高效地从失效状态恢复也成为NFV技术需要解决的问题之一,相关工作包括FTMB。

    3.6 NFV架构中的安全问题

    NFV技术中的安全问题可以分为传统NFV架构中的安全问题和NFV外包场景下的安全问题。
    NFV架构中的安全问题主要包括NFVI中的安全问题和VNF中的安全问题。

    4 NFV部署场景

    云数据中心网络功能虚拟化、蜂窝基站虚拟化、移动核心网虚拟化、家庭网络虚拟化

    5 NFV技术的优势与不足

    优势

    1. 降低网络功能部署开销
    2. 提供灵活的弹性拓展功能
    3. 简化网络功能更新
    4. 降低网络功能管理复杂度

    不足

    1. 网络功能处理性能下降
    2. 网络流量数据隐私暴露
    3. 软件攻击面扩大

    6 NFV技术未来研究方向展望

    未来研究工作会偏重于以下几个方面:

    1. NFV系统性能优化
      由虚拟化技术引起的不稳定网络特征会影响到虚拟化设施的性能与部署。为了使NFV平台达到实际网络环境的性能需求,NFV性能优化仍然是未来研究的重要方向之一,主要包括VNF运行环境性能优化和VNF处理性能优化两个部分。
    2. VNF负载均衡和状态管理
      高效的VNF负载均衡和容错技术是NFV平台提供稳定网络服务的有效保障。目前VNF负载均衡和容错恢复机制都采用实时监测、及时响应的模式。这种模式无法对网络流量过载和VNF运行时错误做出及时的预测并尽早采取行动。
    3. 资源分配和调度策略
      NFV管理平台需要合理部署、控制和管理VNF来满足不同网络环境中的动态需求。
    4. NFV策略实施和验证
    5. NFV管理系统设计及优化
    6. NFV技术中的安全问题
    7. NFV技术外包模式流量隐私保护
    展开全文
  • 虚拟化技术原理

    2020-12-21 15:33:26
    到目前为止,虚拟化技术的各方面都有了进步,虚拟化也从纯软件的虚拟化逐深入到处理器级虚拟化,再到平台级虚拟化乃至输入/输出级虚拟化。对数据中心来说,虚拟化可以节约成本,最大化利用数据中心的容量和更好的...

    3. 2 虚拟化技术原理

    到目前为止,虚拟化技术的各方面都有了进步,虚拟化也从纯软件的虚拟化逐深入到处理器级虚拟化,再到平台级虚拟化乃至输入/输出级虚拟化。对数据中心来说,虚拟化可以节约成本,最大化利用数据中心的容量和更好的保护数据。虚拟化技术已经成为私有云和混合云设计方案的基础。
    本节将简单地介绍虚拟化技术原理,包括虚拟机的原理、CPU虚拟化原理、内存虚拟化原理以及网络虚拟化原理。

    3. 2. 1 虚拟机技术原理

    虚拟机(Virtual Machine, VM) 是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。简单地说,虚拟机就是通过软件在宿主机上虚拟出一台计算机。虚拟机技术是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以
    比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部分是不受现有资源的架设方式、地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和数据存储。在实际的生产环境中,虚拟机技术主要用来解决云数据中心和高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化地利用物理硬件。即将多个操作系统整合到一台高性能服务器上,最大化利用硬件平台的所有资源,用更少的投入实现更多的应用,还可以简化IT 架构,降低管理资源的难度,避免IT 架构的非必要扩张。而且虚拟机的真正硬件无关性还可以实现虚拟机运行时迁移,实现真正的不间断运行,从而最大化保持业务的持续性,不用为购买超高可用性平台而付出高昂的代价。
    虚拟机技术实现了一台计算机同时运行多个操作系统,而且每个操作系统中都有多个程序运行,每个操作系统都运行在一个虚拟的CPU或虚拟主机上。虚拟机技术需要 CPU、主板芯片组、BIOS和软件的支持,如VMM软件或者某些操作系统本身。虚拟机技术的核心是虚拟机监视器VMM (Virtual Machine Monitor) , VMM也称为Hypervisor. VMM的作用是向底层分配访问宿主机的硬件资源,向上管理虚拟机的操作系统和应用程序。它是一个宿主程序,该程序是一层位于操作系统和计算机硬件之间的代码,用来将硬件平台分割成多个虚拟机,实现一台计算机支持多个完全相同的执行环境。每个用户都会感觉到自己在一台独立的、与其他用户相隔离的计算机上进行操作,尽管事实上为每个用户提供服务的都是同一台机器。在此种情况下,一台虚拟机就是由一个潜在的控制程序管理的操作系统。VMM为每个客户操作系统虚拟一套独立于实际硬件的虚拟硬件环境(包括处理器、内存、I/O 设备等)。VMM采用某种调度算法在各个虚拟机之间共享CPU, 如采用时间片轮转调度算法。
    虚拟机系统与实际的计算机操作系统没有区别,也会感染病毒,但是由于虚拟机是封闭的虚拟环境,如果虚拟机不与宿主机连接,则不会受宿主机病毒的影响。

    3. 2. 2 CPU 虚拟化原理

    首先,CPU虚拟化的目的是为了允许让多个虚拟机可以同时运行在VMM中。CPU虚拟化技术是将单CPU模拟为多CPU, 让所有运行在VMM之上的虚拟机可以同时运行,并且它们相互之间都是独立的,互不影响的,以提高计算机的使用效率。在计算机体系中,CPU是计算机的核心,没有 CPU 就无法正常使用计算机,所以,CPU 能否正常被模拟成为虚拟机能否正常运行的关键。
    从CPU设计原理上来说,CPU主要包含三大部分:运算器、控制器以及处理器寄存器。每种CPU都有自己的指令集架构(Instruction Set .Architecture, ISA) , CPU 所执行的每条指令都是根据ISA提供的相应的指令标准进行的。ISA主要包含两种指令集:用户指令集(User ISA) 和系统指令集(System ISA) .用户指令集一般指普通的运算指令,系统指令集一般指系统资源的处理指令。不同的指令需要有不同的权限,指令需要在与其相对应的权限才能体现指令执行效果。在X86的体系框架中,CPU指令权限一般分为4种,ring0、1、2、3, 如图3-6所示。
    最常用的 CPU 指令权限为0与3: 权限为0的区域的指令一般只能内核可以运行,而权限为3的指令则是普通用户运行。而权限为1、2的区域一般被驱动程序所使用。想要从普通模式(权限为3) 进入权限模式(权限为0) 需要有以下三种情况之一发生:
    异步的硬件中断,如磁盘读写等。
    系统调用,如int、call等。
    异常,如 page fault等。
    从上面内容可以看出,要实现CPU 虚拟化,主要是要解决系统ISA的权限问题。普通的ISA 不需要模拟,只需保护CPU运行状态,使得每个虚拟机之间的状态分隔即可。而需要权限的ISA 则需要进行捕获与模拟。因此要实现CPU的虚拟化,就需要解决以下几个问题:
    所有对虚拟机系统 ISA 的访问都要被 VMM以软件的方式所模拟。即所有在虚拟机上所产生的指令都需要被 VMM所模拟。
    所有虚拟机的系统状态都必须通过VMM保存到内存中。
    所有的系统指令在VMM处都有相对应的函数或者模块来对其进行模拟。
    CPU 指令的捕获与模拟,是解决 CPU 权限问题的关键。如图3-7所示。
    在这里插入图片描述
    当然真实的情况没有那么简单,并不是所有的CPU 框架都支持类似的捕获,而且捕获这类权限操作所带来的性能负担可能是巨大的。并且,在指令虚拟化的同时,也需要实现CPU 在物理环境中所存在的权限等级,即虚拟化出 CPU 的执行权限等级因为没有了权限的支撑,指令所执行出
    来的效果可能就不是想要得到的效果了。
    为了提高虚拟化的效率与执行速度,VMM实现了二进制转换器BT (Binary Translator) 与翻译缓存 TC (Translation Cache) .BT负责指令的转换,TC用来储存翻译过后的指令。BT 在进行指令转换一般有以下几种转换形式。

    1. 对于普通指令,直接将普通指令拷贝到TC中。这种方式称为“识别(Ident) ”转换。
    2. 对某些需要权限的指令,通过一些指令替换的方式进行转换,这种方式称为"内联(Inline) ”转换。
    3. 对其他需要权限的指令,需要通过模拟器进行模拟,并将模拟后的结果转交给VM才能达到虚拟化的效果。这种方式称为“呼出” (Call-out) 转换。
      因为指令需要进行模拟,所以有些操作所消耗的时间比较长,在全虚拟化的情况下,它的执行效果会比较低下,因此,才出现了半虚拟化与硬件辅助虚拟化两种另外的虚拟化技术,用于提高虚拟机运行的效率。在这里插入图片描述

    3. 2. 4 网络虚拟化原理

    网络虚拟化提供了以软件的方式实现的虚拟网络设备,虚拟化平台通过这些虚拟网络设备可以实现与其他网络设备进行通信。而通信的对象可以是真实的物理网络设备,也可以是虚拟的网络设备。所以,网络虚拟化是要实现设备与设备之间的与物理连接没有关系的虚拟化连接。因此,网络虚拟化最主要解决的问题有两个,网络设备与虚拟连接。虚拟化的网络设备可以是单个网络接口,也可以是虚拟的交换机以及虚拟的路由器等。在同一个局域网内,任何两个不同的虚拟设备都可以实现网络的连接;如果不是在同一个网内,则需要借助到网络协议才能实现网络的正常连接与通信,如VLAN (Virtual Local Area Network) 、VPN (Virtual Private Network) 等协议。
    以 VLAN 为例简单说明网络虚拟化的连接与通信。VLAN 将网络结点按需划分成若干个逻辑工作组,每一个逻辑工作组就对应一个虚拟网络。每一个虚拟网络就像是一个局域网,不同的虚拟网络之间相互独立,无法连接与通信。如果需要通信,则需要路由设备的协助,转发报文才能正常通信。由于这些分组都是逻辑的,所以这些设备不受物理位置的限制,只要网络交换设备支持即可。

    3. 3 常见的虚拟化技术解决方案

    随着虚拟化技术的发展与应用,市场上出现了多种虚拟化技术解决方案。下面将对这些常见的虚拟化技术解决方案进行概述。

    3. 3. 1 OpenStack

    OpenStack (https: //www.openstack.org/) 是由NASA (美国国
    家航空航天局)和 Rackspace 合作研发并发起的、以Apache 许可证授权的自由软件和开放源代码项目,其Logo如图 所示OpenStack是一款开源的云平台,通过相应的API与驱动对虚拟机进行管理,它几乎支持市面所有类型的虚拟化环境。OpenStack 本身不提供虚拟化功能,虚拟化由VMM提供,Openstack则是根据相应的API 对VMM 进行管理。Openstack负
    责平台的搭建与周边功能的完善。OpenStack 设计的初衷就是适应分布式应用的架构,应用的组件在该平台中可以跨越多个物理设备或虚拟设备。这些类型的应用也被设计成随着规模的增加,可以通过添加应用实例或者重新平衡应用实例间的负载。它要实现的目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
    从逻辑上来看,OpenStack 由三个部分组成:控制模块,网络模块及计算模块。控制模块主要运行一些API接口服务、消息队列、数据库管理模块及Web的接口等;网络模块主要提供为各个虚拟机提供网络服务;计算模块则主要负责处理消息、控制虚拟机等操作。
    从OpenStack的组成来看,它包含了众多的模块,并且这些模块都可以分布式部署。主要包含以下几个重要模块:Nova、Keystone、Ceilometer、Horizon、Glance、Neutron、Cinder及Swift等。Nova主要提供计算功能;Keystone 负责认证与授权;Ceilometer用于资源与系统运行情况的监控;Horizon 为用户提供了方便管理的Web平台;Neutron负责网络环境的搭建与虚拟化;Glance用于镜像文件的管理;Cinder 负责块存储,可以为用户提供 SaaS (Storage asa Service, 存储即服务)服务;Swift 同样负责存储,但它主要负责数据对象、镜像、数据备份等平台所用的数据存储,同样也可以对Cinder的数据进行备份存储。
    在这里插入图片描述

    3. 3. 2 KVM

    基于内核的虚拟机(Kemel-based Virtual Machine, KVM) 是开源软件,其
    所示,其官网地址为:https: //www.linux-kvm.org/page/Main Page.KVM是一款基于X86 架构,且硬件支持虚拟化技术的Linux全虚拟化解决方案。硬件支持虚拟化技术由CPU厂商提供,目前市面上有两种技术方案,Intel-VT与 AMD-V.KVM 首次被并入 Linux 的内核版本为2. 6. 20, 在 RHEL 5. 4中推出,并于2007年2月5日正式发布。只要硬件支持 Intel- VT或AMD-V就可以使用KVM.可以通过命令 grep-E"vmxlsvm"/proc/cpuinfo 来确定当前硬件平台的支持情况.在这里插入图片描述

    3.3.3Huper-V

    Huper-V 设计的目的是为了广大的用户提供更为熟悉以及成本效益更高的虚拟化基础设施软件,这样可以降低运作成本、提高硬件利用率、优化基础设施并提高服务器的可用性。Huper-V 采用微内核的架构,兼顾了安全性和性能的要求。由于 Hyper-V 底层的 Hypervisor 代码量很小,不包含任何第三方的驱动,非常精简,安全可靠、执行效率高,能充分利用硬件
    盗源,使虚拟机系统性能更接近真实系统性能。Hyper-V 采用基于 VMBUS (Virtual MachineBus) 的高速内存总线架构,所有来自虚拟机的硬件请求,不论是显卡、鼠标、键盘或者其他设备,都可以直接经虚拟化服务客户机(Virtualization Service Consumer, VSC) , 通过VMBUS 总线发送到根分区的虚拟化服务提供者(Virtualization Service Provider, VSP) , VSP则调用对应的设备驱动直接访问硬件,中间不再需要通过Hypervisor的管理。这种方式下,每个虚拟机的硬件请求,不再需要经过用户模式、内核模式的多次上下文切换转移,从而极大地提高了运行效率。
    如果想要在 Hyper-V 中运行 Linux 操作系统也是没有问题的,只需要安装与 Linux 相关的组件即可。这些组件可以是支持 Xen 的 Linux 内核,也可以是专门为 Linux 设计的集成组件。当然,这些组件本身就已经集成了相关的驱动,所以用户不再需要关心在 Hyper-V中的驱动相关的问题。在安装完成这此组件后,Hyper-V 可以很完美地支持 Linux.
    Hyper-V 可以采用半虚拟化和全虚拟化两种模拟方式创建虚拟机。半虚拟化方式要求虚
    玖机与物理主机的操作系统(通常是版本相同的 Windows) 相同,以使虚拟机具备高性能:全虚拟化方式要求CPU 支持全虚拟化功能,如 Inter-VT 或AMD-V, 以便能够创建使用不间的操作系统的虚拟机,如Linux 或者 Mac OS.
    在这里插入图片描述

    3. 3. 4 VMware

    VMware (https: //www.vmware.com/) 旗下有很多虚拟化产品,对不同的需求有不同的产
    品系列,如 VMware ESX/ESXi、VMware Workstation、VMware Player等。

    1. VMware ESXi
      VMware ESXi前身为 VMware ESX (Elastic Sky X) , 是一款企业级虚拟化产品,其Logo
      VMware (https: //www.vmware.com/) 旗下有很多虚拟化产品,对不同的需求有不同的产品系列,如 VMware ESX/ESXi、VMware Workstation、VMware Player等。
    2. VMware ESXi
      VMware ESXi前身为 VMware ESX (Elastic Sky X) , 是一款企业级虚拟化产品,其Logo 在这里插入图片描述

    3. 3. 5 Xen

    Xen (https: //www.xenproject.org/) 是剑桥大学的开源项目,是最早的开源虚拟化引擎,在由被 Intel 支持的 Linux基金组织开发,其Logo如图所示。Xen 采用的架构是裸金属架构,它是直接运行在硬件之上,使用微内核实现。它支持在同一台设备上同时并行执行多个不同的操作系统实例。Xen支持IA-32、X86-64以及ARM平台。目前来说,Xen是市面上唯一一款裸金属架构的开源虚拟化引擎。它最常被用到的地方是服务器虚拟化、基础设施即服务(IaaS) .Xen 的特点与优势是非常显著的。在这里插入图片描述
    1)内核非常小,接口也少。因为是微内核设计,使用了非常少的内存,接口数据也少,所以它比其他的虚拟化架构更加安全,更加稳定。
    2)Xen 支持各种各样的操作系统,包括 Windows、NetBSD及OpenSolaris 等操作系统。在Xen 上面安装最多的操作系统是Linux.
    3) 取动隔离。Xen 框架允许系统中主要的设备驱动都保持在虚拟机本身内部运行。如果其中一个驱动运行异常,只需要将运行驱的虚拟机重启或虚拟机内部相应的驱动模块重启便可,这个重启不会影响到系统上正在运行的其他系统。它们都是相互独立,互不影响的。
    4) 半虚拟化。因为是Xen半虚拟化的,所以相应的 Guest OS 需要做一些修改与调整,这可以使得它的运行效率比全虚拟运行的效率高了很多。另外,它也可以运行在一些不支持虚拟化的硬件设备中。最后,Xen 也支持全虚拟化,但只支持硬件辅助的全虚拟化,即硬件需要支持Intel-VT或AMD-V等。Xen目前运行在X86架构的机器上,需要P6或更新的 CPU (如 Pentium Pro、Celeron、Pentium II, Pentium III、Pentium IV. Xeon AMD Athlon、AMD Duron) 才可以运行。Xen 支持多处理器,并且支持超线程(Simultaneous Multithreading, SMT) .Xen以高性能、占用资源少著称,赢得了IBM、AMD、HP、Red Hat 和 Novell 等众多世界级软硬件厂商的高度认可和大力支持,已被国内外众多企事业用户用来搭建高性能的虚拟化平台。

    3. 3. 6 Docker

    Docker (https: //www.docker.com/) 最初是dotCloud公司创始人Solomon Hykes 发起的一个公司内部项目。Docker是基于dotCloud公司多年云服务技术的一次革新,并于2013年3月以Apache 2. 0授权协议开源,其主要项目代码在 GitHub上进行维护。Docker 项目后来还加入了 Linux 基金会,并成立了推动开放容器联盟。Docker的Logo 如图所示。在这里插入图片描述
    Docker是一个开源的应用容器引擎,在容器里面运行的实例都是相互独立的,属于操作系统虚拟化的一种。Docker 让开发者可以将应用以及依赖包打包到一个可移植的容器中,然后发布到任何流行的操作系统上。最重要的是,这些容器不依赖于任何语言、框架、包括系统。镜像(打包文件)是一个轻量级的、独立的可执行包,而这个包已经包含了它运行时需要的所有依赖,包括软件、库、环境与配置文件等。而容器则是一个运行时的镜像实例,即镜像加载到了内存中运行。这个镜像的运行完全是与主机环境相隔离开的,它除了访问主机的文件与端口外,与主机没有其他任何关系。简单来说,容器类似于沙箱,所有沙箱的运行相互不影响,系统的其他进程运行也不会影响到沙箱,它们相互之间不会有任何接口,相互独立。但沙箱与系统相关,而 Docker 实现的容器则与系统无关,它所打包的镜像已经包含了镜像所需要的所有依赖,所以只需要一次打包,所有Docker的环境都可使用。同样的,Docker 的使用与部署都很容易,几乎没有性能开销,Docker 可以很容易地部署到本地或数据中心。因为容器是直接运行在本地主机内核之上的,相对来说,在容器里面的运行效率比在虚拟机里面的效率更加高效,每一个容器的运行就是一个单独的进程,它们所消耗的内存也比虚拟机所消耗的内存更少。

    展开全文
  • 学网络,就在IE-LAB国内高端网络工程师培养基地NFV网络功能虚拟化(Network Functions Virtualization),是一种网络架构的概念,通过使用虚拟化技术,将网络节点分割成几个功能区块,分别以软件方式,不再局限于硬件...

    点上方蓝字关注,每天都有新收获!

    学网络,就在IE-LAB

    国内高端网络工程师培养基地


    NFV网络功能虚拟化(Network Functions Virtualization),是一种网络架构的概念,通过使用虚拟化技术,将网络节点分割成几个功能区块,分别以软件方式,不再局限于硬件架构。

    NFV能够将许多类型的网络设备(如servers,switches和storage等)构建为一数据中心网络,通过IT的虚拟化技术虚拟化形成虚拟机,然后将传统的业务部署到VM上。

    在NFV出现之前设备的定制化很明显,为实现专门的功能设置具体的设备,而NFV通过将设备的控制平面与具体设备进行分离,通过基于云操作系统的虚拟机。

    为不同设备提供控制层面的内容,当企业需要部署新业务时只需要在开放的虚拟机平台上创建相应的虚机,然后在虚拟机上安装相应功能的软件包即可。这种方式我们就叫做网络功能虚拟化。

    NFV的标准架构包括NFV infrastructure(NFVI),MANO(Management and Orchestration)和VNFs,三者是标准架构中顶级的概念实体。在NFV架构中,底层为具体物理设备,如服务器,存储设备,网络设备。

    15f71be06b45be52413cfb723a83159f.png

    服务器虚拟化即虚拟机,在一台服务器上创建多个虚拟系统。

    存储虚拟化,即多个存储设备虚拟化为一台逻辑上的存储设备。

    网络虚拟化,即网络设备的控制平面与底层硬件分离,将设备的控制平面安装在服务器虚拟机上。

    IE-LAB有优质雄厚师资力量支撑,全面的学习平台和完善的教学服务,我们培养了一批又一批的HCIE/CCIE学员,加入我们,成就未来。

    9c3f7b8223e646fb7d28a13d468c9849.png

    往期【网工知识角】技术回顾:

    网工知识角|IPSec协议是如何确保网络安全的?

    网工知识角|华为认证配置指南之SSL协议知多少

    网工知识角|快速掌握华为认证交换机配置之端口安全机制

    网工知识角|掌握这四种方式完成垃圾邮件过滤,守护网络安全

    IPSec协议超详细解读网络安全协议的重要性就在网工知识角

    光纤通信技术知多少?WDM技术原理概述就在网工知识角

    网工知识角|你不得不了解的VRRP负载均衡技术详解

    乘SDN的热潮,NETCONF协议“重出江湖”,五大优点总结就在网工知识角

    网工请戳!交换机配置指南半分钟即可掌握关于SSL配置的内容

    热门无线技术中这个知识点你知多少?WLAN WDS技术详解一篇搞定

    MSDP协议的三个优点你知多少,就在网工知识角

    VLAN攻击如何有效防范?搞定虚拟局域网就在网工知识角

    一分钟掌握NFV基本概念,就在网工知识角

    三分钟掌握热点路由技术之DLSW,技术详解就在网工知识角

    避免引起网络安全问题,6步完成华为设备风暴控制的配置,网工知识角

    关于OSPF协议重点学习笔记之OSPFv3和OSPFv2的区别

    思科路由协议IGRP和EIGRP超详细总结,了解它们之间的关联和区别

    网工知识角|NAT64基本原理概述,它的局限性又有哪些?

    快速掌握网络通讯流量资源浪费的环路解决方法,网工知识角

    新网工技术一分钟解读Openflow工作原理,网工知识角

    网工知识角|用于管理和控制IPv6组播组的MLDsnooping技术详解

    网工知识角|快速理解FTP和TFTP的区别,实用收藏

    新网工都要了解的无线技术,你却连Mesh网络是什么都不知道?

    网工知识角|零基础入门学网络,三分钟掌握DTP协议的五种接口模式

    网工知识角|思科全新EI及无线方向你必须要去了解的WLAN漫游技术

    网工知识角|基础入门务必掌握这两个常用协议,快速攻克面试难关

    网工知识角|技术大牛自检时间到,关于MLD技术你知多少?

    网工知识角|不可忽略的三个关键点,确保端口安全配置无误

    网工知识角|一分钟搞定802.1x认证配置,了解三种授权模式的区别

    快速完成华为IPSG配置一分钟看完即会,网工知识角每天进步一点点

    网工知识角|一分钟轻松掌握Mac地址漂移使用的场景

    网络工程师技术难点分析MTU和PMTU是什么?就在网工知识角

    华为网络初级工程师快速掌握基于MAC地址的VLAN划分实用收藏

    网工知识角|华为网络技术面试题详解QOS流量整形令牌桶机制和规则

    这样总结隧道Tunnel技术工作原理更容易记住 网络工程师还不收藏?

    你知道NAC网络准入控制的5大功能5种类型和3重优点吗?

    网工知识角|什么是虚拟化?史上最全云计算基础虚拟化技术各种概念高薪面试必备

    网工知识角|网络工程师快收下这份华为MUXVLAN的原理和配置,华为HCIP数通网络实用技术

    网工知识角|华为HCIE数通认证基础必学之GVRP协议是什么

    网工知识角|CCIE网络工程师安全基础之AAA认证的三个基本组件

    网工知识角|EI CCIE企业网软定义中的VxLAN分布式网关两种部署方式

    网工知识角|关于OSPF V3你了解吗?不懂没关系,收下这份配置

    纯干货网工知识角|入门IT网络工程师收下这份关于NTP网络时间协议解读

    学思科和华为都需要掌握之网络安全技术防火墙的4种分类,网工知识角

    网工知识角|信息安全入门反病毒技术全面解说5种传播途径

    网工知识角|没人会告诉你的网络SDN软定义技术中VXLAN的4个特点

    网工知识角|你不可不知的WLAN的安全技术体系

    网工知识角|什么是思科软件定义接入(SD-Access)? 新一代网工必学的自动化技术

    网工知识角|什么是华为CSS 集群?简单易懂,面试收藏

    网工知识角|三分钟了解QOS的处理流程和分类

    网工知识角|Qos的基本原理

    网工知识角|LACP技术详解

    网工知识角|802.1X协议介绍

    网工知识角|OpenFlow协议简介

    网工知识角|MSTP协议详解

    网工知识角|快速了解IGMP协议

    网工知识角|快速了解和掌握HSRP协议简介和配置

    网工知识角|1分钟了解GRE协议浅析

    网工知识角|DHCP服务详解和基于eNSP DHCP配置

    网工知识角|P2P协议简介

    网工知识角|OSPFv3技术概述

    网工知识角|防火墙双机热备三大协议(VRRP-VGMP-HRP)简述

    网工知识角|一分钟了解交换机的堆叠技术

    网工知识角|简单了解Cisco PVST协议

    网工知识角|MPLS LDP简介

    网工知识角|GLBP网关负载均衡协议原理

    网工知识角|Cisco VTP解析

    网工知识角|DLDP技术简述

    网工技术分享|Cisco策略路由PBR详解

    网工技术分享|Cisco CEF浅析

    657bb87a7c453cfff825b28a662721dc.gif

    CCIE备考交流QQ群:134074975

    思科华为免费公开课QQ群:134403299

    每日打卡一个技术点,关注IE-LAB哔哩哔哩:370947524

    每日下午4点准时直播,关注IE-LAB抖音:135654500 

    IE-LAB官网:http://www.ie-lab.cn

    分享给更多网工同伴一起进步

    a78bb4b68a512c3ef4adde92a2791da8.png关注本订阅号,点个““”在看

    展开全文
  • 摘 要:网络功能虚拟化(NFV)采用软件转发技术实现,其网络转发性能受到各类运营商关注。重点分析了NFV技术中影响转发性能的关键因素,讨论了多项开源转发性能优化技术实现方法,提出了NFV中性能优化整体解决方案,...
  • 虚拟化技术

    2020-12-23 00:11:48
    续第三章虚拟化技术 3.1.4虚拟化技术与云计算 虚拟化是一种将功能与硬件分离的技术,而云则建立在这种分离技术之上。由于两者的核心理念都是从抽象资源中创建可用的环境,所以很容易被混为一谈。单纯地从基础架构即...

    续第三章虚拟化技术

    3.1.4虚拟化技术与云计算
    虚拟化是一种将功能与硬件分离的技术,而云则建立在这种分离技术之上。由于两者的核心理念都是从抽象资源中创建可用的环境,所以很容易被混为一谈。单纯地从基础架构即服务(IaaS)的角度来理解二者的区别最为简单。稳定的操作系统(如Linux)是云计算的基础。它可帮助用户实现公共、私有和混合环境之间的独立性。如果您已经设置好相应的内部网和/或互联网访问权限,则可通过虚拟化来创建云。借助一个名为 “Hypervisor”(虚拟机监控程序)的软件,可以监控物理硬件,并对机器中各项资源进行抽象。这些资源可以是原始处理能力、存储或基于云的应用,这些应用包含部署所需的所有运行时代码和资源。如果就此止步,那么您实施的就是虚拟化,而不是云计算。只有当虚拟资源被分配至中央池中,才能被称为“云”;这些云还需通过管理和自动化软件进行编排,才能被视为“云计算”。云具备以下额外优势:自助服务访问权限、自动化基础架构扩展和动态资源池——这些是它与传统虚拟化的最大区别。具体比较虚拟化的主要功能是把单个资源抽象成多个给用户使用,而云计算则是帮助不同部门(通过私有云)或公司(通过公有云)访问一个自动置备的资源池。虚拟化 借助虚拟化技术,用户能以单个物理硬件系统为基础创建多个模拟环境或专用资源。名为“虚拟机监控程序”的软件可直接连接到硬件,从而将一个系统划分为不同的、单独安全环境,即虚拟机(VM)。虚拟机监控程序能够将计算机资源与硬件分离并适当分配资源,而虚拟机则依赖这些功能运行。云计算 云计算则由多种规则和方法组合而成,可以跨任何网络向用户按需提供计算、网络和存储基础架构资源、服务、平台和应用。这些基础架构资源、服务和应用来源于云。 简单来讲,云就是一系列管理及自动化软件编排而成的虚拟资源池,旨在帮助用户通过支持自动扩展和动态资源分配的自助服务门户,按需对这些资源进行访问。如何从虚拟化转换成云计算?如果已经有虚拟基础架构,您可以将虚拟资源集中在一起,使用管理和自动化软件对其进行编排,然后为用户创建自助服务门户,以此来创建云服务。但是,如果您受到供应商的企业许可协议的约束,则可能会限制您投资云、容器和自动化系统等现代技术,那么实现从虚拟化向云计算的转换就不是那么简单了。在这里插入图片描述
    3.2虚拟化技术原理
    CPU虚拟化
    一个KVM(kernel-based virtual machine)虚拟机在宿主机上就是一个 qemu-kvm进程,与其他Linux进程一样被调用。 虚拟机的每个虚拟CPU则对应 qemu-kvm进程中的一个进程。 因此,虚拟CPU可以超过物理CPU的数量,叫CPU超配。

    内存虚拟化
    KVM通过内存虚拟化共享物理系统内存,动态分配给虚拟机。

    image

    为了在一台机器上运行多个虚拟机,KVM需要实现VA(虚拟内存) --> PA(物理内存) --> MA(机器内存)的转换,其中虚拟机OS控制VA->PA的转换,KVM负责PA->MA的映射。

    存储虚拟化
    KVM的虚拟化通过存储池(Storage Pool)和卷(Volume)实现。 存储池是宿主机可见的一片存储空间,,可以分为多种类型。 卷是存储池的一块空间,卷在虚拟机眼中就是一块硬盘。 不同类型的存储池:

    目录类型
    文件目录是最常见的存储池。 目录是一个存储池,默认是 /var/lib/libvirt/images/ 目录里的一个文件就是一个卷。

    使用文件做卷的优点:

    存储方便

    移植性好

    可复制

    可远程访问

    KVM支持多种卷格式:

    raw: 默认格式,镜像什么格式,卷就是什么格式

    qcow2: cow即写时复制(copy on write),节省空间,支持AES加密。

    vmdk:是VMWare 的虚拟磁盘格式,VM虚拟机可以直接在KVM上运行

    vdi: 是VirtualBox的虚拟磁盘格式

    逻辑卷管理(Logical Volume Manager)类型
    宿主机上的VG(Volume Group)中的LV(Logical Volume)作为虚拟磁盘分配给虚拟机使用,只能作为数据盘,不能作为启动盘,因为它没有MBR引导记录。 这种情形,主机的VG就是存储池,LV就是卷。

    其他类型
    KVM还支持 iSCSI, Ceph等多种类型的存储池。

    网络虚拟化
    基本概念
    假设宿主机有1块物理网卡en0, 运行着一个虚拟机VM1。那问题是如何让VM1访问外网呢? a):将物理网卡直接分配给虚拟机,但这样会导致宿主机和其他的虚拟机没有网络连接了。 b):给虚拟机分配一个虚拟网卡vnet0, 通过Linux Bridge br0 将 en0和vnet0连接起来。这个是实际采用的方案。

    Linux Bridge可以看做是物理接口和虚拟接口的转发器。

    如果添加虚拟机VM2,自然也给它分配虚拟网卡vet0, 这两块虚拟网卡都通过 br0 和en0通信,并且虚拟机之前是可以直接通信的。因此br0就充当了两台虚拟机的出口网关。

    VLAN
    没有VLAN之前,连在同一交换机上的主机共享广播域,独占冲突域,相互之间可以直接通信。 VLAN 能够将一个交换机的端口划分为若干个组, 使得连接在同一组中端口的主机位于同一逻辑网络中,不同VLAN间通信需要经过三层路由。

    VLAN是二层上的隔离,隔离广播指的是二层以太网广播帧,和三层的IP广播报文区别开来。

    VLAN用VLAN ID 唯一标示组,范围是 [1, 4096]。 支持VLAN的交换机因而具有两种端口:access端口和trunk端口。 access口隶属某一个组,只能把access口划分给一个VLAN组,没有显式指定,默认在0号组。 trunk口允许不同的VLAN帧通过,通常是连接两个交换机的端口模式。

    image

    eth0是宿主机的物理网卡,eth0.10是与它连接的子设备。

    eth0.10就是VLAN设备,vlan id 是10。

    eth0.10挂载在brvlan10的Linux Bridge上, 虚拟机VM1的虚拟网卡vnet0也挂载在 brvlan10上。

    如此一来,vnet0, brvlan10 和 eth0.10 都接在VLAN10 的Access口上。而eth0充当trunk口。

    如果再增加一个VLAN2

    image

    那么VM2的三个虚拟接口都是接在VLAN 20 上的。对于新创建的虚拟机,只要为它创建一个VLAN组,并将其虚拟网卡放到这个组中,就能共享宿主机的物理网卡了。还有,一个物理网卡可以为多个虚拟网卡服务,而一个虚拟网卡则只能对应于一块物理网卡。即一对多关系。

    Linux Bridge + VLAN = 虚拟交换机
    对LVM的网络虚拟化总结:

    物理交换机存在多个VLAN, 每个VLAN拥有多个端口。

    同一VLAN的主机可以互相通信,不同VLAN端口之间相互隔离。因此交换机包含两层功能:交换和隔离。

    Linux的VLAN设备实现的是隔离,但没有交换功能。

    一个VLAN母设备(如eth0)不能拥有两个相同VLAN id的子设备。

    Linux Bridge专门实现交换功能。

    将同一VLAN的子设备都挂载到一个Bridge上,设备(也就是两台虚拟机)之间可以交换数据。

    什么是虚拟化?云计算的核心技术之一就是虚拟化技术。所谓虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。虚拟化的核心软件VMM,是一种运行在物理服务器和操作系统之间的中间层软件。VMM是一种在虚拟环境中的“元”操作系统。他们可以访问服务器上包括CPU、内存、磁盘、网卡在内的所有物理设备。VMM不但协调着这些硬件资源的访问,也同时在各个虚拟机之间施加防护。当服务器启动并执行VMM时,它会加载所有虚拟机客户端的操作系统同时会分配给每一台虚拟机适量的内存,CPU,网络和磁盘。虚拟化方式虚拟化技术有很多实现方式,比如根据虚拟化的程度和级别,有软件虚拟化和硬件虚拟化,全虚拟化和半虚拟化。软件虚拟化:顾名思义,就是采用纯软件的方法在在现有的物理平台上实现物理平台访问的截获和模拟,该物理平台往往不支持硬件虚拟化。硬件虚拟化:简单来说,就是物理平台本身提供了对特殊指令的截获和重定向的硬件支持,新的硬件会提供额外的资源来帮助软件实现对关键硬件资源的虚拟化,从而提升性能。全虚拟化:完全虚拟化技术又叫硬件辅助虚拟化技术,最初所使用的虚拟化技术就是全虚拟化(Full Virtualization)技术,它在虚拟机(VM)和硬件之间加了一个软件层Hypervisor,或者叫做虚拟机管理程序或虚拟机监视器(VMM)。半虚拟化:半虚拟化技术是后来才出现的技术,也叫做准虚拟化技术,现在比较热门,它就是在全虚拟化的基础上,把客户操作系统进行了修改,增加了一个专门的API,这个API可以将客户操作系统发出的指令进行最优化,即不需要VMM耗费一定的资源进行翻译操作。
    3.2.1虚拟机技术原理
    虚拟机其实就是一款模拟电脑硬件的软件。比如说你的电脑,在没有装windows系统或者其他操作系统之前,它本身是一个由硬件组装的电脑,一般称为裸机。而虚拟机就是模拟电脑硬件的一款软件。记住,虚拟机是一款软件。你装了虚拟机之后可以相当于你多了一台裸机。然后再在虚拟机里装操作系统,就相当于多了一台电脑。注:简洁点,虚拟机的原理就是模拟硬件的。

    1、虚拟机(英文全称:Virtual Machine)是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,目前流行的虚拟机软件有VMware(VMWare ACE)、Virtual Box和Virtual PC,它们都能在Windows系统上虚拟出多个计算机,每个虚拟计算机可以独立运行,可以安装各种软件与应用等。  2、虚拟机在现实中的作用还是相当大的,比如最简单我们电脑中没有光驱,如果要安装系统就可以使用虚拟机来安装系统,虚拟机内部拥有虚拟光驱,支持直接打开系统镜像文件安装系统,另外虚拟机技术在游戏爱好者朋友眼中也相当实用,比如一般一台电脑很多游戏不支持同时多开,但我们可以在电脑中多创建几个虚拟机,那么在虚拟机系统中即可单独再运行程序了,这样即可实现一台电脑同时多开同一游戏了。  3、其实虚拟机在企业中应用非常广,由于服务器通常配置很高,因为很多服务器网络商为了满足中小站长需求,通常将一台服务器划分出多个虚拟机服务器,这样每个网站即可分配独立服务器资源一部分,并且互相不影响且可以配独立IP地址,大大解决了中小企业使用单独服务器费用过高的问题,目前购买的VPS服务器则均为采用该技术,做过网站的朋友初期用到的虚拟空间也是该原理。
    3.2.2CPU虚拟化原理
    cpu的虚拟化技术:CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率;虚拟化技术与多任务以及超线程技术是完全不同的。多任务是指在一个操作系统中多个程序同时并行运行,而在虚拟化技术中,则可以同时运行多个操作系统,而且每一个操作系统中都有多个程序运行,每一个操作系统都运行在一个虚拟的CPU或者是虚拟主机上;而超线程技术只是单CPU模拟双CPU来平衡程序运行性能,这两个模拟出来的CPU是不能分离的,只能协同工作;虚拟化技术也与目前VMware Workstation等同样能达到虚拟效果的软件不同,是一个巨大的技术进步,具体表现在减少软件虚拟机相关开销和支持更广泛的操作系统方面;纯软件虚拟化解决方案存在很多限制。“客户”操作系统很多情况下是通过VMM(Virtual Machine Monitor,虚拟机监视器)来与硬件进行通信,由VMM来决定其对系统上所有虚拟机的访问。(注意,大多数处理器和内存访问独立于VMM,只在发生特定事件时才会涉及VMM,如页面错误。)在纯软件虚拟化解决方案中,VMM在软件套件中的位置是传统意义上操作系统所处的位置,而操作系统的位置是传统意义上应用程序所处的位置。这一额外的通信层需要进行二进制转换,以通过提供到物理资源(如处理器、内存、存储、显卡和网卡等)的接口,模拟硬件环境。这种转换必然会增加系统的复杂性。此外,客户操作系统的支持受到虚拟机环境的能力限制,这会阻碍特定技术的部署,如64位客户操作系统。在纯软件解决方案中,软件堆栈增加的复杂性意味着,这些环境难于管理,因而会加大确保系统可靠性和安全性的困难;而CPU的虚拟化技术是一种硬件方案,支持虚拟技术的CPU带有特别优化过的指令集来控制虚拟过程,通过这些指令集,VMM会很容易提高性能,相比软件的虚拟实现方式会很大程度上提高性能。虚拟化技术可提供基于芯片的功能,借助兼容VMM软件能够改进纯软件解决方案。由于虚拟化硬件可提供全新的架构,支持操作系统直接在上面运行,从而无需进行二进制转换,减少了相关的性能开销,极大简化了VMM设计,进而使VMM能够按通用标准进行编写,性能更加强大。另外,在纯软件VMM中,目前缺少对64位客户操作系统的支持,而随着64位处理器的不断普及,这一严重缺点也日益突出。而CPU的虚拟化技术除支持广泛的传统操作系统之外,还支持64位客户操作系统;两大CPU巨头Intel和AMD都想方设法在虚拟化领域中占得先机,但是AMD的虚拟化技术在时间上要比Intel落后几个月。Intel自2005年末开始便在其处理器产品线中推广应用Intel Virtualization Technology(Intel VT)虚拟化技术。目前,Intel已经发布了具有Intel VT虚拟化技术的一系列处理器产品,包括桌面平台的Pentium 4 6X2系列、Pentium D 9X0系列和Pentium EE 9XX系列。
    事实上,不同类型的虚拟化技术是从不同的地方开始引导虚拟机系统的:

    从模拟的 BIOS 开始引导的,支持 MBR、EFI、PXE 等启动方式,如 QEMU、VMWare;
    从内核开始引导的,虚拟机镜像内不包含内核,如 KVM、Xen;
    从 init 进程开始引导的,虚拟机是一个与主机共享内核的容器,会按照操作系统的引导过程启动各种系统服务,如 LXC、OpenVZ;
    只运行一个特定的应用程序或服务的,也是基于容器,如 Docker。
    /dev/kvm提供的操作包括:
    • 创建一个新的虚拟机
    • 向一个虚拟机中分配内存
    • 读写虚拟cpu寄存器
    • 向一个虚拟cpu中注入中断
    • 运行一个虚拟cpu
    我们在前面的文章中提到了虚拟化技术的大致分类情况,即分为全虚拟化、半虚拟化和硬件辅助虚拟化3大类。而我们虚拟化技术最主要的虚拟主体就是我们的硬件CPU、内存和IO,那么我们的CPU在全虚拟化模式下如何工作,在半虚拟化下如何工作,在硬件辅助虚拟化模式下如何工作?或着说细分下来,我们又可以分为:

    CPU的全虚拟化技术、半虚拟化技术和硬件辅助虚拟化技术,
    内存的全虚拟化技术、半虚拟化技术和硬件辅助虚拟化技术
    IO设备的全虚拟化技术、半虚拟化技术和硬件辅助虚拟化技术。
    本次我们就来说说CPU的全虚拟化技术、半虚拟化技术和硬件辅助虚拟化技术。

    不支持硬件辅助虚拟化技术的X86架构下的CPU有4个特权级(ring0~ring3),操作系统是处于最高级别的ring0,应用程序处于最低级别的ring3。

    3.2.3内存虚拟化原理
    虚拟机管理程序 (HV) 通过虚拟真实的物理内存, 以便在虚拟机中运行的未经修改的操作系统 (如 linux 或 android),客户操作系统可以管理自己的连续物理内存的视图。虚拟机管理程序使用虚拟处理器标识符 (VPID) 和扩展页面表 (EPT) 来把客户物理地址转换为实际主机物理地址。虚拟机管理程序启用了EPT和 VPID 硬件虚拟化功能, 为操作系统和客户系统建立了EPT页表, 并向其他应用程序提供了EPT页表操作接口。从虚拟机管理程序的角度来看, 需要考虑以下几种内存空间,有:主机物理地址 (Host Physical Address): 本地主机物理地址空间,主机虚拟地址 (Host Virtual Address): 基于MMU机制的本地主机虚拟地址空间。我们使用页面表管理在HPA和HVA空间之间进行映射。从虚拟机上运行的客户操作系统来看, 有:客户物理地址 (Guest Physical Address): 虚拟机的客户操作系统的物理地址空间。在GPA到HPA之间的映射通常需要基于类似MMU的硬件模块 (例如X86中的EPT), 同时与页面表相关联客户操作系统虚拟地址 (Guest Virtual Address): 基于VMMU机制的虚拟机中客户操作系统的虚拟地址空间通常在这样的架构下,内存地址访问有四层映射:GVA - GPA - HVA - HPA GVA - GPA 的映射由客户操作系统来负责,而 HVA - HPA 由微内核虚拟化操作系统来负责维护。于是在虚拟化系统中我们需要一种机制,来维护 GPA - HVA 的映射。常用的实现有 SPT(Shadow Page Table) 和 EPT/NPT (Intel) ,前者通过软件维护影子页表,后者通过硬件特性实现二级映射。 本文说明虚拟化系统的内存管理基础结构, 以及它如何在虚拟化系统内处理不同的内存空间:虚拟机管理程序如何管理本地主机内存 (HPA/HVA)虚拟机管理程序如何管理客户操作系统内存 (HPA/GPA)虚拟机管理程序如何管理两个不同客户操作系统内存(HPA/GPA) 虚拟化物理内存管理 在虚拟化系中, 虚拟机最先初始化MMU页表以管理所有物理内存, 然后切换到新的MMU页表。在平台初始化阶段初始化MMU页表后, 就不会对MMU页表进行更新,因为这牵涉到客户操作系统内存和交互区域,系统启动时间优化等问题,因此MMU在平台初始化阶段固定对系统稳定性有一定的影响。虚拟化物理内存分布 无可非议虚拟机管理程序必须具备系统内存管理功能。通常情况下, 系统启动引导程序 (例如Intel的EFI) 将系统物理内存布局表传递给虚拟机管理程序,虚拟机管理程序基于此表使用分级页表来执行内存管理工作。如下图所示,此表包含系统平台的原始内存布局。虚拟化内存初始化 虚拟机管理程序在分页模式下运行。系统启动引导处理器 (BSP) 获取系统平台内存布局表后, BSP将在此基础上创建其MMU页面表。应用处理器 (AP) 接收 IPI CPU启动中断后, 它将使用由BSP创建的 MMU页表,并启用SMEP。SMEP(Supervisor Mode Execution Prevention),在现代intel处理器上,当设置了CR4存器的控制位时,会保护特权进程(比如在内核态的程序)不能在不含supervisor标志(对于ARM处理器,就是PXN标志)的内存区域执行代码。(直白地说就是内核程序不能跳转到用户态执行代码)。 虚拟机管理程序可以访问所有系统内存,并有自己的内存,为其代码/数据的 write-back 缓存,使用最小内存页将虚拟地址空间映射到物理地址空间。如果更新了页面的内存类型或访问权限, 或者删除了某些虚拟地址空间, 则会导致相应页面的拆分。虚拟机管理程序仍将继续使用最小内存页将虚拟地址空间映射到物理地址空间。内存分页池功能 内存分页池功能提供了对多种4kb 页面大小内存块的动态管理, 虚拟机管理程序通常使用这些内存块来存储内部数据。通过这些功能, 虚拟机管理程序可以分配和释放相应的内存页面。虚拟机管理程序内存虚拟化 虚拟机管理程序为每个客户操作系统提供了一个连续的物理内存区域。它还保证每个客户操作系统互相隔离不能访问彼此程序中的代码和内部数据, 并且每个客户操作系统在未授权的情况下不能访问虚拟机的代码和内部数据。虚拟机管理程序应该支持以下功能:支持EPT和VPID硬件虚拟化功能,为每个客户操作系统建立EPT页表,提供EPT页表操作服务,为每个客户操作系统提供虚拟化的MTRR机制,提供VPID操作服务,为GPA和HPA之间的地址空间映射提供服务,提供虚拟机管理程序和每个客户操作系统之间的数据传输服务。虚拟化内存功能检查 在虚拟机管理程序中, 内存虚拟化提供 EPT/VPID功能检查服务和支持EPT大型页面检查服务。不同地址空间的数据传输 在虚拟化系统中, 虚拟机管理程序、不同客户操作系统中使用不同的内存空间来实现各自的隔离。在这些内存空间之间, 有不同类型的数据传输, 客户操作系统可能会使用超调用来请求虚拟机管理程序提供数据传输服务。访问客户操作系统内存地址GPA 当虚拟机管理程序需要访问GPA来进行数据传输时, 来自客户操作系统的调用方必须确保此GPA内存地址范围是连续的。但对于虚拟机管理程序中的HPA主机物理内存地址, 它可能是不连续的 (特别是对于 巨型页表分配机制下的用户操作系统)。例如, 4Mb的GPA地址范围可能映射到2个不同的2Mb巨型主机物理页面。虚拟机管理程序应该通过基于其HPA的EPT页面滑动来处理这种数据传输。访问客户操作系统内存地址GVA 当虚拟机管理程序需要访问GVA内存地址数据进行数据传输时, GPA和HPA地址可能都是不连续的。虚拟机管理程序最好监视这种数据传输, 并通过基于其GPA和HPA 内存页表相应滑动来处理它。内存扩展页表的操作 虚拟机管理程序使用最小内存页表将客户操作系统的物理地址 (GPA) 映射到主机物理地址 (HPA) 。 如果更新了页面的内存类型或访问权限或删除了某些 GPA 空间, 则会导致相应的EPT页表被拆分。虚拟机管理程序仍应继续使用最小的EPT页表将GPA空间映射到HPA空间。 虚拟机管理程序提供EPT客户操作系统物理内存增加、删除、EPT页表重新分配、以及内存无效服务。
    3.3常见的虚拟化技术解决方案
    OpenStack
    OpenStack是一个开源的云计算管理平台项目,OpenStack也是云计算技术,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。
    OpenStack是一个旨在为公共及私有云的建设与管理提供软件的开源项目。它的社区拥有超过130家企业及1350位开发者,这些机构与个人都将OpenStack作为基础设施即服务(IaaS)资源的通用前端。OpenStack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。本文希望通过提供必要的指导信息,帮助大家利用OpenStack前端来设置及管理自己的公共云或私有云。
    OpenStack云计算平台,帮助服务商和企业内部实现类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure as a Service, IaaS)。OpenStack 包含两个主要模块:Nova 和 Swift,前者是 NASA 开发的虚拟服务器部署和业务计算模块;后者是 Rackspace开发的分布式云存储模块,两者可以一起用,也可以分开单独用。OpenStack除了有 Rackspace 和 NASA 的大力支持外,还有包括 Dell、Citrix、 Cisco、 Canonical等重量级公司的贡献和支持,发展速度非常快,有取代另一个业界领先开源云平台 Eucalyptus 的态势。
    KVM
    KVM代表着键盘(Keyboard)、显示器(Video)和鼠标(Mouse),即利用一组键盘、显示器和鼠标实现对多台设备的控制,在远程调度监控方面发挥着重要作用。KVM技术可以向远程终端发送调度信息网中的各项数据资料,为下一级调度机构提供方便,这样即便下级调度机构没有建立调度数据网,也能够实现信息的共享。
    多计算机切换器(KVM)以多主机切换技术为依据,借助一组键盘、鼠标和显示器完成多台服务器之间的切换,进而节省空间,降低成本,使得管理更为简易方便,以提升工作效率。该技术具有很多优点,应用十分广泛。首先,在整个机房管理中,改变了传统的一对一的控制方式,而采用了一对多的管理方式,有利于节省空间、提高工作效率;其次,主机系统的安全性能得到了很大提升,而且具备了长距离的传输能力,在与远程用户相连接时,安全性能得到良好的保证;在服务器较多的情况下,通过数字交换机与其他服务器相连,并能与远程相连,可同时对本地和远程进行控制。在一些大型系统的解决方案中,可使用具有模拟交换机矩阵功能的大型模块系统,能够满足终端用户同时对上百台甚至更多服务器的访问,进而实现从中心点通过KVM系统对各地的服务器进行有效控制。此外,该技术也可以在家庭中用,为普通用户提供了很多方便。
    Hyper-V
    Hyper-V是微软的一款虚拟化产品,是微软第一个采用类似Vmware ESXi和Citrix Xen的基于hypervisor的技术。这也意味着微软会更加直接地与市场先行者VMware展开竞争,但竞争的方式会有所不同。
    Hyper-V是微软提出的一种系统管理程序虚拟化技术,能够实现桌面虚拟化 [1] 。Hyper-V最初预定在2008年第一季度,与Windows Server 2008同时发布。Hyper-V Server 2012完成RTM版发布。
    VMware
    VMWare (Virtual Machine ware)是一bai个“虚拟PC”软件公司.它的产du品可zhi以使你在一台机器上同时运行dao二zhuan个或更多Windows、DOS、LINUX系统。shu与“多启动”系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。VMWare是真正“同时”运行,多个操作系统在主系统的平台上,就象标准Windows应用程序那样切换。而且每个操作系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。安装在VMware操作系统性能上比直接安装在硬盘上的系统低不少,因此,比较适合学习和测试。
    Xen
    Xen采用ICA协议 [1] ,通过一种叫做准虚拟化的技术获得高性能,甚至在某些与传统虚拟技术极度不友好的架构上(x86),Xen也有上佳的表现。与那些传统通过软件模拟实现硬件的虚拟机不同,在Intel VT-X支持下3.0版本之前的Xen需要系统的来宾权限,用来和Xen API进行连接。这种技术已经可以运用在NetBSD, GNU/Linux, FreeBSD和Plan 9系统上。Sun微系统公司也正在积极地将Solaris移植到Xen平台之上。
    Xen虚拟机可以在不停止的情况下在多个物理主机之间实时迁移。在操作过程中,虚拟机在没有停止工作的情况下内存被反复的复制到目标机器。虚拟机在最终目的地开始执行之前,会有一次60-300毫秒的非常短暂的暂停以执行最终的同步化,给人无缝迁移的感觉。类似的技术被用来暂停一台正在运行的虚拟机到磁盘,并切换到另外一台,第一台虚拟机在以后可以恢复。
    XEN 是一个基于X86架构、发展最快、性能最稳定、占用资源最少的开源虚拟化技术。Xen可以在一套物理硬件上安全的执行多个虚拟机,与 Linux 是一个完美的开源组合,Novell SUSE Linux Enterprise Server 最先采用了XEN虚拟技术。它特别适用于服务器应用整合,可有效节省运营成本,提高设备利用率,最大化利用数据中心的IT基础架构。
    XEN 是英国剑桥大学计算机实验室开发的一个虚拟化开源项目,XEN 可以在一套物理硬件上安全的执行多个虚拟机,它和操作平台结合的极为密切,占用的资源最少。编写文档时稳定版本为XEN3.0。支持万贯虚拟化和超虚拟化。以高性能、占用资源少著称,赢得了IBM、AMD、HP、Red Hat和Novell等众多世界级软硬件厂商的高度认可和大力支持,已被国内外众多企事业用户用来搭建高性能的虚拟化平台。
    IBM经常在其主机和服务器上使用虚拟机来尽可能发挥其性能,并类似chroot监禁那样将程序置于隔离的虚拟OS中以增强安全性。除此之外,它还能使不同和不兼容的OS运行在同一台计算机上。Xen对虚拟机活跃迁移的支持允许工荷平衡和避免停时。
    Docker

    Docker的思想来自于集装箱,集装箱解决了什么问题?在一艘大船上,可以把货物规整的摆放起来。并且各种各样的货物被集装箱标准化了,集装箱和集装箱之间不会互相影响。那么我就不需要专门运送水果的船和专门运送化学品的船了。只要这些货物在集装箱里封装的好好的,那我就可以用一艘大船把他们都运走。docker就是类似的理念。现在都流行云计算了,云计算就好比大货轮。docker就是集装箱。1.不同的应用程序可能会有不同的应用环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的软件都安装在一个服务器上就要调试很久,而且很麻烦,还会造成一些冲突。比如IIS和Apache访问端口冲突。这个时候你就要隔离.net开发的网站和php开发的网站。常规来讲,我们可以在服务器上创建不同的虚拟机在不同的虚拟机上放置不同的应用,但是虚拟机开销比较高。docker可以实现虚拟机隔离应用环境的功能,并且开销比虚拟机小,小就意味着省钱了。2.你开发软件的时候用的是Ubuntu,但是运维管理的都是centos,运维在把你的软件从开发环境转移到生产环境的时候就会遇到一些Ubuntu转centos的问题,比如:有个特殊版本的数据库,只有Ubuntu支持,centos不支持,在转移的过程当中运维就得想办法解决这样的问题。这时候要是有docker你就可以把开发环境直接封装转移给运维,运维直接部署你给他的docker就可以了。而且部署速度快。3.在服务器负载方面,如果你单独开一个虚拟机,那么虚拟机会占用空闲内存的,docker部署的话,这些内存就会利用起来。

    展开全文
  • 那本本节就来说一说常见的虚拟化技术! 概述 上节提到,以笔者为例,平时在PC上使用比较多的虚拟化是Vmwear(一个桌面软件,当然偶尔也会使用Virtual Box,后者是一个开源软件功能依旧很强大),这类软件可以在...
  • 概述: KiwiVM是用于移动应用程序的虚拟化加密软件。 它基于Clang编译器扩展,并且在编译项目时虚拟化指定的函数。借助自定义CPU指令的功能,一旦对代码进行加密并且从未解密,攻击者将无法...功能虚拟化:针对iO...
  • 网络虚拟化互通技术

    2021-01-19 19:38:14
    工业界和学术界提出了许多新的网络虚拟化技术来满足云计算环境对网络服务的需求。网络虚拟化技术的多样化使得云环境面临多种网络虚拟化技术共存的状况。然而,网络虚拟化技术间的差异会导致网络资源被分割成相互间不...
  • 虚拟化现在已经成为主流技术,对于大企业来说。大玩家包括EMC、IBM、... KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和...
  • 网络功能虚拟化NFV

    万次阅读 多人点赞 2019-05-07 21:21:07
    网络功能虚拟化(NFV)技术是为了解决现有专用通信设备的不足而产生的。通信行业为了追求设备的高可靠性、高性能,往往采用软件和硬件结合的专用设备来构建网络。比如专用的路由器、CDN、DPI、防火墙等设备,均为...
  • Intel虚拟化技术

    2015-05-08 09:23:54
    Intel虚拟化技术其实是一系列硬件技术的集合,虚拟机监控器软件通过选择利用各项技术,从而提高虚拟化软件的性能或者实现各种不同的功能。Intel虚拟化技术其实可以大致分为三类:第一类是处理器相关的,称为VT-x,是...
  • KVM 虚拟化技术 理论详解一.虚拟化技术1.常用的虚拟化软件2.虚拟化技术的发展3.类型4.虚拟化技术分类5.虚拟化的优势6.虚拟化的劣势二.KVM1.概述2.KVM架构3.KVM支持功能列表4.KVM 工具4.工作流程三.搭建KVM虚拟化平台...
  • 虚拟化的环境中,在主机内部,各虚拟机通过模拟物理功能的虚拟交换机vSwitch相互通信,虚拟机和外界通信则是通过虚拟机交换机捆绑的上联物理网卡来进行。这种纯软件实现的交换机功能的控制平面位于主机上,同时主机...
  • NFV网络功能虚拟化

    千次阅读 2019-08-30 18:07:56
    软件来安装、控制、操作那些运行在通用硬件上的网络功能,融合了云和虚拟化技术,使得新一代网络业务拥有更好的伸缩性和自动化能力。 下图是ETSI NFV标准架构 NFVI(NFV Infrastructure) 包含了虚拟化层...
  • 本文讲的是基于虚拟化技术软件开发构成云应用根本,【IT168 资讯】计算技术的发展,体现出计算普适化与网络泛在化的特点。云计算模式,通过泛在的高速网络,将轻小的客户端系统与高性能服务器结合起来,为用户提供...
  • 虚拟化现在已经成为主流技术,对于大企业... 1、 开源虚拟机 KVM KVM (全称是 Kernel-based Virtual Machine) 是 Linux 下 x86 硬件平台上的全功能虚拟化解决方案,包含一个可加载的内核模块 kvm.ko 提供和虚拟化核...
  • Intel 虚拟化技术的优势...有了虚拟化技术,同一部电脑就可以有多个「虛拟」系统的分身功能。Intel 虚拟化技術全面性地增强了 Intel 的各个平台,让以软件为基础的解決方案在稳定性和执行效能方面,都能够更上一层楼。
  • 服务器虚拟化技术

    千次阅读 2016-10-15 13:32:16
    注:实现服务器虚拟化的方法很多,如使用VMware、XenServer等一些软件都可以实现。笔者采用的是XenServer 7.0实现。具体方法介绍:1.引言 1.1 XenServer介绍XenServer 是思杰公司(Citrix) 推出的一款服务器虚拟化...
  • 随着智能终端和多种业务的蓬勃发展,未来无线网络将呈现密集...早期针对网络虚拟化技术的研究主要集中在核心网侧,如虚拟局域网(VLAN)、软件定义网络(SDN)、网络功能虚拟化(NFV)等。虚拟化技术在核心网络侧已经得...
  • 在网络功能虚拟化场景下,每个网络功能都以软件的形式来实现。但传统的串行网络功能组链方式将带来极大的性能损耗。而如今针对网络功能进行加速的工作,主要集中在优化该串行链的每个组成成分上。提出了一个高性能的...
  • 网络功能虚拟化(NFV)来了

    千次阅读 2018-10-27 09:06:40
    随着数据中心技术的发展,软件定义网络(SDN)和网络功能虚拟化(NFV)已经落后了。软件定义网络(SDN)和网络功能虚拟化(NFV)的行业潜力将受到挑战和影响。 在被绑定到专有的、昂贵的硬件和软件包多年之后,很多企业...
  • NFV网络功能虚拟化基本原理及应用情况,NFV将传统通信网络设备功能软件化,通过特定的虚拟化技术,基于IT通用的计算、存储、网络硬件设备实现电信网络功能,NFV将实现传统电信产业与IT产业的深度融合。
  • 云计算已经成为了服务器端的潮流,通过它,我们可以有效支持弹性计算、隔离兼容等一系列的需求,计算力可以像水电一样为人们所使用,而虚拟化技术正是云计算中最重要的技术。虚拟化技术一般可以被分为两类,分别是...
  • 云计算已经成为了服务器端的潮流,通过它,我们可以有效支持弹性计算、隔离兼容等一系列的需求,计算力可以像水电一样为人们所使用,而虚拟化技术正是云计算中最重要的技术。虚拟化技术一般可以被分为两类,分别是...
  • 封包的时候,是要mac地址...工作负载虚拟化 软体定义网络的认识 1、控制层和转发层的分离 集中配置数据中心网络 2、控制层集中进行转发层的网络功能和服务器的管理配置,并提供可是虚化的对外API 3、转发层能支援...
  • 虚拟化技术(中)

    2020-12-26 17:45:23
    虚拟化技术(中) 3.2虚拟技术原理 1)原理:虚拟机(Virtual Machine, VM) 是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。简单地说,虚拟机就是通过软件在宿主机上虚拟出...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,720
精华内容 688
关键字:

软件功能虚拟化技术