首页> 中国专利> 在单向隧道存在的情况下建立协议无关多播树的方法

在单向隧道存在的情况下建立协议无关多播树的方法

摘要

本发明的实施例针对建立到在分组交换网络中的单播隧道上可达的源的PIM树。有利地,在网络核心中不存在源可达性的情况下,可以使用建立PIM树的反向路径转发(RPF)向量TLV。

著录项

  • 公开/公告号CN104937878A

    专利类型发明专利

  • 公开/公告日2015-09-23

    原文格式PDF

  • 申请/专利权人 阿尔卡特朗讯公司;

    申请/专利号CN201480005697.X

  • 发明设计人 J·克塔尔沃;S·克里帕拉;

    申请日2014-01-20

  • 分类号H04L12/18(20060101);H04L12/715(20060101);H04L12/761(20060101);H04L12/707(20060101);H04L12/753(20060101);H04L12/723(20060101);

  • 代理机构11247 北京市中咨律师事务所;

  • 代理人杨晓光;于静

  • 地址 法国布洛涅-比扬古

  • 入库时间 2023-12-18 11:09:35

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-01-16

    授权

    授权

  • 2015-10-21

    实质审查的生效 IPC(主分类):H04L12/18 申请日:20140120

    实质审查的生效

  • 2015-09-23

    公开

    公开

说明书

技术领域

本发明针对隧道化网络中的多播。

背景技术

协议无关多播(PIM)是多播路由协议的集合。主要的PIM协议中的 一个是PIM稀疏模式(PIM-SM)。PIM-SM适合一个多播组,其将稀疏 地分布在整个网络。为使用PIM-SM接收多播数据,路由器必须向其上游 邻近路由器发送请求以加入特定的组和源。路由器使用PIM加入消息加入 多播分发树并使用PIM修剪消息(PIM Prune message)离开他们。

PIM-SM协议支持基于源的树的使用,其中为每一个将数据发送到多 播组的源构建单独的多播分发树。每个基于源的树根源于与源邻接的路由 器,其将数据直接发送到树的根。基于源的树使得源特定多播(SSM)能 够使用。使用SSM,主机通过源(S)和组(G)地址对(S,G)在加入 消息中标识多播流和组。

在设置基于源的树时如果到达多播树的源的下一跳经由单向隧道可达, 可能发生问题。这可能在当请求SSM加入的主机和加入消息中指定的源 之间的部分路径在内部网关协议(IGP)转发捷径上时发生。例如,所述 下一跳可能是在单向隧道远端的路由器。在这种情况下,PIM将无法建立树, 因为由于PIM需要双向隧道,其不能与下一跳地址的路由器建立相邻关系。

上述第一问题的一种解决方案是让IGP协议如开放式最短路径优先 (OSPF)和中间系统到中间系统(ISIS)完全地解决IGP转发捷径路由并提供 直接的下一跳。然而,如果网络核心没有到多播树的源的路由,该解决方 案将不工作。在这种路由存在的情况下,所述解决方案应该工作,但其将 不利地使用可能已处在严重需求中的资源,例如为IGP协议执行路由计算 的那些。

因此,期望得到一种建立基于源的多播树的有效和可靠的方式。

发明内容

本发明的实施例使得能够通过单向隧道端点节点建立PIM多播树。多 播树的节点可能会或可能不会与单向隧道节点重叠。

根据本发明的一个方面提供了在隧道网络中建立PIM多播树的方法。 所述方法包括,在网络中的第一节点,接收指示多播组的源节点的加入消 息;查找至源节点的路由;确定第一节点是否与沿着路由的第一下一跳节 点邻接;以及响应于第一节点与第一下一跳节点邻接,将加入消息转发到 第一下一跳节点。确定第一节点是否与沿着路由的第一下一跳节点邻接的 步骤可包括确定所述路由使用单播隧道。

