动态资源管理方法

文档序号:10660772阅读:311来源:国知局
动态资源管理方法
【专利摘要】本发明涉及在交换机的分布式控制面内的动态资源管理的方法和设备。在一些实施例中,交换机结构系统包括被配置以操作地耦接到交换机结构的多个接入交换机。该多个接入交换机包括每个操作地耦接到外围处理装置的多个端口。当交换机结构系统处于第一配置时,多个端口中的第一组端口和多个端口中的第二组端口由第一网络控制实体管理。当交换机结构系统处于第二配置时,第一组端口由第一网络控制实体管理且第二组端口由第二网络控制实体管理。当系统从第一配置改变为第二配置时,第二网络控制实体自动地启动。
【专利说明】动态资源管理方法
[0001 ] 本申请是申请日为2011年9月15日、申请号为201110272107.8、发明名称为“动态资源管理方法”的中国发明专利申请的分案申请。
技术领域
[0002]在这里描述的一些实施例总的来说涉及资源管理,且具体来说,涉及交换机的分布式控制面内的资源管理的动态分配。
【背景技术】
[0003]—些已知的网络系统包括可以管理连接到该网络系统的资源的集中控制面。例如,集中控制面可以维护与资源的物理位置相关的数据库。另外,集中控制面可以管理与资源相关的转发-状态信息。但是,当大量资源连接到网络系统时,这种集中控制面可能变得极大且不可管理。
[0004]其他已知的网络系统包括分布式控制面。这种已知的分布式控制面可以在网络系统内的各个节点处实现。但是,这种已知的分布式控制面不是动态配置的。同样地,网络系统内的一些节点可能严重使用不足,而同时网络系统内的其他节点可能过度使用。因此,这种网络系统不能尽可能高效地工作。
[0005]因此,对于具有分布式控制面的网络系统存在可以基于网络系统的处理需求来动态地配置的需要。

【发明内容】

