一种处理标签绑定的方法

文档序号:7951724阅读:90来源:国知局
专利名称:一种处理标签绑定的方法
技术领域
本发明涉及数据包交换技术,特别是涉及一种在多协议标签交换域中处理标签绑定的方法。
背景技术
在采用多协议标签交换(MPLS,Multi-Protocol Label Switching)的网络中,数据包被短而定长的标签所封装,并根据标签进行转发。标签是一个长度固定、具有本地意义的短标识符,用于标识一个转发等价类(FEC,Forwarding Equivalence Class)。完成数据包转发的网络单元是标签交换路由器(LSR,Label Switching Router)。由LSR构成的网络叫做MPLS域,位于MPLS域边缘、与其它类型网络相连的LSR称为边缘LSR,位于区域内部的LSR则称为核心LSR。在MPLS体系中,将特定标签分配给特定FEC称为标签绑定。绑定由在包传递路径中相对更靠近目的端的下游LSR做出,并由下游LSR通告给在包传递路径中相对更靠近源的上游LSR。对于核心LSR,有一张标签转发表,表中记录了该LSR的入标签、标签操作、出标签和出端口等之间的对应关系,每个入标签都有一个与之对应的出标签和出端口。LSR每收到一个带有标签的数据包,以该数据包的标签作为入标签,在标签转发表里查到对应的出标签和出端口,用出标签代替该数据包的入标签后,将该数据包从出端口发送出去。标签转发表的建立需要下游LSR和上游LSR之间进行关于标签绑定的交互,这个过程可以通过标签分发协议(LDP,Label Distribution Protocol)来实现的。LDP规定了LSR间的消息交互过程和消息结构,以及标签分发方式。
在实际应用中,有可能出现这样的情况,即下游LSR将大量上游LSR不需要的标签绑定发送给上游LSR。由于LSR中标签转发表的容量有限,因此对于上游LSR来说,如果将这些不需要的标签绑定都添加到标签转发表的表项中,就有可能会导致标签转发表的容量被耗尽,而真正需要的标签转发表项却无法建立。
现有技术中,上游LSR采用一定的过滤策略来对收到的标签绑定进行过滤。如果某些标签绑定被过滤策略允许,则上游LSR接受该标签绑定并创建相应的标签转发表项;如果标签绑定被拒绝,则上游LSR不接受该标签绑定,也不在本地保存该标签绑定。在过滤策略发生变化后,需要复位LDP会话,即重新建立LDP会话并且让下游LSR重新发标签绑定,这样才能接收到曾经被拒绝了的标签绑定。
由此可见,现有技术的缺点在于上游LSR不保存被拒绝了的标签绑定,在过滤策略发生变化后,上游LSR没有办法请求下游LSR重新通告那些被拒绝了的标签绑定,也没有办法请求下游LSR重新通告所有标签绑定。所以在过滤策略发生变化时,必须复位LDP会话,让LDP会话重新建立,下游LSR重新发标签绑定,才能重新学习到曾经被拒绝了的标签绑定。对于网络流量来说,复位已经存在的会话,会导致现有标签转发路径被删除,原来通过现有标签转发路径进行转发的数据包在会话重新建立之前不能继续转发,必然影响已有的流量;对于LSR来说,无论是下游LSR重发标签绑定,还是上游LSR删除已有的标签转发表项并重新建立新的标签转发表项,都需要消耗处理能力。

