发明内容
本发明实施例提供一种节点保护方法和装置,以有助于减轻LSP上的节点失效对数据传输的影响。
本发明实施例第一方面提供一种节点保护方法,包括:
第一节点向第一LSP的传送方向发送第一请求消息,所述第一请求消息用于请求第二节点的标识,所述第二节点是所述第一LSP的传送方向上第一个接收到所述第一请求消息的未失效的节点;
所述第一节点接收所述第二节点发送的第一响应消息,所述第一响应消息为所述第一请求消息的响应,所述第一响应消息中包含所述第二节点的标识;
所述第一节点确定所述第二节点为所述第一节点在所述第一LSP上的下一跳节点。
结合第一方面,在第一种可能的实现方式中,所述第一节点确定所述第二节点为所述第一节点在所述第一LSP上的下一跳节点,包括:
所述第一节点获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;
所述第一节点确定所述第一LSP在所述第一节点上的出口标签为所述第一LSP在所述第二节点上的入口标签;
所述第一节点确定所述第一节点在所述第一LSP上的下一跳节点的地址为所述第二节点上对应所述第一LSP的地址。
结合第一种可能的实现方式,在第二种可能的实现方式中,若所述第二节点的标识为第二节点的非地址信息,所述第一节点获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签,包括:
所述第一节点接收并存储网管设备发送的所述第一LSP上所述第一节点的下游各节点的标识,所述标识对应的入口标签,以及所述标识对应所述第一LSP的地址;
所述第一节点根据所述第二节点的标识以及接收的所述下游各节点的标识、所述标识对应的入口标签、所述标识对应所述第一LSP的地址,确定所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第三种可能的实现方式中,若所述第二节点的标识为第二节点的非地址信息,所述第一响应消息中还包括所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;
相应地,所述第一节点获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签,包括:
所述第一节点从所述第一响应消息中获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第四种可能的实现方式中,若所述第二节点的标识为第二节点上对应所述第一LSP的地址,所述第一节点获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签,包括:
所述第一节点接收并存储网管设备发送的所述第一LSP上所述第一节点的下游各节点上对应所述第一LSP的地址以及所述地址对应的入口标签;
所述第一节点根据所述第二节点的标识、接收到的所述下游各节点上对应所述第一LSP的地址以及所述地址对应的入口标签,确定所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第五种可能的实现方式中,若所述第二节点的标识为第二节点上对应所述第一LSP的地址,所述第一响应消息中还包括所述第一LSP在所述第二节点上的入口标签;
相应地,所述第一节点获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签,包括:
所述第一节点从所述第一响应消息中获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第六种可能的实现方式中,若所述第二节点的标识为第二节点的非地址信息,所述第一节点获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签,包括:
所述第一节点向所述第二节点发送第二请求消息,所述第二请求消息用于请求所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;
所述第一节点接收所述第二节点发送的第二响应消息,所述第二响应消息为所述第二请求消息的响应,所述第二响应消息中携带所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;
所述第一节点从所述第二响应消息中获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第六种可能的实现方式,在第七种可能的实现方式中,所述第二请求消息中携带所述第一节点上对应第二LSP的地址和所述第二LSP在所述第一节点上的入口标签,其中,所述第二LSP是所述第一LSP的反向LSP。
结合第一方面或第一种至第七种可能的实现方式中任一种可能的实现方式,在第八种可能的实现方式中,所述第二节点的标识包括:第二节点标识(Identifier,ID)、第二板位ID、第二子卡ID和第二端口ID。
本发明实施例第二方面提供一种节点保护装置,所述节点保护装置为第一节点,包括:
发送模块,用于向第一LSP的传送方向发送第一请求消息,所述第一请求消息用于请求第二节点的标识,所述第二节点是所述第一LSP的传送方向上第一个接收到所述第一请求消息的未失效的节点;
接收模块,用于接收所述第二节点发送的第一响应消息,所述第一响应消息为所述第一请求消息的响应,所述第一响应消息中包含所述第二节点的标识;
处理模块,用于确定所述第二节点为所述第一节点在所述第一LSP上的下一跳节点。
结合第二方面,在第一种可能的实现方式中,所述处理模块包括:第一处理单元,用于获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;
第二处理单元,用于确定所述第一LSP在所述第一节点上的出口标签为所述第一LSP在所述第二节点上的入口标签;确定所述第一节点在所述第一LSP上的下一跳节点的地址为所述第二节点上对应所述第一LSP的地址。
结合第一种可能的实现方式,在第二种可能的实现方式中,若所述第二节点的标识为第二节点的非地址信息,所述第一处理单元具体用于接收并存储网管设备发送的所述第一LSP上所述第一节点的下游各节点的标识,所述标识对应的入口标签,以及所述标识对应所述第一LSP的地址;根据所述第二节点的标识以及接收的所述下游各节点的标识、所述标识对应的入口标签、所述标识对应所述第一LSP的地址,确定所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第三种可能的实现方式中,若所述第二节点的标识为第二节点的非地址信息,所述第一响应消息中还包括所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;
相应地,所述第一处理单元具体用于从所述第一响应消息中获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第四种可能的实现方式中,若所述第二节点的标识为第二节点上对应所述第一LSP的地址,所述第一处理单元具体用于接收并存储网管设备发送的所述第一LSP上所述第一节点的下游各节点上对应所述第一LSP的地址以及所述地址对应的入口标签;根据所述第二节点的标识、接收到的所述下游各节点上对应所述第一LSP的地址以及所述地址对应的入口标签,确定所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第五种可能的实现方式中,若所述第二节点的标识为第二节点上对应所述第一LSP的地址,所述第一响应消息中还包括所述第一LSP在所述第二节点上的入口标签;
相应地,所述第一处理单元具体用于从所述第一响应消息中获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第一种可能的实现方式,在第六种可能的实现方式中,若所述第二节点的标识为第二节点的非地址信息,所述第一处理单元具体用于向所述第二节点发送第二请求消息,所述第二请求消息用于请求所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;接收所述第二节点发送的第二响应消息,所述第二响应消息为所述第二请求消息的响应,所述第二响应消息中携带所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签;从所述第二响应消息中获取所述第二节点上对应所述第一LSP的地址和所述第一LSP在所述第二节点上的入口标签。
结合第六种可能的实现方式,在第七种可能的实现方式中,所述第二请求消息中携带所述第一节点上对应第二LSP的地址和所述第二LSP在所述第一节点上的入口标签,其中,所述第二LSP是所述第一LSP的反向LSP。
本发明实施例提供的节点保护方法和装置,通过第一节点向第一LSP的传送方向发送第一请求消息,接收到第一请求消息的第二节点向第一节点发送第一响应消息,根据第一响应消息确定第一LSP的传送方向上第一个接收到第一请求消息的未失效节点(即第二节点)为第一节点的下一跳节点(也即新的邻居节点),从而在第一LSP上的节点失效时,第一节点可自动探测第一LSP上未失效的节点并自动设置该未失效节点为第一节点在第一LSP上的下一跳节点,从而有助于减轻第一LSP上的节点失效对数据传输的影响。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明应用于MPLS标签转发的场景中,但不限于MPLS标签转发的场景。
为了便于说明,本发明以应用于MPLS标签转发的场景中为例,对本发明的技术方案进行详细的说明,MPLS中的节点可以是路由器、交换机或主机等,本发明各实施例中的节点当因为掉电、短路等原因失效后,失效节点的入端口与出端口会自动短接直通,即当节点失效之后,节点相当于一根传输线,不对数据包做任何处理。第一节点向第一LSP的传送方向发送第一请求消息,第一请求消息用于请求第二节点的标识,第二节点为第一LSP的传送方向上第一LSP的传送方向上第一个接收到第一请求消息的未失效的第二节点向第一节点发送第一响应消息,第一响应消息中携带第二节点的标识,从而根据第二响应消息确定第二节点为第一节点为第一节点在第一LSP上的下一跳节点,根据第二节点的标识确定第一LSP在第一节点上的出口标签和第一节点在第一LSP上的下一跳节点的地址,从而有助于减轻LSP上的节点失效对数据传输的影响。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1为本发明节点保护方法实施例一的流程示意图,如图1所示,本实施例的执行主体是第一节点,本实施例的方法如下:
S101:第一节点向第一LSP的传送方向发送第一请求消息。
其中,第一请求消息用于请求第二节点的标识,第二节点是指第一LSP的传送方向上第一个接收到第一请求消息的未失效的节点,在一条LSP上的不同的节点都具有不同的标识,可以通过节点的标识区分在一条LSP上的不同的节点。
举例来说,第一节点可以周期性地发送第一请求消息,也可以检测到链路故障时发送第一请求消息。
举例来说,假设第一LSP的节点依次为节点A、节点B、节点C再到节点D,节点A为第一节点,节点A向第一LSP的传送方向发送第一请求消息,由于当节点掉电后,节点的两个端口会直通,即该节点相当于一根传输线,不对数据包做任何处理,因此,若节点B未掉电,第一LSP上第一个接收到第一请求消息的未掉电的第二节点为节点B;若节点B掉电、节点C未掉电,则第一LSP的传送方向上第一个接收到第一请求消息的未掉电的第二节点为节点C;若节点B和节点C都掉电、节点D未掉电,则第一LSP的传送方向上第一个接收到第一请求消息的未掉电的第二节点为节点D。该步骤即为感知第一节点的下一跳节点的过程。
第二节点接收到第一请求消息之后,则会向第一节点发送第一响应消息,第一响应消息中携带第二节点的标识,即相当于告诉第一节点下一跳节点的标识。
在该步骤中,可选地,第一请求消息中可以包含第一节点的标识,第一节点的标识包括:第一节点ID、第一板位ID、第一子卡ID和第一端口ID。
其中,第一请求消息的报文格式可以如图2所示,图2为本发明节点保护方法实施例一的第一请求消息的报文格式图。其中,第一节点ID长度为8字节,第一板位ID长度为4字节,第一子卡ID长度为4字节,第一端口ID为4字节。
S102:第一节点接收第二节点发送的第一响应消息。
其中,第一响应消息为第一请求消息的响应,第一响应消息中包含第二节点的标识。第二节点的标识可以为非地址信息或地址;其中,非地址信息例如:第二节点的标识为第二节点ID、第二板位ID、第二子卡ID和第二端口ID;地址可以为网络协议(InternetProtocol,以下简称:IP)地址或者多媒体接入控制(Media Access Control,以下简称:MAC)地址。
第一节点接收第二节点发送的第一响应消息之后,由于第一响应消息中包含第二节点的标识,即第一节点可以获知下一跳节点的标识。
可选地,如果第一请求消息中包括了第一节点的标识,则第一响应消息中除了包含第二节点的标识之外,还可以包含第一节点的标识,如图3所示,图3为本发明节点保护方法实施例一的第一响应消息的报文格式图。其中,第二节点ID长度为8字节,第二板位ID长度为4字节,第二子卡ID长度为4字节,第二端口ID为4字节。
S103:第一节点确定第二节点为第一节点在第一LSP上的下一跳节点。
第一节点确定第二节点为第一节点在第一LSP上的下一跳节点具体的方式为:
首先第一节点获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;
然后,第一节点确定第一LSP在第一节点上的出口标签为第一LSP在第二节点上的入口标签;第一节点确定第一节点在第一LSP上的下一跳节点的地址为第二节点上对应第一LSP的地址;其中,确定第一LSP在第一节点上的出口标签与确定第一节点在第一LSP上的下一跳节点的地址没有先后执行顺序的限定。
本实施例中,通过第一节点向第一LSP的传送方向发送第一请求消息,接收到第一请求消息的第二节点向第一节点发送第一响应消息,根据第一响应消息确定第一LSP上第一个接收到第一请求消息的未失效第二节点为第一节点在第一LSP上的下一跳节点,从而在第一LSP上的节点失效时,第一节点可自动探测第一LSP上未失效的节点并自动设置该未失效节点为第一节点在第一LSP上的下一跳节点,从而有助于减轻第一LSP上的节点失效对数据传输的影响。
在上述实施例中,第一节点获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签包括但不限于以下几种实现方式:
其中,第一种实现方式为:如果第一响应消息中包含的第二节点的标识为第二节点的非地址信息,第一节点接收并存储网管设备发送的第一LSP上第一节点的下游各节点的标识、标识对应的入口标签以及标识对应第一LSP的地址,第一节点根据第二节点的标识以及接收的下游各节点的标识、标识对应的入口标签、标识对应第一LSP的地址,确定第二节点上对应第一LSP的地址和第一LSP在第二节点上入口标签。
举例来说:假设第一LSP上的节点依次为节点A、节点B、节点C和节点D,则第一LSP上第一节点(即节点A)的下游各节点分别为节点B、节点C和节点D,下游各节点上对应第一LSP的地址以IP地址为例,第一LSP上节点B对应的入口标签为100,节点B上对应第一LSP的IP地址为1.1.1.1;节点C对应的入口标签为1000,节点C上对应第一LSP的IP地址为11.11.11.11;节点D对应的入口标签为2000,节点D上对应第一LSP的IP地址为12.12.12.12。则网管设备将节点B、节点C、节点D对应的入口标签和节点B、节点C、节点D上对应第一LSP的IP地址发送到节点A。
当第一节点确定第二节点为节点B,即下一跳节点为节点B,则第一节点用节点B的标识查找上述网管设备发送的节点B、节点C、节点D对应的入口标签和节点B、节点C、节点D上对应第一LSP的IP地址,得到节点B的入口标签和节点B上对应第一LSP的IP地址,然后确定第一LSP上在第一节点的出口标签为第一LSP上节点B的入口标签100,第一节点在第一LSP上的下一跳IP地址为节点B上对应第一LSP的IP地址1.1.1.1。当节点B掉电,节点B的两个端口直通,第一节点确定第二节点为节点C,即下一跳节点为节点C,则确定第一LSP上在第一节点的出口标签为第一LSP上节点C的入口标签1000,第一节点在第一LSP上的下一跳IP地址为节点C上对应第一LSP的的IP地址11.11.11.11。当节点B和节点C都掉电,节点D未掉电时,节点B的两个端口直通,节点C的两个端口直通,第一节点确定第二节点为节点D,即下一跳节点为节点D,则第一节点确定第一LSP上在第一节点的出口标签为第一LSP上节点D的入口标签2000,第一节点在第一LSP上的下一跳IP地址为节点D上对应第一LSP的IP地址12.12.12.12。
也就是,第一种实现方式实质上是通过从网管设备发送的第一LSP上第一节点的下游各节点的入口标签和各节点对应第一LSP的地址,获知第二节点的入口标签和第二节点对应第一LSP的地址。
第二种实现方式为:若第一响应消息中第二节点的标识为第二节点的非地址信息,第一响应消息中还可以包括第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,即,第一节点可以从第一响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
第三种实现方式为:若第一响应消息中第二节点的标识为第二节点上对应第一LSP的地址,第一节点接收并存储网管设备发送的第一LSP上第一节点的下游各节点对应第一LSP的地址以及地址对应的入口标签,第一节点根据第二节点的标识、接收到的下游各节点上对应第一LSP的地址以及地址对应的入口标签,确定第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
第四种实现方式为:若第二节点的标识为第二节点上对应第一LSP的地址,第一响应消息中还可以包括第一LSP在第二节点上的入口标签,相应地,第一节点从第一响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
第五种实现方式为:若第二节点的标识为第二节点的非地址信息,当第一节点接收到第二节点发送的第一响应消息之后,第一节点向第二节点发送第二请求消息,其中,第二请求消息用于请求第二节点上对应第一LSP的地址和第一LSP在上述第二节点上的入口标签;第一节点接收第二节点发送的第二响应消息,第二响应消息为第二请求消息的响应,第二响应消息中携带第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,第一节点从第二响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
第六种实现方式为:若第二节点的标识为第二节点上对应第一LSP的地址,当第一节点接收到第二节点发送的第一响应消息之后,第一节点向第二节点发送第二请求消息,其中,第二请求消息用于请求第一LSP在上述第二节点上的入口标签,第一节点接收第二节点发送的第二响应消息,第二响应消息为第二请求消息的响应,第二响应消息中携带第一LSP在第二节点上的入口标签,第一节点从第一响应消息中获取第二节点上对应第一LSP的地址,从第二响应消息中获取第一LSP在第二节点上的入口标签。
在第五种实现方式或第六种实现方式中,第二请求消息中还可以携带第一节点上对应第二LSP的地址和第二LSP在第一节点上的入口标签,上述第二LSP是第一LSP的反向LSP。例如:第一LSP的首节点为节点A,末节点为节点D,第一LSP的路径上依次有节点A、节点B、节点C和节点D,那么,第二LSP的首节点为节点D,末节点为节点A、第二LSP的路径上依次有节点D、节点C、节点B和节点A。第二节点接收到第一节点上对应第二LSP的地址和第二LSP在第一节点上的入口标签之后,确定第二LSP在第二节点上的出口标签为第二LSP在第一节点上的入口标签,第二节点在第二LSP上的下一跳地址为第一节点上对应第二LSP的地址。
进一步地,第二请求消息中还可以携带第一节点的标识、第二节点的标识和第一LSP的标识号。
更进一步地,第二请求消息中还可以携带第一协议类型,第一协议类型为请求类型。
如图4所示,图4为本发明节点保护方法实施例一的第二请求消息的报文格式图,其中,第一节点的标识的长度为4字节,第二节点的标识的长度为4字节,第一LSP标识号的长度为4字节,第一协议类型长度为4字节,第二LSP在第一节点上的入口标签长度为4字节,第一节点上对应第二LSP的地址长度为6字节。
第二节点接收到第一节点发送的第二请求消息之后,向第一节点发送第二响应消息,第二响应消息中携带第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
进一步地,第二响应消息中还携带第一节点的标识、第二节点的标识、第二LSP的标识号以及第二LSP在第一节点的入口标签,第一节点接收到第二响应消息之后,可以通过判断第二响应消息中的第二节点发送的第一节点上对应第二LSP的地址和第二LSP在第一节点的入口标签是否与第一请求消息中的第一节点上对应第二LSP的地址和第二LSP在第一节点的入口标签相同,若是,则执行S103,确定第二节点为第一节点在第一LSP上的下一跳节点,若否,则丢弃上述第二响应消息。
更进一步地,第二响应消息中还可以包含第二协议类型,第二协议类型为应答类型。
如图5所示,图5为本发明节点保护方法实施例一的第二响应消息的报文格式图,其中,第二节点的标识的长度为4字节,第一节点的标识的长度为4字节,第二LSP标识号的长度为4字节,第二协议类型长度为4字节,第二LSP在第一节点上的入口标签长度为5字节,第一节点上对应第二LSP的地址长度为6字节,第一LSP在第二节点上的入口标签长度为4字节,第二节点上对应第一LSP的地址长度为6字节。
也就是,第五种实现方式实质上是通过第一节点向第二节点发送第二请求消息的方式请求获取第二节点对应第一LSP的地址和第一LSP在第二节点上的入口标签,第二节点通过第二响应消息将第二节点对应第一LSP的地址和第一LSP在第二节点上的入口标签告知第一节点,从而,第一节点确定第二节点上对应第一LSP的地址和第一LSP在第二节点上入口标签。
采用上几种实现方式确定第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,无需人工指定,大大减少了在节点失效时用户配置的工作量,从而,有助于减轻LSP上的节点失效对数据传输的影响。
图6为本发明节点保护方法实施例二的流程示意图,如图6所示,本实施例的执行主体是第二节点,本实施例的方法如下:
S601:第二节点接收第一节点发送的第一请求消息。
其中,第一节点为第一LSP上第二节点的上游节点,第一请求消息用于请求第二节点的标识,第二节点是第一LSP的传送方向上的第一个接收到第一请求消息的未失效的第二节点的标识。
S602:第二节点向第一节点发送第一响应消息。
其中,第一响应消息为第一请求消息的响应,第一响应消息中包含第二节点的标识,第一节点根据第二节点的标识确定第一节点在第一LSP上的下一跳节点。
本实施例中,通过第二节点接收第一节点发送的第一请求消息,并向第一节点发送第一响应消息,由于第一响应消息中携带第二节点的标识,因此,第一节点可根据第二节点的标识确定下一跳节点,从而,有助于减轻LSP上的节点失效对数据传输的影响。
当第一节点采用图1所示实施例中的第五种实现方式获取第二节点的入口标签和地址时,相应地,第二节点接收第一节点发送的第二请求消息,第二请求消息用于请求第二节点上对应第一LSP的地址和第一LSP在上述第二节点上的入口标签;第二节点向第一节点发送的第二响应消息,第二响应消息为第二请求消息的响应,第二响应消息中携带第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,第一节点从第二响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
当第一节点采用图1所示实施例中的第六种实现方式获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签时,相应地,第二节点接收第一节点发送第二请求消息,其中,第二请求消息用于请求第一LSP在上述第二节点上的入口标签,第二节点向第一节点发送的第二响应消息,第二响应消息中携带第一LSP在第二节点上的入口标签,第一节点从第一响应消息中获取第二节点上对应第一LSP的地址,从第二响应消息中获取第一LSP在第二节点上的入口标签。
在上述实施例中,第二请求消息中还可以携带第一节点上对应第二LSP的地址和第二LSP在第一节点的入口标签,上述第二LSP是第一LSP的反向LSP。例如:第一LSP的首节点为节点A,末节点为节点D,第一LSP的路径上依次有节点A、节点B、节点C和节点D,那么,第二LSP的首节点为节点D,末节点为节点A、第二LSP的路径上依次有节点D、节点C、节点B和节点A。
进一步地,第二请求消息中还携带第一节点的标识、第二节点的标识和第一LSP的标识号。
更进一步地,第二请求消息中还可以携带第一协议类型,第一协议类型为请求类型。
关于第二请求消息携带的内容和报文格式,请参考实施例一中的相关描述并参考图4;关于第二响应消息携带的内容和报文格式,请参考实施例一中的相关描述并参考图5,在此不再赘述。
采用上几种实现方式确定第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,无需人工指定,大大减少了在节点失效时用户配置的工作量,从而,有助于减轻LSP上的节点失效对数据传输的影响。
图7为本发明节点保护装置实施例一的结构示意图,本实施例的节点保护装置为第一节点,本实施例的装置包括发送模块701、接收模块702和处理模块703,其中,发送模块701用于向第一LSP的传送方向发送第一请求消息,上述第一请求消息用于请求第二节点的标识,上述第二节点是上述第一LSP的传送方向上第一个接收到上述第一请求消息的未失效的节点;接收模块702用于接收上述第二节点发送的第一响应消息,第一响应消息为第一请求消息的响应,上述第一响应消息中包含上述第二节点的标识;处理模块703用于确定上述第二节点为上述第一节点在上述第一LSP上的下一跳节点。
本实施例的装置对应的可执行图1上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在上述实施例中,处理模块703包括:第一处理单元和第二处理单元,其中,第一处理单元,用于获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;第二处理单元,用于确定第一LSP在第一节点上的出口标签为第一LSP在第二节点上的入口标签;确定第一节点在第一LSP上的下一跳节点的地址为第二节点上对应第一LSP的地址。
在上述实施例中,若第二节点的标识为第二节点的非地址信息,第一处理单元具体用于接收并存储网管设备发送的第一LSP上第一节点的下游各节点的标识,标识对应的入口标签,以及标识对应第一LSP的地址;根据第二节点的标识以及接收的下游各节点的标识、标识对应的入口标签、标识对应第一LSP的地址,确定第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在上述实施例中,若第二节点的标识为第二节点的非地址信息,第一响应消息中还包括第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;
相应地,第一处理单元具体用于从第一响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在上述实施例中,若第二节点的标识为第二节点上对应第一LSP的地址,第一处理单元具体用于接收并存储网管设备发送的第一LSP上第一节点的下游各节点上对应第一LSP的地址以及地址对应的入口标签;根据第二节点的标识、接收到的下游各节点上对应第一LSP的地址以及地址对应的入口标签,确定第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在上述实施例中,若第二节点的标识为第二节点上对应第一LSP的地址,第一响应消息中还包括第一LSP在第二节点上的入口标签;相应地,第一处理单元具体用于从第一响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在上述实施例中,若第二节点的标识为第二节点的非地址信息,第一处理单元具体用于向第二节点发送第二请求消息,第二请求消息用于请求第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;接收第二节点发送的第二响应消息,第二响应消息为第二请求消息的响应,第二响应消息中携带第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;从第二响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在上述实施例中,第二请求消息中携带第一节点上对应第二LSP的地址和第二LSP在第一节点上的入口标签,其中,第二LSP是第一LSP的反向LSP。
本发明实施例还提供了一种节点保护装置900,如图8所示,该节点保护装置900包括:总线940;以及连接到总线940的处理器910、存储器920和接口930,其中该接口930用于接收其他设备发送的消息或者向其他设备发送消息,例如,向第一LSP的传送方向发送第一请求消息;或者,接收第二节点发送的第一响应消息。该存储器920用于存储指令,该处理器910用于执行该指令,其中,该指令包括:向第一LSP的传送方向发送第一请求消息,第一请求消息用于请求第二节点的标识,第二节点是第一LSP的传送方向上第一个接收到第一请求消息的未失效的节点;接收第二节点发送的第一响应消息,第一响应消息为第一请求消息的响应,第一响应消息中包含第二节点的标识;确定第二节点为第一节点在第一LSP上的下一跳节点。
在本发明实施例中,可选地,该处理器910执行确定第二节点为第一节点在第一LSP上的下一跳节点,包括:
获取获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;确定第一LSP在第一节点上的出口标签为第一LSP在第二节点上的入口标签;确定第一节点在第一LSP上的下一跳节点的地址为第二节点上对应第一LSP的地址。
在本发明实施例中,可选地,若第二节点的标识为第二节点的非地址信息,该处理器910执行获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,包括:
接收并存储网管设备发送的第一LSP上第一节点的下游各节点的标识,标识对应的入口标签,以及标识对应第一LSP的地址;
根据第二节点的标识以及接收的下游各节点的标识、标识对应的入口标签、标识对应第一LSP的地址,确定第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在本发明实施例中,可选地,若第二节点的标识为第二节点的非地址信息,该处理器910执行获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,包括:
从第一响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在本发明实施例中,可选地,若第二节点的标识为第二节点上对应第一LSP的地址,该处理器910执行获取获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,包括:
接收并存储网管设备发送的第一LSP上第一节点的下游各节点上对应第一LSP的地址以及地址对应的入口标签;
根据第二节点的标识、接收到的下游各节点上对应第一LSP的地址以及地址对应的入口标签,确定第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在本发明实施例中,可选地,若第二节点的标识为第二节点上对应第一LSP的地址,第一响应消息中还包括第一LSP在第二节点上的入口标签;该处理器910执行获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,包括:
从第一响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
在本发明实施例中,可选地,若第二节点的标识为第二节点的非地址信息,该处理器910执行获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签,包括:
向第二节点发送第二请求消息,第二请求消息用于请求请求第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;
接收第二节点发送的第二响应消息,第二响应消息为第二请求消息的响应,第二响应消息中携带第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签;
从第二响应消息中获取第二节点上对应第一LSP的地址和第一LSP在第二节点上的入口标签。
因此,本发明实施例的节点保护装置,通过向第一LSP的传送方向发送第一请求消息,接收到第一请求消息的第二节点向第一节点发送第一响应消息,根据第一响应消息确定第一LSP上第一个接收到第一请求消息的未失效第二节点为第一节点在第一LSP上的下一跳节点,从而在第一LSP上的节点失效时,第一节点可自动探测第一LSP上未失效的节点并自动设置该未失效节点为第一节点在第一LSP上的下一跳节点,从而有助于减轻第一LSP上的节点失效对数据传输的影响。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。