分布式网络中流量工程隧道的拆除方法及节点设备的制作方法

文档序号:7889689阅读:255来源:国知局
专利名称:分布式网络中流量工程隧道的拆除方法及节点设备的制作方法
技术领域
本发明涉及数通MPLS (Multi Protocal Label Switch,多协议标签交换)网络通讯领域,尤其涉及MPLS流量工程隧道的拆除方法及节点设备。
背景技术
在数据通信的IP (Internet Protocol,网际协议)/MPLS 网络中,TE (Traffic Engineering,流量工程)创建米用 RSVP-TE (Resource Reservation Protocol-TE,基于流量工程的资源预留协议)协议来创建隧道。如图I所示,当用户部署一条从Rl到R3的隧道时,首节点Rl会记录隧道经过的路径集合{Rl- > R2- > R3},首节点Rl向下游发送Path (路径)消息将会沿着这条路径传递到隧道的尾节点R3。尾节点收到Path消息后沿着逆向路径{R3- > R2- > R1}将Resv (预留)消息发送回首节点R1,由此完成一条隧道的建立。Path消息和Resv消息周期性的收发保证了隧道状态的稳定有效。如图2所示,当首节点需要显式拆除一条隧道时,Rl也会沿着路径{Rl- > R2- > R3}发送PathTear (路径拆除)消息,R2及R3节点在接收到PathTear消息后将本地的隧道资源拆除。由于RSVP-TE协议的Path、Resv及PathTear消息基于IP传输,不能提供有效地可靠性保证,因此会出现Rl节点因需要拆除隧道而向R2、R3节点发送PathTear消息,但 PathTear消息在网络中传输被丢弃或者因延时而暂时无法到达R2节点。R2因此无法删除本地的隧道资源,如图3所示。传统的方式是隧道首节点先向下游发送PathTear消息后立即删除隧道首节点的本地资源。这种情况下带来的问题是,当PathTear消息意外丢失后,隧道的首节点由于不再保留资源因此无法再次发送PathTear消息进行重试,下游的待删除的隧道资源会一直残留到老化周期到来。节点中的残留资源不仅给节点带来一定的存储负担,同时也会由于残留资源不能及时释放导致新的隧道在本节点无法获取到足够的资源。现有技术中提供一种可靠删除机制,方法是当首节点发送PathTear消息后不立即释放本地的隧道资源,而是通过扩展协议增加下游节点的删除消息应答。首节点保留待删除的隧道资源直至收到下游节点的删除应答消息,否则会周期性发送PathTear消息。这种方式固然可以提供一种可靠地删除机制,但在当大量隧道反复删除-重建-再删除-再重建这种震荡场景中,由于需要将待删除的隧道资源暂时缓存,有可能会出现隧道下游节点处理资源删除能力慢或网络时延而导致隧道首节点不得不大量缓存待删除信息直至内存耗尽的现象。

