在软件定义网络中支持任意路由标准的制作方法_3

文档序号:9355663阅读:来源:国知局
覆写的路由可以被定义在网络元件的路由表中,或者可以是策略引擎用于覆写在路 由表中定义的路由的另一路由。在基于延迟作出选择新路由的决定中,策略引擎可以测量 一段时间中的延迟,使得延迟中的小波动不会导致路由的改变。
[0035] 图2根据这里所公开的一个实施例示出了在SDN使能网络中支持任意路由标准的 方法200。一般地,方法200的步骤允许网络路由基于非传统路由标准被动态地修改,非传 统路由标准包括但不限于美元成本、延迟、天气条件、能量成本和用户身份。在步骤210中, 为SDN使能网络中的多个网络元件提供为数据分组定义路由的路由表。在步骤330,应用程 序接口(API)提供以抽象网络元件硬件和服务。例如,这些API可以授权外部(或本地) 应用到路由引擎和网络元件的RIB的抽象访问,使得它们的默认路由决定可以由已识别出 更有利路由的策略引擎被覆写。在步骤230, 一个或多个非传统路由标准被指定。标准的示 例包括美元成本、延迟、地理限制、合同条款、服务水平协议和天气条件,等等。在步骤240, 数据分组由网络元件接收。在步骤250,参考图3更详细地描述,策略引擎可以根据非传统 路由标准修改预定义的路由。在步骤260,网络元件可以根据修改的路由转发数据分组。
[0036] 图3根据这里所公开的一个实施例示出了基于非传统路由标准修改路由的方法 300。一般地,方法300的步骤基于一个或多个非传统路由标准对多个不同的路由评分,以 确定是否存在比现在使用的路由更好的路由来路由数据。在一个实施例中,策略引擎执行 方法300的步骤。在步骤310,策略引擎取回路由和指定的标准。路由可以被定义于网络元 件的路由表中,并且该策略引擎可使用一个或多个API来读取路由表中的路由。策略引擎 还可以基于从SDN使能网络中的网络元件取回的网络拓扑信息计算多个其它路由。预定义 标准可以包括,但不限于:美元成本、延迟、地理的限制、合同条款、服务水平协议、能源成本 和天气条件,或它们的任意组合。在步骤320,策略引擎基于指定标准计算每个路由的路由 得分。路由得分可以反映路由基于指定标准的路由能力。例如,路由得分可以反映每个路 由的总成本或延迟。在步骤330,策略引擎可以比较每个路由的路由得分。在步骤340,策 略引擎选择具有最佳路由得分的路由。此处所公开的实施例设想任何量化表来指示路由之 间的相对优先级。例如,较高的路由得分可以反映较小延迟,并且较高的总路由得分可以反 映最小延迟,并因此反映更可取路由。作为另一示例,最低路由得分可以反映较低的美元成 本来路由数据,其中较低的总路由得分表示优越路由。在步骤350,当确定所选择的路由不 是当前在所有路由操作中实施的路由时,在路由表中定义的路由被覆写以根据所选择的路 由来路由数据分组。
[0037] 图4根据这里所公开的一个实施例示出了在SDN使能网络中支持任意路由标准的 系统400。如图所示,多个网络元件 N经由SDN使能网络430被连接。多个计算机450 i N 通过SDN使能网络430也被连接到网络元件402i N。一般地,SDN使能网络430可以是电信 网络和/或广域网(WAN)。在具体实施例中,SDN使能网络430是因特网。
[0038] 网络元件402i N-般包括通过总线420连接到存储器406的处理器404和网络接 口装置418。网络元件402 1N被配置为执行集装箱化软件应用。网络元件402 ^通常受操 作系统(未示出)控制。操作系统的示例包括UNIX?操作系统、Lkrox?操作系统的分布 以及Cisco Systems?的IOS操作系统。包括的处理器404可以是单个CPU、多个CPU、具有 多处理核的单个CPU,等等。处理器404可以执行为此处所述实施例开发的软件。类似地, 存储器406可以是随机存取存储器。虽然存储器406被示为单个实体,但是应当理解存储 器406可以包括多个模块,并且存储器406可以存在多个级别,从高速寄存器和高速缓存到 较低速度但较大的DRAM芯片。网络接口装置418可以是允许网络元件402i N通过SDN使 能网络430与其它网络元件402i 计算机450 i N通信的任何类型的网络通信装置。
[0039] 如图所示,存储器406包含编制(orchestration)应用412,其是通常被配置编制 SDN使能网络430中的网络元件402i N的自动化和可编程性的应用。一般地,编制应用412 提供用于抽象SDN使能网络430中的网络元件402i ,的实施具体细节的多个API。换句话 说,编制应用412是允许编程者或网络管理者访问和监视使能网络430中的网络元件402 1N 的不同功能和输出的抽象工具。通过使用编制应用412,函数编程技术可以被用于编程大量 的网络元件402i N,而不管在具体网络元件402i N之间发现的大量区别。具体地,编制应用 412可以提供接口以允许应用(如策略引擎413)读、写和修改网络元件402i N的路由表和 路由引擎413。
[0040] 存储器406还包含策略引擎413,其是通常被配置为基于非传统网络标准来修改 路由策略的应用。例如,策略引擎413可以基于美元成本、延迟、地理限制、合同条款、服务 水平协议、能源成本和天气条件,或它们的任意组合来修改路由。在确定存在比目前使用的 路由更好的路由来路由数据时,策略引擎413可以发布命令来改变网络元件402 1N的路由 引擎414和RIB 416。策略引擎413可以使用由编制应用412提供的API 415,来修改网络 元件402i ,的RIB和路由引擎414。网络元件402 i N的路由引擎414是通常被配置为执行 各个网络元件的核心网络功能的应用。路由引擎可以与路由信息库(RIB)416交互,路由信 息库(RIB)416也被称为路由表,它指定路由引擎所使用的多个规则来将网络元件402^的 入口端口(未示出)接收的分组路由到网络元件4勺合适出口端口(未示出)。在一 个实施例中,各个网络元件,的RIB 416包括SDN使能网络130的即时拓扑信息,即, 各个网络元件被连接到什么其它网络元件,等。
[0041] 如图所示,存储器406还包含应用编程接口(API) 415,其存储由编制应用412向策 略引擎413提供的API。在一个实施例中,所述的API 415是编制应用412或策略引擎413 的集成组件。这些API 415收集与网络元件402i N的不同功能相关联的数据,例如与网络元 件相关联的统计、路由表、网络元件的状态、拓扑信息、误差等。此外,这些API 415还可以 允许编程者或网络管理者控制网络元件4021N的功能,如改变转发引擎中的设置、改变网络 元件4(^ ,的状态等。因此,应用(如策略引擎413)可以使用API 415发送命令到N。
[0042] 通过使用API 415抽象网络元件4(^ ,的RIB 416,编制应用可以允许网络管理 者监视和控制多个不同类型的网络元件4021N,每个网络元件可以使用专有固件。一个允 许此功能的此产品圮Cisco? (在美国许多其它司法管辖区的注册商标)的一个平台套件 (onePK)软件开发套件(SDK) 〇
[0043] 计算机45〇i N能够执行应用,例如策略引擎413,其可以利用由编制应用412提供 的API 415的功能性。因此,在一个实施例中,编制应用412、策略引擎413和其它用户应用 可以在一个或多个计算机45〇i 执行以修改网络元件402 i N的路由行为(或任何行为)。 在又一实施例中,计算机45(^ N可以是执行SDN使能网络430中的编制应用412和策略引 擎413的刀片服务器。
[0044] 有利地,此处公开的实施例扩展了网络元件的路由能力,使得可以基于非传统标 准作出路由决定,该非传统标准包括但不限于美元成本、延迟、地理限制、合同条款、服务水 平协议和天气条件,或它们的任何组合。
[0045] 附图中的流程图和框图示出了根据本公开的各个实施例的系统、方法和计算机程 序产品的可能实现方式的架构、功能和操作。就此而言,流程图或框图中的每一个块可表示 包括用于实现所指明的(一个或多个)逻辑功能的一个或多个可执行指令的代码的模块、 片段或部分。还应当注意,在一些替换的实现方式中,块中所示的功能可以不按图中所示的 次序发生。例如,接连示出的两个
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1