MPLScookie标签的制作方法

文档序号:7949049阅读:178来源:国知局
专利名称:MPLS cookie标签的制作方法
技术领域
本发明一般地涉及通信网络,更具体而言,涉及MPLS(多协议标签交换)cookie标签和虚拟专用网(VPN)安全性。
背景技术
虚拟专用网充当IP网络基础结构上的网络覆盖。具有MPLS/IP骨干的服务提供商可以为其客户提供VPN。如RFC 2547(“BGP/MPLSVPNs”,E.Rosen等,1999年3月)所述,MPLS可被用于通过骨干和被用来在骨干上分发路由的多协议边界网关协议(MP-BGP)来转发分组,这里通过引用将该RFC全部结合进来。
图1示出MPLS-VPN转发的示例。提供商网络与两个客户网络vpnA和vpnB通信。vpnA前缀10.10.10/24和vpnB前缀11.11.11/24都是在它们各自的提供商边缘(PE)路由器处利用标签500来标识的。(为了简化,只使用IP地址的一部分)。提供商网络包括多个提供商(P)路由器10a、10b、10c和PE路由器12a、12b、12c。VPN包括客户路由器14a、14b、14c、16a、16b、16c、18a、18b。分组转发是基于MPLS核心网络内的标签信息来执行的。如图1所示,IP分组经由路由器12a、10a、10b和12b从vpnA12.12.12/24发送到vpnA10.10.10/24。在客户边缘节点14a处的IP分组包括源(src)和目的地(det)地址。在PE节点12a处,IP查找被执行,并且IGP和VPN标签被添加到分组。分组随后通过网络被发送,直到其到达提供商边缘12b,该提供商边缘12b将分组发送到CE16a。
如图1所示,想去往远程CE站点的MPLS-VPN流量在入口PE处被施加上对应于匹配的VPN-IPv4路由的VPN标签以及将流量定向到出口PE的IGP标签。由于VPN标签仅仅在分配标签的路由器处是有意义的,因此在转发时可能发生错误(误转发)。误转发例如可能发生在分组到达错误的PE的情况下,这种情况可能是由于分组在路由选择时发生差错或者由于网络中分组寿命期间标签值交换时发生差错而引起的。转发差错也可能发生在分组到达正确PE,但PE的转发平面就转发条目而言与其控制平面不一致的情况下。另一种可能的差错来源是在分组到达正确PE,但该PE已经改变了标签值的绑定的情况下。而且,分组也可能由于没有到达任何PE,而是改为基于全局表中的VPN目的地地址被转发而被误转发,这种情况是由于错误地弹出MPLS标签栈而引起的。
图2示出MPLS-VPN误转发的一个示例。该网络与图1的网络相同。但是,在此实例中,分组被不正确地路由到vpnB而非vpnA。误路由选择发生在提供商节点10a处。由于下一跳标识标签500,因此分组被发送到vpnB,其具有与vpnA相同的标签。这类误转发在传统系统中是常见的,因为在不同PE路由器上针对不同VPN经常使用相同的标签。
当前,用于转发数据的方法包括特定于IP隧道技术(tunneling)的GRE密钥字段和L2TPv2 cookie字段。GRE密钥字段和L2TPv2 cookic字段都是特定于IP隧道技术的,并且在本地的MPLS骨干中或者对于MPLS流量工程不起作用。IETF因特网草案“CE-to-CE Authentication for RFC2547 VPNs”((draft-bonica-13vpn-auth-02.txt),R.Bonica等,2002年2月)描述了随标签一道分发cookie以认证CE的方案。但是,在Bonica因特网草案中描述的系统中使用的cookie不是在数据平面中被分发的。
在由多厂商设备构成并且跨越多个AS的骨干中,VPN流量的成功递送依赖于每个中间路由器处的正确转发。VPN分组被误转发的可能性随中间跳数的增多而呈指数增长。此外,在由来自多个厂商的设备构成的网络中,可能无法同时更新所有节点。因此,还希望在MPLS网络中存在软件和硬件缺陷时防止VPN误转发。
因此,存在对于这样一种系统和方法的需求,这种系统和方法允许cookie独立于隧道机制地出现在数据平面中MPLS标签栈中以用于识别误转发的分组。还希望提供用于在控制平面中将cookie与FEC(转发等价类)标签一起分发的方法。