此外,所述方法可包括,响应于第一节点使用单播隧道路由并且没有 与第一下一跳节点邻接,执行第一下一跳节点的递归下一跳解析以寻找在 通过第一下一跳节点到源节点的替代路由上的第二下一跳节点;并响应于 发现替代路由并且与第二下一跳节点邻接,将加入消息转发到第二下一跳 节点。此外,所述方法可以包括,根据节点配置和/或响应于执行递归下一 跳解析的行为,改变加入消息以包括指示第一下一跳节点的反向路径转发 向量;以及将改变后的加入消息转发到第二下一跳节点,其在执行第一下 一跳节点的递归下一跳解析时被发现。执行递归下一跳解析的步骤可包括 寻找不使用隧道的替代路由。

根据本发明的另一个方面提供了一种网络节点。所述网络节点包括: 用于接收和发送数据分组业务的接口;耦合到所述接口的处理器;耦合到 所述处理器的存储器,所述存储器包括路由信息;以及存储在存储器中的 计算机可读指令的程序。当程序被处理器执行时,其会使得网络节点可操 作以:经由所述接口接收指示多播组的源节点的加入消息;在存储器中查 找至源节点的路由;确定第一节点是否与沿着路由的第一下一跳节点邻接; 并响应于第一节点与第一下一跳节点邻接,将加入消息转发到第一下一跳 节点。确定第一节点是否与沿着路由的第一下一跳节点邻接的功能可包括 确定所述路由使用单播隧道。

此外,当程序被处理器执行时,其可进一步使得网络节点可操作以: 响应于第一节点使用单播隧道路由并且没有与第一下一跳节点邻接,执行 第一下一跳节点的递归下一跳解析以寻找在通过第一下一跳节点到源节点 的间接替代路由上的第二下一跳节点;以及响应于发现替代路由并且与第 二下一跳节点邻接,将加入消息转发到第二下一跳节点。此外,当程序被 处理器执行时,其可进一步使得网络节点可操作以,根据节点配置和/或响 应于执行递归下一跳解析的行为,改变加入消息以包括指示第一下一跳节 点的反向路径转发向量;并将改变后的加入消息转发到第二下一跳节点, 其在执行第一下一跳节点的递归下一跳解析时被发现。执行递归下一跳解 析的功能可包括寻找不使用隧道的替代路由。

根据本发明的另一方面还提供了网络。所述网络包括第一网络节点, 第二网络节点和第三网络节点。第一网络节点适于接收指示多播组的源节 点的加入消息,查找至源节点的路由,确定第一节点是否沿着路由与第一 下一跳节点邻接,否则执行第一下一跳节点的递归下一跳解析以寻找到源 节点的间接替代路由,改变加入消息以包括指示第一下一跳节点的反向路 径转发向量;以及将改变后的加入消息转发向源节点。第二网络节点适于 接收改变后的包括反向路径转发向量的加入消息、执行反向路径转发向量 而不是源的下一跳解析,以及将加入消息转发向第三下一跳节点,其在执 行下一跳解析时被发现。所述第三网络节点适于接收改变后的包括反向路 径转发向量的加入消息,并确定所述向量是其自身并通过去除反向路径转 发向量来更新加入消息,并将更新后的加入消息转发向源节点。

有利的是,本发明的实施例使得PIM多播树能够在网络路由上设置, 所述网络路由还承载单向隧道,如可能在具有激活的IGP转发捷径的网络 中所存在的。

附图说明

如附图所示,根据优选实施例的以下更具体的描述,本发明的前述和 其它目的、特征和优点将将显而易见,其中:

图1示出了根据本发明第一实施例的网络。

图2示出了根据本发明第二实施例的建立PIM树的方法。

图3示出了根据本发明第三实施例的图1中的第一提供商边缘路由器 的架构。

图4示出了根据本发明第四实施例的建立PIM树的方法。

图中相同的特征用相同的参考符号表示。

具体实施方式

将描述一种机制,其可用于建立到通过网络中的单播隧道可达的源的 PIM树。例如由单播隧道使用的单播传输是消息或数据从一个网络节点到 另一单独的网络节点的传输,即,一对一传输,并且在下文中应当被理解 为是单向的。还将描述使用反向路径转发(RPF)向量类型长度值(TLV) 参数来建立PIM树以用于网络核心中不存在源可达性的情况。所述RPF 向量TLV在RFC5496中定义。

