CN113438158B - 一种报文转发方法及装置 - Google Patents
一种报文转发方法及装置 Download PDFInfo
- Publication number
- CN113438158B CN113438158B CN202110741538.8A CN202110741538A CN113438158B CN 113438158 B CN113438158 B CN 113438158B CN 202110741538 A CN202110741538 A CN 202110741538A CN 113438158 B CN113438158 B CN 113438158B
- Authority
- CN
- China
- Prior art keywords
- network device
- standby
- entry
- address
- srv6
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/34—Source routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种报文转发方法及装置,涉及网络技术领域,应用于第一网络设备,上述方法包括:通过第一接口接收到SRv6报文后,将SRv6报文的目的地址变更为第二SID中包含的地址。若确定第二SID对应第二网络设备,且第二网络设备发生故障,对第一接口使能第一网络设备存储的第一备用ACL表项与第一备用路由表项。根据SRv6报文的目的地址,查找与上述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将SRv6报文传输至环回口。根据SRv6报文的目的地址,查找与目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将SRv6报文的目的地址变更为第三SID中包含的第三地址。转发SRv6报文。应用本发明实施例提供的方案可以减少SRv6报文的转发错误。
Description
技术领域
本发明涉及网络技术领域,特别是涉及一种报文转发方法及装置。
背景技术
网络运行过程中,网络设备可能发生故障,导致网络设备在接收到报文之后不能完成报文转发,如,上述报文为:SRv6(Segment Routing IPv6,分段路由第六代互联网协议)报文。为保障SRv6报文能够被传输至目的网络设备,当在报文转发路径中位于故障网络设备之前的第一网络设备接收到SRv6报文时,第一网络设备一般选择向故障网络设备之外的其他网络设备转发SRv6报文,也就是第一网络设备需要改变报文转发路径。
例如,参见图1,提供了一种网络结构示意图。上述网络包括网络设备L-网络设备R。若网络设备M接收到SRv6报文,SRv6报文的目的网络设备为网络设备R,此时网络设备P发生了故障,因此,若网络设备M将报文转发至网络设备P,会导致报文转发失败。这种情况下一条可行的报文转发路径是:网络设备M将SRv6报文转发至网络设备N、网络设备N将SRv6报文转发至网络设备Q、网络设备Q再将SRv6报文转发至网络设备R。
现有技术中,在确定故障网络设备发生故障之后,用户可以向第一网络设备下发指示第一网络设备改变报文转发路径的ACL表项,以使得第一网络设备能够基于新下发的ACL表项进行SRv6报文转发,从而绕过故障网络设备,将SRv6报文转发至目的网络设备。但向第一网络设备下发表项需要较长的时间,在这段时间内,若第一网络设备接收到SRv6报文依旧会将SRv6报文转发给故障网络设备,造成SRv6报文转发错误。
发明内容
本发明实施例的目的在于提供一种报文转发方法及装置,以减少SRv6报文的转发错误。具体技术方案如下:
第一方面,本发明实施例提供了一种报文转发方法,应用于第一网络设备,所述方法包括;
通过第一接口接收到SRv6报文后,将所述SRv6报文的目的地址变更为第二SID中包含的地址,所述第二SID为:所述SRv6报文的段列表中、所述第一网络设备对应的第一SID的下一个SID;
若确定所述第二SID对应第二网络设备,且第二网络设备发生故障,对所述第一接口使能所述第一网络设备存储的第一备用ACL表项与第一备用路由表项,其中,所述第一备用ACL表项与第一备用路由表项中均记录有所述第二网络设备的第二地址;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址,所述第三SID为:所述段列表中所述第二SID的下一个SID;
转发所述SRv6报文。
本发明的一个实施例中,所述第一备用路由表项与第一备用ACL表项记录于备用VRF表中,所述对所述第一接口使能所述第一网络设备存储的第一备用ACL表项与第一备用路由表项,包括:
将所述备用VRF表的索引调整为所述第一接口对应的预设索引;
在所述根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将所述SRv6报文传输至所述环回口之前,还包括:
按照所述预设索引,从所述备用VRF表中获取第一备用路由表项与第一备用ACL表项。
本发明的一个实施例中,所述将所述SRv6报文的目的地址变更为第二SID中包含的地址,包括:
通过所述第一网络设备中的流水线,将所述SRv6报文的目的地址变更为第二SID中包含的地址,其中,所述流水线为:所述第一网络设备中包含的数据处理器件组成的数据处理链路;
所述按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址,包括:
按照所命中的第一备用ACL表项,通过所述流水线,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址。
本发明的一个实施例中,在所述根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址之后,所述方法还包括:
对所述第一接口使能所述第一网络设备存储的第二备用ACL表项与第二备用路由表项,其中,所述第二备用ACL表项与第二备用路由表项中均记录有所述第三地址;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第二备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第二备用ACL表项,将所述SRv6报文的目的地址变更为目标链路的地址,并在所述SRv6报文中增加外层SRH,其中,所述目标链路为:第四网络设备的直连链路中与所述第一网络设备不相连的链路,所述第四网络设备为:所述第二网络设备之外的、与所述第一网络设备直连的网络设备,所述外层SRH中包含:记录有所述第三地址的SID。
第二方面,本发明实施例提供了一种报文转发装置,应用于第一网络设备,所述装置包括:
第一地址变更模块,用于通过第一接口接收到SRv6报文后,将所述SRv6报文的目的地址变更为第二SID中包含的地址,所述第二SID为:所述SRv6报文的段列表中、所述第一网络设备对应的第一SID的下一个SID;
第一表项使能模块,用于若确定所述第二SID对应第二网络设备,且第二网络设备发生故障,对所述第一接口使能所述第一网络设备存储的第一备用ACL表项与第一备用路由表项,其中,所述第一备用ACL表项与第一备用路由表项中均记录有所述第二网络设备的第二地址;
第一报文环回模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
第二地址变更模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址,所述第三SID为:所述段列表中所述第二SID的下一个SID;
报文转发模块,用于转发所述SRv6报文。
本发明的一个实施例中,所述第一备用路由表项与第一备用ACL表项记录于备用VRF表中,所述第一表项使能模块,具体用于:
若确定所述第二SID对应的第二网络设备发生故障,将所述备用VRF表的索引调整为所述第一接口对应的预设索引;
所述装置还包括:
表项获取模块,用于按照所述预设索引,从所述备用VRF表中获取第一备用路由表项与第一备用ACL表项。
本发明的一个实施例中,所述第一地址变更模块,具体用于:
通过第一接口接收到SRv6报文后,通过所述第一网络设备中的流水线,将所述SRv6报文的目的地址变更为第二SID中包含的地址,其中,所述流水线为:所述第一网络设备中包含的数据处理器件组成的数据处理链路;
所述第二地址变更模块,具体用于:
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,通过所述流水线,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址。
本发明的一个实施例中,所述装置还包括:
第二表项使能模块,用于对所述第一接口使能所述第一网络设备存储的第二备用ACL表项与第二备用路由表项,其中,所述第二备用ACL表项与第二备用路由表项中均记录有所述第三地址;
第二报文环回模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第二备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
第三地址变更模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第二备用ACL表项,将所述SRv6报文的目的地址变更为目标链路的地址,并在所述SRv6报文中增加外层SRH,其中,所述目标链路为:第四网络设备的直连链路中与所述第一网络设备不相连的链路,所述第四网络设备为:所述第二网络设备之外的、与所述第一网络设备直连的网络设备,所述外层SRH中包含:记录有所述第三地址的SID。
第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现第一方面任一所述的方法步骤。
第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面任一所述的方法步骤。
第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面任一所述的方法步骤。
本发明实施例有益效果:
本发明实施例提供的应用于第一网络设备的报文转发方法,第一网络设备在通过第一接口接收到SRv6报文后,将上述SRv6报文的目的地址变更为第二SID中包含的地址,若确定第二SID对应第二网络设备且第二网络设备发生故障,则对第一接口使能第一网络设备存储的第一备用ACL表项与第一备用路由表项,上述第一备用ACL表项与第一备用路由表项中均记录有第二网络设备的第二地址。根据SRv6报文的目的地址,查找与上述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将SRv6报文传输至上述环回口,以使得SRv6报文从环回口环回至第一接口。根据上述SRv6报文的目的地址,查找与上述目的地址匹配的路由表项,按照所命中的第一备用ACL表项,将SRv6报文的目的地址变更为第三SID中包含的第三地址,再转发SRv6报文。
由以上可见,上述第一网络设备中原本便存储有针对第二地址的第一备用ACL表项与第一备用路由表项,在第二网络设备发生故障时,直接使能上述第一备用ACL表项与第一备用路由表项,第一网络设备便可以根据上述第一备用ACL表项与第一备用路由表项处理并转发SRv6报文,使得上述SRv6报文的目的地址变更为与第二网络设备的第二地址不同的第三地址,从而绕过第二网络设备转发报文。因此不需要在第二网络设备发生故障后再下发ACL表项与路由表项,从而可以减少下发表项导致SRv6报文转发错误的问题。并且在第二网络设备发生故障之前,上述第一备选ACL表项与第一备选路由表项未被使能,因此上述第一备选ACL表项与第一备选路由表项不影响第一网络设备正常转发报文。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种网络结构示意图;
图2为本发明实施例提供的第一种报文转发方法的流程示意图;
图3为本发明实施例提供的第二种报文转发方法的流程示意图;
图4为本发明实施例提供的第三种报文转发方法的流程示意图;
图5为本发明实施例提供的第一种报文转发装置的结构示意图;
图6为本发明实施例提供的第二种报文转发装置的结构示意图;
图7为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
由于现有技术中存在向第一网络设备下发表项需要较长的时间,导致SRv6报文在上述时间内转发SRv6报文错误的问题,为解决这一问题,本发明实施例提供了一种报文转发方法及装置。
本发明实施例提供了一种报文转发方法,应用于第一网络设备,上述方法包括;
通过第一接口接收到SRv6报文后,将上述SRv6报文的目的地址变更为第二SID中包含的地址,上述第二SID为:上述SRv6报文的段列表中、上述第一网络设备对应的第一SID的下一个SID;
若确定上述第二SID对应第二网络设备,且第二网络设备发生故障,对上述第一接口使能上述第一网络设备存储的第一备用ACL表项与第一备用路由表项,其中,上述第一备用ACL表项与第一备用路由表项中均记录有上述第二网络设备的第二地址;
根据上述SRv6报文的目的地址,查找与上述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将上述SRv6报文传输至上述环回口,以使得上述SRv6报文从上述环回口环回至上述第一接口;
根据上述SRv6报文的目的地址,查找与上述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将上述SRv6报文的目的地址变更为第三SID中包含的第三地址,上述第三SID为:上述段列表中上述第二SID的下一个SID;
转发上述SRv6报文。
由以上可见,上述第一网络设备中原本便存储有针对第二地址的第一备用ACL表项与第一备用路由表项,在第二网络设备发生故障时,直接使能上述第一备用ACL表项与第一备用路由表项,第一网络设备便可以根据上述第一备用ACL表项与第一备用路由表项处理并转发SRv6报文,使得上述SRv6报文的目的地址变更为与第二网络设备的第二地址不同的第三地址,从而绕过第二网络设备转发报文。因此不需要在第二网络设备发生故障后再下发ACL表项与路由表项,从而可以减少下发表项导致SRv6报文转发错误的问题。并且在第二网络设备发生故障之前,上述第一备选ACL表项与第一备选路由表项未被使能,因此上述第一备选ACL表项与第一备选路由表项不影响第一网络设备正常转发报文。
参见图2,为本发明实施例提供的第一种报文转发方法的流程示意图,应用于第一网络设备。
具体的,上述第一网络设备可以为交换机、路由器等设备,上述第一网络设备为报文转发路径的中间节点,上述第一备用ACL表项与第一备用路由表项可以存储于配置于上述第一网络设备的ASIC(Application Specific Integrated Circuit,专用集成电路)中。
上述方法包括以下步骤S201-S205。
S201:通过第一接口接收到SRv6报文后,将上述SRv6报文的目的地址变更为第二SID中包含的地址。
其中,上述第二SID为:上述SRv6报文的段列表中、上述第一网络设备对应的第一SID的下一个SID。
具体的,上述SRv6报文中的段列表中包含不同的SID,各个SID分别与各个网络设备相对应,各个SID在段列表中的排列顺序与SID所对应的网络设备在SRv6报文的报文转发路径中的顺序相反。每一SID中记录有所对应的网络设备的地址。
上述第二SID为在上述段列表中位于上述第一SID之前,且与上述第一SID相邻的SID。上述第二SID的编号比第一SID的编号小1。
本发明的一个实施例中,上述第一SID的编号可以以SL(Segments Left,剩余段)的形式存储于SRv6报文的SRH(Segment Routing Head,分段路由头)中的SL字段内,可以将SL减1得到第二SID的编号,从而根据第二SID的编号在上述段列表中查找到第二SID,并将第二SID的编号作为新的SL存储于SRH的SL字段中。
本发明的一个实施例中,上述第一网络设备中可以存储有记录有第一网络设备的第一地址的第一ACL表项,在第一网络设备接收到SRv6报文后,可以依据上述SRv6报文的目的地址查找ACL表项,上述第一网络设备接收到的SRv6报文的目的地址为第一地址的情况下,可以命中上述第一ACL表项。则第一网络设备可以基于第一ACL表项将上述SRv6报文的目的地址变更为第二SID中包含的地址。
上述第一网络设备通过上述步骤S201对SRv6报文进行的处理可以被称为第一网络设备的中间节点终结处理。
S202:若确定上述第二SID对应第二网络设备,且第二网络设备发生故障,对上述第一接口使能上述第一网络设备存储的第一备用ACL表项与第一备用路由表项。
其中,上述第一备用ACL表项与第一备用路由表项中均记录有上述第二网络设备的第二地址。
具体的,上述第二SID对应第二网络设备,通过步骤S201上述SRv6报文的目的地址被变更为第二SID中记录的第二网络设备的第二地址,若按照正常的报文转发流程,第一网络设备可以根据上述第二地址查找路由表,根据查找到的路由表项向第二网络设备转发上述SRv6报文。但由于上述第二网络设备发生故障,因此若直接向第二网络设备转发SRv6报文会发生丢包的现象,因此需要执行步骤S202。
其中,若第一网络设备接收到表示第二网络设备发生故障的故障信息,则第一网络设备可以确定第二网络设备发生故障。上述故障信息可以是其他设备发送给第一网络设备的,也可以是用户手动输入的。
本发明的一个实施例中,可以使用第一备用ACL表项替换第一网络设备的ACL中原本存储的记录有第二地址的第一原始ACL表项,以使能上述第一备用ACL表项。则在使用第一备用ACL表项替换第一原始ACL表项之后,若上述SRv6报文的目的地址为第二地址,则可以命中上述第一备用ACL表项,依据替换后的上述第一备用ACL表项转发SRv6报文。
另外,可以使用第一备用路由表项替换第一网络设备的路由表中原本存储的记录有第二地址的第一原始路由表项,以使能上述第一备用路由表项。则在使用第一备用路由表项替换第一原始路由表项之后,若上述SRv6报文的目的地址为第二地址,则可以命中上述第一备用路由表项,依据替换后的第一备用路由表项转发SRv6报文。
本发明的另一个实施例中,上述第一备用路由表项与第一备用ACL表项可以记录于备用VRF(Virtual Routing Forwarding,虚拟路由转发)表中,则可以通过步骤A使能上述第一备用ACL表项与第一备用路由表项,在此暂不详述。
S203:根据上述SRv6报文的目的地址,查找与上述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将上述SRv6报文传输至上述环回口,以使得上述SRv6报文从上述环回口环回至上述第一接口。
具体的,由于SRv6报文的目的地址被变更为第二SID中包含的地址,第二SID对应第二网络设备,因此SRv6报文当前的目的地址是第二地址。由于上述第一备用路由表项中记录有上述第二地址,因此根据上述SRv6报文的目的地址查找路由表项可以命中上述第一备用路由表项。第一备用路由表项中记录的下一跳接口的标识可以为上述第一接口的标识,因此基于所命中的第一备用路由表项,可以将目的地址为第二地址的上述SRv6报文传输至上述环回口。
另外,将上述SRv6报文传输至环回口之后,可以将SRv6报文的目的MAC地址变更为上述第一网络设备的MAC地址,再从环回口发送上述SRv6报文,由于SRv6报文的目的MAC地址为上述第一网络设备自身的MAC地址,因此上述SRv6报文会被重新传输至上述第一接口。
S204:根据上述SRv6报文的目的地址,查找与上述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将上述SRv6报文的目的地址变更为第三SID中包含的第三地址。
其中,上述第三SID为:上述段列表中上述第二SID的下一个SID。
具体的,由于在SRv6报文环回传输的过程中目的地址并未改变,SRv6报文当前的目的地址依旧是第二地址,因此根据上述SRv6报文的目的地址可以命中记录有第二地址的第一备用ACL表项,进而可以按照所命中的第一备用ACL表项进行报文处理,第一备用ACL表项所记录的ACL动作可以为将SRv6报文的目的地址变更为第三SID的第三地址,因此基于上述第一备用ACL表项可以实现上述步骤S204。
本发明的一个实施例中,当前SRH中记录的SL为第二SID的编号,可以将当前的SL减1,得到第三SID的编号,进而可以依据上述第三SID的编号在段列表中确定得到第三SID。
若第二网络设备没有发生故障,则在第一网络设备完成步骤S101之后便可以依据第二地址将SRv6报文转发至第二网络设备,由第二网络设备将上述SRv6报文的目的地址变更为第三SID中包含的第三地址。但由于第二网络设备发生故障,因此为了能够使得SRv6报文能够被正常的转发,需要第一网络设备执行步骤S204,代理第二网络设备完成将SRv6报文的目的地址变更为第三地址的步骤。上述过程可以被称为第一网络设备代理完成中间节点终结处理。
S205:转发上述SRv6报文。
具体的,在将上述SRv6报文的目的地址变更为第三地址之后,可以根据第三地址在第一网络设备的路由表查找第三地址所匹配的路由表项,并基于所命中的路由表项向上述第三地址转发上述SRv6报文。依据路由表转发报文属于现有技术,本发明实施例对此不再赘述。
由以上可见,上述第一网络设备中原本便存储有针对第二地址的第一备用ACL表项与第一备用路由表项,在第二网络设备发生故障时,直接使能上述第一备用ACL表项与第一备用路由表项,第一网络设备便可以根据上述第一备用ACL表项与第一备用路由表项处理并转发SRv6报文,使得上述SRv6报文的目的地址变更为与第二网络设备的第二地址不同的第三地址,从而绕过第二网络设备转发报文。因此不需要在第二网络设备发生故障后再下发ACL表项与路由表项,从而可以减少下发表项导致SRv6报文转发错误的问题。并且在第二网络设备发生故障之前,上述第一备选ACL表项与第一备选路由表项未被使能,因此上述第一备选ACL表项与第一备选路由表项不影响第一网络设备正常转发报文。
本发明的一个实施例中,在上述第一备用路由表项与第一备用ACL表项记录于备用VRF的情况下,可以通过以下步骤A实现上述步骤S202。
步骤A:将上述备用VRF表的索引调整为上述第一接口对应的预设索引。
具体的,不同的VRF表具有不同的索引,第一网络设备的不同接口对应的预设索引不同,接口能够使用索引为自身对应的预设索引的VRF表。因此将上述备用VRF表的索引调整为第一接口对应的预设索引之后,第一接口便能够使用上述备用VRF表项。
在上述第二网络设备发生故障之前,上述备用VRF表的索引与第一接口的对应的预设索引不同,因此上述备用VRF表不会被上述第一接口使用,因此在第二网络设备发生故障之前,上述备用VRF表中包含的第一备用ACL表项与第一备用路由表项不会影响上述第一接口转发SRv6报文。而在上述备用VRF表的索引被调整为第一接口的预设索引之后,上述备用VRF表能够被上述第一接口使用,进而可以使能备用VRF表中的第一备用ACL表项与第一备用路由表项。
在通过步骤A使能上述第一备用ACL表项与第二备用路由表项之后,为了使得在执行下述步骤S203-S204的过程中能够使用上述第一备用ACL表项与第一备用路由表项,则在步骤S203之前还可以执行以下步骤B。
步骤B:按照上述预设索引,从上述备用VRF表中获取第一备用路由表项与第一备用ACL表项。
具体的,由于上述备用VRF表的索引被调整为上述预设索引,因此按照上述预设索引可以查找到上述备用VRF表,进而从上述备用VRF表中获取第一备用路由表项与第一备用ACL表项,从而在后续的步骤S203-S204中可以使用上述第一备用路由表项与第一备用ACL表项。
参见图3,为本发明实施例提供的第二报文转发方法的流程示意图,与前述图2所示的实施例相比,上述步骤S201可以通过以下步骤S201A实现。
S201A:通过第一接口接收到SRv6报文后,通过上述第一网络设备中的流水线,将上述SRv6报文的目的地址变更为第二SID中包含的地址。
其中,上述流水线为:上述第一网络设备中包含的数据处理器件组成的数据处理链路。
具体的,上述流水线可以为第一网络设备中的数据处理芯片内的数据处理器件组成的数据处理链路,上述数据处理芯片可以为ASIC,可以在一个流水线周期中完成上述步骤S201A。
上述S201A执行的步骤与前述步骤S201相似,本发明实施例对此不再赘述。
另外,与前述图2所示的实施例相比,上述步骤S204也可以通过以下步骤S204A实现。
S204A:根据上述SRv6报文的目的地址,查找与上述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,通过上述流水线,将上述SRv6报文的目的地址变更为第三SID中包含的第三地址。
具体的,可以通过上述流水线在一个流水线周期中完成上述步骤S204A。
上述S204A执行的步骤与前述步骤S204相似,本发明实施例对此不再赘述。
由以上可见,本发明实施例提供的方案中先在一个流水线周期中通过流水线将SRv6报文的目的地址变更为第二地址,再在第二个流水线周期中通过流水线将SRv6报文的目的地址变更为第三地址,在流水线的数据处理能力有限,难以在一个流水线周期中完成上述两个步骤的情况下,通过本发明实施例可以在第一流水线周期完成第一个步骤后,将SRv6报文重新环回传输至第一接口,在第二个流水线周期完成第二个步骤,从而可以在流水线的数据处理能力有限的情况下实现本发明实施例提供的方案。
参见图4,为本发明实施例提供的第三种报文转发方法的流程示意图,与前述图1所示的实施例相比,
在上述步骤S204之后,还包括以下步骤S206-S208。
S206:对上述第一接口使能上述第一网络设备存储的第二备用ACL表项与第二备用路由表项。
其中,上述第二备用ACL表项与第二备用路由表项中均记录有上述第三地址。
具体的,步骤S206与前述步骤S202相似,本发明实施例对此不再赘述。
S207:根据上述SRv6报文的目的地址,查找与上述目的地址匹配的路由表项,按照所命中的第二备用路由表项,将上述SRv6报文传输至上述环回口,以使得上述SRv6报文从上述环回口环回至上述第一接口。
具体的,经过上述步骤S204之后,上述SRv6报文的目的地址变更为第三地址,第二备用路由表项中记录有上述第三地址,因此根据上述SRv6报文的目的地址可以命中上述第二备用路由表项,因此可以按照第二备用路由表项传输报文。上述第二备用路由表项中记录的下一跳接口的标识可以为环回接口的标识,因此基于上述第二路由表项可以将目的地址为第三地址的SRv6报文传输至环回接口。
S208:根据上述SRv6报文的目的地址,查找与上述目的地址匹配的ACL表项,按照所命中的第二备用ACL表项,将上述SRv6报文的目的地址变更为目标链路的地址,并在上述SRv6报文中增加外层SRH。
其中,上述外层SRH中包含:记录有上述第三地址的SID。
上述目标链路为:第四网络设备的直连链路中与上述第一网络设备不相连的链路,上述第四网络设备为:上述第二网络设备之外的、与上述第一网络设备直连的网络设备。
具体的,上述第四网络设备可以是预先设置的,目标链路也可以是预先设置的。
例如,参见图1,上述网络设备M为第一网络设备,网络设备P为第二网络设备,网络设备Q为第三网络设备,网络设备N为第四网络设备,在网络设备P发生故障的情况下,可以按照网络设备M、网络设备N、网络设备Q的报文转发路径将SRv6报文由第一网络设备M转发至第三网络设备Q。可以将网络设备N与网络设备Q之间的链路S设置为目标链路,则将上述SRv6报文的目的地址变更为链路S的地址之后,可以经由上述链路S将SRv6报文传输至第三网络设备Q。
具体的,由于SRv6报文当前的目的地址是第三地址,因此可以基于上述SRv6报文的目的地址查找路由表项,可以命中记录有第三地址的第二备用ACL表项。上述第二备用ACL表项中包含的ACL动作可以为:将SRv6报文的目的地址变更为目标链路的地址。则依据上述第二备用ACL表项可以实现上述步骤S208。
参见上文基于图1的示例,若不将SRv6报文的目的地址变更为链路S的地址,SRv6报文的目的地址为网络设备Q的地址,网络设备N在接收到SRv6报文后可能会选择将SRv6报文重新发送给网络设备M,导致形成网络设备M与网络设备N之间的报文转发环回路径,影响SRv6报文转发。
而按照第二备用ACL表项,将SRv6报文的目的地址被变更为链路S的地址之后,网络设备N在接收到SRv6报文之后会向链路S转发SRv6报文,而不会将SRv6报文重新发送给网络设备M,从而可以解决形成报文转发环回路径的问题。
另外,为了保证报文能够被正常的转发至第三网络设备,可以在上述SRv6报文的外层SRH中添加记录有上述第三地址的SID,从而将第三地址记录于SRv6报文中,能够在后续指示其他网络设备向第三网络设备转发该SRv6报文。
再者,上述第二备用路由表项与第二备用ACL表项也可以存储在上述备用VRF中。
由以上可见,本发明实施例中第一网络设备在将SRv6报文的目的地址变更为第三地址,代理第二网络设备完成中间节点终结处理之后,进一步的可以将SRv6报文的目的地址变更为目标链路的地址,由于目标链路是第四网络设备的直连链路中与第一网络设备不相连的链路,因此第一网络设备将报文转发给第四网络设备之后,第四网络设备会按照目标链路的地址转发报文,不会将报文重新转发给第一网络设备,也就可以避免形成报文转发环回路径,也就不会对SRv6报文的转发造成影响。
与前述报文转发方法相对应,本发明实施例还提供了一种报文转发装置。
参见图5,为本发明实施例提供的第一种报文转发装置的结构示意图,应用于第一网络设备,所述装置包括:
第一地址变更模块501,用于通过第一接口接收到SRv6报文后,将所述SRv6报文的目的地址变更为第二SID中包含的地址,所述第二SID为:所述SRv6报文的段列表中、所述第一网络设备对应的第一SID的下一个SID;
第一表项使能模块502,用于若确定所述第二SID对应第二网络设备,且第二网络设备发生故障,对所述第一接口使能所述第一网络设备存储的第一备用ACL表项与第一备用路由表项,其中,所述第一备用ACL表项与第一备用路由表项中均记录有所述第二网络设备的第二地址;
第一报文环回模块503,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
第二地址变更模块504,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址,所述第三SID为:所述段列表中所述第二SID的下一个SID;
报文转发模块505,用于转发所述SRv6报文。
由以上可见,上述第一网络设备中原本便存储有针对第二地址的第一备用ACL表项与第一备用路由表项,在第二网络设备发生故障时,直接使能上述第一备用ACL表项与第一备用路由表项,第一网络设备便可以根据上述第一备用ACL表项与第一备用路由表项处理并转发SRv6报文,使得上述SRv6报文的目的地址变更为与第二网络设备的第二地址不同的第三地址,从而绕过第二网络设备转发报文。因此不需要在第二网络设备发生故障后再下发ACL表项与路由表项,从而可以减少下发表项导致SRv6报文转发错误的问题。并且在第二网络设备发生故障之前,上述第一备选ACL表项与第一备选路由表项未被使能,因此上述第一备选ACL表项与第一备选路由表项不影响第一网络设备正常转发报文。
本发明的一个实施例中,所述第一备用路由表项与第一备用ACL表项记录于备用VRF表中,上述第一表项使能模块502,具体用于:
若确定所述第二SID对应的第二网络设备发生故障,将所述备用VRF表的索引调整为所述第一接口对应的预设索引;
所述装置还包括:
表项获取模块,用于按照所述预设索引,从所述备用VRF表中获取第一备用路由表项与第一备用ACL表项。
本发明的一个实施例中,上述第一地址变更模块501,具体用于:
通过第一接口接收到SRv6报文后,通过所述第一网络设备中的流水线,将所述SRv6报文的目的地址变更为第二SID中包含的地址,其中,所述流水线为:所述第一网络设备中包含的数据处理器件组成的数据处理链路;
上述第二地址变更模块504,具体用于:
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,通过所述流水线,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址。
由以上可见,本发明实施例提供的方案中先在一个流水线周期中通过流水线将SRv6报文的目的地址变更为第二地址,再在第二个流水线周期中通过流水线将SRv6报文的目的地址变更为第三地址,在流水线的数据处理能力有限,难以在一个流水线周期中完成上述两个步骤的情况下,通过本发明实施例可以在第一流水线周期完成第一个步骤后,将SRv6报文重新环回传输至第一接口,在第二个流水线周期完成第二个步骤,从而可以在流水线的数据处理能力有限的情况下实现本发明实施例提供的方案。
参见图6,为本发明实施例提供的第二种报文转发装置的结构示意图,与前述图5所示的实施例相比,所述装置还包括:
第二表项使能模块506,用于对所述第一接口使能所述第一网络设备存储的第二备用ACL表项与第二备用路由表项,其中,所述第二备用ACL表项与第二备用路由表项中均记录有所述第三地址;
第二报文环回模块507,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第二备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
第三地址变更模块508,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第二备用ACL表项,将所述SRv6报文的目的地址变更为目标链路的地址,并在所述SRv6报文中增加外层SRH,其中,所述目标链路为:第四网络设备的直连链路中与所述第一网络设备不相连的链路,所述第四网络设备为:所述第二网络设备之外的、与所述第一网络设备直连的网络设备,所述外层SRH中包含:记录有所述第三地址的SID。
由以上可见,本发明实施例中第一网络设备在将SRv6报文的目的地址变更为第三地址,代理第二网络设备完成中间节点终结处理之后,进一步的可以将SRv6报文的目的地址变更为目标链路的地址,由于目标链路是第四网络设备的直连链路中与第一网络设备不相连的链路,因此第一网络设备将报文转发给第四网络设备之后,第四网络设备会按照目标链路的地址转发报文,不会将报文重新转发给第一网络设备,也就可以避免形成报文转发环回路径,也就不会对SRv6报文的转发造成影响。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现上述报文转发方法任一所述的方法步骤。
应用本发明实施例提供的电子设备进行报文转发时,上述第一网络设备中原本便存储有针对第二地址的第一备用ACL表项与第一备用路由表项,在第二网络设备发生故障时,直接使能上述第一备用ACL表项与第一备用路由表项,第一网络设备便可以根据上述第一备用ACL表项与第一备用路由表项处理并转发SRv6报文,使得上述SRv6报文的目的地址变更为与第二网络设备的第二地址不同的第三地址,从而绕过第二网络设备转发报文。因此不需要在第二网络设备发生故障后再下发ACL表项与路由表项,从而可以减少下发表项导致SRv6报文转发错误的问题。并且在第二网络设备发生故障之前,上述第一备选ACL表项与第一备选路由表项未被使能,因此上述第一备选ACL表项与第一备选路由表项不影响第一网络设备正常转发报文。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一报文转发方法的步骤。
执行本发明实施例提供的计算机可读存储介质中存储的计算机程序进行报文转发时,上述第一网络设备中原本便存储有针对第二地址的第一备用ACL表项与第一备用路由表项,在第二网络设备发生故障时,直接使能上述第一备用ACL表项与第一备用路由表项,第一网络设备便可以根据上述第一备用ACL表项与第一备用路由表项处理并转发SRv6报文,使得上述SRv6报文的目的地址变更为与第二网络设备的第二地址不同的第三地址,从而绕过第二网络设备转发报文。因此不需要在第二网络设备发生故障后再下发ACL表项与路由表项,从而可以减少下发表项导致SRv6报文转发错误的问题。并且在第二网络设备发生故障之前,上述第一备选ACL表项与第一备选路由表项未被使能,因此上述第一备选ACL表项与第一备选路由表项不影响第一网络设备正常转发报文。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一报文转发方法。
执行本发明实施例提供的计算机程序进行报文转发时,上述第一网络设备中原本便存储有针对第二地址的第一备用ACL表项与第一备用路由表项,在第二网络设备发生故障时,直接使能上述第一备用ACL表项与第一备用路由表项,第一网络设备便可以根据上述第一备用ACL表项与第一备用路由表项处理并转发SRv6报文,使得上述SRv6报文的目的地址变更为与第二网络设备的第二地址不同的第三地址,从而绕过第二网络设备转发报文。因此不需要在第二网络设备发生故障后再下发ACL表项与路由表项,从而可以减少下发表项导致SRv6报文转发错误的问题。并且在第二网络设备发生故障之前,上述第一备选ACL表项与第一备选路由表项未被使能,因此上述第一备选ACL表项与第一备选路由表项不影响第一网络设备正常转发报文。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质和计算机程序产品而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种报文转发方法,其特征在于,应用于第一网络设备,所述方法包括;
通过第一接口接收到SRv6报文后,将所述SRv6报文的目的地址变更为第二SID中包含的地址,所述第二SID为:所述SRv6报文的段列表中、所述第一网络设备对应的第一SID的下一个SID;
若确定所述第二SID对应第二网络设备,且第二网络设备发生故障,对所述第一接口使能所述第一网络设备存储的第一备用访问控制列表ACL表项与第一备用路由表项,其中,所述第一备用ACL表项与第一备用路由表项中均记录有所述第二网络设备的第二地址;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将所述SRv6报文传输至环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址,所述第三SID为:所述段列表中所述第二SID的下一个SID;
转发所述SRv6报文。
2.根据权利要求1所述的方法,其特征在于,所述第一备用路由表项与第一备用ACL表项记录于备用虚拟路由转发VRF表中,所述对所述第一接口使能所述第一网络设备存储的第一备用ACL表项与第一备用路由表项,包括:
将所述备用VRF表的索引调整为所述第一接口对应的预设索引;
在所述根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将所述SRv6报文传输至所述环回口之前,还包括:
按照所述预设索引,从所述备用VRF表中获取第一备用路由表项与第一备用ACL表项。
3.根据权利要求1或2所述的方法,其特征在于,所述将所述SRv6报文的目的地址变更为第二SID中包含的地址,包括:
通过所述第一网络设备中的流水线,将所述SRv6报文的目的地址变更为第二SID中包含的地址,其中,所述流水线为:所述第一网络设备中包含的数据处理器件组成的数据处理链路;
所述按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址,包括:
按照所命中的第一备用ACL表项,通过所述流水线,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址。
4.根据权利要求1或2所述的方法,其特征在于,在所述根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址之后,还包括:
对所述第一接口使能所述第一网络设备存储的第二备用ACL表项与第二备用路由表项,其中,所述第二备用ACL表项与第二备用路由表项中均记录有所述第三地址;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第二备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第二备用ACL表项,将所述SRv6报文的目的地址变更为目标链路的地址,并在所述SRv6报文中增加外层分段路由头SRH,其中,所述目标链路为:第四网络设备的直连链路中与所述第一网络设备不相连的链路,所述第四网络设备为:所述第二网络设备之外的、与所述第一网络设备直连的网络设备,所述外层SRH中包含:记录有所述第三地址的SID。
5.一种报文转发装置,其特征在于,应用于第一网络设备,所述装置包括:
第一地址变更模块,用于通过第一接口接收到SRv6报文后,将所述SRv6报文的目的地址变更为第二SID中包含的地址,所述第二SID为:所述SRv6报文的段列表中、所述第一网络设备对应的第一SID的下一个SID;
第一表项使能模块,用于若确定所述第二SID对应第二网络设备,且第二网络设备发生故障,对所述第一接口使能所述第一网络设备存储的第一备用ACL表项与第一备用路由表项,其中,所述第一备用ACL表项与第一备用路由表项中均记录有所述第二网络设备的第二地址;
第一报文环回模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第一备用路由表项,将所述SRv6报文传输至环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
第二地址变更模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址,所述第三SID为:所述段列表中所述第二SID的下一个SID;
报文转发模块,用于转发所述SRv6报文。
6.根据权利要求5所述的装置,其特征在于,所述第一备用路由表项与第一备用ACL表项记录于备用VRF表中,所述第一表项使能模块,具体用于:
若确定所述第二SID对应的第二网络设备发生故障,将所述备用VRF表的索引调整为所述第一接口对应的预设索引;
所述装置还包括:
表项获取模块,用于按照所述预设索引,从所述备用VRF表中获取第一备用路由表项与第一备用ACL表项。
7.根据权利要求5或6所述的装置,其特征在于,所述第一地址变更模块,具体用于:
通过第一接口接收到SRv6报文后,通过所述第一网络设备中的流水线,将所述SRv6报文的目的地址变更为第二SID中包含的地址,其中,所述流水线为:所述第一网络设备中包含的数据处理器件组成的数据处理链路;
所述第二地址变更模块,具体用于:
根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第一备用ACL表项,通过所述流水线,将所述SRv6报文的目的地址变更为第三SID中包含的第三地址。
8.根据权利要求5或6所述的装置,其特征在于,所述装置还包括:
第二表项使能模块,用于对所述第一接口使能所述第一网络设备存储的第二备用ACL表项与第二备用路由表项,其中,所述第二备用ACL表项与第二备用路由表项中均记录有所述第三地址;
第二报文环回模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的路由表项,按照所命中的第二备用路由表项,将所述SRv6报文传输至所述环回口,以使得所述SRv6报文从所述环回口环回至所述第一接口;
第三地址变更模块,用于根据所述SRv6报文的目的地址,查找与所述目的地址匹配的ACL表项,按照所命中的第二备用ACL表项,将所述SRv6报文的目的地址变更为目标链路的地址,并在所述SRv6报文中增加外层SRH,其中,所述目标链路为:第四网络设备的直连链路中与所述第一网络设备不相连的链路,所述第四网络设备为:所述第二网络设备之外的、与所述第一网络设备直连的网络设备,所述外层SRH中包含:记录有所述第三地址的SID。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110741538.8A CN113438158B (zh) | 2021-06-30 | 2021-06-30 | 一种报文转发方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110741538.8A CN113438158B (zh) | 2021-06-30 | 2021-06-30 | 一种报文转发方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113438158A CN113438158A (zh) | 2021-09-24 |
CN113438158B true CN113438158B (zh) | 2022-06-21 |
Family
ID=77758325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110741538.8A Active CN113438158B (zh) | 2021-06-30 | 2021-06-30 | 一种报文转发方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113438158B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10057162B1 (en) * | 2016-06-27 | 2018-08-21 | Amazon Technologies, Inc. | Extending Virtual Routing and Forwarding at edge of VRF-aware network |
CN111541613A (zh) * | 2020-04-27 | 2020-08-14 | 鹏城实验室 | 一种基于SRv6的数据处理方法及相关设备 |
CN111682996A (zh) * | 2019-03-11 | 2020-09-18 | 华为技术有限公司 | 网络中报文转发的方法、网络节点、网络系统 |
CN111901235A (zh) * | 2017-12-01 | 2020-11-06 | 华为技术有限公司 | 处理路由的方法和装置、以及数据传输的方法和装置 |
CN112491926A (zh) * | 2020-12-11 | 2021-03-12 | 迈普通信技术股份有限公司 | SRv6路径质量测量方法、装置、电子设备及存储介质 |
-
2021
- 2021-06-30 CN CN202110741538.8A patent/CN113438158B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10057162B1 (en) * | 2016-06-27 | 2018-08-21 | Amazon Technologies, Inc. | Extending Virtual Routing and Forwarding at edge of VRF-aware network |
CN111901235A (zh) * | 2017-12-01 | 2020-11-06 | 华为技术有限公司 | 处理路由的方法和装置、以及数据传输的方法和装置 |
CN111682996A (zh) * | 2019-03-11 | 2020-09-18 | 华为技术有限公司 | 网络中报文转发的方法、网络节点、网络系统 |
CN111541613A (zh) * | 2020-04-27 | 2020-08-14 | 鹏城实验室 | 一种基于SRv6的数据处理方法及相关设备 |
CN112491926A (zh) * | 2020-12-11 | 2021-03-12 | 迈普通信技术股份有限公司 | SRv6路径质量测量方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于SRv6的网络切片技术研究;石鸿伟等;《电子技术与软件工程》;20200815(第16期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113438158A (zh) | 2021-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11652735B2 (en) | Multicast data packet processing method, and apparatus | |
CN113595897B (zh) | 一种路径探测方法及装置 | |
CN109951371B (zh) | 数据转发方法及装置 | |
CN109474495B (zh) | 一种隧道检测方法及装置 | |
CA3104756C (en) | Loop avoidance communications method, device, and system | |
CN112929241B (zh) | 一种网络测试方法及装置 | |
WO2016091156A1 (zh) | 节点故障的判断方法及装置 | |
US20160057043A1 (en) | Diagnostic routing system and method for a link access group | |
CN111064804A (zh) | 网络访问方法和装置 | |
CN114598626A (zh) | 报文处理的方法和网关设备 | |
CN113347084B (zh) | 一种报文转发方法及装置 | |
US10044602B2 (en) | Network failover and loop detection in hierarchical networks | |
CN113438158B (zh) | 一种报文转发方法及装置 | |
CN112637053B (zh) | 路由的备份转发路径的确定方法及装置 | |
CN113904972B (zh) | 路径检测方法、装置、控制器及pe设备 | |
CN112165428B (zh) | 一种流量清洗方法、装置及第一边界路由设备 | |
CN113328963A (zh) | 一种路由表项下发与报文转发方法、装置及网络设备 | |
US20170012869A1 (en) | Forwarding table management in computer networks | |
CN108418709B (zh) | 端口聚合方法及装置 | |
JP5249859B2 (ja) | スイッチング装置およびスイッチング方法 | |
CN113992566B (zh) | 一种报文广播方法及装置 | |
WO2023024867A1 (zh) | 跨设备链路聚合组网的网络诊断方法及网络接入设备 | |
CN111917637B (zh) | 数据报文发送方法及装置 | |
US12034631B2 (en) | Loop avoidance communications method, device, and system | |
CN114007152B (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 |