发明内容
一种用于防止分组从MPLS网络误转发到虚拟专用网的方法和系统被公开。该方法包括在MPLS网络的入口边缘节点处接收分组;将cookie与由MPLS网络的出口边缘节点绑定到路由的标签相关联;以及在入口边缘节点处将cookie插在MPLS标签栈上。所述分组通过MPLS网络被发送到出口边缘节点。cookie允许出口边缘节点通过比较发送的分组的标签栈中的cookie与存储在出口边缘节点处的cookie标签来检测发送的分组是否是被误转发的。
在本发明另一方面中,一种用于识别与多个虚拟专用网通信的MPLS网络中的误转发的分组的方法,一般地包括在MPLS网络的提供商边缘入口节点处接收来自虚拟专用网之一的分组;将cookie与由MPLS网络的多个提供商边缘出口节点之一绑定到路由的标签相关联;并且在提供商边缘入口节点处,将cookie插在数据平面中MPLS标签栈上。分组通过MPLS网络被发送,并在提供商边缘出口节点之一处被接收。该方法还包括比较插入分组的标签栈中的cookie与存储在接收到所述分组的提供商边缘出口节点处的cookie;以及如果标签栈中的cookie与存储在提供商边缘出口节点处的cookie匹配,则将分组转发到虚拟专用网之一,并且如果标签栈中的cookie与存储在提供商边缘出口节点处的cookie不匹配,则丢弃所述分组。
在本发明的又一方面中,一种用于检查通过MPLS网络发送的想去往虚拟专用网的误转发的分组的系统,一般地包括在MPLS网络的出口节点上的处理器和系统存储器。所述处理器被配置用于接收与绑定到VPN-IP路由的VPN标签相关联的cookie,将该cookie与位于在出口节点处接收的分组的标签栈中的cookie标签相比较以确定所述分组是否是被误转发的,并且如果所述cookie和所述cookie标签匹配,则将所述分组转发到所述虚拟专用网,并且如果所述cookie和所述cookie标签不匹配,则丢弃所述分组。
通过参考说明书的其余部分以及附图,可以意识到本发明的其他本质和优点。


