CN110896373A - 用于动态选择虚拟交换的资源的技术 - Google Patents

用于动态选择虚拟交换的资源的技术 Download PDF

Info

Publication number
CN110896373A
CN110896373A CN201910743738.XA CN201910743738A CN110896373A CN 110896373 A CN110896373 A CN 110896373A CN 201910743738 A CN201910743738 A CN 201910743738A CN 110896373 A CN110896373 A CN 110896373A
Authority
CN
China
Prior art keywords
network appliance
virtual switch
resources
network
acceleration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910743738.XA
Other languages
English (en)
Inventor
C.罗夫图斯
C.麦克纳马拉
J.J.布朗
P.弗勒明
T.肯特基
J.巴里
P.康诺尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN110896373A publication Critical patent/CN110896373A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3442Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup
    • H04L47/726Reserving resources in multiple paths to be used simultaneously
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/76Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
    • H04L47/762Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions triggered by the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/82Miscellaneous aspects
    • H04L47/822Collecting or measuring resource availability data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

用于动态选择虚拟交换的资源的技术包括网络电器,该网络电器被配置成识别对网络电器的处理资源的当前需求,该处理资源被配置成处理与网络电器接收到的网络数据包相关联的数据。附加地,网络电器被配置成确定网络电器的一个或多个加速资源的当前容量,并且基于当前需求和加速资源的当前容量来确定虚拟交换机操作模式,其中虚拟交换机操作模式指示要启用加速资源中的哪些。网络电器被附加地配置成将网络电器的虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作,并且根据所确定的虚拟交换机操作模式来分配网络电器的加速资源。本文中描述了其他实施例。

Description

