在点到多点网络中避免重复流量的制作方法

文档序号:7913528阅读:147来源:国知局
专利名称:在点到多点网络中避免重复流量的制作方法
在点到多点网络中避免重复流量优先权声明本申请基于35U. S. C. § 119(e)要求于2009年9月14日在美国专利和商标局(U. S. P. T. 0)递交的第61/276607号美国临时专利申请的优先权,以引用方式将其全部内容并入本文。
背景技术
实施方式涉及在点到多点网络中避免流量(traffic)重复。流量重复(duplication)发生在节点的数据路径下游,在那里包括诸如视频流的相同信息流的两个路径合并。示例性实施方式提供用于避免该流量重复的方法和装置。

发明内容
一个实施方式包括一种用于在点到多点网络中避免流量重复的方法。该方法包括丢弃与第一数据路径相关联的第一数据分组,直到第二数据路径去激活(de-activated)为止。第二数据路径具有相关联的第二数据分组、并且第一数据分组和第二数据分组包括相同的数据。一个实施方式包括一种用于在点到多点网络中避免流量重复的方法。该方法包括监测从源到目的地的第一数据路径中的第一互连链路的状态。第一数据路径包括入口(ingress)节点、出口 (egress)节点、和一个或多个中间节点。该方法进一步包括,如果确定第一互连链路的链路是不可操作的链路,则建立第二数据路径。第二数据路径包括入口节点、出口节点、一个或多个中间节点中的至少一个和第二互连链路。第二互连链路包括新的互连链路和第一互连链路的子集。子集不包括第一互连链路中的不可操作链路。该方法进一步包括激活第二数据路径,监测不可操作链路的状态,以及如果不可操作链路变为可操作的,则建立第三数据路径。第三数据路径包括入口节点、出口节点、一个或多个中间节点和第一互连链路。该方法进一步包括激活第三数据路径,以及在一个或多个中间节点中的一个中间节点处,丢弃与第三数据路径相关联的数据分组,直到第二数据路径去激活为止,并且最终对第二数据路径进行去激活。网络节点包括配置为接收分组的至少一个入口端口,和配置为传送分组的至少一个出口端口。网络节点进一步包括配置为接收第一信令分组并确定是否第一信令分组指示与第一数据路径相关联的互连链路不可操作的处理器。如果互连链路是不可操作的,处理器进一步通过绕过互连链路的第二数据路径来接收第一数据分组,并接收第二信令分组。处理器确定是否第二信令分组指示互连链路是可操作的。处理器确定是否第二信令分组同与第一信令分组相同的信息相关联。处理器确定是否第二信令分组与第三数据路径相关联。如果第二信令分组同与第一信令分组相同的信息相关联,并且第二信令分组与第三数据路径相关联,则处理器丢弃第二数据分组,第二数据分组是与第二信令分组相关联的数据分组,直到第二数据路径去激活为止。处理器确定是否第二数据路径是去激活的,并且如果第二数据路径是去激活的,则传输与第二信令分组相关联的第二数据分组。