图1示出了根据本发明第一实施例的网络10。网络10包括主机节点 12,在此也被称为接收器(R),其将加入源自源节点14的多播组(G)。 主机节点12被连接到第一提供商边缘(PE)路由器(PE1)16。第二PE 路由器(PE2)18由第一PE路由器16经由单播隧道20可达。第二PE 路由器18被连接到源节点(S)14。第三路由器(P)22被连接到第一和 第二PE路由器16、18,以使得其位于沿第一和第二PE路由器16、18之 间的隧道20的中间位置。

术语连接在此用于意味着通过物理通信链路与网络节点直接耦合,使 得数据分组可以在被描述为被这样连接的两个网络节点之间双向地通信。 术语可达性在此通常指与用于将来自本网络节点的数据分组转发到到另一 个指定的网络节点的路由有关的路由或信息。

在一些网络拓扑中,到多播源的可达性通过单播隧道如IGP转发捷径 或BGP隧道,例如源节点14由第一PE路由器16经由单播隧道20可达。 对于这种路由,从隧道近端的路由器到源的下一跳将为隧道远端的隧道端 点,例如第二PE路由器18将为来自使用隧道20的第一PE路由器16的 下一跳。然而,由于隧道承载的通信是单向的,PIM与下一跳18的邻接 不能在隧道上建立。因此,试图使用隧道设立PIM树将失败。例如,第一 PE路由器16试图使用隧道20设立PIM树将失败,因为第一PE路由器 16不与第二PE路由器18邻接。

本发明的实施例提供了一种经由单播隧道构建到可到达的源的PIM 树的机制。该机制依赖递归下一跳查找以在向着多播源节点的方向上到达 下一跳网络节点。对于下一跳网络节点不具有到所期望的多播源节点的可 达性的情况,其将导致下一跳网络节点不能够向多播源节点传播PIM加入 消息,一种使用RPF向量TLV以帮助构建PIM树的附加机制被描述。

参照图1,在第一和第二PE路由器16、18和第三路由器22PIM被激 活。第一和第二PE路由器16、18分别地各自与第三路由器22的PIM邻 接。然而,第一和第二PE路由器16、18彼此之间不具有PIM邻接。在 主机节点12,到达源节点14的下一跳是第一PE路由器16。在第一PE 路由器16,到达源节点14的下一跳是使用由单播隧道20提供的路由的第 二PE路由器18。

为了构建多播分发树,PIM加入消息被路由器在树到多播组的源的路 径上逐跳转发。路由器在每一跳创建转发状态,并将所述加入信息向源传 播。例如参照图1,主机节点12将发送一个(S,G)加入消息24到第一 PE路由器16。第一PE路由器16将(S,G)加入消息24转发到下一跳 路由器,其为第二PE路由器18。然而,在这种情况下,由于第一PE路 由器16不与下一跳路由器(即第二PE路由器18)邻接;所述下一跳路 由器不会将加入消息24向源节点14传播。

上述问题的现有解决方案是让如OSPF和ISIS的IGP协议彻底解析 IGP转发捷径路由并提供直接的下一跳。然而,这种解决方案存在至少两 个问题:其增加了对关键资源的开销,例如那些用于由IGP路由协议所做 的最短路径优先(SPF)计算,并且如果网络核心不具有到多播树源的路 由,则它不会工作。

本发明实施例使得PIM在下一跳上递归,并确定其他与其有邻接的直 接下一跳。也就是说,试图转发(S,G)加入消息的路由器将在下一跳路 由器的IP地址上执行递归下一跳解析以寻找与其邻接的另一路由器,并且 该另一路由器在到下一跳路由器的路径中。因此,参照图1,第一PE路 由器16将确定,为到达源节点14,它需要在作为第二PE路由器18的下 一跳上递归。该递归将产生第三路由器22作为与第一PE路由器16有邻 接的最终的下一跳。因此,第一PE路由器16能将(S,G)加入消息24 传播到第三路由器22并期待第三路由器22将加入消息24进一步向源节点 14进行上流传播。

如果第三路由器22不具有到源节点14的可达性,另一个问题可显现。 在这种情况下,第三路由器22将仅丢弃(S,G)加入消息24而不将其播 向源节点14转发。为解决该问题,在此提供了另一种机制。具体而言,由 于第一PE路由器16关于第二PE路由器18执行了递归下一跳解析,第 一PE路由器16可以发起PIM(S,G)加入消息26,其包括用第二PE 路由器18的地址编码的RPF向量属性。RPF向量属性因此将向第三路由 器22提供关于加入消息26应向哪里传播的指示。所述RPF向量属性将优 选地符合RFC5496和RFC5384的规则。