用于动态选择虚拟交换的资源的技术
背景技术
现代计算设备已成为对于个人、商业和社交用途而言无处不在的工具。由此,许多现代计算设备能够连接到各种数据网络(包括互联网)以便以变化的速度速率在各种数据网络上传输和接收数据通信。为了便于计算设备之间的通信,数据网络典型地包括一个或多个网络计算设备(例如,计算服务器、存储服务器等),以对进入/离开网络的通信(例如,南北网络流量)以及网络中的网络计算设备之间的通信(例如,东西网络流量)进行路由(例如,经由交换机、路由器等)。这种数据网络典型地已包括复杂的大规模计算环境,诸如高性能计算(HPC)和云计算环境。传统上,这些数据网络已包括专用硬件设备(通常被称为网络电器(network appliance)),该专用硬件设备被配置成实行单个功能,诸如安全性(例如,防火墙、认证等)、网络地址转换(NAT)、负载平衡、深度数据包检测(DPI)、传输控制协议(TCP)优化、高速缓存、互联网协议(IP)管理等。
最近,网络运营商和服务供应商依靠各种网络虚拟化技术(例如,网络功能虚拟化(NFV))来提供作为虚拟服务的网络功能,该虚拟服务可以由虚拟化平台(例如,使用执行虚拟化网络功能的虚拟机(VM))在通用硬件上执行。为了实现这种网络虚拟化技术,虚拟交换机通常被采用(例如,嵌入到虚拟化软件中或嵌入在计算设备的硬件中作为其固件的部分),以允许VM通过智能地引导网络上的通信来彼此通信,诸如通过在传递数据包之前检查数据包。可以基于若干个用例的预测或最坏情况的带宽来手动配置和静态分配当前虚拟交换技术。然而,这种静态配置(例如,通过用户/运营商或管理层)可能导致显著的缺点,其包括数据包丢失(例如,在高网络负载时),计算设备从不处于“云就绪”状态,这是因为其操作典型地不是硬件不可知的,性能/功率使用率通常较差(例如,在低网络负载时),资源只能被提供给固定的最大容量(例如,基于静态分配的资源)从而使得缩放困难等。
附图说明
在本文中描述的概念是作为示例而不是作为限制在附图中图示的。为了说明的简洁和清楚,各图中图示的元件不一定按比例绘制。在认为适当的地方,附图标记已在各图当中被重复以指示对应或类似的元件。
图1是用于动态选择虚拟交换的资源的系统的至少一个实施例的简化框图,该系统包括通信地耦合到网络电器的资源计算设备;
图2是图1的系统的网络电器的环境的至少一个实施例的简化框图;
图3A和图3B是用于动态选择虚拟交换的资源的方法的至少一个实施例的简化框图,该方法可以由图1和图2的网络电器执行;
图4是图1和图2的网络电器的环境的至少一个其他实施例的简化框图;以及
图5是图示了图1和图2的网络电器的表格的至少一个实施例的简化图示,该网络电器具有在经过的时间量上用于虚拟交换的动态选择的资源。
具体实施方式
尽管本公开的概念容易受到各种修改和替换形式的影响,但是其具体实施例已作为示例在附图中示出并且将在本文中进行详细描述。然而,应当理解的是,不意图将本公开的概念限制成所公开的特定形式,而是相反地,意图要覆盖与本公开和所附权利要求一致的全部修改、等同物和替换方案。
说明书中对“一个实施例”、“实施例”、“说明性实施例”等的引用指示:所描述的实施例可以包括特定特征、结构或特性,但是每个实施例可以包括或可以不一定包括该特定特征、结构或特性。此外,这种短语不一定指代相同实施例。进一步地,当结合实施例描述特定特征、结构或特性时,所认为的是,结合其他实施例(无论是否被明确描述)来实现这种特征、结构或特性是在本领域技术人员的知识范围内的。附加地,应当领会的是,被包括在以“A、B和C中的至少一个”的形式的列表中的项可以意指(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。类似地,以“A、B或C中的至少一个”的形式列出的项可以意指(A);(B);(C);(A和B);(A和C);(B和C);或(A、B和C)。
在某些情况下,所公开的实施例可以用硬件、固件、软件或它们的任何组合来实现。所公开的实施例还可以被实现为指令,该指令由一个或多个暂时性或非暂时性机器可读(例如,计算机可读)存储介质承载,或者存储在一个或多个暂时性或非暂时性机器可读(例如,计算机可读)存储介质上,该指令可以由一个或多个处理器读取和执行。机器可读存储介质可以被体现为用于存储或传输以可由机器读取的形式存在的信息的任何存储设备、机构或其他物理结构(例如,易失性或非易失性存储器、介质光盘或其他介质设备)。
在附图中,一些结构或方法特征可以用具体的布置和/或次序示出。然而,应当领会的是,可能不要求这种具体的布置和/或次序。而是,在一些实施例中,这种特征可以用与说明性图中示出的方式和/或次序不同的方式和/或次序来布置。附加地,在特定图中包括结构或方法特征并不意味着暗示在全部实施例中都需要这种特征,并且在一些实施例中,可能不包括这种特征或者这种特征可能与其他特征进行组合。
现在参考图1,在说明性实施例中,用于动态选择虚拟交换的资源的系统100包括资源计算设备102,该资源计算设备102经由网络104通信地耦合到网络电器106。应当领会的是,虽然仅示出了单个网络电器106,但是在其他实施例中,系统100可以包括多个网络电器106。应当进一步领会的是,资源计算设备102和网络电器106可以驻留在相同数据中心或高性能计算(HPC)环境中。附加地或替换地,资源计算设备102和网络电器106可以驻留在经由一个或多个有线和/或无线互连而连接的相同网络104中。
网络电器106被配置成:接收网络数据包(例如,以太网帧、消息等),诸如可以经由网络104从资源计算设备102接收;对与接收到的网络数据包相关联的数据中的至少一部分实行某种级别的处理(例如,一个或多个处理操作);以及或是将每个接收到的网络数据包丢弃或传输到目的地(例如,基于资源计算设备102传输到相同或替换网络中的另一网络电器等)。为了实行处理操作,网络电器106可以被配置成利用虚拟化技术来提供一个或多个虚拟化网络功能(VNF)(例如,其在一个或多个虚拟机(VM)上、在一个或多个容器中执行等),以在商品硬件上执行网络服务。这种网络服务可以包括任何类型的网络服务,包括防火墙服务、网络地址转换(NAT)服务、域名系统(DNS)服务、负载平衡服务、深度数据包检测(DPI)服务、传输控制协议(TCP)优化服务、高速缓存管理服务、互联网协议(IP)地址管理服务等。
在网络功能虚拟化(NFV)架构中,VNF被配置成处理在硬件联网基础设施的顶部上的一个或多个VM中运行的具体网络功能,该基础设施传统上由专有的专用硬件执行,该专有的专用硬件诸如路由器、交换机、服务器、云计算系统等。换言之,每个VNF可以被体现为一个或多个VM,该一个或多个VM被配置成执行用以实行虚拟化任务的对应软件或指令。应当理解的是,VM是软件程序或操作系统,其不仅表现出分离的计算机的行为,而且还能够实行任务,诸如像分离的计算机那样运行应用和程序。通常被称为“客户机”的VM典型地被配置成在VM已被部署在其上的设备(通常被称为“主机”)的共享物理硬件资源上运行专用操作系统。应当领会的是,多个VM在给定时间下可以存在于单个主机内,并且多个VNF(例如,参见图4的说明性VNF 402)可以同时在网络电器106上执行。
在使用中,如下面将进一步详细描述的,网络电器106根据需要(即,动态地)将加速和卸载开启/关闭。为了这么做,网络电器106识别与在网络电器106上执行的网络流量和/或应用(例如,一个或多个连接的VNF)相关联的需求,并且取决于所识别的需求来自动选择不同的资源集(例如,基于需求的特性,诸如功率、计算、存储等),以提供虚拟交换功能。因此,网络电器106可以通过仅在需要时开启附加的加速和卸载来针对虚拟交换提供改进的性能(例如,每瓦特),这可以基于一天中的时间、当前联网负载、预测的联网负载需求等。
取决于实施例,网络电器106可以被配置成卸载对加速器的各种功能/操作,其包括但不限于数据包处理、网络地址转换(NAT)、过滤、路由、转发、加密、解密、封装、解封装、隧穿、数据包解析、APR响应、数据包验证、数据包完整性验证、认证、校验和计算、校验和验证、数据包重新排序、DDOS检测、DDOS缓解、访问控制、连接设置、连接拆除、TCP终止、报头拆分、数据包副本检测、数据包副本的移除、转发表更新、统计数据生成、统计收集、遥测生成、遥测收集、遥测传输、简单网络管理协议(SNMP)、NUMA节点确定、核确定、VM/容器确定、hairpin确定、hairpin交换。
网络电器106可以被体现为能够实行本文中描述的功能的任何类型的计算或计算设备,包括但不限于服务器(例如,独立服务器、机架安装式服务器、刀片式服务器等)、交换机(例如,分解式交换机、机架安装式交换机、独立交换机、完全管理式交换机、部分管理式交换机、全双工交换机、和/或半双工通信模式启用的交换机)、滑板(sled)(例如,计算滑板、存储滑板、加速器滑板、存储器滑板等)、路由器、web电器、基于处理器的系统、和/或多处理器系统。取决于实施例,网络电器106可以被体现为分布式计算系统。在这种实施例中,网络电器106可以被体现为多于一个计算设备,其中每个计算设备被配置成汇集资源并且实行本文中描述的功能的至少一部分。
如图1中所示,说明性网络电器106包括计算引擎108、I/O子系统114、一个或多个数据存储设备116、通信电路118,并且在一些实施例中包括一个或多个外围设备122。应当领会的是,在其他实施例中,网络电器106可以包括其他或附加组件,诸如通常在典型的计算设备中找到的那些组件(例如,各种输入/输出设备和/或其他组件)。附加地,在一些实施例中,这些说明性组件中的一个或多个可以并入另一个组件或以其他方式形成另一个组件的一部分。
计算引擎108可以被体现为能够实行如本文中描述的各种计算功能的任何类型的设备或设备集合。在一些实施例中,计算引擎108可以被体现为单个设备,诸如集成电路、嵌入式系统、现场可编程阵列(FPGA)、片上系统(SOC)、专用集成电路(ASIC)、可重新配置的硬件或硬件电路、或者其他专用硬件,以便于实行本文中描述的功能。附加地,在一些实施例中,计算引擎108可以包括或可以以其他方式被体现为一个或多个处理器110(即,一个或多个中央处理单元(CPU))和存储器112。
(一个或多个)处理器110可以被体现为能够实行本文中描述的功能的任何类型的(一个或多个)处理器。例如,(一个或多个)处理器110可以被体现为一个或多个单核处理器、多核处理器、数字信号处理器(DSP)、微控制器、或者(一个或多个)其他处理器或(一个或多个)处理/控制电路。在一些实施例中,(一个或多个)处理器110可以被体现为包括或以其他方式耦合到FPGA(例如,可重新配置的电路)、ASIC、可重新配置的硬件或硬件电路、或其他专用硬件,以便于实行本文中描述的功能。
存储器112可以被体现为能够实行本文中描述的功能的任何类型的易失性或非易失性存储器或数据存储装置。应当领会的是,存储器112可以包括主存储器(即,主要存储器)和/或高速缓冲存储器(即,可以比主存储器被更快访问的存储器)。易失性存储器是需要功率来维持由介质存储的数据的状态的存储介质。易失性存储器的非限制性示例可以包括各种类型的随机存取存储器(RAM),诸如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)。
计算引擎108经由I/O子系统114通信地耦合到网络电器106的其他组件,I/O子系统114可以被体现为用以便于与处理器110、存储器112以及网络电器106的其他组件的输入/输出操作的电路和/或组件。例如,I/O子系统114可以被体现为或者以其他方式包括存储器控制器中枢、输入/输出控制中枢、集成传感器中枢、固件设备、通信链路(即,点对点链路、总线链路、电线、电缆、光导、印刷电路板迹线等)、和/或其他组件和子系统以便于输入/输出操作。在一些实施例中,I/O子系统114可以形成SOC的一部分,并且连同处理器110、存储器112以及网络电器106的其它组件一起并入单个集成电路芯片上。
一个或多个数据存储设备116可以被体现为被配置用于短期或长期的数据存储的任何类型的(一个或多个)存储设备,诸如例如存储器设备和电路、存储卡、硬盘驱动器、固态驱动器或其他数据存储设备。每个数据存储设备116可以包括存储用于数据存储设备116的数据和固件代码的系统分区。每个数据存储设备116还可以包括存储用于操作系统的数据文件和可执行文件的操作系统分区。
通信电路118可以被体现为:任何通信电路、设备或其集合,它们能够实现网络电器106与其他计算设备(诸如,资源计算设备102)之间的通信;以及任何网络通信启用设备(诸如,接入点、网络交换机/路由器等),以允许通过网络104进行通信。因此,通信电路118可以被配置成使用任何一个或多个通信技术(例如,无线或有线通信技术)和相关联的协议(例如,以太网、蓝牙®、Wi-Fi®、WiMAX、LTE、5G等)来实现这种通信。
应当领会的是,在一些实施例中,通信电路118可以包括专用电路、硬件或其组合,以实行用于实行本文中描述的功能的流水线逻辑(例如,硬件算法),这些功能包括处理网络数据包(例如,解析接收到的网络数据包、针对每个接收到的网络数据包确定目的地计算设备、将网络数据包转发到网络电器106的相应主机缓冲器的特定缓冲器队列等)、实行计算功能等。
在一些实施例中,如本文中描述的那样对通信电路118的一个或多个功能的实行可以由通信电路118的专用电路、硬件或其组合来实行,它们可以被体现为SoC或以其他方式形成网络电器106的SoC的一部分(例如,连同处理器110、存储器112和/或网络电器106的其他组件一起被并入单个集成电路芯片上)。替换地,在一些实施例中,专用电路、硬件或其组合可以被体现为网络电器106的一个或多个分立处理单元,每个分立处理单元可能能够实行本文中描述的一个或多个功能。
说明性通信电路118包括NIC 120,NIC 120在一些实施例(例如,高性能计算(HPC)环境)中也可以被称为主机结构接口(HFI)。NIC 120可以被体现为便于网络电器106与网络(例如,网络104)之间的通信访问的任何类型的固件、硬件、软件或其任何组合。例如:NIC120可以被体现为一个或多个内装板(add-in-board)、子卡、网络接口卡、控制器芯片、芯片组或者可以由网络电器106用来与另一个计算设备(例如,资源计算设备102)连接的其他设备。
在一些实施例中,NIC 120可以被体现为包括一个或多个处理器的SoC的部分,或者被包括在也包含一个或多个处理器的多芯片封装上。附加地或替换地,在一些实施例中,NIC 120可以包括NIC 120本地的一个或多个处理核(未示出)。在这种实施例中,(一个或多个)处理核可能能够实行本文中描述的一个或多个功能。在一些实施例中,NIC 120可以附加地包括本地存储器(未示出)。在这种实施例中,NIC 120的本地存储器可以在板级、套接字级、芯片级和/或其他级处被集成到网络电器106的一个或多个组件中。虽然没有说明性地示出,但是应当领会的是,NIC 120典型地包括一个或多个物理端口(例如,用于便于网络流量的入口和出口),并且在一些实施例中,包括一个或多个加速器(例如,ASIC、FPGA等)、和/或用于实行/卸载某些网络功能和/或处理功能(例如,DMA引擎)的卸载硬件组件。
一个或多个外围设备122可以包括可用于将信息输入到网络电器106中和/或从网络电器106接收信息的任何类型的设备。外围设备122可以被体现为:可用于将信息输入到网络电器106中的任何辅助设备,诸如键盘、鼠标、传声器、条形码读取器、图像扫描仪等;或者可用于输出来自网络电器106的信息的任何辅助设备,诸如显示器、扬声器、图形电路、打印机、投影仪等。应当领会的是,在一些实施例中,外围设备122中的一个或多个可以充当输入设备和输出设备两者(例如,触摸屏显示器、显示器屏幕顶部上的数字化仪等)。应当进一步领会的是,连接到网络电器106的外围设备122的类型可以取决于例如网络电器106的类型和/或预期用途。附加地或替换地,在一些实施例中,外围设备122可以包括例如用于将外部外围设备连接到网络电器106的一个或多个端口(诸如,USB端口)。
资源计算设备102可以被体现为能够实行本文中描述的功能的任何类型的计算或计算机设备,包括但不限于:智能电话、移动计算设备、平板计算机、膝上型计算机、笔记本计算机、计算机、服务器(例如,独立服务器、机架安装式服务器、刀片式服务器等)、滑板(例如,计算滑板、加速器滑板、存储滑板、存储器滑板等)、网络电器(例如,物理或虚拟的)、web电器、分布式计算系统、基于处理器的系统、和/或多处理器系统。虽然未说明性地示出,但是应当领会的是,资源计算设备102包括与说明性网络电器106的那些组件类似和/或相似的组件。由此,为了描述的清楚,在具有如下理解的情况下,在本文中不再重复相似/类似组件的图和描述,该理解为:以上关于网络电器106所提供的对应组件的描述同样适用于资源计算设备102的对应组件。当然,应当领会的是,取决于实施例,该计算设备可以包括附加和/或替换的组件。
网络104可以被体现为任何类型的有线或无线通信网络,其包括但不限于:无线局域网(WLAN)、无线个域网(WPAN)、边缘网络(例如,多址边缘计算(MEC)网络)、雾网络、蜂窝网络(例如,全球移动通信系统(GSM)、长期演进(LTE)、5G等)、电话网络、数字用户线路(DSL)网络、电缆网络、局域网(LAN)、广域网(WAN)、全球网络(例如,互联网)或其任何组合。应当领会的是,在这种实施例中,网络104可以用作集中式网络,并且在一些实施例中可以通信地耦合到另一个网络(例如,互联网)。因此,网络104可以根据需要而包括各种各样的其他虚拟和/或物理网络计算设备(例如,路由器、交换机、网络中枢、服务器、存储设备、计算设备等)以便于网络电器106与资源计算设备102之间的通信,为了保持描述的清楚,没有示出这些设备。
现在参考图2,在使用中,网络电器106在操作期间建立环境200。说明性环境200包括:网络流量入口/出口管理器208、VNF管理器210、遥测监测器212和虚拟交换机操作模式控制器214。环境200的各种组件可以被体现为硬件、固件、软件或其组合。由此,在一些实施例中,环境200的一个或多个组件可以被体现为电路或电子设备集合(例如,网络流量入口/出口管理电路208、VNF管理电路210、遥测监测电路212、虚拟交换机操作模式控制电路214等)。应当领会的是,本文中描述的如由网络流量入口/出口管理电路208、VNF管理电路210、遥测监测电路212和/或虚拟交换机操作模式控制电路214实行的一个或多个功能可以至少部分地由网络电器106的一个或多个其他组件来实行,该一个或多个其他组件诸如计算引擎108、I/O子系统114、通信电路118(例如,NIC 120)、ASIC、可编程电路(诸如FPGA)和/或网络电器106的其他组件。应当进一步领会的是,相关联的指令可以存储在存储器112、(一个或多个)数据存储设备116和/或其他数据存储位置中,这可以由处理器110中的一个和/或网络电器106的其他计算处理器来执行。
附加地,在一些实施例中,一个或多个说明性组件可以形成另一个组件的一部分,和/或一个或多个说明性组件可以彼此独立。进一步地,在一些实施例中,环境200的一个或多个组件可以被体现为虚拟化硬件组件或仿真架构,它们可以由NIC 120、计算引擎108和/或网络电器106的其他软件/硬件组件来建立和维持。应当领会的是,网络电器106可以包括其他组件、子组件、模块、子模块、逻辑、子逻辑和/或通常在计算设备中找到的设备,为了描述的清楚,没有在图2中图示它们。
在说明性环境200中,网络电器106附加地包括遥测数据202、平台配置数据204和操作模式数据206,它们中的每一个可以由网络电器106的各种组件和/或子组件来访问。进一步地,遥测数据202、平台配置数据204和操作模式数据206中的每一个可以由网络电器106的各种组件来访问。附加地,应当领会的是,在一些实施例中,存储在遥测数据202、平台配置数据204和操作模式数据206中的每一个中或以其他方式由它们中的每一个表示的数据相对于彼此可以不相互排斥。例如,在一些实施方式中,存储在遥测数据202中的数据也可以作为平台配置数据204和/或操作模式数据206中的一个或多个的一部分来存储,或者以另一替换布置来存储。由此,尽管网络电器106利用的各种数据在本文中被描述为特定的分立数据,但是在其他实施例中,这种数据可以被组合、聚合和/或以其他方式形成单个或多个数据集的部分,包括重复的拷贝。
网络流量入口/出口管理器208(其可以被体现为如上所描述的硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合)被配置成接收入站网络流量,以及对出站网络流量进行路由/传输。为了这么做,网络流量入口/出口管理器208被配置成便于去往和来自网络电器106的入站/出站网络通信(例如,网络流量、网络数据包、网络流等)。例如,网络流量入口/出口管理器208被配置成管理(例如,创建、修改、删除等)与网络电器106的物理和虚拟网络端口(即,虚拟网络接口)的连接(例如,经由通信电路118)、以及与之相关联的入口/出口缓冲器/队列。
VNF管理器210(其可以被体现为如上所描述的硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合)被配置成管理网络电器106上的VNF实例的配置和部署。为了这么做,VNF管理器210被配置成识别或以其他方式检索(例如,根据策略)要创建和配置的每个VNF实例的配置信息和操作参数。配置信息和操作参数可以包括配置VNF所必要的任何信息,包括所需的资源、网络配置信息、以及可用于配置VNF实例的任何其他信息。
例如,配置信息可以包括要分配的资源(例如,计算,存储资源等)的量。附加地,操作参数可以包括任何网络接口信息,诸如每秒的连接数量、平均吞吐量、最大吞吐量等。VNF管理器210可以被配置成使用任何标准网络管理协议,诸如简单网络管理协议(SNMP)、网络配置协议(NETCONF)等。在一些实施例中,配置信息和/或操作参数可以存储在平台配置数据204中。
遥测监测器212(其可以被体现为如上所描述的硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合)被配置成监测和收集网络电器106的特定物理和/或虚拟资源的遥测数据。为了这么做,遥测监测器212可以被配置成实行发现操作以识别和收集要监测的那些物理和/或虚拟资源(即,平台资源)的信息/能力。例如,遥测监测器212可以被配置成利用资源管理启用的平台来监测和收集资源和遥测数据,该平台诸如英特尔®资源引导器技术(RDT)技术集(例如,高速缓存分配技术(CAT)、高速缓存监测技术(CMT)、代码和数据优先级处理(CDP)、存储器带宽管理(MBM)等)。在说明性示例中,遥测监测器212可以被配置成收集平台资源遥测数据(例如,热读数、NIC队列填充水平、处理器核利用率、加速器利用率、存储器利用率等)、软件遥测数据(例如,端口/流(flow)统计、轮询成功率等)、网络流量遥测数据(例如,网络流量接收率、多个丢弃的网络数据包等)等。在一些实施例中,所收集的遥测数据可以存储在遥测数据202中。
虚拟交换机操作模式控制器214(其可以被体现为如上所描述的硬件、固件、软件、虚拟化硬件、仿真架构和/或其组合)被配置成管理网络电器106的虚拟交换机(例如,参见图4的虚拟交换机420)的操作模式。为了这么做,说明性虚拟交换机操作模式控制器214包括需求分析器216和资源选择器218。需求分析器216被配置成分析所捕获的遥测度量(诸如,所监测的遥测数据在本文中被描述为由遥测监测器212收集)以确定虚拟交换机在尝试将网络电器106保持在云就绪且功耗较低的状态中的同时应当采用哪种操作模式。因此,被配置成取决于所做出的操作来启用/禁用某些资源的资源选择器218可以基于如由需求分析器216确定的操作模式来这么做。在一些实施例中,操作模式和任何适用的资源配置信息可以存储在操作模式数据206中。
在说明性示例中,虚拟交换机操作模式控制器214(或更特别地,需求分析器216)分析所收集的遥测度量以确定网络电器106上的当前负载。因此,基于所确定的负载,需求分析器216被配置成将虚拟交换机的操作模式设置成下述各项之一:云就绪模式(例如,软件加速的)、虚拟电器模式(例如,硬件和软件加速的,其中网络流量在内部分发)、或传统回退(fallback)模式(例如,过载或固定功能模式,其中虚拟交换机不可操作并且网络电器恢复到固定功能传统硬件操作)。由此,虚拟交换机操作模式控制器214(或更特别地,资源选择器218)可以选择是否使用板载(on-board)加速来满足当前负载,同时尝试使系统保持在云就绪且功耗较少的状态中。
换言之,使用实时遥测数据,资源选择器218被配置成针对所确定的虚拟交换机操作模式来确定要使用的适当资源,并且触发各种虚拟交换机操作模式之间的资源转换(例如,启用/禁用的资源)。在云就绪模式中,由于虚拟交换机不知道底层硬件,因此虚拟交换机使用的较少硬件加速可以使系统保持在更加“云就绪”的状态中。此外,在云就绪模式中减少加速器功耗具有如下附带益处:允许更多处理器核容量被释放到应用,从而潜在地进一步改进网络电器106的性能/瓦特。在虚拟电器模式中,如果使用了任何具体的硬件加速,则应当领会的是,网络电器106仍然趋向于作为“虚拟电器”进行操作(例如,与传统的固定电器相反)。
如果所确定的当前负载超过了NFV基础设施能够处理的程度,则即使在启用了各种加速的情况下,到传统基础设施的回退选项也可能被触发(即,传统回退模式)。应当领会的是,如果触发了传统回退模式,则该模型不再被认为是NFV模式,而是传统的固定电器。取决于实施例,由于到传统回退模式的转换可能导致的在操作基础设施方面的实质改变,因此可以在中央基础设施控制器或协调器的附加指导下做出该转换。虽然上面将各种虚拟交换机操作模式描述为处于三种不同模式(例如,云就绪模式、虚拟电器模式和传统回退模式)之一中,但是应当领会的是,可以在替换的实施例中采用附加和/或替换的模式。例如,在一些实施例中,虚拟电器模式可以包括多个模式水平(例如,取决于对应的容量阈值)。在这种实施例中,每个虚拟电器模式水平可以与要针对每个虚拟电器模式水平而启用的不同类型或一组加速器相对应(例如,参见图5的说明性表格500、以及其中处于虚拟电器模式中的所启用的加速基于负载百分比而改变的相关描述)。
应当领会的是,在一些实施例中,虚拟交换机操作模式控制器214可以被配置成基于服务水平协议(SLA)的一个或多个条款/条件而在虚拟交换机操作模式之间进行切换和/或识别要启用/禁用哪些加速器。因此,在这种实施例中,资源选择器218被配置成基于SLA和实时遥测数据、针对所确定的虚拟交换机操作模式来确定要使用的适当资源。例如,SLA可以指定多于一个资源配置可以适应的一个或多个条款/条件。在这种条件下,资源选择器218可以被配置成基于由虚拟交换机操作模式控制器214指定的虚拟交换机操作模式、以及多于一个资源配置(诸如,功率使用率、资源利用使用率等)的每一个可能资源的一个或多个其他预期结果来确定资源。进一步地,在一些实施例中,资源选择器218可以将加权值应用于当前开启但没有被分配/利用的资源(相对于当前未开启的那些资源)、以及与之相关联的成本。
现在参考图3A和3B,示出了用于动态选择虚拟交换的资源的方法300,其可以由网络电器(例如,图1和图2的网络电器106)执行,或者更特别地,由图2的虚拟交换机操作模式控制器214执行。应当领会的是,可以在已经检测到系统负载改变、预期系统负载改变、或者某些其他系统负载影响活动已经被检测到或预期发生时实行方法300。方法300在框302中开始,其中虚拟交换机操作模式控制器214确定网络电器106是否正在被初始化。如果是,则方法300前进到框304,其中虚拟交换机操作模式控制器214启用一个或多个软件加速器(经由例如图4的软件加速器库416)。换言之,虚拟交换机操作模式控制器214将虚拟交换机操作模式初始化为云就绪模式。附加地,在框306中,虚拟交换机操作模式控制器214启用与虚拟交换机相关联的一个或多个连接。在一些实施例中,例如在方法300的后续迭代期间,在该期间中虚拟交换机操作模式恢复回到云就绪模式,虚拟交换机操作模式控制器214可以在框308中禁用任何启用的硬件加速器。
在框310中,虚拟交换机操作模式控制器214确定对网络电器106的资源的当前需求,本文中也被称为“当前负载”。为了这么做,在框312中,在一些实施例中,虚拟交换机操作模式控制器214可以基于当前正在由网络电器实行的一个或多个网络数据包处理操作来确定当前负载,或者更特别地,通过在网络电器上执行的VNF实例来确定当前负载。在框314中,虚拟交换机操作模式控制器214确定网络电器的软件加速器资源的当前容量。在一些实施例中,可以将当前容量动态地确定为:对软件加速器资源所需的当前负载进行处理可用的软件加速器资源的百分比。
例如,软件加速器资源的当前容量可以被配置成管理高达特定负载阈值(例如,在负载容量的50%处的虚拟电器负载阈值)的需求。应当领会的是,虽然本文中已经说明性地将当前容量描述为与软件加速器资源的当前容量特别相关,但是当前容量可以包括附加和/或替换的输入。例如,在其他实施例中,当前容量可以由正在处理的网络流量的量、与正在接收的网络流量相关联的类型/工作负载、对接收到的网络流量正在实行的处理的量等来确定、或以其他方式由它们影响。此外,在这种实施例中,一个或多个类型的输入可以具有与之相关联的不同加权值。因此,应当进一步领会的是,在这种实施例中,阈值可以以用于确定当前容量的输入的类型为依据。附加地,在一些实施例中,可以将多于一个容量水平与多于一个对应容量水平进行比较以确定虚拟交换机操作模式。
在框316中,虚拟交换机操作模式控制器214确定需求是否超过(即,大于)当前容量(例如,软件加速器资源的当前容量)。如果否,则方法300恢复回到框310以再次确定对网络电器106的资源的更新的当前需求/负载;否则,方法300前进到框318。在框318中,虚拟交换机操作模式控制器214分配一个或多个硬件加速器以处理超过当前容量的当前需求。换言之,虚拟交换机操作模式控制器214将虚拟交换机操作模式从云就绪模式转换成虚拟电器模式。为了这么做,在框320中,虚拟交换机操作模式控制器214可以分配一个或多个旁视(look-aside)加速资源(例如,参见图4的旁视加速器418)。附加地或替换地,在框322中,虚拟交换机操作模式控制器214可以分配一个或多个内联加速资源(例如,参见图4的内联加速资源410)。在框324中,虚拟交换机操作模式控制器214在活动的(即,启用的)硬件与软件加速器之间对接收到的请求进行负载平衡。
在框326中,如图3B中所示,虚拟交换机操作模式控制器214确定对网络电器106的资源的更新的当前需求。在框328中,虚拟交换机操作模式控制器214确定网络电器106的硬件和软件加速器资源的当前容量。在一些实施例中,当前容量可以被动态地确定为:对启用的软件和硬件加速器资源所需的当前负载进行处理可用的软件和硬件加速器资源的百分比。例如,软件和硬件加速器资源的当前容量可以被配置成管理高达特定负载阈值(例如,在负载容量的90%处的传统回退负载阈值)的需求。
在框330中,虚拟交换机操作模式控制器214确定需求是否超过(即,大于)软件和硬件加速器资源的当前容量。如果需求没有超过软件和硬件加速器的当前容量,则方法300分支到框332。在框332中,虚拟交换机操作模式控制器214确定需求是否超过(即,大于)软件加速器资源的当前容量。换言之,虚拟交换机操作模式控制器214确定虚拟交换机操作模式是应当被设置成云就绪模式(即,返回到框304)还是保持在虚拟电器模式中(即,返回到框318),并且在可能必要的时候潜在地添加/移除加速器。
如果虚拟交换机操作模式控制器214在框332中确定需求没有超过软件加速器的当前容量,则方法300返回到框304,其中虚拟交换机操作模式控制器214禁用任何启用的硬件加速器。否则,如果虚拟交换机操作模式控制器214在框332中确定需求超过了软件加速器的当前容量,则方法300返回到框318,其中虚拟交换机操作模式控制器214可以在必要时分配附加的或更少的(即,启用/禁用)硬件加速器以处理当前需求。
往回参考框330,如果需求超过了软件和硬件加速器的当前容量,则方法300分支到框334。在框334中,虚拟交换机操作模式控制器214禁用任何新的虚拟交换机连接。换言之,虚拟交换机操作模式控制器214将虚拟交换机操作模式转换为传统回退模式。在框336中,虚拟交换机操作模式控制器214识别一组VNF实例以实行网络数据包处理操作。在框338中,虚拟交换机操作模式控制器214部署和配置所识别的一组VNF实例。为了这么做,在框340中,虚拟交换机操作模式控制器214可以使用单根I/O虚拟化(SR-IOV)技术来部署VNF实例。
在框342中,虚拟交换机操作模式控制器214确定对网络电器106的硬件交换机资源的更新的当前需求。在框344中,虚拟交换机操作模式控制器214确定网络电器106的硬件交换机资源的当前容量。在框346中,虚拟交换机操作模式控制器214确定所确定的当前需求是否大于所确定的当前硬件交换机容量。如果是,则方法300前进到框348,其中网络流量被丢弃,这是由于没有足够的资源来处理接收到的网络流量。否则,如果虚拟交换机操作模式控制器214确定对硬件交换机资源的当前需求没有超过对硬件交换机资源的更新的当前需求,则方法300分支到框332。如先前所描述,取决于在框332中由虚拟交换机操作模式控制器214做出的确定,虚拟交换机操作模式可以被改变成云就绪模式或虚拟电器模式,或者保持在传统回退模式中,这取决于相对于与相应虚拟交换机操作模式相关联的资源的当前需求。
现在参考图4,在使用中,网络电器106在操作期间建立环境400。说明性环境400包括:图2的虚拟交换机操作模式控制器214,其通信地耦合到一个或多个平台驱动器404、一个或多个NIC驱动器406和虚拟交换机420。如说明性地示出的,(一个或多个)平台驱动器404通信地耦合到用于收集平台遥测数据的一个或多个性能监测代理408。(一个或多个)NIC驱动器406说明性地耦合到图1的NIC 120。说明性的NIC 120包括一个或多个内联加速器410,该内联加速器410可以包括一个或多个内联硬件加速器410a和/或一个或多个FPGA加速器410b。说明性的NIC 120附加地包括一个或多个物理端口412,以用于便于去往/来自网络电器106的NIC 120的网络流量的进和出。
说明性虚拟交换机420通信地耦合到多个VNF实例402,并且包括加速器选择器414。如先前所描述,VNF实例402中的每一个可以被体现为一个或多个VM(未示出),该VM被配置成执行对应的软件或指令以实行虚拟化任务。说明性VNF实例402包括:被指定为VNF(1)402a的第一VNF实例402、被指定为VNF(2)402b的第二VNF实例402、以及被指定为VNF(N)402c的第三VNF实例402(例如,其中VNF(N)402c表示“第N个”VNF实例402,并且其中“N”是正整数)。加速器选择器414被配置成从虚拟交换机操作模式控制器214接收、或者更特别地从图2的说明性虚拟交换机操作模式控制器214的资源选择器218接收加速器配置指令,该指令可用于确定启用/禁用哪个(哪些)加速器(例如,这取决于虚拟交换机420要以其操作的虚拟交换机操作模式)。
如说明性地示出的,加速器选择器414通信地耦合到:NIC 120(例如,以控制NIC120的内联加速器410);一个或多个旁视加速器418,其被说明性地示出为一个或多个FPGA加速器418a和一个或多个硬件加速器418b;以及一个或多个软件加速器库416,其用以管理软件加速。因此,加速器选择器414可以基于虚拟交换机420要以其操作的虚拟交换机操作模式(例如,如由虚拟交换机操作模式控制器214确定的云就绪模式、虚拟电器模式或传统回退模式)来启用/禁用相应的加速器。
现在参考图5,示出了表格500的说明性示例,该表格图示了网络电器(例如,图1、2和4的网络电器106),其具有用于在经过的24小时的量上进行虚拟交换的动态选择的资源。如说明性地示出的,表格500包括时间、负载百分比、启用的加速、以及给定时间处的对应模式(例如,基于负载百分比)。出于说明性示例的目的,负载百分比被计算为简化的百分比值,其表示已经针对其收集了如先前描述的平台/软件度量的各种网络流量和平台关键性能指标的聚集。在说明性表格500中,说明性地示出了若干个虚拟交换机操作模式转换502。被指定为虚拟交换机操作模式转换502a的说明性虚拟交换机操作模式转换502中的第一个示出了从虚拟电器模式到云就绪模式的转换,这是由于负载已下降至虚拟电器负载阈值(例如,50%)以下,并且由此不需要硬件加速(例如,说明性地为内联加速器)。
被指定为虚拟交换机操作模式转换502b的说明性虚拟交换机操作模式转换502中的第二个示出了从云就绪模式回到虚拟电器模式的转换,这是由于负载已再次超过虚拟电器负载阈值(例如,50%),并且由此需要硬件加速(例如,说明性地为内联加速器)。如说明性地示出的,虽然在09:00与12:00的时间快照之间未发生转换,但是负载百分比已经增加(例如,增加到70%),这已经导致了附加的和/替换的硬件加速器(例如,说明性地是FPGA)被采用。因此,应当领会的是,在一些实施例中可以使用模式内部阈值,以基于负载百分比来确定是否使用(即,启用)可用加速器的一部分或全部。
被指定为虚拟交换机操作模式转换502c的说明性虚拟交换机操作模式转换502中的第三个示出了从虚拟电器模式到传统回退模式或固定功能模式的转换,这是由于负载已经超过固定功能负载阈值(例如,90%),并且由此需要回退到固定功能传统硬件操作。被指定为虚拟交换机操作模式转换502d的说明性虚拟交换机操作模式转换502中的第四个并且是最后一个示出了从传统回退模式到虚拟电器模式的转换,这是由于负载再次已下降至固定功能负载阈值(例如,90%)以下,但仍然高于虚拟电器负载阈值(例如,50%),并且由此需要软件和硬件加速(例如,说明性地为内联加速器)。应当领会的是,在一些实施例中,负载阈值可以是预定的静态负载容量阈值,该阈值可以由其中已经部署了网络电器106的网络的运营商来分配。
示例
下面提供了本文中公开的技术的说明性示例。该技术的实施例可以包括下面描述的示例中的任何一个或多个及其任何组合。
示例1包括一种用于动态选择虚拟交换的资源的网络电器,该网络电器包括虚拟交换机操作模式电路,用以:识别对网络电器的资源的当前需求,其中该当前需求指示对用以处理与接收到的网络数据包相关联的数据的网络电器的处理资源的需求;确定网络电器的一个或多个加速资源的当前容量;基于当前需求和加速资源的当前容量来确定虚拟交换机操作模式,其中虚拟交换机操作模式指示要启用加速资源中的哪些;将网络电器的虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作;以及根据所确定的虚拟交换机操作模式来分配网络电器的加速资源。
示例2包括示例1的主题,并且其中识别对网络电器的资源的当前需求包括:识别对网络电器的加速资源的当前需求。
示例3包括示例1和2中任一项的主题,并且其中分配网络电器的加速资源包括:启用加速资源的至少一部分或禁用加速资源的至少一部分。
示例4包括示例1-3中任一项的主题,并且其中加速资源包括至少一个或多个硬件加速器,并且其中一个或多个硬件加速器包括内联硬件加速器和旁视硬件加速器中的至少一个。
示例5包括示例1-4中任一项的主题,并且其中确定虚拟交换机操作模式包括:确定虚拟交换机是否要以云就绪模式、虚拟电器模式或传统回退模式之一进行操作。
示例6包括示例1-5中任一项的主题,并且其中确定虚拟交换机操作模式进一步包括:根据基于云就绪模式的第一预定阈值、基于虚拟电器模式的第二预定阈值、以及基于传统回退模式的第三预定阈值,来确定虚拟交换机操作模式。
示例7包括示例1-6中任一项的主题,并且其中分配网络电器的加速资源包括:在已经将虚拟交换机配置成以云就绪模式进行操作之后,分配网络电器的一个或多个软件加速器。
示例8包括示例1-7中任一项的主题,并且其中确定网络电器的加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量。
示例9包括示例1-8中任一项的主题,并且其中分配网络电器的加速资源包括:在已经将虚拟交换机配置成以虚拟电器模式进行操作之后,分配一个或多个软件加速器和一个或多个硬件加速器。
示例10包括示例1-9中任一项的主题,并且其中确定网络电器的加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量以及所分配的一个或多个硬件加速器的容量。
示例11包括示例1-10中任一项的主题,并且其中分配网络电器的加速资源包括:(i)禁用任何先前启用的软件加速器,以及(ii)在已经将虚拟交换机配置成以传统回退模式进行操作之后,禁用任何先前启用的硬件加速器。
示例12包括示例1-11中任一项的主题,并且其中将虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作包括:(i)启用处于云就绪模式或虚拟电器模式中的任一个中的虚拟交换机的一个或多个连接,或者(ii)禁用处于传统回退模式中的虚拟交换机的一个或多个连接。
示例13包括一个或多个机器可读存储介质,其包括存储在其上的多个指令,该指令响应于被执行使得网络电器:识别对网络电器的资源的当前需求,其中该当前需求指示对用以处理与接收到的网络数据包相关联的数据的网络电器的处理资源的需求;确定网络电器的一个或多个加速资源的当前容量;基于当前需求和加速资源的当前容量来确定虚拟交换机操作模式,其中虚拟交换机操作模式指示要启用加速资源中的哪些;将网络电器的虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作;以及根据所确定的虚拟交换机操作模式来分配网络电器的加速资源。
示例14包括示例13的主题,并且其中识别对网络电器的资源的当前需求包括:识别对网络电器的加速资源的当前需求。
示例15包括示例13和14中任一项的主题,并且其中分配网络电器的加速资源包括:启用加速资源的至少一部分或禁用加速资源的至少一部分。
示例16包括示例13-15中任一项的主题,并且其中加速资源包括至少一个或多个硬件加速器,并且其中一个或多个硬件加速器包括内联硬件加速器和旁视硬件加速器中的至少一个。
示例17包括示例13-16中任一项的主题,并且其中确定虚拟交换机操作模式包括:确定虚拟交换机是否要以云就绪模式、虚拟电器模式或传统回退模式之一进行操作。
示例18包括示例13-17中任一项的主题,并且其中分配网络电器的加速资源包括:在已经将虚拟交换机配置成以云就绪模式进行操作之后,分配网络电器的一个或多个软件加速器。
示例19包括示例13-18中任一项的主题,并且其中确定网络电器的加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量。
示例20包括示例13-19中任一项的主题,并且其中分配网络电器的加速资源包括:在已经将虚拟交换机配置成以虚拟电器模式进行操作之后,分配一个或多个软件加速器和一个或多个硬件加速器。
示例21包括示例13-20中任一项的主题,并且其中确定网络电器的加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量以及所分配的一个或多个硬件加速器的容量。
示例22包括示例13-21中任一项的主题,并且其中分配网络电器的加速资源包括:(i)禁用任何先前启用的软件加速器,以及(ii)在已经将虚拟交换机配置成以传统回退模式进行操作之后,禁用任何先前启用的硬件加速器。
示例23包括示例13-22中任一项的主题,并且其中将虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作包括:(i)启用处于云就绪模式或虚拟电器模式中的任一个中的虚拟交换机的一个或多个连接,或者(ii)禁用处于传统回退模式中的虚拟交换机的一个或多个连接。
示例24包括一种用于动态选择虚拟交换的资源的网络电器,该网络电器包括:用以基于服务水平协议(SLA)的一个或多个要求以及多个加速资源中的每一个的相关联的功率值来启用和禁用网络电器的该多个加速资源中的每一个的电路,其中相关联的功率值包括预期用于执行要由该多个加速资源的加速资源执行的一个或多个操作的功率的量。
示例25包括示例24的主题,并且其中启用和禁用该多个加速资源中的每一个包括:识别对网络电器的资源的当前需求;确定该多个加速资源中的每一个的当前容量;基于当前需求和当前容量来确定要启用加速资源中的哪些;以及将网络电器的虚拟交换机配置成基于加速资源中的哪些被确定要启用来进行操作。