通过此处下面给出的详细描述和附图,可以更全面地理解本发明,其中相同的附图标记代表相同的元素,其中附图标记仅用于解释,并因此不对本发明进行限制,其中图1描述了根据示例性实施方式的包括数据路径的点到多点网络;图2描述了根据示例性实施方式的在数据路径中包括不能操作链路的点到多点网络;图3描述了根据示例性实施方式的包括经重新路由的数据路径的点到多点网络;图4描述了根据示例性实施方式的包括经重新路由的数据路径和经修复链路的点到多点网络;图5描述了根据示例性实施方式的包括数据路径和去激活的经重新路由的数据路径的点到多点网络;图6描述了根据示例性实施方式的用于避免重复流量的方法。需要注意的是,这些附图意在描述方法的一般特性、在特定示例性实施方式中使用的结构和/或材料,并意在对下面提供的描述进行补充。然而,这些附图不是按比例的, 并且也不是精确地反映任意给出的实施方式的精细结构或性能特性,并且也不应解释为通过示例性实施方式对所包含的数值范围或属性进行定义或限定。例如,为了简明起见,可减小或夸大分子、层、区域和/或结构元素的相对厚度和位置。在各个附图中使用同样或相同的附图标记意在指示存在同样或相同的元素或特征。
具体实施例方式尽管示例性实施方式能够进行各种修改并采用替代形式,但是其实施方式作为实施例在附图中给出,并将在这里进行详细描述。然而,应当理解的是,不应将示例性实施方式限定为所公开的特定形式,相反,示例性实施方式意在涵盖落入权利要去范围内的所有修改、等同物和替代物。在整个附图的描述中,相同的附图标记表示相同的元素。可以理解的是,尽管这里可能使用术语第一、第二等描述各种元素,但是这些元素不应当被这些术语所限制。这些术语仅用于将一个元素与另一元素相区别。例如,在不偏离示例性实施方式范围的情况下,第一元素也可称为第二元素,相似地,第二元素也可称为第一元素。如在这里所使用的,术语“和/或”包括一个或多个相关的列出项目的任意和全部组合。可以理解的是,当涉及一个元素与另一元素“连接”或“耦合”时,其可以与其它元素直接地连接或耦合,或者可以存在介于其中间元素。相反,当涉及一个元素与另一元素 “直接连接”或“直接耦合”时,则没介于其中间的元素。用于描述元素之间关系的其它词应以相同的方式进行解释(例如,“在...之间”与“直接在...之间”,“相邻”与“直接相邻”
寸J ο这里使用的术语仅用于描述特定实施方式,并不意在对示例性实施方式进行限制。如在这里所使用的,单数形式“一 ”、“ 一个,,和“所述,,还意在包括复数形式,除非在上下文中明确地进行指示。还可以进一步理解的是,这里使用的术语“包含”、“由...组成”、 “包括”和/或“含有”说明存在所规定的特征、整体、步骤、操作、元素和/或元件,但是不排斥存在或增加一个或多个其它特征、整体、步骤、操作、元素、元件和/或其组合。还需要说明的是,在一些可替换的实现方式中,所涉及的功能/动作还可以按照图中未涉及的顺序发生。例如,根据所涉及的功能/动作,以连续方式示出的两个图实际上可以并发地执行,或有时以相反的顺序执行。除非特别限定,这里使用的所有术语(包括技术和科学术语)与示例性实施方式的所属技术领域的普通技术人员通常理解的含义相同。还可以进一步理解的是,诸如以通用字典限定的术语应当解释为与它们在相关领域的上下文中的含义相一致,并不解释为理想化或过度正式的含义,除非在这里进行特别限定。示例性实施方式和相应的详细描述部分可根据软件或算法,和对计算机存储器中的数据比特进行操作的符号表示来呈现。这些说明和表示是本领域普通技术人员向本领域其它普通技术人员有效表达他们工作主旨的一种方式。如同这里使用的术语,并如同其所通常使用的,将算法设想为导致期望结果的自相一致的步骤序列。该步骤是那些要求对物理量进行物理操作的步骤。通常,尽管不是必须的,这些量采用能够存储、传输、组合、比较和进行其他操作的光、电、或磁信号的形式。已经证明有时(特别是对于通常使用的原因)将这些信号称为比特、数值、元素、符号、字符、项、数字等是方便的。在下列说明中,将根据动作和操作(例如,以流程图的形式)的符号表示描述解释性的实施方式,其中操作可实现为程序模块或包括例程、程序、对象、元件、数据结构等的功能过程,其中程序模块或功能过程执行特定的工作或实现特定的摘要数据类型,并可使用现有的硬件在现有的网络元件上实现。这样现存的硬件可包括一个或多个中央处理单元(CPU)、数字信号处理器(DSP)、专用集成电路、现场可编程门阵列(FPGA)计算机等。然而,应当注意的是,与合适的物理量相关联的所有这些术语以及相似术语仅仅是应用于这些量的便利的标签。除非特别声明,或者从讨论中明显得到,诸如“处理”、“计算”、“估计”、“确定”、“显示”等的术语,涉及计算机系统或相似的电子计算设备的动作和处理,以将计算机系统的寄存器和存储器中表述为物理量、电子量的数据进行操纵并转换为计算机系统存储器或寄存器或其他这样的信息存储器、传输或显示设备中表示为物理量的其他相似的数据。还需要说明的是,示例性实施方式的软件实现方面典型地是在一些形式的程序存储介质上进行编码,或在一些类型的传输介质上实现。计算机可读介质可以是磁(例如,软盘或硬盘驱动器)或光(例如,致密盘只读存储器,或“CD ROM”),并可以是只读或随机存取的。相似地,传输介质可以是双绞线、同轴电缆、光纤或本领域公知的其它合适的传输介质。示例性实施方式不局限于任何指定实现的这些方面。图1描述了根据示例性实施方式的点到多点网络100。点到多点网络可以包括一个或多个入口或根节点105、120。点到多点网络可以包括一个或多个出口或叶节点115、130。点到多点网络可以包括一个或多个中间节点或分支节点110、125。此外,点到多点网络可以包括一个或多个互连链路145,以实现一个或多个节点的互连(interconnect)。源135可以经由互连链路与一个或多个入口或根节点105、120连接。目的地140可以经由互连链路与一个或多个出口或叶节点115、130连接。点到多点网络100可以是有线网络、无线网络、或二者的组合。源135可以是视频源(例如,电视台或点播电影视频流)。目的地140可以是具有视频播放器(例如,电视或手持视频设备)的用户。节点105、110、115、120、125或130可以是路由器或交换机(例如,标签交换路由器(LSR)或ATM交换机)。互连链路145可以是有线(例如,同轴链路或光纤链路)或无线的。从源135到入口或根节点105、120的互连链路可以是,例如经由国际互联网协议层1连接的直接链路,或是例如经由国际互联网协议层3路由的远程链路。从目的地140 到出口或叶节点115、130的互连链路可以是,例如经由国际互联网协议层1连接的直接链路,或是例如经由国际互联网协议层3路由的远程链路。点到多点网络100可以包括一个或多个数据路径,例如原始数据路径150。数据路径包括入口或根节点(例如,节点105),出口或叶节点(例如,节点115),一个或多个中间节点或分支节点(例如,节点110)和一个或多个互连链路(例如,链路14 。数据路径可以是虚拟数据路径或隧道。点到多点网络100可以是在RFC 3031中详述的多协议标签交换(MPLS)网络。 MPLS网络是指示并携带数据从一个网络节点(例如,节点125)到下一节点的网络。网络节点可以被认为是网络中的下一跳(hop)。MPLS网络可允许在节点之间创建虚拟链路。MPLS 网络可对各种网络协议的分组进行封装。MPLS网络中的数据分组可以是指定的标签。可基于标签内容来作出转发决定,而不用关心数据分组的内容。数据分组可以包括MPS报头,其包含一个或多个标签。从而,标签用于将数据分组转发到下一结点或下一跳。本领域所公知的是,可以基于节点是否为入口 /出口节点(例如,节点105或115)或中间节点(例如,节点110)来改变对节点的操作。本领域所公知的是,点到多点网络(例如,网络100)可以使用在RFC3209中详述的资源预留协议流量工程(RSVP-TE)以定义数据路径。RSVP-TE可用于建立考虑网络约束参数(例如、带宽、分组丢失率和最大分组传输延迟)和确切路由要求的MPLS标签交换路径(LSP)。众所周知,RFC 3209定义了包括信息字段以唯一定义流量工程隧道的会话对象, 以及多个会话对象可存在于任意RSVP-TE会话中。下面将讨论与示例性实施方式相对应的会话对象。例如,众所周知,RSVP-TE会话对象可包括LSP_TUNNEL SESSION对象、SENDER_ TEMPLATE对象、FILTER_SPEC对象和EXPLICIT_R0UTE对象(ERO)。此外,共享会话对象可以是在包括一个或多个共享链路的一个或多个LSP隧道中共享的任意会话对象。LSP_TUNNEL SESSION对象用于缩小RSVP-TE会话到所讨论的特定TE隧道的范围。SENDER_TEMPLATE对象和FILTER_SPEC对象携带LSP ID ;LSP ID是隧道标识符 (indentifier)。RSVP-TE 会话还可包括 LABEL_REQUEST 对象。众所周知,LABEL_REQUEST 对象可包括RSVP预留消息。RSVP预留消息将标签分派给下游(downstream)节点,并将标签传播到上游(upstream)节点。EXPLICIT_ROUTE对象对构成确切路由路径的级联下一跳进行封装。通过使用 EXPLICIT_ROUTE对象,可预先确定独立于传统IP路由的路径。确切路由是在定义为数据路径的数据路径中建立每个节点或下一跳的数据路径。 例如,通过节点,典型地是入口节点(例如,节点105),发送包括指示数据路径是确切路由的信息字段的路径消息来建立确切路由。如在RFC中所提出的,信息字段可与EXPLICIT ROUTE对象相关联。EXPLICIT_ROUTE对象的内容是一系列被称为子对象的可变长度数据字段。每个子对象至少包括节点或下一跳地址的列表。图2描述了与关于图1所描述的相同的点到多点网络100。一个例外是互连链路145-n是不可操作的链路。在示例性实施方式中,由于链路抖动(flapping),因此互连链路145-n可能变为不可操作。本领域所公知的是,链路抖动是链路(或路径中的其它元件)在可操作和不可操作之间来回切换。图3描述了与关于图3所描述的相同的点到多点网络100。一个例外是增加重新路由路径305。重新路由路径305在不可操作的链路145-n周围对与源135相关联的信息进行重新路由。图4描述了与关于图3所描述的相同的点到多点网络100,但具有两个例外。第一,互连链路145-n现在是可操作的。第二,已经建立新的数据路径405。新的数据路径405与原始数据路径150相似,除了数据分组没有通过节点110(将其称为重新合并节点)传送。图5描述了与关于图4所描述的相同的点到多点网络100,但具有两个例外。第一,重新路由路径305已经去激活。第二,与新路径405相关联的数据分组通过节点110进行传送并且连续传送直到目的地140。与路径150、305和505相关联的数据分组都包括与源135相关联的相同信息。图6描述了根据示例性实施方式的用于避免重复流量的方法的示例性实施方式。虽然通过与图6相关联的方法来介绍步骤,但是与图1-图5相关联的事件序列会变得更明
Mo在步骤S605,例如可以通过入口节点105来建立数据路径。例如,数据路径可以是上述关于图1介绍的原始数据路径。例如,数据路径可以是上述确切路由的数据路径。例如,如在RFC 3209中所详述的,接收包含EXPLICIT_R0UTE对象的路径消息的节点确定该路径的下一跳。这样作是由于在用于确切路由的节点列表中的下一节点可以是IP子网络或自治系统。因此,选择该下一跳可以包括从一组可用的替换者中进行决定。为了确定路径的下一跳,接收路径消息的节点至少执行下列步骤接收路径消息的节点首先对第一子对象进行评估。如果节点不是由第一子对象描述的节点列表中节点的一个,则节点错误地接收路径消息,并返回“不正确的启动子对象”错误。如果没有第一子对象,消息也是错误的,并且系统返回“不正确的EXPLICIT_ROUTE对象”错误。如果没有错误,则节点继续评估路径消息。如果没有第二子对象,这指示确切路由是否结束(例如,节点是节点列表中最后的节点)。从而,可从路径消息中删除EXPLICIT_ROUTE对象。假设存在第二子对象,节点评估第二子对象。假设节点是由第二子对象描述的节点列表的节点中的一个,于是节点删除第一子对象并继续上述的处理。需要说明的是,这将第二子对象作为下一次迭代的第一子对象,并在上述步骤的可能重复的应用后,允许节点识别路径消息的路径中节点列表中的下一节点。假设节点不是第二子对象描述的节点列表中的一个节点,从而节点在第一子对象(其中节点属于该子对象)的节点列表中选择下一跳,其中下一跳沿着路径到达与第二子对象相关联的节点列表的下一节点。最后,节点将第一子对象替换为表示包含下一跳的节点列表的节点的任意子对象。进行这样的操作从而当路径消息由下一跳接收时,可接受路径消息,并执行上述的处理。数据路径150还可以是受保护的数据路径。受保护的数据路径是在受保护的数据路径中在所有系统(例如,节点或互连链路)周围具有预定的重新路由的数据路径的数据路径。例如,数据路径可以是受保护的LSP数据路径。如果在指定的下一跳,所述下一跳具有在该下一跳发起的一个或多个相关的备份隧道,则数据路径是受保护的LSP数据路径。例如,从入口节点105到包括互连链路145-n的节点110的下一跳可以具有包括节点120和节点125以及其它互连链路145的相关备份隧道。例如,相关的备份隧道可以描述为图3至图5中所示的重新路由路径305。重新路由305保护互连链路145_n。例如,如本领域技术人员所知的,RFC 4090提出2个受保护的LSP数据路径。第一个是一对一的备份,且第二个是设备的备份。在一对一的备份方法中,建立与链路或节点故障点下游某处的原始LSP交叉的标签交换路径(LSP)。为备用的每个LSP建立独立的备份LSP。当沿着受保护的LSP出现故障时,将流量重新导向本地的迂路(detour)。设备备份方法利用MPLS标签栈的优点。不用为每个备用的LSP创建单独的LSP, 创建用于备用一组LSP的单一 LSP。这样的LSP隧道可被称为旁路隧道。旁路隧道必须与入口节点105下游某处的原始LSP的路径相交(intersect)。众所周知,路径消息可以包括指示数据路径是受保护的数据路径的信息字段。例如,在RFC 4090中提出的SESSION_ATTRIBUTE对象包括多个被称为会话标志的信息字段。 与示例性实施方式相关的标志可以包括“期望的本地保护”、“期望的标签记录”、“期望的节点保护”和“期望的带宽保护”标志。“期望的本地保护”标志指示是否允许节点使用可能导致违背确切路由对象的本地修复机制。“期望的标签记录”标志指示标签信息是否应当被包括在路径消息的至少一个子对象中。“期望的节点保护”标志指示受保护的LSP是否具有提供预防沿着受保护的LSP 的下一结点出现故障的保护的备份路径。“期望的带宽保护”标志指示受保护的LSP是否具有确保提供期望带宽的备份路径。为了指示应当本地地保护LSP,作为首端节点的入口节点105可在SESSI0N_ ATTRIBUTE对象中设置“期望的本地保护”标志。在步骤S610中可以激活数据路径。激活数据路径以促使数据路径开始传递流量。 数据路径的建立和激活是逻辑上独立的事件。然而,它们可以作为一个原子动作来实现或调用。在步骤S615,节点(例如,入口节点105)监测每个互连链路(例如,链路145)。 节点可以监测消息和/或指示沿数据路径(例如,确切路由)的每个节点和/或每个链路的状态的消息中的会话状态标志。如果互连链路中的一个(例如,链路145-n)变为不可操作,如图2所示,则在步骤S620中建立重新路由路径305,否则节点继续监测互连链路145。 在步骤S620,建立重新路由路径(例如,重新路由路径30 。如上所述,重新路由路径在数据路径中发生故障的情况下保护数据流。本领域技术人员知道的是,重新路由路径(例如, 重新路由路径30 可以是快速重新路由路径。快速重新路由路径是在建立备用的路径时 (例如,在步骤S605中建立的原始路径150)所识别的明确和唯一识别的备份路径。建立备用路径(例如,原始路径150)的路径消息可以包括指示请求建立快速重新路由路径的信息字段。例如,RFC 4090提出FAST_RER0UTE对象以包括请求定义快速重新路由路径的信息字段。FAST_RER0UTE对象用于控制受保护LSP的备份。众所周知,FAST_RER0UTE对象包括多个会话属性和会话标志。下面将讨论与示例性实施方式相关的这些属性和/或标志。FAST_RER0UTE对象还允许要求的专用本地保护方法。该对象可仅通过首端节点(例如,入口节点105)插入到路径消息中,并且不能由下游节点改变。从RFC 4090可知,FAST_RER0UTE对象包括多个会话标志。与示例性实施方式相关的标志可以包括“期望的一对一备份”和“期望的设备备份”标志。“期望的一对一备份”标志指示是否应当通过一对一备份方法(如上所述)保护受保护的LSP。“期望的设备备份”指示是否应当通过设备备份方法(如上所述)保护受保护的LSP。为了为受保护的LSP路径选择一对一的备份方法,作为首端节点的入口节点105应当在路径消息中包括FAST_RER0UTE对象,并设置“期望的一对一备份”标志。为了为受保护的LSP路径选择设备备份方法,作为首端节点的入口节点105应当在路径消息中包括FAST_RER0UTE对象,并设置“期望的设备备份”标志。由于与使用的备份类型有关的偏好的缺乏,可由入口节点105处理FAST_RER0UTE对象的缺失,或者全部清除这些标志。如果设置了这两个标志,入口节点105可使用任一方法或者两者都使用。如上所述,为了指示LSP应当被本地保护,作为首端节点的入口节点105可以在SESSION_ATTRIBUTE对象中设置“期望的本地保护”标志。入口节点105还可以在路径消息中包括FAST_RER0UTE对象,或者入口节点105可以在SESSION_ATTRIBUTE对象中设置“期望的本地保护”标志且在路径消息中包括FAST_RER0UTE对象。如上所述,不可操作的互连链路(例如,链路145-n)可能呈现出链路抖动的行为。如果不可操作的互连链路正呈现出链路抖动的行为,每次不可操作的互连链路变成可操作时,现有技术中的系统会重复地重新建立并重新激活原始(初始)数据路径(例如,路径150)。相反,在步骤S625中,在示例性实施方式中,入口节点105激活重新路由路径305。激活数据路径是为了促使数据路径开始传送流量。数据路径的建立和激活是逻辑上分离的事件。然而,它们可以作为一个原子动作来执行或调用。一旦入口节点105已经决定保护LSP,并已经识别了要使用的路径,则入口节点105可以用信号通知迂路(例如,步骤S630-S640)。本领域技术人员可以理解的是,保护LSP的决定根据系统设计标准而变化。从而,为了清楚和简明,不进一步讨论该决定。下面描述要在受保护LSP的路径消息上执行变换以创建迂路LSP的路径消息。为了转换路径消息,节点(例如,入口节点105)在路径消息中修改字段以指示备份路径正在使用。众所周知,RFC 4090提出两种不同的方法以唯一地识别使用中的备份路径。第一个是发送者模板专用方法,且第二个是路径专用方法。如果要使用发送者模板专用方法,则入口节点105将SENDER_TEMPLATE(如上所述)的地址改为属于入口节点105的地址,该地址可与用于受保护LSP的路径消息的地址相同或不同。此外,可将包括操作相似的常规LSP的迂路LSP的DETOUR对象增加到路径消息中。如果使用路径专用方法,则入口节点105将DETOUR对象增加到路径消息中。
SESSION_ATTRIBUTE标志(如上所述)“期望的本地保护”、“期望的带宽保护”和 “期望的节点保护”被清除。可以对“期望的标签记录”标志进行修改。如果受保护的LSP 的路径消息包含FAST_RER0UTE对象(如上所述),则将FAST_RER0UTE对象从迂路LSP的路径消息中除去。入口节点105产生朝向出口节点(例如,节点115)EXPLICIT_R0UTE对象(如上所述)。首先,入口节点105除去在属于合并点的第一地址前的所有子对象,其中合并点是一个或多个备份隧道与潜在故障的受保护LSP下游的路径重新结合处的节点。例如,如图3 所示,节点110是合并点。于是,入口节点105增加对应于备份路径的子对象以在入口节点 105和合并点之间使用。迂路LSP使用与受保护的LSP相同的预留类型。这可以在路径消息的SESSI0N_ ATTRIBUTE对象中正确地进行反映。迂路LSP可操作相似的常规LSP。一旦成功地计算迂路路径并建立迂路LSP,作为首端节点的入口节点105不需要再次计算迂路路由,除非例如FAST_RER0UTE对象的内容已经改变,或用于受保护LSP的节点已经变化。入口节点105还可在任意时间重新计算迂路路由。在步骤S630,不可操作的互连链路(例如,链路145-n)上游的节点(例如,入口节点105)监测不可操作的互连链路(例如,链路145-n)。例如,节点可以监测(monitor)消息和/或会话状态标志,所述会话状态标志指示每个节点和/或沿着数据路径(例如,确切路由)的每个链路的状态。如果不可操作的互连链路145-n变成可操作的,可建立新路径 (例如,路径405),否则继续监测。在步骤S635,入口节点105建立新路径405。作为全局还原(revert)的结果,入口节点105可建立新路径405。全局还原通过之前建立的路径用信号通知新路径并且于是激活该新路径,将网络中的路径还原为之前的状态。可利用与关于上述步骤S605讨论的相同方法建立新路径405。还可将新路径405 建立为先接后断(make-before-break)的数据路径。先接后断的数据路径是数据路径的去激活前建立并激活的数据路径,先接后断意味着替换。例如,如本领域技术人员所知道的, RFC 3209描述用于建立先接后断的数据路径的方法。在描述先接后断的流量路由时,进行对已建立的路由和新路由的参考。已建立的路由可以是重新路由路径305,并且新路由可以是新路径405。尽管先接后断的流量路由方法可以提供平滑过渡以及降低的流量中断风险,且两个路径都是激活的,流量可能被不期望地进行复制。为了支持先接后断方法,在将流量转换到新LSP隧道之前,不应释放由所建立的 LSP隧道所使用的与所建立的LSP隧道(例如,重新路由路径305)和新LSP隧道(例如,新路径40 共有的链路和资源。如上所述,LSP_TUNNEL_SESSION对象用于将资源预留协议(RSVP)会话的范围缩小到所讨论的特定流量工程(TE)的LSP隧道。将目的地IP地址(隧道出口的节点地址, 例如,节点115)、隧道ID和隧道入口节点(例如,入口节点105)的IP地址进行结合以唯一识别LSP隧道。在重新路由过程中,隧道入口(例如,节点105)需要看来像是将两个不同的发送者提供给RSVP会话。这通过包括携带在SENDER_TEMPLATE和FILTER_SPEC对象中的如上所述的“LSP ID”来实现。为了影响重新路由,入口节点105挑选新LSP ID并形成新的SENDER_TEMPLATE。入口节点105从而创建新的EXPLICIT_ROUTE对象(如上所述的)以定义新的路径。从而,入口节点105使用原始会话对象和新的SENDER_TEMPLATE及新的EXPLICIT_R0UTE对象来发送新的路径消息。入口节点105继续使用所建立的路径LSP并更新所建立的路径消息。在不是公共保持的链路上,在建立过程中将新的路径消息视为传统的新LSP隧道。在公共保持的链路上,共享的会话对象允许建立的LSP与所建立的LSP隧道共享资源。一旦入口节点105接收到用于新LSP隧道的预留消息(如上所述的),入口节点可通过在步骤S640中激活新的隧道将流量转移到新LSP隧道上。在步骤S640中,入口节点可激活新路径405。激活数据路径促使数据路径开始传送流量。数据路径的建立和激活是逻辑上独立的事件。然而,它们可以作为一个原子动作来执行或调用。在步骤S645,入口节点105可对重新路由路径305去激活。对数据路径去激活导致数据路径停止传递流量。为了确定数据路径、或LSP隧道,是激活的还是去激活的,节点可以检查用于流量工程(TE)隧道的一个或多个会话对象。众所周知,会话对象可包括指示路径或路由状态的一个或多个会话对象标志。例如,LSP_TUNNEL SESSION对象可包括“路由激活”标志。如果设置“路由激活”标志,则LSP隧道是激活的。众所周知,RFC 4875为点到多点网络中的节点提供一个过程,以在与重新合并的路由相关联的消息和/或数据及与重新路由相关联的消息和/或数据之间进行区别。“重新合并”可涉及与P2MP LSP的分支相关联的节点是与P2MP LSP在远离路径的另一节点相交的重新合并分支的情况。例如,节点110可以是重新合并点。众所周知,与先接后断P2MPLSP相关联的节点可能和与原始P2MP LSP相关联的节点不同。然而,可将两个P2MP LSP视为有区别的(但是相关的)LSP,这是因为在它们的SENDER_TEMPLATE对象中具有不同的LSP ID字段值。根据示例性实施方式,在步骤S650中,节点(例如,节点110)确定重新路由路径305是否已经被去激活。例如,节点110可检查与重新路由路径305相关联的LSP隧道的“路由激活”标志。如果重新路由路径305是激活的,则在步骤S655中,在节点110(重新合并节点)处删除与新路径405相关联的数据分组。例如,参照图4,如果重新路由路径305是激活的,则节点110(重新合并节点)删除与新路径405相关联的分组。例如,如果由于互连链路145-n呈现出互连链路145_n不再呈现的链路抖动行为,则路径150出现故障,如上所述,作为全局还原的结果,可建立新路径405。由于新路径405是作为全局还原的结果所建立的,如果重新路由路径305是激活的,则通过删除与新路径405相关联的分组,可以防止数据重复。在步骤S650中,如果节点(例如,节点110)确定重新路由路径305未激活,则节点(例如,节点110)将与新路径405相关联的数据分组路由到目的地140上。例如,参照图5,如果重新路由路径305未激活,则节点110不删除与新路径405相关联的分组,并继续将其发送到目的地140。在步骤S665,入口节点105可拆除重新路由路径。众所周知,如在RFC 4090所提出的,拆除路径是除去与RSVP-TE会话(上述的)相关联的路径。本领域技术人员可以了解的是,上述示例性实施方式可由存储在可记录介质上的软件代码片段实现,并由处理器来执行。可记录介质和处理器可以是作为诸如标签交换路由器LSR的功能元件的存储器和处理器。尽管描述和说明了特定的示例性实施方式,本领域技术人员可以理解的是,在不偏离权利要求的精神和范围的情况下,可以对形式和细节进行各种变形。这里描述了本发明,显然的是,同一发明可以多种方式进行变形。这样的变形不被认为是偏离本发明,所有这样的修改都包括在本发明的范围内。
权利要求
1.一种用于在点到多点网络(100)中避免流量重复的方法,该方法包括丢弃与第一数据路径(150、50幻相关联的第一数据分组(S655),直到第二数据路径(305)去激活为止,第二数据路径具有相关联的第二数据分组,第一数据分组和第二数据分组包括相同的数据。
2.一种用于在点到多点网络(100)中避免流量重复的方法,该方法包括监测(S615)从源(135)到目的地(140)的第一数据路径(S150)中的第一互连链路(145)的状态,第一数据路径包括入口节点(105)、出口节点(115)、和一个或多个中间节点(110);如果确定第一互连链路的链路(145-n)是不可操作的链路,则建立第二数据路径(305),第二数据路径包括入口节点、出口节点、一个或多个中间节点中的至少一个和第二互连链路,第二互连链路包括新的互连链路和第一互连链路的子集,子集不包括第一互连链路中的不可操作链路;激活¢62 第二数据路径;监测(S630)不可操作链路的状态;如果不可操作的链路变为可操作的,则建立(S635)第三数据路径,第三数据路径(505)包括入口节点、出口节点、一个或多个中间节点和第一互连链路;激活(S640)第三数据路径;在一个或多个中间节点中的一个中间节点处,丢弃(S65Q与第三数据路径相关联的数据分组,直到第二数据路径去激活为止;以及去激活(S64Q第二数据路径。
3.根据权利要求2所述的方法,其中点到多点网络是多协议标签交换(MPLS)网络,多协议标签交换网络包括多个被配置为使用资源预留协议(RSVP)和流量工程(TE)的节点,MPLS网络是在被配置为封装各种协议分组的节点之间的虚拟链路的网络,RSVP是被配置为经过用于集成服务国际互联网的网络预留资源的传输层协议,以及TE是RSVP的扩展,且被配置为在预留了网络资源时考虑网络限制参数。
4.根据权利要求3所述的方法,其中监测第一互连链路的状态包括从上游节点接收错误消息;从错误消息中获取路径识别值、路径完整性值和节点分支列表;基于路径识别值、路径完整性值和节点分支列表确定第一互连链路的状态。
5.根据权利要求3所述的方法,其中在MPLS网络中形成的一个或多个路径是标签交换路径(LSP),LSP是通过由信令协议建立的MPLS网络的路径。
6.根据权利要求5所述的方法,包括通过创建包括作为源节点的源、作为目的地节点的目的地和一个或多个中间节点的LSP,来建立第一数据路径;激活第一数据路径;以及通过将标签分配给形成LSP隧道的数据分组,将数据分组映射到LSP隧道上,LSP隧道是在使用MPLS以携带分组的两个节点之间配置的连接。
7.根据权利要求6所述的方法,包括在第一数据路径的路径消息中包括快速重新路由对象,以指示第一数据路径为受保护的数据路径;在多个节点的每一个的周围配置多个迂路LSP路径;以及在多个节点的每一个和多个迂路LSP路径的不同迂路LSP路径之间创建关联。
8.根据权利要求7所述的方法,其中建立第二数据路径包括, 由上游节点确定下游链路已经出现故障;使用相关联的迂路LSP路径重新路由数据分组;以及在第一数据路径的下游节点处合并数据分组,从而在合并数据分组后,第一数据路径和第二数据路径是相同的数据路径,其中将与用于识别数据路径中的数据分组的标签相同的标签来识别重新路由的数据分组。
9.根据权利要求3所述的方法,其中建立第三数据分组包括, 入口节点创建新标签以识别新的LSP路径, 入口节点创建新的LSP路径,以及入口节点发送新的路径消息,其中新的路径消息包括将新的LSP路径上的流量与数据路径上的流量相关联的信息。
10.根据权利要求9所述的方法,其中一个或多个中间节点中的一个是重新合并节点,以及重新合并节点利用在新路径消息中接收的信息来确定是否应当丢弃数据分组。
全文摘要
提供一种用于在点到多点网络中避免流量重复的方法,该方法包括监测从源到目的地的第一数据路径中的第一互连链路的状态,第一数据路径包括入口节点、出口节点、和一个或多个中间节点。该方法进一步包括如果确定第一互连链路的链路是不可操作的链路,则建立第二数据路径,第二数据路径包括入口节点、出口节点、一个或多个中间节点中的至少一个和第二互连链路,第二互连链路包括新的互连链路和第一互连链路的子集,子集不包括第一互连链路中的不可操作链路。
文档编号H04L12/18GK102577239SQ201080040767
公开日2012年7月11日 申请日期2010年9月9日 优先权日2009年9月14日
发明者P·G·贾因, P·V·穆莱 申请人:阿尔卡特朗讯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1