[0006]为解决上述问题,本公开提供了一种系统,包括:网络管理模块,管理与交换机结构相关的配置表;和网络控制实体,当所述系统处于第一配置时动态地管理多个端口中的第一组端口,所述多个端口中的每个端口位于多个接入交换机中的第一接入交换机或者所述多个接入交换机中的第二接入交换机处,所述多个接入交换机被配置以操作地耦接到交换机结构,所述网络控制实体位于所述多个接入交换机中的第一接入交换机处,所述第一组端口包括位于所述多个接入交换机中的第一接入交换机处的至少一个端口和位于第二接入交换机处的至少一个端口,所述网络控制实体在所述系统处于第二配置时动态地管理所述多个端口中的所述第一组端口和第二组端口,网络控制实体,从所述网络管理模块接收与所述第一组端口相关的配置表的一部分,所述系统响应于所述网络控制实体超过能力阈值而从所述第一配置自动改变为所述第二配置。
[0007]在一个实施例中,所述网络控制实体是第一网络控制实体,所述系统进一步包括:第二网络控制实体,动态地管理所述多个端口中的第三组端口,第二网络控制实体从所述网络管理模块接收与所述第三组端口相关的所述配置表的一部分。
[0008]在一个实施例中,所述网络控制实体是第一网络控制实体,所述系统进一步包括:第二网络控制实体,当所述系统处于所述第二配置时动态地管理所述第一组端口中的端口的第一子集。
[0009]在一个实施例中,所述第二组端口与所述第一组端口互斥。
[0010]在一个实施例中,当所述系统处于第二配置时所述网络控制实体从所述网络管理模块接收与所述第一组端口相关的所述配置表的一部分和与所述第二组端口相关的所述配置表的一部分。
[0011 ]在一个实施例中,所述多个端口中的所述第一组端口包括在所述多个接入交换机中的第一接入交换机处的至少一个端口和在第二接入交换机处的至少一个端口。
[0012]在一个实施例中,所述网络控制实体是第一网络控制实体,当所述系统处于第二配置时,所述第二组端口由第二网络控制实体动态地管理,以及当所述系统从所述第一配置改变为所述第二配置时,所述第二网络控制实体自动地启动。
[0013]在一个实施例中,所述能力阈值是可用处理能力阈值。
[0014]在一个实施例中,所述网络控制实体是第一网络控制实体,当系统处于所述第二配置时,第一网络控制实体维持与所述多个端口中的所述第一组端口和所述多个端口中的所述第二组端口相关的转发-状态信息,当系统处于所述第二配置时,第一网络控制实体维持与第一组端口而非第二组端口相关的转发-状态信息,且第二网络控制实体维持与第二组端口而非第一组端口相关的转发-状态信息。
[0015]在一个实施例中,所述网络控制实体是第一网络控制实体,所述系统进一步包括:当系统处于所述第二配置时,第二网络控制实体维持与第二组端口而非第一组端口相关的转发-状态信息,以及当系统从所述第二配置改变为所述第一配置时,终止第二网络控制实体。
[0016]在一个实施例中,网络控制实体是第一网络控制实体,第一网络控制实体能操作以将与操作地耦接到端口的外围处理装置相关的转发-状态信息从所述第一组端口发送到第二网络控制实体。
[0017]在一个实施例中,当所述系统处于所述第二配置时,所述网络控制实体能操作以接收与所述多个端口中的所述第一组端口和所述第二组端口相关的配置表的一部分,当所述系统处于所述第一配置时,所述网络控制实体接收与所述第一组端口而非所述第二组端口相关的配置表的一部分。
[0018]在一个实施例中,所述网络控制实体是第一网络控制实体,当系统从所述第一配置改变为所述第二配置时,第三网络控制实体自动地启动,当系统处于所述第二配置时,第三网络控制实体是第一网络控制实体和第二网络控制实体之间的路由反射器。
[0019]在一个实施例中,所述网络控制实体是第一网络控制实体,所述系统进一步包括:第二网络控制实体,动态地管理所述多个端口中的所述第二组端口,所述第二网络控制实体位于第一接入交换机处,第二组端口中的每个端口位于所述多个接入交换机中的第一接入交换机处。
【附图说明】
[0020]图1是根据实施例的交换机结构系统的示意图。
[0021]图2是根据另一实施例的交换机结构系统的接入交换机的示意图。
[0022]图3是根据另一实施例的交换机结构系统的计算装置的示意图。
[0023]图4是图1的交换机结构系统的控制面的逻辑表示。
[0024]图5-8是根据其他实施例的不同配置的交换机结构系统的控制面的逻辑表示。
[0025]图9-13是根据实施例要发送给交换机结构系统内的网络控制实体的配置文件的图示。
[0026]图14是示出了根据另一实施例的动态地管理交换机结构系统的控制面的方法的流程图。
【具体实施方式】
[0027]在一些实施例中,交换机结构系统包括被配置以操作地耦接到交换机结构的多个接入交换机。该多个接入交换机包括每个操作地耦接到外围处理装置的多个端口。当交换机结构系统处于第一配置时,来自多个端口的第一组端口和来自多个端口的第二组端口由第一网络控制实体管理。当交换机结构系统处于第二配置时,第一组端口由第一网络控制实体管理且第二组端口由第二网络控制实体管理。当系统从第一配置改变为第二配置时,第二网络控制实体自动地启动。
[0028]在一些实施例中,当第一网络控制实体的可用处理能力经过(例如,落到低于)阈值时,交换机结构系统可以从第一配置自动地改变和/或移动到第二配置。类似地说,当第一网络控制实体不能管理第一组端口和第二组端口两者(例如,不具有容量和/或处理资源)时,交换机结构系统可以从第一配置自动地改变和/或移动到第二配置。在这种实施例中,当交换机结构系统从第一配置改变为第二配置时,网络管理模块可以监控第一网络控制实体的可用能力并启动第二网络控制实体。
[0029]在一些实施例中,非瞬时处理器可读介质存储表示使得处理器在第一时间期期间发送第一信号到一组接入交换机中的第一接入交换机的指令的代码。第一信号可操作以启动第一网络控制实体。在该组接入交换机处的第一组端口响应于第一网络控制实体的启动而与第一网络控制实体相关联。代码进一步表示使得处理器在第一时间期期间发送第二信号到该组接入交换机中的第二接入交换机接入交换机的指令。第二信号可操作以启动第二网络控制实体。在该组接入交换机处的第二组端口响应于第二网络控制实体的启动而与第二网络控制实体相关联。第二组端口与第一组端口是互斥的。代码表示使得处理器在第一时间期之后的第二时间期期间发送第三信号到第一接入交换机和第二接入交换机以终止、撤消和/或解除分配第二网络控制实体的指令。第三信号可操作以将第二组端口与第一网络控制实体相关联。
[0030]在一些实施例中,当第一网络控制实体和/或第二网络控制实体的可用处理能力经过(例如,超过)阈值时将第三信号发送到第一接入交换机和第二接入交换机。例如,在一些实施例中,可以在第一网络控制实体和第二网络控制实体的组合的可用处理能力经过阈值时发送第三信号。在这种实施例中,组合的可用处理能力超过阈值可指示单个网络控制实体能够管理和/或控制第一组端口和第二组端口。
[0031]在一些实施例中,系统包括网络管理模块和网络控制实体。网络管理模块管理与交换机结构相关的配置表。网络控制实体管理多个端口中的一组端口。多个端口中的每个端口位于一组接入交换机中的第一接入交换机或者该组接入交换机中的第二接入交换机处。该组接入交换机被配置以操作地耦接到交换机结构。网络控制实体位于该组接入交换机中的第一接入交换机处。该组端口包括位于该组接入交换机中的第一接入交换机处的至少一个端口和位于第二接入交换机处的至少一个端口。网络控制实体可以从与该组端口相关的网络管理模块接收配置表的一部分。
[0032]在这里所示和所述的实施例涉及多个通信层(例如数据链路层(层2)、网络层(层3)、物理层(层1)、应用层(层7),等等)。这种通信层可以由开放系统互连(OSI)模型定义。因此,物理层可以是比数据链路层更低级的层。另外,数据链路层可以是比网络层和应用层更低级的层。另外,不同协议可以与OSI模型内的不同层相关联和/或在不同层实现。例如,以太网协议、光纤信道协议和/或基于信元的协议(例如,在通信网络的数据面部分内使用的)可以与数据链路层相关联和/或在数据链路层实现,而同时边界网关协议(BGP)可以与较高层,例如,应用层相关联和/或在较高层实现。同时BGP可以在应用层实现,其可用于发送用于填充与网络层相关的路由表的转发-状态信息(例如,端口标识符、网络段标识符、外围处理装置标识符、等等)。
[0033]如此处使用的,术语“物理跳”可以包括在两个模块和/或装置之间的物理链路。例如,操作地耦接第一模块与第二模块的数据路径可以被称为物理跳。类似地说,物理跳可以物理地链接第一模块与第二模块。
[0034]如此处使用的,术语“单物理跳”可以包括在系统中的两个模块和/或装置之间的直接物理连接。类似地说,单物理跳可以包括经由其耦接两个模块而没有中间模块的链路。因此,例如,如果第一模块经由单物理跳耦接到第二模块,第一模块可以直接发送数据分组到第二模块而不通过居间的模块发送数据分组。
[0035]如此处使用的,术语“单逻辑跳”是指作为与第一协议(例如,第一数据链路层协议)相关的网络拓扑内的单个跳的物理跳和/或物理跳的组。类似地说,根据与第一协议相关的拓扑,在经由物理跳和/或该组物理跳操作地耦接到第二模块和/或装置的第一模块和/或装置之间不存在居间的节点。经由单逻辑跳连接到第二模块和/或装置的第一模块和/或装置可以使用与第一协议和第二模块和/或装置相关的目的地址来发送数据分组到第二模块和/或装置,而无论在第一装置和第二装置之间的物理跳的数目如何。例如,在一些实施例中,第二协议(例如,第二数据链路层协议)可以使用第一协议(例如,第一数据链路层协议)的目的地址,来将数据分组和/或信元经单逻辑跳从第一模块和/或装置路由到第二模块和/或装置。类似地说,当第一模块和/或装置经由第一协议的单逻辑跳发送数据到第二模块和/或装置时,第一模块和/或装置对待单逻辑跳就好像其直接发送数据到第二模块和/或装置那样。
[0036]在一些实施例中,交换机结构可以用作单逻辑跳的一部分(例如,单个大规模汇聚层2(L2)/层3(L3)交换机)。例如,可以跨多个物理跳互连的多个机柜和/或模块物理地分布交换机结构的各部分。例如,在一些实施例中,交换机结构的处理级可以被包括在第一机柜中,且交换机结构的另一处理级可以被包括在第二机柜中。两个处理级可以逻辑地用作单个集合交换机的一部分(例如,在根据第一协议的相同逻辑跳内),但是在各对处理级之间包括单独的单物理跳。类似地说,交换机结构内的每级可以是通过物理链路相邻的一个或多个级,同时作为与用于路由数据到交换机结构外的协议相关的单逻辑跳共同地操作。另夕卜,与用于路由数据到单逻辑跳之外的协议(例如,以太网)相关的分组分类和转发不必在单逻辑跳内的每级存在。例如,在一些实施例中,与第一协议(例如,以太网)相关的分组分类和转发可以在模块和/或装置经由单逻辑跳发送数据分组到另一模块和/或装置之前存在。
[0037]如在该说明书中使用的,单数形式“a”、“an”和“the”包括复数的表示,除非上下文清楚地表示其他情况。由此,例如,术语“模块”意在表示单个模块或者模块的组合。
[0038]图1是示出了根据一实施例的交换机结构系统100的示意图。交换机结构系统100包括通信网络110、多个接入交换机120、130、140、计算装置150和多个外围处理装置171-175。外围处理装置171-175通过交换机结构系统100的剩余部分彼此操作地耦接。例如,夕卜围处理装置171-175可以是计算节点、服务节点、路由器和存储节点,如在这里进一步详细地描述的。例如,在一些实施例中,外围处理装置171-175包括服务器、存储装置、网关、工作站等。
[0039]外围处理装置171-175可以使用任意适当的连接,例如,光连接(例如,光缆和光连接器)、电连接(例如,电缆和电连接器)等,操作地耦接到接入交换机120、130、140的一个或多个端口 121-124、131-134、141-144。类似地说,每个端口 121-124、131-134、141-144 提供通信接口,通过它,外围处理装置171-175可以操作地耦接到接入交换机120、130、140,如在这里进一步详细地描述的。同样地,外围处理装置171-175可以发送数据(例如,数据分组、数据信元等)到接入交换机120、130、140和从其接收数据。在一些实施例中,外围处理装置171-175和接入交换机120、130、140之间的连接是直接链路。这种链路可以被称为单物理跳链路。在其他实施例中,外围处理装置可以经由中间模块操作地耦接到接入交换机。这种连接可以被称为多物理跳链路。
[0040]每个接入交换机120、130、140可以是操作地耦接外围处理装置171-175到通信网络110的任意装置。例如,在一些实施例中,接入交换机120、130、140可以是边缘装置、输入/输出模块、架顶式装置等。在结构上,接入交换机120、130、140可以用作源接入交换机和目的接入交换机两者。因此,接入交换机120、130、140可以发送数据(例如,数据分组和/或数据信元的数据流)到通信网络110并从通信网络110接收数据,以及发送数据到所连接的外围处理装置171-175并从其接收数据。
[0041]每一接入交换机120、130、140可操作以经由通信网络110与其他接入交换机120、130、140通信(例如,在控制面部分和数据面部分两者内)。具体地说,通信网络110的数据面部分以相对低的延迟提供在接入交换机120、130、140之间任意对任意的连接性。例如,通信网络110的数据面部分可以在接入交换机120、130、140之间发送(例如,传送)数据。在一些实施例中,通信网络110可以具有至少几百或几千个端口(例如,出口端口和/或入口端口),通过它们,接入交换机120、130、140可以发送和/或接收数据。
[0042]图2是类似于接入交换机120、130、140的接入交换机200的系统框图。接入交换机200包括处理器251、存储器252、线卡210、线卡220和端口 231。处理器251操作地耦接到存储器252、线卡210、线卡220和端口 231。线卡210包括端口 211和212。线卡220包括端口 221和222。在一些实施例中,线卡210和/或220包括一个或多个处理器和/或存储器。
[0043]类似于图1所示的接入交换机120、130、140的端口 121-124、131-134、141-144,端口 211、212、221和222可以与外围处理装置通信。例如,端口 211、212、221和222可以使用经由电缆的双绞线电信令或经由光纤缆线的光纤信令来实现物理层。在一些实施例中,端口
211、212、221和222中的一些端口实现比如双绞线电信令之类的一个物理层,且端口211、
212、221和222中的其它端口实现比如光纤信令之类的不同物理层。此外,端口211、212、221和222可以允许接入交换机200经由比如以太网或者光纤信道之类的公共协议与外围处理装置(比如,计算机服务器(服务器))通信。在一些实施例中,端口211、212、221和222中的一些端口实现比如以太网的一个协议,且端口 211、212、221和222中的其它端口实现比如光纤信道的不同协议。由此,接入交换机200可以经由端口 211、212、221和222,使用同类的或者不同类的物理层和/或协议与多个外围处理装置通信。
[0044]端口 231可以经由比如交换机结构(例如,通信网络110的数据面部分)的通信网络与其他接入交换机通信。端口231可以是一个或多个网络接口(例如,40吉比特(Gb)以太网接口、10Gb以太网接口等)的一部分,通过其,接入交换机200可以发送信号到通信网络和/或从通信网络接收信号。可以经由操作地耦接到接入交换机200的电链路、光链路和/或无线链路发送信号到通信网络和/或从通信网络接收信号。在一些实施例中,接入交换机200可以基于一个或多个协议(例如,以太网协议、多协议标签交换(MPLS)协议、光纤信道协议、以太网上光纤信道协议、无限带宽相关的协议),来发送信号到通信网络和/或从通信网络接收信号。
[0045]在一些实施例中,端口 231可以实现与在端口 211、212、221和222处实现的物理层和/或协议不同的物理层和/或协议。例如,端口 211、212、221和222可以使用基于数据分组的协议与外围处理装置通信,且端口 231可以使用基于数据信元的协议经由交换机结构通信。换句话说,接入交换机200可以是比如分布式网络交换机的网络交换机的边缘装置。
[0046]在一些实施例中,接入交换机200可以准备数据分组(例如,以太网分组)以进入通信网络(例如,通信网络110)。例如,接入交换机200可以在发送数据分组到通信网络之前转发、分类和/或修改数据分组的分组封装(例如,修改、添加和/或除去报头部分、脚注部分和/或数据分组内包括的任意其他标识符)。在于2008年9月30日提交的标题为“Methodsand Apparatus Related to Packet Classificat1n Associated with a Mult1-StageSwitch”的美国专利申请序号12/242,168和于2008年9月30日提交的标题为“Methods andApparatus for Packet Classificat1n Based on Policy Vectors,,的美国专利申请序号12/242,172中描述了关于分组分类的更多的细节,将这两个申请通过引入全文包含于此。
[0047]返回到图1,且如在这里进一步详细地描述的,接入交换机120、130、140可以宿有(host)网络控制实体191-193以管理接入交换机120、130、140的端口 121-124、131-134、141-144。因此,网络控制实体191-193可以是交换机结构系统100的控制面的一部分。每个网络控制实体191-193可以是处理、应用、虚拟机和/或某些其它软件模块(以在硬件中运行)或者在接入交换机120、130、140或者计算装置150处执行的硬件模块。同样地,实现网络控制实体191-193的指令可以存储在接入交换机120、130、140的存储器(例如,存储器252)内并在接入交换机120、130、140的处理器(例如,处理器251)处执行。
[0048]每个网络控制实体191-193可以管理接入交换机120、130、140的端口 121-124、131-134、141-144。例如,网络控制实体191可操作以管理与端口组181相关的端口 141、142、144,网络控制实体192可操作以管理与端口组182相关的端口 133、134、143,且网络控制实体193可操作以管理与端口组183相关的端口 121、122、123、124、131、132。在一些实施例中,每个网络控制实体191-193可以分别管理和/或维持与其端口组181、182、183相关的配置信息(例如,端口协议信息、网络段分配信息、端口分配信息、外围处理装置信息等)和/或转发-状态信息(例如,端口标识符、网络段标识符、外围处理装置标识符等),监控与其端口组181、182、183相关的外围处理装置的情况和/或状态,和/或管理并维护与关于其端口组181、182、183的外围处理装置和/或端口相关的其它信息。
[0049]在一些实施例中,网络控制实体可以控制和/或在网络控制实体位于的接入交换机处的端口(例如,网络控制实体191管理端口组181)。在其他实施例中,网络控制实体还可以控制和/或管理除网络控制实体位于的接入交换机之外的接入交换机处的端口(例如,网络控制实体193管理端口 131和132,且网络控制实体192管理端口 143)。在这种实施例中,网络管理模块155具有基于处理能力将每个端口 121-124、131-134、141-144分配给网络控制实体191-193的灵活性。另外,在这种实施例中,网络管理模块155在分配端口 121-124、131-134、141-144给网络控制实体191-193时不受网络控制实体191-193和/或端口 121-124、131-134、141-144的物理位置限制。
[0050]计算装置150可以宿有与交换机结构系统100相关的管理模块、处理和/或功能。如图1所示,计算装置150可以宿有网络管理模块155和网络控制实体194。网络控制实体194可以用作其他网络控制实体191-193之间的路由反射器。类似地说,网络控制实体194可以用作在接入交换机120、130、140处的网络控制实体191-193之间的中间网络控制实体。网络管理模块155和网络控制实体194可以是交换机结构系统100的控制面的一部分。
[0051 ]例如,图4是图1所示的交换机结构系统100的控制面的逻辑拓扑的框图。如图4所示,在控制面中,网络控制实体191-193通过网络控制实体194彼此操作地耦接。如图1所示,且如在这里进一步详细地描述的,这种连接可以通过通信网络110的控制面部分。
[0052]网络控制实体191-193可经由网络控制实体194向彼此发送转发-状态信息(例如,使用控制信号)。例如,如在这里进一步详细地描述的,网络控制实体192可以经由网络控制实体194(例如,示为路径166和路径167)发送与端口组182相关的转发-状态信息给网络控制实体193。在这种示例中,网络控制实体192和网络控制实体193之间的路径可以被认为包括两个物理跳以及两个逻辑跳。类似地说,交换机结构系统100的控制面可以包括多个逻辑和物理跳。在一些实施例中,网络控制实体194可以被称为路由反射器(例如,边界网关协议(BGP)路由反射器)。
[0053]在一些实施例中,网络控制实体191-193可以使用目标高级协议(例如,应用层协议)(比如,边界网关协议(BGP))经控制面发送转发-状态信息到其他网络控制实体191-193。在这种实施例中,网络控制实体191-193可以与任意适当的低级协议(例如,数据链路层协议)(比如,以太网和/或光纤信道)结合地使用这种高级协议,以发送转发-状态信息。当可以在应用层实现BGP时,BGP可用于发送用于填充与网络层相关的路由表(例如,在网络控制实体191-193存储的)的转发-状态信息。使用比如BGP的目标协议,网络控制实体191-193可以发送转发-状态信息到特定的网络控制实体191-193,同时避免发送转发-状态信息到其他网络控制实体191-193,如在这里进一步详细地描述的。
[0054]在一些实施例中,网络控制实体194可以存储与网络控制实体191-193相关的地址和/或标识符。在这种实施例中,当网络控制实体191-193具有更新的转发-状态信息要分发时,网络控制实体191 -193可以发送更新的转发-状态信息到网络控制实体194。网络控制实体194然后可以发送转发-状态信息到其他网络控制实体191-193。在其他实施例中,网络控制实体191-193在控制面内彼此直接耦接,而没有网络控制实体194作为路由反射器。在这种实施例中,网络控制实体191-193可以存储与其他网络控制实体191-193相关的地址和/或标识符,并经由控制面直接发送更新的转发-状态信息到其他网络控制实体191-193。
[0055]在一些实施例中,每个网络控制实体191-193可以是网络段(例如,虚拟局域网(VLAN)、虚拟交换机结构等)的一部分。例如,网络控制实体192和网络控制实体193可以是第一网络段的一部分,且网络控制实体191可以是第二网络段的一部分。在这种实施例中,每个网络控制实体191-193仅发送转发-状态信息到相同网络段内的其他网络控制实体。因此,网络控制实体194仅将从网络控制实体191-193接收到的更新的转发-状态信息发送到与其网络段相关的其他网络控制实体191-193。同样地,在上述示例中,网络控制实体192发送转发-状态信息到网络控制实体193而不是网络控制实体191。因此,与网络控制实体191(与第二网络段相关)相关的端口 141、142、144不发送数据到与网络控制实体192和193(与第一网络段相关)相关的端口 121-124、131-134、143。
[0056]返回到图1,网络管理模块155可以是处理、应用、虚拟机和/或某些其它软件模块(以在硬件中运行)或在计算装置150处执行的硬件模块。网络管理模块155可以将接入交换机120、130、140的端口 121-124、131-134、141-144划分和/或分割为要由网络控制实体191-193管理的端口组181、182、183。同样地,网络管理模块155可以将端口组181与网络控制实体191相关联,将端口组182与网络控制实体192相关联,并将端口组183与网络控制实体193相关联。另外,如在这里进一步详细地描述的,网络管理模块155还可以监控每个网络控制实体191-194的可用处理能力,并在网络控制实体191-194的可用处理能力经过(例如,落到低于)第一阈值和/或经过(例如,超过)第二阈值时启动和/或终止网络控制实体191-194。
[0057]在一些实施例中,网络管理模块155可以存储(例如,在存储器中)与配置信息(例如,端口协议信息、网络段分配信息、端口分配信息、外围处理装置信息等)相关的配置文件和/或与交换机结构系统100相关的转发-状态信息(例如,路由信息、端口标识符、网络段标识符、外围处理装置标识符等)。如在这里进一步详细地描述的,网络管理模块155可以经由通信网络110的控制面部分将与端口组181、182、183相关的路由信息的一部分发送到网络控制实体191-193。类似地,网络管理模块155可以将与每个网络控制实体191-193相关的路由信息的一部分发送到网络控制实体194。例如,网络管理模块155可以将与端口组181相关的配置文件的一部分发送到网络控制实体191。对于另一示例,网络管理模块可以将与网络控制实体191-193相关的配置文件的一部分发送到网络控制实体194。
[0058]图3是根据一个实施例基本上类似于计算装置150的计算装置300的系统框图。计算装置300包括处理器310、存储器320和通信接口 330。处理器310操作地耦接到存储器320和通信接口 330。计算装置300可以经由通信接口 330与其他计算装置、外围处理装置和/或接入交换机通信。
[0059]如图3所示,类似于网络控制实体194和网络管理模块155,计算装置300可以分别宿有网络控制实体322和网络管理模块324。换句话说,网络控制实体322和网络管理模块324可以是处理、应用、虚拟机和/或某些其它软件模块(以在硬件中运行)或者在计算装置300处执行的硬件模块。例如,在一些实施例中,实现网络控制实体322和/或网络管理模块324的指令可以存储在存储器320并在处理器310处运行。
[0060]在一些实施例中,计算装置300可以专用于宿有网络控制实体322和/或网络管理模块324。换句话说,计算装置300可以将其全部或者基本上全部计算资源(例如,处理能力和存储器)分配给网络控制实体322和/或网络管理模块324。在一些实施例中,计算装置300可以宿有网络控制实体322和/或网络管理模块324以外的其他处理、应用、虚拟机和/或软件模块。例如。计算装置300可以是宿有多个处理、应用、虚拟机和/或软件模块的通用计算装置或者计算节点。
[0061]返回到图1,通信网络110可以是操作地耦接接入交换机120、130、140到其他接入交换机120、130、140的任意适当的通信网络。另外,通信网络可以操作地耦接计算装置150到接入交换机120、130、140。在一些实施例中,通信网络110包括数据面部分和控制面部分。通信网络110的控制面部分促进网络控制实体191-194和网络管理模块155之间控制信号(例如,配置信息、转发-状态信息等)的传输。因此,网络控制实体191-194可以经由通信网络110的控制面部分发送配置信息和/或转发-状态信息到其他网络控制实体191-194。在一些实施例中,通信网络110的控制面部分包括在网络控制实体194和网络控制实体191-193之间的直接链路。在其他实施例中,通信网络110的控制面部分可以包括操作地耦接网络控制实体191-193与网络控制实体194的中间模块和/或交换机。
[0062 ]通信网络110的数据面部分促进接入交换机120、130、140之间的数据传输。在一些实施例中,通信网络110的数据面部分是具有一个或多个级的交换机结构。例如,通信网络110的数据面部分可以是具有多级交换模块(例如,集成以太网交换机)的Clos交换机结构网络(例如,非阻塞Clos网络、严格意义上的非阻塞Clos网络、Benes网络)。这种交换机结构可以包括任意数目的级。例如,在一些实施例中,交换机结构可以包括五、七或九级。例如,通信网络110的数据面部分可以是与在2009年6月30日提交的标题为“Methods andApparatus Related to Any-to-Any Connectivity Within a Data Center” 的未决美国专利申请N0.12/495,337中描述的数据中心的核心部分类似的数据中心的核心部分的一部分,将该申请通过弓I用全文包含于此。
[0063]在一些实施例中,通信网络110的数据面部分可以是(例如,可以用作)单个汇聚交换机(例如,单个大规模汇聚L2/L3交换机)。换句话说,通信网络110的数据面部分可以操作为单个逻辑实体(例如,单个逻辑网络元件)。类似地说,通信网络110的数据面部分可以是在第一接入交换机120、130、140和第二接入交换机120、130、140之间的单逻辑跳的一部分(例如,与在接入交换机120、130、140和通信网络110之间的数据路径一起)。通信网络110的数据面部分可以耦接(例如,间接地连接,促进之间的通信)外围处理装置171-175。在一些实施例中,通信网络110可以经由可操作以至少lOGb/s的速率发送数据的接口装置(未示出)通信。在一些实施例中,通信网络110可以经由可操作以例如,2613/8、4613/8、8613/8、10613/8、40613/8、100613/8和/或更快的链路速度发送数据的接口装置(例如,光纤信道接口装置)通信。
[0064]虽然通信网络110的数据面部分可以逻辑地集中,但是为了可靠性,例如,可以高度分布通信网络110的数据面部分的实现。例如,可以跨多个机柜物理地分布通信网络110的数据面部分的各部分。例如,在一些实施例中,通信网络110的数据面部分的处理级可以被包括在第一机柜中,且通信网络110的数据面部分的另一处理级可以被包括在第二机柜中。两个处理级可以逻辑地用作单个汇聚交换机的一部分(例如,在相同的逻辑跳内),但是在各对处理级之间具有单独的单物理跳。
[0065]在使用中,网络管理模块155启动网络控制实体191-193(通过经由通信网络110的控制面部分分别发送信号到接入交换机120、130、140),并基于网络控制实体191-193的处理能力,将每个端口 121-124、131-134、141-144分配到网络控制实体191-193。例如,如图1所示,网络管理模块155将端口 121-124、131和132(端口组183)与网络控制实体193相关联;将端口 133、134和143(端口组182)与网络控制实体192相关联;并将端口 141、142和144(端口组183)与网络控制实体191相关联。
[0066]网络管理模块155还可以通过经由通信网络110的控制面部分发送信号到接入交换机120、130、140和/或计算装置150来启动一个或多个中间网络控制实体和/或路由反射器。例如,网络管理模块155可以通过经由通信网络110的控制面部分发送信号到计算装置150来启动网络控制实体194。如关于图4所示和如上所述,每个网络控制实体191-193可以通过网络控制实体194发送控制信号(S卩,控制面内的信号)到其他网络控制实体191-193并从其接收控制信号。另外,如在这里进一步详细地描述的,每个网络控制实体191-193可以存储更少的转发-状态信息和/或路由信息,因为网络控制实体194可以存储一些转发-状态信息和/或路由信息代替网络控制实体191-193维持全部转发-状态信息和/或路由信息。例如,每个网络控制实体191-193不存储与其他网络控制实体191-193相关的地址和/或标识符,因为网络控制实体194存储这种地址和/或标识符。同样地,网络控制实体191-193仅存储与网络控制实体194相关的地址和/或标识符。
[0067]网络管理模块155可以发送配置信息和/或转发-状态信息(例如,配置文件)到每个网络控制实体191-194。例如,在一些实施例中,每个网络控制实体191-193可以从网络管理模块155接收与其相关联的端口组181-183相关的配置信息(例如,端口协议信息、网络段分配信息、端口分配信息、外围处理装置信息、等等)和/或转发-状态信息(例如,端口标识符、网络段标识符、外围处理装置标识符,等等)。例如,网络控制实体191可以接收与端口组181相关的配置信息和/或转发-状态信息,网络控制实体192可以接收与端口组182相关的配置信息和/或转发-状态信息,且网络控制实体193可以接收与端口组183相关的配置信息和/或转发-状态信息。网络控制实体194可以接收与网络控制实体191-193相关的配置信息和/或转发-状态信息。同样地,网络控制实体194可以用作网络控制实体191-193之间的中间和/或路由反射器(例如,BGP路由反射器)。
[0068]当启动,改变和/或修改与其端口组181-183相关的转发-状态时,每个网络控制实体191-193可以发送初始的和/或更新的转发-状态信息到其他网络控制实体191-193。例如,响应于外围处理装置174最初耦接到端口 133,网络控制实体192可以发送与端口 133和目的外围处理装置174相关的转发-状态信息到网络控制实体193。在其他实施例中,网络控制实体192还可以发送转发-状态信息到网络控制实体191。
[0069]如图1和4所示,网络控制实体192经由路径167发送转发-状态信息到网络控制实体194。具体地说,网络控制实体192取出与网络控制实体194相关的标识符和/或地址(例如,存储在接入交换机130的存储器中)并相应地发送转发-状态信息。网络控制实体194然后可以发送该转发-状态信息到网络控制实体193。具体地说,网络控制实体194确定转发-状态信息应该被发送到网络控制实体193(例如,网络控制实体193是与网络控制实体192相同的网络段的一部分),取出与网络控制实体193相关的标识符和/或地址(例如,存储在计算装置150的存储器中),并相应地发送更新的转发-状态信息。在网络控制实体192和网络控制实体193之间的这种路径167、166可以被认为包括多个物理跳和多个逻辑跳。具体来说,在网络控制实体192和网络控制实体193之间的路径167、166包括交换机结构系统100的控制面内的两个物理跳和两个逻辑跳(例如,166、167),如图4所示。
[0070]在一些实施例中,网络控制实体193可以在与网络控制实体193相关的存储器中存储从网络控制实体194接收到的转发-状态信息。例如,网络控制实体193可以在网络控制实体193位于的接入交换机120的存储器(例如,存储器252)处存储转发-状态信息。类似地说,网络控制实体193可以响应于接收转发-状态信息,更新接入交换机120的存储器内的配置和/或转发-状态表。在一些实施例中,转发-状态信息可以存储在对于网络控制实体193分配和/或分割的接入交换机120的存储器的一部分处。
[0071]网络控制实体193然后可以发送更新的转发-状态信息到与网络控制实体193相关的端口 121-124、131、132所位于的接入交换机120、130。例如,在一些实施例中,网络控制实体193可以在对于与接入交换机120相关的数据、处理和/或应用分配和/或分割的接入交换机120的存储器(例如,路由表内)的一部分处存储转发-状态信息。在这种实施例中,接入交换机120的存储器可以存储与网络控制实体193相关的存储器的一部分中以及与接入交换机120的剩余实体、处理和/或模块相关的存储器的一部分中的转发-状态信息。在其他实施例中,在可通过在接入交换机120(包括网络控制实体193)处的可应用处理访问的接入交换机120的存储器内的单个位置内存储转发-状态信息。网络控制实体193还发送转发-状态信息到接入交换机130(在接入交换机130处的端口 131和132与网络控制实体193相关)。类似于接入交换机120,接入交换机130可以在存储器内(例如,在路由表内)存储转发-状态信息。
[0072]可以使用交换机结构系统100的剩余部分在外围处理装置171-175之间发送数据分组(例如,以太网分组)。例如,可以从源外围处理装置171向目的外围处理装置174发送数据分组。源外围处理装置171可以使用第一数据链路层协议(例如,以太网、光纤信道等)通过端口 121发送数据分组到接入交换机120。这由图1中的路径161所示。
[0073]基于从网络控制实体193接收到的转发-状态信息,接入交换机120可以准备数据分组以进入通信网络110。例如,在一些实施例中,接入交换机120可以添加和/或附加报头(例如,封装)到具有外围处理装置174和/或端口 133的目的地址的数据分组。在一些实施例中,接入交换机120还可以将数据分组划分和/或分割为要通过通信网络110的数据面部分发送到接入交换机130的多个数据信元。
[0074]如由路径162所示将数据分组和/或信元通过通信网络110的数据面部分发送给接入交换机130。通信网络110的数据面部分可以基于外围处理装置174和/或端口 133的目的地址路由和/或转发数据分组和/或信元。同样地,通信网络110的数据面部分可以使用不同于第一数据链路层协议(例如,以太网、光纤信道,等等)的第二数据链路层协议,以用于从外围处理装置171发送数据分组到接入交换机120。因此,当在通信网络110中时数据分组可以跨越多个物理跳时(例如,在多级交换机结构的各级之间),从通信网络110的数据面部分内的第一数据链路层协议的观点来看,接入交换机120和接入交换机130之间的路径162可以是单逻辑跳。
[0075]接入交换机130然后可以准备要如通过路径163所示的经由端口133发送给外围处理装置174的数据分组和/或信元。这种准备可以包括从数据分组和/或信元除去具有外围处理装置174和/或端口 133的目的地址的报头(例如,解封装数据分组)。在一些实施例中,这种准备还可以包括从数据信元重构和/或重装配数据分组。通常,接入交换机130可以准备要使用第一协议(例如,以太网、光纤信道等)发送给外围处理装置174的数据分组。在数据分组准备好之后,接入交换机130通过端口 133发送数据分组到外围处理装置174。
[0076]在其他实施例中,当由网络控制实体请求时(例如,在通过通信网络110发送数据之前)发送更新的转发-状态信息。例如,管理与源外围处理装置171相关的端口 121的网络控制实体193可以从管理与目的外围处理装置174相关的端口 133的网络控制实体192请求转发-状态信息。虽然在图1或图4中未示出,可以经由通信网络110的控制面部分内的连接经由网络控制实体194发送这种请求。
[0077]在另外的实施例中,网络控制实体194可以存储与网络控制实体194相关联的每个网络控制实体191-193相关的转发-状态信息。因此,在这种实施例中,网络控制实体193发送转发-状态信息的请求到网络控制实体194。响应于该请求,网络控制实体194可以发送转发-状态信息到网络控制实体193。在一些实施例中,响应于请求,网络控制实体192和/或网络控制实体194还发送与网络控制实体192管理的端口组182的其它端口 134和143相关的转发-状态信息。
[0078]图5-8是根据其他实施例的不同配置的交换机结构系统的控制面的逻辑表示。例如,图5示出了处于第一配置400的交换机结构系统的控制面。当处于第一配置400时,交换机结构系统包括管理和/或控制包括端口 421和422的第一组端口 461的网络控制实体471,管理和/或控制包括端口 423、424、431和432的第二组端口 462的网络控制实体472,和管理和/或控制包括端口433、434、441、442、443和444的第三组端口463的网络控制实体473。每个端口 421-424、431-434、441-444可以物理地位于交换机结构系统内的多个接入交换机中的任意一个接入交换机上。例如,端口421-424可以物理地位于第一接入交换机上,端口431-434可以物理地位于第二接入交换机上,且端口 441-444可以物理地位于第三接入交换机上。类似地,网络控制实体471、472、473可以物理地位于交换机结构系统内的多个接入交换机中的任意一个接入交换机上和/或由其执行。
[0079]交换机结构系统的控制面还包括用作网络控制实体471、网络控制实体472和网络控制实体473之间的路由反射器的网络控制实体476。因此,网络控制实体471、网络控制实体472和网络控制实体473可以经由网络控制实体476发送配置信息(例如,端口协议信息、网络段分配信息、端口分配信息、外围处理装置信息等)和/或转发-状态信息(例如,端口标识符、网络段标识符、外围处理装置标识符等)到其他网络控制实体471-473。
[0080]在一些实施例中,网络管理模块(图5-8中未示出)可以维持配置文件。这种配置文件可以存储和/或维持与端口组461、462、463相关的配置和/或转发-状态信息。网络管理模块然后可以发送适当的配置信息和/或转发-状态信息到每一网络控制实体471、472、473、476。例如,图9示出了与第一配置相关的配置文件500。更具体地,图9示出了发送给网络控制实体476的配置文件500。网络控制实体476用作用于其他网络控制实体471、472、473的中间设备(例如,路由反射器),且同样地,网络控制实体476从网络管理模块接收与网络控制实体471、472、473相关的配置和/或转发-状态信息。网络控制实体476然后可以转发和/或发送配置文件500的相关部分到每一其他网络控制实体471、472、473。
[0081 ] 配置文件500将网络控制实体471、472、473与网络控制实体管理的端口组相关的配置相关联。例如,配置A可以与端口组461相关,配置B可以与端口组462相关,且配置C可以与端口组463相关。同样地,且如图9所示,当交换机结构系统的控制面处于第一配置400时,网络控制实体476可以发送配置A到网络控制实体471,发送配置B到网络控制实体472并发送配置C到网络控制实体473。
[0082]网络控制实体476可以存储网络控制实体471、472、473的标识符和/或地址。因此,网络控制实体476可以发送初始配置到网络控制实体471、472、473。另外,如上所述,网络控制实体476可以将从网络控制实体471、472、473接收到的更新的转发-状态信息发送和/或转发到其他网络控制实体471、472、473。在这种实施例中,网络控制实体471、472、473不存储与其他网络控制实体471、472、473相关的地址和/或标识符,而是仅存储与网络控制实体476相关的地址和/或标识符。
[0083]在一些实施例中,如上所述,网络控制实体476可以实行与不同网络段相关的规则和/或策略。例如,如果网络控制实体471和网络控制实体472与第一网络段相关,且网络控制实体473与第二网络段相关,则网络控制实体476可以允许网络控制实体472发送转发-状态信息到网络控制实体471而不是网络控制实体473。在一些实施例中,网络段可以类似于在具有代理机构卷号N0.JUN1-058/00US 108200-2096的标题为 “Methods and Apparatusfor Forwarding-State Transport in a Distributed Control Plane,,的未决美国专利申请(于相同日期提交)中所示和所述的网络段,将该申请通过引用全文包含于此。
[0084]图6示出了处于第二配置450的交换机结构系统的控制面。当处于第二配置450时,交换机结构系统包括网络控制实体477。网络控制实体477和网络控制实体473管理和/或控制端口组463内的端口433、434、441、442、443、444。更具体地,网络控制实体473管理和/或控制端口 433、434、443,且网络控制实体477管理和/或控制端口 441、442、444。
[0085]图10示出了与第二配置450相关的配置文件510。类似于配置文件500,网络管理模块(未示出)可以发送配置文件510到网络控制实体476。网络控制实体476然后可以发送和/或转发配置文件510的相关部分到其他网络控制实体471、472、473、477。例如,在第二配置450中,网络管理模块可以将配置C划分为配置C’(与端口433、434、443相关)和配置(与端口441、442、444相关)。因此,网络控制实体476可以发送配置C’到网络控制实体473并发送配置C"到网络控制实体477。
[0086]当网络控制实体473的可用处理能力经过(例如,落到低于)阈值时,交换机结构系统的控制面可以从其第一配置400(图5)改变和/或移动到其第二配置450(图6)。类似地说,当网络控制实体473不再具有管理整个端口组463的可用资源时,交换机结构系统的控制面可以从其第一配置400改变为其第二配置450。在一些实施例中,网络管理模块可以监控网络控制实体473的活动,并在网络控制实体473的可用能力经过阈值时,网络管理模块可以启动网络控制实体477。网络管理模块然后可以向网络控制实体477分配端口 441、442、444和/或关联端口 441、442、444与网络控制实体477。类似地,网络管理模块然后可以从网络控制实体473分离端口441、442、444。在一些实施例中,网络管理模块可以更新由网络管理模块管理的配置表,以反映从第一配置400到第二配置的改变。
[0087]图7示出了处于第三配置452的交换机结构系统的控制面。当处于第三配置452时,交换机结构系统的控制面包括网络控制实体478 ο网络控制实体478可以是用作用于网络控制实体473和网络控制实体477的中间设备的路由反射器。因此,网络控制实体472可以经由网络控制实体476和网络控制实体478发送转发-状态信息到网络控制实体473和/或网络控制实体477。网络控制实体473可以仅使用网络控制实体478发送转发-状态信息到网络控制实体477。因为网络控制实体473和网络控制实体477两者都由网络控制实体478管理,所以在网络控制实体473和网络控制实体477之间发送的任意转发-状态信息不需要通过网络控制实体476。
[0088]图11示出了从网络控制实体476的观点来看,与第三配置452相关的配置文件520。同样地,当交换机结构系统的控制面处于第三配置452时,网络管理模块可以发送配置文件520到网络管理模块476。网络管理模块476然后可以发送配置A(与端口组461相关)到网络控制实体471,发送配置B(与端口组462相关)到网络控制实体472,并发送配置C(与端口组463相关)到网络控制实体478。
[0089]图12示出了从网络控制实体478的观点来看,与第三配置452相关的配置文件525。例如,网络控制实体478从网络控制实体476接收配置C,且可以将配置C划分为配置C’(与端口 433、434、443相关)和配置C"(与端口 441、442、444相关)。网络控制实体478然后可以发送配置C’到网络控制实体473,并发送配置到网络控制实体477。
[0090]当网络控制实体476的可用处理能力经过阈值时,交换机结构系统的控制面可以从其第二配置450(图6)改变为和/或移动到其第三配置452(图7)。类似地说,当网络控制实体476不再具有管理网络控制实体471、472、473、477的可用资源时,交换机结构系统可以从其第二配置450改变为其第三配置452。在一些实施例中,网络管理模块可以监控网络控制实体476的活动,并在网络控制实体476的可用能力经过阈值时,网络管理模块可以启动网络控制实体478。网络管理模块然后可以向网络控制实体478分配网络控制实体473、477和/或关联网络控制实体473、477与网络控制实体478。类似地,网络管理模块然后可以从网络控制实体476解相关网络控制实体473、477。在一些实施例中,网络管理模块可以更新由网络管理模块管理的配置表,以反映从第二配置450到第三配置452的改变。
[0091]图8示出了处于第四配置454的交换机结构系统的控制面。当处于第四配置454时,交换机结构系统的控制面类似于处于第一配置400的交换机结构系统,不包括网络控制实体471。因此,在第四配置454中,端口组461(包括端口 421和422)与网络控制实体472相关。同样地,网络控制实体472管理端口组461和端口组462两者。
[0092]图13示出了与第四配置454相关的配置文件530。类似于配置文件500,网络管理模块(未示出)可以发送配置文件530到网络控制实体476。网络控制实体476然后可以发送和/或转发配置文件530的相关部分到其他网络控制实体472、473。例如,在第四配置454中,网络控制实体476可以发送配置A和配置B两者到网络控制实体472并发送配置C到网络控制实体473。
[0093]当网络控制实体471和/或网络控制实体472的可用处理能力经过(例如,上升到之上和/或超过)阈值时,交换机结构系统的控制面可以从其第一配置400(图5)改变和/或移动到其第四配置454(图8)。类似地说,当网络控制实体471和/或网络控制实体472具有可用的和/或未使用的资源量和/或处理能力时,交换机结构系统的控制面可以从其第一配置400改变为其第四配置454。在一些实施例中,网络管理模块可以监控网络控制实体471和/或网络控制实体472的活动,并当网络控制实体471和/或网络控制实体472的可用能力经过阈值时,网络管理模块可以组合和/或合并网络控制实体471和网络控制实体472。例如,如果网络控制实体471和网络控制实体472的组合的能力经过阈值,则网络管理模块可以终止、撤消和/或解除分配网络控制实体471。网络管理模块然后可以向网络控制实体472分配端口组461和/或关联端口组461与网络控制实体472。在一些实施例中,网络管理模块可以更新由网络管理模块管理的配置表以反映从第一配置400到第四配置454的改变。
[0094]以上作为交换机结构系统的控制面的动态特性的示例示出并描述了交换机结构系统的控制面的第一配置(图5)、第二配置(图6)、第三配置(图7)和第四配置(图8)。在其他实施例中,可以定义网络控制实体(包括路由反射器)、端口组和/或端口的任意配置。同样地,随着用于管理系统的处理资源的量增加和/或减少,网络管理模块可以启动和/或终止网络控制实体。另外,网络管理模块可以分别启动或者终止具有不足的或者过度的处理能力的控制面的一部分内的网络控制实体。
[0095]图14是示出了根据另一实施例的动态地管理交换机结构系统的控制面的方法600的流程图。方法600包括在602,在第一时间期期间发送第一信号到一组接入交换机中的第一接入交换机。第一信号启动第一网络控制实体。在该组接入交换机处的第一组端口响应于第一网络控制实体的启动而与第一网络控制实体相关联。因此,如上所述,第一网络控制实体管理和/或控制第一组端口。在一些实施例中,第一网络控制实体可以位于第一接入交换机处和/或在第一接入交换机上执行。
[0096]在604,在第一时间期期间将第二信号发送给该组接入交换机中的第二接入交换机。第二信号启动第二网络控制实体。在该组接入交换机处的第二组端口响应于第二网络控制实体的启动而与第二网络控制实体相关联。第二组端口与第一组端口是互斥的。第二网络控制实体管理和/或控制第二组端口。在一些实施例中,第二网络控制实体可以位于第二接入交换机处和/或在第二接入交换机上执行。
[0097]在606,在第一时间期之后的第二时间期期间将第三信号发送给第一接入交换机和第二接入交换机以终止、撤消和/或解除分配第二网络控制实体。第三信号将第二组端口与第一网络控制实体相关联。由此,在第二时间期之后,第一网络控制实体管理和/或控制第一组端口和第二组端口两者。在一些实施例中,可以响应于第一网络控制实体和/或第二网络控制实体的可用处理能力经过(例如,超过)阈值来发送第三信号。例如,在一些实施例中,如果第一网络控制实体和第二网络控制实体的组合的可用能力经过阈值,可以终止、撤消和/或解除分配第一网络管理模块和第二网络管理模块之一。类似地说,如果单个网络管理模块能够管理第一组端口和第二组端口两者(例如,具有能力和/或处理资源),则可以终止、撤消和/或解除分配第二网络管理模块。
[0098]在608,在第三时间期期间将第四信号发送给第一接入交换机以启动第三网络控制实体。第四信号可操作以将第二组端口与第三网络控制实体相关联。在一些实施例中,可以响应于第一网络控制实体的可用处理能力低于阈值来发送第四信号。类似地说,可以当第一网络控制实体不能管理第一组端口和第二组端口两者(例如,不具有能力和/或处理资源)时发送第四信号,以使得可以在第一网络控制实体继续管理第一组端口的同时启动第三网络控制实体以管理第二组端口。
[0099]虽然方法600包括终止网络控制实体(例如,第二网络控制实体)和启动网络控制实体(例如,第二网络控制实体),但是在其他实施例中,方法不是必须包括终止和启动网络控制实体两者。例如,在一些实施例中,方法可以包括既不终止也不启动网络控制实体。对于另一示例,方法可以仅包括终止网络控制实体或者仅启动网络控制实体。另外,在其他实施例中,可以启动和/或终止多于单个网络控制实体。
[0100]虽然以上已经描述各种实施例,但是应当理解仅通过示例的方式呈现它们,而不是限制。在如上所述的方法指示以某个次序发生某些事件时,可以修改这些事件的次序。另夕卜,当可能时可以以并行处理同时执行某些事件,以及如上所述可以按顺序地执行。
[0101]以上所示和所述的实施例涉及多个外围处理装置,包括计算节点、存储节点、服务节点和路由器。在一些实施例中,一个或多个计算节点可以是通用计算引擎,例如,其可以包括处理器、存储器和/或一个或多个网络接口装置(例如,网络接口卡(NIC))。在一些实施例中,计算节点内的处理器可以是一个或多个高速缓存相干域的一部分。在一些实施例中,计算节点可以是主机装置、服务器等。在一些实施例中,一个或多个计算节点可以具有虚拟化资源,以使得任意计算节点(或者其一部分)可以由操作地耦接到交换机结构系统的任意其他计算节点(或者其一部分)代替。
[0102]在一些实施例中,一个或多个存储节点可以是例如包括处理器、存储器、本地附加的磁盘存储器和/或一个或多个网络接口装置的装置。在一些实施例中,存储节点可以具有专用模块(例如,硬件模块和/或软件模块),以使得例如一个或多个计算节点能够经由交换机结构从一个或多个存储节点读取数据和/或写入数据到一个或多个存储节点。在一些实施例中,一个或多个存储节点可以具有虚拟化资源,以使得任意存储节点(或者其一部分)可以由操作地耦接到交换机结构系统的任意其他存储节点(或者其一部分)代替。
[0103]在一些实施例中,一个或多个服务节点可以是开放系统互连(OSI)第4层到第7层装置,例如其可以包括处理器(例如,网络处理器)、存储器和/或一个或多个网络接口装置(例如,1Gb以太网装置)。在一些实施例中,服务节点可以包括硬件和/或软件以执行关于相对重的网络工作负荷的计算。在一些实施例中,服务节点可以执行以相对高效的方式基于每分组地执行计算(例如,比例如在计算节点110处执行更高效)。计算可以包括例如,状态防火墙计算、侵入检测和防止(IDP)计算、可扩展标记语言(XML)加速计算、传输控制协议(TCP)终止计算和/或应用级负载平衡计算。在一些实施例中,一个或多个服务节点可以具有虚拟化资源,以使得任意服务节点(或者其一部分)可以由操作地耦接到交换机结构系统的任意其他服务节点(或者其一部分)代替。
[0104]在一些实施例中,一个或多个路由器可以是可操作以将交换机结构系统的至少一部分(例如,数据中心)连接到另一网络(例如,全球因特网)的网络装置。例如,在一些实施例中,路由器可以启用与交换机结构系统相关的组件(例如,外围处理装置、交换机结构的各部分)之间的通信。例如,可以基于第3层路由协议定义通信。在一些实施例中,一个或多个路由器可以具有一个或多个网络接口装置(例如,1Gb以太网装置),路由器可以通过该一个或多个网络接口装置发送信号给例如交换机结构和/或其他外围处理装置,和/或从它们接收信号。
[0105]在这里描述的一些实施例涉及具有非瞬时计算机可读介质(也可以称为非瞬时处理器可读介质)的计算机存储产品,该非瞬时计算机可读介质在其上具有用于执行各种计算机实现的操作的指令或者计算机代码。计算机可读介质(或者处理器可读介质)在其本质上不包括瞬时传播信号(例如,传播承载在比如空间或者线缆的传输介质上的信息的电磁波)的意义上是非瞬时的。可以为了特定的一个或多个目的设计和构造介质和计算机代码(也可以称为代码)。非瞬时计算机可读介质的实例包括,但不限于:磁存储介质,比如硬盘、软盘和磁带;光存储介质,比如致密盘/数字视频盘(CD/DVD)、致密盘-只读存储器(CD-ROM)和全息照相装置;磁光存储介质,比如光盘;载波信号处理模块;和特别配置以存储和执行程序代码的硬件装置,比如专用集成电路(ASIC)、可编程逻辑器件(PLD)、只读存储器(ROM)和随机存取存储器(RAM)装置。
[0106]计算机代码的实例包括,但不限于,微代码或者微指令,机器指令,比如由编译器产生的,用于产生网络服务的代码,和包括由计算机使用解释器执行的高级指令的文件。例如,可以使用Java、C++或者其他编程语言(例如,面向对象的程序设计语言)和开发工具来实现实施例。计算机代码的另外的示例包括但不限于控制信号、加密代码和压缩代码。
[0107]虽然以上已经描述了各种实施例,但是应当理解仅通过示例的方式呈现它们而不限制,且可以进行形式和细节上的各种更改。在这里描述的设备和/或方法的任意部分可以以任意组合进行组合,除了互斥的组合之外。在这里描述的实施例可以包括描述的不同实施例的功能、组件和/或特征的各种组合和/或子组合。例如,交换机结构系统的一些实施例(例如,图1)包括路由反射器而其它的不包括。
[0108]根据一个实施例,公开了一种非瞬时处理器可读介质,存储表示使得处理器执行以下步骤的指令的代码:在第一时间期期间发送第一信号到多个接入交换机中的第一接入交换机,该第一信号启动第一网络控制实体,响应于第一网络控制实体的启动,在多个接入交换机处的第一多个端口与第一网络控制实体相关联;在第一时间期期间发送第二信号到所述多个接入交换机中的第二接入交换机,该第二信号启动第二网络控制实体,响应于第二网络控制实体的启动,在多个接入交换机处的第二多个端口与第二网络控制实体相关联,该第二多个端口与该第一多个端口互斥;和在第一时间期之后的第二时间期期间发送第三信号到第一接入交换机和第二接入交换机以终止第二网络控制实体,第三信号将该第二多个端口与第一网络控制实体相关联。
[0109]优选地,该非瞬时处理器可读介质进一步包括表示使得处理器执行以下步骤的指令的代码:在第一时间期期间发送与第一多个端口相关的配置信息到第一接入交换机;在第一时间期期间发送与该第二多个端口相关的配置信息到第二接入交换机;和在第二时间期期间发送与该第一多个端口和该第二多个端口相关的配置信息到第一接入交换机。
[0110]优选地,该非瞬时处理器可读介质进一步包括表示使得处理器执行以下步骤的指令的代码:在第一时间期之后和在第二时间期之前接收指示第二网络控制实体的可用处理能力经过阈值的第四信号,该代码表示使得处理器响应于接收第四信号而发送的第三信号的指令。
[0111]优选地,该第一多个端口包括在第一接入交换机处的至少一个端口和在第二接入交换机处的至少一个端口。
[0112]优选地,该非瞬时处理器可读介质进一步包括表示使得处理器执行以下步骤的指令的代码:在第三时间期期间发送第四信号到第一接入交换机以启动第三网络控制实体,第四信号将第二多个端口与第三网络控制实体相关联。
[0113]优选地,该非瞬时处理器可读介质进一步包括表示使得处理器执行以下步骤的指令的代码:响应于发送第三信号,更新配置表,以将该第二多个端口从第二网络控制实体解相关,并将该第二多个端口与第一网络控制实体相关联。
【主权项】
1.一种方法,包括: 当交换机结构系统处于第一能力配置时,在网络控制实体处管理多个端口中的位于第一接入交换机处的第一组端口以及多个端口中的位于第二接入交换机处的第二组端口,其中所述第一接入交换机用作所述网络控制实体的主机并且处于所述交换机结构系统中,所述第二接入交换机处于所述交换机结构系统中, 当所述交换机结构系统处于第二能力配置时,在所述网络控制实体处管理所述第一组端口而非所述第二组端口, 当所述交换机结构系统处于所述第一能力配置时,在所述网络控制实体处接收配置表的与所述第一组端口相关的第一部分, 当所述网络控制实体接收所述配置表的所述第一部分时,在所述第一接入交换机处更新配置文件; 当所述交换机结构系统处于所述第二能力配置时,在所述网络控制实体处接收所述配置表的与所述第一组端口和所述第二组端口相关的第二部分;以及 当所述网络控制实体接收所述配置表的所述第二部分时,在所述第一接入交换机处更新所述配置文件。2.根据权利要求1所述的方法,其中所述多个端口中的所述第一组端口包括所述第一接入交换机处的至少一个端口以及所述第二接入交换机处的至少一个端口。3.根据权利要求1所述的方法,其中: 当所述网络控制实体的可用处理能力低于能力阈值时,所述交换机结构系统处于所述第一能力配置,以及 当所述网络控制实体的所述可用处理能力超过预定阈值时,所述交换机结构系统处于所述第二能力配置。4.根据权利要求1所述的方法,其中所述网络控制实体是第一网络控制实体,所述方法进一步包括: 当所述第一网络控制实体处于所述第二能力配置时,将信号从所述第一网络实体发送至所述第二接入交换机,从而启动所述第二接入交换机处的第二网络控制实体,所述第二网络控制实体被配置为管理所述第二组端口;以及 当所述交换机结构系统从所述第二能力配置改变为所述第一能力配置时,将信号从所述第一网络实体发送至所述第二接入交换机,从而终止所述第二网络控制实体。5.根据权利要求1所述的方法,其中: 当所述交换机结构系统处于所述第一能力配置时,所述网络控制实体维持与所述第一组端口和所述第二组端口相关的转发-状态信息,以及 当所述交换机结构系统处于所述第二能力配置时,所述第一网络控制实体维持与所述第一组端口而非所述第二组端口相关的转发-状态信息,且所述第二接入交换机处的第二网络控制实体维持与所述第二组端口而非所述第一组端口相关的转发-状态信息。6.根据权利要求1所述的方法,其中所述网络控制实体是第一网络控制实体,所述第一网络控制实体被配置为将与操作地耦接到端口的外围处理装置相关的转发-状态信息从所述第一组端口发送到第二网络控制实体。7.根据权利要求1所述的方法,所述方法进一步包括: 响应于所述交换机结构系统从所述第一能力配置改变为所述第二能力配置,从所述第一网络控制实体发送信号,从而启动计算装置处的路由反射器网络控制实体,当所述交换机结构系统处于所述第二能力配置时,所述路由反射器网络控制实体是所述网络控制实体与所述第二接入交换机处的网络控制实体之间的路由反射器。8.一种装置,包括: 网络控制实体,实现在存储器或处理器的至少一个中并且位于被配置为包含在多个接入交换机中的第一接入交换机处,所述多个接入交换机操作地耦接到交换机结构系统,当所述交换机结构系统处于第一能力配置时,所述网络控制实体被配置为管理多个端口中的第一组端口以及所述多个端口中的第二组端口,所述第一组端口包括位于所述多个接入交换机中的所述第一接入交换机处的至少一个端口以及位于所述多个接入交换机中的第二接入交换机处的至少一个端口,所述第二组端口与所述第一组端口互斥, 当所述交换机结构系统处于第二能力配置时,所述网络控制实体被配置为管理所述第一组端口而非所述第二组端口, 当所述交换机结构系统处于所述第一能力配置时,所述网络控制实体被配置为接收由网络管理模块管理的配置表的第一部分,当所述交换机结构系统处于所述第二能力配置时,所述网络控制实体被配置为接收所述配置表的第二部分。9.根据权利要求8所述的装置,其中: 当所述网络控制实体的可用处理能力低于能力阈值时,所述交换机结构系统处于所述第一能力配置,以及 当所述网络控制实体的所述可用处理能力超过预定阈值时,所述交换机结构系统处于所述第二能力配置。10.根据权利要求8所述的装置,其中所述网络控制实体是第一网络控制实体,所述方法进一步包括: 当所述第一网络控制实体处于所述第二能力配置时,将信号从所述第一网络实体发送至所述第二接入交换机,从而启动所述第二接入交换机处的第二网络控制实体,所述第二网络控制实体被配置为管理所述第二组端口;以及 当所述交换机结构系统从所述第二能力配置改变为所述第一能力配置时,将信号从所述第一网络实体发送至所述第二接入交换机,从而终止所述第二网络控制实体。11.根据权利要求8所述的装置,其中: 当所述交换机结构系统处于所述第一能力配置时,所述网络控制实体维持与所述第一组端口和所述第二组端口相关的转发-状态信息,以及 当所述交换机结构系统处于所述第二能力配置时,(I)所述第一网络控制实体维持与所述第一组端口而非所述第二组端口相关的转发-状态信息,且(2)所述第二接入交换机处的第二网络控制实体维持与所述第二组端口而非所述第一组端口相关的转发-状态信息。12.根据权利要求8所述的装置,其中所述网络控制实体是第一网络控制实体,所述第一网络控制实体被配置为将与操作地耦接到端口的外围处理装置相关的转发-状态信息从所述第一组端口发送到第二网络控制实体。13.根据权利要求8所述的装置,所述方法进一步包括: 响应于所述交换机结构系统从所述第一能力配置改变为所述第二能力配置,从所述第一网络控制实体发送信号,以启动路由反射器网络控制实体,当所述交换机结构系统处于所述第二能力配置时,所述路由反射器网络控制实体是所述网络控制实体与所述第二接入交换机处的网络控制实体之间的路由反射器。14.根据权利要求8所述的装置,其中所述网络控制实体是第一网络控制实体,当所述交换机结构系统处于所述第二能力配置时,所述第一网络控制实体被配置为通过将所述第二组端口从第二网络控制实体解相关并将所述第二组端口与所述第一网络控制实体相关联来更新所述第一接入交换机处的配置文件。15.一种方法,包括: 基于第一网络控制实体的可用处理能力状态将接入交换机处的多个端口中的第一组端口与所述第一网络控制实体相关联; 向所述第一网络控制实体并且基于所述第一网络控制实体的所述可用处理能力状态发送配置表的第一部分; 在具有所述第一网络控制实体的所述接入交换机处基于所述配置表的所述第一部分更新配置文件; 基于第二网络控制实体的可用处理能力状态的改变将所述多个端口中的第二组端口与所述第一网络控制实体相关联; 基于所述第二网络控制实体的所述可用处理能力状态的改变向所述第一网络控制实体发送所述配置表的第二部分;以及 在所述接入交换机处基于所述配置表的所述第二部分更新配置文件。16.根据权利要求15所述的方法,其中当所述第二网络控制实体的所述可用处理能力状态超过预定可用处理能力阈值时,所述配置表的所述第二部分被发送至所述第一网络控制实体。17.根据权利要求15所述的方法,其中当所述第二网络控制实体的所述可用处理能力状态下降至低于预定可用处理能力阈值时,所述配置表的所述第二部分被发送至所述第二网络控制实体。18.根据权利要求15所述的方法,其中所述第一网络控制实体被配置为将与操作地耦接到端口的外围处理装置相关的转发-状态信息从所述第一组端口发送到所述第二网络控制实体。19.根据权利要求15所述的方法,所述方法进一步包括: 响应于所述可用处理能力状态的改变,从所述第一网络控制实体发送信号,以启动路由反射器网络控制实体,所述路由反射器网络控制实体是所述第一网络控制实体与所述第二网络控制实体之间的路由反射器。20.根据权利要求15所述的方法,其中基于所述配置表的所述第二部分更新所述配置文件包括:在发送所述配置表的所述第二部分之后,将所述第二组端口从所述第二网络控制实体解相关并将所述第二组端口与所述第一网络控制实体相关联。
【文档编号】H04L12/937GK106027428SQ201610635213
【公开日】2016年10月12日
【申请日】2011年9月15日
【发明人】Q·沃赫拉, U·孔杜尔, N·加达姆
【申请人】瞻博网络公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1