图1是示出通信网络中的MPLS-VPN转发的现有技术示例的示意图。
图2是示出图1所示网络中的MPLS-VPN误转发的现有技术示例的示意图。
图3是示出利用本发明的MPLS cookie标签的MPLS-VPN转发的示意图。
图4是示出利用MPLS cookie标签检测误转发的分组的示例的流程图。
图5是用在本发明中的MPLS cookie标签格式的一个示例。
图6是用于BGP MPLS cookie标签能力通告的能力标志的示例。
图7是用于BGP MPLS cookie标签能力通告的能力标志字段的示例。
图8是示出MPLS cookie可被如何用于检查控制平面BGP更新中的一致性的示意图。
图9是用于实现本发明的实施例的网络设备的一个示例的框图。
在附图中,相应的标号指示相应的部分。
具体实施例方式
以下描述用于使得本领域普通技术人员能够制造和使用本发明。对特定实施例和应用的描述仅仅是作为示例提供的,并且本领域技术人员易于想到各种修改。这里描述的一般原理可被应用到其他实施例和应用,而不会脱离本发明的范围。因此,本发明并不局限于所示实施例,而是符合与这里描述的原理和特征相一致的最宽范围。为了清晰起见,与本发明相关技术领域中已知的技术材料相关的细节未被详细描述。
这里公开的方法和系统允许cookie独立于所用隧道机制地出现在数据平面中的MPLS标签栈中,以防止分组从MPLS网络误转发到虚拟专用网(VPN)。如下面详细描述的,MPLS cookie优选地在控制平面中与FEC(转发等价类)标签一起被分发。该方法和系统减小了在MPLS网络中存在软件和硬件缺陷时发生VPN误转发的可能性。
本发明工作在包括多个网络元件的数据通信网络的上下文中。采用本发明的网络中的某些元件可以是诸如路由器之类的网络设备。例如,某些节点可以是特别配置的路由器,例如可以从San Jose,California的CiscoSystems,Inc.获得的路由器。这里使用的术语“路由器”被用于指示基于网络和更高层信息来转发分组的设备。路由器例如可以包括主中央处理单元(CPU)、接口和总线(例如PCI总线)。CPU优选地包括存储器和处理器。当在适当软件或固件的控制下工作时,CPU负责诸如路由表计算、网络管理和一般分组处理之类的路由器任务。它优选地在包括操作系统(例如Cisco Systems,Inc.的Internetwork Operating System(IOS)的一个版本)的软件和任何适当的应用软件的控制下实现所有这些功能。CPU可以包括一个或多个处理器,例如来自Motorola家族的处理器或者MIPS微处理器家族的处理器。在替换实施例中,处理器是特别设计的用于控制路由器的操作的硬件。存储器可以是非易失性RAM或ROM。但是,存在很多可以将存储器耦合到系统的不同方法。路由器可被实现在通用网络主机(例如计算机系统)或以下参考图9所述的网络设备上。
图3示出本发明的用于分发MPLS cookie标签以防止分组误转发(即大大降低分组误转发的可能性)的方法和系统的一个实施例。图3所示网络包括根据MP-BGP工作的提供商MPLS网络31。该提供商网络与两个客户网络vpnA和vpnB通信。vpnA前缀10.10.10/24和vpnB前缀11.11.11/24都是在它们各自的PE处利用标签500来标识的。提供商网络包括多个提供商(P)路由器30a、30b、30c和提供商边缘(PE)路由器32a、32b、32c。VPN包括客户路由器34a、34b、34c、36a、36b、36c、38a、38b。这里描述的系统只要求在提供商边缘(PE)设备处更新,对于位于提供商核心网络中的提供商(P)路由器或客户路由器没有任何新要求。将会理解,图3所示网络仅仅是一个示例,并且本发明的MPLS cookie标签可被用在各种类型和大小的网络上,而不会脱离本发明的范围。而且,虽然这里描述的实施例利用BGP来分发路由,但是诸如标签分发协议(LDP)、资源预留协议(RSVP)之类的其他协议或任何其他合适的协议都可被用来分发标签。
到达PE 32a的VPN流量被施加上对应于匹配的VPN-IPv4路由的标签500和将流量定向到出口PE 32b的IGP标签200(在图3中用标号42标识)。分组还包含源(src)地址44和目的地(det)地址46。MPLScookie标签48在被出口PE 32b绑定到VPN-IPv4路由时与VPN标签相关联。在该示例中,MPLS标签是基于每个VPN前缀来分配的。但是,将会理解,MPLS标签也可以基于另一转发等价类(FEC)来分配。如图3所示,vpnA具有与其相关联的cookie值123,而vpnB具有与其相关联的cookie值236。cookie 48利用VPN标签被分发到入口PE 32a。针对到达的VPN分组,入口PE 32a将cookie 48插在数据平面中VPN标签下的标签栈上。分组具有cookie标签值123并且想经由PE 32b去往vpnA。但是,如图3的示例所示,分组被误转发到PE 32c。在到达出口PE 32c之后,VPN分组由于其cookie标签值(123)与存储在PE 32c处的标签转发条目中的cookie(236)不匹配而被丢弃。
cookie标签被用于检测带MPLS标签的分组是否被误转发,而不是被用于执行转发判决。因此,无需分配对应于标签的单独的MPLS转发条目或平台TCAM。相反,标签值被存储在其保护的相应MPLS VPN标签转发条目中。如果发生误转发,cookie则向出口PE提供检测该误转发的方法。cookie具有正确的值但是已被误转发的可能性是极低的。当标签被重用时,如果存在恢复前一cookie值的方法,那么通过要求cookie值等于与该标签相关联的前一值加1,可以进一步降低上述可能性,这是因为第二个随机数可能与第一个随机数相等,但n+1不可能等于n。
图4是示出本发明的用于利用MPLS cookie标签检测和丢弃如图3所示的误转发的分组的过程的流程图。在步骤50,标签值被出口PE 32b绑定到VPN-IP路由。随后cookie被选择并与VPN标签相关联(步骤52)。入口PE 32a将cookie插在标签栈上(步骤54)。分组随后被不正确地转发到出口PE 32c(步骤56和58)。cookie标签在到达出口PE 32c之后被检查,并由于标签栈中包含的cookie(123)与存储在出口路由器上的针对VPN标签500的cookie(236)不匹配而被丢弃(步骤60和64)。如果分组被正确地路由到出口PE 32b,标签栈中的cookie则与PE处的cookie匹配,并且PE将转发分组到正确的虚拟专用网vpnA(步骤60和62)。
如图5所示,cookie标签优选地遵从在RFC 3032(“MPLS LabelStack Encoding”,MPLS Working Group,E.Rosen等,2001年1月)中定义的标准32位MPLS标签栈条目格式,该RFC 3032通过引用被整体上结合于此。标签是一个20位值,后面跟随着3位的Exp(试验用)字段、1位的S(栈底)字段和8位的TTL(存活时间)字段。该格式允许最大限度地重用现有的MPLS基础结构并且允许传统的MPLS负载共享方案正常工作。
在本发明的一个实施例中,当VPN标签被第一次分配时,cookie被初始化以20位的随机整数值,该随机整数值以路由器ID为种子(seed)。随后,针对每次随后的标签重用生成新的cookie。但是,如果与重用标签相关联的前一cookie可被恢复(如在利用SSO(有状态切换)模式的情况下),则新cookie值被加1。这降低了任何<vpn-labcl,cookie>对冲突的可能性。将会理解,用于选择cookie值的方法可以不同于这里描述的方法,而不会脱离本发明的范围。
无论施加PE(imposition PE)处于统一模式(uniformed mode)还是管道模式(pipe mode),当在数据路径中施加标签之后,cookie标签TTL都被初始化到0(参见RFC 3443(“Tine To Live(TTL)Processing inMulti-Protocol Label Switching(MPLS)Networks”,MPLS WorkingGroup,P.Agarwal等,2003年1月),其通过引用被整体上结合于此)。对于分级的VPN部署(其具有VPN标签下的附加标签),处置PE(disposition PE)路由器可能需要通过检查其TTL值来检测标签栈中cookie标签栈条目的存在。
如果不是所有入口PE都能够放上cookie,则可能存在问题,这是因为出口PE随后可能不得不预期其接收的某些分组具有cookie,而某些将不具有cookie。通过要求cookie标签TTL在施加后被初始化为0,出口PE可以在VPN标签后面跟着TTL等于0的标签栈条目的情况下检测到cookie的存在。如果不存在cookie标签,则跳过cookie验证。
将cookie标签设置为具有等于0的TTL还提供了对MPLS核心网络中的MPLS VPN流量的附加保护,这是通过避免其被基于因特网/全局表中的VPN目的地地址在IP封装中被错误地转发来实现的,这是由于cookie标签在路径中必须被暴露。一个这种误转发的示例是由于操作者的错误而在IGP链路上禁止LDP。如果MPLS路由器处于管道模式,则由于cookie TTL等于0,因此分组被丢弃。如果MPLS路由器处于统一模式,来自弹出的标签的TTL则由于cookie标签的TTL值等于0而不覆写cookie TTL,并且无论随后标签操作如何分组都被丢弃。
如果不是所有入口PE都能够在控制平面交换中解析cookie标签或在数据平面中施加cookie标签,那么出口PE或路由反射器被配置为识别入口PE并从控制平面更新中过滤掉cookie。这是通过入口和出口PE每会话能力协商来辅助的。出口PE的验证cookie标签的能力是一个本地的问题(local matter)。
MPLS cookie标签能力是可被BGP发言人用来指示其接收和施加cookie标签的能力或其在VPN标签处置之后验证cookie标签的能力的BGP能力(参见RFC 3392“Capabilities Advertisement with BGP-4”,Inter-domain Routing Working Group,R.Chandra等,2002年11月,其通过引用被整体上结合于此)。MPLS cookie标签能力字段包括能力代码、能力长度(可变的)和能力值。能力值字段包括能力标志,其中一个或多个元组<AFI,SAFI>是如图6所示那样设置的。能力标志字段包含与MPLS cookie能力相关的位标志并且如图7所示。最高有效位被定义为I位并被用于指示BGP发言人是否支持cookie标签施加。下一位被定义为D位并被用于指示BGP发言人是否支持处置后的cookie标签验证。
cookie标签可以承载在NLRI(网络层可达性信息)中,如RFC 3107(“Carring Label Information in BGP-4”,Network Working Group,Y.Rekhter等,2001年5月)所定义的,该RFC 3107通过引用被整体上结合于此。标签映射信息作为多协议扩展属性中的NLRI的一部分被承载。NLRI被编码为<长度,标签,前缀>形式的一个或多个三元组。长度字段指示地址前缀加上标签的长度(以位为单位)。标签字段承载一个或多个标签。每个标签被编码为3个字节,其中较高的20位包含标签值,较低位包含栈底。前缀字段包含地址前缀,后面跟随着足够的拖尾位以使得该字段的结尾落在字节边界上。当cookie标签被承载在NLRI中时,NLRI中相应标签的第23位被设置,并且入口BGP发言人用该位确定NLRI中是否存在cookie。
对于支持cookie标签施加的对等体和不支持cookie标签施加的对等体,优选地设置不同的对等组。当所有对等体都支持cookie施加时,不需要第二组。
图8示出本发明如何在更新期间在提供商边缘路由器PE1和PE2处提供检查。PE2首先将更新从控制平面80传递到转发平面82。除了发送标签(lbl)和转发等价类(fec)之外,还提供cookie。接下来,控制平面BGP更新被执行。PE1随后执行更新,将标签、cookie和转发等价类从控制平面84传递到转发平面86。由于cookie被包含在更新中,因此如果(vpn-lbl,cookie)对匹配它们在出口PE上的对应物,则其可被用于提高fec””等价于fec’的可能性。
下面描述不同的误转发情形并且描述这里描述的MPLS cookie标签是如何防止误转发的。
第一示例是向错误的PE转发分组。由于MPLS标签仅仅在分配它的路由器处是有意义的,因此关于到达的VPN分组的转发判决发生在分配该VPN标签的出口路由器上。IGP标签交换路径(LSP)的完整性变得很重要,这是因为入口PE依赖于该路径将VPN分组递送到出口PE。当该路径没有被正确地维护时,VPN分组可能被转发到错误的出口PE并且可能发生误转发。IGP控制和转发平面的不一致性可能导致该问题。由于每个VPN标签是利用具有随机生成的值的cookie标签来保护的,并且在两个不同PE上存在两个具有相同cookie的相同VPN标签的可能性非常小,因此误转发的可能性被大大降低。
下一示例是在没有cookie检查的情况下分组被转发到错误PE。在非分级VPN的情况下,带cookie标签的VPN分组没有在VPN标签上设置EOS位并且分组被丢弃。在分级VPN的情况下,带cookie标签的分组被转发到CE之外并且cookie被暴露。分组由于cookie的TTL值等于0而在CE路由器处被丢弃。
误转发还可能发生在带标签的VPN分组到达出口PE但标签绑定已改变的情况下。在传统系统中,处于RPR+模式中的出口PE可能快速地故障转移到其备份节点并且在入口PE注意到之前开始重新分配标签。由于本发明的cookie标签在每次标签被重用时被重新分配,因此如果cookic不匹配,VPN分组则在出口PE处被丢弃。
如果IGP或VPN标签在MPLS核心中被过早地弹出,MPLS VPN分组则可能泄漏并基于全局表中的VPN目的地IP地址被转发。本发明的cookie标签被设置以等于0的TTL并且防止了这样的泄漏。例如,如果cookie标签在处于管道模式的P路由器上被暴露出来,0 TTL则致使分组被丢弃。如果P路由器处于统一模式,cookie的0 TTL则由于来自弹出的上层标签的TTL值没有覆写它而被保留,并且随后分组被丢弃。
图9示出可被用来实现上述方法和系统的网络设备90。在一个实施例中,网络设备90是可以被实现在硬件、软件或其组合中的可编程机器。处理器92执行存储在程序存储器94中的代码。程序存储器94是计算机可读介质的一个示例。程序存储器94可以是易失性存储器。另一种形式的存储同样代码的计算机可读介质可以是某种类型的非易失性存储设备,例如软盘、CD-ROM、DVD-ROM、硬盘、闪存等等。通过网络传送代码的载波是计算机可读介质的另一示例。
网络设备90经由多个线路卡96与物理介质接口。当分组被网络设备90接收、处理和转发时,它们可被存储在分组存储器98中。分组传输操作可以部分或全部发生在线路卡96之一内。为了实现根据本发明的功能,线路卡96可以并入与上文结合网络设备整体上讨论的类似的处理和存储器资源。网络设备90实现本发明提供的所有特征。
图9所示的网络设备90仅仅是适用于本发明的计算机系统的一个示例。具有不同子系统配置的其他设备和系统也可被利用。网络内的计算机之间的通信通过使用通信协议而变为可能,所述通信协议决定计算机如何通过网络交换信息。
从以上描述显而易见,本发明提供了多个优点。该系统和方法通过利用优选地遵从标准的MPLS标签格式的MPLS cookie标签而大大降低了MPLS VPN误转发的可能性。因此,该方案相对于现有MPLS转发基础结构具有性能优点并且与MPLS负载共享机制和流量工程兼容。
这里描述的系统和方法还提供了更高的VPN安全性。例如,MPLScookie标签系统消除了执行MPLS标签抑制(hold-down)的需求。自由的VPN标签可被立即释放到标签池中,并且可以通过与新cookie关联而被重复使用。这降低了服务拒绝(DOS)攻击的可能性,因为在传统系统上使用VPN标签抑制的攻击者可能通过重复引入路由改变来从CE设备向PE发起DOS攻击。
MPLS cookie标签还通过使得VPN标签伪装(spoofing)更加困难而提高了VPN安全性,这是因为VPN标签和cookie标签两者必须匹配才能进入VPN,并且匹配cookie标签的可能性是非常小的。附加的安全特征允许MPLS cookie基于只有入口和出口PE知道的算法或密钥来周期性地滚动(rollover)。
虽然已经根据所示实施例描述了本发明,但是本领域普通技术人员将容易意识到,在不脱离本发明的范围的情况下,可以对实施例进行改变。因此,希望在以上描述中包含并在附图中示出的所有主题都被视为示例性的,而非限制性的。
权利要求
1.一种用于防止分组从MPLS网络误转发到虚拟专用网的方法,该方法包括在所述MPLS网络的入口边缘节点处接收分组;将cookie与由所述MPLS网络的出口边缘节点绑定到路由的标签相关联;在所述入口边缘节点处将所述cookie插在MPLS标签栈上;并且通过所述MPLS网络将具有所述标签栈中的cookie的分组发送到出口边缘节点;其中所述cookie允许所述出口边缘节点通过比较被发送的分组的标签栈中的cookie与在所述出口边缘节点处存储的cookie标签来检测所述被发送的分组是否被误转发。
2.如权利要求1所述的方法,其中所述插入cookie的步骤包括针对到达的VPN分组将所述cookie插在所述标签栈上VPN标签之下。
3.如权利要求1所述的方法,其中所述插入cookie的步骤包括在数据平面中插入所述cookie。
4.如权利要求1所述的方法,其中所述cookie标签是20位值。
5.如权利要求4所述的方法,其中所述cookie标签包括试验用字段、栈底字段和存活时间字段。
6.如权利要求1所述的方法,其中所述cookie标签包括存活时间字段,并且其中所述存活时间字段被初始化为0。
7.如权利要求1所述的方法,还包括选择以所述cookie的路由ID为种子的随机整数值。
8.如权利要求7所述的方法,还包括生成新cookie。
9.如权利要求7所述的方法,还包括恢复cookie标签。
10.如权利要求9所述的方法,其中所述生成新cookie标签的步骤包括使所述恢复的cookie标签加1。
11.如权利要求1所述的方法,还包括利用BGP MPLS cookie标签能力通告。
12.如权利要求1所述的方法,其中所述cookie被承载在网络层可达性信息中。
13.一种用于识别与多个虚拟专用网通信的MPLS网络中的误转发的分组的方法,所述MPLS网络包括多个提供商边缘入口和出口节点,所述方法包括在所述MPLS网络的所述提供商边缘入口节点之一处接收来自所述虚拟专用网之一的分组;将cookie与由所述MPLS网络的所述提供商边缘出口节点之一绑定到路由的标签相关联;在所述提供商边缘入口节点处,将所述cookie插在数据平面中MPLS标签栈上;通过所述MPLS网络发送具有所述标签栈中的cookie的分组;在所述多个提供商边缘出口节点之一处接收所述分组;比较插入所述分组的标签栈中的cookie与存储在接收到所述分组的提供商边缘出口节点处的cookie;以及如果所述标签栈中的cookie与存储在所述提供商边缘出口节点处的cookie匹配,则将分组转发到所述虚拟专用网之一,并且如果所述标签栈中的cookie与存储在所述提供商边缘出口节点处的cookie不匹配,则丢弃所述分组。
14.如权利要求13所述的方法,还包括将所述cookie标签与控制平面中的转发等价类标签一起分发到所述提供商边缘出口节点。
15.如权利要求13所述的方法,其中所述插入cookie的步骤包括针对到达的VPN分组将所述cookie插在所述标签栈上VPN标签之下。
16.如权利要求13所述的方法,其中所述插入cookie的步骤包括在所述数据平面中插入所述cookie。
17.如权利要求13所述的方法,其中所述cookie标签的格式对应于所述分组中的其他MPLS标签栈条目的格式。
18.如权利要求13所述的方法,其中所述cookie标签包括存活时间字段,并且其中所述存活时间字段被初始化为0。
19.一种用于防止分组从MPLS网络误转发到虚拟专用网的计算机程序产品,该产品包括在所述MPLS网络的入口边缘节点处接收分组的代码;将cookie与由所述MPLS网络的出口边缘节点绑定到路由的标签相关联的代码;在所述入口边缘节点处将所述cookie插在MPLS标签栈上的代码;通过所述MPLS网络将具有所述标签栈中的cookie的分组发送到出口边缘节点的代码;以及用于存储所述代码的计算机可读存储介质;其中所述cookie允许出口边缘节点通过比较被发送的分组的标签栈中的cookie与在所述出口边缘节点处存储的cookie标签来检测所述被发送的分组是否被误转发。
20.如权利要求19所述的计算机程序产品,还包括针对到达的VPN分组将所述cookie插在所述标签栈上VPN标签之下。
21.如权利要求19所述的计算机程序产品,还包括在数据平面中插入所述cookie的代码。
22.一种用于识别与多个虚拟专用网通信的MPLS网络中的误转发的分组的系统,所述MPLS网络包括多个提供商边缘入口和出口节点,所述系统包括用于在所述MPLS网络的所述提供商边缘入口节点之一处接收分组的装置;用于将cookie与由所述MPLS网络的所述提供商边缘出口节点之一绑定到路由的标签相关联的装置;用于在所述提供商边缘入口节点处,将所述cookie插在数据平面中MPLS标签栈上的装置;用于通过所述MPLS网络发送具有所述标签栈中的cookie的分组的装置;用于在所述多个提供商边缘出口节点之一处接收所述分组的装置;用于比较插入所述分组的标签栈中的cookie与存储在接收到所述分组的提供商边缘出口节点处的cookie的装置;以及用于在所述标签栈中的cookie与存储在所述提供商边缘出口节点处的cookie匹配的情况下,将分组转发到所述虚拟专用网之一,并且在所述标签栈中的cookie与存储在所述提供商边缘出口节点处的cookie不匹配的情况下,丢弃所述分组的装置。
23.如权利要求22所述的系统,其中所述MPLS网络中的提供商边缘节点是仅有的被配置用于插入或比较MPLS cookie标签的节点。
24.如权利要求22所述的系统,其中所述绑定到路由的标签是VPN标签。
25.如权利要求22所述的系统,其中所述绑定到路由的标签是FEC标签。
26.一种用于检查通过MPLS网络发送的想去往虚拟专用网的误转发的分组的系统,该系统包括在所述MPLS网络的出口节点上的处理器,该处理器被配置用于接收与绑定到VPN-IP路由的VPN标签相关联的cookie,将该cookie与位于在所述出口节点处接收的分组的标签栈内的cookie标签相比较以确定所述分组是否是被误转发的,并且如果所述cookie和所述cookie标签匹配,则将所述分组转发到所述虚拟专用网,并且如果所述cookie和所述cookie标签不匹配,则丢弃所述分组,并且所述系统还包括用于存储所述cookie的系统存储器。
全文摘要
一种用于防止分组从MPLS网络误转发到虚拟专用网的方法和系统被公开。该方法包括在MPLS网络的入口边缘节点处接收分组;将cookie与由MPLS网络的出口边缘节点绑定到路由的标签相关联(50);以及在入口边缘节点处将cookie插在MPLS标签栈上(54)。所述分组通过MPLS网络被发送到出口边缘节点(56)。cookie允许出口边缘节点通过比较发送的分组的标签栈中的cookie与存储在出口边缘节点处的cookie标签来检测发送的分组是否是被误转发的(60)。
文档编号H04L12/56GK101040488SQ200580034501
公开日2007年9月19日 申请日期2005年12月16日 优先权日2005年1月28日
发明者西奥多·钱, 艾瑞克·罗森 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1