CN108124018B - 分布式处理网络设备任务的方法与虚拟机管理器 - Google Patents

分布式处理网络设备任务的方法与虚拟机管理器 Download PDF

Info

Publication number
CN108124018B
CN108124018B CN201810071965.8A CN201810071965A CN108124018B CN 108124018 B CN108124018 B CN 108124018B CN 201810071965 A CN201810071965 A CN 201810071965A CN 108124018 B CN108124018 B CN 108124018B
Authority
CN
China
Prior art keywords
virtual machine
network device
response
virtual
computing
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.)
Active
Application number
CN201810071965.8A
Other languages
English (en)
Other versions
CN108124018A (zh
Inventor
乔尔·奥布斯特费尔德
戴维·沃德
科尔比·巴思
穆林
Original Assignee
Jungle Network
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 Jungle Network filed Critical Jungle Network
Publication of CN108124018A publication Critical patent/CN108124018A/zh
Application granted granted Critical
Publication of CN108124018B publication Critical patent/CN108124018B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明涉及分布式处理网络设备任务的方法与虚拟机管理器。方法包括由虚拟机管理器从虚拟机代理接收对计算系统的计算资源的请求;确定计算系统是否具有至少一个可用的计算资源;以及响应于积极确定结果,由虚拟机管理器:向网络设备发送表示计算系统具有可用计算资源的响应;接收对特定计算资源的请求,请求包括网络设备处运行的操作系统的版本及请求计算系统执行的任务;基于操作系统的版本,将在计算系统处运行的至少一个虚拟机识别为目标虚拟机,其中,目标虚拟机运行网络设备的适当版本的操作系统并且具有可用的计算资源来执行任务;以及向网络设备发送针对特定请求的响应,响应包括针对由虚拟机管理器识别的目标虚拟机的套接字连接信息。

Description

分布式处理网络设备任务的方法与虚拟机管理器
本申请是申请日为2013年6月24日,申请号为201310253577.9,发明创造名称为“网络设备任务的分布式处理”的发明专利申请的分案申请。
技术领域
本公开涉及计算机网络,更具体地,涉及在虚拟机之间分配网络设备任务的技术。
背景技术
计算机网络是交换数据和共享资源的互连计算设备的集合。在诸如互联网这样的分组网络中,计算设备通过将数据划分为被称为包的较小块来通信数据,这些包从源设备经过网络被单独地路由到目的设备。目的设备从包中提取数据并将数据组装成其原始形式。将数据划分为包能够使源设备可以只重新发送那些可能在传输期间丢失的个体包。
网络内的某些设备,例如路由器,含有保存描述通过网络的路线的路由信息的路由单元。每个路线定义了网络上位置之间的路径。根据路由信息,路由器的转发引擎生成转发信息,路由器使用该转发信息在网络上中继转发(relay)包流,更具体地,将包流中继转发到下一个中继段。关于转发包,网络路由器的“下一个中继段”一般是指沿着给定路线的相邻设备。一旦接收到来的包,路由器就检查包内的信息,从而识别包的目的地。基于目的地,路由器根据转发信息转发该包。
大型计算机网络,例如互联网,通常包括多个根据诸如边界网关协议(BGP)这样的规定路由协议交换路由信息的路由器。当两个路由器最初连接时,路由器交换路由信息和根据所交换的路由信息生成转发信息。具体地,两个路由器初始化路由通信“会话”,两个路由器根据规定的路由协议通过该路由通信“会话”来交换路由信息。路由器继续通过路由协议进行通信以递增地更新路由信息,进一步地,根据更新的路由信息中指示的网络拓补的变化更新其转发信息。例如,路由器可以发送更新消息,告知新近可用的路线或指出不再可用的路线。然而,更新路由信息和执行其他管理任务会消耗大量的计算资源,这限制了可用于转发流量的计算资源量。
按照惯例,网络管理员通过增加处理器、存储器等按比例增加计算资源。然而,可以在单个机架(chassis)内增加的计算资源量是有限的。随着处理器数量和其他计算资源量增加,所产生的热量和所需的电量也增加。网络设备的单个机架中的冷却和功率性能可能无法满足需求,这导致网络管理员使用单独的机架以在网络设备执行各种管理任务的同时,提供维持理想的网络吞吐量所需的额外计算能力。网络管理员必须管理作为单独设备的每个额外机架,这增加管理网络设备的复杂性。进一步,在网络设备上运行的操作系统只可以支持至多一个最大数量的计算资源和软件进程,这限制可用于任何网络设备的总计算能力。
发明内容
根据本发明的一个方面,一种分布式处理网络设备任务的方法,所述方法包括:由在计算系统处运行的虚拟机管理器从在网络设备处运行的虚拟机代理接收对所述计算系统的计算资源的请求;由所述虚拟机管理器确定所述计算系统是否具有至少一个可用的计算资源;以及响应于确定所述计算系统具有至少一个可用的计算资源:由所述虚拟机管理器向所述网络设备发送表示所述计算系统具有所述至少一个可用的计算资源的响应;由所述虚拟机管理器接收对特定计算资源的请求,所述请求包括在所述网络设备处运行的操作系统的版本及所述网络设备正请求所述计算系统执行的任务;由所述虚拟机管理器基于在所述网络设备处运行的所述操作系统的版本,将在所述计算系统处运行的多个虚拟机之中的至少一个虚拟机识别为目标虚拟机,其中,所述目标虚拟机运行所述网络设备的适当版本的所述操作系统并且具有可用的计算资源来执行所述任务;以及由所述虚拟机管理器向所述网络设备发送针对特定请求的响应,所述响应包括针对由所述虚拟机管理器识别的所述目标虚拟机的套接字连接信息。
所述方法,进一步包括在发送针对特定请求的响应之前:由所述虚拟机管理器从所述虚拟机中接收包括所述虚拟机上线的指示、所述虚拟机的配置信息和所述虚拟机的性能的消息;以及由所述虚拟机管理器将所述虚拟机的配置信息和所述虚拟机的性能存储在数据存储库中,其中,识别所述虚拟机包括:基于由所述虚拟机管理器存储的所述虚拟机的配置信息和所述虚拟机的性能来确定所述虚拟机是否具有相同版本的所述操作系统并且是否能够执行所述任务;以及响应于确定所述虚拟机具有相同版本的所述操作系统并且能够执行所述任务,将所述虚拟机识别为所述目标虚拟机。
所述方法进一步包括响应于所述目标虚拟机终止运行:由所述虚拟机管理器从所述数据存储库中移除所述虚拟机的配置信息和所述虚拟机的性能。
其中,在当前没有虚拟机在所述计算系统处运行时,由所述虚拟机管理器确定所述计算系统具有所述至少一个可用的计算资源,所述方法进一步包括:响应于接收对所述特定计算资源的请求,由所述虚拟机管理器开始所述虚拟机在所述计算系统处的运行。
所述方法进一步包括:响应于确定所述计算系统不具有至少一个可用的计算资源,由所述虚拟机管理器向所述网络设备发送表示所述计算系统不能对所述网络设备提供帮助的消息。
其中,将所述至少一个虚拟机识别为所述目标虚拟机包括:将两个或更多个虚拟机识别为两个或更多个目标虚拟机,其中,所述两个或更多个目标虚拟机均与所述网络设备运行相同版本的所述操作系统,并且其中,所述两个或更多个目标虚拟机均被配置为对至少一部分所述任务提供帮助,所述方法进一步包括:建立到所述两个或更多个目标虚拟机中的每一个的相应套接字,其中,所述响应包括针对所述两个或更多个目标虚拟机中的每一个的相应套接字连接信息。
其中,所述任务与在所述网络设备处执行的路由协议相关联,并且其中,所述路由协议是开放式最短路径优先、生成树协议、边界网关协议、中间系统对中间系统协议和虚拟专用局域网服务中的一个。
其中,所述多个虚拟机的至少一个子集被配置为执行路由协议、接口控制进程、管理进程和机架进程中的一个或多个。
根据本发明的另一方面,一种虚拟机管理器,包括:一个或多个处理器;和存储器,存储能被所述一个或多个处理器运行为如下的虚拟机管理模块:接收对计算系统的特定计算资源的请求,所述请求包括在网络设备处运行的操作系统的版本和所述网络设备正请求所述计算系统执行的任务;确定所述计算系统是否具有至少一个可用的计算资源;以及响应于确定所述计算系统具有至少一个可用的计算资源:基于在所述网络设备处运行的所述操作系统的版本,将在所述计算系统处运行的多个虚拟机之中的至少一个虚拟机识别为目标虚拟机,其中,所述目标虚拟机运行所述网络设备的适当版本的所述操作系统并且具有可用的计算资源来执行所述任务;以及向所述网络设备发送针对特定请求的响应,所述响应包括针对所述目标虚拟机的套接字连接信息。
其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:在发送针对特定请求的响应之前:从所述虚拟机中接收包括所述虚拟机上线的指示、所述虚拟机的配置信息和所述虚拟机的性能的消息;以及将所述虚拟机的配置信息和所述虚拟机的性能存储在所述存储器中;基于所述存储器中存储的所述虚拟机的配置信息和所述虚拟机的性能来确定所述虚拟机是否具有相同版本的所述操作系统并且是否能够执行所述任务;以及响应于确定所述虚拟机具有相同版本的所述操作系统并且能够执行所述任务,将所述虚拟机识别为所述目标虚拟机。
其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:响应于所述目标虚拟机终止运行,从所述存储器中移除所述虚拟机的配置信息和所述虚拟机的性能。
其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:在当前没有虚拟机在所述计算系统处运行时,确定所述计算系统具有所述至少一个可用的计算资源;以及响应于接收对计算资源的请求,开始所述虚拟机在所述计算系统处的运行。
其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:响应于确定所述计算系统不具有至少一个可用的计算资源,向所述网络设备发送表示所述计算系统不能对所述网络设备提供帮助的消息。
其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:将两个或更多个虚拟机识别为两个或更多个目标虚拟机,其中,所述两个或更多个目标虚拟机均与所述网络设备运行相同版本的所述操作系统,并且其中,所述两个或更多个目标虚拟机均被配置为对至少一部分所述任务提供帮助;以及建立到所述两个或更多个目标虚拟机中的每一个的相应套接字,其中,所述响应包括针对所述两个或更多个目标虚拟机中的每一个的相应套接字连接信息。
其中,所述任务与在所述网络设备处执行的路由协议相关联,并且其中,所述路由协议是开放式最短路径优先、生成树协议、边界网关协议、中间系统对中间系统协议和虚拟专用局域网服务中的一个。
其中,所述多个虚拟机的至少一个子集被配置为执行路由协议、接口控制进程、管理进程和机架进程中的一个或多个。
一般地,本公开的技术旨在通过使网络设备将任务卸荷(off-load)到在通信联络耦接至网络设备并与其分开管理的计算云中运行的一个或多个虚拟机,来增加可用于网络设备的计算资源。网络设备运行提供网络设备的软件功能的操作系统。每个虚拟机运行其自身的对应于由网络设备运行的操作系统的操作系统实例。虚拟机管理器注册在计算云中运行的各种虚拟机。当网络设备从计算云请求计算资源时,虚拟机管理器识别能够执行网络设备所请求的任务的一个或多个虚拟机,并且建立虚拟机和网络设备之间的网络套接字。网络设备将任务请求发送到虚拟机,虚拟机将任务结果返回到网络设备。用这种方式,网络设备有选择地将任务卸荷到虚拟机,释放网络设备的计算资源来转发包和执行其他延迟敏感的任务。
在计算云中运行的虚拟机可以分别运行特定版本的网络操作系统,能够使计算云为多个不同网络设备和多个不同版本的网络设备提供支持。进一步,两个或多个不同的虚拟机可以运行特定版本的网络操作系统。通过在单独的虚拟机中运行操作系统的多个实例,可用于网络设备的计算资源量与计算云的能力有关,而受到操作系统的限制。因此,随着额外的计算资源的需求增加,计算云的计算资源和虚拟机的数量增加,而不受操作系统或网络设备的规格的限制,包括资源限制、冷却限制、和功率限制。
在一个实施方式中,方法包括:利用网络设备从通信地耦接至该网络设备的多个其他网络设备接收多个链路状态消息;利用在网络设备中运行的虚拟机代理将对计算云的可用计算资源的请求发送到在计算云运行的虚拟机管理器;以及从虚拟机管理器接收包括在计算云运行的至少一个虚拟机的网络套接字的响应。该方法还包括:利用虚拟机代理将确定网络设备与多个其他网络设备中的每一个之间的最短路径的请求利用网络套接字发送到虚拟机,其中,请求包括多个链路状态消息;从虚拟机接收包括网络设备与多个其他网络设备中的每一个之间的相应的最短路径的指示的响应消息;以及基于响应消息更新存储在网络设备的路由信息。
在另一个实施方式中,方法包括:由网络设备运行一个版本的网络操作系统;以及利用在网络设备运行的虚拟机代理识别在通信地耦接至网络设备的计算云处运行的虚拟机,其中,所识别的虚拟机运行所述版本的网络操作系统的实例。该方法进一步包括:利用虚拟机代理将执行任务的请求发送到虚拟机;利用虚拟机代理从虚拟机接收包括执行任务的结果的任务响应;以及基于包括在任务响应中包括的结果更新网络设备。
在另一个实施方式中,网络设备包括:被配置为发送和接收消息的至少一个网络接口、包含被配置为运行一个版本的网络操作系统的一个或多个处理器的路由单元、以及可由路由单元运行的虚拟机。虚拟机代理被配置为:识别在通信地耦接至网络设备的计算云处运行的虚拟机,其中,所识别的虚拟机运行所述版本的网络操作系统的实例;利用至少一个网络接口将执行任务的请求发送至虚拟机;以及利用至少一个网络接口从虚拟机接收包括执行任务的结果的任务响应。路由单元被配置为基于包括在任务响应中的结果更新网络设备。
在另一个实施方式中,利用编码有可由一个或多个处理器执行的指令的计算机可读存储介质运行一个版本的网络操作系统,并识别在通信地耦接至网络设备的计算云处运行的虚拟机,其中所识别的虚拟机运行所述版本的网络操作系统的实例。指令可进一步被执行为:将执行任务的请求发送到所识别的虚拟机;从虚拟机接收包括执行任务的结果的任务响应,以及基于包括在任务响应中所包括的结果更新网络设备。
在下面的附图和说明书中阐述了一个或多个实施方式的细节。根据说明书、附图、和权利要求将明显理解本公开的其他特征、目标、和优势。
附图说明
图1是根据本公开的一个方面示出在虚拟机之间分配网络设备任务的示例系统的框图。
图2是根据本公开的一个方面示出在虚拟机之间分配网络设备任务的示例系统的其他细节的框图。
图3是根据本公开的一个方面示出示例计算云的框图。
图4是示出根据本公开的一个方面的在虚拟机之间分配网络设备任务的示例过程的流程图。
具体实施方式
图1是根据本公开的一个方面示出在虚拟机之间分配网络设备任务的示例系统的框图。如图1中所示,网络系统2包括计算云10、路由器12A-12D(统称为“路由器12”)、虚拟机管理器(VM MANAGER)14、和虚拟机(VM)16A-16N(统称为“虚拟机16”)。计算云10作为包括虚拟机管理器14和虚拟机16的计算资源的主机。计算云10的计算资源可以是能够执行本公开的技术的任何计算资源。例如,计算云10可以包括服务器计算机、台式计算机、便携式计算机、或包括处理器的任何其他设备。尽管作为不同的实体示出,但是虚拟机管理器14和每个虚拟机16可以分配在计算云10的两个以上不同的计算资源之间,虚拟机的数量可以不同于计算云10的不同计算资源的数量。
在某些示例中,两个以上的虚拟机16可以至少部分地使用相同的计算资源。例如,虚拟机16A可以在三个不同的服务器之间运行,而虚拟机16B可以在其上正在运行虚拟机16A的三个服务器中的一个服务器上运行。在某些示例中,计算云10的多个计算资源可以被配置为集群,提供额外的冗余和可扩展性,同时支持多个虚拟机。一般地,每个虚拟机16运行网络操作性的实例。通常,每个网络操作系统实例对应于在通信地耦接至计算云10的网络设备(例如,路由器12)上运行的操作系统。
一般地,路由器12互相交换路由信息,从而保持更新的网络的拓补结构的视图。例如,路由器12B从路由器12A接收包,并基于路由器12B保持的路由信息将包转发到下一个中继段,例如路由器12C。在本公开中描述的任务分配技术能够使每个路由器12最少地使用相应路由器12的计算资源来执行各种配置和管理任务(例如,执行路由协议,从而更新所存储的路由和转发信息),因而能够使相应路由器12的更多计算机资源用于转发包和执行其他延迟敏感的任务。
每个路由器12运行提供辅助在网络之间转发和路由包的某些功能的操作系统。各种不同的进程(有时被称为后台进程)在操作系统内执行或作为操作系统的一部分执行。示例进程包括控制机架及其部件的机架进程、配置和监控网络接口的设备控制进程(即,接口控制过程)、负责包传输的转发进程、管理进程、以及路由协议进程。管理进程提供在其他进程之间的通信,提供对配置数据库的接口,利用配置信息填充配置数据库,当通过路由器12的用户接口之一发布命令时还与其他进程交互,等等。路由协议进程规定了诸如路由信息协议(RIP)、开放最短路径优先(OSPF)协议、约束最短路径优先(CSPF)、虚拟专用局域网服务(VPLS)、以及边界网关协议(BGP)的路由协议在设备上如何工作,包括选择路由器和保持转发表。
如图1中所示,路由器12B包括虚拟机代理18。随着路由器12B执行可以卸荷到一个或多个虚拟机16的各种任务,虚拟机代理18管理路由器12B与计算云10之间的交互。例如,如果路由器12B更新路由器12B存储的网络图,那么网络图的生成和下一个中继段的计算可以卸荷到一个或多个虚拟机16。虚拟机代理18将消息发送到虚拟机管理器14(例如,利用链路20),请求由虚拟机管理器14管理的计算资源。
虚拟机管理器14管理发送到虚拟机16的任务,和存储有关虚拟机16的配置信息。在某些示例中,虚拟机16中的每一个均向虚拟机管理器14注册。在其他示例中,虚拟机管理器14主动询问计算云10,从而识别可用的虚拟机(例如,虚拟机16)。由虚拟机管理器14存储的确认信息包括在每个虚拟机16运行的操作系统版本。配置信息还可以包括每个虚拟机16所被配置执行的任务(例如,网络图生成、下一个中继段的确定等等)。
当虚拟机代理18将对计算资源的请求发送到虚拟机管理器14时,虚拟机管理器14确定计算云10是否具有可用于执行任务的资源。如果计算云10具有可用的计算资源,那么虚拟机管理器14将响应发送到路由器12B表明计算云10可以提供帮助。虚拟机代理18发送对包括在路由器12B运行并且任务路由器12B正在请求计算云10运行的版本操作系统的计算资源的特定请求。虚拟机管理器14识别虚拟机16中正在运行合适版本的操作系统的、具有执行所请求的任务的可用计算资源的、并且包括执行所请求任务所需的功能的一个虚拟机(例如,虚拟机16B)。一旦虚拟机管理器14识别到虚拟机16中的一个能够执行所请求的任务,虚拟机管理器14就将响应消息发送到虚拟机代理18,表明计算云10可以提供帮助。
虚拟机代理18生成并发送第二请求消息以发送到虚拟机管理器14。第二请求消息包括由路由器12B运行的至少一个操作系统版本和有关路由器12B正请求帮助的任务的信息。虚拟机管理器14接收第二请求消息并确定虚拟机16中是否有任何一个支持在请求消息中具体指定的操作系统版本并可以执行所请求的任务。为了识别合适的虚拟机16,虚拟机管理器14访问所存储的配置信息或将对配置信息的请求发送到至少一个虚拟机16(例如,虚拟机16B)。基于配置信息,虚拟机管理器14识别至少一个虚拟机16并在所识别的虚拟机16处建立套接字连接。虚拟机管理器14发送响应消息到包括套接字连接信息的虚拟机代理18。
在从虚拟机管理器14接收响应消息之后,虚拟机代理18将所需的配置信息与所标识的虚拟机16(例如,虚拟机16B)交换消息,而不与虚拟机管理器14交换额外的消息。利用套接字22,虚拟机代理18与虚拟机16B交换消息,从而使得虚拟机16B执行所请求的任务。
尽管以上描述的安装过程包括两个步骤(首先询问是否任何计算资源可用,然后提供具体的任务需求),在某些实例中,安装过程可以在单个步骤中执行。例如,虚拟机代理18可以将单个请求消息发送到虚拟机管理器14。单个请求消息包括在路由器12B运行的操作系统版本和有关计算云10要执行的任务的信息。虚拟机管理器14接收单个请求消息并确定计算云10内是否有足够的可用计算资源。如果没有足够的可用计算资源,那么虚拟机管理器14将指示这次计算云10不能为任务提供支持的响应消息发送到虚拟机代理18。如果存在足够的可用计算资源,那么虚拟机管理器14识别虚拟机16中正在运行相同版本的操作系统并能够执行所要求任务的一个虚拟机(例如,虚拟机16B)。然后,虚拟机管理器14在虚拟机16B处建立套接字(例如,创建具体的互联网协议(IP)地址和端口号)以供虚拟机代理18当交换执行任务所需的消息时使用,并发送包括该套接字信息的响应消息。虚拟机代理18可以开始利用套接字发送消息到虚拟机16B,以使虚拟机16B执行所请求的任务,而不需要在虚拟机代理18和虚拟机管理器14之间交换的额外的请求和响应消息。
在某些实施方式中,虚拟机管理器14可以包括与两个以上的不同虚拟机16相关联的套接字信息。在这些实施方式中,虚拟机代理18可以将任务分配为两个以上的不同的虚拟机16中的每个虚拟机执行至少一部分任务。然而,在某些实例中,尽管虚拟机代理18接收两个以上的不同虚拟机16的套接字信息,但是虚拟机代理18可以选择虚拟机16中的一个来执行整个任务和丢弃或忽略包括在其他虚拟机响应中的套接字信息。
在某些实例中,路由器12可以包括在网络的一个或多个不同的逻辑段中。例如,路由器12A和12B可以是第一逻辑段的一部分,而路由器12B、12C、和12D可以是第二逻辑段的一部分。根据本公开的技术,根据OSPF计算每个逻辑段的网络图和最短路径可以由虚拟机16中的不同虚拟机执行。也就是说,当路由器12B被配置为更新每个逻辑段的网络图时,虚拟机代理18可以建立到两个不同虚拟机16的套接字连接。利用两个不同的套接字连接,虚拟机代理18将第一逻辑段的第一组所接收链路状态消息发送到第一虚拟机16(例如,虚拟机16A)和将第二逻辑段的第二组所接收链路状态消息发送到第二虚拟机16(例如,虚拟机16B)。
用这种方式,本公开的技术能够使用虚拟机提供在一组转发设备(例如路由器12)中对计算资源的逻辑分割。根据需要,虚拟机可以被建立和分配在可用的计算云的计算资源间。每个虚拟机可以负责特定的功能,例如运行一组转发设备的特定路由协议或接口控制,而其他的虚拟机可以提供管理功能。此外,因为操作可以发生在每个虚拟机中,所以特定功能的多个实例可以同时由多个不同的虚拟机执行。也就是说,多个控制平面进程、数据平面进程、和管理平面进程各自利用单独的虚拟机。因此,本公开的技术能够通过更高级别的资源分割更高效地使用转发设备中存在的计算资源。此外,尽管关于执行路由和转发功能的路由器描述了本技术,但是本技术可以适用于包括第三层(“L3”)交换机、第二层(“L2”)交换机、L2/L3交换机、OpenFlow交换机、或其他网络设备的其他网络设备。在这些示例中,路由单元30不一定包括RP后台进程40,和作为替代将RP后台进程40功能卸荷到VM16。
图2是根据本公开的一个方面示出图1中所示的一部分网络系统的进一步细节的框图。如图2中所示,系统2包括计算云10、局域网(LAN)11、和路由器12B。路由器12B包括路由单元30、转发单元34、和交换结构36。交换结构36提供柔性物理接口卡(“PIC”)互连组集中器50A-50N(“FPC 50”),每个集中器包括通过一组接口卡(“IFC”)54、56、和57分别发送和接收流量的至少一个包转发引擎52A-52N(“PFE 52”),其中接口卡通常具有一个或多个物理网络接口(即,端口)。某些PFE 52可以通过隧道PIC发送和接收流量。
FPC 50、包括在FPC 50内的部件、和交换结构36共同提供用于转发经过的网络流量的转发平面。尽管图2中未示出,但是PFE 52可以各自包括中央处理单元(CPU)、存储器、和一个或多个可编程包转发专用集成电路(ASIC)。交换结构36提供用于在PFE 52之间转发到来的数据包的高速互连,以便于网络上的传输。
路由单元30提供执行路由器12B的控制平面功能的各种协议的操作环境。例如,后台进程38除其他功能外,还包括运行网络管理软件、执行路由协议从而与对等路由器通信、保持和更新一个或多个路由表、以及产生用于到PFE52的安装的一个或多个转发表的用户级进程。在图2中所示的示例中,后台进程38包括路由协议(RP)后台进程40、管理(MGMT)后台进程42、和虚拟机(VM)代理18。在其他的实施方式中,后台进程38可以包括其他后台进程或软件模块,例如机架后台进程、配置后台进程、和设备控制后台进程。
后台进程38在内核32上工作并与内核32交互,其为用户级进程提供运行时间操作环境。内核32可以包括,例如,诸如Linux或伯克利软件套件(BSD)这样的UNIX操作系统衍生物,。一般地,内核32对应于特定版本的网络操作系统。内核32提供库和驱动程序,后台进程38通过库和驱动程序可以与基础系统进行交互。内核32包含内核级库,例如,套接字库,后台进程38和其他用户级进程或用户级库通过套接字库可以与PFE 52进行交互。
路由协议后台进程40执行一个或多个内部和/或外部路由协议来与其他网络设备交换路由信息,将接收的信息存储在路由信息44中、和将提取的转发信息存储在转发信息46中。路由协议后台进程42将转发平面配置成实施包转发服务、增加/修改/删除路由路线、以及通过将表示转发信息46的转发结构安装在PFE 52中修改包转发路径。
示出图2中所示的路由器12B的架构仅仅是为了进行说明。本发明不限于该架构。在其他的实施方式中,路由器12B可以通过多种方式配置。在一个实施方式中,例如,路由单元30的某些功能可以分配在PFE 52内。路由单元30的操作环境可以单独以软件或硬件实施,或可以作为软件、硬件、或固件的组合实施。例如,路由单元30可以包括执行软件指令的一个或多个处理器。在该情况中,路由单元30可以包括在操作系统上执行的各种软件模块或后台进程,例如,后台进程38,并且可以包括用于存储可执行指令的永久性计算机可读存储设备,例如计算机存储器或硬盘驱动器。
路由单元30的硬件环境可以包括执行程序指令从而同时执行内核32和路由单元30的操作环境的一个或多个处理器(图2中未示出)。处理器可以包括一个或多个通用或专用处理器,例如数字信号处理器(DSP)、专用集成电路(ASIC)、场可编程门阵列(FPGA)、或任何其他等价的逻辑设备。因此,本文中所使用的术语“处理器”或“控制器”是指可操作地执行本文中所描述的技术的任何一个或多个前述结构或任何其他结构。
计算机可读存储介质可以包括随机存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(RPROM)、电可擦除可编程只读存储器(EEPROM)、非易失性随机存取存储器(NVRAM)、闪存、硬盘驱动器、CD-ROM、软盘、盒式磁带、固态驱动器、磁介质、光学介质、或其他计算机可读介质。计算机可读介质可以利用对应于路由器12B的各个方面(例如,协议)的指令编码。在某些示例中,对于这些方面,路由单元30从存储器检索和执行指令。
本公开的技术能够使路由器12B将管理任务、路由协议更新、或其他任务分配给在计算云10运行的虚拟机。举一个实例来说,路由器12B使用OSPF聚集来自可用路由器的链路状态信息并构造网络的拓补图。当路由器12B执行OSPF更新网络拓补而不实施本公开的任务分配技术时,在更新期间可以消耗路由器12B的大多数(例如,百分之八十)计算资源。然而,通过将至少一部分OSPF计算分配给一个或多个虚拟机16(如图1中所示),使用计算云10的计算资源,从而降低更新网络拓补所需的路由器12B的计算资源量。
为了更新网络拓补,通过与网络中的其他路由器交换链路状态通告消息,路由器12B周期性地识别路由器12B直接连接的所有其他节点(即,路由器)(例如,图1中所示的路由器12A、12C、和12D)。利用所接收的整个链路状态消息组,路由器12B通过对链路状态消息集合进行迭代产生网络图。对于每个接收的链路状态消息,路由器12B根据发送消息的路由器与该消息中被指示为是发送节点的相邻节点的所有路由器之间的网络图建立链路。
代替路由处理后台进程40本身对链路状态消息集合进行迭代并在路由单元30内生成图,虚拟机代理18识别计算云10中可以生成网络图的的虚拟机(例如,图1中所示的虚拟机16B)。在识别虚拟机的过程中,虚拟机代理发送消息到虚拟机管理器14(图1)请求对任务的协助。如果计算云10具有充足的可用计算资源,那么虚拟机管理器14发送表明计算云10可以有助于任务的响应。然后,虚拟机代理18发送包括在路由器12B运行的操作系统版本(例如,在路由单元30运行的内核32版本)的任务请求消息和有关该任务的特定信息(例如,根据OSPF更新网络拓补)。虚拟机管理器14确定任何虚拟机16是否合适地配置为执行具体的任务。如果存在合适配置的至少一个虚拟机16,那么虚拟机管理器14在虚拟机(例如,虚拟机16B)处建立套接字,并将响应消息发送到包括套接字信息的虚拟机代理18。
虚拟机代理18利用从虚拟机管理器14接收的套接字信息与每个已识别的虚拟机16交换消息。也就是说,一旦建立套接字,虚拟机代理18就可以与一个或多个虚拟机16进行通信,而无需通过虚拟机管理器14发送消息(例如,不需要虚拟机管理器14作为中继运行。继续进行根据OSPF更新网络图的示例,虚拟机代理18利用套接字将接收的链路状态消息发送到虚拟机16B。虚拟机16B对从虚拟机代理14接收的链路状态消息进行迭代并生成网络图。
一旦生成完整的图,虚拟机16B就计算路由器12B与网络中其他路由器之间的最短路径。在一个示例中,虚拟机代理18从虚拟机16B接收完整的图。通常,路由单元30,以及更具体地,路由协议后台进程40,将算法(例如,Dijkstra算法)应用于网络图,从而确定从路由器12B到网络中每个其他路由器的最短路径。根据本公开的技术,虚拟机代理18利用套接字将完整的网络图发送到虚拟机16B并请求虚拟机16B计算最短路径,因而释放路由器12B的计算资源来执行其他功能,例如包转发。在另一个示例中,虚拟机16B不发送完整的网络图到虚拟机代理18和/或不等待来自虚拟机代理18的额外指令,作为替代,一旦网络图生成进程完成,就自动地开始确定最短路径。为了计算最短路径,虚拟机16B生成含有网络中的所有路由器的树结构,并且将该树结构组织为:从路由器12B到任何其他路由器的最短路径由从树的根部(即,路由器12B)到期望的路由器进行遍历所得到的节点列表所指示。在已识别的虚拟机16计算最短路径之后,虚拟机16B将最短路径的完整树发送到虚拟机代理18。虚拟机代理18从虚拟机16B接收完整的树和将其传递到路由协议后台进程40。路由协议后台进程更新路由信息并基于所完成的树转发信息。
尽管关于根据OSPF计算网络图并确定到网络中其他路由器的最短路径描述本技术,但是本公开的技术可以应用于任何管理或其他任务,包括根据其他路由协议(例如,RGP、BGP、IS-IS、生成树协议等等)更新路由信息和执行各种管理任务。优选地,诸如在转发包期间确定下一个中继段这样的延迟敏感的任务将不分配给计算云10中的一个或多个虚拟机16。然而,可预期的是任何任务可以由通信地或可操作地耦接至路由器12B的一个或多个虚拟机16执行。
图3是根据本公开的一个方面示出示例计算云的框图。计算云10包括虚拟机管理器14和虚拟机16A-16N。在某些实施方式中,虚拟机管理器14是在一个虚拟机16内执行的软件进程。计算云10的计算资源可以包括服务器计算机、台式计算机、便携式计算机、或可以运行网络操作系统并执行与网络设备相关联的一个或多个任务的任何其他设备。在某些实例中,两个以上的虚拟机16可以至少部分地利用相同的计算资源。例如,虚拟机16A和16B可以同时在单个服务器上运行。单个虚拟机16可以在两个以上的不同的计算资源之间运行。举例来说,多个普通的成品计算机可以配置为集群。计算机集群可以运行单个虚拟机16,在支持多个虚拟机的同时,提供额外的冗余和可伸缩性。一般地,每个虚拟机16运行网络操作系统的实例、网络设备后台进程的实例(例如,管理后台进程)、和/或路由协议的实例(例如,OSPF、BGP、IS-IS等等)。
虚拟机管理器14包括CPU 60和存储器62。虚拟机管理器14的CPU60被配置为执行存储在存储器62中的指令。存储器62可以包含一个或多个计算机可读介质,例如永久性计算机可读存储介质。这样的介质的示例包括RAM、ROM、NVRAM、EEPROM、闪存、和其他计算机可读存储介质。存储器62包括配置(CONFIG)数据64和虚拟机管理模块(VM MGMT MODULE)66。配置数据64是被配置为存储虚拟机16的配置信息的数据存储库的一个示例,包括虚拟机16中的每一个虚拟机的性能和配置。
在某些实施方式中,VM管理模块66是CPU 60可执行的软件模块。一般地,当建立和终止每个虚拟机16时,VM管理模块66管理虚拟机16的注册。换句话说,VM管理模块66利用每个虚拟机16的配置信息更新配置数据64。例如,当实例化虚拟机16A时,虚拟机16A向虚拟机管理器14注册(例如,通过发送包括虚拟机16A上线的指示和虚拟机16A的配置和/或性能的消息)。VM管理模块66处理虚拟机注册并将性能(例如,在虚拟机运行的操作系统版本和在虚拟机执行的软件进程等等)存储在配置数据64中。响应一个正在终止(例如,关闭)的虚拟机16,VM管理模块66从配置数据64中移除特定虚拟机16的配置信息。
响应于虚拟机管理器14从网络设备(例如,图1的路由器12B)接收请求,VM管理模块66查询配置数据64以确定当前是否正在运行任何虚拟机。如果配置数据64中不存在虚拟机16的配置信息(即,当前没有虚拟机正在运行),那么VM管理模块66生成表明计算云10不能对路由器12B执行任务提供帮助的消息。如果配置数据64中存在至少一个虚拟机16的配置信息(即,至少一个虚拟机16正在运行),那么VM管理模块66生成表明计算云10具有可用计算资源和能够协助路由器12B执行任务的消息。在某些示例中,即使未运行虚拟机16,如果计算云10具有可用的计算资源,那么VM管理模块66生成表明计算云10可以协助路由器12B执行任务的消息。
在计算云10可以协助路由器12B执行任务的实例中,虚拟机管理器14从路由器12B接收特定的任务请求。特定的任务请求包括有关路由器12B正在请求协助的任务的细节和在路由器12B中运行的特定的网络操作系统版本。VM管理模块66查询配置数据64以确定是否有任何的虚拟机16被配置有与路由器12B所运行的网络操作系统相同版本的网络操作系统和完成所请求任务所需的合适进程、后台进程、或其他性能。
如果没有被合适地配置的虚拟机16或如果当前没有虚拟机16正在运行,那么VM管理模块66可以使一个新的虚拟机16被实例化为具有执行特定任务所需的配置。一般地,根据需要,虚拟机16产生和分布在计算云10的计算资源之间。两个以上的虚拟机16可以分别支持特定功能的实例(例如,OSPF、接口控制等等)。因此,路由器12B可以各自利用个体的虚拟机16访问多个控制平面、数据平面、和管理平面。
如果存在满足特定任务需求的至少一个虚拟机16(例如,虚拟机16A),那么VM管理模块66建立虚拟机16A的套接字。在存在满足特定任务需求的两个以上的不同的虚拟机16(例如,虚拟机16A和16B)的实例中,虚拟机管理模块66可以在虚拟机16A和16B建立套接字,并且将所有套接字信息传递回虚拟机代理18。如图3中所示,虚拟机16A包括链路状态路由协议70和路由协议(RP)后台进程72。相似地,虚拟机16B包括链路状态路由协议80和路由协议(RP)后台进程82。在图3的示例中,虚拟机16A和16B可以同时协助链路状态路由协议计算(例如,OSPF、IS-IS等等)。
在识别到两个以上的虚拟机16(例如,虚拟机16A和16B)和特定任务正在执行OSPF计算的实例中,每个虚拟机可以接收一部分所接收的链路状态消息,以使虚拟机16A对第一部分的链路状态消息进行迭代并返回网络的局部图,而虚拟机16B对第二部分的链路状态消息进行迭代并返回网络的另一个局部图。在某些实例中,虚拟机16A和16B中的任一个都可以与请求一起从虚拟机代理18(图2)接收两个局部图并基于这两个局部图生成完整图。相似地,虚拟机16A和16B中的每个虚拟机可以执行最短路径计算的一部分。
在某些实施方式中,计算云10支持开放式虚拟机主机基础结构集成第三方虚拟机。在这些实施方式中,第三方虚拟机不是本地网络操作系统的一部分。为了能够在虚拟机16和第三方虚拟机之间进行通信,第三方虚拟机被视为单独的设备,利用应用程序编程接口(API)与本地虚拟机进行通信。第三方虚拟机可以提供本地虚拟机不支持的额外功能。
图4是根据本公开的一个方面示出在虚拟机之间分配网络设备任务的示例过程的流程图。为了简洁起见,将关于图1的系统2和图2的路由器12B描述图4中所示的进程。尽管下面关于路由器和路由协议进行描述,但是本公开的技术的其他实施方式可以使用其他网络设备和其他进程、后台进程、或网络协议。
路由器12B确定需要完成的一个或多个任务,虚拟机代理18发送请求到计算云10确定计算云10是否能够执行至少一部分任务(100)。在某些实施方式中,路由器12B和虚拟机管理器14利用两级设置进程来建立路由器12B和一个或多个虚拟机16之间的连接。在这些实施方式中,初始请求消息是确定计算云10是否具有任何可用计算资源的请求。虚拟机管理器14接收请求(102)和确定当前是否有任何虚拟机16正在运行和/或虚拟机管理器14是否可以实例化计算云10内的任何其他的虚拟机。虚拟机管理器14向路由器12B发送表明在计算云10内是否有可用资源的响应消息(104)。
虚拟机代理18从虚拟机管理器14接收响应消息(106)。如果响应消息表明计算云10中不存在可用的计算资源,那么虚拟机代理18终止设置过程并且路由器12B执行任务。如果响应消息表明计算云10中存在可用计算资源,那么虚拟机代理18生成包括在路由器12B运行的网络操作系统版本和所请求任务的细节的第二请求消息。在路由器12B和虚拟机管理器14利用单步设置进程建立路由器12B与一个或多个虚拟机16之间的连接的实施方式中,从路由器12B发送到虚拟机管理器14的初始请求消息对应于第二请求消息。也就是说,在这些实施方式中,路由器12B可以跳过在确定计算云10是否具有充足可用的计算资源帮助执行任务的过程中使用的初始请求消息。虚拟机代理18将第二请求消息发送到虚拟机管理器14(108)。
虚拟机管理器14接收第二请求消息(110)和识别具有相同版本的网络操作系统且能够执行任务的一个或多个虚拟机16(112)。一个或多个当前运行的虚拟机16可以被配置有执行任务所需版本的网络操作系统和所需的进程、后台进程、或其他性能。然而,如果没有虚拟机16满足第二需求消息中具体指定的需求,那么虚拟机管理器14可以实例化满足需求且可以执行所请求的任务的新的虚拟机16。响应于识别可以进行所请求任务的一个或多个虚拟机16,虚拟机管理器14在一个或多个所识别的虚拟机16中的每个虚拟机处建立套接字连接并将套接字信息发送到路由器12B(114)。
响应于接收套接字信息(116),虚拟机代理18利用套接字信息将特定的任务信息(例如,链路状态消息、配置信息等等)发送到一个或多个所识别的虚拟机16(118)。每个所识别的虚拟机16接收任务信息(120)并进行完成任务所需的操作(122)。在完成任务之后,相应的所识别的虚拟机16利用套接字将任务结果发送到虚拟机代理18。虚拟机代理18接收任务的结果(124),路由器12B应用任务的结果(例如,路由单元30基于该结果更新路由信息44)。
根据本公开的技术配置的网络设备可以包括被配置为发送和接收消息的至少一个网络接口、包括被配置为运行一个版本的网络操作系统的一个或多个处理器的路由单元、以及虚拟机代理,其中,该虚拟机代理被配置为:识别在通信耦接至该网络设备的计算云处运行的虚拟机,其中所识别的虚拟机运行所述版本的网络操作系统的实例;利用至少一个网络接口将执行任务的请求发送到虚拟机;以及利用至少一个网络接口从虚拟机接收包括执行任务的结果的任务响应,其中,路由单元被配置为基于包括在任务响应中的结果更新网络设备。
在某些示例中,虚拟机是第一虚拟机,所述版本的操作系统的实例是在第一虚拟机中运行的操作系统的第一实例,任务是第一任务,任务响应是第一任务响应。在这些示例中,虚拟机代理被配置为识别在计算云运行的第二虚拟机,其中第二虚拟机运行所述版本的网络操作系统第二实例,并且其中第一虚拟机和第二虚拟机是不同的虚拟机,将执行第二任务的请求发送到第二虚拟机,从第二虚拟机接收包括执行第二任务的结果的第二任务响应,路由单元被配置为基于第一任务响应和第二任务响应更新网络设备。
在某些实例中,第一任务是第三任务的第一部分,并且其中,第二任务是第三任务的第二部分。
在某些示例中,虚拟机代理被配置为:将对计算资源的请求发送到虚拟机管理器,其中,请求包括对在网络设备运行的网络操作系统的版本的指示和对要执行的任务的指示;从虚拟机管理器接收响应,其中,响应包括对套接字的指示,通过该套接字,虚拟机是可到达的(可直接通信的,reachable);利用套接字将任务请求发送到虚拟机;以及利用套接字从虚拟机接收任务响应。
在某些示例中,对计算资源的请求是第二请求,响应是第二响应,虚拟机代理被配置为:在发送对计算资源的第二请求之前将对于计算资源的第一请求发送到虚拟机管理器,以确定计算云是否具有可用资源执行任务;接收表明计算云是否具有可用计算资源的第一响应;基于第一响应确定计算云是否具有可用资源;以及响应于确定计算云具有可用计算资源,将对计算资源的第二请求发送到虚拟机管理器。
在某些示例中,任务与在路由单元执行的路由协议相关联,其中,路由协议是开放式最短路径优先、生成树协议、边界网关协议、中间系统对中间系统协议、虚拟专用局域网服务、和资源预留协议中的一个。
在某些实例中,存储器被配置为存储配置信息、转发信息、和路由信息中的至少一个,路由单元基于包括在任务响应中的结果更新配置信息、转发信息、和路由信息中的至少一个。
在某些示例中,虚拟机是在计算云处运行的多个虚拟机中的一个,其中,多个虚拟机的至少一个子集被配置为执行路由协议、接口控制进程、管理进程、和机架进程中的一个或多个。
本公开中描述的技术可以至少部分地被实现为硬件、软件、固件或其组合。例如,所描述的技术的各种方面可以被实现在一个或多个处理器中,包括一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或任何其他等效集成或分布式逻辑电路,以及这些部件的任意组合。术语“处理器”或“处理电路”一般可以指任何前述的逻辑电路、单独或与其他逻辑电路组合、或任何其他等效电路。包括硬件的控制单元还可以执行一个或多个本公开的技术。
这样的硬件、软件、和固件可以实现在相同设备内或单独设备内以支持本公开中描述的各种操作和功能。此外,任何所描述的单元、模块、或部件可以实施在一起或单独地作为离散但可共用的逻辑设备。描述作为模块或单元的不同特征是为了突出不同的功能方面,不一定意味着这些模块或单元必须通过单独的硬件或软件部件实现。相反,与一个或多个模块或单元相关联的功能可以由单独的硬件或软件部件执行,或集成在共同的或单独的硬件或软件部件内。
本公开中描述的技术还可以体现或编码在含有指令的计算机可读介质上,例如计算机可读存储介质。例如,当执行指令时,内嵌或编码在计算机可读介质中的指令可以使得可编程处理器、或其他处理器执行方法。计算机可读存储介质可以包括随机存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(RPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、硬盘驱动器、CD-ROM、软盘、盒式磁带、磁介质、光学介质、或其他计算机可读存储介质。应当理解,术语“计算机可读存储介质”是指物理存储介质、(例如,非易失性介质)而非信号、载波、或其他传输介质。
已经描述了各种实施方式。这些实施方式和其他实施方式都在所附权利要求的保护范围内。

Claims (16)

1.一种分布式处理网络设备任务的方法,所述方法包括:
由在计算系统处运行的虚拟机管理器从在网络设备处运行的虚拟机代理接收对所述计算系统的计算资源的请求;
由所述虚拟机管理器确定所述计算系统是否具有至少一个可用的计算资源;以及
响应于确定所述计算系统具有至少一个可用的计算资源:
由所述虚拟机管理器向所述网络设备发送表示所述计算系统具有所述至少一个可用的计算资源的响应;
由所述虚拟机管理器接收对特定计算资源的请求,所述请求包括在所述网络设备处运行的操作系统的版本及所述网络设备正请求所述计算系统执行的任务;
由所述虚拟机管理器基于在所述网络设备处运行的所述操作系统的版本,将在所述计算系统处运行的多个虚拟机之中的至少一个虚拟机识别为目标虚拟机,其中,所述目标虚拟机运行所述网络设备的适当版本的所述操作系统并且具有可用的计算资源来执行所述任务;以及
由所述虚拟机管理器向所述网络设备发送针对特定请求的响应,所述响应包括针对由所述虚拟机管理器识别的所述目标虚拟机的套接字连接信息。
2.根据权利要求1所述的方法,进一步包括:
在发送针对特定请求的响应之前:
由所述虚拟机管理器从所述虚拟机中接收包括所述虚拟机上线的指示、所述虚拟机的配置信息和所述虚拟机的性能的消息;以及
由所述虚拟机管理器将所述虚拟机的配置信息和所述虚拟机的性能存储在数据存储库中,
其中,识别所述虚拟机包括:
基于由所述虚拟机管理器存储的所述虚拟机的配置信息和所述虚拟机的性能来确定所述虚拟机是否具有相同版本的所述操作系统并且是否能够执行所述任务;以及
响应于确定所述虚拟机具有相同版本的所述操作系统并且能够执行所述任务,将所述虚拟机识别为所述目标虚拟机。
3.根据权利要求2所述的方法,进一步包括:
响应于所述目标虚拟机终止运行:
由所述虚拟机管理器从所述数据存储库中移除所述虚拟机的配置信息和所述虚拟机的性能。
4.根据权利要求1所述的方法,其中,在当前没有虚拟机在所述计算系统处运行时,由所述虚拟机管理器确定所述计算系统具有所述至少一个可用的计算资源,所述方法进一步包括:
响应于接收对所述特定计算资源的请求,由所述虚拟机管理器开始所述虚拟机在所述计算系统处的运行。
5.根据权利要求1所述的方法,进一步包括:
响应于确定所述计算系统不具有至少一个可用的计算资源,由所述虚拟机管理器向所述网络设备发送表示所述计算系统不能对所述网络设备提供帮助的消息。
6.根据权利要求1所述的方法,
其中,将所述至少一个虚拟机识别为所述目标虚拟机包括:将两个或更多个虚拟机识别为两个或更多个目标虚拟机,其中,所述两个或更多个目标虚拟机均与所述网络设备运行相同版本的所述操作系统,并且其中,所述两个或更多个目标虚拟机均被配置为对至少一部分所述任务提供帮助,
所述方法进一步包括:
建立到所述两个或更多个目标虚拟机中的每一个的相应套接字,
其中,所述响应包括针对所述两个或更多个目标虚拟机中的每一个的相应套接字连接信息。
7.根据权利要求1至6中任一项所述的方法,其中,所述任务与在所述网络设备处执行的路由协议相关联,并且其中,所述路由协议是开放式最短路径优先、生成树协议、边界网关协议、中间系统对中间系统协议和虚拟专用局域网服务中的一个。
8.根据权利要求1至6中任一项所述的方法,其中,所述多个虚拟机的至少一个子集被配置为执行路由协议、接口控制进程、管理进程和机架进程中的一个或多个。
9.一种虚拟机管理器,包括:
一个或多个处理器;和
存储器,存储能被所述一个或多个处理器运行为如下的虚拟机管理模块:
接收对计算系统的特定计算资源的请求,所述请求包括在网络设备处运行的操作系统的版本和所述网络设备正请求所述计算系统执行的任务;
确定所述计算系统是否具有至少一个可用的计算资源;以及
响应于确定所述计算系统具有至少一个可用的计算资源:
基于在所述网络设备处运行的所述操作系统的版本,将在所述计算系统处运行的多个虚拟机之中的至少一个虚拟机识别为目标虚拟机,其中,所述目标虚拟机运行所述网络设备的适当版本的所述操作系统并且具有可用的计算资源来执行所述任务;以及
向所述网络设备发送针对特定请求的响应,所述响应包括针对所述目标虚拟机的套接字连接信息。
10.根据权利要求9所述的虚拟机管理器,其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:
在发送针对特定请求的响应之前:
从所述虚拟机中接收包括所述虚拟机上线的指示、所述虚拟机的配置信息和所述虚拟机的性能的消息;以及
将所述虚拟机的配置信息和所述虚拟机的性能存储在所述存储器中;
基于所述存储器中存储的所述虚拟机的配置信息和所述虚拟机的性能来确定所述虚拟机是否具有相同版本的所述操作系统并且是否能够执行所述任务;以及
响应于确定所述虚拟机具有相同版本的所述操作系统并且能够执行所述任务,将所述虚拟机识别为所述目标虚拟机。
11.根据权利要求10所述的虚拟机管理器,其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:
响应于所述目标虚拟机终止运行,从所述存储器中移除所述虚拟机的配置信息和所述虚拟机的性能。
12.根据权利要求9所述的虚拟机管理器,其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:
在当前没有虚拟机在所述计算系统处运行时,确定所述计算系统具有所述至少一个可用的计算资源;以及
响应于接收对计算资源的请求,开始所述虚拟机在所述计算系统处的运行。
13.根据权利要求9所述的虚拟机管理器,其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:
响应于确定所述计算系统不具有至少一个可用的计算资源,向所述网络设备发送表示所述计算系统不能对所述网络设备提供帮助的消息。
14.根据权利要求9所述的虚拟机管理器,其中,所述虚拟机管理模块进一步能被所述一个或多个处理器运行为如下:
将两个或更多个虚拟机识别为两个或更多个目标虚拟机,其中,所述两个或更多个目标虚拟机均与所述网络设备运行相同版本的所述操作系统,并且其中,所述两个或更多个目标虚拟机均被配置为对至少一部分所述任务提供帮助;以及
建立到所述两个或更多个目标虚拟机中的每一个的相应套接字,
其中,所述响应包括针对所述两个或更多个目标虚拟机中的每一个的相应套接字连接信息。
15.根据权利要求9至14中任一项所述的虚拟机管理器,其中,所述任务与在所述网络设备处执行的路由协议相关联,并且其中,所述路由协议是开放式最短路径优先、生成树协议、边界网关协议、中间系统对中间系统协议和虚拟专用局域网服务中的一个。
16.根据权利要求9至14中任一项所述的虚拟机管理器,其中,所述多个虚拟机的至少一个子集被配置为执行路由协议、接口控制进程、管理进程和机架进程中的一个或多个。
CN201810071965.8A 2012-06-26 2013-06-24 分布式处理网络设备任务的方法与虚拟机管理器 Active CN108124018B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/533,780 US10031782B2 (en) 2012-06-26 2012-06-26 Distributed processing of network device tasks
US13/533,780 2012-06-26
CN201310253577.9A CN103516782B (zh) 2012-06-26 2013-06-24 网络设备任务的分布式处理

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201310253577.9A Division CN103516782B (zh) 2012-06-26 2013-06-24 网络设备任务的分布式处理

Publications (2)

Publication Number Publication Date
CN108124018A CN108124018A (zh) 2018-06-05
CN108124018B true CN108124018B (zh) 2020-07-28

Family

ID=48463733

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201310253577.9A Active CN103516782B (zh) 2012-06-26 2013-06-24 网络设备任务的分布式处理
CN201810071965.8A Active CN108124018B (zh) 2012-06-26 2013-06-24 分布式处理网络设备任务的方法与虚拟机管理器

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201310253577.9A Active CN103516782B (zh) 2012-06-26 2013-06-24 网络设备任务的分布式处理

Country Status (3)

Country Link
US (2) US10031782B2 (zh)
EP (1) EP2680144A3 (zh)
CN (2) CN103516782B (zh)

Families Citing this family (157)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US8321568B2 (en) 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8397073B1 (en) 2009-09-04 2013-03-12 Amazon Technologies, Inc. Managing secure content in a content delivery network
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8452874B2 (en) 2010-11-22 2013-05-28 Amazon Technologies, Inc. Request routing processing
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US10031782B2 (en) 2012-06-26 2018-07-24 Juniper Networks, Inc. Distributed processing of network device tasks
US9588788B1 (en) * 2012-08-23 2017-03-07 Amazon Technologies, Inc. Optimized communication between program components executing in virtual machines
US9912517B1 (en) 2012-08-23 2018-03-06 Amazon Technologies, Inc. Optimized deployment and execution of programs in a distributed computing environment
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US9582132B1 (en) * 2012-11-20 2017-02-28 BoomerSurf LLC System for interactive help
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US8953439B1 (en) * 2012-12-31 2015-02-10 Juniper Networks, Inc. Separation of control plane functions using virtual machines in network device
US10749711B2 (en) 2013-07-10 2020-08-18 Nicira, Inc. Network-link method useful for a last-mile connectivity in an edge-gateway multipath system
US10454714B2 (en) 2013-07-10 2019-10-22 Nicira, Inc. Method and system of overlay flow control
US20150100670A1 (en) * 2013-10-04 2015-04-09 International Business Machines Corporation Transporting multi-destination networking traffic by sending repetitive unicast
US10048974B1 (en) 2014-09-30 2018-08-14 Amazon Technologies, Inc. Message-based computation request scheduling
US9678773B1 (en) 2014-09-30 2017-06-13 Amazon Technologies, Inc. Low latency computational capacity provisioning
US9323556B2 (en) 2014-09-30 2016-04-26 Amazon Technologies, Inc. Programmatic event detection and message generation for requests to execute program code
US9146764B1 (en) 2014-09-30 2015-09-29 Amazon Technologies, Inc. Processing event messages for user requests to execute program code
US9600312B2 (en) 2014-09-30 2017-03-21 Amazon Technologies, Inc. Threading as a service
US9830193B1 (en) 2014-09-30 2017-11-28 Amazon Technologies, Inc. Automatic management of low latency computational capacity
CN104270464A (zh) * 2014-10-22 2015-01-07 西安未来国际信息股份有限公司 一种云计算虚拟化网络架构及优化方法
US10516733B2 (en) 2014-11-25 2019-12-24 Auth0, Inc. Multi-tenancy via code encapsulated in server requests
US9537788B2 (en) 2014-12-05 2017-01-03 Amazon Technologies, Inc. Automatic determination of resource sizing
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US9588790B1 (en) 2015-02-04 2017-03-07 Amazon Technologies, Inc. Stateful virtual compute system
US9733967B2 (en) 2015-02-04 2017-08-15 Amazon Technologies, Inc. Security protocols for low latency execution of program code
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US20160285970A1 (en) * 2015-03-27 2016-09-29 International Business Machines Corporation Network communication between virtual machine applications via direct memory access
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US10135789B2 (en) 2015-04-13 2018-11-20 Nicira, Inc. Method and system of establishing a virtual private network in a cloud service for branch networking
US10425382B2 (en) 2015-04-13 2019-09-24 Nicira, Inc. Method and system of a cloud-based multipath routing protocol
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
CN108139920A (zh) * 2015-10-02 2018-06-08 Idac控股公司 在动态条件及变约束下用于基于信息中心联网(icn)的代理服务器管理的方法、设备及系统
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
US10067801B1 (en) 2015-12-21 2018-09-04 Amazon Technologies, Inc. Acquisition and maintenance of compute capacity
US9910713B2 (en) 2015-12-21 2018-03-06 Amazon Technologies, Inc. Code execution request routing
US11132213B1 (en) 2016-03-30 2021-09-28 Amazon Technologies, Inc. Dependency-based process of pre-existing data sets at an on demand code execution environment
US10212035B2 (en) 2016-04-27 2019-02-19 At&T Intellectual Property I, L.P. Message flow management for virtual networks
US11169706B2 (en) 2016-05-26 2021-11-09 Nutanix, Inc. Rebalancing storage I/O workloads by storage controller selection and redirection
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10102040B2 (en) 2016-06-29 2018-10-16 Amazon Technologies, Inc Adjusting variable limit on concurrent code executions
CN107733801B (zh) * 2016-08-11 2021-01-29 华为技术有限公司 接收和发送报文的方法及设备
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10298491B2 (en) * 2016-08-25 2019-05-21 Cisco Technology, Inc. Efficient path detection and validation between endpoints in large datacenters
US10505961B2 (en) 2016-10-05 2019-12-10 Amazon Technologies, Inc. Digitally signed network address
US10095550B2 (en) 2016-10-19 2018-10-09 International Business Machines Corporation Performance-based reallocating of logical processing units to sockets of a computer system
CN107979630B (zh) * 2016-10-25 2020-04-03 新华三技术有限公司 一种信息获取方法及装置
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10831549B1 (en) * 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US20200036624A1 (en) 2017-01-31 2020-01-30 The Mode Group High performance software-defined core network
US10992558B1 (en) 2017-11-06 2021-04-27 Vmware, Inc. Method and apparatus for distributed data network traffic optimization
US10992568B2 (en) * 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US11706127B2 (en) 2017-01-31 2023-07-18 Vmware, Inc. High performance software-defined core network
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US11252079B2 (en) 2017-01-31 2022-02-15 Vmware, Inc. High performance software-defined core network
US11121962B2 (en) 2017-01-31 2021-09-14 Vmware, Inc. High performance software-defined core network
US10778528B2 (en) 2017-02-11 2020-09-15 Nicira, Inc. Method and system of connecting to a multipath hub in a cluster
US10979328B2 (en) * 2017-03-31 2021-04-13 Intel Corporation Resource monitoring
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
US10476817B2 (en) * 2017-05-31 2019-11-12 Juniper Networks, Inc. Transport LSP setup using selected fabric path between virtual nodes
US10659352B2 (en) 2017-05-31 2020-05-19 Juniper Networks, Inc. Signaling private context forwarding tables for a private forwarding layer
US10291554B1 (en) * 2017-06-02 2019-05-14 Juniper Networks, Inc. Hybrid network function virtualization
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
US10725826B1 (en) * 2017-06-21 2020-07-28 Amazon Technologies, Inc. Serializing duration-limited task executions in an on demand code execution system
US10445140B1 (en) * 2017-06-21 2019-10-15 Amazon Technologies, Inc. Serializing duration-limited task executions in an on demand code execution system
US10523539B2 (en) 2017-06-22 2019-12-31 Nicira, Inc. Method and system of resiliency in cloud-delivered SD-WAN
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US10686625B2 (en) 2017-10-02 2020-06-16 Vmware, Inc. Defining and distributing routes for a virtual network
US10999100B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider
US10999165B2 (en) 2017-10-02 2021-05-04 Vmware, Inc. Three tiers of SaaS providers for deploying compute and network infrastructure in the public cloud
US11089111B2 (en) 2017-10-02 2021-08-10 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US11223514B2 (en) 2017-11-09 2022-01-11 Nicira, Inc. Method and system of a dynamic high-availability mode based on current wide area network connectivity
US10831898B1 (en) 2018-02-05 2020-11-10 Amazon Technologies, Inc. Detecting privilege escalations in code including cross-service calls
US10725752B1 (en) 2018-02-13 2020-07-28 Amazon Technologies, Inc. Dependency handling in an on-demand network code execution system
US11048538B2 (en) * 2018-02-26 2021-06-29 Amazon Technologies, Inc. Autonomous cell-based control plane for scalable virtualized computing
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
US11409569B2 (en) * 2018-03-29 2022-08-09 Xilinx, Inc. Data processing system
US10853115B2 (en) 2018-06-25 2020-12-01 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
US10649749B1 (en) 2018-06-26 2020-05-12 Amazon Technologies, Inc. Cross-environment application of tracing information for improved code execution
US11146569B1 (en) 2018-06-28 2021-10-12 Amazon Technologies, Inc. Escalation-resistant secure network services using request-scoped authentication information
US10949237B2 (en) 2018-06-29 2021-03-16 Amazon Technologies, Inc. Operating system customization in an on-demand network code execution system
CN110728363B (zh) * 2018-06-29 2022-11-18 华为技术有限公司 任务处理方法和装置
US11099870B1 (en) 2018-07-25 2021-08-24 Amazon Technologies, Inc. Reducing execution times in an on-demand network code execution system using saved machine states
GB2576944A (en) * 2018-09-07 2020-03-11 Metaswitch Networks Ltd Packet processing
US11099917B2 (en) 2018-09-27 2021-08-24 Amazon Technologies, Inc. Efficient state maintenance for execution environments in an on-demand code execution system
US11243953B2 (en) 2018-09-27 2022-02-08 Amazon Technologies, Inc. Mapreduce implementation in an on-demand network code execution system and stream data processing system
US11343133B2 (en) * 2018-10-04 2022-05-24 T-Mobile Usa, Inc. Virtual SNMP trap receiver
US10922142B2 (en) 2018-10-31 2021-02-16 Nutanix, Inc. Multi-stage IOPS allocation
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11943093B1 (en) 2018-11-20 2024-03-26 Amazon Technologies, Inc. Network connection recovery after virtual machine transition in an on-demand network code execution system
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
US10884812B2 (en) 2018-12-13 2021-01-05 Amazon Technologies, Inc. Performance-based hardware emulation in an on-demand network code execution system
CN111381956B (zh) * 2018-12-28 2024-02-27 杭州海康威视数字技术股份有限公司 一种任务处理的方法、装置及云分析系统
US10872069B2 (en) * 2019-01-22 2020-12-22 Commvault Systems, Inc. File indexing for virtual machine backups in a data storage management system
US11010188B1 (en) 2019-02-05 2021-05-18 Amazon Technologies, Inc. Simulated data object storage using on-demand computation of data objects
US11861386B1 (en) 2019-03-22 2024-01-02 Amazon Technologies, Inc. Application gateways in an on-demand network code execution system
US11418322B2 (en) 2019-03-26 2022-08-16 International Business Machines Corporation Information management in a decentralized database including a fast path service
US11398895B2 (en) * 2019-03-26 2022-07-26 International Business Machines Corporation Information management in a decentralized database including a fast path service
US11321185B2 (en) * 2019-04-30 2022-05-03 EMC IP Holding Company LLC Method to detect and exclude orphaned virtual machines from backup
US11095528B2 (en) * 2019-05-09 2021-08-17 International Business Machines Corporation Identity network onboarding based on confidence scores
US11119809B1 (en) 2019-06-20 2021-09-14 Amazon Technologies, Inc. Virtualization-based transaction handling in an on-demand network code execution system
US11190609B2 (en) 2019-06-28 2021-11-30 Amazon Technologies, Inc. Connection pooling for scalable network services
US11115404B2 (en) 2019-06-28 2021-09-07 Amazon Technologies, Inc. Facilitating service connections in serverless code executions
US11159528B2 (en) 2019-06-28 2021-10-26 Amazon Technologies, Inc. Authentication to network-services using hosted authentication information
US10999137B2 (en) 2019-08-27 2021-05-04 Vmware, Inc. Providing recommendations for implementing virtual networks
CN112491940B (zh) * 2019-09-12 2024-05-24 北京京东振世信息技术有限公司 代理服务器的请求转发方法及装置、存储介质及电子设备
CN112637088B (zh) * 2019-09-24 2023-06-23 阿里巴巴集团控股有限公司 网络系统、网络处理方法和装置、电子设备以及计算机可读存储介质
US11044190B2 (en) 2019-10-28 2021-06-22 Vmware, Inc. Managing forwarding elements at edge nodes connected to a virtual network
US11119826B2 (en) 2019-11-27 2021-09-14 Amazon Technologies, Inc. Serverless call distribution to implement spillover while avoiding cold starts
US11489783B2 (en) 2019-12-12 2022-11-01 Vmware, Inc. Performing deep packet inspection in a software defined wide area network
US11394640B2 (en) 2019-12-12 2022-07-19 Vmware, Inc. Collecting and analyzing data regarding flows associated with DPI parameters
US11606712B2 (en) 2020-01-24 2023-03-14 Vmware, Inc. Dynamically assigning service classes for a QOS aware network link
US11714682B1 (en) 2020-03-03 2023-08-01 Amazon Technologies, Inc. Reclaiming computing resources in an on-demand code execution system
US11188391B1 (en) 2020-03-11 2021-11-30 Amazon Technologies, Inc. Allocating resources to on-demand code executions under scarcity conditions
US11775640B1 (en) 2020-03-30 2023-10-03 Amazon Technologies, Inc. Resource utilization-based malicious task detection in an on-demand code execution system
US11245641B2 (en) 2020-07-02 2022-02-08 Vmware, Inc. Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN
US11363124B2 (en) 2020-07-30 2022-06-14 Vmware, Inc. Zero copy socket splicing
US11575591B2 (en) 2020-11-17 2023-02-07 Vmware, Inc. Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN
US11575600B2 (en) 2020-11-24 2023-02-07 Vmware, Inc. Tunnel-less SD-WAN
US11593270B1 (en) 2020-11-25 2023-02-28 Amazon Technologies, Inc. Fast distributed caching using erasure coded object parts
US11550713B1 (en) 2020-11-25 2023-01-10 Amazon Technologies, Inc. Garbage collection in distributed systems using life cycled storage roots
US20220188171A1 (en) * 2020-12-16 2022-06-16 Marvell Asia Pte Ltd System and Method for User Devices in Cloud Computing Environment
US11929903B2 (en) 2020-12-29 2024-03-12 VMware LLC Emulating packet flows to assess network links for SD-WAN
US11792127B2 (en) 2021-01-18 2023-10-17 Vmware, Inc. Network-aware load balancing
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
US11381499B1 (en) 2021-05-03 2022-07-05 Vmware, Inc. Routing meshes for facilitating routing through an SD-WAN
US11729065B2 (en) 2021-05-06 2023-08-15 Vmware, Inc. Methods for application defined virtual network service among multiple transport in SD-WAN
US11489720B1 (en) 2021-06-18 2022-11-01 Vmware, Inc. Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics
US11388210B1 (en) 2021-06-30 2022-07-12 Amazon Technologies, Inc. Streaming analytics using a serverless compute system
US11375005B1 (en) 2021-07-24 2022-06-28 Vmware, Inc. High availability solutions for a secure access service edge application
US11943146B2 (en) 2021-10-01 2024-03-26 VMware LLC Traffic prioritization in SD-WAN
US11909815B2 (en) 2022-06-06 2024-02-20 VMware LLC Routing based on geolocation costs

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1365551A1 (en) * 2002-05-23 2003-11-26 Chiaro Networks Ltd. Highly-available OSPF routing protocol
US7133915B2 (en) * 2002-10-10 2006-11-07 International Business Machines Corporation Apparatus and method for offloading and sharing CPU and RAM utilization in a network of machines
CN101171573A (zh) * 2005-06-22 2008-04-30 思科技术公司 用于网络、块和文件输入及输出的卸载堆栈
CN101183315A (zh) * 2007-12-10 2008-05-21 华中科技大学 一种并行多处理器虚拟机系统
CN101419558A (zh) * 2008-11-13 2009-04-29 湖南大学 Cuda图形子系统虚拟化方法
US7551627B2 (en) * 2005-11-18 2009-06-23 At&T Intellecutal Property I, L.P. Offloading routing functions from network routers
US7937438B1 (en) * 2009-12-07 2011-05-03 Amazon Technologies, Inc. Using virtual networking devices to manage external connections
CN102103518A (zh) * 2011-02-23 2011-06-22 运软网络科技(上海)有限公司 一种在虚拟化环境中管理资源的系统及其实现方法
CN102110071A (zh) * 2011-03-04 2011-06-29 浪潮(北京)电子信息产业有限公司 一种虚拟机集群系统及其实现方法
CN102227718A (zh) * 2008-11-26 2011-10-26 微软公司 用于远程桌面协议的硬件加速
CN102238230A (zh) * 2010-05-07 2011-11-09 美国博通公司 用于在云计算中卸载隧道数据包的方法和系统

Family Cites Families (132)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5715174A (en) 1994-11-15 1998-02-03 Absolute Software Corporation Security apparatus and method
US6130889A (en) 1996-10-02 2000-10-10 International Business Machines Corporation Determining and maintaining hop-count for switched networks
US6266704B1 (en) 1997-05-30 2001-07-24 The United States Of America As Represented By The Secretary Of The Navy Onion routing network for securely moving data through communication networks
US6339595B1 (en) 1997-12-23 2002-01-15 Cisco Technology, Inc. Peer-model support for virtual private networks with potentially overlapping addresses
US7307990B2 (en) 1999-01-19 2007-12-11 Cisco Technology, Inc. Shared communications network employing virtual-private-network identifiers
US6594268B1 (en) 1999-03-11 2003-07-15 Lucent Technologies Inc. Adaptive routing system and method for QOS packet networks
US6701432B1 (en) 1999-04-01 2004-03-02 Netscreen Technologies, Inc. Firewall including local bus
US6775280B1 (en) 1999-04-29 2004-08-10 Cisco Technology, Inc. Methods and apparatus for routing packets using policy and network efficiency information
US6735702B1 (en) 1999-08-31 2004-05-11 Intel Corporation Method and system for diagnosing network intrusion
US7298693B1 (en) 1999-10-21 2007-11-20 Tellabs Operations, Inc. Reverse notification tree for data networks
DE60102367T2 (de) 2000-04-13 2005-02-17 Operax Ab Netzoptimierungsmethode
US7215637B1 (en) 2000-04-17 2007-05-08 Juniper Networks, Inc. Systems and methods for processing packets
US6938095B2 (en) 2000-06-28 2005-08-30 Pluris, Inc. Method and apparatus for establishing and sharing a virtual change notification list among a plurality of peer nodes
US7298704B2 (en) * 2000-07-06 2007-11-20 Lucent Technologies Inc. Dynamic path routing with service level guarantees in optical networks
DE60130844T2 (de) * 2000-08-29 2008-07-17 International Business Machines Corp. Autonomes OSPF-System mit einem in zwei Teilbereiche getrennten Hauptnetz
US7120931B1 (en) 2000-08-31 2006-10-10 Cisco Technology, Inc. System and method for generating filters based on analyzed flow data
EP1314282A4 (en) 2000-08-31 2007-09-05 Audiocodes Texas Inc METHOD OF APPLYING AGREEMENTS TO SERVICE LEVELS
US7080161B2 (en) 2000-10-17 2006-07-18 Avaya Technology Corp. Routing information exchange
US6910148B1 (en) 2000-12-07 2005-06-21 Nokia, Inc. Router and routing protocol redundancy
US6973023B1 (en) 2000-12-30 2005-12-06 Cisco Technology, Inc. Method for routing information over a network employing centralized control
US7301899B2 (en) 2001-01-31 2007-11-27 Comverse Ltd. Prevention of bandwidth congestion in a denial of service or other internet-based attack
US20020174207A1 (en) * 2001-02-28 2002-11-21 Abdella Battou Self-healing hierarchical network management system, and methods and apparatus therefor
US7136374B1 (en) 2001-03-19 2006-11-14 Juniper Networks, Inc. Transport networks supporting virtual private networks, and configuring such networks
US7139242B2 (en) 2001-03-28 2006-11-21 Proficient Networks, Inc. Methods, apparatuses and systems facilitating deployment, support and configuration of network routing policies
US7292586B2 (en) 2001-03-30 2007-11-06 Nokia Inc. Micro-programmable protocol packet parser and encapsulator
US7120118B2 (en) * 2001-10-18 2006-10-10 Intel Corporation Multi-path analysis for managing machine communications in a network
WO2003043246A1 (en) 2001-10-24 2003-05-22 Larson Mykel G System and method for transmitting and storing data using an enhanced encoding system
US7330435B2 (en) * 2001-11-29 2008-02-12 Iptivia, Inc. Method and system for topology construction and path identification in a routing domain operated according to a link state routing protocol
US7139278B2 (en) 2001-12-21 2006-11-21 Nortel Networks Limited Routing traffic in a communications network
US7184434B2 (en) 2002-03-28 2007-02-27 Tropic Networks Inc. Label distribution protocol supporting multiple classes of service in a multi protocol label switching (MPLS) network, methods and MPLS network using thereof
US7412701B1 (en) * 2002-04-22 2008-08-12 Cisco Technology, Inc. Method for network management using a virtual machine in a network device
US20030212900A1 (en) 2002-05-13 2003-11-13 Hsin-Yuo Liu Packet classifying network services
US8281400B1 (en) 2002-07-23 2012-10-02 Juniper Networks, Inc. Systems and methods for identifying sources of network attacks
US7299296B1 (en) 2002-09-18 2007-11-20 Juniper Networks, Inc. Filtering data flows based on associated forwarding tables
US7769873B1 (en) 2002-10-25 2010-08-03 Juniper Networks, Inc. Dynamically inserting filters into forwarding paths of a network device
US7467227B1 (en) 2002-12-31 2008-12-16 At&T Corp. System using policy filter decision to map data traffic to virtual networks for forwarding the traffic in a regional access network
US7382769B1 (en) 2003-02-07 2008-06-03 Juniper Networks, Inc. Automatic filtering to prevent network attacks
US8078758B1 (en) 2003-06-05 2011-12-13 Juniper Networks, Inc. Automatic configuration of source address filters within a network device
US7421487B1 (en) 2003-06-12 2008-09-02 Juniper Networks, Inc. Centralized management of quality of service (QoS) information for data flows
US7634582B2 (en) 2003-12-19 2009-12-15 Intel Corporation Method and architecture for optical networking between server and storage area networks
JP4829474B2 (ja) 2004-01-30 2011-12-07 富士通株式会社 ネットワーク制御装置およびそのパス制御方法
US7860097B1 (en) * 2004-02-13 2010-12-28 Habanero Holdings, Inc. Fabric-backplane enterprise servers with VNICs and VLANs
US7773596B1 (en) 2004-02-19 2010-08-10 Juniper Networks, Inc. Distribution of traffic flow criteria
US7606235B1 (en) 2004-06-03 2009-10-20 Juniper Networks, Inc. Constraint-based label switched path selection within a computer network
US8717899B2 (en) 2004-10-13 2014-05-06 Cisco Technology, Inc. System and method for reporting out-of-resources (OOR) conditions in a data network
US7512063B2 (en) 2004-12-14 2009-03-31 Cisco Technology, Inc. Border router protection with backup tunnel stitching in a computer network
US7567577B2 (en) * 2005-06-28 2009-07-28 Cisco Technology, Inc. Link state advertisements specifying dynamic routing metrics and associated variation metrics and selective distribution thereof
GB0517304D0 (en) * 2005-08-23 2005-10-05 Netronome Systems Inc A system and method for processing and forwarding transmitted information
US8166474B1 (en) * 2005-09-19 2012-04-24 Vmware, Inc. System and methods for implementing network traffic management for virtual and physical machines
US7937054B2 (en) 2005-12-16 2011-05-03 Honeywell International Inc. MEMS based multiband receiver architecture
US8441919B2 (en) 2006-01-18 2013-05-14 Cisco Technology, Inc. Dynamic protection against failure of a head-end node of one or more TE-LSPs
US8458753B2 (en) 2006-02-27 2013-06-04 Time Warner Cable Enterprises Llc Methods and apparatus for device capabilities discovery and utilization within a content-based network
US7814495B1 (en) * 2006-03-31 2010-10-12 V Mware, Inc. On-line replacement and changing of virtualization software
US8451846B1 (en) 2006-04-19 2013-05-28 Juniper Networks, Inc. LSP hierarchy for MPLS networks
US7613847B2 (en) * 2006-05-16 2009-11-03 Hewlett-Packard Development Company, L.P. Partially virtualizing an I/O device for use by virtual machines
US8483123B2 (en) 2006-06-30 2013-07-09 Nokia Corporation QoS request and information distribution for wireless relay networks
US7929524B2 (en) * 2006-09-29 2011-04-19 Cisco Technology, Inc. Apparatus and method to hide transit only multi-access networks in OSPF
KR100842285B1 (ko) 2006-12-08 2008-06-30 한국전자통신연구원 액세스 네트워크에서의 자원 관리 및 호 수락 제어 시스템및 그 방법
EP2115619B1 (en) * 2007-01-26 2014-08-06 Qualcomm Incorporated Communication socket state monitoring device and methods thereof
US8819676B2 (en) * 2007-10-30 2014-08-26 Vmware, Inc. Transparent memory-mapped emulation of I/O calls
US8929364B2 (en) 2007-11-06 2015-01-06 Avaya Inc. Supporting BGP based IP-VPN in a routed network
US8953486B2 (en) 2007-11-09 2015-02-10 Cisco Technology, Inc. Global auto-configuration of network devices connected to multipoint virtual connections
US7940753B2 (en) * 2007-11-29 2011-05-10 Alcatel Lucent Enhancing routing optimality in IP networks requiring path establishment
CN101960801B (zh) 2008-03-04 2014-05-21 法国电信公司 用于确定将根节点链接到多个叶节点的点到多点树的技术
GB2458154B (en) * 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
US7801137B2 (en) 2008-03-11 2010-09-21 Cisco Technology, Inc. Receiver-based construction of point-to-multipoint trees using path computation elements in a computer network
US8259584B2 (en) 2008-03-18 2012-09-04 Cisco Technology, Inc. Dynamic reroute of network traffic
US8339959B1 (en) 2008-05-20 2012-12-25 Juniper Networks, Inc. Streamlined packet forwarding using dynamic filters for routing and security in a shared forwarding plane
CN101593136B (zh) * 2008-05-30 2012-05-02 国际商业机器公司 使得计算机具有高可用性的方法和计算机系统
JP5062845B2 (ja) 2008-06-30 2012-10-31 日本電信電話株式会社 経路切替方法、サーバ装置、境界ノード装置、経路切替システム及び経路切替プログラム
US8576720B2 (en) * 2009-03-12 2013-11-05 Telefonaktiebolaget L M Ericsson (Publ) Global provisioning of zero-bandwidth traffic engineering label switched paths
US8139492B1 (en) 2009-06-09 2012-03-20 Juniper Networks, Inc. Local forwarding bias in a multi-chassis router
US9210065B2 (en) * 2009-06-22 2015-12-08 Alcatel Lucent Providing cloud-based services using dynamic network virtualization
US8954487B2 (en) 2009-06-23 2015-02-10 Samsung Electronics Co., Ltd. Management server and method for providing cloud computing service
WO2011013805A1 (ja) 2009-07-31 2011-02-03 日本電気株式会社 制御サーバ、サービス提供システムおよび仮想的なインフラストラクチャの提供方法
US8255525B2 (en) 2009-08-19 2012-08-28 International Business Machines Corporation System and method for circuit and path based event correlation
US20110078230A1 (en) 2009-09-25 2011-03-31 Emilio Sepulveda Method and system for providing a cdn with granular quality of service
US8493971B2 (en) 2009-11-06 2013-07-23 Nec Corporation Path calculation system
US8233387B2 (en) 2009-11-06 2012-07-31 Telefonaktiebolaget L M Ericsson (Publ) Disjoint path computation algorithm
US8473759B2 (en) 2009-12-10 2013-06-25 International Business Machines Corporation Efficient routing of computing tasks
US8537842B2 (en) * 2009-12-30 2013-09-17 Broadcom Corporation Network device with virtual switch fabric
CN102714621A (zh) 2010-01-04 2012-10-03 瑞典爱立信有限公司 向路径计算单元提供反馈
US9386093B2 (en) 2010-02-17 2016-07-05 Deutsche Telekom Ag Price-aware neighborhood selection for peer-to-peer networks
EP2540035A1 (en) 2010-02-23 2013-01-02 Telefonaktiebolaget LM Ericsson (publ) Summarisation in a multi-domain network
US8625616B2 (en) * 2010-05-11 2014-01-07 Brocade Communications Systems, Inc. Converged network extension
US8767731B2 (en) 2010-05-19 2014-07-01 Alcatel Lucent Method and apparatus for MPLS label allocation for a BGP MAC-VPN
US8606847B2 (en) 2010-05-28 2013-12-10 Juniper Networks, Inc. Application-layer traffic optimization service map updates
US8688775B2 (en) 2010-05-28 2014-04-01 Juniper Network, Inc. Application-layer traffic optimization service spanning multiple networks
US8880468B2 (en) 2010-07-06 2014-11-04 Nicira, Inc. Secondary storage architecture for a network control system that utilizes a primary network information base
US8830826B2 (en) 2010-10-15 2014-09-09 Futurewei Technologies, Inc. System and method for computing a backup egress of a point-to-multi-point label switched path
US8700801B2 (en) 2010-12-01 2014-04-15 Juniper Networks, Inc. Dynamically generating application-layer traffic optimization protocol maps
US8560660B2 (en) * 2010-12-15 2013-10-15 Juniper Networks, Inc. Methods and apparatus for managing next hop identifiers in a distributed switch fabric system
US9471384B2 (en) * 2012-03-16 2016-10-18 Rackspace Us, Inc. Method and system for utilizing spare cloud resources
US8953590B1 (en) 2011-03-23 2015-02-10 Juniper Networks, Inc. Layer two virtual private network having control plane address learning supporting multi-homed customer networks
US8804745B1 (en) * 2011-06-27 2014-08-12 Amazon Technologies, Inc. Virtualization mapping
US10013281B2 (en) * 2011-06-29 2018-07-03 Microsoft Technology Licensing, Llc Controlling network utilization
US9176773B2 (en) * 2011-06-29 2015-11-03 Microsoft Technology Licensing, Llc Virtual machine migration tool
US8634418B2 (en) 2011-07-01 2014-01-21 Juniper Networks, Inc. Providing extended administrative groups in computer networks
US8908501B2 (en) 2011-07-15 2014-12-09 Futurewei Technologies, Inc. Procedures for finding a backup ingress of a point-to-multipoint label switched path
US8559314B2 (en) * 2011-08-11 2013-10-15 Telefonaktiebolaget L M Ericsson (Publ) Implementing OSPF in split-architecture networks
EP2745441A1 (en) 2011-09-08 2014-06-25 Telefonaktiebolaget L M Ericsson (publ) Path computation in wavelength switched optical networks
KR101860342B1 (ko) 2011-09-15 2018-05-23 엘지전자 주식회사 이동 단말기 및 그 제어방법
CN102299865B (zh) 2011-09-30 2014-05-14 杭州华三通信技术有限公司 多协议标签交换传送技术环保护倒换方法及节点
US8885463B1 (en) 2011-10-17 2014-11-11 Juniper Networks, Inc. Path computation element communication protocol (PCEP) extensions for stateful label switched path management
US9148381B2 (en) * 2011-10-21 2015-09-29 Qualcomm Incorporated Cloud computing enhanced gateway for communication networks
CN102457439B (zh) * 2011-12-07 2014-05-28 中标软件有限公司 一种云计算系统的虚拟交换系统及其虚拟交换方法
US20130159376A1 (en) * 2011-12-15 2013-06-20 Charles Moore Systems and methods for a computing resource broker agent
US9083627B2 (en) 2011-12-20 2015-07-14 Cisco Technology, Inc. Assisted traffic engineering for minimalistic connected object networks
US8824274B1 (en) 2011-12-29 2014-09-02 Juniper Networks, Inc. Scheduled network layer programming within a multi-topology computer network
US8787154B1 (en) 2011-12-29 2014-07-22 Juniper Networks, Inc. Multi-topology resource scheduling within a computer network
US9094342B2 (en) * 2012-01-13 2015-07-28 Verizon Patent And Licensing Inc. Method and system for sharing router resources via a mobile virtual router
US8660129B1 (en) * 2012-02-02 2014-02-25 Cisco Technology, Inc. Fully distributed routing over a user-configured on-demand virtual network for infrastructure-as-a-service (IaaS) on hybrid cloud networks
US20130238785A1 (en) * 2012-03-06 2013-09-12 Rackspace Us, Inc. System and Method for Metadata Discovery and Metadata-Aware Scheduling
US9081618B2 (en) * 2012-03-19 2015-07-14 Ati Technologies Ulc Method and apparatus for the scheduling of computing tasks
US8787400B1 (en) 2012-04-25 2014-07-22 Juniper Networks, Inc. Weighted equal-cost multipath
US9379971B2 (en) 2012-05-11 2016-06-28 Simula Inovation AS Method and apparatus for determining paths between source/destination pairs
US9064216B2 (en) * 2012-06-06 2015-06-23 Juniper Networks, Inc. Identifying likely faulty components in a distributed system
US8990826B2 (en) * 2012-06-06 2015-03-24 General Electric Company System and method for receiving analysis requests and configuring analytics systems
US9729424B2 (en) 2012-06-11 2017-08-08 Futurewei Technologies, Inc. Defining data flow paths in software-defined networks with application-layer traffic optimization
US8855014B2 (en) 2012-06-15 2014-10-07 Cisco Technology, Inc. Distributed stateful path computation element overlay architecture
US10031782B2 (en) 2012-06-26 2018-07-24 Juniper Networks, Inc. Distributed processing of network device tasks
US8942226B2 (en) 2012-10-05 2015-01-27 Ciena Corporation Software defined networking systems and methods via a path computation and control element
WO2014060036A1 (en) 2012-10-18 2014-04-24 Nokia Solutions And Networks Oy Intelligent bearer setup configuration control
US9929919B2 (en) 2012-10-30 2018-03-27 Futurewei Technologies, Inc. System and method for virtual network abstraction and switching
EP2926507B1 (en) 2012-11-27 2016-06-01 Telefonaktiebolaget LM Ericsson (publ) Methods and routers for connectivity setup between provider edge routers
US9450874B2 (en) 2013-01-04 2016-09-20 Futurewei Technologies, Inc. Method for internet traffic management using a central traffic controller
US20140269724A1 (en) 2013-03-04 2014-09-18 Telefonaktiebolaget L M Ericsson (Publ) Method and devices for forwarding ip data packets in an access network
US9450817B1 (en) 2013-03-15 2016-09-20 Juniper Networks, Inc. Software defined network controller
US9178796B2 (en) 2013-06-28 2015-11-03 Cisco Technology, Inc. Multi-layer stateful path computation element architecture
US10708182B2 (en) 2013-07-26 2020-07-07 Cisco Technology, Inc. MPLS LSP connectivity test when the initiator address is unknown
US9210089B2 (en) 2013-10-21 2015-12-08 Cisco Technology, Inc. LSP ping/trace over MPLS networks using entropy labels
US10193801B2 (en) 2013-11-25 2019-01-29 Juniper Networks, Inc. Automatic traffic mapping for multi-protocol label switching networks

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1365551A1 (en) * 2002-05-23 2003-11-26 Chiaro Networks Ltd. Highly-available OSPF routing protocol
US7133915B2 (en) * 2002-10-10 2006-11-07 International Business Machines Corporation Apparatus and method for offloading and sharing CPU and RAM utilization in a network of machines
CN101171573A (zh) * 2005-06-22 2008-04-30 思科技术公司 用于网络、块和文件输入及输出的卸载堆栈
US7551627B2 (en) * 2005-11-18 2009-06-23 At&T Intellecutal Property I, L.P. Offloading routing functions from network routers
CN101183315A (zh) * 2007-12-10 2008-05-21 华中科技大学 一种并行多处理器虚拟机系统
CN101419558A (zh) * 2008-11-13 2009-04-29 湖南大学 Cuda图形子系统虚拟化方法
CN102227718A (zh) * 2008-11-26 2011-10-26 微软公司 用于远程桌面协议的硬件加速
US7937438B1 (en) * 2009-12-07 2011-05-03 Amazon Technologies, Inc. Using virtual networking devices to manage external connections
CN102238230A (zh) * 2010-05-07 2011-11-09 美国博通公司 用于在云计算中卸载隧道数据包的方法和系统
CN102103518A (zh) * 2011-02-23 2011-06-22 运软网络科技(上海)有限公司 一种在虚拟化环境中管理资源的系统及其实现方法
CN102110071A (zh) * 2011-03-04 2011-06-29 浪潮(北京)电子信息产业有限公司 一种虚拟机集群系统及其实现方法

Also Published As

Publication number Publication date
EP2680144A2 (en) 2014-01-01
US10031782B2 (en) 2018-07-24
EP2680144A3 (en) 2016-08-17
CN103516782B (zh) 2018-02-09
US20130346470A1 (en) 2013-12-26
CN103516782A (zh) 2014-01-15
US11614972B2 (en) 2023-03-28
CN108124018A (zh) 2018-06-05
US20180329755A1 (en) 2018-11-15

Similar Documents

Publication Publication Date Title
CN108124018B (zh) 分布式处理网络设备任务的方法与虚拟机管理器
US11025543B2 (en) Route advertisement by managed gateways
CN109921990B (zh) 多线程路由处理
US10949233B2 (en) Optimized virtual network function service chaining with hardware acceleration
US9225597B2 (en) Managed gateways peering with external router to attract ingress packets
JP5976942B2 (ja) ポリシーベースのデータセンタネットワーク自動化を提供するシステムおよび方法
CN111478852B (zh) 受管理网关的路由通告
CN112470436A (zh) 使用srv6和bgp的多云连通性
CN110535760B (zh) 聚合接口的转发检测
US11336570B1 (en) Layer three multi-homing for virtual networks
CN114401221A (zh) Sdwan覆盖路由服务
US10447581B2 (en) Failure handling at logical routers according to a non-preemptive mode
US10462072B2 (en) System and method for scaling multiclouds in a hybrid cloud architecture
US11405284B1 (en) Generating network link utilization targets using a packet-loss-versus-link utilization model
CN115967664A (zh) 自动分组和路由平台
US11528222B2 (en) Decentralized control plane
US11411855B1 (en) Computation of ranked path options in networks
US10979352B2 (en) Using a control plane to set a preferred egress point in multi-site logical routers
WO2016044116A1 (en) Method for end point identification in computer networks
US11477274B2 (en) Capability-aware service request distribution to load balancers
Fioccola et al. A PCE-based architecture for green management of virtual infrastructures

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
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: California, USA

Patentee after: Juniper Networks, Inc.

Address before: California, USA

Patentee before: Jungle network

CP01 Change in the name or title of a patent holder