Claims (25)

1.一种用于动态选择虚拟交换的资源的网络电器,所述网络电器包括:
虚拟交换机操作模式电路,用以:
识别对网络电器的资源的当前需求,其中所述当前需求指示对用以处理与接收到的网络数据包相关联的数据的网络电器的处理资源的需求;
确定网络电器的一个或多个加速资源的当前容量;
基于所述当前需求和所述加速资源的当前容量来确定虚拟交换机操作模式,其中所述虚拟交换机操作模式指示要启用所述加速资源中的哪些;
将网络电器的虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作;以及
根据所确定的虚拟交换机操作模式来分配网络电器的加速资源。
2.如权利要求1所述的网络电器,其中识别对网络电器的资源的当前需求包括:识别对网络电器的所述加速资源的当前需求。
3.如权利要求1所述的网络电器,其中分配网络电器的所述加速资源包括:启用所述加速资源的至少一部分或禁用所述加速资源的至少一部分。
4.如权利要求1所述的网络电器,其中所述加速资源包括至少一个或多个硬件加速器,并且其中所述一个或多个硬件加速器包括内联硬件加速器和旁视硬件加速器中的至少一个。
5.如权利要求1所述的网络电器,其中确定所述虚拟交换机操作模式包括:(i)确定所述虚拟交换机是否要以云就绪模式、虚拟电器模式或传统回退模式之一进行操作,以及(ii)根据基于所述云就绪模式的第一预定阈值、基于所述虚拟电器模式的第二预定阈值、以及基于所述传统回退模式的第三预定阈值,来确定所述虚拟交换机操作模式。
6.如权利要求1所述的网络电器,其中分配网络电器的所述加速资源包括:在已经将所述虚拟交换机配置成以云就绪模式进行操作之后,分配网络电器的一个或多个软件加速器,以及
其中确定网络电器的所述加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量。
7.如权利要器1所述的网络电器,其中分配网络电器的所述加速资源包括:在已经将所述虚拟交换机配置成以虚拟电器模式进行操作之后,分配一个或多个软件加速器和一个或多个硬件加速器,以及
其中确定网络电器的所述加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量以及所分配的一个或多个硬件加速器的容量。
8.如权利要求1所述的网络电器,其中分配网络电器的所述加速资源包括:(i)禁用任何先前启用的软件加速器,以及(ii)在已经将所述虚拟交换机配置成以传统回退模式进行操作之后,禁用任何先前启用的硬件加速器。
9.如权利要求1所述的网络电器,其中将所述虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作包括:(i)启用处于云就绪模式或虚拟电器模式中的任一个中的所述虚拟交换机的一个或多个连接,或者(ii)禁用处于传统回退模式中的所述虚拟交换机的一个或多个连接。
10.一种用于动态选择虚拟交换的资源的方法,所述方法包括:
由网络电器识别对网络电器的资源的当前需求,其中所述当前需求指示对用以处理与接收到的网络数据包相关联的数据的网络电器的处理资源的需求;
由网络电器确定网络电器的一个或多个加速资源的当前容量;
由网络电器基于所述当前需求和所述加速资源的当前容量来确定虚拟交换机操作模式,其中所述虚拟交换机操作模式指示要启用所述加速资源中的哪些;
由网络电器将网络电器的虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作;以及
由网络电器根据所确定的虚拟交换机操作模式来分配网络电器的加速资源。
11.如权利要求10所述的方法,其中识别对网络电器的资源的当前需求包括:识别对网络电器的所述加速资源的当前需求。
12.如权利要求10所述的方法,其中分配网络电器的所述加速资源包括:启用所述加速资源的至少一部分或禁用所述加速资源的至少一部分。
13.如权利要求10所述的方法,其中所述加速资源包括至少一个或多个硬件加速器,并且其中所述一个或多个硬件加速器包括内联硬件加速器或旁视硬件加速器中的至少一个。
14.如权利要求10所述的方法,其中分配网络电器的所述加速资源包括:在已经将所述虚拟交换机配置成以云就绪模式进行操作之后,分配网络电器的一个或多个软件加速器,以及
其中确定网络电器的所述加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量。
15.如权利要求10所述的方法,其中分配网络电器的所述加速资源包括:在已经将所述虚拟交换机配置成以虚拟电器模式进行操作之后,分配一个或多个软件加速器和一个或多个硬件加速器,以及
其中确定网络电器的所述加速资源的当前容量包括:确定所分配的一个或多个软件加速器的容量以及所分配的一个或多个硬件加速器的容量。
16.如权利要求10所述的方法,其中分配网络电器的所述加速资源包括:(i)禁用任何先前启用的软件加速器,以及(ii)在已经将所述虚拟交换机配置成以传统回退模式进行操作之后,禁用任何先前启用的硬件加速器。
17.如权利要求10所述的方法,其中将所述虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作包括:(i)启用处于云就绪模式或虚拟电器模式中的任一个中的所述虚拟交换机的一个或多个连接,或者(ii)禁用处于传统回退模式中的所述虚拟交换机的一个或多个连接。
18.一种用于动态选择虚拟交换的资源的网络电器,所述网络电器包括:
用于识别对网络电器的资源的当前需求的部件,其中所述当前需求指示对用以处理与接收到的网络数据包相关联的数据的网络电器的处理资源的需求;
用于确定网络电器的一个或多个加速资源的当前容量的部件;
用于基于所述当前需求和所述加速资源的当前容量来确定虚拟交换机操作模式的部件,其中所述虚拟交换机操作模式指示要启用所述加速资源中的哪些;
用于将网络电器的虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作的部件;以及
用于根据所确定的虚拟交换机操作模式来分配网络电器的加速资源的部件。
19.如权利要求18所述的网络电器,其中所述用于识别对网络电器的资源的当前需求的部件包括:用于识别对网络电器的所述加速资源的当前需求的部件。
20.如权利要求18所述的网络电器,其中所述用于分配网络电器的所述加速资源的部件包括:用于启用所述加速资源的至少一部分或禁用所述加速资源的至少一部分的部件。
21.如权利要求18所述的网络电器,其中所述加速资源包括至少一个或多个硬件加速器,并且其中所述一个或多个硬件加速器包括内联硬件加速器或旁视硬件加速器中的至少一个。
22.如权利要求18所述的网络电器,其中所述用于分配网络电器的所述加速资源的部件包括:用于在已经将所述虚拟交换机配置成以云就绪模式进行操作之后,分配网络电器的一个或多个软件加速器的部件,以及
其中所述用于确定网络电器的所述加速资源的当前容量的部件包括:用于确定所分配的一个或多个软件加速器的容量的部件。
23.如权利要求18所述的网络电器,其中所述用于分配网络电器的所述加速资源的部件包括:用于在已经将所述虚拟交换机配置成以虚拟电器模式进行操作之后,分配一个或多个软件加速器和一个或多个硬件加速器的部件,以及
其中所述用于确定网络电器的所述加速资源的当前容量的部件包括:用于确定所分配的一个或多个软件加速器的容量以及所分配的一个或多个硬件加速器的容量的部件。
24.如权利要求18所述的网络电器,其中所述用于分配网络电器的所述加速资源的部件包括:(i)用于禁用任何先前启用的软件加速器的部件,以及(ii)用于在已经将所述虚拟交换机配置成以传统回退模式进行操作之后,禁用任何先前启用的硬件加速器的部件。
25.如权利要求18所述的网络电器,其中所述用于将所述虚拟交换机配置成根据所确定的虚拟交换机操作模式进行操作的部件包括:(i)用于启用处于云就绪模式或虚拟电器模式中的任一个中的所述虚拟交换机的一个或多个连接的部件,或者(ii)用于禁用处于传统回退模式中的所述虚拟交换机的一个或多个连接的部件。
CN201910743738.XA 2018-09-13 2019-08-13 用于动态选择虚拟交换的资源的技术 Pending CN110896373A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/131,009 US20190044812A1 (en) 2018-09-13 2018-09-13 Technologies for dynamically selecting resources for virtual switching
US16/131009 2018-09-13

