解封装表项硬件表项资源的释放方法、装置、设备及系统的制作方法

文档序号:7606953阅读:115来源:国知局
专利名称:解封装表项硬件表项资源的释放方法、装置、设备及系统的制作方法
技术领域
本发明涉及组播虚拟专用网(Virtual Private Network, VPN)技术领域,尤其涉 及一种解封装表项硬件表项资源的释放方法、装置、设备及系统。
背景技术
虚拟专用网(Virtual Private Network, VPN)是指在公用网络为用户提供专用通 信链路,这些专用通信链路无需架设专用的物理链路来实现,因此称之为虚拟专用网。VPN由运营商边缘设备(Provider Edge, ΡΕ)、运营商核心路由器(Provider,P)、 用户边缘设备(Customer Edge, CE)组成。PE与CE相连,它将CE上到达的用户网络数据 放到公网上传播(处于这个位置的PE称为入口 PE);并且它也从公网中把携带用户网络数 据的报文再通过CE传播到用户网络中(处于这个位置的PE称为出口 PE)。P设备与PE或 者P连接,它负责传播公网的数据。CE设备与PE连接,它是用户网络接入到公网的网络接 口。一台PE可以与多台CE相连,因此PE可以为多个VPN传播数据。而PE上必须严格区 分各个VPN内的数据,使其互相隔离,不能让数据从一个VPN进入到不能与此VPN通信的其 它VPN中,从而保证用户网络的通信安全。针对组播技术和VPN技术结合的组播VPN技术,现有技术提供了多种实现方案, 其中比较流行的是组播域(MulticasLDomain,MD)方案,它是通过在服务提供商网络中 为每个VPN维护一个组播域来实现的。每个组播域都有一个默认组播分发树(Default Multicast Distribution Tree,Default-MDT)用来连接域中的所有 ΡΕ。通过这个 Default-MDT,用户网络可以把组播域看作一个局域网(LAN),也就是说CE的组播数据传播 到入口 PE之后,这个数据将会从公网上被传播到该组播域中的所有出口 PE上,而这个组播 数据在公网上是以组播的方式在Default-MDT上传播的。出口 PE将根据所连接的VPN站点 内是否有组播接收者而决定是否要转发这些组播数据,如果站点内没有接收者,则只要把 组播数据丢弃即可。如图1所示,连接组播源的入口 PE为PE1,出口 PE为PE2和PE3,即使 PE3站点内没有组播数据的接收者,但PEl的组播数据还会通过Default-MDT传播到PE3, 造成PEl与PE3之间链路带宽资源浪费,这是Default-MDT技术的一种缺陷。数据组播分发树(Data-MDT)正是为了解决Default-MDT这种缺陷而引入的一种 技术,它可以实现只将组播流转发到对组播流有需求的出口 PE上。当入口 PE私网组播数据 流符合切换到Data-MDT转发时,创建一个Data-MDT封装表项,之后通过Default-MDT发送 一个MDT-Join报文,该MDT-Join报文携带了用户组播流的源地址(C-S)、用户组播流的组 地址(C-G)、公网传播时的组地址(P-G)等信息。出口 PE收到MDT-Join报文之后,只有对 该组播流有需求时才会加入到Data-MDT中,如图1所示的网络环境,如果PE2有需求接收 者,只有PE2才会根据MDT-join消息建立Data-MDT过程,这样组播流只会沿着Data-MDT到 达出口 PE2上,从而节省了对组播流无需求的出口 PE3的资源,也节省了公网网络的带宽。Data-MDT具体实现过程如下如图1所示的网络环境,入口 PEl收到私网的用户组播数据流,且数据流的流量符合切换条件时,入口 PEl为该用户组播数据流(此用户组播数据报文的源地址和目的地址 分别为C-S、C-G)申请一个Data-MDT地址(P-G),并创建Data-MDT封装表项(组播VPN方 案中,记录私网的用户组播报文的源地址、目的地址和封装后的公网组播流报文的源地址、 目的地址的对应关系的表项称为封装表项,反之,记录公网组播流报文的源地址、目的地址 和私网的用户组播报文的源地址、目的地址对应关系的表项称为解封装表项),Data-MDT 封装表项创建成功后,生成MDT-join报文(携带C-S、C-G、P-G)通过Default-MDT发送,同 时启动Data-MDT切换定时器,切换定时器超时时,Data-MDT封装表项生效,用户组播数据 流从Default-MDT切换到Data-MDT转发。当出口 PE2收到MDT-join报文,首先判断是否存在Data-MDT解封装表项的硬件 表项资源(为了提高数据转发的效率,一般PE设备会为每个封装或解封装表项都建立一个 硬件表项资源,用于快速查找封装或解封装表项,进行报文的封装或解封装),如果不存在, 则创建Data-MDT解封装表项,在Data-MDT解封装表项创建成功后,向入口 PEl发送组播组 加入消息,建立基于入口 PEl的最短路径树(Shortest Path Tree, SPT),出口 PE2的组播数 据接收者通过Data-MDT转发表项接收到用户组播数据流。同时出口 PE2接收到MDT-join 消息时,会启动MDT-join超时老化定时器。按照现有技术方案,如果在MDT-join超时老化定时器超时之前,如果入口 PEl的 Data-MDT地址发生变化例如Data-MDT地址删除或VPN配置删除等操作会导致Data-MDT封 装表项被立即删除,而出口 PE2的Data-MDT解封表项的硬件表项资源不能立刻得到释放, 只能等待MDT-Join老化定时器超时(通常为3个MDT-Join报文发送时间间隔)才能被释 放。这样,出口 PE2解封装表项的硬件表项资源的释放受到了限制,在等待MDT-Join 老化定时器超时这段时间内,当入口 PEl的Data-MDT地址发生变化时,PEl会根据新 Data-MDT地址(假设P-G1为新Data-MDT地址)为用户组播报文创建新的Data-MDT封装 表项,而此时出口 PE2与旧的Data-MDT封装表项对应的Data-MDT解封装表项硬件表项资 源没有释放,造成无效的解封装表项占用硬件表项资源。当解封装表项的硬件表项资源被 耗光时,不能再为新Data-MDT地址申请解封装表项硬件表项资源,这将导致Data-MDT的 SPT无法建立,而入口 PEl用户组播报文已从Default-MDT切换到Data-MDT转发,用户组播 数据流产生断流。

发明内容
本发明实施例提供了一种的方法,用以解决现有VPN组播技术中在入口 PE的 Data-MDT地址发生变化导致Data-MDT封装表项删除时,出口 PE的Data-MDT解封表项的硬 件表项资源不能及时得到释放,导致用户组播数据流产生断流的问题。本发明实施例提供的解封装表项硬件表项资源的释放方法之一,包括组播数据流的入口运营商边缘设备PE在数据组播分发树Data-MDT的封装表项建 立成功后,判断自身Data-MDT的封装表项是否被删除;在判断结果为是时,向所述组播数据流的各出口 PE发送释放解封装表项硬件表 项资源的通知消息。本发明实施例提供的解封装表项硬件表项资源的释放方法之二,包括
5
组播数据流的出口运营商边缘设备PE确定接收到组播数据流的入口 PE发送的释 放解封装表项硬件表项资源的通知消息;所述出口 PE判断是否存在所述通知消息所指示的解封装表项;在判断结果为是时,删除该解封装表项,释放该通知消息指示的解封装表项硬件 表项资源。本发明实施例提供的解封装表项硬件表项资源的释放装置之一,包括判断模块,用于在数据组播分发树Data-MDT的封装表项建立成功后,判断所属入 口运营商边缘设备PE的Data-MDT的封装表项是否被删除;通知模块,用于在所述判断模块判断结果为是时,向所述组播数据流的各出口 PE 发送释放解封装表项硬件表项资源的通知消息。本发明实施例提供的解封装表项硬件表项资源的释放装置之二,包括接收模块,用于确定是否接收到所述组播数据流的入口运营商边缘设备PE发送 的释放解封装表项硬件表项资源的通知消息;判断模块,用于在接收模块确定收到所述通知消息时,判断所属出口 PE是否存在 所述通知消息所指示的解封装表项;释放模块,用于在所述判断模块的判断结果为是时,删除该解封装表项,释放该通 知消息指示的解封装表项硬件表项资源。本发明实施例提供的运营商边缘设备,包括本发明实施例提供的上述解封装表项 硬件表项资源的释放装置之一以及之二。本发明实施例提供的组播分发系统,包括至少一个入口运营商边缘设备PE和至 少一个出口运营商边缘设备PE,其中所述入口 PE,用于在数据组播分发树Data-MDT的封装表项建立成功后,判断自身 Data-MDT的封装表项是否被删除;在判断结果为是时,向所述组播数据流的各出口 PE发送 释放解封装表项硬件表项资源的通知消息;所述出口 PE,用于确定接收到所述组播数据流的入口 PE发送的释放解封装表项 硬件表项资源的通知消息;判断是否存在所述通知消息所指示的解封装表项;在判断结果 为是时,删除该解封装表项,释放该通知消息指示的解封装表项硬件表项资源。本发明实施例的有益效果包括本发明实施例提供的解封装表项硬件表项资源的释放方法、装置、设备及系统,组 播数据流的入口 PE在判断自身Data-MDT的封装表项被删除时,立即向组播数据流的各出 口 PE发送释放解封装表项硬件表项资源的通知消息,出口 PE在接收到通知消息后,按照该 通知消息的指示,及时地释放该通知消息指定的已为无效解封装表项的硬件表项资源,避 免现有技术中,即使解封装表项已成为无效表项,出口 PE仍然需要等待MDT-join老化定时 器超时才释放该解封装表项的硬件表项资源,硬件表项资源释放不及时导致Data-MDT的 SPT无法建立以及用户组播数据流出现断流的问题。


