用于网络的可编程管理引擎的制作方法_3

文档序号:9333009阅读:来源:国知局
理平面相关联的不同分组或帧。
[0040] 在框415处,SDN交换机将管理平面流量发送到位于网络设备上的管理引擎。例 如,管理引擎可以是软件应用,该软件应用像SDN交换机一样可由远程SDN控制器配置。例 如,网络设备可以使用多个API来使网络设备的控制平面和管理平面抽象化,使得单个SDN 控制器能够监测和配置由不同厂商所制造的各种网络设备上的这些平面,并且使用不同的 固件或硬件设计这些平面。
[0041] 在框420处,管理引擎使用网络设备上的处理器来对管理平面分组进行评估。在 一些实施例中,网络设备可能没有能够执行管理引擎(例如,软件应用)的处理器。然而, 可以将补充处理器添加到能够执行管理引擎的网络设备。为了使成本最小化,处理器可以 是可配置成基于ISA来执行指令的通用处理器。
[0042] 管理引擎可以基于管理平面流量来计算不同的度量。这些度量可能与OAM、Q〇S等 有关。管理引擎可以基于这些度量发出不同的警报。具体地,SDN控制器可以提供管理引 擎与不同度量相比较得出阈值。例如,如果正被丢弃的管理分组的数目超过对应阈值,则管 理引擎可以向SDN交换机发出警报。作为响应,SDN交换机可以改变交换机用来转发数据 平面流量的SDN规则-即,SDN交换机可以改变用来路由数据平面流量的控制平面逻辑。
[0043] 在框425处,管理引擎可以生成管理平面分组并且将它发送到SDN交换机,该SDN 交换机进而经由虚拟链路和物理链路将这些分组转发到邻近网络节点(例如,连接的网络 设备)。例如,如在回声模式管理流量的情况下一样,管理引擎可以将接收到的管理平面分 组返回到SDN交换机以便被转发回到起源管理引擎。那些邻近节点上的SDN交换机可以识 别管理平面分组并且将它们发送到它们自己的本地管理引擎。这些引擎也许还可使用SDN 控制器来配置。
[0044] 例如,如果管理引擎是0AM引擎,则该引擎可以每隔一段时间发送时间戳分组或 者发送具有定义排序的分组,使得邻近0AM引擎能够使用分组中的数据来确定连接两个网 络节点的链路的当前状态。以这种方式,SDN网络环境中的管理平面流量能够由托管在网 络节点上的本地管理引擎来处理,而不必将分组发送到远程控制器以用于评估。然而,SDN 控制器可以被用来通过对管理引擎进行编程(例如,将更新推出给不同的管理引擎、改变 由单独的管理引擎用于对所得到的度量进行评估的阈值等)来配置共享管理平面。
[0045] 图5图示了根据一个实施例的具有虚拟SDN交换机130的网络设备中的本地 0AM引擎530。如这里所示的,该网络设备可以是多协议标签交换传输模式(MPLS-TP, multiprotocollabelswitchingtransportprofile)节点 505,该MPLS-TP节点可以将 一个或多个光纤链路用于从邻近MPLS-TP节点发送和接收网络流量。在一个实施例中, MPLS-TP节点505可以是例如以太网交换机。MPLS-TP节点505可以具有将节点505连接 到SDN使能环境中的另一MPLS-TP节点的一个或多个传输标签交换路径(LSP)链路(即, 虚拟链路)。可以将每个LSP中的网络流量逻辑上划分成不同的数据流(通常被称为伪线 (PW))。例如,为了分离数据,可以给每个客户分配不同的PW;然而,PW可以全部在相同的传 输LSP上行进。
[0046] 0AM引擎530可以监测SDN使能网络中的LSP和PW的当前状态。为了这样做,各 种MPLS-TP节点505可以在节点505之间发送0AM分组(S卩,管理平面分组)。每个节点 505可以包括本地0AM引擎530,该本地0AM引擎对0AM分组进行评估以确定与LSP和PW 相关联的度量。例如,客户可能期望PW具有一定的可靠性(即,具体网络跳中丢弃分组的 最大量)。SDN控制器150可以指示0AM引擎530来确定具体PW中丢弃分组的数目是否超 过这个阈值。如果是这样的话,则0AM引擎530可以向虚拟SDN交换机130发出警报。在 其它实施例中,0AM引擎530可以基于与吞吐量、错误、等待时间、抖动、无序递送等相关联 的度量发出警报。
[0047]SDN交换机130包括流表510和组表515。SDN控制器150可以用一个或多个SDN规 则填充流表510。当沿着表示PW或LSP的数据路径520A至520C接收到分组时,流表510中 的SDN规则确定要对分组采取的对应动作。例如,分组可以被丢弃、优先级排序、发送到另 一应用进行处理、改变、转发等。在一个实施例中,虚拟SDN交换机130可以与OpenFlow? 标准(开源控制平面抽象协议)兼容。
[0048] 在一个实施例中,每个SDN规则定义了要匹配的一组分组字段和对应的动作(诸 如发出端口、修改字段、丢弃分组等)。当接收到新分组时,SDN交换机130将该分组与SDN 规则中的分组字段进行比较以确定是否存在匹配(例如,SDN交换机130执行流匹配操 作)。如果是这样的话,则SDN交换机130执行与匹配规则相对应的动作。然而,如果接收 到的分组与分组字段中的一个字段不匹配,则SDN交换机130可以将该分组发送到SDN控 制器150。控制器150可以决定丢弃分组或者向流表510发送新SDN规则条目以用于处理 该分组(以及和分组字段匹配的其它后续分组)。
[0049] 如果流表510确定将分组转发到邻近节点505,则SDN交换机130将分组传递给组 表515,该组表确定要在转发该分组时使用的适当的数据路径525A至525C。具体地,组表 515可以分配要在转发分组时使用的虚拟端口。
[0050] 流表510还可以包括SDN规则以用于基于特定分组字段来识别0AM分组并且将所 识别的0AM分组传递给本地0AM引擎530以用于评估。如上所述,0AM引擎530可以基于 0AM分组生成关于SP或PW的当前状态的度量,将这些度量与一个或多个阈值进行比较,并 且如果这些度量超过阈值则发出警报或者指示SDN交换机执行校正动作。另外,0AM引擎 530可以生成新0AM分组(或者转发接收到的分组),随后SDN交换机130使用数据路径 525A至525C将其发送到邻近节点505。
[0051] 如果0AM引擎530向SDN交换机130发出警报,则组表515可以被分派确定适当 的动作的任务。例如,如果0AM引擎530报告LSP已被切断,则组表515可以将流量从与切 断的传输LSP相关联的虚拟端口移动到与备用传输LSP相关联的虚拟端口。以这种方式, 可以对0AM管理平面流量进行评估,并且可以执行校正动作,而不必向SDN控制器发送任何 数据。
[0052] 然而,在其它实施例中,一些管理平面流量可以在MPLS-TP节点505与SDN控制器 150之间流动。例如,对于不是时间关键的校正动作,SDN交换机可以将警报转发到可以确 定要执行什么动作的SDN控制器-例如,SDN交换机可以向流表510提供新SDN规则或者 将组表515重新配置以使用不同的虚拟端口来路由流量。此外,OAM引擎530可以具有变 化的复杂性。也就是说,为了通过能够将低成本处理器用于执行OAM引擎来降低成本,引擎 530可以生成度量并且将这些度量与预定义阈值进行比较,但是可能不能确定校正动作。替 代地,SDN交换机可以确定要采取的校正动作。然而,在其它实施例中,OAM引擎530可以具 有用于确定要采取什么动作的必要逻辑。例如,代替向SDN交换机发送警报,OAM引擎530 可以直接地重新配置组表515。
[0053] 尽管图5示出了将0AM引擎放置在执行虚拟SDN交换机的MPLS-TP节点上,但是 实施例不限于此。在其它实施例中,引擎可以是QoS引擎或QoS和0AM的某种组合。
[0054] 如本领域的技术人员将了解的,可以将实施例具体化为系统、方法或计算机程序 产品。因此,各方面可以采取这样的形式:一般地可以在本文中被称为"电路"、"模块"或 "系统"的全硬件实施例、全软件实施例(包括固件、驻留软件、微码等)或组合软件方面和 硬件方面的实施例。此外,各方面可以采用计算机程序产品的形式,计算机程序产品被具体 化在在其上具有计算机可读程序代码的一个或多个计算机可读介质中。
[0055] 可以利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机 可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于:电子、 磁、光学、电磁、红外线或半导体系统、装置或设备,或上述的任何适合的组合。计算机可读 存储介质的更具体示例(非详尽列表)将包括以下各项:具有一根或多根电线的电连接、便 携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(R0M)、可擦可编程只读存储器 (EPROM或闪速存储器)、光纤、便携式紧致盘只读存储器(CD-ROM)、光学存储设备、磁存储 设备,或上述的任何适合的组合。在本文档的上下文中,计算机可读存储介质可以是能够包 含或者存储程序由指
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1