Publications (1)

Publication Number Publication Date
CN110896373A true CN110896373A (zh) 2020-03-20

Family

ID=65231799

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910743738.XA Pending CN110896373A (zh) 2018-09-13 2019-08-13 用于动态选择虚拟交换的资源的技术

Country Status (2)

Country Link
US (2) US20190044812A1 (zh)
CN (1) CN110896373A (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11265291B2 (en) 2017-08-25 2022-03-01 Red Hat, Inc. Malicious packet filtering by a hypervisor
US10616099B2 (en) 2017-08-28 2020-04-07 Red Hat, Inc. Hypervisor support for network functions virtualization
US10831627B2 (en) 2018-07-23 2020-11-10 International Business Machines Corporation Accelerator monitoring and testing
US10817339B2 (en) * 2018-08-09 2020-10-27 International Business Machines Corporation Accelerator validation and reporting
US10862807B2 (en) * 2018-09-19 2020-12-08 Cisco Technology, Inc. Packet telemetry data via first hop node configuration
US11650849B2 (en) * 2018-09-25 2023-05-16 International Business Machines Corporation Efficient component communication through accelerator switching in disaggregated datacenters
US11012423B2 (en) 2018-09-25 2021-05-18 International Business Machines Corporation Maximizing resource utilization through efficient component communication in disaggregated datacenters
US11163713B2 (en) 2018-09-25 2021-11-02 International Business Machines Corporation Efficient component communication through protocol switching in disaggregated datacenters
US11182322B2 (en) 2018-09-25 2021-11-23 International Business Machines Corporation Efficient component communication through resource rewiring in disaggregated datacenters
JP7150585B2 (ja) * 2018-12-06 2022-10-11 エヌ・ティ・ティ・コミュニケーションズ株式会社 データ検索装置とそのデータ検索方法およびプログラム、エッジサーバとそのプログラム
JP7150584B2 (ja) 2018-12-06 2022-10-11 エヌ・ティ・ティ・コミュニケーションズ株式会社 エッジサーバとそのプログラム
US11301407B2 (en) * 2019-01-08 2022-04-12 Intel Corporation Technologies for accelerator fabric protocol multipathing
US10999766B2 (en) 2019-02-26 2021-05-04 Verizon Patent And Licensing Inc. Method and system for scheduling multi-access edge computing resources
US11082525B2 (en) * 2019-05-17 2021-08-03 Intel Corporation Technologies for managing sensor and telemetry data on an edge networking platform
US11436053B2 (en) * 2019-05-24 2022-09-06 Microsoft Technology Licensing, Llc Third-party hardware integration in virtual networks
US11709716B2 (en) 2019-08-26 2023-07-25 Red Hat, Inc. Hardware offload support for an operating system offload interface using operation code verification
US11765037B2 (en) * 2020-08-19 2023-09-19 Hewlett Packard Enterprise Development Lp Method and system for facilitating high availability in a multi-fabric system
US20220029929A1 (en) * 2020-12-08 2022-01-27 Intel Corporation Technologies that provide policy enforcement for resource access
US11496419B2 (en) 2021-02-03 2022-11-08 Intel Corporation Reliable transport offloaded to network devices

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7313363B2 (en) * 2003-05-08 2007-12-25 M/A-Com, Inc. Activation method for wireless communication system
US7877754B2 (en) * 2003-08-21 2011-01-25 International Business Machines Corporation Methods, systems, and media to expand resources available to a logical partition
CN100377549C (zh) * 2005-11-22 2008-03-26 华为技术有限公司 数据转发实体转发数据帧的方法
EP2319208B1 (en) * 2008-08-27 2018-03-28 Telefonaktiebolaget LM Ericsson (publ) Absolute control of virtual switches
US8589919B2 (en) * 2009-04-28 2013-11-19 Cisco Technology, Inc. Traffic forwarding for virtual machines
ES2361893B1 (es) * 2009-08-07 2012-05-04 Vodafone España, S.A.U. Método y sistema para seleccionar din�?micamente el alcance de celda de una estación base.
JP5748024B2 (ja) * 2011-04-28 2015-07-15 富士通株式会社 基地局でのモードスイッチングのための方法及び装置
US9009319B2 (en) * 2012-01-18 2015-04-14 Rackspace Us, Inc. Optimizing allocation of on-demand resources using performance
US9503324B2 (en) * 2013-11-05 2016-11-22 Harris Corporation Systems and methods for enterprise mission management of a computer network
US11055252B1 (en) * 2016-02-01 2021-07-06 Amazon Technologies, Inc. Modular hardware acceleration device

Also Published As

Publication number Publication date
US20230412459A1 (en) 2023-12-21
US20190044812A1 (en) 2019-02-07

Similar Documents

Publication Publication Date Title
US20230412459A1 (en) Technologies for dynamically selecting resources for virtual switching
US11706158B2 (en) Technologies for accelerating edge device workloads
EP3624400B1 (en) Technologies for deploying virtual machines in a virtual network function infrastructure
US20230359510A1 (en) Technologies for hierarchical clustering of hardware resources in network function virtualization deployments
US10445850B2 (en) Technologies for offloading network packet processing to a GPU
CN109076029B (zh) 用于非统一网络输入/输出访问加速的方法和装置
EP3629162B1 (en) Technologies for control plane separation at a network interface controller
CN106027323B (zh) 用于gpu辅助网络话务监控和分析的技术
US20190045000A1 (en) Technologies for load-aware traffic steering
EP3611622B1 (en) Technologies for classifying network flows using adaptive virtual routing
US11646980B2 (en) Technologies for packet forwarding on ingress queue overflow
EP3588856B1 (en) Technologies for hot-swapping a legacy appliance with a network functions virtualization appliance
US11301020B2 (en) Data center power management
EP3588869B1 (en) Technologies for hairpinning network traffic
US20220109733A1 (en) Service mesh offload to network devices
US20210203740A1 (en) Technologies for paravirtual network device queue and memory management
US11561916B2 (en) Processing task deployment in adapter devices and accelerators
US20180091447A1 (en) Technologies for dynamically transitioning network traffic host buffer queues
US20230247005A1 (en) Proxy offload to network interface device
US20240012459A1 (en) Renewable energy allocation to hardware devices
US20230409511A1 (en) Hardware resource selection

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination