CN101414979B - 标签分发消息的处理方法及标签交换路由器 - Google Patents
标签分发消息的处理方法及标签交换路由器 Download PDFInfo
- Publication number
- CN101414979B CN101414979B CN2008102273192A CN200810227319A CN101414979B CN 101414979 B CN101414979 B CN 101414979B CN 2008102273192 A CN2008102273192 A CN 2008102273192A CN 200810227319 A CN200810227319 A CN 200810227319A CN 101414979 B CN101414979 B CN 101414979B
- Authority
- CN
- China
- Prior art keywords
- address
- message
- equivalence class
- forwarding equivalence
- next hop
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种标签分发消息的处理方法及标签交换路由器,方法包括:在接收到用于通告添加地址的地址消息中提供的地址已被创建过的情况下,判断所述地址是否为转发等价类对应的下一跳地址;所述转发等价类对应的标签映射消息已被预先接收;在所述地址为所述下一跳地址的情况下,判断所述转发等价类是否已被添加到FTN表中;在所述转发等价类未被添加到所述FTN表的情况下,将所述转发等价类添加到所述FTN表中。保证了在LSR先收到标签映射公告消息后接收到地址消息的情况下,仍然将对应的FEC添加到FTN表中,从而解决了由LSR先收到标签映射公告消息后接收到地址消息导致的无法建立LSP的问题。
Description
技术领域
本发明涉及计算机网络通信技术领域,尤其涉及一种标签分发消息的处理方法及标签交换路由器。
背景技术
多协议标签交换(Multiprotocol Label Switching,以下简称:MPLS)是一种利用标签(label)进行高速、高效数据转发的技术。所谓多协议是指MPLS支持多种网络层协议,所谓标签交换就是对报文或要传送的数据附上被称为标签(label)的定长字段,报文或要传送的数据从源到目的地通过标签在MPLS网络中进行选路转发。
MPLS体系中存在多种具有标签分发功能的协议,包括为MPLS全新定义的新协议和对其它协议进行扩展后得到的具有标签分发功能的协议。目前最常见的具有标签分发功能的协议是标签分发协议(Label DistributionProtocol,以下简称:LDP)。
LDP有两种含义:一种是指一系列可以完成标签分发功能的协议的统称;另一种是指由RFC3036定义的一种特定的具有标签分发功能的协议,是一个具体协议的名称。本发明中,如果没有特别的说明,LDP为第二种LDP,用来指代IETF在RFC3036定义的这一具体的标签分发协议。
LDP中,标签分发消息用来请求、通告及撤销标签绑定,包括地址消息、地址删除消息、标签映射消息、标签请求消息(Label Request Message)等。地址消息用于通告本地的接口地址;地址删除消息用于撤销本地的接口地址;标签映射消息用于下游分发标签绑定;标签请求消息用于上游往下游请求分发标签绑定。
当标签交换路由器(Label Switching Router,以下简称:LSR)在接收到上游LDP邻居的标签请求消息后,针对标签请求消息所指定的FEC回应标签映射消息来分发标签时,这种标签分发模式称为请求(Downstream onDemand,以下简称:DOD)分发模式。当LSR在没有收到标签请求消息的情况下主动分发标签绑定给它的邻接LSR,这种标签分发模式称为非请求(Downstream Unsolicited,以下简称:DU)分发模式。DU方式下,下游LSR将根据某一触发策略如打开LDP或路由表更新的情况下向上游LDP邻居主动分发标签。其中,LSR指的是构成MPLS网络的路由器,位于MPLS网络边缘的LSR称为标签交换边界路由器(Label Switching Edge Router,以下简称:LER)。
对于分发的标签有保守标签保留(Conservative)和自由标签保留(Liberal)两种模式。上游LSR使用保守标签保留模式的情况下,只保存下游LSR公告的且将被该上游LSR用来转发分组的标签映射。换句话说,只有在上游LSR对应某一转发等价类(Forwarding Equivalence Class,以下简称:FEC)的下一跳为公告该标签绑定的下游LSR时,才予以保存。当上游LSR使用自由标签保留模式时,不论下游LSR是否为该FEC对应的下一跳LSR,从对等体LSR接收到的标签映射均被保存。对等体LSR即与该上游LSR交换标签/FEC绑定信息的LSR。LDP中,FEC指的是在转发过程中以等价的方式处理的一类数据分组。FEC在相同路径上转发,以相同方式处理并因此被一个LSR映射到一个单一标签的一组IP分组。一个FEC的数据流,在不同的MPLS节点赋予标签,数据转发根据这些标签进行,数据流所经过的路径就是标签交换路径(Label Switched Path,以下简称:LSP),包含一系列的LSR。因此,LSP是归属一个FEC的MPLS数据在MPLS网络中经过的路径。也可以将LSP看作穿越MPLS网络的一个隧道。交换标签/FEC绑定信息的两个LSR之间存在一个LDP会话,这两个LSR互称为LDP对等体。
现有技术中,根据RFC3036标准规定,LSR先接收对端发送的地址消息, 获知添加的地址;然后接收对端发送的标签映射消息,判断获知的地址是否为FEC的下一跳地址,也即FEC的下游。若获知的地址为FEC的下一跳地址,即,对端是FEC的下一跳,则在本LSR将地址与标签或FEC相关联,添加到FTN(FEC-to-NHLFE)表中,并根据该FTN表进行后续的报文转发。FTN表是FEC与下一跳标签转发项(Next Hop Label Forwarding Entry,以下简称:NHLFE)的二元组,NHLFE指的是存储数据分组的下一跳地址和转发数据时要带的标签值的转发表项。FTN将每个FEC映射到一系列的NHLFE上。在LER转发接收收到的一个未带标签的报文时,通过FTN表中“FEC”到“下一跳”的映射关系决定该报文该向哪个FEC的下一跳进行转发。其中,LSR接收到用于通告添加地址的地址消息后的处理流程如图1所示,包括:
步骤11、判断接收到的地址是否被创建过,若是,则结束处理;否则,执行步骤12;
步骤12、记录该地址,等待接收标签映射消息,以将该地址与FEC相关联,并添加到FTN表中,从而建立LSP。
但是,当某一LDP会话中的LSR以DU分发模式和自由标签保留模式运行时,可能会存在该LSR先收到标签映射公告消息后接收到地址消息的情况。由于自由标签保留模式下,LSR对保留的标签映射只是记录,而不添加到FTN表中。因此,当接收到的地址消息提供的地址被创建过时,不管该地址是否为已记录的标签映射中某一FEC对应的下一跳地址,也会被丢弃,从而导致无法建立LSP。
发明内容
本发明的目的在于提出一种标签分发消息的处理方法及标签交换路由器,以解决LSR先收到标签映射公告消息后接收到地址消息导致的无法建立LSP的问题。
为实现上述目的,本发明提供了一种标签分发消息的处理方法,包括:
接收用于通告添加地址的地址消息;
在接收到用于通告添加地址的地址消息中提供的地址已被创建过的情况下,判断所述地址是否为转发等价类对应的下一跳地址;若所述地址为转发等价类对应的下一跳地址,则判断所述转发等价类对应的标签映射消息是否已被预先接收,若所述地址不为转发等价类对应的下一跳地址,则结束处理;
若所述转发等价类对应的标签映射消息已被预先接收,判断所述转发等价类是否已被添加到FEC-to-NHLFE(FTN)表中;若所述转发等价类对应的标签映射消息未被预先接收,则结束处理;
在所述转发等价类未被添加到所述FTN表的情况下,将所述转发等价类添加到所述FTN表中,在所述转发等价类已被添加到所述FTN表的情况下,结束处理。
本发明还提供了一种标签交换路由器,包括:
接收模块,用于接收用于通告添加地址的地址消息;
下一跳判断模块,用于在接收到用于通告添加地址的地址消息中提供的地址已被创建过的情况下,判断所述地址是否为转发等价类对应的下一跳地址;若所述地址为转发等价类对应的下一跳地址,则判断所述转发等价类对应的标签映射消息是否已被预先接收,若所述地址不为转发等价类对应的下一跳地址,则结束处理;
添加判断模块,用于若所述转发等价类对应的标签映射消息已被预先接收,判断所述转发等价类是否已被添加到FEC-to-NHLFE(FTN)表中;并用于若所述转发等价类对应的标签映射消息未被预先接收,则结束处理;
添加模块,用于在所述转发等价类未被添加到所述FTN表的情况下,将所述转发等价类添加到所述FTN表中,在所述转发等价类已被添加到所述FTN表的情况下,结束处理。
上述方案中,通过对接收到的地址进行FEC下一跳地址的判断,并在接收到的地址为FEC下一跳地址的情况下,将FEC添加到FTN表中,使得接收到的地址与已记录的FEC及标签相关联,保证了在LSR先收到标签映射公告消息后接收到地址消息的情况下,仍然将接收到的地址与已记录的FEC或标签相关联,并添加到FTN表中,从而解决了由LSR先收到标签映射公告消息后接收到地址消息导致的无法建立LSP的问题。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为现有技术中LSR接收到用于通告添加地址的地址消息后的处理流程图;
图2为本发明标签分发消息的处理方法实施例的流程图;
图3为本发明标签分发消息的处理方法实施例中接收到用于通告删除地址的地址消息时的处理流程图;
图4为本发明标签分发消息的处理方法实施例的应用环境示意图;
图5为本发明标签交换路由器实施例的结构示意图。
具体实施方式
图2为本发明标签分发消息的处理方法实施例的流程图,包括:
步骤21、某一LSR判断接收到的通告添加地址的地址消息中提供的地址是否被创建过,在接收到的地址消息中提供的地址未被创建过的情况下,执行步骤24;在接收到的地址消息中提供的地址已被创建过的情况下,判断所述地址是否为已FEC对应的下一跳地址,也即判断所述地址是否为某一个FEC对应的下一跳地址,若是,则判断所述FEC对应的标签映射消息是否已被预先接收;否则结束处理。若所述FEC对应的标签映射消息已被预先接收,则执行步骤22,否则结束处理。
步骤22、在所述地址为下一跳地址的情况下,该LSR判断所述FEC是否已添加到本地的FTN表中,若是,结束处理;否则,执行步骤23。
步骤23、在所述FEC未被添加到所述FTN表的情况下,该LSR将所述FEC添加到所述FTN表中。从而解决了由LSR先收到标签映射公告消息后接收到地址消息导致的无法建立LSP的问题,该LSR后续根据该FTN表转发相应报文。
当存在多个满足上述条件的FEC时,需要继续执行步骤22判断其他FEC是否已被添加到FTN表中,并且,在未添加到FTN表的情况下,继续执行步骤23。
步骤24、LSR记录通告的地址,结束处理,等待该地址对应的标签映射消息。
当地址消息中的地址为多个FEC的下一跳地址时,上述步骤23之后,该LSR还需要继续判断本机是否保存有下一个符合上述添加条件的下一跳地址为通告地址的FEC,若是,循环执行步骤22,直至将所有下一跳地址为通告地址且对应的标签映射公告消息已被接收的FEC都添加到FTN表中。
对应地,在该LSR接收到用于通告删除地址的地址消息时,如图3所示,本发明标签分发消息实施例的处理方法还可包括:
步骤31、接收用于删除地址的地址消息,并判断所述用于删除地址的地址消息中通告的地址是否被创建过;若是,执行步骤32;否则,结束处理。
步骤32、在所述地址消息由下一跳发送且所述FTN表保存有下一跳地址为待删除地址的FEC的情况下,执行步骤33;在所述地址消息不是由下一跳发送或不存在下一跳地址为所述待删除地址的转发等价类或所述FTN表未保存所述下一跳地址为待删除地址的FEC的情况下,执行步骤34。
步骤33、从所述FTN表中删除所述下一跳地址为待删除地址的FEC。
步骤34、该LSR删除本机保存的所述待删除地址。
当下一跳地址为待删除地址的FEC有多个时,上述步骤33与步骤34之间还包括,LSR进一步判断本机是否保存有下一个符合上述删除条件的下一跳地址为待删除地址的FEC,若是,循环执行步骤33,直至FTN表中所有下一跳地址为待删除地址的FEC被删除。然后,执行步骤34。
以图4所示LSR为例,假设第一LSR41和第二LSR42都运行在DU标签分发模式以及自由标签保留模式下。在第一LSR41上配置一条指向10.10.10.10/32、下一跳地址为20.1.1.2(该地址现在不存在)的静态路由。通过将第一LSR41的某一接口设置为20.1.1.1,使上述路由有效(UP),以保证第一LSR41能够到达20.1.1.2。在第二LSR42上也配置一条指向 10.10.10.10/32的静态路由,并使该路由有效(配置下一跳地址为任意可达地址即可)。由于新增了路由,第二LSR 42主动分发对应于FEC为10.10.10.10/32的标签映射消息给第一LSR 41,第一LSR 41记录标签映射消息通告的FEC与标签的绑定关系,但不将该标签映射消息对应的FEC保存到FTN表中。在第二LSR 42上与第一LSR 41直连的接口上配置重地址20.1.1.2后,第二LSR 42向第一LSR 41发送地址消息,通告新添加的地址20.1.1.2。第一LSR 41接收到地址消息后,解析获得第二LSR 42添加的地址20.1.1.2。通过查找本机已保存的FEC,发现该地址为FEC10.10.10.10/32的下一跳地址,且该FEC对应的标签映射消息已被第一LSR41接收过,但该FEC没有被添加到FTN表中。于是将该FEC添加到FTN表中。这样,在先收到标签映射消息后收到地址消息的情况下,仍然能够将FEC添加到FTN表中,使下一跳地址与FEC关联,从而解决了现有技术中这种情况下无法建立LSP的问题,优化了标签分发消息的处理流程。
图5为本发明标签交换路由器实施例的结构示意图。标签交换路由器包括:接收模块51、下一跳判断模块52、添加判断模块53及添加模块54。接收模块51用于接收地址消息;下一跳判断模块52用于在接收到的地址消息中提供的地址已被创建过的情况下,判断所述地址是否为FEC对应的下一跳地址,其中,所述FEC对应的标签映射消息已被预先接收;添加判断模块53用于在所述地址为下一跳地址的情况下,判断所述FEC是否已被添加到FTN表中;添加模块54用于在所述FEC未被添加到所述FTN表的情况下,将所述FEC添加到所述FTN表中。
接收模块51还可用于接收用于删除地址的地址消息;这种情况下,标签交换路由器还可包括创建判断模块及删除模块。创建判断模块用于判断所述用于删除地址的地址消息中通告的地址是否被创建过;创建判断模块判断结果为是时,在所述地址消息由下一跳发送且所述FTN表保存有下一跳地址为待删除地址的FEC的情况下,删除模块从所述FTN表中删 除所述下一跳地址为待删除地址的FEC,并删除LSR中保存的所述待删除地址。并在所述创建判断模块判断为是时,且在所述地址消息不是由下一跳发送或不存在下一跳地址为所述待删除地址的转发等价类或所述FTN表未保存下一跳地址为所述待删除地址的转发等价类的情况下,删除模块删除所述待删除地址。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (5)
1.一种标签分发消息的处理方法,其特征在于,包括:
接收用于通告添加地址的地址消息;
在接收到用于通告添加地址的地址消息中提供的地址已被创建过的情况下,判断所述地址是否为转发等价类对应的下一跳地址;若所述地址为转发等价类对应的下一跳地址,则判断所述转发等价类对应的标签映射消息是否已被预先接收,若所述地址不为转发等价类对应的下一跳地址,则结束处理;
若所述转发等价类对应的标签映射消息已被预先接收,判断所述转发等价类是否已被添加到FEC-to-NHLFE(FTN)表中;若所述转发等价类对应的标签映射消息未被预先接收,则结束处理;
在所述转发等价类未被添加到所述FTN表的情况下,将所述转发等价类添加到所述FTN表中,在所述转发等价类已被添加到所述FTN表的情况下,结束处理。
2.根据权利要求1所述的标签分发消息的处理方法,其特征在于,还包括:
接收用于删除地址的地址消息;
判断所述用于删除地址的地址消息中通告的地址是否被创建过;
若是,在所述用于删除地址的地址消息由下一跳发送且所述FTN表保存有下一跳地址为待删除地址的转发等价类的情况下,从所述FTN表中删除所述下一跳地址为待删除地址的转发等价类,并删除所述待删除地址;
否则,结束处理。
3.根据权利要求2所述的标签分发消息的处理方法,其特征在于,判断所述用于删除地址的地址消息中通告的地址是否被创建过,且判断结果为是之后还包括:在所述用于删除地址的地址消息不是由下一跳发送或不存在下一跳地址为所述待删除地址的转发等价类或所述FTN表未保存下一跳地址为所述待删除地址的转发等价类的情况下,删除所述待删除地址。
4.一种标签交换路由器,其特征在于,包括:
接收模块,用于接收用于通告添加地址的地址消息;
下一跳判断模块,用于在接收到用于通告添加地址的地址消息中提供的地址已被创建过的情况下,判断所述地址是否为转发等价类对应的下一跳地址;若所述地址为转发等价类对应的下一跳地址,则判断所述转发等价类对应的标签映射消息是否已被预先接收,若所述地址不为转发等价类对应的下一跳地址,则结束处理;
添加判断模块,用于若所述转发等价类对应的标签映射消息已被预先接收,判断所述转发等价类是否已被添加到FEC-to-NHLFE(FTN)表中;并用于若所述转发等价类对应的标签映射消息未被预先接收,则结束处理;
添加模块,用于在所述转发等价类未被添加到所述FTN表的情况下,将所述转发等价类添加到所述FTN表中,在所述转发等价类已被添加到所述FTN表的情况下,结束处理。
5.根据权利要求4所述的标签交换路由器,其特征在于,所述接收模块还用于接收用于删除地址的地址消息;
所述标签交换路由器还包括:
创建判断模块,用于判断所述用于删除地址的地址消息中通告的地址是否被创建过;
删除模块,用于在所述创建判断模块判断为是,且在所述用于删除地址的地址消息由下一跳发送且所述FTN表保存有下一跳地址为待删除地址的转发等价类的情况下,从所述FTN表中删除所述下一跳地址为待删除地址的转发等价类,并删除所述待删除地址;以及用于在所述创建判断模块判断为是,且在所述用于删除地址的地址消息不是由下一跳发送或不存在下一跳地址为所述待删除地址的转发等价类或所述FTN表未保存下一跳地址为所述待删除地址的转发等价类的情况下,删除所述待删除地址;以及用于在所述创建判断模块判断为否时,结束处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102273192A CN101414979B (zh) | 2008-11-26 | 2008-11-26 | 标签分发消息的处理方法及标签交换路由器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008102273192A CN101414979B (zh) | 2008-11-26 | 2008-11-26 | 标签分发消息的处理方法及标签交换路由器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101414979A CN101414979A (zh) | 2009-04-22 |
CN101414979B true CN101414979B (zh) | 2011-07-20 |
Family
ID=40595297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008102273192A Expired - Fee Related CN101414979B (zh) | 2008-11-26 | 2008-11-26 | 标签分发消息的处理方法及标签交换路由器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101414979B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011000140A1 (zh) * | 2009-06-29 | 2011-01-06 | 华为技术有限公司 | 一种伪线的建立方法、装置和系统 |
CN102420759B (zh) * | 2011-11-30 | 2015-01-21 | 福建星网锐捷网络有限公司 | 标签交换路径建立方法、装置及系统、以及相应设备 |
CN107547397B (zh) * | 2017-05-19 | 2020-05-12 | 新华三技术有限公司 | 表项管理方法和装置 |
CN112019419B (zh) * | 2020-07-28 | 2021-10-26 | 瑞斯康达科技发展股份有限公司 | 一种标签转发路径的维护方法、存储介质和电子装置 |
-
2008
- 2008-11-26 CN CN2008102273192A patent/CN101414979B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101414979A (zh) | 2009-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101656666B (zh) | 标签分发协议会话处理方法与装置、标签交换路由器 | |
CN102123091B (zh) | 多链接透明传输互连转发表生成方法、装置及网络设备 | |
CN102291455B (zh) | 分布式集群处理系统及其报文处理方法 | |
CN110798403B (zh) | 通信方法、通信设备和通信系统 | |
CN100461741C (zh) | 防止以太网链路聚合逻辑端口报文丢失的方法及通信设备 | |
CN102957573B (zh) | 一种路径检测的实现方法及节点 | |
EP2541847B1 (en) | Method and system for establishing an associated bidirectional label-switched path | |
CN102802227B (zh) | 基于基站直通架构的数据处理方法、设备和系统 | |
CN103516612B (zh) | 分布式路由器中生成路由表项的方法及分布式路由器 | |
US8516152B2 (en) | Lookahead computation of routing information | |
CN114978978A (zh) | 一种算力资源调度方法、装置、电子设备及介质 | |
CN101938421A (zh) | 多协议标签交换网络中实现路由汇聚的方法及路由设备 | |
CN101414979B (zh) | 标签分发消息的处理方法及标签交换路由器 | |
CN113285876A (zh) | 路由方法、路由装置及计算机可读存储介质 | |
JP2006197591A (ja) | イーサネットを介したmplsマルチキャストパケットの転送装置及び方法 | |
WO2013013642A1 (zh) | 处理跨环业务的方法和相交节点 | |
CN109873766B (zh) | 报文传输方法和装置 | |
CN102202004A (zh) | 路由错误处理方法、装置和路由设备 | |
CN113542099B (zh) | 数据的传输方法、装置、电子设备、介质和产品 | |
CN106789664B (zh) | 一种路由聚合方法及装置 | |
CN100596087C (zh) | Ftn匹配管理方法 | |
CN101582857B (zh) | 一种基于弹性分组环的数据上环转发方法及装置 | |
CN101867524B (zh) | 位置与标识分离网络中无缝移动通信方法及系统 | |
CN102891902A (zh) | 介质访问控制地址更新方法及网络设备 | |
CN103001871A (zh) | 一种标签分配方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110720 Termination date: 20141126 |
|
EXPY | Termination of patent right or utility model |