发明内容
本发明要解决的技术问题是提供一种分布式网络中流量工程隧道的拆除方法及节点,以使隧道各节点更可靠地删除隧道在本节点所表示的资源。
为了解决上述技术问题,本发明提供了一种分布式网络中流量工程隧道的拆除方法,包括首节点拆除第一隧道的资源后,触发第二隧道传输的消息携带用于指示拆除第一隧道的信息,其中,第二隧道经过的节点至少包括第一隧道的下一跳节点。进一步地,上述方法还具有下面特点首节点在创建隧道时,按次序对所创建的隧道分别分配唯一的序列号,第二隧道是首节点中现存的经过的节点至少包括第一隧道所经过的节点的所有隧道中,序列号与第一隧道的序列号最接近的隧道。进一步地,上述方法还具有下面特点所述用于指示拆除第一隧道的信息包括拆除指令和一开区间数据,所述开区间数据是以第一隧道的序列号前后各一个现存的隧道的序列号来表示的。进一步地,上述方法还具有下面特点若第一隧道的序列号的前面或后面没有现存的隧道的序列号,则用O表示。进一步地,上述方法还具有下面特点所述用于指示拆除第一隧道的信息包括拆除指令和第一隧道的序列号。进一步地,上述方法还具有下面特点第二隧道经过的节点至少包括第一隧道经过的所有节点。为了解决上述问题,本发明还提供了一种分布式网络中流量工程隧道的拆除方法,包括接收隧道上传输的消息;若所述消息携带用于指示拆除隧道的信息,则删除所述信息指定的隧道的资源。进一步地,上述方法还具有下面特点所述用于指示拆除隧道的信息包括拆除指令和一开区间数据;所述根据所述信息删除指定隧道的资源的步骤包括查找本节点上现存的序列号在所述开区间数据范围内的隧道;根据所述拆除指令将查找的隧道的资源删除。进一步地,上述方法还具有下面特点所述用于指示拆除隧道的信息包括拆除指令和序列号;所述根据所述信息删除指定隧道的资源的步骤包括在本节点上查找所述序列号对应的隧道;根据所述拆除指令将查找到的隧道的资源删除。为了解决上述问题,本发明还提供了一种节点设备,包括用于作为流量工程隧道首节点的第一模块,第一模块包括拆除单元,用于拆除第一隧道的资源;触发单元,用于在拆除单元拆除所述资源后,触发第二隧道传输的消息携带标识拆除第一隧道的信息,其中,第二隧道经过的节点至少包括第一隧道的下一跳节点。进一步地,上述节点设备还具有下面特点第一模块还包括创建单元,用于在创建隧道时,按次序对所创建的隧道分别分配唯一的序列号,将分配的序列号通过该隧道的消息传递给下游节点;
第二隧道是首节点中现存的经过的节点至少包括第一隧道所经过的节点的所有 隧道中,序列号与第一隧道的序列号最接近的隧道,第二隧道经过的节点至少包括第一隧 道经过的所有节点。进一步地,上述节点设备还具有下面特点所述用于指示拆除第一隧道的信息包 括拆除指令和一开区间数据,所述开区间数据是以第一隧道的序列号前后各一个现 存的隧道的序列号来表示的。进一步地,上述节点设备还具有下面特点所述节点设备还包括用于作为流量工 程隧道的非首节点的第二模块,第二模块包括接收单元,用于接收隧道上传输的消息;拆除单元,若判断所述消息携带用于指示拆除隧道的信息,则删除所述信息指定 的隧道的资源。进一步地,上述节点设备还具有下面特点所述用于指示拆除隧道的信息包括拆除指令和一开区间数据;所述拆除单元,具体用于查找本节点上现存的序列号在所述开区间数据范围内的 隧道;根据所述拆除指令将查找的隧道的资源删除。进一步地,上述节点设备还具有下面特点所述用于指示拆除隧道的信息包括拆除指令和序列号;所述拆除单元,具体用于在本节点上查找所述序列号对应的隧道;根据所述拆除 指令将查找到的隧道的资源删除。进一步地,上述节点设备还具有下面特点第二模块还包括管理单元,在所述消息携带隧道对应的序列号的情况下,建立该序列号与该隧道 的对应关系。综上,本发明提供一种分布式网络中流量工程隧道的拆除方法及节点设备,可以 使隧道各个节点更加可靠地同步删除资源,作为PathTear消息删除机制的一个有效地补 充。