作为示例,假设主机节点12向第一PE路由器16发送(S,G)加入 消息24。接收到所述加入后,第一PE路由器16查找路由表以寻找向着 源节点14的路由。由路由表提供的路由是通过单播隧道20的具有第二PE 路由器18的下一跳的隧道路由。PIM不能标记所述下一跳有效,因为其 不与路由器第二PE路由器18邻接。需要注意的是隧道20是单向隧道。 为了邻接的设立,双向隧道是必要的。鉴于路由被隧道化,第一PE路由 器16上的PIM将对下一跳递归以寻找到下一跳(第二PE路由18)的路 由。到第二PE路由18的新路由将具有第三路由器22的下一跳。它将被 直接连接下一跳并且PIM将发现与直接的下一跳(第三路由器22)的邻 接。第一PE路由器16然后将发起加入消息26到第三路由器22。如果所 述拓扑是这种不包含到源节点14的路由的核心网络(在这种情况下,三个 路由器16、18和22),则第一PE路由器16将发起(S,G)加入消息 26以用于具有编码于其中的RPF向量的源(S)和组(G)。所述RPF 向量将具有第二PE路由器18的IP地址编码于其中。所述RPF向量将向 第三路由器22提供指示,其必须向第二PE路由器18发送加入消息以到 达源节点14。PIM加入消息26将逐跳前往源节点14并且多播业务将启动 从源节点14到主机节点12的流。

总之,如果从当前路由器到达PIM树的源S的路由通过单播隧道,使 得下一跳只有通过隧道可达,则PIM将递归下一跳地址并获得到不使用隧 道到达下一跳的路由。用于路由的新的下一跳将由当前路由器确定并且该 新的下一跳是当前路由器上的PIM与其具有相邻关系的直接跳。当前路由 器然后将发起PIM加入消息以用于源S并将其发送到新的下一跳。此外, 如果新的下一跳是核心路由器,并且网络拓扑是这种核心路由器不具有到 源S的路由的情况,编码具有下一跳地址的RPF向量属性可被包含在PIM 加入消息中。所述RPF向量属性将向核心路由器提供关于加入消息应被传 播到哪里的指示或暗示。所述PIM加入消息将逐跳传往源S,其一旦接收 到该加入消息将使得多播业务开始从源节点S流向接收器R。

图2示出了根据本发明的第二实施例建立PIM树的方法200。方法200 将在分组交换网络中的一个或多个路由器上被执行,如图1所示的路由器 16、18、22。根据方法200,开始202后,下一个步骤是接收204(S,G) 加入消息,如图1所示的消息24、26中的任一个。执行方法200的路由器 然后通过查找206至接收到的(S,G)加入消息所指示的源S的路由来继 续。路由器将通常使用源S的IP地址来在所述路由器的路由表中查找至 源S的路由。方法200的下一步骤是随后确定208通过查找发现的路由是 否通过单播隧道,或使得所述路由器不与沿所述路由的下一跳邻接的任何 其他路由。如果路由器确定路由不通过单播隧道,并且沿着路由路由器与 下一跳邻接,那么方法200的下一步骤是转发214(S,G)加入消息到沿 所述路由的下一跳,之后路由器执行的方法200结束216。

然而,如果路由器确定208路由是通过单播隧道或者沿其路由器不与 下一跳邻接的路由,那么方法200的下一个步骤视具体情况而定为递归210 隧道端点或下一跳。递归210隧道端点(或下一跳)意味着执行所述隧道 端点(或下一跳)的IP地址的递归下一跳解析以查找通过隧道端点的不使 用隧道至源S的间接替代路由。应当指出,替代路由可能穿越隧道穿越的 相同的路由器或网络节点的某些或全部。然而,在替代路由上的数据分 组——包括承载加入消息的那些数据分组——的路由将不会与经由隧道被 路由的数据分组所应当经由的路线相同。