图1为现有技术中组播虚拟专用网的网络示意图;图2为本发明实施例提供的解封装表项硬件表项资源的释放方法的流程图之一;
图3为本发明实施例提供的MDT-join报文的格式的示意图;图4为本发明实施例提供的解封装表项硬件表项资源的释放方法的流程图之二 ;图5为本发明实施例提供解封装表项硬件表项资源的释放装置的结构示意图之 图6为本发明实施例提供解封装表项硬件表项资源的释放装置的结构示意图之
具体实施例方式下面结合附图,对本发明实施例提供的解封装表项硬件表项资源的释放方法、装 置、设备及系统的具体实施方式
进行详细地说明。本发明实施例提供的解封装表项硬件表项资源的释放方法,对于组播源的PE即 入口 PE来说,其执行的操作如图2所示,包括S201、组播数据流的入口 PE在数据组播分发树Data-MDT的封装表项建立成功后, 判断自身Data-MDT的封装表项是否被删除;在判断结果为是时,执行下述步骤S202,在判 断结果为否时,执行下述步骤S203 ;S202、该入口 PE向组播数据流的各出口 PE发送释放解封装表项硬件表项资源的 通知消息。S203、按照现有技术的方法,向各出口 PE发送请求建立Data-MDT解封装表项硬件 表项资源的消息。在上述步骤S201中,可以通过判断是否出现Data-MDT地址删除或VPN配置删除 等情况,可以判断Data-MDT的封装表项是否被删除。为了实现在入口 PE删除了 Data-MDT的封装表项之后,出口 PE的Data-MDT解封装 表项硬件表项资源能够及时得到释放,本发明实施例对现有的MDT-join报文进行了改进, 具体来说,在上述步骤S202和S203中,释放解封装表项硬件表项资源的通知消息和请求建 立Data-MDT解封装表项硬件表项资源的消息,都可使用改进后的MDT-join报文来实现,只 需在MDT-join报文中设置特定的值来区分两者。
具体来说,本发明实施例提供的MDT-join报文的格式如图3所示,该MDT-join报 文种除了携带C-S、C-G和P-G等字段外,还包括保留(Reserve)字段。对于释放解封装表项硬件表项资源的通知消息,可以通过设置MDT-join报文 中的Reserve字段为一个特定的值例如为1(当然也可以设置为其他的值)来标识该 MDT-join报文是用来通知出口 PE释放对应的解封装表项硬件表项资源。对于请求建立Data-MDT解封装表项硬件表项资源的消息,可以通过设置 MDT-join报文中的Reserve字段为另外一个特定的值例如为0来标识该MDT-join报文是 用来通知出口 PE建立对应的解封装表项硬件表项资源。由于本发明实施例提供的解封装表项硬件表项资源的释放方法所适用的场景,还 未切换至Data-DMT,上述两种MDT-join报文可通过Default-MDT发送给出口 PE。对于Reserve字段为0的MDT-join报文,会按照现有技术中MDT-jion的发送方 式,即按照设定的发送时间间隔(例如1分钟)向出口 PE发送,通知其建立与封装表项对 应的解封装表项;
对于Reserve字段为1的MDT-join报文,则一旦入口 PE判断自身Data-MDT的封 装表项被删除,则会触发发送该报文的操作,可以仅发送一次也可多次发送。本发明实施例提供的解封装表项硬件表项资源的释放方法,对于组播接收PE即 出口 PE来说,其执行的操作如图4所示,包括S401、组播数据流的出口 PE确定接收到所述组播数据流的入口 PE发送的释放解 封装表项硬件表项资源的通知消息;S402、该出口 PE判断是否存在通知消息所指示的解封装表项;若存在,执行步骤 S403 ;若不存在,执行步骤S404 ;S403、删除该解封装表项,释放该通知消息指示的解封装表项硬件表项资源;S404、丢弃该通知消息。上述步骤401中,出口 PE可以通过判断是否接收到了 MDT-join消息,且MDT-join 消息中保留Reserve字段为预定的值,在判断结果为是时,确定接收到了释放解封装表项 硬件表项资源的通知消息。具体来说,出口 PE在接收到MDT-join消息之后,读取该MDT-join消息中的 Reserve字段的值,如果Reserve字段为设定的值例如为1,那么确认该MDT-join消息为指 示释放解封装表项硬件表项资源的通知消息,反之,如果Reserve字段为设定的值例如为 0,则该MDT-join消息为请求建立Data-MDT解封装表项硬件表项资源的消息。如果出口 PE判断接收到的MDT-join消息为请求建立Data-MDT解封装表项硬件 表项资源的消息,则按照现有技术的方法,判断是否存在对应的解封装表项的硬件表项资 源,如果不存在,那么创建解封装表项的硬件表项资源,同时启动MDT-jion老化定时器,如 果已经存在(即非首次收到该MDT-jion消息)那么刷新MDT-join老化定时器,具体实施 方法在此不再详述。在上述步骤S403中,在释放了通知消息指示的解封装表项硬件表项资源的同 时,出口 PE还可以通过协议独立组播-指定信源组播(PIM-SSM,ProtocolIncbpendent Multicast Source-SpecificMulticast)协议,向入口 PE发起所属组播域的剪枝消息,指 示删除该组播数据流的组播源至接收者之间的最短路径树SPT。基于同一发明构思,本发明实施例还提供了解封装表项硬件表项资源的释放装 置、运营商边缘设备和组播分发系统,由于该装置、设备及系统解决问题的原理与前述一种 解封装表项硬件表项资源的释放方法相似,因此这些装置、设备及系统的实施可以参见前 述方法的实施,重复之处不再赘述。本发明实施例提供的解封装表项硬件表项资源的释放装置之一,如图5所示,包 括判断模块501,用于在数据组播分发树Data-MDT的封装表项建立成功后,判断所 属入口 PE的Data-MDT的封装表项是否被删除;通知模块502,用于在所述判断模块501判断结果为是时,向所述组播数据流的各 出口 PE发送释放解封装表项硬件表项资源的通知消息。进一步地,本发明实施例提供的解封装表项硬件表项资源的释放装置中的通知模 块502,具体用于向所述组播数据流各出口 PE发送携带有指示释放解封装表项硬件表项资 源的字段的组播分发树加入MDT-join消息;所述指示释放解封装表项硬件表项资源的字段通过设置所述MDT-join消息中保留Reserve字段为预定的值实现。本发明实施例提供的解封装表项硬件表项资源的释放装置之二,如图6所示,包 括接收模块601,用于确定是否接收到所述组播数据流的入口 PE发送的释放解封装 表项硬件表项资源的通知消息;判断模块602,用于在接收模块601确定收到所述通知消息时,判断所属出口 PE是 否存在所述通知消息所指示的解封装表项;释放模块603,用于在所述判断模块602的判断结果为是时,删除该解封装表项, 释放该通知消息指示的解封装表项硬件表项资源。进一步地,本发明实施例提供的解封装表项硬件表项资源的释放装置之二中的接 收模块601,具体用于判断是否接收到了组播分发树加入MDT-join消息,且MDT-join消息 中保留Reserve字段为预定的值;若是,则确定接收到所述释放解封装表项硬件表项资源 的通知消息。进一步地,本发明实施例提供的解封装表项硬件表项资源的释放装置,还包括发 送模块604,用于在判断存在所述通知消息所指示的解封装表项时,向入口 PE发起所属组 播域的剪枝消息,指示删除所述组播数据流组播源至接收者之间的最短路径树SPT。本发明实施例提供的上述两种解封装表项硬件表项资源的释放装置,在具体实施 时,可以采用软件方式实现,也可采用软件和硬件结合的方式实现,可以通过两个独立的网 络实体实现,也可以集成于同一个网络实体中。本发明实施例对此不做限定。本发明实施例提供还了 一种运营商边缘设备,该运营商边缘设备PE可以同时包 括本发明实施例提供的上述两种解封装表项硬件表项资源的释放装置,在该运营商边缘设 备中,上述两种解封装表项硬件表项资源的释放装置可以通过软件、硬件或者软硬件结合 的方式实现,例如使用专用集成电路或其他硬件等同物来实现,或者采用软件的方式存储 于存储器中并由处理器执行,以实现上述各种功能。较佳地,在该运营商边缘设备中,这两 种解封装表项硬件表项资源的释放装置,与存储有解封装表项硬件(存储器)相连接,用于 向其快速地下发删除解封装表项、释放解封装表项硬件表项资源的指令。本发明实施例提供的组播分发系统,包括至少一个入口运营商边缘设备PE和至 少一个出口运营商边缘设备PE,其中入口 PE,用于在数据组播分发树Data-MDT的封装表项建立成功后,判断自身 Data-MDT的封装表项是否被删除;在判断结果为是时,向所述组播数据流的各出口 PE发送 释放解封装表项硬件表项资源的通知消息;出口 PE,用于确定接收到所述组播数据流的入口 PE发送的释放解封装表项硬件 表项资源的通知消息;判断是否存在所述通知消息所指示的解封装表项;在判断结果为是 时,删除该解封装表项,释放该通知消息指示的解封装表项硬件表项资源。本发明实施例提供的解封装表项硬件表项资源的释放方法、装置、设备及系统,组 播数据流的入口 PE在判断自身Data-MDT的封装表项被删除时,立即向组播数据流的各出 口 PE发送释放解封装表项硬件表项资源的通知消息,出口 PE在接收到通知消息后,按照该 通知消息的指示,及时地释放该通知消息指定的已为无效解封装表项的硬件表项资源,避 免现有技术中,即使解封装表项已成为无效表项,出口 PE仍然需要等待MDT-join老化定时器超时才释放该解封装表项的硬件表项资源,硬件表项资源释放不及时导致Data-MDT的 SPT无法建立用户组播数据流出现断流的问题。 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精 神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围 之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种解封装表项硬件表项资源的释放方法,其特征在于,包括组播数据流的入口运营商边缘设备PE在数据组播分发树Data-MDT的封装表项建立成 功后,判断自身Data-MDT的封装表项是否被删除;在判断结果为是时,向所述组播数据流的各出口 PE发送释放解封装表项硬件表项资 源的通知消息。
2.如权利要求1所述的方法,其特征在于,向所述组播数据流的各出口PE发送释放解 封装表项硬件表项资源的通知消息,具体包括向所述组播数据流各出口 PE发送携带有指示释放解封装表项硬件表项资源的字段的 组播分发树加入MDT-join消息。
3.如权利要求2所述的方法,其特征在于,通过设置所述MDT-join消息中保留 Reserve字段为预定的值来指示释放解封装表项硬件表项资源。
4.一种解封装表项硬件表项资源的释放方法,其特征在于,包括组播数据流的出口运营商边缘设备PE确定接收到组播数据流的入口 PE发送的释放解 封装表项硬件表项资源的通知消息;所述出口 PE判断是否存在所述通知消息所指示的解封装表项;在判断结果为是时,删除该解封装表项,释放该通知消息指示的解封装表项硬件表项 资源。
5.如权利要求4所述的方法,其特征在于,出口PE确定接收到所述释放解封装表项硬 件表项资源的通知消息,通过下述方式实现出口 PE判断是否接收到了组播分发树加入MDT-join消息,且接收到的MDT-join消息 的保留Reserve字段为预定的值;若是,则确定接收到了所述释放解封装表项硬件表项资源的通知消息。
6.如权利要求4或5所述的方法,其特征在于,出口PE在判断存在所述通知消息所指 示的解封装表项时,还包括所述出口 PE向所述入口 PE发起所属组播域的剪枝消息,指示删除所述组播数据流的 组播源至接收者之间的最短路径树SPT。
7.一种解封装表项硬件表项资源的释放装置,其特征在于,包括判断模块,用于在数据组播分发树Data-MDT的封装表项建立成功后,判断所属入口运 营商边缘设备PE的Data-MDT的封装表项是否被删除;通知模块,用于在所述判断模块判断结果为是时,向所述组播数据流的各出口 PE发送 释放解封装表项硬件表项资源的通知消息。
8.如权利要求7所述的装置,其特征在于,所述通知模块,具体用于向所述组播数 据流各出口 PE发送携带有指示释放解封装表项硬件表项资源的字段的组播分发树加入 MDT-join消息;所述指示释放解封装表项硬件表项资源的字段通过设置所述MDT-join消 息中保留Reserve字段为预定的值实现。
9.一种解封装表项硬件表项资源的释放装置,其特征在于,包括接收模块,用于确定是否接收到所述组播数据流的入口运营商边缘设备PE发送的释 放解封装表项硬件表项资源的通知消息;判断模块,用于在接收模块确定收到所述通知消息时,判断所属出口 PE是否存在所述通知消息所指示的解封装表项;释放模块,用于在所述判断模块的判断结果为是时,删除该解封装表项,释放该通知消 息指示的解封装表项硬件表项资源。
10.如权利要求9所述的装置,其特征在于,所述接收模块,具体用于判断是否接收到 了组播分发树加入MDT-join消息,且所述MDT-join消息中保留Reserve字段为预定的值; 若是,则确定接收到所述释放解封装表项硬件表项资源的通知消息。
11.如权利要求9或10所述的装置,其特征在于,还包括发送模块,用于在判断存在 所述通知消息所指示的解封装表项时,向所述入口 PE发起所属组播域的剪枝消息,指示删 除所述组播数据流组播源至接收者之间的最短路径树SPT。
12.一种运营商边缘设备,其特征在于,包括如权利要求7或8所述的解封装表项硬件 表项资源的释放装置以及如权利要求9-11任一项所述的解封装表项硬件表项资源的释放直ο
13.一种组播分发系统,包括至少一个入口运营商边缘设备PE和至少一个出口 PE,其 特征在于,所述入口 PE,用于在数据组播分发树Data-MDT的封装表项建立成功后,判断自 身Data-MDT的封装表项是否被删除;在判断结果为是时,向所述组播数据流的各出口 PE发 送释放解封装表项硬件表项资源的通知消息;所述出口 PE,用于确定接收到所述组播数据流的入口 PE发送的释放解封装表项硬件 表项资源的通知消息;判断是否存在所述通知消息所指示的解封装表项;在判断结果为是 时,删除该解封装表项,释放该通知消息指示的解封装表项硬件表项资源。
全文摘要
本发明公开了一种解封装表项硬件表项资源的释放方法、装置、设备及系统,组播数据流的入口PE在判断自身Data-MDT的封装表项被删除时,立即向组播数据流的各出口PE发送释放解封装表项硬件表项资源的通知消息,出口PE在接收到通知消息后,按照该通知消息的指示,及时地释放通知消息指定的已为无效解封装表项的硬件表项资源,避免现有技术中即使解封装表项已成为无效表项,出口PE仍然需要等待MDT-join老化定时器超时才释放该解封装表项的硬件表项资源,硬件表项资源释放不及时导致Data-MDT的SPT无法建立,用户组播数据流出现断流的问题。
文档编号H04L12/56GK102123096SQ20111006012
公开日2011年7月13日 申请日期2011年3月11日 优先权日2011年3月11日
发明者吴世奇 申请人:北京星网锐捷网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1