图1为现有技术中通过Path和resv消息进行隧道创建的示意图;图2为现有技术中隧道通过PathTear消息进行隧道拆除的示意图;图3为现有技术中PathTear丢失或丢弃造成隧道下游节点存留未释放的残余资 源的不意图;图4为本发明实施例的节点设备的示意图;图5为本发明一实施例的一种分布式网络中流量工程隧道的拆除方法的流程图;图6为本发明另一实施例的一种分布式网络中流量工程隧道的拆除方法的流程 图;图7为本发明应用示例的分布式网络中流量工程隧道的拆除方法的流程图;图8为本发明应用示例的首节点通过序列号管理本地隧道的示意图;图9为本发明应用示例的首节点删除本地隧道后创建删除区间的示。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。图4为本发明实施例的节点设备的示意图,如图4所示,本实施例的节点设备包括用于作为流量工程隧道首节点的第一模块,第一模块包括拆除单元,用于拆除第一隧道的资源;触发单元,用于在拆除单元拆除所述资源后,触发第二隧道传输的消息携带标识拆除第一隧道的信息,其中,第二隧道经过的节点至少包括第一隧道的下一跳节点。其中,第一模块还包括创建单元,用于在创建隧道时,按次序对所创建的隧道分别分配唯一的序列号,将分配的序列号通过该隧道的消息传递给下游节点;其中,第二隧道是首节点中现存的经过的节点至少包括第一隧道所经过的节点的所有隧道中,序列号与第一隧道的序列号最接近的隧道,其中,第二隧道经过的节点至少包括第一隧道经过的所有节点。其中,所述用于指示拆除第一隧道的信息包括拆除指令和一开区间数据,所述开区间数据是以第一隧道的序列号前后各一个现存的隧道的序列号来表示的。其中,本实施例的节点设备还可以包括于作为流量工程隧道的非首节点的第二模块,第二模块包括接收单元,用于接收隧道上传输的消息;拆除单元,若判断所述消息携带用于指示拆除隧道的信息,则删除所述信息指定的隧道的资源。其中,所述用于指示拆除隧道的信息包括拆除指令和一开区间数据;所述拆除单元,具体用于查找本节点上现存的序列号在所述开区间数据范围内的隧道;根据所述拆除指令将查找的隧道的资源删除。其中,所述用于指示拆除隧道的信息包括拆除指令和序列号;所述拆除单元,具体用于在本节点上查找所述序列号对应的隧道;根据所述拆除指令将查找到的隧道的资源删除。其中,第二模块还可以包括管理单元,在所述消息携带隧道对应的序列号的情况下,建立该序列号与该隧道的对应关系。图5为本发明一实施例的一种分布式网络中流量工程隧道的拆除方法的流程图, 本实施例是针对隧道的首节点而言的,如图5所示,本实施例的方法包括下面步骤S10、首节点拆除第一隧道的资源后,触发第二隧道传输的消息携带用于指示拆除第一隧道的信息,其中,第二隧道经过的节点至少包括第一隧道的下一跳节点。在一优选实施例中,第二隧道经过的节点至少包括第一隧道经过的所有节点。
图6为本发明另一实施例的一种分布式网络中流量工程隧道的拆除方法的流程图,本实施例是针对隧道的非首节点而言的,如图6所示,本实施例的方法包括下面步骤S21、接收隧道上传输的消息;S22、若所述消息携带用于指示拆除隧道的信息,则删除所述信息指定的隧道的资源。本发明实施例提供的一种分布式网络中隧道的拆除方法,可以实现当某个隧道需要删除,除了可以通过PathTear消息,还可以通过其他相关隧道上的传输的消息(例如 Path消息)携带指令删除隧道的信息,在PathTear消息无法到达下游节点的情况,达到拆除指定隧道的目的。下面通过一应用示例对本发明的方法进行详细的说明,如图7所示,包括下面步骤步骤101、对于隧道的首节点,为本地创建的隧道分配一个唯一的单调递增(也可以是单调递减,后面不在赘述,仅用单调递增表示)的序列号,首节点根据下游节点的 ΝΗ0Ρ(下一跳)地址通过集合的方式管理创建的隧道,如图8所示。步骤102、隧道首节点在Path消息中新增Sequence Object (序列对象),通过 Ctype (类型)表示这个Sequence-Id是隧道的首节点在创建隧道时唯一分配的。例如Sequence Object Ctype = I,表不创建隧道分配的 Sequence Identification (序列号)。步骤103、隧道的下游各个节点接收到步骤102的Sequence Object后,在本地建立序列号与隧道的对应关系,以隧道首节点源地址为关键字管理所有的远程隧道,这些远程隧道的分配的序列号必须由隧道的首节点唯一的创建。通过步骤101 103,隧道中的每个节点都可以同步同一源节点的所有隧道的序列号信息。步骤104、当隧道首节点删除某条隧道后,除了发送这条隧道的PathTear消息,同时将排删除的隧道的序列号前后各一个现存的隧道的序列号作为隧道的删除区间的数据。例如,如图9所示,当tunnel_ll需要删除时,隧道的首节点Rl在发送PathTear 消息后,可以立即删除本地tunnel_ll相关的资源,不需要再缓存。tunnel_ll节点在本地创建隧道集合中查找到tunnel_ll的序列号③,然后将序列号③在创建集合中前后位置的序列号{②和④}放在删除集合中作为删除区间的左值和右值,通过删除区间来表示序列号②和④之间序列号所代表的隧道已经删除。步骤105、首节点触发特定的隧道的Path(或者其他消息)消息在发送时携带 Sequence对象,该Sequence对象中包括步骤104中的删除区间,通过删除区间的左值或者右值来代表待拆除的隧道。Sequence Object :Ctype = 2,表示创建隧道删除区间的标识。其中,所述特定的隧道指其经过的节点至少包括待拆除的隧道所经过的所有节点。当序列号②和④所代表的隧道发送Path消息(也可以是其他任意消息)时,均可以携带Ctype = 2的Sequence对象,通过删除区间(2,4)来表示序列号③的隧道已经删除。步骤106、隧道中的下游节点在接收到携带Sequence对象(Ctype = 2)的Path消息后,在本地查找源节点下管理的序列号集合,通过删除区间找到需要删除的远程隧道,将本地资源删除释放。当隧道下游的节点R2及R3在收到携带删除区间的Path消息后,能够在Rl的创建序列号集合中找到删除区间左值和右值所表示的序列号的节点,将区中表示范围中的节点作为需要删除的资源进行处理。本应用示例提供的方法,可以通过将本地创建的隧道通过序列号的方式管理起来,当隧道删除时,能够通过仍然存在的隧道序列号来表示已经删除的隧道序列号,通过存在的隧道上传输的消息来携带待拆除隧道的信息,来表示需要删除的资源,这样首节点本地待删除资源则可以立即释放不需要再缓存。与现有的机制相比,本发明提供的方法管理开销和内存开销低,消息扩展简单,而且更加可靠。在另一实施例中,可以以相同的下一跳为单位生成隧道的序列号集合。该实施例中,隧道路径中的每一个节点都会接收上游分配的序列号,同时也会自己生成序列号向下游分发。假设,网络中具有节点a、b、C、d、e、f、g,首节点a创建下面隧道I 隧道a-b-d_e-g2 隧道a-b-c-d-e-f-g3 隧道a-c_e-g4 隧道a-c-d-g其中,隧道3和4在a节点上拥有相同的下一跳,则a节点为隧道3和隧道4分配的序列号为3和4,并将序列号通过path消息分发给c节点。隧道3和4在c节点将序列号3和4保存,同时c节点也为隧道3分配了一个新的序列号(这时在c节点为隧道3分配的序列号不一定是3,有可能是另一个数字,这里假定为10),同时在下一跳为e的序列号集合内为其他隧道,比如说隧道9分配一个序列号11, 这时由于隧道3和4在c节点上的下一跳不同,因此不在一个序列号集合内。当在a节点上执行隧道3删除操作后,a节点在下一跳为c的序列号集合内找到下一个序列号4,然后通过隧道4发送带有拆除区间的path消息给c节点;c节点收到后将本地隧道3的资源拆除,然后c节点在下一跳为e的序列号集合内找到隧道3的序列号(这时c节点上隧道3的序列号为10)的下一跳序列号(也就是11),通过序列号11表示的隧道(这时是隧道9)发送含有删除区间的path消息给e节点。该实施例中,在a节点是通过隧道4的path消息携带删除区间给c节点,这个path 消息到了 c节点就会终结,不再向下游发送,仅仅完成c节点上的隧道3资源拆除;然后由 c节点向e节点发送的含有删除区间的path消息就不是隧道4,而是与隧道3具有相同下一跳集合的另一个相邻隧道。本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。以上仅为本发明的优选实施例,当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
权利要求
1.一种分布式网络中流量工程隧道的拆除方法,包括首节点拆除第一隧道的资源后,触发第二隧道传输的消息携带用于指示拆除第一隧道的信息,其中,第二隧道经过的节点至少包括第一隧道的下一跳节点。
2.如权利要求I所述的方法,其特征在于首节点在创建隧道时,按次序对所创建的隧道分别分配唯一的序列号,第二隧道是首节点中现存的经过的节点至少包括第一隧道所经过的节点的所有隧道中,序列号与第一隧道的序列号最接近的隧道。
3.如权利要求2所述的方法,其特征在于所述用于指示拆除第一隧道的信息包括 拆除指令和一开区间数据,所述开区间数据是以第一隧道的序列号前后各一个现存的隧道的序列号来表示的。
4.如权利要求3所述的方法,其特征在于若第一隧道的序列号的前面或后面没有现存的隧道的序列号,则用O表示。
5.如权利要求2所述的方法,其特征在于所述用于指示拆除第一隧道的信息包括拆除指令和第一隧道的序列号。
6.如权利要求1-5任一项所述的方法,其特征在于第二隧道经过的节点至少包括第一隧道经过的所有节点。
7.一种分布式网络中流量工程隧道的拆除方法,包括接收隧道上传输的消息;若所述消息携带用于指示拆除隧道的信息,则删除所述信息指定的隧道的资源。
8.如权利要求7所述的方法,其特征在于所述用于指示拆除隧道的信息包括拆除指令和一开区间数据;所述根据所述信息删除指定隧道的资源的步骤包括查找本节点上现存的序列号在所述开区间数据范围内的隧道;根据所述拆除指令将查找的隧道的资源删除。
9.如权利要求7所述的方法,其特征在于所述用于指示拆除隧道的信息包括拆除指令和序列号;所述根据所述信息删除指定隧道的资源的步骤包括在本节点上查找所述序列号对应的隧道;根据所述拆除指令将查找到的隧道的资源删除。
10.一种节点设备,包括用于作为流量工程隧道首节点的第一模块,第一模块包括 拆除单元,用于拆除第一隧道的资源;触发单元,用于在拆除单元拆除所述资源后,触发第二隧道传输的消息携带标识拆除第一隧道的信息,其中,第二隧道经过的节点至少包括第一隧道的下一跳节点。
11.如权利要求10所述的节点设备,其特征在于第一模块还包括创建单元,用于在创建隧道时,按次序对所创建的隧道分别分配唯一的序列号,将分配的序列号通过该隧道的消息传递给下游节点;第二隧道是首节点中现存的经过的节点至少包括第一隧道所经过的节点的所有隧道中,序列号与第一隧道的序列号最接近的隧道,第二隧道经过的节点至少包括第一隧道经过的所有节点。
12.如权利要求11所述的节点设备,其特征在于所述用于指示拆除第一隧道的信息包括拆除指令和一开区间数据,所述开区间数据是以第一隧道的序列号前后各一个现存的隧道的序列号来表示的。
13.如权利要求10-12任一项所述的节点设备,其特征在于所述节点设备还包括用于作为流量工程隧道的非首节点的第二模块,第二模块包括接收单元,用于接收隧道上传输的消息;拆除单元,若判断所述消息携带用于指示拆除隧道的信息,则删除所述信息指定的隧道的资源。
14.如权利要求13所述的节点设备,其特征在于所述用于指示拆除隧道的信息包括拆除指令和一开区间数据;所述拆除单元,具体用于查找本节点上现存的序列号在所述开区间数据范围内的隧道;根据所述拆除指令将查找的隧道的资源删除。
15.如权利要求13所述的节点设备,其特征在于所述用于指示拆除隧道的信息包括拆除指令和序列号;所述拆除单元,具体用于在本节点上查找所述序列号对应的隧道;根据所述拆除指令将查找到的隧道的资源删除。
16.如权利要求13所述的节点设备,其特征在于第二模块还包括管理单元,在所述消息携带隧道对应的序列号的情况下,建立该序列号与该隧道的对应关系。
全文摘要
本发明提供一种分布式网络中流量工程隧道的拆除方法及节点设备,该拆除方法包括首节点拆除第一隧道的资源后,触发第二隧道传输的消息携带用于指示拆除第一隧道的信息,其中,第二隧道经过的节点至少包括第一隧道的下一跳节点。根据本发明可以使隧道各个节点更加可靠地同步删除资源,作为PathTear消息删除机制的一个有效地补充。
文档编号H04L12/56GK102594645SQ20121003715
公开日2012年7月18日 申请日期2012年2月17日 优先权日2011年11月25日
发明者杨帆 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1