CN109889441A - 一种数据转发方法及装置 - Google Patents
一种数据转发方法及装置 Download PDFInfo
- Publication number
- CN109889441A CN109889441A CN201910217375.6A CN201910217375A CN109889441A CN 109889441 A CN109889441 A CN 109889441A CN 201910217375 A CN201910217375 A CN 201910217375A CN 109889441 A CN109889441 A CN 109889441A
- Authority
- CN
- China
- Prior art keywords
- node
- label
- backup
- link
- data
- 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.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开实施例提供了一种数据转发方法,应用于保护链路的源端节点,该方法包括:与保护链路的Q节点建立会话,Q节点为以保护链路的末端节点为根节点建立的最短路径树的最外层节点;接收Q节点发送的标签报文,其中,标签报文中包括Q节点为Q节点的上一跳节点分配的目标标签;根据目标标签,生成备份标签栈;当保护链路发生故障时,根据备份标签栈,确定备份链路,通过备份链路转发待传输数据。这样,源端节点在生成备份标签栈时,可以通过Q节点发送的标签报文确定Q节点为其上一跳节点分配的目标标签,当Q节点接收到待传输数据时,可以根据目标标签确定自身的标签,进而将待传输数据转发至为Q节点分配标签的下一节点,避免了数据转发故障。
Description
技术领域
本公开涉及网络通信技术领域,特别是涉及一种数据转发方法及装置。
背景技术
MPLS(Multi-Protocol Label Switching,多协议标签交换)是一种利用标签引导数据传输的技术,SR(Segment Routing,段路由)是一种基于源路由的数据包转发协议,基于MPLS的SR可以将网络路径分成一个个段,并且为这些段和网络中的转发节点分配SID(Segment Identifier,段标识)。
在进行数据转发时,可以在源节点预先将数据转发路径中需要经过的节点的SID封装至数据中,当数据经过某一节点时,该节点可以根据数据中封装的SID对数据进行转发。
在数据转发过程中,如果某两台设备之间的链路发生故障,可能会导致数据转发失败,在这种情况下,需要计算备份链路,通过备份链路转发数据。
通常,可以将需要进行备份的链路称为保护链路,P空间是指以保护链路的源端节点为P空间根节点建立SPF(Shortest Path First,最短路径优先)树中,所有从P空间根节点不经过保护链路可达的节点的集合,P空间内的最外层节点为P节点,Q空间是指以保护链路的末端节点为Q空间根节点建立反向SPF树中,所有从Q空间根节点不经过保护链路可达的节点的集合,Q空间内的最外层节点为Q节点。
发明内容
本公开实施例的目的在于提供一种数据转发方法,以实现TI-FLA数据转发方法与LDP协议之间的兼容。具体技术方案如下:
本发明实施例提供了一种数据转发方法,应用于保护链路的源端节点,所述保护链路采用标签分发协议分配标签,所述方法包括:
与所述保护链路的Q节点建立会话,所述Q节点为以所述保护链路的末端节点为根节点建立的最短路径树的最外层节点;
接收所述Q节点发送的标签报文,其中,所述标签报文中包括所述Q节点为所述Q节点的上一跳节点分配的目标标签;
根据所述目标标签,生成备份标签栈;
当所述保护链路发生故障时,根据所述备份标签栈,确定备份链路,通过所述备份链路转发待传输数据。
可选的,所述与所述保护链路的Q节点建立会话,包括:
确定所述保护链路的Q节点;
向所述Q节点发送会话建立报文,以使所述Q节点在确定自身为所述保护链路的Q节点的情况下,回应所述会话建立报文,与所述源端节点建立会话。
可选的,所述会话建立报文为携带标识信息的基于标签分发协议的远端Hello报文;所述标签报文为基于标签分发协议的Label Mapping报文。
可选的,所述根据所述目标标签,生成备份标签栈,包括:
获取所述保护链路的P节点的节点标签,作为所述备份标签栈的第一层标签;
获取所述P节点与所述Q节点之间的邻接标签,作为所述备份标签栈的第二层标签;
将所述目标标签作为所述备份标签栈的第三层标签,得到所述备份标签栈。
可选的,所述根据所述备份标签栈,确定备份链路,通过所述备份链路转发待传输数据,包括:
根据所述第一层标签,将待传输数据发送至所述P节点,以使所述P节点根据所述第二层标签,将所述待传输数据发送至所述Q节点,并使所述Q节点根据所述第三层标签,将所述待传输数据发送至目的节点。
本发明实施例还提供了一种数据转发装置,应用于保护链路的源端节点,所述保护链路采用标签分发协议分配标签,所述装置包括:
会话建立模块,用于与所述保护链路的Q节点建立会话,所述Q节点为以所述保护链路的末端节点为根节点建立的最短路径树的最外层节点;
接收模块,用于接收所述Q节点发送的标签报文,其中,所述标签报文中包括所述Q节点为所述Q节点的上一跳节点分配的目标标签;
生成模块,用于根据所述目标标签,生成备份标签栈;
转发模块,用于当所述保护链路发生故障时,根据所述备份标签栈,确定备份链路,通过所述备份链路转发待传输数据。
可选的,所述会话建立模块,具体用于:
确定所述保护链路的Q节点;
向所述Q节点发送会话建立报文,以使所述Q节点在确定自身为所述保护链路的Q节点的情况下,回应所述会话建立报文,与所述源端节点建立会话。
可选的,所述会话建立报文为携带标识信息的基于标签分发协议的远端Hello报文;所述标签报文为基于标签分发协议的Label Mapping报文。
可选的,所述生成模块,具体用于:
获取所述保护链路的P节点的节点标签,作为所述备份标签栈的第一层标签;
获取所述P节点与所述Q节点之间的邻接标签,作为所述备份标签栈的第二层标签;
将所述目标标签作为所述备份标签栈的第三层标签,得到所述备份标签栈。
可选的,所述转发模块,具体用于:
根据所述第一层标签,将待传输数据发送至所述P节点,以使所述P节点根据所述第二层标签,将所述待传输数据发送至所述Q节点,并使所述Q节点根据所述第三层标签,将所述待传输数据发送至目的节点。
本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的数据转发方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的数据转发方法。
本发明实施例还提供了一种计算机程序产品,所述计算机程序产品在计算机上运行时,实现上述任一所述的数据转发方法。
本公开实施例提供的数据转发方法及装置,应用于保护链路的源端节点,通过与保护链路的Q节点建立会话,接收Q节点发送的标签报文,其中,Q节点为以保护链路的末端节点为根节点建立的最短路径树的最外层节点,标签数据中包括Q节点为Q节点的上一跳节点分配的目标标签,然后,根据目标标签,生成备份标签栈,当保护链路发生故障时,根据备份标签栈,确定备份链路,通过备份链路转发待传输数据。
这样,源端节点在生成备份标签栈时,可以通过Q节点发送的标签报文确定Q节点为其上一跳节点分配的目标标签,当Q节点接收到待传输数据时,可以根据目标标签确定自身的标签,进而将待传输数据转发至为Q节点分配标签的下一节点,避免了数据转发故障。
当然,实施本公开的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种数据转发方法的流程示意图;
图2为一种实现方式中的保护链路及备份链路的示意图;
图3为一种实现方式中的保护链路及备份链路的示意图;
图4为本公开实施例提供的一种数据转发装置的结构示意图;
图5为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
当网络中的某处链路发生故障时,可以采用TI-FLA(Topology-IndependentLoop-free Alternate,拓扑无约束无环备用)进行数据转发,在保护链路的源端节点处,通过压入备份标签栈的方式,在数据中增加P节点的节点标签、P节点到Q节点之间的邻接标签以及目的节点标签,这样,当某一节点接收到该数据之后,就可以根据该数据的备份标签栈中的标签信息确定数据的下一接收节点,从而实现通过备份链路传输数据,以保证数据的正常转发。
但是,一些场景中,节点的标签是根据LDP(Label Distribution Protocol,标签分发协议)分配的,在LDP协议中,由本节点的下一跳邻居节点为本节点分配唯一的标签,不相邻的节点之间无法获知对方的标签,每个节点仅绑定了该节点及该节点的下一跳邻居节点的标签。
这样,当采用TI-FLA进行数据转发时,在保护链路的源端节点无法获取Q节点为上一节点分配的标签,也就是说,当数据根据P节点到Q节点之间的邻接标签到达Q节点后,由于无法获取到Q节点的标签,也就无法确定下一跳邻居节点的标签,因此,无法将数据转发至下一节点,从而导致转发故障。
为了解决上述技术问题,本公开提供了一种数据转发方法,该方法可以应用于数据发送节点,该节点可以为多种电子设备,例如计算机、移动终端、基站等等,本公开实施例对此不做限定。
下面从总体上对本公开实施例提供的数据转发方法进行说明。
一种实现方式中,上述数据转发方法应用于保护链路的源端节点,保护链路采用标签分发协议分配标签,该方法包括:
与保护链路的Q节点建立会话,Q节点为以保护链路的末端节点为根节点建立的最短路径树的最外层节点;
接收Q节点发送的标签报文,其中,标签报文中包括Q节点为Q节点的上一跳节点分配的目标标签;
根据目标标签,生成备份标签栈;
当保护链路发生故障时,根据备份标签栈,确定备份链路,通过备份链路转发待传输数据。
由以上可见,应用本公开实施例提供的数据转发方法,源端节点在生成备份标签栈时,可以通过Q节点发送的标签报文确定Q节点为其上一跳节点分配的目标标签,当Q节点接收到待传输数据时,可以根据目标标签确定自身的标签,进而将待传输数据转发至为Q节点分配标签的下一节点,不会导致转发故障。
下面通过具体实施例,对本公开实施例提供的数据转发方法进行详细说明。
如图1所示,为本公开实施例提供的一种数据转发方法的流程示意图,包括如下步骤:
S101:与保护链路的Q节点建立会话,Q节点为以保护链路的末端节点为根节点建立的最短路径树的最外层节点。
在数据转发过程中,如果某两台设备之间的链路发生故障,则需要计算备份链路,通过备份链路转发数据,需要进行备份的链路称为保护链路。其中,P空间是指以保护链路的源端节点为P空间根节点建立SPF(Shortest Path First,最短路径优先)树中,所有从P空间根节点不经过保护链路可达的节点的集合,P空间内的最外层节点为P节点,Q空间是指以保护链路的末端节点为Q空间根节点建立反向SPF树中,所有从Q空间根节点不经过保护链路可达的节点的集合,Q空间内的最外层节点为Q节点。
举例而言,如图2所示,为一种实现方式中的保护链路及备份链路的示意图,若设备A与设备F之间的链路为保护链路,数据传输的路径为从设备A至设备F,那么,设备A为保护链路的源端节点,设备A、设备B、设备C的集合即为P空间,设备C即为P节点,设备D、设备E、设备F的集合即为Q空间,设备D即为Q节点。6.6.6.6/32为设备F的地址信息,4.4.4.4/32为设备D的地址信息,3.3.3.3/32为设备C的地址信息,设备C的节点标签为16003,设备F的节点标签为16006,设备C到设备D之间的邻接标签为1000。
源端节点与保护链路的Q节点建立会话时,可以由源端节点先向Q节点发送请求报文,由Q节点对请求报文进行回应,或者,也可以由Q节点先发送请求报文,由源端节点对请求报文进行回应,具体不做限定。
一种实现方式中,源端节点可以先确定保护链路的Q节点,然后,向Q节点发送会话建立报文,以使Q节点接收会话建立报文,并进行回应,从而与源端节点建立会话。其中,Q节点可以在接收会话建立报文之后,直接进行回应,或者,也可以在确定自身为保护链路的Q节点的情况下,再回应会话建立报文,减少会话建立报文的传输失误导致后续数据转发故障。
举例而言,任一节点在确定自身是否为保护链路的Q节点时,可以基于SPF树的生成机制进行反推,换句话说,保护链路的末端节点可以获取当前网络中各个节点的路由信息,根据这些节点的路由信息,可以构造出当前网络的拓扑结构,进而,可以生成以该保护链路的末端节点为根节点的SPF树,同时,可以生成该SPF树的路由表,并将该SPF树的路由表发送至该SPF树的其他节点中,这样,对于各个节点而言,可以通过查询所存储的路由表,确定自身是否为保护链路的Q节点。
其中,保护链路的末端节点可以采用Dijkstra算法(迪克斯特拉算法)、Bellman-Ford算法(贝尔曼-福特算法)、Floyd算法(插点算法)和SPFA算法(Shortest Path FasterAlgorithm,最短路径快速算法)等SPF算法,生成以该保护链路的末端节点为根节点的SPF树,具体不做限定。
会话建立报文可以为基于LDP协议的远端Hello报文,其中,会话建立报文的源地址可以为保护链路的IP地址,会话建立报文还可以携带标识信息,比如,可以通过将CommonHello Parameters TLV里面的保留字段的最高位设置为1的方式,设置标识信息,TLV格式是一种BER(Basic Encoding Rule,基本编码规则)编码格式,其中,T(Type)代表报文类型,L(Length)代表报文长度,V(Value)代表报文中所携带的信息。
S102:接收Q节点发送的标签报文,其中,标签报文中包括Q节点为Q节点的上一跳节点分配的目标标签。
在LDP协议中,由某一节点的下一跳邻居节点为该节点分配标签,不相邻的节点之间无法获知对方的标签,每个节点仅绑定了该节点为上一跳邻居节点分配的标签及该节点的下一跳邻居节点为该节点分配的标签,因此,在Q节点中,可以获取Q节点的上一跳节点为该节点分配的目标标签。
其中,在会话建立报文为LDP协议的远端Hello报文的情况下,标签报文可以为基于LDP协议的Label Mapping报文,在标签报文中,还可以包括下一跳邻居节点的前缀路由。
S103:根据目标标签,生成备份标签栈。
在备份标签栈中,包括P节点的节点标签、P节点到Q节点之间的邻接标签以及目的节点标签,这样,当某一节点接收到某一数据之后,就可以根据该数据的备份标签栈中的标签信息确定数据的下一接收节点,从而实现通过备份链路传输数据,以保证数据的正常转发。
在本步骤中,根据目标标签,生成备份标签栈的方式,可以为:首先,获取保护链路的P节点的节点标签,作为备份标签栈的第一层标签,然后,获取P节点与Q节点之间的邻接标签,作为备份标签栈的第二层标签,进而,将目标标签作为备份标签栈的第三层标签,得到备份标签栈。
如图3所示,为一种实现方式中的保护链路及备份链路的示意图,其中,每台设备之间通过LDP分配标签,设备F为设备E分配的标签为6000,设备E为设备D分配的标签为5000,设备D为设备C分配的标签为4000,设备C为设备B分配的标签为3000,设备B为设备A分配的标签为2000,6.6.6.6/32为设备F的地址信息,3.3.3.3/32为设备C的地址信息,设备C的节点标签为16003,设备F的节点标签为16006,设备C和设备D之间的邻接标签为1000,保护链路为设备A到设备F,也就是说,保护链路的源端节点为设备A,P节点为设备C,Q节点为设备D。
基于此,所获取的目标标签为设备D为设备C分配的标签4000,在生成备份标签栈时,首先,获取P节点的节点标签16003,作为备份标签栈的第一层标签,然后,获取P节点与Q节点之间的邻接标签1000,作为备份标签栈的第二层标签,进而,将目标标签4000作为备份标签栈的第三层标签,得到备份标签栈,备份标签栈为:16003,1000,4000。
S104:当保护链路发生故障时,根据备份标签栈,确定备份链路,通过备份链路转发待传输数据。
当保护链路发生故障时,为了避免数据传输失败,需要通过备份链路进行数据传输,其中,备份链路所经过的节点,可以通过生成的备份标签栈确定。
举例而言,若备份标签栈中的三层标签分别为保护链路的P节点的节点标签、P节点与Q节点之间的邻接标签以及所获取的目标标签,那么,根据备份标签栈确定备份链路,通过备份链路转发待传输数据的过程,可以为:首先,根据第一层标签,即P节点的节点标签,将待传输数据发送至P节点,然后,P节点可以根据第二层标签,即P节点与Q节点之间的邻接标签,将待传输数据发送至Q节点,进而,Q节点可以根据第三层标签,即目标标签,将待传输数据发送至目的节点。
举例而言,延续如图3所示的例子,备份标签栈为:16003,1000,4000,当设备A到设备F的保护链路发生故障后,设备A根据备份标签栈中的第一层,也就是P节点的节点标签16003,可以将待传输数据转发至设备C,然后,设备C可以根据备份标签栈中的第二层,也就是P节点与Q节点之间的邻接标签1000,将待传输数据发送至Q节点(设备D),进而,设备D根据备份标签栈中的第三层,也就是目标标签4000,根据LDP协议,将目标标签从4000交换为5000,转到设备E,在设备E中,目标标签从5000交换为6000,转发到设备F,这样,数据转发成功。
由以上可见,本公开实施例提供的数据转发方法,源端节点在生成备份标签栈时,可以通过Q节点发送的标签报文确定Q节点为其上一跳节点分配的目标标签,当Q节点接收到待传输数据时,可以根据目标标签确定自身的标签,进而将待传输数据转发至为Q节点分配标签的下一节点,避免了数据转发故障。
与上述数据转发方法相对应的,本公开实施例还提供了一种数据转发装置,如图4所示,为上述数据转发装置的结构示意图,该装置包括:
会话建立模块401,用于与保护链路的Q节点建立会话,Q节点为以保护链路的末端节点为根节点建立的最短路径树的最外层节点;
接收模块402,用于接收Q节点发送的标签报文,其中,标签报文中包括Q节点为Q节点的上一跳节点分配的目标标签;
生成模块403,用于根据目标标签,生成备份标签栈;
转发模块404,用于当保护链路发生故障时,根据备份标签栈,确定备份链路,通过备份链路转发待传输数据。
一种实现方式中,会话建立模块401,具体用于:
确定保护链路的Q节点;
向Q节点发送会话建立报文,以使Q节点在确定自身为保护链路的Q节点的情况下,回应会话建立报文,与源端节点建立会话。
一种实现方式中,会话建立报文为携带标识信息的基于标签分发协议的远端Hello报文;标签报文为基于标签分发协议的Label Mapping报文。
一种实现方式中,生成模块403,具体用于:
获取保护链路的P节点的节点标签,作为备份标签栈的第一层标签;
获取P节点与Q节点之间的邻接标签,作为备份标签栈的第二层标签;
将目标标签作为备份标签栈的第三层标签,得到备份标签栈。
一种实现方式中,转发模块404,具体用于:
根据第一层标签,将待传输数据发送至P节点,以使P节点根据第二层标签,将待传输数据发送至Q节点,并使Q节点根据第三层标签,将待传输数据发送至目的节点。
由以上可见,本公开实施例提供的数据转发装置,源端节点在生成备份标签栈时,可以通过Q节点发送的标签报文确定Q节点为其上一跳节点分配的目标标签,当Q节点接收到待传输数据时,可以根据目标标签确定自身的标签,进而将待传输数据转发至为Q节点分配标签的下一节点,避免了数据转发故障。
本公开实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:
与目标节点对应的Q节点建立会话;
与保护链路的Q节点建立会话,Q节点为以保护链路的末端节点为根节点建立的最短路径树的最外层节点;
接收Q节点发送的标签报文,其中,标签报文中包括Q节点为Q节点的上一跳节点分配的目标标签;
根据目标标签,生成备份标签栈;
当保护链路发生故障时,根据备份标签栈,确定备份链路,通过备份链路转发待传输数据。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
由以上可见,应用本公开实施例提供的数据转发方法,源端节点在生成备份标签栈时,可以通过Q节点发送的标签报文确定Q节点为其上一跳节点分配的目标标签,当Q节点接收到待传输数据时,可以根据目标标签确定自身的标签,进而将待传输数据转发至为Q节点分配标签的下一节点,不会导致转发故障。
在本公开提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的数据转发方法。
在本公开提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的数据转发方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例和存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本公开的较佳实施例而已,并非用于限定本公开的保护范围。凡在本公开的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本公开的保护范围内。
Claims (13)
1.一种数据转发方法,应用于保护链路的源端节点,所述保护链路采用标签分发协议分配标签,其特征在于,所述方法包括:
与所述保护链路的Q节点建立会话,所述Q节点为以所述保护链路的末端节点为根节点建立的最短路径树的最外层节点;
接收所述Q节点发送的标签报文,其中,所述标签报文中包括所述Q节点为所述Q节点的上一跳节点分配的目标标签;
根据所述目标标签,生成备份标签栈;
当所述保护链路发生故障时,根据所述备份标签栈,确定备份链路,通过所述备份链路转发待传输数据。
2.根据权利要求1所述的方法,其特征在于,所述与所述保护链路的Q节点建立会话,包括:
确定所述保护链路的Q节点;
向所述Q节点发送会话建立报文,以使所述Q节点在确定自身为所述保护链路的Q节点的情况下,回应所述会话建立报文,与所述源端节点建立会话。
3.根据权利要求2所述的方法,其特征在于,所述会话建立报文为携带标识信息的基于标签分发协议的远端Hello报文;所述标签报文为基于标签分发协议的Label Mapping报文。
4.根据权利要求1所述的方法,其特征在于,所述根据所述目标标签,生成备份标签栈,包括:
获取所述保护链路的P节点的节点标签,作为所述备份标签栈的第一层标签;
获取所述P节点与所述Q节点之间的邻接标签,作为所述备份标签栈的第二层标签;
将所述目标标签作为所述备份标签栈的第三层标签,得到所述备份标签栈。
5.根据权利要求4所述的方法,其特征在于,所述根据所述备份标签栈,确定备份链路,通过所述备份链路转发待传输数据,包括:
根据所述第一层标签,将待传输数据发送至所述P节点,以使所述P节点根据所述第二层标签,将所述待传输数据发送至所述Q节点,并使所述Q节点根据所述第三层标签,将所述待传输数据发送至目的节点。
6.一种数据转发装置,应用于保护链路的源端节点,所述保护链路采用标签分发协议分配标签,其特征在于,所述装置包括:
会话建立模块,用于与所述保护链路的Q节点建立会话,所述Q节点为以所述保护链路的末端节点为根节点建立的最短路径树的最外层节点;
接收模块,用于接收所述Q节点发送的标签报文,其中,所述标签报文中包括所述Q节点为所述Q节点的上一跳节点分配的目标标签;
生成模块,用于根据所述目标标签,生成备份标签栈;
转发模块,用于当所述保护链路发生故障时,根据所述备份标签栈,确定备份链路,通过所述备份链路转发待传输数据。
7.根据权利要求6所述的装置,其特征在于,所述会话建立模块,具体用于:
确定所述保护链路的Q节点;
向所述Q节点发送会话建立报文,以使所述Q节点在确定自身为所述保护链路的Q节点的情况下,回应所述会话建立报文,与所述源端节点建立会话。
8.根据权利要求7所述的装置,其特征在于,所述会话建立报文为携带标识信息的基于标签分发协议的远端Hello报文;所述标签报文为基于标签分发协议的Label Mapping报文。
9.根据权利要求6所述的装置,其特征在于,所述生成模块,具体用于:
获取所述保护链路的P节点的节点标签,作为所述备份标签栈的第一层标签;
获取所述P节点与所述Q节点之间的邻接标签,作为所述备份标签栈的第二层标签;
将所述目标标签作为所述备份标签栈的第三层标签,得到所述备份标签栈。
10.根据权利要求9所述的装置,其特征在于,所述转发模块,具体用于:
根据所述第一层标签,将待传输数据发送至所述P节点,以使所述P节点根据所述第二层标签,将所述待传输数据发送至所述Q节点,并使所述Q节点根据所述第三层标签,将所述待传输数据发送至目的节点。
11.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-5任一所述的方法步骤。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-5任一所述的方法步骤。
13.一种计算机程序产品,其特征在于,所述计算机程序产品在计算机上运行时,实现权利要求1-5任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910217375.6A CN109889441B (zh) | 2019-03-21 | 2019-03-21 | 一种数据转发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910217375.6A CN109889441B (zh) | 2019-03-21 | 2019-03-21 | 一种数据转发方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109889441A true CN109889441A (zh) | 2019-06-14 |
CN109889441B CN109889441B (zh) | 2021-05-14 |
Family
ID=66933483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910217375.6A Active CN109889441B (zh) | 2019-03-21 | 2019-03-21 | 一种数据转发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109889441B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111953592A (zh) * | 2020-07-31 | 2020-11-17 | 新华三技术有限公司 | 等价链路收敛方法及装置 |
CN111970196A (zh) * | 2020-06-30 | 2020-11-20 | 新华三技术有限公司 | 一种建立备份路径、切换备份路径的方法和路由设备 |
CN112134763A (zh) * | 2020-09-25 | 2020-12-25 | 北京浪潮数据技术有限公司 | 一种集群节点间分层消息传输方法、系统、设备及介质 |
CN113691447A (zh) * | 2021-08-23 | 2021-11-23 | 烽火通信科技股份有限公司 | 一种sr本地防微环的方法和装置 |
CN113691445A (zh) * | 2020-05-18 | 2021-11-23 | 华为技术有限公司 | 报文转发备份路径确定方法及相关设备 |
WO2021233168A1 (zh) * | 2020-05-19 | 2021-11-25 | 华为技术有限公司 | 一种报文发送的方法和装置 |
WO2022267513A1 (zh) * | 2021-06-22 | 2022-12-29 | 华为技术有限公司 | 一种确定节点设备之间的备份路径的方法、装置及设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101960786A (zh) * | 2007-12-31 | 2011-01-26 | 北方电讯网络有限公司 | 使用链路状态协议受控以太网网络的mpls p节点替换 |
CN102315967A (zh) * | 2011-09-19 | 2012-01-11 | 中兴通讯股份有限公司 | 一种组播标签交换路径的中间节点保护方法及装置 |
WO2012062386A1 (en) * | 2010-11-11 | 2012-05-18 | Telefonica, S.A. | A method and a system for managing transit connectivity failures in a ip/mpls network, and access node for such a system |
CN106161246A (zh) * | 2016-06-15 | 2016-11-23 | 杭州华三通信技术有限公司 | 备用路由的实现方法及装置 |
CN107666436A (zh) * | 2016-07-27 | 2018-02-06 | 中兴通讯股份有限公司 | 报文转发方法及装置 |
CN108768796A (zh) * | 2018-08-28 | 2018-11-06 | 新华三技术有限公司合肥分公司 | 链路故障检测方法及装置 |
CN108768788A (zh) * | 2018-06-26 | 2018-11-06 | 新华三技术有限公司合肥分公司 | 路径故障检测方法及装置 |
-
2019
- 2019-03-21 CN CN201910217375.6A patent/CN109889441B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101960786A (zh) * | 2007-12-31 | 2011-01-26 | 北方电讯网络有限公司 | 使用链路状态协议受控以太网网络的mpls p节点替换 |
WO2012062386A1 (en) * | 2010-11-11 | 2012-05-18 | Telefonica, S.A. | A method and a system for managing transit connectivity failures in a ip/mpls network, and access node for such a system |
CN102315967A (zh) * | 2011-09-19 | 2012-01-11 | 中兴通讯股份有限公司 | 一种组播标签交换路径的中间节点保护方法及装置 |
CN106161246A (zh) * | 2016-06-15 | 2016-11-23 | 杭州华三通信技术有限公司 | 备用路由的实现方法及装置 |
CN107666436A (zh) * | 2016-07-27 | 2018-02-06 | 中兴通讯股份有限公司 | 报文转发方法及装置 |
CN108768788A (zh) * | 2018-06-26 | 2018-11-06 | 新华三技术有限公司合肥分公司 | 路径故障检测方法及装置 |
CN108768796A (zh) * | 2018-08-28 | 2018-11-06 | 新华三技术有限公司合肥分公司 | 链路故障检测方法及装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691445A (zh) * | 2020-05-18 | 2021-11-23 | 华为技术有限公司 | 报文转发备份路径确定方法及相关设备 |
WO2021233168A1 (zh) * | 2020-05-19 | 2021-11-25 | 华为技术有限公司 | 一种报文发送的方法和装置 |
CN111970196A (zh) * | 2020-06-30 | 2020-11-20 | 新华三技术有限公司 | 一种建立备份路径、切换备份路径的方法和路由设备 |
CN111970196B (zh) * | 2020-06-30 | 2022-10-21 | 新华三技术有限公司 | 一种建立备份路径、切换备份路径的方法和路由设备 |
CN111953592A (zh) * | 2020-07-31 | 2020-11-17 | 新华三技术有限公司 | 等价链路收敛方法及装置 |
CN111953592B (zh) * | 2020-07-31 | 2022-07-12 | 新华三技术有限公司 | 等价链路收敛方法及装置 |
CN112134763A (zh) * | 2020-09-25 | 2020-12-25 | 北京浪潮数据技术有限公司 | 一种集群节点间分层消息传输方法、系统、设备及介质 |
WO2022267513A1 (zh) * | 2021-06-22 | 2022-12-29 | 华为技术有限公司 | 一种确定节点设备之间的备份路径的方法、装置及设备 |
CN113691447A (zh) * | 2021-08-23 | 2021-11-23 | 烽火通信科技股份有限公司 | 一种sr本地防微环的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109889441B (zh) | 2021-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109889441A (zh) | 一种数据转发方法及装置 | |
US8842522B2 (en) | Incremental deployment of MRT based IPFRR | |
CN101953124B (zh) | 在数据通信网络中构造绕过多条不可用链路的修复路径 | |
CN101099086B (zh) | 用于在数据通信网络中构造绕过不可用组件的修复路径的方法和装置 | |
US6987727B2 (en) | Automatic protection switching using link-level redundancy supporting multi-protocol label switching | |
US9794167B2 (en) | Bicasting using non-congruent paths in a loop-free routing topology having routing arcs | |
EP2761832B1 (en) | Optimizing endpoint selection of mrt-frr detour paths | |
US8456982B2 (en) | System and method for fast network restoration | |
US9258208B2 (en) | Multiple path availability between walkable clusters | |
US8780696B2 (en) | System and method of implementing lightweight not-via IP fast reroutes in a telecommunications network | |
CN109873760A (zh) | 处理路由的方法和装置、以及数据传输的方法和装置 | |
CN109617803B (zh) | 一种转发表项生成方法、装置及设备 | |
CN113746729B (zh) | 绑定段标识的处理方法及设备 | |
US9154412B2 (en) | Multicast label distribution protocol over a remote loop-free alternative | |
CN111698152B (zh) | 一种故障保护方法、节点及存储介质 | |
CN103891220A (zh) | 使用ldp的mpls快速重新路由(ldp-frr) | |
CN111885630B (zh) | 数据传输方法及通信装置 | |
US12034632B2 (en) | Fault protection method, node, and storage medium | |
CN114513452B (zh) | 转发报文的方法、装置、计算机设备及存储介质 | |
CN115134283A (zh) | 一种环网保护方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230629 Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd. Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466 Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |