专利名称:通过在服务插入体系的节点中安装软件使服务动态实例化的利记博彩app
技术领域:
本公开一般涉及计算机网络。更具体地,本公开涉及用于计算机网络的服务插入 体系结构。
背景技术:
计算机网络包括为计算机网络用户提供服务的多个硬件元件。这样的服务包括域 名服务、防火墙、网络分组过滤、网络分组捕获、网络分组缓存、网络分组路由等。当前用于 部署和配备服务的方法需要大量的规划和工程设计以及“人类接触”来使能每个服务。这 使得网络管理员对部署新的服务非常谨慎并且可能不愿意部署新的服务,因为与这些服务 相关联的花费和风险往往大于额外服务为他们的网络带来的所感知到的利益。例如,向已部署的网络添加新的服务“X”可能需要以下处理。要求管理员了解与 他们的网络能力有关的服务的性能和可扩展性属性,以便获得支持该服务的正确的硬件平 台(这里也称为网络设备)。为了部署服务“X”,客户必须设计重定向机制(例如,WCCP、PBR等)并取得重定 向(redirection)机制的资格并且/或者针对该平台修改网络转发拓扑,以使得流量能够 从网络流向该平台,从而使得设备执行其服务。为了允许冗余、增加的能力或可扩展性,管理员必须部署另外的(“N”个)平台。 这需要管理员配备活动平台或待命平台,该平台可以或可以不在接近其最佳能力的任何状 态中操作。替代地,服务平台可被部署为不同的实体,这进一步增加了网络的部署、故障排 除和管理的操作复杂性。如果管理员想要备份该平台,则他们需要购买正是他们想要备份的平台。例如,这 实际上意味着他们需要购买并存储防火墙、IPS (入侵防止服务)、服务器负荷均衡器(SLB) 等,并且储存该平台以在主要设备出故障时进行可能的部署。这还要求在平台出故障时,需 要实现“支架辊”以使得平台可被传送、连接电缆和配备。这还意味着客户手头必须具有的 硬件量是非常高的以便涵盖所有的他们对于任何弹性的特殊需要。提供每个服务的成本和 复杂性也使得管理员不会部署被认为对商业运作不是绝对重要的任何服务。如果管理员确定需要额外的服务能力,则必须针对被添加到网络中的每个新的服 务实例再现用于部署服务“X”的前述过程。因此,在本领域中存在对提供支持动态适配性的服务插入体系结构的方法和装置 的需要。
为了能够详细地理解本公开的上述特征,可以通过参考实施例得到在上面简要概 述的本公开的更具体描述,实施例中的一些在附图中示出。然而,注意,附图仅图示出了本 公开的典型实施例,因此,不应认为是对其范围的限制,因为本公开可以允许其它等效实施 例。
图1描绘了根据本发明一个实施例使用的硬件体系结构的框图;图2描绘了本发明一个实施例的功能框图;图3描绘了表示图2中描绘的本发明的一个实施例的操作的流程图;图4描绘了本发明另一实施例的功能框图;图5描绘了表示图4中描绘的本发明的实施例的操作的流程图。
具体实施例方式MM本发明的一个实施例包括一般性服务节点,该一般性服务节点等待采用特定服务 的指令时工作在第一状态中。当接收到指令时,该一般性服务节点在第二状态中操作,在第 二状态中,该节点安装软件以使得该一般性服务节点向网络提供该特定服务。该一般性服 务节点与一个或多个控制节点通信,以使得一般性服务节点可适合于提供(一个或多个) 控制节点所请求的特定服务。舰图1描绘了包括本发明一个实施例的计算机网络100或者其一部分的框图。计算 机网络100包括至少一个控制节点102、通信网络104和一般性服务节点106。( 一个或多 个)控制节点102与一般性服务节点106的组合以适应的方式向用户132提供服务。控制节点102包括中央处理单元108、支持电路110和存储器112。CPU 108可以 是一个或多个可通过商业途径获得处理器或微处理器。支持电路110包括支持CPU 108的 操作的公知电路、模块和子系统。支持电路110包括诸如缓存、网络接口卡、时钟电路、电 源、总线控制器等之类的元件。存储器112可以包括一个或多个随机存取存储器或只读存 储器。这样的存储器包括半导体存储器、盘驱动器、光学存储器等。控制节点102将各种软件包或模块存储在存储器112中,以供CPU 108执行来实 现将提供给网络100及其用户132的某些服务。这些服务可由单个服务器或者多个服务器 提供。在典型部署中,每个服务将由单独的硬件节点102提供。出于简化的目的,向网络 100提供各种服务的软件被描述为存储在单个控制节点102中。本领域技术人员将明白, 这些服务以及支持这些服务的软件可被分布在多个硬件节点中,这将在网络100内形成专 用服务。具体地,存储器112存储服务代理(service broker) 114、服务目录116、服务分类 器118、各种可安装组件软件120以及至少一个服务策略122。在其它实施例中,服务代理 114、服务目录116或者服务分类器118可以在不同节点上运行。这些软件模块被运行来实 例化可经由一般性服务节点106获得的特定服务。控制节点102通过通信网络104与一般 性服务节点通信。通信网络104可以包括各种通信基础设施,包括以太网、无线网络、广域网组件、 局域网组件等。一般性服务节点106包括至少一个中央处理单元124、支持电路1 和存储器 128。一般性服务节点被耦合到通信网络,以使得当一般性服务节点被(一个或多个)控制 节点102配备时,将向通信网络104的用户132提供特定服务。至少一个中央处理单元IM包括一个或多个可通过商业途径获得的处理器或微 处理器。支持电路126包括支持CPU 1 的操作的公知电路、模块和子系统。这样的支持电路1 包括时钟电路、总线控制器、缓存、电源、网络接口卡等。存储器1 包括一种或多 种存储器类型,包括随机存取存储器、只读存储器、盘驱动器、光学驱动器等。一般性服务节 点106在其存储器128内存储有引导程序软件130,该引导程序软件130使得该一般性服务 节点能够被连接到通信网络104并对自身初始化。一般性服务节点106 —旦被初始化,将 不会向网络提供任何服务直到其被一个或多个控制节点102配备为止。以这种方式,由一 般性服务节点106提供的服务可以以动态方式(按照需要)被插入到网络100中。以动态 方式插入这样的服务的能力实现了用于网络100的服务插入体系结构(SIA)。在2007年1 月19日提交的美国专利申请No. 11/655,363中提供了对SIA的描述,该申请通过引用被整 体结合于此。在本发明的一个实施例中,对一般性服务节点的配备是由管理员生成的策略驱动 的。图2和图3描绘了表示该第一实施例的功能示图和流程图。在第二实施例中,一般性 服务节点以适应性方式被配备以支持网络的即时需求。图4和图5描绘了表示该第二实施 例的功能示图和流程图。图2描绘了可操作来配备图1的一般性服务节点106的各种软件模块的功能示 图。如上面提到的,这些功能块可在网络内的一个或多个控制节点上运行。网络的功能体 系结构200包括服务代理206、服务目录204、管理员202、配置服务器210以及一般性服务 节点208。服务代理206形成了主控制器,其允许用于可感知SIA服务的网络基础设施的服 务的部署、登记等。一般性服务节点208包括嵌入的引导程序软件,该软件允许一般性服务 节点参与尚未被配备有任何特定于服务的软件的SIA,这使得管理员能够根据需要来部署 特定软件以实现所希望的服务目标。图2的功能示图表示管理员202购买一般性服务硬件节点208并且在网络部署期 间从服务的角度选择如何实现该一般性硬件(例如,将服务节点部署为防火墙、服务负荷 均衡器(SLB)、分组过滤器及捕获器等)的说明性方式。当服务链被创建时,这使得管理员 202具有“N”个一般性服务节点可用于担任由管理员规定的服务节点身份。在此实施例中, 管理员202具有关于特定服务数目及其服务节点信息的先验知识。服务目录204定义了由管理员202创建并可视化的网络服务链。如先前提到的, 服务代理206通过与所有的SIA参与平台通信而形成了针对SIA的主控服务器。一般性服 务节点208被载入了一程序,该程序在第一操作状态期间引导平台参与SIA架构并向SIA 控制平面登记。一旦进行了登记,一般性服务节点就在第一状态中等待直到被指示转变到 第二状态为止。在第二操作状态中,一般性服务节点208可被服务代理206编程,以使得一 般性服务节点208能够担任由管理员定义的服务身份。配置服务器210是软件贮存库,该软件被需要来使得一般性服务节点208能够担 任适当的服务节点身份并且验证针对实现方式的任何许可证(在需要时)。一般性服务节 点208例如可以是基于X86的刀片服务器、内部服务模块、IRU PC设备等。当一般性服务节 点208将采用特定服务时,该节点208向配置服务器210告知节点208将要采用的服务的 类型以及该节点的特性,例如处理器类型、存储器容量、总线速度等。配置服务器210响应 以适当的软件以用于安装在该特定节点上来实现所请求的服务。图3描绘了图2的各个功能块之间的协作以初始化一般性服务节点208并且将该 节点定义来执行特定服务的流程图。将同时描述图2和图3。
为了开始管理员驱动处理,在路径212处,管理员202将一般性服务节点208安装 到网络上并且配置SIA,即,使得一般性服务节点208能够连接到SIA的控制平面。在路径 214处,一般性服务节点208通过向服务代理206登记来完成SIA登记处理。在路径216 处,管理员202调用服务目录用户界面和处理。通过该界面,管理员建立定义了网络的服务 需求的服务链。在路径218,服务目录204向服务代理轮询网络中的服务的当前状态。在路径220, 服务代理向服务目录204发送服务信息,例如何种服务可用。在路径222,管理员202创建定义了服务链的服务策略,该服务策略包括将部署在 该服务链中的特定服务。管理员202选择适当的一般性服务节点208来担任策略中定义的 特定服务身份。在路径224,基于由管理员实现的服务链,服务代理206向一般性服务节点 208发送下载并担任特定服务节点身份,例如防火墙、IPS、虚拟化服务器等的消息。在路径226,一般性服务节点208联系配置服务器210以下载用于将要担任的服务 节点身份的适当操作系统(OS)、软件和配置信息(配置包)。这样的下载包括使节点208 执行所希望服务所需的任何可安装软件组件和配置信息。一般性服务节点向配置服务器告 知该节点的特性,例如处理器类型和速度、存储器容量、总线速度等,以及要采用的服务的 类型。配置服务器210确保这些特性能够支持所请求的服务。服务器210还判断是否需要 用于软件的任何许可证。在路径228,服务器210处理请求,并将所请求的配置包递送给一般性服务节点 208。在路径230,一般性服务节点接收并安装用于所担任的服务节点身份的配置包。在路 径232,一般性服务节点208可以根据需要重新初始化以便担任新的服务节点身份,并且一 旦处于适当的操作状态,就在服务代理206中登记为具有所担任身份的服务节点。最后,在 路径234处,服务代理206将该服务节点(先前的一般性服务节点208)插入服务链中以满 足由管理员202设置的服务链特性。以这种方式,管理员202建立了要求特定服务在网络内被实现的策略。服务代理 206利用该策略来初始化将被配备来提供如管理员的策略中所标识的服务的一般性服务节 点208。因此,前面的功能处理是用于SIA的“管理员驱动的”模型。尽管在图2和图3的示图中执行的各种功能被讨论为是在单个服务器上执行的, 然而它们也可在多个服务器上被执行。在其它实施例中,服务的每个可以在虚拟化环境中 被提供,在虚拟化环境中,服务在单个服务器上被执行,而每个功能在单独的虚拟化服务器 或“容器”内被执行。以这种方式,包括一般性服务节点在内的所有功能都可由单个硬件平 台来提供,并且一个或多个功能可以利用独立的虚拟环境来执行。在第二实施例中,一般性服务节点208被动态地配备并分配。在此模型中,事件、 条件或策略定义被用作使得一般性服务节点从第一状态转变为第二状态的服务配备机制。 服务链内的服务需求事件或阈值被定义,并且当被达到时,触发利用适当数目的一般性服 务节点来动态配备、配置所需要的一个或多个服务并插入该服务链中。实质上,该网络创建 了按需服务(service-on-demand)模型。该模型意味着管理员对服务链设置策略事件,当 该策略事件被达到时,将用作用于动态地将一般性服务节点分配来在该事件的持续期间担 任适当服务节点身份的触发。此时,一般性服务节点可以根据需要回到其原始的一般性服 务节点状态(即,第一状态)或者继续所担任的服务节点身份角色,以满足策略特性。
图4描绘了 SIA的动态分配驱动模型的功能框图。图5描绘了图4的功能块之间 的通信的流程图。图4和图5将一起被描述。在路径412处,管理员402根据需要将一般 性服务节点408安装到网络上并且配置SIA。在路径414处,一般性服务节点408通过向 服务代理406登记来完成SIA登记处理。在路径416处,管理员402调用服务目录404及 其用户界面。通过该界面,管理员402开发出用于适应性分配一般性服务节点408的策略。 该策略建立了整体服务链和用于向该服务链分配一般性服务节点的标准两者。在路径418,服务目录404向服务代理406轮询网络中的服务的当前状态。在路径 420,服务代理406向服务目录404发送服务信息。在路径422,管理员402创建定义了服务链以及标准的服务策略,基于该标准,服 务代理406将要向该服务链插入另外的服务节点。在一个实施例中,该标准是与该服务链 中的活动节点相关联的阈值。该阈值定义了一服务水平,当该服务水平被超过时,使得一般 性服务节点按照与具有被超过阈值的节点相同的方式被配备。以这种方式,以按需方式提 供了“在线”援助。在路径424,当该阈值被达到时,服务代理406向一般性服务节点408发 送下载并担任特定服务节点身份的消息。在路径426,一般性服务节点408随后联系配置服务器410以下载所担任服务节点 身份所需的适当操作系统、软件和配置信息(配置包)。在路径428,配置服务器410接收 请求,并将所请求的配置包递送给一般性服务节点408。在路径430,一般性服务节点408 接收并安装用于所担任服务节点身份的配置包。在路径432,一般性服务节点408可以根据 需要重新初始化以便担任新的服务节点身份,并且一旦处于操作状态中,就登记为用于所 担任身份的活动服务节点。最后,在路径434处,服务代理406随后可根据需要将该服务节 点插入服务链中,以满足由管理员设置的策略。以这种方式,一般性服务节点408在请求时被动态地分配以满足支持网络操作的 需要。当该需要被满足时,一般性服务节点408可以保持所采用的服务身份,或者一般性服 务节点408可以返回一般状态以等待其下一服务需求。在一个实施例中,一般性服务节点408可以作为备份节点被耦合度网络。该备份 节点在需要时可被配置来采用已出故障的服务。因此,单个一般性服务节点408可被用来 备份可供网络用户使用的多个服务。描述管理员驱动模型的具体使用示例,其中,管理员已实现了包括服务代理、服务 节点和一般性服务节点的SIA。如上面所公开的,在管理员驱动实施例中,管理员创建用于 服务链的策略,其中,在一个实施例中,该链被表示为SCLl — IPS —防火墙一Web缓存一空(链的末尾)然后管理员选择适当实体来制定该策略,在此情况中,管理员选择SCLl =路由器 1/INT E0/0IPS = IPS/SJ-fI2防火墙=防火墙2/SJ-fI2Web 缓存=GSNl/SJ-fI2上面的相关联实体被添加到服务链的定义中并且经由SIA控制平面被给予适当 的SIA信息。GSm联系配置服务器并且下载适当的配置包以担任Web缓存服务节点的身 份。一旦被初始化为新的Web缓存服务节点,先前的一般性服务节点就在服务代理处被登
8记为Web缓存服务节点。一旦被登记,SIA服务代理就将该节点指派给适当的服务链。该 SIA服务链然后可全面地操作,并且服务将开始处理与该链相关联的流量。在动态分配模型中,管理员实现了包括服务代理、服务节点和一般性服务节点的 SIA0 一般性服务节点包含引导程序软件,该软件使得该节点能够在SIA服务代理处被登记 为可用于担任任何所需服务身份的一般性节点。在说明性实施例中,管理员创建用于服务 链的策略,该策略被表示为如下SCL1 —IPS—防火墙(50%负荷阈值,然后将另一防火墙添加到网络中)一空(链 的末尾)然后管理员选择适当实体来实施该策略。在此情况中,管理员选择SLC 1 =路由器 1/INT E0/0IPS(SNl) = IPS/SJ-fI2防火墙(SN2a) (50%负荷阈值)=防火墙2/SJ-fI2防火墙(SN2b) = GSNl/SJ-fI2上面的相关联实体被添加到服务链中并且经由控制平面被给予适当的SIA信息。 如果防火墙服务上的负荷阈值变得大于50%,则临界阈值被达到,从而使得GSm自动地 (无需用户干涉)联系配置服务器并且下载适当的配置包以担任防火墙SN2b服务节点的身 份。一旦被初始化为新的防火墙,则该一般性服务节点经由SIA服务代理和控制平面处理 自动地登记为防火墙服务节点并被指派给适当服务链。该SIA服务链然后可全面地操作, 并且服务将开始处理与该链相关联的流量。如果SNh上的负荷阈值退到50%之下,则策 略可以指示该一般性服务节点注销服务节点2b防火墙节点并且重启进入空闲的一般状态 (或者返回先前的服务状态)。替代地,即使该负荷阈值未被超过,该一般性节点也可以维 持防火墙节点。尽管前面涉及到本发明的实施例,然而还可以在不脱离本发明的基本范围的情况 下设计出本发明其它的和另外的实施例,并且本发明的范围由所附权利要求来确定。
9
权利要求
1.一种用于向网络提供服务的装置,包括一般性服务节点,所述一般性服务节点耦合到所述网络,以用于在等待来自所述网络 的指令的第一状态中操作,并且用于当接收到采用特定服务的指令时,在第二状态中操作 以安装用于使所述一般性服务节点能够向所述网络提供所述特定服务的软件。
2.如权利要求1所述的装置,其中,所述一般性服务节点与配置服务器通信以接收用 于使所述一般性服务节点能够提供所述特定服务的所述软件。
3.如权利要求1所述的装置,还包括控制节点,所述控制节点耦合到所述网络,以用于指示所述一般性服务节点提供所述 特定服务。
4.如权利要求3所述的装置,其中,所述控制节点包括定义所述特定服务的服务目录。
5.如权利要求3所述的装置,其中,所述控制节点包括基于条件来定义所述特定服务 的服务目录,其中,所述一般性服务节点在条件发生时接收用于提供所述特定服务的软件。
6.如权利要求3所述的装置,其中,所述特定服务被定义在服务策略中。
7.如权利要求3所述的装置,其中,所述控制节点还包括用于指示所述一般性服务节 点提供所述特定服务的服务代理。
8.如权利要求3所述的装置,其中,所述控制节点或所述一般性服务节点中的至少一 者是虚拟化环境中的服务器。
9.如权利要求3所述的装置,其中,所述一般性服务节点还包括引导程序软件,所述引 导程序软件当被执行时,使得所述一般性服务节点向所述控制节点登记。
10.一种向网络提供服务的方法,包括在第一状态中等待来自所述网络的使一般性服务节点在第二状态中操作的指令;当接收到采用特定服务的指令时,启动第二状态,在所述第二状态中,所述一般性服务 节点安装用于使得所述一般性服务节点能够向所述网络提供所述特定服务的软件。
11.如权利要求10所述的方法,其中,所述第一状态包括向控制节点登记一般性服务节点;以及从所述控制节点向所述一般性服务节点发送指令以用于指示所述一般性服务节点执 行所述特定服务。
12.如权利要求11所述的方法,其中,所述第二状态包括请求配置服务器将所述软件发送给所述一般性服务节点;从所述配置服务器向所述一般性服务节点发送软件;在所述一般性服务节点处执行所述软件以使得所述特定服务能够被提供给所述网络。
13.如权利要求10所述的方法,其中,所述特定服务由服务策略来定义。
14.如权利要求10所述的方法,其中,所述特定服务被动态地选择来支持所述网络的 需要。
15.一种系统,包括一般性服务节点,所述一般性服务节点耦合到网络,以用于在等待来自所述网络的指 令的第一状态中操作,并且用于当接收到采用特定服务的指令时,在第二状态中操作以安 装用于使所述一般性服务节点能够向所述网络提供所述特定服务的软件;控制节点,所述控制节点耦合到所述网络,以用于向所述一般性服务节点传输指令以引起从所述第一状态到所述第二状态的转变。
16.如权利要求15所述的装置,其中,所述控制节点包括配置服务器,所述一般性服务 节点与配置服务器通信以接收用于使得所述一般性服务节点能够提供所述特定服务的所 述软件。
17.如权利要求15所述的装置,其中,所述控制节点包括定义所述特定服务的服务目录。
18.如权利要求15所述的装置,其中,所述控制节点包括基于条件来定义所述特定服 务的服务目录,其中,所述一般性服务节点在条件发生时从所述第一状态转变为所述第二 状态。
19.如权利要求15所述的装置,其中,所述特定服务被定义在服务策略中。
20.如权利要求15所述的装置,其中,所述控制节点还包括服务代理,用于指示所述一 般性服务节点提供所述特定服务并且将所述特定服务插入新的或已有的服务链中。
21.如权利要求15所述的装置,其中,所述控制节点、所述一般性服务节点中的至少一 者或部分是虚拟化环境中的服务器。
22.如权利要求15所述的装置,其中,所述一般性服务节点还包括引导程序软件,所述 引导程序软件当被执行时,使得所述一般性服务节点向所述控制节点登记。
全文摘要
一般性服务节点在等待采用特定服务的指令的同时操作在第一状态中。在接收到指令时,该一般性服务节点在第二状态中操作,其中,该节点安装从网络接收的软件以使得该一般性服务节点能够向该网络提供该特定服务。一般性服务节点与一个或多个控制节点通信,以使得该一般性服务节点可被适配来提供一个或多个控制节点所请求的特定服务。
文档编号H04L29/08GK102090020SQ200980125298
公开日2011年6月8日 申请日期2009年8月19日 优先权日2008年8月26日
发明者保罗·昆恩, 肯尼思·杜拉佐 申请人:思科技术公司