CN103516782A - 网络设备任务的分布式处理 - Google Patents

网络设备任务的分布式处理 Download PDF

Info

Publication number
CN103516782A
CN103516782A CN201310253577.9A CN201310253577A CN103516782A CN 103516782 A CN103516782 A CN 103516782A CN 201310253577 A CN201310253577 A CN 201310253577A CN 103516782 A CN103516782 A CN 103516782A
Authority
CN
China
Prior art keywords
virtual machine
task
network
response
network equipment
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.)
Granted
Application number
CN201310253577.9A
Other languages
English (en)
Other versions
CN103516782B (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
Priority to CN201810071965.8A priority Critical patent/CN108124018B/zh
Publication of CN103516782A publication Critical patent/CN103516782A/zh
Application granted granted Critical
Publication of CN103516782B publication Critical patent/CN103516782B/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

Abstract

本发明涉及网络设备任务的分布式处理,提出了一种在计算云中运行的虚拟机之间分配网络设备任务的技术。一种网络设备包括:发送和接收消息的网络接口、包括被配置为运行一个版本的网络操作系统的一个或多个处理器的路由单元、和虚拟机代理。该虚拟机代理被配置为:识别在通信耦接至该网络设备的计算云处运行的虚拟机,其中,所识别的虚拟机运行所述版本的网络操作系统的实例;利用至少一个网络接口将执行任务的请求发送至虚拟机;以及利用至少一个网络接口从虚拟机接收包括执行任务的结果的任务响应。路由单元被配置为基于结果更新所述网络设备。

Description

网络设备任务的分布式处理
技术领域
本公开涉及计算机网络,更具体地,涉及在虚拟机之间分配网络设备任务的技术。
背景技术
计算机网络是交换数据和共享资源的互连计算设备的集合。在诸如互联网这样的分组网络中,计算设备通过将数据划分为被称为包的较小块来通信数据,这些包从源设备经过网络被单独地路由到目的设备。目的设备从包中提取数据并将数据组装成其原始形式。将数据划分为包能够使源设备可以只重新发送那些可能在传输期间丢失的个体包。
网络内的某些设备,例如路由器,含有保存描述通过网络的路线的路由信息的路由单元。每个路线定义了网络上位置之间的路径。根据路由信息,路由器的转发引擎生成转发信息,路由器使用该转发信息在网络上中继转发(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(“FPC50”),每个集中器包括通过一组接口卡(“IFC”)54、56、和57分别发送和接收流量的至少一个包转发引擎52A-52N(“PFE52”),其中接口卡通常具有一个或多个物理网络接口(即,端口)。某些PFE52可以通过隧道PIC发送和接收流量。
FPC50、包括在FPC50内的部件、和交换结构36共同提供用于转发经过的网络流量的转发平面。尽管图2中未示出,但是PFE52可以各自包括中央处理单元(CPU)、存储器、和一个或多个可编程包转发专用集成电路(ASIC)。交换结构36提供用于在PFE52之间转发到来的数据包的高速互连,以便于网络上的传输。
路由单元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和其他用户级进程或用户级库通过套接字库可以与PFE52进行交互。
路由协议后台进程40执行一个或多个内部和/或外部路由协议来与其他网络设备交换路由信息,将接收的信息存储在路由信息44中、和将提取的转发信息存储在转发信息46中。路由协议后台进程42将转发平面配置成实施包转发服务、增加/修改/删除路由路线、以及通过将表示转发信息46的转发结构安装在PFE52中修改包转发路径。
示出图2中所示的路由器12B的架构仅仅是为了进行说明。本发明不限于该架构。在其他的实施方式中,路由器12B可以通过多种方式配置。在一个实施方式中,例如,路由单元30的某些功能可以分配在PFE52内。路由单元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包括CPU60和存储器62。虚拟机管理器14的CPU60被配置为执行存储在存储器62中的指令。存储器62可以包含一个或多个计算机可读介质,例如永久性计算机可读存储介质。这样的介质的示例包括RAM、ROM、NVRAM、EEPROM、闪存、和其他计算机可读存储介质。存储器62包括配置(CONFIG)数据64和虚拟机管理模块(VMMGMT MODULE)66。配置数据64是被配置为存储虚拟机16的配置信息的数据存储库的一个示例,包括虚拟机16中的每一个虚拟机的性能和配置。
在某些实施方式中,VM管理模块66是CPU60可执行的软件模块。一般地,当建立和终止每个虚拟机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 (10)

1.一种方法,包括: 
通过网络设备运行一个版本的网络操作系统; 
利用在所述网络设备运行的虚拟机代理识别在通信耦接至所述网络设备的计算云处运行的虚拟机,其中,所识别的虚拟机运行所述版本的网络操作系统的实例; 
利用所述虚拟机代理将执行任务的请求发送到所述虚拟机; 
利用所述虚拟机代理从所述虚拟机接收包括执行所述任务的结果的任务响应;以及 
基于所述任务响应中所包括的结果更新所述网络设备。 
2.根据权利要求1所述的方法,其中,所述虚拟机是第一虚拟机,其中,所述版本的网络操作系统的所述实例是在所述第一虚拟机运行的所述网络操作系统的第一实例,其中,所述任务是第一逻辑段的第一任务,并且其中,所述任务响应是第一任务响应,所述方法还包括: 
识别在所述计算云运行的第二虚拟机,其中,所述第二虚拟机运行所述版本的网络操作系统的第二实例,并且其中,所述第一虚拟机和第二虚拟机是不同的虚拟机; 
利用所述虚拟机代理将执行第二任务的请求发送到所述第二虚拟机,其中,所述第二任务用于第二逻辑段;以及 
利用所述虚拟机代理从所述虚拟机接收包括执行所述第二任务的结果的第二任务响应, 
其中,更新所述网络设备的步骤包括:基于包括在所述第一任务响应中的结果和包括在所述第二任务响应中的结果来更新所述网络设备。 
3.根据权利要求2所述的方法,其中,所述第一任务是第三任务的第一子任务,并且其中,所述第二任务是所述第三任务的第二子任务。 
4.根据权利要求1至3中的任一项所述的方法, 
其中,识别所述虚拟机包括: 
将对计算资源的请求发送到虚拟机管理器,其中,所述请求包括对所述网络操作系统的版本的指示和对要执行的任务的指示;以及 
从所述虚拟机管理器接收响应,其中,所述响应包括对套接字的指示,通过所述套接字,所述虚拟机是可到达的,
其中,将所述任务请求发送到所述虚拟机的步骤包括:利用所述套接字将所述任务请求发送到所述虚拟机,以及 
其中,接收所述任务响应的步骤包括:利用所述套接字接收所述任务响应。 
5.根据权利要求4所述的方法,其中,对计算资源的所述请求是第二请求,其中,所述响应是第二响应,以及其中,识别所述虚拟机的步骤包括: 
在发送对计算资源的所述第二请求之前,将对计算资源的第一请求发送到所述虚拟机管理器,以确定所述计算云是否具有执行所述任务的可用计算资源;并且 
利用所述虚拟机代理接收表明所述计算云是否具有可用计算资源的第一响应;以及 
基于所述第一响应确定所述计算云是否具有可用的计算资源, 
其中,响应于确定所述计算云具有可用的计算资源,将对计算资源的所述第二请求发送到所述虚拟机管理器。 
6.根据权利要求1到5中的任一项所述的方法,其中,所述任务与在所述网络设备执行的路由协议相关联,其中,所述路由协议是开放式最短路径优先、生成树协议、边界网关协议、中间系统对中间系统协议和虚拟专用局域网服务中的一个。 
7.根据权利要求1到6中的任一项所述的方法,其中,更新所述网络设备包括基于包括在所述任务响应中的结果更新存储在所述网络设备处的更新配置信息、转发信息和路由信息中的至少一个。 
8.根据权利要求1到7中的任一项所述的方法,其中,所述虚拟机是在所述计算云运行的多个虚拟机中的一个,并且其中,所述多个虚拟机的至少一个子集被配置为执行路由协议、接口控制进程、管理进程和机架进程中的一个或多个。 
9.一种网络设备,包括: 
至少一个网络接口,被配置为发送和接收消息; 
路由单元,包括被配置为运行一个版本的网络操作系统的一个或多个处理器;以及 
虚拟机代理,被配置为:识别在通信耦接至所述网络设备的计算云处运行的虚拟机,其中,所识别的虚拟机运行所述版本的网络操作系统的实例;利用所述至少一个网络接口将执行任务的请求发送至所述虚拟机,以及利用所述至少一个网络接口从所述虚拟机接收包括执行所述任务的结果的任务响应,
其中,所述路由单元被配置为基于包括在所述任务响应中的结果来更新所述网络设备。 
10.根据权利要求9所述的网络设备,进一步包括用于执行根据权利要求1到8中的任一项所述方法的装置。 
CN201310253577.9A 2012-06-26 2013-06-24 网络设备任务的分布式处理 Active CN103516782B (zh)

Priority Applications (1)

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

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/533,780 2012-06-26
US13/533,780 US10031782B2 (en) 2012-06-26 2012-06-26 Distributed processing of network device tasks

Related Child Applications (1)

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

Publications (2)

Publication Number Publication Date
CN103516782A true CN103516782A (zh) 2014-01-15
CN103516782B CN103516782B (zh) 2018-02-09

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 After (1)

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

Country Status (3)

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

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270464A (zh) * 2014-10-22 2015-01-07 西安未来国际信息股份有限公司 一种云计算虚拟化网络架构及优化方法
CN107733801A (zh) * 2016-08-11 2018-02-23 华为技术有限公司 接收和发送报文的方法及设备
CN108139920A (zh) * 2015-10-02 2018-06-08 Idac控股公司 在动态条件及变约束下用于基于信息中心联网(icn)的代理服务器管理的方法、设备及系统
CN112637088A (zh) * 2019-09-24 2021-04-09 阿里巴巴集团控股有限公司 网络系统、网络处理方法和装置、电子设备以及计算机可读存储介质

Families Citing this family (153)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US8321568B2 (en) 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
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
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
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
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
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
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
US9146764B1 (en) 2014-09-30 2015-09-29 Amazon Technologies, Inc. Processing event messages for user requests to execute program code
US9830193B1 (en) 2014-09-30 2017-11-28 Amazon Technologies, Inc. Automatic management of low latency computational capacity
US9600312B2 (en) 2014-09-30 2017-03-21 Amazon Technologies, Inc. Threading as a service
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
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
US10498652B2 (en) 2015-04-13 2019-12-03 Nicira, Inc. Method and system of application-aware routing with crowdsourcing
US10425382B2 (en) 2015-04-13 2019-09-24 Nicira, Inc. Method and system of a cloud-based multipath routing protocol
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
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
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
US10838620B2 (en) * 2016-05-26 2020-11-17 Nutanix, Inc. Efficient scaling of distributed storage systems
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
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
US10469513B2 (en) 2016-10-05 2019-11-05 Amazon Technologies, Inc. Encrypted network addresses
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
US11252079B2 (en) 2017-01-31 2022-02-15 Vmware, Inc. High performance software-defined core network
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
US20180219765A1 (en) 2017-01-31 2018-08-02 Waltz Networks Method and Apparatus for Network Traffic Control Optimization
US10992568B2 (en) * 2017-01-31 2021-04-27 Vmware, Inc. High performance software-defined core network
US11121962B2 (en) 2017-01-31 2021-09-14 Vmware, Inc. High performance software-defined core network
US11706127B2 (en) 2017-01-31 2023-07-18 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
US10659352B2 (en) 2017-05-31 2020-05-19 Juniper Networks, Inc. Signaling private context forwarding tables for a private forwarding layer
US10476817B2 (en) * 2017-05-31 2019-11-12 Juniper Networks, Inc. Transport LSP setup using selected fabric path between virtual nodes
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
US10445140B1 (en) * 2017-06-21 2019-10-15 Amazon Technologies, Inc. Serializing duration-limited task executions in an on demand code execution system
US10725826B1 (en) * 2017-06-21 2020-07-28 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
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
US11115480B2 (en) 2017-10-02 2021-09-07 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US11089111B2 (en) 2017-10-02 2021-08-10 Vmware, Inc. Layer four optimization for a virtual network defined over public cloud
US10666460B2 (en) 2017-10-02 2020-05-26 Vmware, Inc. Measurement based routing through multiple public clouds
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
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
CN110728363B (zh) * 2018-06-29 2022-11-18 华为技术有限公司 任务处理方法和装置
US10949237B2 (en) 2018-06-29 2021-03-16 Amazon Technologies, Inc. Operating system customization in an on-demand network code execution system
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
US11398895B2 (en) * 2019-03-26 2022-07-26 International Business Machines Corporation Information management in a decentralized database including a fast path service
US11418322B2 (en) 2019-03-26 2022-08-16 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
US11252105B2 (en) 2019-08-27 2022-02-15 Vmware, Inc. Identifying different SaaS optimal egress nodes for virtual networks of different entities
CN112491940A (zh) * 2019-09-12 2021-03-12 北京京东振世信息技术有限公司 代理服务器的请求转发方法及装置、存储介质及电子设备
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
US11722925B2 (en) 2020-01-24 2023-08-08 Vmware, Inc. Performing service class aware load balancing to distribute packets of a flow among multiple network links
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
US11709710B2 (en) 2020-07-30 2023-07-25 Vmware, Inc. Memory allocator for I/O operations
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
CN116783874A (zh) 2021-01-18 2023-09-19 Vm维尔股份有限公司 网络感知的负载平衡
US11979325B2 (en) 2021-01-28 2024-05-07 VMware LLC Dynamic SD-WAN hub cluster scaling with machine learning
US11388086B1 (en) 2021-05-03 2022-07-12 Vmware, Inc. On demand routing mesh for dynamically adjusting SD-WAN edge forwarding node roles to facilitate 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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7937438B1 (en) * 2009-12-07 2011-05-03 Amazon Technologies, Inc. Using virtual networking devices to manage external connections
US20110145621A1 (en) * 2009-12-10 2011-06-16 International Business Machines Corporation Efficient Routing of Computing Tasks
CN102457439A (zh) * 2011-12-07 2012-05-16 中标软件有限公司 一种云计算系统的虚拟交换系统及其虚拟交换方法

Family Cites Families (140)

* 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
EP1275226B1 (en) 2000-04-13 2004-03-17 Operax AB Network optimisation method
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
WO2002019634A1 (en) 2000-08-31 2002-03-07 Netrake Corporation Method for enforcing service level agreements
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
US7013084B2 (en) * 2001-02-28 2006-03-14 Lambda Opticalsystems Corporation Multi-tiered control architecture for adaptive optical networks, 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
CA2379594C (en) 2002-03-28 2010-03-09 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
US7292535B2 (en) * 2002-05-23 2007-11-06 Chiaro Networks Ltd Highly-available OSPF routing protocol
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
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
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
US8713180B2 (en) * 2005-06-22 2014-04-29 Cisco Technology, Inc. Zero-copy network and file offload for web and application servers
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
US7551627B2 (en) * 2005-11-18 2009-06-23 At&T Intellecutal Property I, L.P. Offloading routing functions from network routers
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
US20090113111A1 (en) * 2007-10-30 2009-04-30 Vmware, Inc. Secure identification of execution contexts
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
CN100573456C (zh) * 2007-12-10 2009-12-23 华中科技大学 一种并行多处理器虚拟机系统
WO2009115726A1 (fr) 2008-03-04 2009-09-24 France Telecom Technique pour determiner un arbre point a multipoint reliant un noeud racine a une pluralite de noeuds feuilles
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 日本電信電話株式会社 経路切替方法、サーバ装置、境界ノード装置、経路切替システム及び経路切替プログラム
CN101419558A (zh) * 2008-11-13 2009-04-29 湖南大学 Cuda图形子系统虚拟化方法
US8572251B2 (en) * 2008-11-26 2013-10-29 Microsoft Corporation Hardware acceleration for remote desktop protocol
WO2010104434A1 (en) * 2009-03-12 2010-09-16 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
EP2461248A4 (en) 2009-07-31 2013-02-13 Nec Corp CONTROLLER, SERVICE DELIVERY SYSTEM, AND METHOD FOR PROVIDING A VIRTUAL INFRASTRUCTURE
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
US8537842B2 (en) * 2009-12-30 2013-09-17 Broadcom Corporation Network device with virtual switch fabric
EP2522104B1 (en) 2010-01-04 2013-08-14 Telefonaktiebolaget LM Ericsson (publ) Providing feedback to path computation element
US9386093B2 (en) 2010-02-17 2016-07-05 Deutsche Telekom Ag Price-aware neighborhood selection for peer-to-peer networks
US9288111B2 (en) 2010-02-23 2016-03-15 Telefonaktiebolaget Lm Ericsson (Publ) Summarization in a multi-domain network
US8625616B2 (en) * 2010-05-11 2014-01-07 Brocade Communications Systems, Inc. Converged network extension
US8493851B2 (en) * 2010-05-07 2013-07-23 Broadcom Corporation Method and system for offloading tunnel packet processing in cloud computing
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
US8717895B2 (en) 2010-07-06 2014-05-06 Nicira, Inc. Network virtualization apparatus and method with a table mapping engine
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
CN102103518B (zh) * 2011-02-23 2013-11-13 运软网络科技(上海)有限公司 一种在虚拟化环境中管理资源的系统及其实现方法
CN102110071B (zh) * 2011-03-04 2013-04-17 浪潮(北京)电子信息产业有限公司 一种虚拟机集群系统及其实现方法
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
US9176773B2 (en) * 2011-06-29 2015-11-03 Microsoft Technology Licensing, Llc Virtual machine migration tool
US10013281B2 (en) * 2011-06-29 2018-07-03 Microsoft Technology Licensing, Llc Controlling network utilization
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
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
US8787154B1 (en) 2011-12-29 2014-07-22 Juniper Networks, Inc. Multi-topology resource scheduling within a computer network
US8824274B1 (en) 2011-12-29 2014-09-02 Juniper Networks, Inc. Scheduled network layer programming within a multi-topology 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
US8990826B2 (en) * 2012-06-06 2015-03-24 General Electric Company System and method for receiving analysis requests and configuring analytics systems
US8750288B2 (en) * 2012-06-06 2014-06-10 Juniper Networks, Inc. Physical path determination for virtual network packet flows
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
CN104704905B (zh) 2012-10-18 2018-11-06 诺基亚通信公司 智能承载建立配置控制
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 (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7937438B1 (en) * 2009-12-07 2011-05-03 Amazon Technologies, Inc. Using virtual networking devices to manage external connections
US20110145621A1 (en) * 2009-12-10 2011-06-16 International Business Machines Corporation Efficient Routing of Computing Tasks
CN102457439A (zh) * 2011-12-07 2012-05-16 中标软件有限公司 一种云计算系统的虚拟交换系统及其虚拟交换方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270464A (zh) * 2014-10-22 2015-01-07 西安未来国际信息股份有限公司 一种云计算虚拟化网络架构及优化方法
CN108139920A (zh) * 2015-10-02 2018-06-08 Idac控股公司 在动态条件及变约束下用于基于信息中心联网(icn)的代理服务器管理的方法、设备及系统
CN107733801A (zh) * 2016-08-11 2018-02-23 华为技术有限公司 接收和发送报文的方法及设备
CN107733801B (zh) * 2016-08-11 2021-01-29 华为技术有限公司 接收和发送报文的方法及设备
CN112637088A (zh) * 2019-09-24 2021-04-09 阿里巴巴集团控股有限公司 网络系统、网络处理方法和装置、电子设备以及计算机可读存储介质

Also Published As

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

Similar Documents

Publication Publication Date Title
CN103516782A (zh) 网络设备任务的分布式处理
CN112470436B (zh) 用于提供多云连通性的系统、方法、以及计算机可读介质
US11429369B2 (en) Distributed upgrade in virtualized computing environments
CN102884763B (zh) 跨数据中心的虚拟机迁移方法、服务控制网关及系统
CN103368840B (zh) 减少多宿主网络连接内的边界网关协议会话的流量损失
EP2849064B1 (en) Method and apparatus for network virtualization
US10938660B1 (en) Automation of maintenance mode operations for network devices
CN106464528B (zh) 用于通信网络中的无接触编配的方法、介质、及装置
US11201782B1 (en) Automation of maintenance mode operations for network devices
US10630508B2 (en) Dynamic customer VLAN identifiers in a telecommunications network
CN104584484A (zh) 提供基于策略的数据中心网络自动化的系统和方法
CN104754025A (zh) 可编程分布式联网
US20120117246A1 (en) Method And System For The Efficient And Automated Management of Virtual Networks
CN105556929A (zh) 在云计算系统中运行应用的网络元件和方法
KR20180028499A (ko) Ict 서비스 제공 방법 및 시스템
US11218339B2 (en) Gateway selection method, device, and system
US11405284B1 (en) Generating network link utilization targets using a packet-loss-versus-link utilization model
US20230060675A1 (en) Deployment of a virtualized service on a cloud infrastructure based on interoperability requirements between service functions
US20170237828A1 (en) Communication apparatus, communication system, and circuit configuration control method
US20220391258A1 (en) Joint consideration of service function placement and definition for deployment of a virtualized service
US20220382598A1 (en) Joint consideration of service function placement and definition for deployment of a virtualized service
KR101991852B1 (ko) Sdn 기반 데이터 센터 관리 시스템 및 방법
CN114531360A (zh) 一种语义名称获取方法、装置、设备及存储介质
US20230198902A1 (en) Control plane driven summarization in a network
CN116016315A (zh) 一种路由管理方法、设备及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into 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