发明内容
有鉴于此,本发明的主要目的在于提供一种处理标签绑定的方法,在过滤策略发生变化的时候,不用复位LDP会话,从而不影响现有的网络流量,也不额外增加LSR的处理负担。
为了达到上述目的,本发明提供了一种处理标签绑定的方法,标签交换路由器采用当前标签绑定过滤策略过滤标签绑定时,保存被当前标签绑定过滤策略拒绝的标签绑定。
该方法进一步包括标签交换路由器采用当前标签绑定过滤策略过滤标签绑定时,保存被当前标签绑定过滤策略接受的标签绑定。
在标签绑定过滤策略发生变化时,该方法还包括A、判断接受的标签绑定在新的标签绑定过滤策略下是否被拒绝,如果是则将该标签绑定保存为拒绝的标签绑定,否则保留该标签绑定为接受的标签绑定;B、判断拒绝的标签绑定在新的标签绑定过滤策略下是否被接受,如果是则将该标签绑定保存为接受的标签绑定,否则保留该标签绑定为拒绝的标签绑定。
其中,所述保存被当前标签绑定过滤策略接受的标签绑定和拒绝的标签绑定为建立接受标签绑定列表和拒绝标签绑定列表,将根据当前标签绑定过滤策略接受的标签绑定放入接受标签绑定列表,将根据当前标签绑定过滤策略拒绝的标签绑定放入拒绝标签绑定列表。
其中,步骤A所述将该标签绑定保存为拒绝的标签绑定为将该标签绑定从接受标签绑定列表中删除,并添加到拒绝标签绑定列表中;步骤B所述将该标签绑定保存为接受的标签绑定为将该标签绑定从拒绝标签绑定列表中删除,并添加到接受标签绑定列表中。
其中,所述保存被当前标签绑定过滤策略接受的标签绑定和拒绝的标签绑定为建立标签绑定列表,将标签绑定放入列表中,并为每个标签绑定设置用于标识该标签绑定为接受的标签绑定还是拒绝的标签绑定的标记字段。
其中,步骤A之前进一步包括根据每个标签绑定对应的标记字段对标签绑定列表中的每个标签绑定判断该标签绑定是接受的标签绑定还是拒绝的标签绑定,如果是接受的标签绑定,则执行步骤A,否则执行步骤B。
其中,步骤A所述将该标签绑定保存为拒绝的标签绑定为将标签绑定对应的标记字段修改为表示该标签绑定是拒绝的标签绑定;步骤B所述将该标签绑定保存为接受的标签绑定为将标签绑定对应的标记字段修改为表示该标签绑定是接受的标签绑定。
其中,如果接受的标签绑定在新的标签绑定过滤策略下被拒绝,则该方法进一步包括将标签转发表中与在新的标签绑定过滤策略下被拒绝的标签绑定对应的表项删除,并且向上游标签交换路由器通告标签回收。
其中,在步骤B中,如果拒绝的标签绑定在新的标签绑定过滤策略下被接受,则该方法进一步包括在标签转发表中,建立与在新的标签绑定过滤策略下被接受的标签绑定对应的表项,并且向上游标签交换路由器通告标签绑定。
其中,所述采用当前标签绑定过滤策略过滤标签绑定为根据当前的访问控制列表过滤标签绑定。
采用本发明提供的处理标签绑定的方法,在上游LSR上保存被拒绝的标签绑定,当过滤策略发生变化的时候,逐条判断曾经被拒绝的标签绑定是否被新的过滤策略允许,如果允许则为该标签绑定建立标签转发表项。这样就不用复位上游LSR和下游LSR之间的LDP会话,既保证了现有的数据包转发流量不受影响,也节约了LSR的处理能力。


图1是本发明提供的处理标签绑定的方法中收到标签绑定时的处理流程图。
图2是本发明提供的处理标签绑定的方法中当过滤策略发生变化时对拒绝标签绑定列表的处理流程图。
图3是本发明提供的处理标签绑定的方法中当过滤策略发生变化时对接受标签绑定列表的处理流程图。
图4是本发明提供的处理标签绑定的方法中当过滤策略发生变化时对标签绑定列表中标签绑定的处理流程图。
具体实施例方式
本发明的核心思想是上游LSR按照当前的过滤策略,将下游LSR通告的标签绑定分为被接受的标签绑定和被拒绝的标签绑定加以保存,在过滤策略发生变化时,根据新的过滤策略对保存的标签绑定进行调整。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
本发明的技术方案之一是创建两个列表,一个用于保存接受的标签绑定,称为接受标签绑定列表,列表中的每个条目均为接受的标签绑定;另一个用于保存被拒绝的标签绑定,称为拒绝标签绑定列表,列表中的每个条目均为拒绝的标签绑定。本发明的技术方案之二是将接受的标签绑定和拒绝的标签绑定保存在同一个列表中,接受的标签绑定和拒绝的标签绑定具有同样的数据结构,且在数据结构中设置用于标识标签绑定为接受的标签绑定还是拒绝的标签绑定的标记字段。例如在数据结构中设置一个标识位,标识位为0的时候表示对应的标签绑定为接受的标签绑定;标识位为1的时候表示对应的标签绑定是拒绝的标签绑定。这里,所设置的两个列表或一个列表可以设置于LSR的LDP协议模块中。
图1是本发明提供的处理标签绑定的方法中LSR收到标签绑定时的处理流程图,如图1所示,LSR收到标签绑定时的处理流程包括以下步骤步骤101,当前LSR接收下游LSR发来的标签绑定的通告。
步骤102,当前LSR根据当前的过滤策略,判断是否接受步骤101中收到的标签绑定,如果接受则执行步骤103,否则执行步骤105。
通常情况下,使用访问控制列表(ACL,Access Control List)来实现过滤策略。
步骤103,根据步骤101中收到的标签绑定建立标签转发表的表项,并且向上游LSR通告标签绑定。
在MPLS网络中,上游LSR和下游LSR是相对而言的。步骤101中,当前LSR作为上游LSR,接收从下游LSR发出的标签绑定通告;步骤103中,当前LSR作为下游LSR,向上游LSR发出标签绑定通告。
步骤104,将步骤101中收到的标签绑定放入接受标签绑定列表中,结束当前处理流程。
步骤105,将步骤101中收到的标签绑定放入拒绝标签绑定列表中。
一般,拒绝的标签绑定在没有别的触发因素的情况下,不会因为时间的推移而被删除,将一直保存在本地。此处,所述的别的触发因素指的是收到标签回收消息或下游LDP会话中断导致的对标签的处理。
在图1的处理过程中,步骤103和步骤104没有严格的先后顺序规定。
需要说明的是,如果接受的标签绑定和拒绝的标签绑定保存于同一个列表中,且接受的标签绑定和拒绝的标签绑定具有同样的数据结构,并依靠数据结构上的标记字段来区分,则步骤104相应变为将步骤101中收到的标签绑定,附加上表示该标签绑定是接受的标签绑定的标记字段后,放入标签绑定列表;同样,步骤105相应变为将步骤101中收到的标签绑定,附加上表示该标签绑定是拒绝的标签绑定的标记字段后,放入标签绑定列表。
当LSR的过滤策略发生变化后,由LDP协议模块对标签绑定列表进行处理。如果接受的标签绑定和拒绝的标签绑定分别存储于两个表,则需要对接受标签绑定列表和拒绝标签绑定列表分别进行处理。
图2是本发明提供的处理标签绑定的方法中当过滤策略发生变化时对拒绝标签绑定列表的处理流程图,如图2所示,过滤策略发生变化时对拒绝标签绑定列表的处理流程包括以下步骤步骤201,LSR遍历自身的拒绝标签绑定列表,对未处理过的拒绝的标签绑定执行步骤202。
步骤202,根据新的过滤策略判断是否接受曾经被拒绝的标签绑定,如果接受,则执行步骤203,否则执行步骤205。
步骤203,根据新接受的标签绑定创建标签转发表表项,并向上游LSR通告标签绑定。
步骤204,将新接受的标签绑定加入接受标签绑定列表,并从拒绝标签绑定列表中删除新接受的标签绑定。
步骤205,判断是否处理完拒绝标签绑定列表中的所有标签绑定,如果是则执行步骤206,否则执行步骤201。
步骤206,结束对拒绝标签绑定列表的处理。
图2所示的处理过程中,步骤204和步骤205没有严格的先后顺序规定。
图3是本发明提供的处理标签绑定的方法中当过滤策略发生变化时对接受标签绑定列表的处理流程图,如图3所示,过滤策略发生变化时对接受标签绑定列表的处理流程包括以下步骤步骤301,LSR遍历自身的接受标签绑定列表,对于未处理过的接受的标签绑定执行步骤302。
步骤302,根据新的过滤策略判断是否拒绝曾经被接受的标签绑定,如果拒绝,则执行步骤303,否则执行步骤305。
步骤303,将标签转发表中与新拒绝的标签绑定相对应的表项删除,并向上游LSR通告标签回收。
步骤304,将新拒绝的标签绑定加入拒绝标签绑定列表,并从接受标签绑定列表中删除新拒绝的标签绑定。
步骤305,判断是否处理完接受标签绑定列表中的所有标签绑定,如果是则执行步骤306,否则执行步骤301。
步骤306,结束对接受标签绑定列表的处理。
图3所示的处理过程中,步骤304和步骤305没有严格的先后顺序规定。
需要说明的是,处理接受标签绑定列表和处理拒绝标签绑定列表的先后顺序也没有严格的规定。
如果接受的标签绑定和拒绝的标签绑定是保存于同一个标签绑定列表,则当过滤策略发生变化时,需要遍历标签绑定列表,对标签绑定列表中的每一个标签绑定执行图4所示的处理流程。图4给出了本发明提供的处理标签绑定的方法中当过滤策略发生变化时对标签绑定列表中标签绑定的处理流程,包括以下步骤步骤401,判断当前处理的标签绑定是接受的标签绑定还是拒绝的标签绑定,如果是接受的标签绑定,则执行步骤402,如果是拒绝的标签绑定,则执行步骤405。
步骤402,根据变化后的过滤策略判断是否拒绝当前处理的标签绑定,如果是则执行步骤403,否则,结束当前的标签绑定处理流程。
步骤403,删除标签转发表中与新拒绝的标签绑定相对应的表项,并向上游LSR通告标签回收。
步骤404,将新拒绝的标签绑定的类别转化为拒绝的标签绑定,结束当前的标签绑定处理流程。
这里,所述将新拒绝的标签绑定的类别转化为拒绝的标签绑定具体为修改用于标识标签绑定是拒绝的标签绑定还是接受的标签绑定的标记字段。
步骤405,根据变化后的过滤策略判断是否接受当前处理的标签绑定,如果是则执行步骤406,否则,结束当前的标签绑定处理流程。
步骤406,根据新接受的标签绑定创建标签转发表表项,并且向上游LSR通告标签绑定。
步骤407,将新接受的标签绑定的类别转化为接受的标签绑定。
这里,所述将新接受的标签绑定的类别转化为接受的标签绑定具体为修改用于标识标签绑定是拒绝的标签绑定还是接受的标签绑定的标记字段。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种处理标签绑定的方法,其特征在于,标签交换路由器采用当前标签绑定过滤策略过滤标签绑定时,保存被当前标签绑定过滤策略拒绝的标签绑定。
2.根据权利要求1所述的处理标签绑定的方法,其特征在于,该方法进一步包括标签交换路由器采用当前标签绑定过滤策略过滤标签绑定时,保存被当前标签绑定过滤策略接受的标签绑定。
3.根据权利要求2所述的处理标签绑定的方法,其特征在于,在标签绑定过滤策略发生变化时,该方法还包括A、判断接受的标签绑定在新的标签绑定过滤策略下是否被拒绝,如果是则将该标签绑定保存为拒绝的标签绑定,否则保留该标签绑定为接受的标签绑定;B、判断拒绝的标签绑定在新的标签绑定过滤策略下是否被接受,如果是则将该标签绑定保存为接受的标签绑定,否则保留该标签绑定为拒绝的标签绑定。
4.根据权利要求2或3所述的处理标签绑定的方法,其特征在于,所述保存被当前标签绑定过滤策略接受的标签绑定和拒绝的标签绑定为建立接受标签绑定列表和拒绝标签绑定列表,将根据当前标签绑定过滤策略接受的标签绑定放入接受标签绑定列表,将根据当前标签绑定过滤策略拒绝的标签绑定放入拒绝标签绑定列表。
5.根据权利要求4所述的处理标签绑定的方法,其特征在于,步骤A所述将该标签绑定保存为拒绝的标签绑定为将该标签绑定从接受标签绑定列表中删除,并添加到拒绝标签绑定列表中;步骤B所述将该标签绑定保存为接受的标签绑定为将该标签绑定从拒绝标签绑定列表中删除,并添加到接受标签绑定列表中。
6.根据权利要求2或3所述的处理标签绑定的方法,其特征在于,所述保存被当前标签绑定过滤策略接受的标签绑定和拒绝的标签绑定为建立标签绑定列表,将标签绑定放入列表中,并为每个标签绑定设置用于标识该标签绑定为接受的标签绑定还是拒绝的标签绑定的标记字段。
7.根据权利要求6所述的处理标签绑定的方法,其特征在于,步骤A之前进一步包括根据每个标签绑定对应的标记字段对标签绑定列表中的每个标签绑定判断该标签绑定是接受的标签绑定还是拒绝的标签绑定,如果是接受的标签绑定,则执行步骤A,否则执行步骤B。
8.根据权利要求6所述的处理标签绑定的方法,其特征在于,步骤A所述将该标签绑定保存为拒绝的标签绑定为将标签绑定对应的标记字段修改为表示该标签绑定是拒绝的标签绑定;步骤B所述将该标签绑定保存为接受的标签绑定为将标签绑定对应的标记字段修改为表示该标签绑定是接受的标签绑定。
9.根据权利要求3所述的处理标签绑定的方法,其特征在于,在步骤A中,如果接受的标签绑定在新的标签绑定过滤策略下被拒绝,则该方法进一步包括将标签转发表中与在新的标签绑定过滤策略下被拒绝的标签绑定对应的表项删除,并且向上游标签交换路由器通告标签回收。
10.根据权利要求3所述的处理标签绑定的方法,其特征在于,在步骤B中,如果拒绝的标签绑定在新的标签绑定过滤策略下被接受,则该方法进一步包括在标签转发表中,建立与在新的标签绑定过滤策略下被接受的标签绑定对应的表项,并且向上游标签交换路由器通告标签绑定。
11.根据权利要求1至3任一项所述的处理标签绑定的方法,其特征在于,所述采用当前标签绑定过滤策略过滤标签绑定为根据当前的访问控制列表过滤标签绑定。
全文摘要
本发明公开了一种处理标签绑定的方法,标签交换路由器采用当前标签绑定过滤策略过滤标签绑定时,保存被当前标签绑定过滤策略拒绝的和接受的标签绑定。在标签绑定过滤策略发生变化时,该方法还包括A.判断接受的标签绑定在新的标签绑定过滤策略下是否被拒绝,如果是则将该标签绑定保存为拒绝的标签绑定,否则保留该标签绑定为接受的标签绑定;B.判断拒绝的标签绑定在新的标签绑定过滤策略下是否被接受,如果是则将该标签绑定保存为接受的标签绑定,否则保留该标签绑定为拒绝的标签绑定。采用本发明所提供的技术方案,在过滤策略发生变化的时候,不用复位LDP会话,从而不影响现有的网络流量,也不额外增加LSR的处理负担。
文档编号H04L12/56GK1801782SQ200610001519
公开日2006年7月12日 申请日期2006年1月18日 优先权日2006年1月18日
发明者叶金荣 申请人:杭州华为三康技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1