如果路由器确定212这样的替代路由已经被发现,方法200的下一步 骤是确定215是否基于节点配置和/或响应于执行递归下一跳解析的行为 来发送RPF向量。在网络核心不具有到源节点的可达性的配置情况下,网 络运营商应该配置节点以激活PIM RPF向量。如果RPF向量将不被使用, 所述方法继续转发214(S,G)加入消息到下一跳。否则,下一步骤是转 发218(S,G)加入消息到通过递归操作发现的新的下一跳网络节点,所 述(S,G)加入消息包括指示隧道端点的IP地址的RPF向量,此后,方 法200结束216。如果路由器确定212替代路由没有被发现,(S,G)加 入消息被丢弃217,此后,路由器上执行的方法200结束。

应当指出,在路由器转发218包括RPF向量的(S,G)加入消息26 之后,接收该消息26的另一个路由器还可以执行由RPF向量所指示的网 络节点(例如隧道端点)的递归路由查找。此外,其他的路由器可制定第 二(S,G)加入消息并将第二(S,G)加入消息向源S转发,所述第二 (S,G)加入消息包括指示另一个网络节点的第二RPF向量。

还应当指出,可选地,确定212路由是否已通过递归201操作被发现 的步骤以及转发214不包括RPF向量的(S,G)加入消息24的步骤可以 被省略,并且相反地,转发216包括RPF向量的(S,G)加入消息26的 步骤(如所述)可以在每个情况下被执行。

图3示出了根据本发明第三实施例的图1中第一PE路由器16的架构 300。第一PE路由器16的架构300是这样的:它可以加载(或以其他方 式适于)包括计算机可执行指令的软件程序,当所述指令被执行时使得第 一PE路由器16执行建立PIM树的方法,例如之前参照图2所述的方法 200。

参照图3,第一PE路由器16包括以通信方式耦合到存储器308的处 理器304,以使得处理器304能够从存储器308中读取数据以及将数据写 入存储器308。所述数据可以采取程序指令310、路由信息312、以及数据 分组以及其他的形式。程序310包括计算机可读指令,当其被处理器304 访问和执行时使得第一PE路由器16执行建立PIM树的方法,例如之前 参照图2所述的方法200。第一PE路由器16还包括接口306以用于接收 和发送数据分组业务,例如之前提到的将包括前述的PIM加入消息24、 26的那些以及经由所述PIM树通信的多播数据以及其他类型的数据。接 口306被以通信方式耦合到处理器304,以使得处理器304接收来自接口 306的数据分组业务或包含在数据分组业务中的信息,并且向接口306发 送数据分组业务或包含在数据分组业务中的信息。对于前述示例,视不同 的情况,主机节点12和第三路由器22将被连接到接口306以及其他路由 器或者网络节点。

图4示出了根据本发明第四个实施例的建立PIM树的方法400。方法 400将在分组交换网络中的一个或多个路由器上被执行,如图1所示的路 由器18和22。根据方法400,开始402后,下一步骤是接收404包括RPF 向量的(S,G)加入消息,例如修改后的如图1所示的消息26。执行方 法400的路由器然后继续,确定406所述RPF向量是否寻址到所述路由器 自身。例如,如果所述RPF向量指定了所述路由器的IP地址,则路由器 将确定该RPF向量寻址自身,在这种情况下,所述路由器会从(S,G) 加入消息26中移除408所述RPF向量。所述路由器然后将查找410到源 S的路由并沿着到源S的路由向下一跳节点转发412(S,G)加入消息[具 有的RPF向量现在被移除],此后方法400将结束414。然而,如果路由 器确定所述RPF向量未被寻址到所述路由器自身,则所述路由器继续查找 416到由所述RPF向量处理的节点的路由。然后,路由器沿着产生于查找 416的路由向下一跳节点转发418(S,G)加入消息26[其包括所述RPF 向量],之后方法400结束414。

有利地,在从正在尝试在例如IGP转发捷径或BGP隧道的单播隧道 上设立树的路由器到多播源的可达的情况下,本发明的实施例使得到多播 源的PIM多播树能够被建立。

可对本发明的上述示例性实施例进行各种修改、变型和调整而不偏离 在权利要求中限定的本发明的精神和范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号