CN113162849A - 一种报文处理方法、装置及系统 - Google Patents
一种报文处理方法、装置及系统 Download PDFInfo
- Publication number
- CN113162849A CN113162849A CN202010209455.XA CN202010209455A CN113162849A CN 113162849 A CN113162849 A CN 113162849A CN 202010209455 A CN202010209455 A CN 202010209455A CN 113162849 A CN113162849 A CN 113162849A
- Authority
- CN
- China
- Prior art keywords
- sid
- list
- standby
- network device
- packet
- 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.)
- Pending
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/42—Centralised 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/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/24—Multipath
- H04L45/247—Multipath using M:N active or standby paths
-
- 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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- 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/56—Routing software
- H04L45/566—Routing instructions carried by the data packet, e.g. active networks
-
- 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/28—Routing or path finding of packets in data switching networks using route fault recovery
Abstract
本申请公开了一种报文处理方法、装置及系统,属于通信领域。所述方法包括:第一网络设备接收第一报文,所述第一报文包括多个段标识SID列表,所述多个SID列表包括主SID列表和至少一个备SID列表,所述至少一个备SID列表包括第一备SID列表,所述第一备SID列表为所述主SID列表的备份;所述第一网络设备根据所述主SID列表对所述第一报文进行处理。本申请用于实现段路由网络中,当段标识列表指示的转发路径故障时,仍然可以在段路由网络中实现数据报文的转发处理,提高网络传输的可靠性。
Description
本申请要求于2020年01月22日提交中国专利局、申请号为202010075789.2、发明名称为“一种保护方法和网络设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,特别涉及一种报文处理方法、装置及系统。
背景技术
分段路由(segment routing,SR)是基于源路由的理念而设计的控制在网络中转发数据报文的一种协议。SR将网络路径划分为一个个段,为这些段或节点分配段标识,通过在数据包中携带依次排列的段标识,能够让数据包通过段标识指示的转发路径传输。在SR网络中,通过该段路由网络的入口设备往数据报文中插入一组有序的段标识来显示地指定数据报文的转发路径,该入口设备也可以被称为头节点。当SR应用于多协议标签交换(multi-protocol label switching,MPLS)数据平面时,则称为基于MPLS的分段路由(MPLS-SR或SR-MPLS),当SR应用于互联网协议第6版(Internet Protocol Version 6,IPv6)数据平面时,则称为基于IPv6的分段路由(SRv6)。
头节点(Head Node):SR转发路径的起始节点,在SRv6中,负责封装段路由头(segment routing header,SRH),在SR-MPLS中,负责将SID标签封装进MPLS报文头中。
尾节点:SR转发路径的最后一跳网络设备,在SRv6中,负责解封装SRH和/或IPv6头。
中间节点:SR转发路径上的非头节点和尾节点的网络设备,可称为中间节点。
段标识(segment ID,SID),代表一个节点、一条链路或网络设备提供的一种服务。在SRv6中,SID表现为一个128比特的值;在SR-MPLS中,SID表现为一个标签值,一个SRv6的段标识中可以包括功能部分,该功能部分指示发布该段标识的网络设备需要执行对应的动作。对于SR网络中的任一节点来说,该节点可以包括端点三层交叉连接段标识(End.X SID,End表示endpoint,意为端点;X表示crossing,意为三层交叉连接,SID意为段标识)或至少一个节点对应的端点段标识(End SID,End表示endpoint,意为端点,SID意为段标识)。End.X SID用于标识该节点直连的一条IP层链路,End SID用于标识该节点。
段标识SID列表:包含了一个或多个段标识的列表,段路由网络中的头节点在接收到数据报文后,可以在数据报文中插入SID列表来指示一条转发路径。一个SID列表中可以仅包括一个SID,也可以包括多个SID。需要说明的是,上述SID列表可以仅指明路径上的部分节点,而不是全部的节点。另外,也可以混合使用END.X和END,以及其他的功能的SID。在该SID列表中的SID会被顺序执行,以保证报文可按指定的转发路径转发。当头节点在报文中插入SID列表并发送报文后,当该SID列表指示的转发路径故障时,可能导致报文发送时延大或丢失,该段路由网络的可靠性较低。
发明内容
本申请提供了一种报文处理方法、装置及系统,用于实现段路由网络中,当段标识列表指示的转发路径故障时,仍然可以在段路由网络中实现数据报文的转发处理,提高该段路由网络的可靠性。
第一方面,本申请提供了一种报文处理方法,应用于段路由网络,在所述方法中:第一网络设备接收第一报文,第一报文包括多个段标识SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份;第一网络设备根据主SID列表对第一报文进行处理。由于第一报文中的第一备SID列表为主SID列表的备份,这样在主SID列表指示的路径或对应的服务故障时,可以基于第一备SID列表对第一报文进行处理,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
在一种可能的实现方式中,主SID列表仅包括一个SID,第一备SID列表也仅包括一个SID,如此可以减小主SID列表的长度和第一备SID列表的长度,进而减小第一报文的报文头的长度,节省传输资源。
在另一种可能的实现方式中,第一网络设备根据目标SID是否可用,对第一报文进行不同处理,目标SID是主SID列表中未被执行的SID中的一个或多个。
在另一种可能的实现方式中,目标SID可用包括:目标SID对应的服务可用;或第一网络设备到目标SID可达。如此通过判断目标SID对应的服务是否可用或第一网络设备到目标SID是否可达,得出目标SID对应的服务是否可用。
以上,通过对一个或多个目标SID确认其可用性,可以在提前判断其是否可用的情况下,使用备SID列表提供服务或进行报文转发,提高段路由网络的可靠性。
在另一种可能的实现方式中,第一备SID列表指示的转发路径为主SID列表指示的转发路径的备份路径。如此在主SID列表指示的转发路径故障时,可以使用第一备SID列表指示的转发路径来传输第一报文,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
在另一种可能的实现方式中,目标SID不可用时,第一网络设备根据第一SID发送第一报文,第一SID为第一备SID列表的第一个SID。由于目标SID为主SID列表中的SID,在目标SID不可用,根据第一备SID列表的第一个SID发送报文,从而保证在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
在另一种可能的实现方式中,目标SID不可达包括:第一网络设备到该目标SID的对应的网络设备不可达,或第一网络设备到目标SID对应的网络设备之间的任何一个网络设备或链路故障。如此可以通过判断第一网络设备到该目标SID的对应的网络设备是否可达,或,第一网络设备到目标SID对应的网络设备之间的任何一个网络设备或链路是否故障,得出目标SID是否可达。
在另一种可能的实现方式中,第一网络设备为该多个SID列表指示的端到端主转发路径上的中间节点,目标SID为主SID列表中的最后一个SID,目标SID为第一网络设备的SID。当目标SID可达时,第一网络设备根据第一SID发送第一报文,第一SID为该多个SID列表中在至少一个备SID列表之后的第一个SID。当目标SID可达,表示主SID列表指示的转发路径无故障,又由于第一网络设备为主转发路径上的中间节点,所以根据第一SID发送第一报文,使得第一网络设备跳过该至少一个备SID列表,继续发送第一报文。
在另一种可能的实现方式中,第一网络设备为该多个SID列表指示的端到端主转发路径上的尾节点,目标SID为主SID列表中的最后一个SID,目标SID为第一网络设备的SID。当目标SID可达时,第一网络设备执行目标SID对应的功能,剥离该多个SID列表。当目标SID可达,表示主SID列表指示的主转发路径无故障,又由于第一网络设备为主转发路径上的尾节点,所以剥离多个该SID列表,使得第一网络设备直接跳过该至少一个备SID列表。这样,即实现了保护尾节点故障的场景,又实现了,当尾节点处理报文时,该报文中的段标识列表中还存在至少一个SID,即备SID列表中的SID的情况下,可以快速剥离SID列表,提高报文处理速度。
在另一种可能的实现方式中,第一备SID列表对应的服务为主SID列表对应的服务的备份。目标SID可用包括:所述目标SID对应的服务可用。如此在主SID列表对应的服务故障时,可以使用第一备SID列表对应的服务来处理第一报文,从而在段路由网络中继续实现数据报文的处理,提高网络传输的可靠性。
在另一种可能的实现方式中,目标SID不可用时,第一网络设备使用第一SID为第一报文提供服务,第一SID为第一备SID列表的第一个SID。其中,在目标SID不可用时,即目标SID对应的服务不可用,而根据第一备SID列表的第一SID为第一报文提供服务,从而在段路由网络中继续实现对数据报文的处理,提高网络的可用性。
在另一种可能的实现方式中,目标SID对应的服务不可用包括:服务的资源不够,或者该资源被占用;或者该服务应用故障。从而,通过判断该服务的资源是否够用或该资源是否被占用或该服务是否应用故障,得到目标SID对应的服务是否可用。
在另一种可能的实现方式中,第一网络设备为该多个SID列表指示的端到端主转发路径上的中间节点,目标SID为未被执行的SID中的第一个,目标SID可用时,第一网络设备提供目标SID对应的服务,并根据第一SID发送第一报文,第一SID为该多个SID列表中在该至少一个备SID列表之后的第一个SID。其中,当目标SID可用,而第一SID为该多个SID列表中在该至少一个备SID列表之后的第一个SID,根据第一SID发送报文,使得第一网络设备直接跳过该至少一个备SID列表,网络设备不需要继续根据至少一个备SID列表对报文进行处理,避免因此导致的重复处理、转发效率低的问题。
在另一种可能的实现方式中,第一网络设备为该多个SID列表指示的端到端主转发路径上的尾节点,目标SID为未被执行的SID中的最后一个,目标SID可用时,第一网络设备提供目标SID对应的服务,并剥离该多个SID列表。由于第一网络设备为主转发路径上的尾节点,当目标SID可用,剥离多个该SID列表,使得第一网络设备直接跳过该至少一个备SID列表。
这样,即实现了保护尾节点故障的场景,又实现了,当尾节点处理报文时,该报文中的段标识列表中还存在至少一个SID,即备SID列表中的SID的情况下,可以快速剥离SID列表,提高报文处理速度。直接通过SID来剥离SID列表的方式,可以减少在报文中携带过多的指示信息等,可以提高本方案的可用性,减少网络的开销。
在另一种可能的实现方式中,第一报文包括位置指示信息,这样第一网络设备根据该位置指示信息获得第一SID,该位置指示信息用于指示以下一项或多项:该主SID列表在该多个SID列表中的位置、第一备SID列表在该多个SID列表中的位置和该至少一个备SID列表在该多个SID中的位置。这样,第一网络设备根据该位置信息可以准确地从该多个SID列表中获取到第一备SID列表,从而准确地得到第一SID。
通过在SID中携带位置指示信息的方式,可以实现在多种应用场景下,网络设备根据SID获取准确的位置信息,从而可根据目标SID是否可用,准确的跳过主SID列表中的SID,或至少一个备SID列表中的SID,保证对网络中的报文的准确处理,而不至于重复处理报文。
在另一种可能的实现方式中,该位置指示信息包括:该主SID列表的最后一个SID和/或主SID列表中未被执行的SID中的第一个SID。
通过在SID中携带位置指示信息的方式,可以在提高网络设备处理报文的效率,并减少在报文中携带过多的指示信息等,可以提高本方案的可用性,减少网络的开销。
在另一种可能的实现方式中,该位置指示信息携带在第一报文的段路由头的元数据中。
在另一种可能的实现方式中,该位置指示信息包括该M个备SID列表的SID数目。
在另一种可能的实现方式中,该位置指示信息包括主SID列表的尾SID在该多个SID列表中的位置。
在另一种可能的实现方式中,该位置指示信息包括第一备SID列表的头SID在该多个SID列表中的位置。
在另一种可能的实现方式中,该位置指示信息包括主SID列表的头SID在该多个SID列表中的位置以及主SID列表的SID数目。
通过在报文中携带位置指示信息的方式,可以在提高网络设备处理报文的效率。
在另一种可能的实现方式中,第一网络设备接收配置指令;第一网络设备根据配置指令执行根据目标SID是否可用,获得第二SID,并根据第二SID处理第一报文,第二SID包括:主SID列表中的SID、第一备SID列表的第一个SID、或该多个SID列表中该至少一个备SID列表后的第一个SID。这样通过配置指令可以控制第一网络设备是否开启根据目标SID处理第一报文的功能。在另一种可能的实现方式中,该多个SID列表在第一报文的段路由头SRH中或该多个SID列表在第一报文的多协议标签交换头中。
在另一种可能的实现方式中,主SID列表和第一备SID列表在第一报文的不同的SRH中。
在另一种可能的实现方式中,主SID列表与第一备SID列表相邻,主SID列表的最后一个SID在第一备SID列表之前。这样便于第一网络设备确定主SID列表的位置和第一备SID列表的位置。且最大化利用相关技术的方案,使得网络中的报文可被正确处理,降低本技术方案的使用难度。
在另一种可能的实现方式中,至少一个备SID列表还包括第二备SID列表,第二备SID列表为第一备SID列表的备份和/或第二备SID列表为主SID列表的备份。这样第一报文中可以包括多个主SID列表和每个主SID列表对应的备SID列表,通过每个主SID列表对应的备SID列表分别对每个主SID列表进行保护,进一步提高段路由网络的可靠性。
在另一种可能的实现方式中,该多个SID列表还包括另一个主SID列表和另一个备SID列表,另一个备SID列表为另一个主SID列表的备份。当网络中的有多个重要网络节点、或服务需要保护时,可以通过在报文中携带更多的主备SID列表从而进一步提升该网络的可靠性。
第二方面,本申请提供了一种报文处理方法,应用于段路由网络,在所述方法中:第一网络设备发送第一报文,第一报文包括多个段标识SID列表,该多个SID列表至少包括主SID列表和至少一个备SID列表,该至少一个备SID列表包括第一备SID列表,第一备SID列表为该主SID列表的备份。由于第一报文中的第一备SID列表为主SID列表的备份,这样在主SID列表指示的路径故障时,基于第一备SID列表对第一报文进行处理,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
在一种可能的实现方式中,第一网络设备接收第二报文,并根据第二报文生成第一报文,第二报文不包括该多个SID列表;或第一网络设备生成第一报文。
在一种可能的实现方式中,第一网络设备在发送第一报文之前,还获得上述多个段标识列表。
在另一种可能的实现方式中,第一报文包括位置指示信息,该位置指示信息用于指示以下一项或多项:主SID列表在该多个SID列表中的位置、第一备SID列表在该多个SID列表中的位置和该至少一个备SID列表在该多个SID列表中的位置。这样通过该位置信息,便于准确地确定主SID列表或备SID列表在该多个SID列表中的位置。
在另一种可能的实现方式中,该位置指示信息包括:主SID列表的最后一个SID和/或主SID列表中的未被执行的SID中的第一个SID中。
在另一种可能的实现方式中,该位置指示信息携带在第一报文的段路由头的元数据中。如此通过元数据携带该位置信息,便于位于第一网络设备之后的网络设备从第一报文中得到该位置信息。
在另一种可能的实现方式中,该多个SID列表携带在第一报文的段路由头SRH中或该多个SID列表携带在第一报文的多协议标签交换MPLS头中。
在另一种可能的实现方式中,主SID列表和第一备SID列表携带在第二报文的不同的SRH中。
在另一种可能的实现方式中,主SID列表与第一备SID列表相邻,主SID列表的最后一个SID在第一备SID列表之前。这样便于位于第一网络设备之后的网络设备确定主SID列表的位置和第一备SID列表的位置。
在另一种可能的实现方式中,至少一个备SID列表还包括第二备SID列表,第二备SID列表为第一备SID列表的备份和/或第二备SID列表为主SID列表的备份。由于第二备SID列表为第一备SID列表的备份,这样在第一SID列表指示的路径故障时,基于第二备SID列表对第一报文进行处理,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
在另一种可能的实现方式中,该多个SID列表还包括另一个主SID列表和另一个备SID列表,另一个备SID列表为另一个主SID列表的备份。
第三方面,本申请提供了一种报文处理方法,应用于段路由网络中,在所述方法中:控制设备向第一网络设备发送第一消息,第一消息包括多个段标识SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份。第一消息使得第一网络设备生成第一报文,第一报文包括该多个SID列表。如此生成的第一报文中包括主SID列表和第一备SID列表,由于第一备SID列表为主SID列表的备份,这样在主SID列表指示的路径故障时,第一网络设备基于第一备SID列表对第一报文进行处理,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
在一种可能的实现方式中,第一消息还包括报文特征或路由特征,第一报文符合该报文特征或路由特征。如此可以使第一网络在符号该报文特征和路由特征的报文中添加主SID列表和第一备SID列表。
在另一种可能的实现方式中,第一消息还包括位置指示信息,该位置指示信息用于指示以下一项或多项:主SID列表在该多个SID列表中的位置、第一备SID列表在该多个SID列表中的位置和该至少一个备SID列表在多个SID中的位置。如此,段路由网络中的网络设备基于该位置指示信息,能够准确地确定该主SID列表和每个备SID列表的位置。
在另一种可能的实现方式中,该位置指示信息包括:主SID列表的最后一个SID和/或主SID列表中的未被执行的SID中的第一个SID。
第四方面,本申请提供了一种报文处理装置,用于执行第一方面或第一方面的任意一种可能实现方式中的方法。具体地,所述装置包括用于执行第一方面或第一方面的任意一种可能实现方式的方法的单元。
第五方面,本申请提供了一种报文处理装置,用于执行第二方面或第二方面的任意一种可能实现方式中的方法。具体地,所述装置包括用于执行第二方面或第二方面的任意一种可能实现方式的方法的单元。
第六方面,本申请提供了一种报文处理装置,用于执行第三方面或第三方面的任意一种可能实现方式中的方法。具体地,所述装置包括用于执行第三方面或第三方面的任意一种可能实现方式的方法的单元。
第七方面,本申请提供了一种报文处理装置,所述装置包括:处理器、存储器和收发器。其中,所述处理器、所述存储器和所述收发器之间可以通过总线系统相连。所述存储器用于存储一个或多个程序,所述处理器用于执行所述存储器中的一个或多个程序,使得所述装置完成第一方面或第一方面的任意可能实现方式中的方法。
第八方面,本申请提供了一种报文处理装置,所述装置包括:处理器、存储器和收发器。其中,所述处理器、所述存储器和所述收发器之间可以通过总线系统相连。所述存储器用于存储一个或多个程序,所述处理器用于执行所述存储器中的一个或多个程序,使得所述装置完成第二方面或第二方面的任意可能实现方式中的方法。
第九方面,本申请提供了一种报文处理装置,所述装置包括:处理器、存储器和收发器。其中,所述处理器、所述存储器和所述收发器之间可以通过总线系统相连。所述存储器用于存储一个或多个程序,所述处理器用于执行所述存储器中的一个或多个程序,使得所述装置完成第三方面或第三方面的任意可能实现方式中的方法。
第十方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质中存储有程序代码,当其在计算机上运行时,使得计算机执行上述第一方面、第二方面、第三方面、第一方面的任意可能实现方式、第二方面的任意可能实现方式或第三方面的任意可能实现方式中的方法。
第十一方面,本申请提供了一种包含程序代码的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面、第二方面、第三方面、第一方面的任意可能实现方式、第二方面的任意可能实现方式或第三方面的任意可能实现方式中的方法。
第十二方面,本申请提供了一种报文处理系统,所述系统包括第四方面所述的装置和第五方面所述的装置;或者,所述系统包括第七方面所述的装置和第八方面所述的装置。
在一种可能的实现方式中,所述系统还包括第六方面所述的装置或第九方面所述的装置。
附图说明
图1是本申请实施例提供的一种通信网络架构的示意图;
图2是本申请实施例提供的另一种通信网络的结构示意图;
图3是本申请实施例提供的一种报文处理方法流程示意图;
图4是本申请实施例提供的一种方法流程的具体应用示意图;
图5是本申请实施例提供的一种类型长度值格式示意图;
图6是本申请实施例提供的一种段路由头格式示意图;
图7是本申请实施例提供的一种方法流程的具体应用示意图;
图8是本申请实施例提供的的另一种方法流程的具体应用示意图;
图9是本申请实施例提供的另一种方法流程的具体应用示意图;
图10是本申请实施例提供的另一种方法流程的具体应用示意图;
图11是本申请实施例提供的另一种方法流程的具体应用示意图;
图12是本申请实施例提供的一种报文处理装置结构示意图;
图13是本申请实施例提供的另一种报文处理装置结构示意图;
图14是本申请实施例提供的另一种报文处理装置结构示意图;
图15是本申请实施例提供的另一种报文处理装置结构示意图;
图16是本申请实施例提供的另一种报文处理装置结构示意图;
图17是本申请实施例提供的另一种报文处理装置结构示意图;
图18是本申请实施例提供的另一种报文处理装置结构示意图;
图19是本申请实施例提供的一种报文处理系统结构示意图;
图20是本申请实施例提供的另一种报文处理系统结构示意图。
具体实施方式
下面将结合附图对本申请实施方式作进一步地详细描述。
以下,对本申请涉及的术语进行解释:
段路由头(segment routing header,SRH):互联网协议第6版(internetprotocol version6,IPv6)报文是由IPv6标准头+扩展头(0...n)+负荷(Payload)组成。为了基于IPv6转发平面实现SRv6,新增加一种IPv6扩展头,称作SRH扩展头,该扩展头指定一个IPv6的路径,存储的是IPv6的多个SID,该多个SID可以组成段列表(Segment List)中,其作用与段路由多协议标签交换(segment routing multi-protocol label switching,SR-MPLS)里的Segment List一样。头节点在IPv6报文增加一个或多个SRH扩展头,中间节点就可以按照SRH扩展头里包含的路径信息转发该IPv6报文。例如,在转发IPv6报文时,支持SRv6的网络设备会按照数据报文中的目的地址(destination address,DA),查询本地段标识表(local SID table),当数据报文的目的地址与本地段标识表中的任一SID匹配时,则按照本地段标识表中的SID相关的策略或功能,执行该策略或功能对应的操作。例如,该策略对应的操作可以将数据报文从SID所指定的出接口转发出去;如果数据报文的目的地址与本地段标识表中的每个SID均不匹配,则再查IPv6的路由转发表,按照IPv6的路由转发表进行最长匹配转发。
SID对应的策略或功能包括:转发路径和/或对应的服务,转发路径可包括背景技术部分所述的End SID、End.X SID或其他具备转发或查表功能的SID,SID对应的服务可包括网络设备提供的功能,如:压缩处理、加密处理等,或通过该网络设备连接的其他设备提供的其他功能:如通过连接的防火墙提供防攻击过滤、流量清洗等服务。以上,也存在一个SID即对应转发路径,也对应一个服务的情况,网络设备只需要根据该SID对应的功能对报文进行操作处理即可,即:SID可用于指示该SID对应的网络设备根据该SID对报文执行对应的处理操作。
在本申请实施例中,头节点可以在报文中插入1个或多个段标识SID列表,该SID列表包括至少2个SID。可以将这1个或多个SID列表逻辑划分为:主SID列表、备SID列表,当这1个或多个SID列表中还存在其他不属于这两个列表中的SID时,还可以将这些SID划分为属于其他SID列表。在SRv6中,将SRH中,对应的剩余段(segment left,SL)的值较小的SID认为在后,SID对应的SL的值较大的SID认为在前,当段标识列表用(SID1,SID2,SID3)表示时,则认为,排在前面的SID在前,排在后面的SID在后,如认为SID1为该段标识列表的第一个SID,SID1与SID2相邻,SID1在SID2之前,SID2与SID1、SID3相邻,SID2在SID3之前,SID3与SID2相邻,相应的,SID2在SID1之后,SID3在SID2之后。
主SID列表:将报文的SID列表中,被保护、被备份的一个或多个SID称为主SID列表。如当段标识列表用(SID1,SID2,SID3)表示,且SID3为SID2的备份,即SID2为被备份的SID时,则将SID2视为主SID列表。
备SID列表:将报文的SID列表中,用于备份的一个或多个SID称为备SID列表。如当段标识列表用(SID1,SID2,SID3)表示,且SID3为SID2的备份,则将SID3视为备SID列表。
未被执行的SID:在SRv6中,可以将主SID列表中,与目的地址对应的SID以及其之后的SID视为未被执行的SID。如,当主SID列表为(SID1,SID2,SID3),而当网络设备接收到报文,该报文的目的地址对应的SID为SID2时,则未被执行的SID包括:SID2和SID3。在SR-MPLS中,由于段标识列表中的SID(即,标签)会被不断弹出,可以将在MPLS报文头中的栈顶的主段标识列表视为未被执行的SID,如,当头节点发送报文到其下一跳设备时,该主段标识列表为(SID1,SID2,SID3)时,则未被执行的SID包括:SID1、SID2和SID3,而当报文经SID1对应的网络设备处理后,则该主段标识列表可能变更为了(SID2,SID3),这未被执行的SID包括:SID2和SID3。
目标SID:为上述未被执行的SID中的一个或多个,即可以是上述的SID2,SID3或SID2和SID3,通常,该目标SID可为未被执行的SID中的第一个,即:SID2。在该段标识列表指示的转发路径上的网络设备可以通过主动确定到目标SID对应的网络设备是否可达,来确定主SID列表中的SID的可达性。或目标SID对应于服务时,可由该目标SID对应的网络设备确定该服务的可用性,从而确定主SID列表的可用性。
主转发路径:将上述主SID列表指示的转发路径称为主转发路径,该转发路径也可以仅包括一个网络节点。
备转发路径:将备SID列表指示的转发路径称为备转发路径,该转发路径也可以仅包括一个网络节点。
端到端主转发路径:将SID列表中,包括了主段标识列表和除备SID列表的转发路径称为端到端主转发路径,该转发路径也可以仅包括一个网络节点。
端到端备转发路径:将SID列表中,除主SID列表指示的路径外的转发路径称为端到端备转发路径,该转发路径也可以仅包括一个网络节点。
以下,示例性介绍对于SID的定义,参见表1,SRv6中定义的SID可以包括三部分,该三部分包括位置(locator)部分,功能(function)和参数部分(Argument)。
表1
locator | function | Argument |
位置部分用于将报文路由到该SID对应的网络设备上,实现网络的寻址。位置部分有两个重要的属性,即可路由和聚合,在SID中位置部分是一个可变长部分。
功能部分用于表达该指令要执行的动作,相当于计算指令的操作码。在SRv6网络中,任何处理操作都可以用功能部分、或者整个SID来表达。可选的,功能部分在SID中是一个由执行该指令的网络设备分配的一个随机数,本身并不隐含该指令要执行的具体功能,而是通过在该随机数确定该SID具体要执行的功能。
参数部分是指令在执行的时候所需要的参数,服务或任何其他相关的信息。例如:定义一个对报文进行报文分片的指令,参数部分携带报文的分片长度。该参数部分在SRv6的SID定义中,也为可选的,即,SID可以不包括参数部分。
在SR-MPLS中,将SID作为一个标签进行处理,网络设备也可以根据标签进行报文的转发或提供对应的服务,由于其与SRv6类似,在此不再赘述。
以下,示例性介绍本申请的应用场景。参见图1,该图为本申请实施例提供的一种通信网络的示意图。在图1所示的通信网络中,网络设备1、2、3、4、5、6、7和8位于同一个通信网络中,该通信网络可以为SRv6网络或SR-MPLS网络等。网络设备1与网络设备2、网络设备6相连,网络设备2与服务设备9、网络设备3相连,网络设备3与网络设备2、网络设备4相连,网络设备4与网络设备3、网络设备5相连,网络设备5与网络设备4、网络设备8相连,网络设备8与网络设备5、网络设备7相连,网络设备7与网络设备6、网络设备8相连,在该网络中,还可选的存在控制设备或算路单元,控制设备或算路单元可与该网络设备中的所有设备相连。其中,网络设备1、2、3、4、5、6、7和8可以为路由器设备,也可以为交换机或其他任意具备SR功能的设备,该设备的形态可以是实体装置设备,也可以是虚拟化的具备SR功能的设备,网络设备3可以为支持SR功能的设备,也可以为不支持SR功能的设备,即,在SR网络中,不需要所有设备都支持SR功能,而不支持SR功能仅需支持正常的路由或交换功能即可,本申请不做具体限定。
本领域技术人员可以知晓,该通信网络中的网络设备的数量可以更多或更少。比如上述网络设备可以为几十个或几百个,或者更多数量。本申请实施例对网络设备的数量和设备类型不加以限定。
在这个SR网络中,可将网络设备1作为该网络的一条转发路径的头节点,网络设备5作为该转发路径的尾节点。网络设备1包括SID1,网络设备2包括SID2,网络设备4包括SID4,网络设备5包括SID5,网络设备6包括SID7,网络设备8包括SID8。在这些SID中,包括对应转发节点/路径的SID:如SID4,SID5,SID6,SID7和SID8,还包括对应服务的SID,如SID2,网络设备2可通过该SID2为报文提供对应的服务,该服务可为上述的报文压缩等,网络设备2还可以通过该SID2,将报文发送给服务设备9,为该报文提供服务,如流量清洗,病毒过滤等。
在网络设备2通过该服务设备9对接收的报文提供服务的情况下,网络设备2向服务设备9发送报文,服务设备9接收该报文,基于其自身提供的服务,对该报文进行处理,向网络设备2发送该处理后的该报文。
例如,假设服务设备9是防火墙设备,防火墙设备9对报文提供的服务是对报文做防攻击过滤。网络设备2向防火墙设备9发送报文,防火墙设备9对该报文进行防攻击过滤,再向网络设备2发送过滤后的该报文。
该通信网络中的头节点,即网络设备1能够直接生成第一报文,该第一报文中包括指示转发路径的段标识列表的,然后在通信网络中发送第一报文,则该第一报文可以为故障检测报文或探测报文等。或者,网络设备1接收到其他设备,如用户端(customer edge,CE)设备发送的第一报文后,在确定该第一报文对应的转发路径后,在该第一报文中插入段标识列表,从而指导该第一报文在该段路由网络中的转发。当图1所示的网络为SRv6时,网络设备1可以给该第一报文添加新的IPv6头和SRH头,该SRH包括上述段标识列表,该IPv6头的目的地址(destination address,DA)为该段标识列表中的第一个SID,即对应的SL的值最大的那个SID。
可选的,该第一报文包括多个SRH,即网络设备1给第二报文添加多个SRH,每个SRH包括一个或多个段标识列表。例如,
网络设备1可获得段标识列表1如:(SID2,SID4,SID5),其指示的转发路径为:网络设备2->网络设备4–>网络设备5,段标识列表2如:(SID6,SID7,SID8,SID5),其指示的转发路径为:网络设备6->网络设备7->网络设备8->网络设备5。网络设备1可以在该第一报文中插入段标识列表1或段标识列表2指导该报文在该段路由网络中的转发。
其中,需要说明的是:该段标识列表1或段标识列表2中的某个SID或多个SID可能不可用。在SR的相关技术中,在SR网络中的网络设备在转发报文的过程中,当确定其要发送的报文对应的目的SID对应的网络设备不可达时,则可以取该目的SID的下一个SID,并根据此下一个SID发送报文。如,当网络设备1在第一报文中插入的段标识列表为(SID2,SID4,SID5),且SID2对应的网络设备2不可达时,则网络设备1可以根据该SID列表中的下一个SID,即SID4发送该第一报文。但是当这个不可达的SID是该SID列表中的最一个SID,如,当网络设备4需要向网络设备5转发第一报文时,该目的SID为SID5,但是由于该段标识列表中无下一个SID,则网络设备4无法获取到新的SID,则只能进行尽力而为的转发,进而影响该第一报文的转发,可能导致第一报文传输的时延较大,甚至报文转发中断或被丢弃,导致该段路由网络的可靠性较低。
具体的,以SRv6为例,头节点接收到第一报文,在第一报文中添加IPv6头和SRH,该SRH中包括段标识列表和SL值,该段标识列表包括n个网络设备的SID,n为大于0的整数。该n个网络设备是通信网络中用于传输第一报文的转发路径经过的除该头节点之外的其他设备,或也可以包括该头节点,SL的初值等于n-1,该IPv6头的DA为该段标识列表中的第一个SID。
头节点根据该DA处理第一报文,如向该DA对应的网络设备发送该报文。对于该段标识列表指示的转发路径经过的其他任一个网络设备(可称为第一网络设备),第一网络设备接收第二报文。如果第一网络设备不是该转发路径上的最后一跳设备,则第一网络设备在转发该报文前,设置该报文中的SL=SL-1,再根据该更新后的SL的值从该报文的段标识列表中读取SID,再根据该SID发送报文。如果第一网络设备是该转发路径上的最后一跳设备,也可以称为尾节点,则第一网络设备从第二报文中剥离SRH,包括段标识列表和SL等内容,剥离头节点添加的新的IPv6报文头,或根据原始第一报文获得原始目的地址,根据目的地址发送第一报文。
其中,对于第一网络设备不是该转发路径的尾节点的情况,第一网络设备在获取到第二网络设备的SID后,检测到第二网络设备出现故障,此时可以继续设置第二报文中的SL=SL-1,再根据该SL从第二报文包括的段标识列表中读取第二网络设备的下一跳设备(称为第三网络设备)的SID,根据第三网络设备的SID发送第二报文,如此可以跳过第二网络设备。而如果第二网络设备是该传输路径的最后一跳设备,在第二网络设备故障时,由于第二报文的段标识列表中没有第三网络设备的SID,导致第一网络设备发送第二报文的时延较大,或者甚至丢弃该报文。
以上,当一个SID不可用时,转发路径中的上一跳设备可以跳过不可用的SID发送报文,但是,当该不可用的SID对应于一个服务时,表示该服务被提供,跳过不可用的SID也就跳过了该服务。对于某些服务,这些服务的重要性可能较高,在第一报文中存在不可用的SID时,也不希望跳过这些服务;或者,在第一报文中的该多个SID中的最一个SID不可用,也希望能尽量避免第一报文传输时延大或丢包等,避免对该报文对应的业务造成影响。
本申请提供一种解决该技术问题的手段,即,在头节点处即获取多个段标识列表,该多个段标识列表包括主SID列表和至少一个备SID列表,在至少一个备SID列表中包括第一备SID列表,该列表为主SID列表的备份。这里的多个段标识列表仅是为了对多个段标识进行划分,在实际的应用中,其可能属于同一个段标识列表,并无实际的主、备段标识列表的区分等。
所谓第一备SID列表为主SID列表的备份是指:第一备SID列表中的SID对应的服务为主SID列表中的SID对应的服务的备份,或第一备SID列表指示的转发路径为该主SID列表指示的转发路径的备份。这样,在主SID列表中的一个或多个SID不可用时,可以使用第一备SID列表包括的SID对应的服务继续处理第一报文,应用于图1所示的场景,网络设备1可以将上述段标识列表1和段标识列表2均携带在该报文中,该段标识列表可记录为:(SID2,SID4,SID6,SID7,SID8,SID5),从逻辑上可将其划分为主SID列表:(SID2,SID4),第一备SID列表(SID6,SID7,SID8),以及其他SID列表(SID5),则主SID列表指示的主转发路径为网络设备2->网络设备4,则第一备SID列表对应的备转发路径为:网络设备6->网络设备7->网络设备8,端到端主转发路径为:网络设备2->网络设备4->网络设备5,端到端备转发路径为:网络设备6->网络设备7->网络设备8->网络设备5。这样,当主SID列表指示的主转发路径故障时,则可以按照备SID列表指示的备转发路径发送该报文。以上,可以将网络设备2、网络设备4认为是该端到端主转发路径上的中间节点,网络设备5认为是该端到端主转发路径上的尾节点。以上,当上述段标识列表封装进报文中时,主SID列表与备SID列表相邻,备SID列表的第一SID在主SID列表的最后一个SID之前,也可以认为,该主SID列表为该备SID列表的前序列表。在SRv6的报文中,可以认为备SID列表的第一个SID对应的SL值等于该主SID列表的最后一个SID对应的SL值减1。上述当主SID列表中的SID不可用时,根据第一备SID列表对报文进行处理的详细实现过程,将在后续图3所示的实施例进行详细说明,在此先不介绍。
可选的,该至少一个备SID列表还包括第二备SID列表,第二备SID列表为第一备SID列表的备份,和/或,第二备SID列表为主SID列表的备份。
可选的,该多个SID列表还包括另一个主SID列表和另一个备SID列表,该另一个主SID列表是另一个备SID列表的前序列表,另一主SID列表在该M个备SID列表之后,另一个备SID列表为另一个主SID列表的备份。
可选的,第一报文中能够包括多个主SID列表和每个主SID列表对应的至少一个备SID列表。
例如,参见图2,为本申请实施例提供的另一种通信网络架构示意图,在该网络中,网络设备1与网络设备2、网络设备4、网络设备6相连,网络设备2与网络设备3、网络设备1相连,网络设备4与网络设备1、网络设备5相连,网络设备6与网络设备5、网络设备7相连,网络设备3与网络设备2、网络设备8相连,网络设备5与网络设备4、网络设备8相连,网络设备7与网络设备6、网络设备8相连,网络设备9与网络设备12、网络设备8相连,网络设备10与网络设备12、网络设备8相连,网络设备11与网络设备12、网络设备8相连。网络设备1生成的第一报文中的SID列表可如图所示,(SID2,SID3,SID4,SID5,SID6,SID7,SID8,SID9,SID10,SID11,SID12),可将其逻辑划分为包括:第一主SID列表(SID2,SID3),至少一个备SID列表,包括:第一备SID列表(SID4,SID5),和第二备SID列表(SID6,SID7),其中第一备SID列表为第一主SID列表的备份,第二备SID列表为第一主SID列表的备份和/或第一备SID列表的备份;其他SID列表(SID8),第二主SID列表(SID9),与第二主SID列表对应的至少一个备SID列表包括:第一备SID列表(SID10),第二备SID列表(SID11),其中,第一备SID列表(SID10)为第二主SID的备份,第二SID列表为第二主SID列表和/或第一备SID列表(SID10)的备份,以及其他SID列表(SID12)。
主SID列表中的主SID对应的网络设备(便于说明称为主网络设备)和第一备SID列表中的备SID对应的网络设备(便于说明称为备网络设备)可为相同或不同的网络设备,主网络设备上的主SID对应的服务和备网络设备上的备SID对应的服务相同,从而实现备SID对应的服务备份主SID对应的服务。
参见图3,本申请实施例提供了一种报文处理方法,该方法能够应用于如图1、图2以及图7至图11任一实施例提供的通信网络中,包括:
S101:第一网络设备获取多个SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,该至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份。
该第一网络设备可以为SR网络中的用于传输相应报文的转发路径的头节点。第一网络设备可以在发送报文前或者接收到该网络中的其他设备发布相应的路由后获取该多个SID列表。
第一网络设备可通过如下第一种方式和第二种方式获取上述多个SID列表:
第一种方式,第一网络设备接收控制设备发送的消息,该消息包括多个SID列表,该多个SID列表包括主SID列表和上述至少一个备SID列表。该消息用于指示第一网络设备根据该多个SID列表对第一网络设备收到的报文进行处理。
在第一种方式中,该消息可以是控制设备基于网络设备向其请求的一条到达目的地址的转发路径(即段标识列表)的响应消息,也可以是控制设备基于提前配置好的信息,而获得段标识列表后,发送给第一网络设备的。控制设备可以基于该目的地址,根据该段路由网络的拓扑结构确定出用于传输该业务的转发路径,并确定其中的N个SID,并将该N个SID确定为主SID列表,N为大于0的整数。
对于主SID列表,由控制设备确定出该主SID列表对应的至少一个备SID列表。该主SID列表与至少一个备SID列表可以是由控制器计算出来的,也可以是由管理人员提前在控制设备上配置好的。控制设备在确定好对应的转发路径对应的多个SID列表(包括主SID列表和备SID列表)后,将这些信息发送给第一网络设备。这些信息可以是控制设备一次发送给第一网络设备的,也可以是分多次发送给第一网络设备的。
例如,参见图1,控制设备获取源IP地址和目的IP地址,根据该源IP地址和目的IP地址,确定用于传输报文的转发路径,该转发路径经过的SID包括网络设备1的SID1、网络设备2的SID2、网络设备4的SID4和网络设备5的SID5。假设管理人员已经设置了这些SID中选择需要保护的转发路径为:(SID2,SID4)。则控制器获取该主SID列表对应的一个备SID列表,该备SID列表为:(SID6,SID7,SID8),则控制设备可以将这些信息发送给网络设备1。
该控制设备上可以保存有该段路由网络中的所有网络设备的SID。该段路由网络中的网络设备能够向控制设备发布该网络设备的至少一个SID,也可以接收由控制设备配置的该网络设备的SID。
可选的,网络设备通过如下方式一至方式三向控制设备发布SID,该方式一至方式三分别为:
方式一、网络设备向控制设备发送通告报文,该通告报文中携带有该网络设备的至少一个SID。
该通告报文可以为边界网关协议(border gateway protocol,BGP)报文,也可以是边界网关协议以太网虚拟私有网络(border gateway protocol ethernet virtualprivate network,BGP EVPN)报文,也可以是内部网关协议(interior gateway protocol,IGP)报文,本申请不做具体限定。
可选的,该网络设备的至少一个SID携带在该通告报文的类型长度值(typelength value,TLV)中,TLV是一种编码格式,主要通过类型(type)字段、长度(length)字段和值(value)字段这三种信息进行定义。该TLV的格式示意如图5所示。该图中的类型字段标识表示该TLV的类型,该类型字段的取值可以标识该TLV是用于发布SID的TLV,该类型字段的取值可以是为发布SID新申请的类型,例如可以是90。长度字段的取值标识该TLV的长度。值字段用于携带该网络设备的至少一个SID。
方式二、网络设备可以通过BGP链路状态协议(border gateway protocol-linkstate,BGP-LS),向控制设备发布该网络设备的至少一个SID。
方式三、网络设备可以通过路径计算单元通信协议(path computation elementcommunication protocol,PCEP),向控制设备发布该网络设备的至少一个SID。
可选的,控制设备为控制器或路径计算单元(path computation element,PCE),也可称为算路单元。
可选的,控制设备向第一网络设备发送的消息还包括报文特征和/或路由特征,如,该消息中还包括上述的目的IP地址,可将其视为路由特征,报文特征可以为如这些报文的优先级等信息,该消息还用于指示第一网络设备根据该多个SID列表对符合上述报文特征或路由特征的报文进行处理,如:在接收到符合上述报文特征或路由特征的报文后,将上述多个段标识列表添加到上述报文中。
可选的,该消息还携带位置指示信息,该位置指示信息用于指示以下一项或多项:主SID列表在该多个SID列表中的位置、第一备SID列表在该多个SID列表中的位置和该至少一个备SID列表在该多个SID列表中的位置。
该位置指示信息可以通过多种方式指示以上信息,如:主SID列表的最后一个SID在该多个SID中的位置或第一备SID列表的第一个SID在该多个SID中的位置,或主SID列表的第一个SID在该多个SID中的位置以及主SID列表的SID数目、至少一个备SID列表的SID数目等多种方式,使得网络设备可以根据上述信息确定主SID列表的位置、第一备SID列表的位置或至少一个备SID列表的位置,通常情况下,网络设备确定上述位置,主要确定主SID列表的最后一个SID的位置,第一备SID列表中的第一个SID的位置和至少一个备SID列表的最后一个SID的位置。以上信息,可以是由控制设备通过同一个消息发送给第一网络设备的,也可以是控制设备通过不同的消息发送的,当该控制设备通过多个消息向第一网络设备发送以上信息时,则该控制设备还想该第一网络设备发送以上信息的关联信息,并通过关联信息,将这些内容关联在一起。
第一网络设备接收到以上信息后,可以在生成第一报文的时候根据SRv6的规则或MPLS的规则组装该多个段标识列表。
第二种方式中,第一网络设备可以自动计算得出转发路径,获得上述多个SID列表。
例如,应用于图1所示的网络中,当网络设备5向网络设备1通告一条路由时,网络设备1可以在接收到该路由后,自动计算一条转发路径。
S102:第一网络设备生成第一报文,第一报文包括多个SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,该至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份。
可选的,第一网络设备可以直接生成第一报文,例如,第一网络设备生成故障检测报文等。
可选的,第一网络设备接收第二报文,基于第二报文生成第一报文。
第一网络设备接收第二报文,并为第二报文添加报文头,该报文头包括该多个SID列表,得到第一报文,此时第二报文可为第一报文的净荷部分(payload)。
在一个示例中,在SRv6网络中,第一网络设备给第二报文添加一个SRH,得到第一报文。参见图6所示的SRH格式,该SRH包括段标识列表和SL等信息,该段标识列表包括该多个SID列表,该多个SID列表中的SID分别携带在Segment List[n]至Segment List[0]中。或,第一网络设备也可以给第二报文添加多个SRH,每个SRH包括一个段标识列表,如,将主SID列表放到第一个SRH中,将备SID列表放入第二个SRH中,每个SRH的格式均如图6所示。
可选的,该第一网络设备还可以给该第一报文添加一个新的IPv6报文头,在该新的IPv6报文头中的DA为该段标识列表中的第一个SID。
可选的,该第一网络设备也可以将该报文的原始IPv6的报文头中的DA修改为该段标识列表中的第一个SID。
在另一个示例中,在SR-MPLS中,第一网络设备给第二报文添加MPLS报文头,得到第一报文,该MPLS报文头包括标签栈,该标签栈包括上述多个SID列表。
可选的,第一报文包括位置指示信息。该位置指示信息用于指示以下一项或多项:主SID列表在该多个SID中的位置、第一备SID列表在该多个SID列表中的位置和该至少一个备SID列表在该多个SID列表中的位置。
关于位置信息的的详细描述可以参考上述控制设备向网络设备发送控制消息处的描述,本申请在此不再赘述。
第一网络设备可以将接收到的控制设备发送的位置指示信息直接封装进第一报文里,也可以是根据其自身封装SRH头的情况确定位置指示信息后,封装进第一报文里。
第一网络设备在封装第一报文的时候,即将上述位置信息封装进报文中,可用于指导在上述多个SID列表指示的转发路径上的网络设备确定上述主SID列表的位置、第一备SID列表的位置或至少一个备SID列表的位置。其主要目的为:1、当网络设备确定主SID列表中任一SID对应的转发路径或服务不可用时,则获取到第一备SID列表的第一个SID(为后续描述简洁,后续称为第一备SID)后,跳过主SID列表中的未被执行的SID,使用该第一备SID转发报文或为报文提供对应的服务,并沿第一备SID列表转发该报文。2、当主SID列表中的最后一个SID对应的服务或网络设备均可用,且该SID对应的功能能被顺利执行后,则网络设备可以跳过上述至少一个备SID列表中的SID,而获取到多个SID列表中在至少一个备SID列表之后的SID,并根据该SID转发报文或为报文提供对应的服务。3、当主SID列表中的最后一个SID为端到端主转发路径上的最后一个SID,即,该SID对应的网络设备为端到端主转发路径上的尾节点时,在该SID对应的服务或网络设备均可用,且该SID对应的功能能被顺利执行后,则网络设备可以跳过上述至少一个备SID列表中的SID,转发报文。
在一些场景中,如主SID列表仅包括一个SID,至少一个备SID列表仅包括第一备SID列表时,该位置指示信息可以仅为:主SID列表中的SID。当该SID不可用时,网络设备可以采用相关技术中的方法,获取其下一个SID,即第一备SID中的SID,并根据该SID执行转发或提供对应的服务。当该SID可用时,则当该SID可被执行且无故障后,则可以根据该SID跳过第一备SID列表,获得该多个SID列表中,在第一备SID列表之后的第一个SID,并根据该第一备SID列表之后的第一个SID,对报文进行处理。以上,当该第一备SID列表为该多个SID列表中的最后一个列表时,则该主SID列表中的SID可以为一种特殊的SID,这种SID具备指导其对应的网络设备执行剥离SRH头的功能,则无需再确认该多个SID列表中是否还存在其他SID,或主、备SID列表的位置,而直接剥离SRH头,进而剥离上述多个SID列表。
可选的,该位置指示信息包括:所述主SID列表的最后一个SID和/或主SID列表中未被执行的SID中的第一个SID。
以下,使用网络设备根据上述SID确定第一备SID的方式包括如下多种:
1.网络设备可根据上述SID在该网络设备上查找SID的标识与第一备SID的对应关系,或SID的标识与第一备SID的位置差,该位置差可以理解为主SID列表中该SID之后的SID数目,也可以理解为第一备SID的SL值与该SID的SL值之差,并根据位置差获得该第一备SID。
2.在上述SID中,直接携带了上述位置差信息,使得网络设备可以根据位置差信息获得该第一备SID。在一个示例中,该位置差信息可以携带在上述SID的参数部分,当然,也可以携带在上述SID的其他部分,本申请不做具体限定。在一个SRv6的示例中,一个主SID列表中的最后一个SID的值可为:A2::1:1其中A2为locator,::1为function对应End.x,:1为Argu,代表需要SL-2。这样,则该SID对应的网络设备可以通过SL-2准确的跳过备SID。
可选的,该位置指示信息也可以包括至少一个备SID列表中的SID。
网络设备可以根据至少一个备SID列表中的SID,获得至少一个备SID列表之后的SID。或根据第一个备SID列表中的SID,确定为第一个备SID列表提供备份的备SID列表的第一个SID。网络设备根据至少一个备SID列表中的SID获得相关SID的方式与上述根据主SID列表中的SID获得第一备SID的方式类似,在此不再赘述。
可选的,该位置信息还可以在第一报文的SRH的元数据中。该元数据的格式可如图5的TLV所示。该图中的类型字段标识表示该TLV的类型,该类型字段的取值可以标识该TLV是用于携带位置指示信息的TLV,该类型字段的取值可以是为位置指示信息新申请的类型,例如可以是91。长度字段的取值标识该TLV的长度。值字段用于可以用于指示第一备SID的第一个SID所在的位置,和/或至少个备SID列表的最后一个SID的位置,和/或至少一个备SID列表的后一个SID的位置。
在一个示例中,该元数据的值为,m5b3,可理解为:主SID列表的最后一个SID对应的SL的值为5,至少一个备SID列表的最后一个SID对应的SL的值为3。其中m为主转发路径的缩写,b为备转发路径的缩写。也可以在该元数据中定义不同的比特位对应不同的转发路径等等其他方式。本申请对于元数据中携带位置指示信息的方式不做限定。
本申请实施例中,位置指示信息也可以为上述两者或三者的结合,即,可以采用元数据+主SID列表中的尾SID的方式,也可以采用元数据+第一备SID列表中的SID的方式,或其他任意变化的方式来指示上述需要确定的位置信息,从而获得对应的第一备SID,或至少一个备SID列表后的第一个SID。
可选的,在第一报文中至少一个备SID列表还包括第二备SID列表,第二备SID列表为第一备SID列表的备份,和/或,第二备SID列表为主SID列表的备份。
S103:第一网络设备向第二网络设备发送第一报文。
当上述多个段标识列表中的第一个SID为第二网络设备的SID时,第一网络设备根据该SID向第二网络设备发送第一报文。
当该第一个SID为第一网络设备的SID,且该第一SID不是端标识列表对应的主转发路径中的最后一个SID时,第一网络设备根据确定第一个SID可用,为第一报文提供该第一个SID对应的服务,且第一网络设备获取该第一SID的后一个SID,并根据该后一个SID向第二网络设备发送第一报文。
在SRv6网络中,第一网络设备获得该SL的值减一后对应的SID,并将第一报文的目的地址字段携带的内容设置为该SID,并根据该SID向发送第一报文。
在该通信网络为SR-MPLS网络的情况下,第一网络设备弹出位于第一报文的标签栈的栈顶位置的SID后,根据弹出栈顶位置SID后的栈顶SID发送第一报文。
以上,可将SRv6网络中的报文头中DA对应的SID和SR-MPLS网络中的标签栈中的栈顶SID称为第一目的SID。该第一目的SID可能是主SID列表中的SID,也可能不是主SID列表中的SID。
在本步骤中,当第一目的SID是主SID列表中的SID时,则第一网络设备在发送第一报文之前,将第一目的SID视为目标SID。确定第一目的SID是否可用,第一目的SID可用包括:第一目的SID对应的服务可用,或第一目的SID可达。
当第一目的SID属于第一网络设备,即第一目的SID是第一网络设备的SID时,且第一目的SID对应于服务时,第一目的SID对应的服务不可用包括:第一网络设备确定无法提供该服务所需的资源;或者第一网络设备无法提供该服务所需的功能。反之,则认为第一目的SID对应的服务可用,即:第一网络设备可以执行该第一目的SID而无故障。
第一目的SID不可达包括:将第一目的SID作为目的地址,第一网络设备确定到该目的地址的路由不可达,或第一网络设备到该目的地址之间的任何一个网络设备故障或链路故障。
在第一目的SID可用的情况下,第一网络设备可以基于第一目的SID发送第一报文,即将第一目的SID作为目的地址,发送第一报文。
例如图4,为本申请方法实施例应用于图1所示的网络场景中的具体示例,当第一网络设备确认该SID2可用时,则将第一报文的目的地址字段(DA)的内容设置为SID2,向SID2对应的网络设备2发送第一报文。
SR网络中的网络设备可以默认配置为根据第一报文中的目的地址对应的SID或第一SID的可用性对报文进行处理。即,此时,网络设备不需要确认这些SID是否在主SID列表中。
例如,参见图4,假设网络设备1在确定SID2可用的情况下,将SID2作为目的地址,向网络设备2发送第一报文,该报文的报文头可简要如①所示,该报文头报文的段标识列表为(SID2,SID4,SID6,SID7,SID8,SID5),其中,主SID列表为(SID2,SID4),备SID列表为(SID6,SID7,SID8),其他SID列表为(SID5)。可认为主SID列表指示的主转发路径为网络设备2->网络设备4,从网络拓扑可以看出,该主转发路径还经过网络设备3,即该主转发路径也可以理解为:网络设备2->网络设备3->网络设备4,备SID列表指示的备转发路径为:网络设备6->网络设备7->网络设备8;端到端转发路径为:网络设备1->网络设备2->网络设备4->网络设备5或网络设备1->网络设备2->网络设备3->网络设备4->网络设备5。网络设备2接收第一报文,此时第一报文中的SL的值为5。
第一网络设备在确认目标SID是否可用时,可将主SID列表中的一个或多个作为目标SID,在这种场景中,则网络设备需要提前获知该段标识列表中,哪些SID为主SID列表中的SID,哪些SID为备SID列表中的SID。
如,在图4中,网络设备1也可将SID4作为目标SID,在确认SID2和SID4均可达,或仅确认SID4可达后,根据SID2向网络设备2发送第一报文。
在第一目的SID是主SID列表中的SID,且,第一目的SID不可用的情况下,可以参见S104的介绍,在此先不详细介绍。
S104:第二网络设备接收第一报文,根据目标SID是否可用对第一报文进行处理。
目标SID可为第二网络设备接收到第一报文时,该报文中的主段标识列表中的一个或多个SID。
第二网络设备根据目标SID是否可用对第一报文进行处理包括以下多种不同的解决方案:
解决方案1:
在第二网络设备是多个SID列表指示的转发路径中的主SID列表中未被执行的SID的上游设备时,第二网络设备接收第一报文,从第一报文中的该多个SID中获取第二目的SID,第二目的SID为主SID列表中的第一个SID。该上游设备包括:第二网络设备为多个SID列表指示的端到端主转发路径上的中间节点或头节点或途经的网络设备。
该目标SID可以包括第二目的SID,还可以包括在主SID列表中的其他SID。在目标SID可用时,第二网络设备根据第二目的SID向第三网络设备发送第一报文,第三网络设备是第二目的SID对应的网络设备。
下面,结合图4解释一下主SID列表的上游设备的概念:如图4所示,在该网络中的主SID列表为:(SID2,SID4),当网络设备2接收到第一报文时,则未被执行的SID包括:SID2和SID4,则可将第一网络设备认为是未被执行的SID:SID2,SID4对应的上游设备。当网络设备4接收到第一报文时,则未被执行的SID包括:SID4,则可将第二网络设备和第三网络设备认为是该未被执行的SID:(SID4)的上游设备。
在一个示例中,在该通信网络为SRv6网络的情况下,当该第一报文的目的地址对应的设备为第二网络设备时,则第二网络设备根据第一报文的目的地址,为第一报文提供该目的地址SID对应的服务。当该SID是包括指导转发功能的SID,如节点SID或链路SID时,第二网络设备在接收到第一报文后,根据SL=SL-1,从该段列表中读取该SL值对应的SID作为第二目的SID,将该第二目的SID作为该第一报文的目的地址,根据该目的地址,发送第一报文。
在另一个示例中,在该通信网络为SRv6网络的情况下,当该第一报文的目的地址对应的网络设备为第三网络设备的SID,如图4所示的网络设备3接收到报文时,该报文的目的地址为SID4,在此种情况下,网络设备3可根据该SID4是否可达,对第一报文进行处理,如果该SID4可达,则网络设备3根据SID4发送第一报文。如果SID4不可达,则网络设备3可以获取SL减一对应的SID,并将其作为目的地址,向网络设备6发送该第一报文。在这种情况中,网络设备3需要是支持SR的设备。
在该通信网络为SR-MPLS网络的情况下,第二网络设备接收的第一报文包括标签栈,此时位于标签栈的栈顶的SID为第二网络设备的SID。第二网络设备将位于该标签栈的栈顶的SID出栈,根据该SID,为第一报文提供该SID对应的服务;并将此时栈顶的SID作为第二目的SID。
可选的,在第二网络设备执行上述确定目的SID是否可用之前,第二网络设备接收到控制设备、或管理设备、或由管理人员通过管理接口发送的配置指令,并根据该配置指令执行确定目标SID是否可用而对第一报文进行处理的动作。此处的配置指令可以是在管理人员打开网络设备的与本申请实施例对应的功能的开关而下发的配置。此处,这些配置指令也可以发送给该段路由网络设备上的其他所有设备,本申请不做限定。
可选的,在第二网络设备是主SID列表的上游设备的情况下,第二网络设备根据第二目的SID是否可用对第一报文进行处理的操作,包括如下S1041至S1043的操作:
S1041:第二网络设备确定目标SID是否可用。
在本步骤中,第二网络设备确定第二网络设备到目标SID,即第二目的SID是否可达,在第二网络设备到第二目的SID可达,则确定第二目的SID可用,在第二网络设备到第二目的SID不可达,则确定第二目的SID不可用。
第二网络设备到第二目的SID不可达包括:将第二目的SID作为目的地址,第二网络设备确定到该目的地址的路由不可达,或,第二网络设备到该目的地址之间的任何一个网络设备故障或链路故障。
第二目的SID对应一个网络设备,为了便于说明称为第三网络设备,第二网络设备到该目的地址的路由不可达是指第二网络设备到第三网络设备的路由不可达。或者,第二网络设备到该目的地址之间的任何一个网络设备故障或链路故障是指:第二网络设备到第三网络设备之间的链路经过的任一个网络设备故障,或该链路经过的网络设备中的任意两个网络设备之间的链路故障。
可选的,第二网络设备通过其本地的出接口状态或链路状态感知第二网络设备到第三网络设备之间的链路经过的任一个网络设备是否故障,或者,感知该链路经过的网络设备中的任意两个网络设备之间的链路是否故障。或者,第二网络设备通过检测协议检测第二网络设备到第三网络设备之间的链路经过的任一个网络设备是否故障,或者,检测该链路经过的网络设备中的任意两个网络设备之间的链路是否故障。该检测协议可为双向转发检测(bidirectional forwarding detection,BFD)协议。
可选的S1042:第二网络设备根据目标SID可用,将第二目的SID作为目的地址,发送第一报文。
也就是说,第二网络设备向第二目的SID对应的第三网络设备发送第一报文。
在该通信网络为SRv6网络的情况下,将第一报文的目的地址字段(DA)的内容设置为第二目的SID,向第三网络设备发送第一报文。在该通信网络为SR-MPLS网络的情况下,根据第二目的SID,向第三网络设备发送第一报文。
可选的S1043:第二网络设备根据确定目标SID不可用时,获得第一备SID列表的第一个SID,并根据该第一备SID列表的第一个SID(第一备SID)处理第一报文。
第二网络设备根据第一备SID列表的第一个SID处理第一报文的方式包括:根据该SID,向第四网络设备发送第一报文。
第二网络设备获得第一备SID的方式详细请参加上述S102处的描述,在此不再赘述,仅做示例性介绍。
在一个示例中,在该通信网络为SRv6网络的情况下,第二网络设备跳过主SID列表中未被执行的SID并根据第一备SID列表处理第一报文的操作的实现过程为:
参见图4,第二目的SID为SID2,当网络设备1确定SID2不可用时,在第一报文中的主SID列表包括SID2和SID4,该主SID列表对应的第一备SID列表包括SID6、SID7和SID8。第一报文中包括位置指示信息,假设该位置指示信息包括主SID列表包括的SID数目为2和该主SID列表的头SID位置的位置信息,如,该头SID的位置为对应的SL值为5。这样第二网络设备根据该位置指示信息,确定主SID列表的位置,即,确定在该SID列表的最后一个SID的位置为SL=5-2=3,根据SL=3从第一报文中获取SL=3对应的第一备SID为SID6,将SID6作为目的地址向网络设备6发送第一报文,向网络设备6发送的第一报文的报文头可简要如⑥所示。
在该通信网络为SR-MPLS网络的情况下,第二网络设备跳过主SID列表中未被执行的SID并根据第一备SID列表处理第一报文的操作的实现过程为:
第一报文中的标签栈的栈顶中包括主SID列表中未执行的第一个SID,连续从该标签栈中出栈x+1个SID,x为主SID列表中未被执行的SID的数目,则新的栈顶SID为位于主SID列表之后的第一备SID列表的头SID,根据该头SID处理第一报文。例如,将该头SID作为目的地址,转发第一报文。
在另一个示例中,当主SID列表仅包括一个SID,或主SID列表中未被执行的SID仅包括最后一个SID时,当第二网络设备确定第二目的SID(即上述主SID列表中的唯一一个SID,或主SID列表中的尾SID)不可用时,则第二网络设备可以直接根据相关技术获取该第二目的SID的下一个SID,并根据该下一个SID对第一报文进行处理,如根据SL--获取其对应的SID,或弹出一个标签后获取栈顶标签。
解决方案2:
S105:第二网络设备从第一报文中获取目标SID,即第三目的SID,并根据第三目的SID是否可用对第一报文进行处理。
当该目标SID为主SID列表中未执行的SID中的第一个,且当该目标SID为第二网络设备的SID,且该SID包括对应的服务时,第二网络设备根据目标是否可用对第一报文进行处理的操作,具体包括如下S1051至S1053的操作:
S1051:第二网络设备从第一报文中获取目标SID。
在本步骤中,在该通信网络为SRv6网络的情况下,该报文的目的地址即为目标SID。在该通信网络为SR-MPLS网络的情况下,第一报文的标签栈的栈顶包括目标SID。为了叙述方便且同其他场景进行区别,将该目标SID称为第三目的SID。
由于第三目的SID是第二网络设备的SID,第三目的SID对应的服务为第二网络设备提供的服务。第二网络设备根据第三目的SID对应的服务可用的情况下,确定第三目的SID可用;在第三目的SID对应的服务不可用的情况下,确定第三目的SID不可用。第三目的SID是否可用的描述参见上方描述,本申请实施例在此不再赘述。
S1052:第二网络设备根据第三目的SID可用,为第一报文提供第三目的SID对应的服务。
如图4所示,当该网络设备为网络设备2时,网络设备2将该第一报文发送给网络设备9,并由服务设备9为该报文提供服务后,发回给网络设备2。
在第三目的SID不是主SID列表中的最后一个SID,第三网络设备从第一报文中获取位于第三目的SID之后的一个SID,将获取的SID作为目的地址,向对应的第三网络设备发送第一报文。
在该通信网络为SRv6网络的情况下,第三网络设备设置SL=SL-1,根据减小的SL从第一报文中的该多个SID中读取SID,将读取的SID作为目的地址,向对应的第三网络设备发送第一报文。
例如,参见图4,网络设备2在确定SID2可用的情况下,为第一报文提供SID2对应的服务,设置SL=SL-1=4,根据减小后的SL从第一报文中的该多个SID读取SID4,将SID4作为目的地址,向网络设备4发送第一报文。
在该通信网络为SR-MPLS网络的情况下,第二网络设备将第一报文中的标签栈的栈顶的SID出栈,将新的栈顶SID作为目的地址,发送第一报文。
在第三目的SID是主SID列表中的最后一个SID时,将在S106中进行详细说明,在此先不介绍。
S1053:第二网络设备根据确定第三目的SID不可用时,根据第一备SID列表中的第一个SID(第一备SID)处理第一报文。
第二网络设备根据第一备SID处理第一报文包括:第二网络设备根据第一备SID向第四网络设备发送第一报文。
第二网络设备获得第一备SID列表中的第一个SID的方法参见上述S102、S104处的描述,在此主要做示例性描述。
在一个示例中,在该通信网络为SRv6网络的情况下,第二网络设备跳过主SID列表中未被执行的SID并根据第一备SID列表处理第一报文的操作的实现过程为:
例如,参见图4,假设网络设备2确定SID2不可用,即目标SID为SID2,在第一报文中的主SID列表包括SID2和SID4,该主SID列表对应的第一备SID列表包括SID6、SID7和SID8。第一报文中包括位置指示信息,假设该位置指示信息包括主SID列表包括的SID数目为2和该主SID列表的头SID位置,该头SID位置是一个SL值,该SL值为5。这样第三网络设备根据该位置指示信息,从第一报文中获取第一备SID的头SID为SID6,将SID6作为目的地址向网络设备6发送第一报文。
在该通信网络为SR-MPLS网络的情况下,第二网络设备跳过主SID列表中未被执行的SID并根据第一备SID列表处理第一报文的操作的实现过程为:
第一报文中的标签栈的栈顶中包括主SID列表中未执行的第一个SID,连续从该标签栈中出栈x+1个SID,x为主SID列表中未被执行的SID数据,新的栈顶SID为位于主SID列表之后的第一备SID列表的第一个SID,根据该第一备SID处理第一报文。例如,向第一备SID对应的第三网络设备发送第一报文。
解决方案3:
当该目标SID为主SID列表中的最后一个SID时,且该目标SID为第二网络设备的SID时。
S106:第二网络设备从第一报文中获取目标SID,即第四目的SID,并根据第四目的SID是否可用对第一报文进行处理。
第二网络设备接收第一报文,从第一报文中获取第四目的SID。在该通信网络为SRv6网络的情况下,第一报文的目的地址即为第四目的SID。在该通信网络为SR-MPLS网络的情况下,第一报文的标签栈的栈顶为第四目的SID,将该栈顶的SID出栈,得到第四目的SID。
可选的,第二网络设备接收配置指令;根据该配置指令执行根据第四目的SID是否可用发送第一报文。可选的,该配置指令可以是控制设备发送的,用于触发第四网络设备启动功能,该功能就是根据第四目的SID是否可用对第一报文进行处理。
可选的,第二网络设备根据第四目的SID是否可用对第一报文进行处理,包括如下S1061至S1063的操作:
S1061:第二网络设备确定第四目的SID是否可用。
由于第四目的SID是第二网络设备的SID,第四目的SID对应的服务是第二网络设备提供的服务,第二网络设备确定第四目的SID对应的服务是否可用,在第四目的SID对应的服务可用的情况下,确定第四目的SID可用;在第四目的SID对应的服务不可用的情况下,确定第四目的SID不可用。
例如,参见图4,假设网络设备4接收第一报文,此时第一报文中的SL的值为4,根据该SL值从第一报文的该多个SID中获取SID4,该SID4即为第四目的SID,确定SID4是否可用。
S1062:第二网络设备根据第四目的SID可用时,为第一报文提供第四目的SID对应的服务,跳过该至少一个备SID列表,发送第一报文。
第四网络设备根据位置指示信息跳过该至少一个备SID列表,发送第一报文。
第一报文中携带的位置指示信息的内容可参见上述S102中的内容,本申请在此不再赘述。
在如图4所示的示例中,网络设备4确定SID4可用,根据位置指示信息确定备SID列表包括的SID数目为3,此时第一报文中的SL=4,设置SL=SL-4=0,根据减小后的SL跳过该备SID列表,从第一报文中获取SID5,将SID5作为目的地址向网络设备5发送第一报文。当然,位置指示信息也可以直接包括:多个SID列表中的在至少一个备SID列表之后的第一SID对应的SL的值,第四网络设备可以直接根据该SL的值获得SID5。
在另一个示例中,在该通信网络为SR-MPLS网络的情况下,第一报文中的标签栈的栈顶中包括该至少一个备SID列表中的第一个SID,连续从该标签栈中将至少一个备SID列表中的SID出栈,则新的栈顶SID则为至少一个备SID列表之后的第一个SID,根据第一个SID处理第一报文。例如,将该第一个SID作为目的地址,转发第一报文。
特别的,当第一报文中的该多个段标识在该至少一个备SID列表后无其他SID时,即,第二网络设备为在该多个段标识列表指示的端到端主转发路径对应的尾节点时,则第二网络设备根据第四目的SID剥离该多个段标识列表。
在这种场景中,第二网络设备可以是与第三网络设备相连接的尾节点,第四目的SID指示的操作为去掉第一报文的报文头。即第二网络设备剥离或解封装第一报文的SRH或MPLS报文头,得到第二报文,根据第二报文中的目的地址向第三网络设备发送第二报文。
当该第三目的SID是多个段标识列表指示的端到端主转发路径对应的尾节点时的更多应用场景,可参见图8、图10和图11所示应用场景实施例,本申请在此不再赘述。
S1063:第二网络设备根据确定第四目的SID不可用时,根据第一备SID列表处理第一报文。
在第一报文中,第一备SID列表位于第四目的SID之后。
第二网络设备根据第一备SID列表处理第一报文包括:第二网络设备根据第一备SID列表中的第一个SID,即第一备SID,向第四网络设备发送第一报文。
可选的,在该通信网络为SRv6网络的情况下,第一报文中的SL指示第四目的SID,第四网络设备设置SL=SL-1,减小后的SL指示位于主SID列表之后的第一备SID列表的头SID,根据减小后的SL从第一报文包括的该多个SID中读取一个SID,得到第一备SID列表的头SID,根据该头SID处理第一报文。例如,将该头SID作为目的地址,转发第一报文。
例如,参见图4,网络设备4确定SID4不可用,此时第一报文中的SL=4,设置SL=SL-1,根据减小后的SL,从第一报文中获取第一备SID的头SID为SID6,将SID6作为目的地址向网络设备6发送第一报文。
在该通信网络为SR-MPLS网络的情况下,第一报文中的标签栈的栈顶中包括第一备SID列表中的头SID,从该标签栈中出栈一个SID,得到第一备SID列表的头SID,根据该头SID处理第一报文。例如,将该头SID作为目的地址,转发第一报文。
当第一报文中还包括第二备SID列表,当该第二备SID列表为第一备SID列表的备份时,可将该第一备SID列表视为主SID列表,第二备SID列表视为上述第一备SID列表,采用上述方法实施例提供的技术方案,对第一备SID列表提供保护。
当第一报文的至少一个备SID列表中的多个备SID列表都是主SID列表的备份的时候,网络设备可以根据随机、哈希、或对多个备SID列表指定选择顺序的方式,从中确定将哪个备SID列表作为第一备SID列表,即,当主SID列表中的SID不可用时,根据该备SID列表中的第一个SID对第一报文进行处理。当该多个备SID列表存在指定选择顺序的时候,可以将排序更高的备SID列表放在与主SID列表相邻的位置,将排序次高的备SID列表放在第一备SID列表的后面。
在本申请实施列中,由于第一网络设备生成的第一报文包括主SID列表和至少一个备SID列表,在主SID列表中的SID不可用的情况下,跳过主SID列表中未被执行的SID,得到第一备SID列表的第一个SID,根据第一备SID列表处理第一报文。又由于第一备SID列表为主SID列表的备份,这样使用第一备SID列表处理第一报文,避免跳过了主SID列表提供的服务。在主SID列表中的SID是与目的端相连的尾节点的SID,在主SID列表中的SID不可用的情况下,使用第一备SID列表处理第一报文,避免第一报文传输的时延大或进一步造成的报文传输中断等网络可靠性较低的问题。
以上,步骤S104包括上述S1041-S1043,以及S105,S106以及相关子步骤的详细描述。
以上,结合图1所示的网络场景,概要介绍了本申请的方法实施例,以下,再结合各种不同应用场景,提供图3所示的方法实施例的具体应用示例,如图7-图11所示。
图7为图3所示的方法实施例的一种具体应用,该在应用中,主SID列表和备SID列表均各仅有一个SID,该应用特别描述了本申请实施例对段路由网络中的转发路径上的中间节点的转发路径或服务的一种备份保护场景,具体如下:
在如图7所示的SRv6网络中,网络设备11和网络设备12、网络设备14相连,网络设备12与网络设备15、网络设备11和网络设备13相连,网络设备14与网络设备11、网络设备16和网络设备13相连,网络设备11为该段路由网络中的头节点,网络设备13为该段路由网络的尾节点。SID1为网络设备11的段标识,SID2为网络设备12的段标识,SID3为网络设备13的段标识,SID4为网络设备14的段标识。
网络设备11(为第一网络设备)接收到第二报文后,为第二报文添加SRH,如①所示,该SRH包括段标识列表和SL,该段标识列表为:(SID2,SID4,SID3),SL=2,指示该段标识列表中的SID2。该段标识列表可逻辑划分为一个主SID列表(SID2),第一备SID列表(SID4)以及一个其他SID列表(SID3)。其中,备SID列表与主SID列表相邻,即:备SID列表的第一个SID对应的SL的值为主SID列表的最后一个SL的值减一。网络设备12的SID2对应的服务为服务2,即,网络设备通过SID2为在该段路由网络上传输的报文提供服务2,如防病毒过滤等。网络设备14的SID4对应的服务也为服务2。通过上述段标识列表可以实现第一SID列表为主SID列表提供的服务进行备份。
网络设备11在确定SID2可用时,将SID2作为目的地址,向网络设备12发送该第一报文。
网络设备12接收第一报文,为第一报文提供SID2对应的服务2,并可以根据SID2的指示,从第一报文的段列表中获取目的SID为SID3,将SID3作为目的地址,向网络设备13发送第一报文,该报文的报文头可简要如②所示。
或者,网络设备11在确定SID2不可用时,根据SL=SL-1,从第一报文的段列表中获取第一备SID列表中的备SID4,将SID4作为目的地址,向网络设备14发送第一报文,该报文的报文头可简要如③所示。
网络设备14接收第一报文,第一报文包括的SL=1,根据该SL从第一报文的段列表中获取第一备SID列表的SID4,为第一报文提供SID4对应的服务2,设置SL=SL-1=0,根据减小后的SL从第一报文的段列表中获取第六目的SID为SID3,将SID3作为目的地址,向网络设备13发送第一报文,该报文的报文头可简要如④所示。
图8为图3所示的方法实施例的另一种具体应用,该应用特别描述了本申请实施例对段路由网络中的转发路径上的尾节点的一种备份保护场景:
在图8所示的SRv6网络中,网络设备11和网络设备12、网络设备15相连,网络设备12与网络设备13和网络设备11相连,网络设备15与网络设备11和网络设备21相连,网络设备21与网络设备22和网络设备15相连,网络设备13与网络设备12和网络设备22相连。其中,SID1为网络设备11的段标识,SID3为网络设备12的段标识,SID2为网络设备15的段标识,SID5为网络设备21的段标识,SID6为网络设备22的段标识。
网络设备11将SID2作为目的地址,向网络设备15发送第一报文,该报文包括段标识列表(SID2,SID3,SID5,SID6),其可逻辑划分为第一SID列表(SID2),主SID列表(SID3),备SID列表(SID5,SID6),其中,备SID列表与主SID列表相邻,即:备SID列表的第一个SID对应的SL的值为主SID列表的最后一个SL的值减一。其中备SID列表指示的转发路径:网络设备21->网络设备22为主SID列表指示的主转发路径:网络设备12的备份。即,该段标识列表(SID2,SID3,SID5,SID6)指示的端到端转发路径为:网络设备11->网络设备15->网络设备12。
网络设备15接收第一报文,该报文的报文头简要如①所示,网络设备获取SID2,为第一报文提供SID2对应的服务。网络设备15根据SL=SL-1从第一报文的SID列表中获取主SID列表中未执行的SID为SID3,并将该SID3作为目标SID,在确定SID3可用时,可将SID3作为目的地址,根据SID2,向网络设备12发送第一报文,该报文的报文头可简要如②所示。
网络设备12接收第一报文,获取目标SID为SID3,此时,当SID3为节点(Endpoint,END)SID,3层链路链接节点(Endpoint with Layer-3cross-connect,End.X)SID或带查表(Endpoint with Specific IPv6 table lookup,End.T)SID任一种类型或其他类型的SID时,可以具备一种特殊新定义的最大段解封装(ultimate segment decapsulation,USD)功能,而不需要关心该多个段标识列表中是否还有其他SID,将外层IPv6头以及SRH全部剥离之后,根据Payload部分查表向目的端发送报文。
或者,网络设备15在确定SID3不可用时,根据SL=SL-1=2,从第一报文的SID列表中获取第一备SID列表中的备SID5,将SID5作为目的地址,向网络设备21发送第一报文。
网络设备21接收第一报文,该第一报文的报文头可简要如④所示,其SL=2。网络设备21获取SID5,由于SID5为网络设备21的节点SID或链路SID,为指导转发路径的SID,网络设备21确定SID5可被顺利执行后,根据SL=SL-1=1段标识列表中获取第一备SID列表中的下一个备SID为SID6,将SID6作为目的地址,向网络设备22发送第一报文,该报文的报文头可简要如⑤所示。网络设备22接收第一报文,获取SID6,此时,当SID6为节点(Endpointfunction,END)SID,链路(Endpoint with Layer-3cross-connect,End.X)SID或查表(Specific IPv6 table lookup,End.T)SID任一种类型或其他类型的SID时,可以具备一种特殊的最大段解封装(ultimate segment decapsulation,USD)功能,而不需要关心该多个段标识列表中是否还有其他SID,将外层IPv6头以及SRH全部剥离之后,根据Payload部分查表向目的端发送报文。
该SID可为新定义的一种,具备新功能的SID类型。该类型的SID为将报文中的外层IPv6头包括SRH全部剥离后,根据下层IPv6封装中的目的地址在网络上设备中查找路由后将报文发送给对应的CE设备。该类型的SID定义与进行解封装以及查找IPv6表的节点类型(Endpoint with decapsulation and specific IPv6 table lookup,END.DT6)的SID类似,区别在于END.DT6类型的SID必须为SRH中的SID列表中的最后一个SID,而在本方案中,该SID类型不需要必须为SRH中的SID列表中的最后一个SID。
图9为图3所示的方法实施例的另一种具体应用,该应用特别描述了本申请实施例对段路由网络中的转发路径上的网络设备提供的服务的一种备份保护场景:
在图9所示的SRv6网络中,网络设备11和网络设备12相连,网络设备12与网络设备11、网络设备15、网络设备16和网络设备13相连,网络设备15与网络设备12相连,网络设备16与网络设备12相连,网络设备13与网络设备12相连。其中,SID1为网络设备11的段标识,SID2和SID4为网络设备12的段标识,SID2对应于通过网络设备15提供一种服务,SID4对应于通过网络设备16提供与网络设备15提供的同一种服务,SID3为网络设备13的段标识。
网络设备11接收源端发送的第二报文,为第二报文添加SRH,该SRH包括SID列表和SL,该报文的报文头可简要如①所示,该SID列表为:(SID2,SID4,SID3),其SL=2。可将该段标识列表逻辑上划分为多个SID列表,包括主SID列表(SID2),和备SID列表(SID4),以及其他SID列表(SID3),其中,备SID列表与主SID列表相邻,即:备SID列表的第一个SID对应的SL的值为主SID列表的最后一个SL的值减一。通过在该报文的段标识列表中携带主SID列表和备SID列表,从而使SID4对应的服务为SID2对应的服务提供备份。
网络设备11根据SID2向网络设备12发送该报文,网络设备12接收到该报文后,确定SID2对应的服务是否可用,并将报文发送给网络设备15提供对应的服务,当网络设备15执行对应的服务无故障后,将报文发送给网络设备12,网络设备12根据该SID2的指示,跳过SID4,获取目的SID为SID3,并将该SID3作为报文的DA,发送给网络设备13。该报文的报文头可简要如②所示。
如果网络设备12确定SID2对应的服务不可用,则网络设备可以根据SL=SL--,获取备SID列表中的第一个SID,SID4,根据该SID,将报文发送给网络设备16,该报文的报文头如③所示,并由网络设备16为报文提供对应的服务,在网络设备16为该报文提供对应的服务后,可以将报文发送给网络设备12。网络设备12根据SL--,获得新的目的SID为SID3,并根据SID3将该报文发送给网络设备13,该报文的报文头可简要如④所示。
以上,图7-图9的示例中,由于主SID列表仅包括一个SID,则该报文中的位置信息可以包括:主SID列表中的SID,即在图8-图10的应用场景中的主SID列表中的唯一一个SID。
图10为图3所示的方法实施例的另一种具体应用,该应用特别描述了本申请实施例对段路由网络中的转发路径上的尾节点的一种备份保护场景,具体如下:在图10所示的SRv6网络中,网络设备11和网络设备12、网络设备13相连,网络设备12与网络设备11相连,网络设备13与网络设备11相连。其中,SID1为网络设备11的段标识,SID2为网络设备12的段标识,SID3为网络设备13的段标识。
网络设备11接收源端发送的第二报文,为第二报文添加SRH,该SRH包括SID列表和SL,该报文的报文头可简要如①所示,该报文中的SID列表为:(SID2,SID3),SL=1,SL指示SID列表中的SID2。该SID列表可逻辑划分为:一个主SID列表(SID2)和一个备SID列表(SID3),其中,备SID列表与主SID列表相邻,即:备SID列表的第一个SID对应的SL的值为主SID列表的最后一个SL的值减一。通过在该SID列表中携带主备SID的方式,实现对段路由网络中的尾节点的报文,即,在图10所示的应用场景中,主转发路径为:网络设备12,备转发路径为网络设备13,端到端主转发路径为网络设备11->网络设备12。网络设备11获取目标SID为SID2,并确定SID2是否可用,在本场景中,SID2可用即SID2可达。在确定SID2可用的情况下,将报文发送给网络设备12,该报文的报文头可简要如①所示。网络设备12接收到报文后,根据该SID2执行将SRH头从报文中剥离的动作并获取目的地址为IP2,根据该IP2发送该报文。即,在此场景中,该SID2为一种具备特殊功能的SID。该SID可为新定义的一种,具备新功能的SID类型。该类型的SID为将报文中的外层IPv6头包括SRH全部剥离后,根据下层IPv6封装中的目的地址在网络上设备中查找路由后将报文发送给对应的CE设备。该类型的SID定义与进行解封装以及查找IPv6表的节点类型(Endpoint with decapsulation andspecific IPv6 table lookup,END.DT6)的SID类似,区别在于END.DT6类型的SID必须为SRH中的SID列表中的最后一个SID,而在本方案中,该SID类型不需要必须为SRH中的SID列表中的最后一个SID。
网络设备11在确定SID2不可用的情况下,根据SL--,取目的SID为SID3,根据该SID3,将报文发送给网络设备13,该报文的报文头可简要如②所示。网络设备12接收到报文后,确定SID3为自己的SID,并根据该SID剥离SRH头,获得DA为IP2,根据该IP2将发送该报文。该SID可以为上述END.DT6或新定义的SID类型。
以上,在图10所示的示例中,由于主SID列表仅包括一个SID,且备SID也仅包括一个SID,则可以认为该报文中并不携带位置指示信息,即,在本申请实施例中,位置指示信息为可选的。
图11为图3所示的方法实施例的另一种具体应用,该应用特别描述了本申请实施例应用于SR-MPLS的一种备份保护场景,具体如下:
在如图11所示的SR-MPLS网络中,网络设备11和网络设备12相连,网络设备12与网络设备11、网络设备13和网络设备14相连,网络设备13与网络设备12相连,网络设备14与网络设备12相连。其中,SID:1101为网络设备12的SID,网络设备13包括两个SID,分别为10001和20000,网络设备14的两个SID,分别为1200和20001。
网络设备11接收源端发送的第二报文,为第二报文添加MPLS报文头,该报文头的标签栈即段标识列表为:(1101,10001,20000,1200,20001),可将其逻辑划分为其他SID列表(1101),主SID列表(10001,20000),备SID列表(1200,20001)。即:主转发路径为网络设备13,备转发路径为网络设备14,端到端主转发路径为网络设备12->网络设备13,端到端备转发路径为网络设备12->网络设备14。其中,备SID列表与主SID列表相邻,即,在MPLS报文头的标签栈中,备SID列表在主SID列表之后。
网络设备11根据栈顶的SID:1101,向网络设备12发送第一报文,该报文的MPLS报文头简要如①所示。
网络设备12接收第一报文,弹出标签1101,弹出标签后的报文头可简要如②所示。并确定主SID列表中的目标SID为10001,确定目标SID是否可用。在确定10001可用时,根据10001向网络设备13发送第一报文。
网络设备13接收第一报文,该报文的报文头可简要如③所示。该标签栈的栈顶SID为20000,则网络设备13根据该栈顶SID去除第一报文的MPLS报文头,向目的端发送第二报文。在被保护点网络设备13上分配虚拟专用网(virtual private network,VPN)私网标签20000时,可以定义其转发行为:连续弹出3层标签,并根据内层私网IP地址查询私网路由表,并根据私网路由继续转发报文给目的端设备。如果不可达,则将该SID 20000出栈,得到第一个备SID为1200,并根据该SID向网络设备14发送第一报文,该报文的报文头可简要如④所示。
或者,网络设备12在确定10001不可用时,获取主SID列表中未被执行的SID数目为1,从该标签栈连续出栈两次,或,获取备SID列表的第一个SID,即目的SID为1200,并根据该SID:1200,向网络设备14发送第一报文,该报文的报文头可简要如④所示。
网络设备14接收第一报文,弹出栈顶SID1200,并得到SID:20001,根据20001,去除第一报文中的MPLS报文头,向目的端发送第二报文。
以上,在图11所示的示例中,由于为在SR-MPLS网络中的应用,该报文中的位置指示信息包括:主SID列表中的SID。为了便于在SR-MPLS网络中实现本申请实施例的技术方案,可要求在该SR-MPLS网络中的所有节点的分段路由全局块(segment routing globalblock,SRGB)的范围一致,例如都是1000~10000,便于在不同网络位置对报文携带的标签栈中的全局标签含义理解一致。
参见图12,本申请实施例提供了一种报文处理装置1200,应用于段路由网络,所述装置200可以部署在图1、图2、图3、图4、图7、图8、图9、图10或图11所示的实施例提供的任一网络设备中。例如,所述装置1200可以部署在图3所示实施例提供的第一网络设备、第二网络设备、第三网络设备或第四网络设备,或者,可以部署在图4所示实施例提供的网络设备1、网络设备2、网络设备3、网络设备4、网络设备5、网络设备6、网络设备7或网络设备8等,本申请在此不再一一赘述。所述装置1200包括:
接收单元1201,用于接收第一报文,第一报文包括多个段标识SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份;
处理单元1202,用于根据主SID列表对第一报文进行处理。
可选的,处理单元1202对第一报文进行处理的详细实现过程,可以参见图3所示的实施例的S104以及其详细步骤中相关内容。
可选的,处理单元1202,用于:
根据目标SID是否可用,对第一报文进行不同处理,目标SID是主SID列表中未被执行的SID中的一个或多个。
可选的,第一备SID列表指示的转发路径为主SID列表指示的转发路径的备份路径。
可选的,目标SID可用包括:
所述装置1200到目标SID对应的网络设备可达。
可选的,所述装置还包括第一发送单元1203,第一发送单元1203,用于当目标SID不可用时,根据第一SID发送第一报文,第一SID为第一备SID列表的第一个SID。
可选的,所述装置1200为该多个SID列表指示的端到端主转发路径上的中间节点,目标SID为主SID列表中的最后一个SID,目标SID为所述装置1200的SID;所述装置1200还包括第二发送单元1204,
第二发送单元1204,用于当目标SID可用时,根据第一SID发送第一报文,第一SID为该多个SID列表中在至少一个备SID列表之后的第一个SID。
可选的,所述装置1200为该多个SID列表指示的端到端主转发路径上的尾节点,目标SID为主SID列表中的最后一个SID,目标SID为所述装置1200的SID;
处理单元1202,用于当目标SID可用时,执行目标SID对应的功能,剥离多个SID列表。
可选的,处理单元1202剥离多个SID列表的详细实现过程,可以参见图3所示的实施例的S1062中的相关内容。
可选的,第一备SID列表对应的服务为主SID列表对应的服务的备份,目标SID可用包括:目标SID对应的服务可用。
可选的,处理单元1202,用于在目标SID不可用时,使用第一SID为第一报文提供服务,第一SID为第一备SID列表的第一个SID。
可选的,所述装置1200为该多个SID列表指示的端到端主转发路径上的中间节点,目标SID为未被执行的SID中的第一个,所述装置1200还包括第三发送单元1205,
处理单元1202,用于在目标SID可用时,提供目标SID对应的服务;
第三发送单元1205,用于根据第一SID发送第一报文,第一SID为该多个SID列表中在至少一个备SID列表之后的第一个SID。
可选的,处理单元1202提供目标SID对应的服务,以及第三发送单元1205发送第一报文的详细实现过程,可以参见图3所示的实施例的S104以及其详细步骤中的相关内容。
可选的,所述装置1200为该多个SID列表指示的端到端主转发路径上的尾节点,目标SID为未被执行的SID中的最后一个。
处理单元1202,用于在所述目标SID可用时,提供所述目标SID对应的服务,并剥离所述多个SID列表。
可选的,第一报文包括位置指示信息,处理单元1202,还用于:
根据该位置指示信息获得第一SID,该位置指示信息用于指示以下一项或多项:主SID列表在多个SID列表中的位置、第一备SID列表在多个SID列表中的位置和至少一个备SID列表在多个SID中的位置。
可选的,该位置指示信息包括:主SID列表的最后一个SID和/或主SID列表中未被执行的SID中的第一个SID。
可选的,该位置指示信息携带在第一报文的段路由头的元数据中。
可选的,接收单元1201,还用于接收配置指令;
处理单元1202,还用于根据该配置指令执行根据目标SID是否可用,获得第二SID;
处理单元1202,用于根据第二SID处理第一报文,第二SID包括:主SID列表中的SID、第一备SID列表的第一个SID、或多个SID列表中至少一个备SID列表后的第一个SID。
可选的,处理单元1202根据该配置指令执行根据目标SID是否可用的详细实现过程,可以参见图3所示的实施例的S104以及其详细步骤中的相关内容。
可选的,该多个SID列表在第一报文的段路由头SRH中或该多个SID列表在第一报文的多协议标签交换头中。
可选的,主SID列表和第一备SID列表在所述第一报文的不同的SRH中。
可选的,主SID列表与第一备SID列表相邻,主SID列表的最后一个SID在第一备SID列表之前。
可选的,至少一个备SID列表还包括第二备SID列表,第二备SID列表为第一备SID列表的备份和/或第二备SID列表为主SID列表的备份。
可选的,该多个SID列表还包括另一个主SID列表和另一个备SID列表,另一个备SID列表为另一个主SID列表的备份。
可选的,另一个主SID列表在主SID列表属于不同的段。
在本申请实施例中,接收单元接收第一报文,第一报文包括多个段标识SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份;处理单元在根据主SID列表对第一报文进行处理的过程中,在主SID列表指示的路径故障时,基于第一备SID列表对第一报文进行处理,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
参见图13,本申请实施例提供了一种报文处理装置1300,应用于段路由网络,所述装置1300可以部署在图1、图2、图3、图4、图7、图8、图9、图10或图11所示的实施例提供的网络设备中。例如,所述装置1300可以部署在图3所示实施例提供的第一网络设备,或者,可以部署在图4所示实施例提供的网络设备1,或者,可以部署在图7所示实施例提供的网络设备11,或者,可以部署在图8所示实施例提供的网络设备15,或者,可以部署在图9或图10所示实施例提供的网络设备11,或者,可以部署在图11所示实施例提供的网络设备12。
所述装置1300包括:
发送单元1301,用于发送第一报文,第一报文包括多个段标识SID列表,该多个SID列表至少包括主SID列表和至少一个备SID列表,至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份。
可选的,所述装置1300还包括处理单元1302,处理单元1302用于生成第一报文。
处理单元1302生成第一报文的详细实现过程,可以参见图3所示的实施例中的S102中的相关内容,发送单元1301发送第一报文的详细实现过程,可以参见图3所示的实施例中的S103中的相关内容。
可选的,所述装置1300还包括获得单元1303,该获得单元1303,用于获得上述多个段标识列表。获得单元1303获得多个段标识列表的详细实现过程,可以参见图3所示的实施例中的S101中的相关内容。
可选的,第一报文包括位置指示信息,该位置指示信息用于指示以下一项或多项:主SID列表在该多个SID列表中的位置、第一备SID列表在该多个SID列表中的位置和至少一个备SID列表在该多个SID中的位置。
可选的,该位置指示信息包括:主SID列表的最后一个SID和/或主SID列表中未被执行的SID中的第一个SID中。
可选的,该位置指示信息携带在第一报文的段路由头的元数据中。
可选的,该多个SID列表携带在第一报文的段路由头SRH中或该多个SID列表携带在第一报文的多协议标签交换MPLS头中。
可选的,该主SID列表与第一备SID列表相邻,主SID列表的最后一个SID在第一备SID列表之前。
可选的,至少一个备SID列表还包括第二备SID列表,第二备SID列表为第一备SID列表的备份和/或第二备SID列表为主SID列表的备份。
在本申请实施例中,发送单元发送第一报文,第一报文包括多个段标识SID列表,该多个SID列表至少包括主SID列表和至少一个备SID列表,该至少一个备SID列表包括第一备SID列表,第一备SID列表为该主SID列表的备份。由于第一报文中的第一备SID列表为主SID列表的备份,这样在主SID列表指示的路径故障时,段路由网络中的网络设备基于第一备SID列表对第一报文进行处理,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
参见图14,本申请实施例提供了一种报文处理装置1400,应用于段路由网络,所述装置1400可以部署在图1或图3所示的实施例提供的控制设备或算路单元中。所述装置1400包括:
发送单元1401,用于向第一网络设备发送第一消息,第一消息包括多个段标识SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份;
第一消息使得第一网络设备生成第一报文,第一报文包括该多个SID列表。
可选的,所述装置1400还包括处理单元1402,处理单元1402用于生成第一消息。
处理单元1402生成第一消息和发送单元1401发送第一消息的详细实现过程,可以参见图3所示的实施例中的S101中的相关内容。
可选的,第一消息还包括报文特征或路由特征,第一报文符合该报文特征或路由特征。
可选的,第一消息还包括位置指示信息,该位置指示信息用于指示以下一项或多项:主SID列表在该多个SID列表中的位置、第一备SID列表在该多个SID列表中的位置和至少一个备SID列表在多个SID中的位置。
可选的,该位置指示信息包括:主SID列表的最后一个SID和/或主SID列表中未被执行的SID中的第一个SID。
在本申请实施例中,发送单元向第一网络设备发送第一消息,第一消息包括多个段标识SID列表,该多个SID列表包括主SID列表和至少一个备SID列表,至少一个备SID列表包括第一备SID列表,第一备SID列表为主SID列表的备份。这样第一网络设备在生成第一报文时,第一报文可以包括该多个SID列表,即生成的第一报文中包括主SID列表和第一备SID列表,由于第一备SID列表为主SID列表的备份,这样在主SID列表指示的路径故障时,第一网络设备基于第一备SID列表对第一报文进行处理,从而在段路由网络中继续实现数据报文的转发处理,提高网络传输的可靠性。
参见图15,本申请实施例提供了一种报文处理装置1500示意图,应用于段路由网络。所述装置1500可以是图3所示实施例提供的第一网络设备、第二网络设备、第三网络设备或第四网络设备,或者,可以是图4所示实施例提供的网络设备1、网络设备2或网络设备4等,或者,可以是图7所示实施例提供的网络设备11或网络设备12等,或者,可以是图8所示实施例提供的网络设备15或网络设备12等,或者,可以是图9所示实施例提供的网络设备11等,或者,可以是图10所示实施例提供的网络设备11或网络设备12等,或者,可以是图11所示实施例提供的网络设备12或网络设备13等。
该装置1500包括至少一个处理器1501,总线系统1502,存储器1503以及至少一个通信接口1504。
该装置1500是一种硬件结构的装置,可以用于实现图12所述的装置1200中的功能模块。例如,本领域技术人员可以想到图12所示的装置1200中的处理单元1202可以通过该至少一个处理器1501调用存储器1503中的代码来实现,图12所示的装置1200中的接收单元1201、第一发送单元1203、第二发送单元1204可以通过该通信接口1504来实现。
可选的,上述处理器1501可以是一个通用中央处理器(central processingunit,CPU),网络处理器(network processor,NP),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
上述总线系统1502可包括一通路,在上述组件之间传送信息。
上述通信接口1504,用于与其他设备或通信网络通信。
上述存储器1503可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1503可以是独立存在,通过通信总线1502与处理器1501相连接。存储器1503也可以和处理器1501集成在一起。
可选地,存储器1503用于存储执行本申请方案的程序代码或指令,并由处理器1501来控制执行。处理器1501用于执行存储器1503中存储的程序代码。程序代码中可以包括一个或多个软件模块。可选地,处理器1501自身也可以存储执行本申请方案的程序代码或指令。
在具体实现中,作为一种实施例,处理器1501可以包括一个或多个CPU,例如图15中的CPU0和CPU1。
在具体实现中,作为一种实施例,该装置1500可以包括多个处理器,例如图15中的处理器1501和处理器1507。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
通信接口1504,使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(RAN)或无线局域网(wireless local area networks,WLAN)等。在本申请实施例中,通信接口504可以用于接收分段路由网络中的其他网络设备发送的报文,也可以向分段路由网络中的其他网络设备发送报文。通信接口504可以为以太接口(Ethernet)接口、快速以太(Fast Ethernet,FE)接口或千兆以太(Gigabit Ethernet,GE)接口。
应理解,上述各种产品形态的网络设备,分别具有上述报文处理方法实施例中的网络设备的任意功能,此处不再赘述。
参见图16,本申请实施例提供了一种报文处理装置1600示意图。所述装置1600可以是图1、图2、图3、图4、图7、图8、图9、图10或图11所示的实施例提供的网络设备中的任一网络设备。例如,所述装置600可以是图3所示实施例提供的第一网络设备,或者,可以是图4所示实施例提供的网络设备1,或者,可以是图7所示实施例提供的网络设备11,或者,可以是图8所示实施例提供的网络设备15,或者,可以是图9或图10所示实施例提供的网络设备11,或者,可以是图11所示实施例提供的网络设备12。
该装置1600包括至少一个处理器1601,总线系统1602,存储器1603以及至少一个通信接口1604。
该装置1600是一种硬件结构的装置,可以用于实现图13所述的装置1300中的功能模块。例如,本领域技术人员可以想到图13所示的装置1300中的处理单元1302可以通过该至少一个处理器1601调用存储器1603中的代码来实现,图13所示的装置1300中的发送单元1301可以通过该通信接口1604来实现。
可选的,上述处理器1601可以是一个通用中央处理器(central processingunit,CPU),网络处理器(network processor,NP),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
上述总线系统1602可包括一通路,在上述组件之间传送信息。
上述通信接口1604,用于与其他设备或通信网络通信。
上述存储器1603可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1603可以是独立存在,通过通信总线1602与处理器1601相连接。存储器1603也可以和处理器1601集成在一起。
可选地,存储器1603用于存储执行本申请方案的程序代码或指令,并由处理器1601来控制执行。处理器1601用于执行存储器1603中存储的程序代码。程序代码中可以包括一个或多个软件模块。可选地,处理器1601自身也可以存储执行本申请方案的程序代码或指令。
在具体实现中,作为一种实施例,处理器1601可以包括一个或多个CPU,例如图16中的CPU0和CPU1。
在具体实现中,作为一种实施例,该装置1600可以包括多个处理器,例如图16中的处理器1601和处理器1607。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
通信接口1604,使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(RAN)或无线局域网(wireless local area networks,WLAN)等。在本申请实施例中,通信接口1604可以用于接收分段路由网络中的其他网络设备发送的报文,也可以向分段路由网络中的其他网络设备发送报文。通信接口604可以为以太接口(Ethernet)接口、快速以太(Fast Ethernet,FE)接口或千兆以太(Gigabit Ethernet,GE)接口。
应理解,上述各种产品形态的网络设备,分别具有上述报文处理方法实施例中的网络设备的任意功能,此处不再赘述。
参见图17,本申请实施例提供了一种报文处理装置1700示意图,应用于段路由网络。所述装置1700可以是图1或图3所示的实施例提供的控制设备或算路单元。该装置1700包括至少一个处理器1701,总线系统1702,存储器1703以及至少一个通信接口1704。
该装置1700是一种硬件结构的装置,可以用于实现图14所述的装置1400中的功能模块。例如,本领域技术人员可以想到图14所示的装置1400中的处理单元1402可以通过该至少一个处理器1701调用存储器1703中的代码来实现,图14所示的装置1400中的发送单元1401可以通过该通信接口1404来实现。
可选的,上述处理器1701可以是一个通用中央处理器(central processingunit,CPU),网络处理器(network processor,NP),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
上述总线系统1702可包括一通路,在上述组件之间传送信息。
上述通信接口1704,用于与其他设备或通信网络通信。
上述存储器1703可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1703可以是独立存在,通过通信总线1702与处理器1701相连接。存储器1703也可以和处理器1701集成在一起。
可选地,存储器1703用于存储执行本申请方案的程序代码或指令,并由处理器1701来控制执行。处理器1701用于执行存储器1703中存储的程序代码。程序代码中可以包括一个或多个软件模块。可选地,处理器1701自身也可以存储执行本申请方案的程序代码或指令。
在具体实现中,作为一种实施例,处理器1701可以包括一个或多个CPU,例如图17中的CPU0和CPU1。
在具体实现中,作为一种实施例,该装置1700可以包括多个处理器,例如图17中的处理器1701和处理器1707。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
通信接口1704,使用任何收发器一类的装置,用于与其它设备或通信网络通信,通信网络可以为以太网、无线接入网(RAN)或无线局域网(wireless local area networks,WLAN)等。在本申请实施例中,通信接口1704可以用于接收分段路由网络中的其他网络设备发送的报文,也可以向分段路由网络中的其他网络设备发送报文。通信接口1704可以为以太接口(Ethernet)接口、快速以太(Fast Ethernet,FE)接口或千兆以太(GigabitEthernet,GE)接口。
图18是本申请实施例提供的一种装置1800的结构示意图。所述装置1800可以是图1、图2、图3、图4、图7、图8、图9、图10或图11所示的实施例提供的网络设备中的任一网络设备。。参见图9所示的设备结构示意图。装置1800包括主控板和一个或多个接口板,主控板与接口板通信连接。主控板也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板负责对装置1800中各个组件的控制和管理,包括路由计算、设备管理和维护功能。接口板也称为线卡(line processing unit,LPU)或线卡(linecard),用于转发数据。在一些实施例中,装置1800也可以包括交换网板,交换网板与主控板、接口板通信连接,交换网板用于转发接口板之间的数据,交换网板也可以称为交换网板单元(switch fabric unit,SFU)。接口板包括中央处理器、存储器、转发芯片和物理接口卡(physical interface card,PIC)。中央处理器与存储器、网络处理器和物理接口卡分别通信连接。存储器用于存储转发表。转发芯片用于基于存储器中保存的转发表转发接收到的数据报文,如果数据报文的目的地址为装置1800的地址,则将该数据报文上送至中央处理器(central processing unit,CPU),如中央处理器931处理;如果数据报文的目的地址不是装置1800的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该数据报文转发到该目的地址对应的出接口。转发芯片可以是网络处理器(networkprocessor,NP)。PIC也称为子卡,可安装在接口板上,负责将光电信号转换为数据报文并对数据报文进行合法性检查后转发给转发芯片处理。在一些实施例中,中央处理器也可执行转发芯片的功能,比如基于通用CPU实现软件转发,从而接口板中不需要转发芯片。主控板、接口板、交换网板之间的通信连接可以通过总线来实现。在一些实施例中,转发芯片可以通过专用集成电路(application-specific integrated circuit,ASIC)或现场可编程门阵列(field programmable gate array,FPGA)实现。
在逻辑上,装置1800包括控制面和转发面,控制面包括主控板和中央处理器,转发面包括执行转发的各个组件,比如存储器、PIC和NP。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,NP基于控制面下发的转发表对装置1800的PIC收到的报文查表转发。控制面下发的转发表可以保存在存储器中。在有些实施例中,控制面和转发面可以完全分离,不在同一设备上。下面将结合图3所示的实施例对上述过程进行简要说明。
如图3所述的方法所示,第二网络设备可以通过物理接口卡1833传输多个第一报文,并将该多个第一报文报文上送至CPU1831进行处理。该CPU1831可以根据该第一报文中的目标SID的可用性,对第一报文进行处理。
值得说明的是,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
本发明实施例提供的可对应于上述图1-图11所述方法实施例中的任一网络设备,可以实现上述各个方法实施例中的网络设备所具有的功能和/或所实施的各种步骤和方法。以上仅为简要的示例性描述,为了简洁,在此不再赘述。
参见图19,该图为本申请实施例提供的一种报文处理系统1900的示意图。本申请实施例提供的系统1900可以包括上述图12所示实施例提供的装置1200和上述图13所示实施例提供的装置1300。或者,包括上述15所示实施例提供的装置1500和上述图16所示实施例提供的装置1600,或者,包括上述18所示实施例提供的装置1800。
上述图12所示实施例提供的装置1200、上述图15所示实施例提供的装置1500、或上述图18所示实施例提供的装置1800可以称为第一设备1901,上述图13所示实施例提供的装置1300、上述图16所示实施例提供的装置1600或上述图18所示实施例提供的装置1800可以称为第二设备1902。
第一设备1901和第二设备1902之间进行通信。
在一种可能的实现方式中,第二设备1902可执行如上述图3所示的实施例中的第一网络设备所执行的方法步骤和相关可选方式,第一设备1901可执行如上述图3所示的实施例中的第二网络设备、第三网络设备或第四网络设备所执行的方法步骤和相关可选方式。
在一种可能的实现方式中,第一设备1901可执行如上述图7所示实施例提供的网络设备11或网络设备12所执行的方法步骤和相关可选方式,第二设备1902可执行如上述图7所示实施例提供的网络设备11所执行的方法步骤和相关可选方式。
在一种可能的实现方式中,第一设备1901可执行如上述图8所示实施例提供的网络设备15或网络设备12所执行的方法步骤和相关可选方式,第二设备1902可执行如上述图8所示实施例提供的网络设备15所执行的方法步骤和相关可选方式。
在一种可能的实现方式中,第一设备1901可执行如上述图9或图10所示实施例提供的网络设备11或网络设备12所执行的方法步骤和相关可选方式,第二设备1902可执行如上述图9或图10所示实施例提供的网络设备11所执行的方法步骤和相关可选方式。
在一种可能的实现方式中,第一设备1901可执行如上述图11所示实施例提供的网络设备12或网络设备13所执行的方法步骤和相关可选方式,第二设备1902可执行如上述图11所示实施例提供的网络设备12所执行的方法步骤和相关可选方式。
在一种可能的方式中,参见图20,该系统1900还包括上述图14所示实施例提供的装置1400或上述图17所示实施例提供的装置1700。
上述图14所示实施例提供的装置1400或上述图17所示实施例提供的装置1700可以为控制设备1903。
控制设备1903可执行如上述图3所示的实施例中的控制设备等所执行的方法步骤和相关可选方式。
本领域普通技术人员可以意识到,结合本文中所公开的实施例中描述的各方法步骤和单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域普通技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参见前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的或其它的形式连接。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的处理单元可以分散到多个功能单元中,也可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件、固件或者其组合实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何介质或者是包含一个或多个介质集成的服务器、数据中心等数据存储设备。所述介质可以是磁性介质(例如软盘、硬盘、磁带)、光介质(例如,光盘)、或者半导体介质(例如固态硬盘)等。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本申请的保护范围之内。
Claims (64)
1.一种报文处理方法,应用于段路由网络,其特征在于,所述方法包括:
第一网络设备接收第一报文,所述第一报文包括多个段标识SID列表,所述多个SID列表包括主SID列表和至少一个备SID列表,所述至少一个备SID列表包括第一备SID列表,所述第一备SID列表为所述主SID列表的备份;
所述第一网络设备根据所述主SID列表对所述第一报文进行处理。
2.根据权利要求1所述的方法,其特征在于,所述第一网络设备根据所述主SID列表对所述第一报文进行处理,包括:
所述第一网络设备根据目标SID是否可用,对所述第一报文进行不同处理,所述目标SID是所述主SID列表中未被执行的SID中的一个或多个。
3.根据权利要求2所述的方法,其特征在于,所述第一备SID列表为所述主SID列表的备份,包括:所述第一备SID列表指示的转发路径为所述主SID列表指示的转发路径的备份路径。
4.根据权利要求3所述的方法,其特征在于,所述目标SID可用包括:所述第一网络设备到所述目标SID对应的网络设备可达。
5.根据权利要求3或4所述的方法,其特征在于,所述目标SID不可用时,所述第一网络设备对所述第一报文进行处理,包括:
所述第一网络设备根据第一SID发送所述第一报文,所述第一SID为所述第一备SID列表的第一个SID。
6.根据权利要求3或4所述的方法,其特征在于,所述第一网络设备为所述多个SID列表指示的端到端主转发路径上的中间节点,所述目标SID为所述主SID列表中的最后一个SID,所述目标SID为所述第一网络设备的SID;
当所述目标SID可用时,所述第一网络设备对所述第一报文进行处理,包括:
所述第一网络设备根据第一SID发送所述第一报文,所述第一SID为所述多个SID列表中在所述至少一个备SID列表之后的第一个SID。
7.根据权利要求3-5任一项所述的方法,其特征在于,所述第一网络设备为所述多个SID列表指示的端到端主转发路径上的尾节点,所述目标SID为所述主SID列表中的最后一个SID,所述目标SID为所述第一网络设备的SID;
当所述目标SID可用时,所述第一网络设备对所述第一报文进行处理,包括:
所述第一网络设备执行所述目标SID对应的功能,剥离所述多个SID列表。
8.根据权利要求2所述的方法,其特征在于,所述第一备SID列表为所述主SID列表的备份,包括:所述第一备SID列表对应的服务为所述主SID列表对应的服务的备份,所述目标SID可用包括:所述目标SID对应的服务可用。
9.根据权利要求8所述的方法,其特征在于,所述目标SID不可用时,所述第一网络设备对所述第一报文进行处理,包括:
所述网络设备根据第一SID为所述第一报文提供所述第一SID对应的服务,所述第一SID为所述第一备SID列表的第一个SID。
10.根据权利要求8所述的方法,其特征在于,所述第一网络设备为所述多个SID列表指示的端到端主转发路径上的中间节点,所述目标SID为所述未被执行的SID中的第一个,所述目标SID可用时,所述第一网络设备对所述第一报文进行处理,包括:
所述第一网络设备提供所述目标SID对应的服务,并根据第一SID发送所述第一报文,所述第一SID为所述多个SID列表中在所述至少一个备SID列表之后的第一个SID。
11.根据权利要求8或9所述的方法,其特征在于,所述第一网络设备为所述多个SID列表指示的端到端主转发路径上的尾节点,所述目标SID为所述未被执行的SID中的最后一个,所述目标SID可用时,所述第一网络设备对所述第一报文进行处理,包括:
所述第一网络设备提供所述目标SID对应的服务,并剥离所述多个SID列表。
12.根据权利要求5、6、9、10任一项所述的方法,其特征在于,所述第一报文包括位置指示信息,所述方法还包括:
所述第一网络设备根据所述位置指示信息获得所述第一SID,所述位置指示信息用于指示以下一项或多项:所述主SID列表在所述多个SID列表中的位置、所述第一备SID列表在所述多个SID列表中的位置和所述至少一个备SID列表在所述多个SID中的位置。
13.根据权利要求12所述的方法,其特征在于,所述位置指示信息包括:所述主SID列表的最后一个SID和/或所述主SID列表中未被执行的SID中的第一个SID。
14.根据权利要求12所述的方法,其特征在于,所述位置指示信息携带在所述第一报文的段路由头的元数据中。
15.根据权利要求2-14任一项所述的方法,其特征在于,在所述第一网络设备根据主SID列表对所述第一报文进行处理之前,所述方法还包括:
所述第一网络设备接收配置指令;
所述第一网络设备根据所述配置指令执行根据所述目标SID是否可用,获得第二SID,并根据所述第二SID处理所述第一报文,所述第二SID包括:所述主SID列表中的SID、所述第一备SID列表的第一个SID、或所述多个SID列表中所述至少一个备SID列表后的第一个SID。
16.根据权利要求2-13或15任一项所述的方法,其特征在于,所述多个SID列表在所述第一报文的段路由头SRH中或所述多个SID列表在所述第一报文的多协议标签交换头中。
17.根据权利要求1-13、15或16任一项所述的方法,其特征在于,所述主SID列表和所述第一备SID列表在所述第一报文的不同的SRH中。
18.根据权利要求1-17任一项所述的方法,其特征在于,所述主SID列表与所述第一备SID列表相邻,所述主SID列表的最后一个SID在所述第一备SID列表之前。
19.根据权利要求1-18任一项所述的方法,其特征在于,
所述至少一个备SID列表还包括第二备SID列表,所述第二备SID列表为所述第一备SID列表的备份和/或所述第二备SID列表为所述主SID列表的备份。
20.根据权利要求1-19任一项所述的方法,其特征在于,所述多个SID列表还包括另一个主SID列表和另一个备SID列表,所述另一个备SID列表为所述另一个主SID列表的备份。
21.一种报文处理方法,应用于段路由网络,其特征在于,所述方法包括:
所述第一网络设备发送第一报文,所述第一报文包括多个段标识SID列表,所述多个SID列表包括主SID列表和至少一个备SID列表,所述至少一个备SID列表包括第一备SID列表,所述第一备SID列表为所述主SID列表的备份。
22.根据权利要求21所述的方法,其特征在于,所述第一报文包括位置指示信息,所述位置指示信息用于指示以下一项或多项:所述主SID列表在所述多个SID列表中的位置、所述第一备SID列表在所述多个SID列表中的位置和所述至少一个备SID列表在所述多个SID中的位置。
23.根据权利要求22所述的方法,其特征在于,所述位置指示信息包括:所述主SID列表的最后一个SID和/或所述主SID列表中的未被执行的SID中的第一个SID。
24.根据权利要求22所述的方法,其特征在于,所述位置指示信息携带在所述第一报文的段路由头的元数据中。
25.根据权利要求21-23任一项所述的方法,其特征在于,所述多个SID列表携带在所述第一报文的段路由头SRH中或所述多个SID列表携带在所述第一报文的多协议标签交换MPLS头中。
26.根据权利要求21-25任一项所述的方法,其特征在于,所述主SID列表与所述第一备SID列表相邻,所述主SID列表的最后一个SID在所述第一备SID列表之前。
27.根据权利要求21-26任一项所述的方法,其特征在于,
所述至少一个备SID列表还包括第二备SID列表,所述第二备SID列表为所述第一备SID列表的备份和/或所述第二备SID列表为所述主SID列表的备份。
28.一种报文处理方法,应用于段路由网络中,其特征在于,所述方法包括:
控制设备向第一网络设备发送第一消息,所述第一消息包括多个段标识SID列表,所述多个SID列表包括主SID列表和至少一个备SID列表,所述至少一个备SID列表包括第一备SID列表,所述第一备SID列表为所述主SID列表的备份;
所述第一消息使得所述第一网络设备生成第一报文,所述第一报文包括所述多个SID列表。
29.根据权利要求28所述的方法,其特征在于,所述第一消息还包括报文特征或路由特征,所述第一报文符合所述报文特征或路由特征。
30.根据权利要求28或29所述的方法,其特征在于,所述第一消息还包括位置指示信息,所述位置指示信息用于指示以下一项或多项:所述主SID列表在所述多个SID列表中的位置、所述第一备SID列表在所述多个SID列表中的位置和所述至少一个备SID列表在所述多个SID中的位置。
31.根据权利要求30所述的方法,其特征在于,所述位置指示信息包括:所述主SID列表的最后一个SID和/或所述主SID列表中的未被执行的SID中的第一个SID。
32.一种报文处理装置,应用于段路由网络,其特征在于,所述装置包括:
接收单元,用于接收第一报文,所述第一报文包括多个段标识SID列表,所述多个SID列表包括主SID列表和至少一个备SID列表,所述至少一个备SID列表包括第一备SID列表,所述第一备SID列表为所述主SID列表的备份;
处理单元,用于根据所述主SID列表对所述第一报文进行处理。
33.根据权利要求32所述的装置,其特征在于,所述处理单元,用于:
根据目标SID是否可用,对所述第一报文进行不同处理,所述目标SID是所述主SID列表中未被执行的SID中的一个或多个。
34.根据权利要求33所述的装置,其特征在于,所述第一备SID列表指示的转发路径为所述主SID列表指示的转发路径的备份路径。
35.根据权利要求34所述的装置,其特征在于,所述目标SID可用包括:所述装置到所述目标SID对应的网络设备可达。
36.根据权利要求34或35所述的装置,其特征在于,所述装置还包括第一发送单元,所述第一发送单元,用于当所述目标SID不可用时,根据第一SID发送所述第一报文,所述第一SID为所述第一备SID列表的第一个SID。
37.根据权利要求34或35所述的装置,其特征在于,所述装置为所述多个SID列表指示的端到端主转发路径上的中间节点,所述目标SID为所述主SID列表中的最后一个SID,所述目标SID为所述装置的SID;所述装置还包括第二发送单元,
所述第二发送单元,用于当所述目标SID可用时,根据第一SID发送所述第一报文,所述第一SID为所述多个SID列表中在所述至少一个备SID列表之后的第一个SID。
38.根据权利要求34-36任一项所述的装置,其特征在于,所述装置为所述多个SID列表指示的端到端主转发路径上的尾节点,所述目标SID为所述主SID列表中的最后一个SID,所述目标SID为所述装置的SID;
所述处理单元,用于当所述目标SID可用时,执行所述目标SID对应的功能,剥离所述多个SID列表。
39.根据权利要求33所述的装置,其特征在于,所述第一备SID列表对应的服务为所述主SID列表对应的服务的备份,所述目标SID可用包括:所述目标SID对应的服务可用。
40.根据权利要求39所述的装置,其特征在于,所述处理单元,用于在所述目标SID不可用时,根据第一SID为所述第一报文提供所述第一SID对应的服务,所述第一SID为所述第一备SID列表的第一个SID。
41.根据权利要求39所述的装置,其特征在于,所述装置为所述多个SID列表指示的端到端主转发路径上的中间节点,所述目标SID为所述未被执行的SID中的第一个,所述装置还包括第三发送单元,
所述处理单元,用于在所述目标SID可用时,提供所述目标SID对应的服务;
所述第三发送单元,用于根据第一SID发送所述第一报文,所述第一SID为所述多个SID列表中在所述至少一个备SID列表之后的第一个SID。
42.根据权利要求39或40所述的装置,其特征在于,所述装置为所述多个SID列表指示的端到端主转发路径上的尾节点,所述目标SID为所述未被执行的SID中的最后一个,
所述处理单元,用于在所述目标SID可用时,提供所述目标SID对应的服务,并剥离所述多个SID列表。
43.根据权利要求36、37、40、41任一项所述的装置,其特征在于,所述第一报文包括位置指示信息,所述处理单元,还用于:
根据所述位置指示信息获得所述第一SID,所述位置指示信息用于指示以下一项或多项:所述主SID列表在所述多个SID列表中的位置、所述第一备SID列表在所述多个SID列表中的位置和所述至少一个备SID列表在所述多个SID中的位置。
44.根据权利要求43所述的装置,其特征在于,所述位置指示信息包括:所述主SID列表的最后一个SID和/或所述主SID列表中未被执行的SID中的第一个SID。
45.根据权利要求43所述的装置,其特征在于,所述位置指示信息携带在所述第一报文的段路由头的元数据中。
46.根据权利要求33-45任一项所述的装置,其特征在于,
所述接收单元,还用于接收配置指令;
所述处理单元,还用于根据所述配置指令执行根据所述目标SID是否可用,获得第二SID;
所述处理单元,用于根据所述第二SID处理所述第一报文,所述第二SID包括:所述主SID列表中的SID、所述第一备SID列表的第一个SID、或所述多个SID列表中所述至少一个备SID列表后的第一个SID。
47.根据权利要求33-44或46任一项所述的装置,其特征在于,所述多个SID列表在所述第一报文的段路由头SRH中或所述多个SID列表在所述第一报文的多协议标签交换头中。
48.根据权利要求32-44、46或47任一项所述的装置,其特征在于,所述主SID列表和所述第一备SID列表在所述第一报文的不同的SRH中。
49.根据权利要求32-48任一项所述的装置,其特征在于,所述主SID列表与所述第一备SID列表相邻,所述主SID列表的最后一个SID在所述第一备SID列表之前。
50.根据权利要求32-49任一项所述的装置,其特征在于,
所述至少一个备SID列表还包括第二备SID列表,所述第二备SID列表为所述第一备SID列表的备份和/或所述第二备SID列表为所述主SID列表的备份。
51.根据权利要求32-50任一项所述的装置,其特征在于,所述多个SID列表还包括另一个主SID列表和另一个备SID列表,所述另一个备SID列表为所述另一个主SID列表的备份。
52.一种报文处理装置,应用于段路由网络,其特征在于,所述装置包括:
发送单元,用于发送第一报文,所述第一报文包括多个段标识SID列表,所述多个SID列表包括主SID列表和至少一个备SID列表,所述至少一个备SID列表包括第一备SID列表,所述第一备SID列表为所述主SID列表的备份。
53.根据权利要求52所述的装置,其特征在于,所述第一报文包括位置指示信息,所述位置指示信息用于指示以下一项或多项:所述主SID列表在所述多个SID列表中的位置、所述第一备SID列表在所述多个SID列表中的位置和所述至少一个备SID列表在所述多个SID中的位置。
54.根据权利要求53所述的装置,其特征在于,所述位置指示信息包括:所述主SID列表的最后一个SID和/或所述主SID列表中的未被执行的SID中的第一个SID。
55.根据权利要求53所述的装置,其特征在于,所述位置指示信息携带在所述第一报文的段路由头的元数据中。
56.根据权利要求52-54任一项所述的装置,其特征在于,所述多个SID列表携带在所述第一报文的段路由头SRH中或所述多个SID列表携带在所述第一报文的多协议标签交换MPLS头中。
57.根据权利要求52-56任一项所述的装置,其特征在于,所述主SID列表与所述第一备SID列表相邻,所述主SID列表的最后一个SID在所述第一备SID列表之前。
58.根据权利要求52-57任一项所述的装置,其特征在于,
所述至少一个备SID列表还包括第二备SID列表,所述第二备SID列表为所述第一备SID列表的备份和/或所述第二备SID列表为所述主SID列表的备份。
59.一种报文处理装置,应用于段路由网络,其特征在于,所述装置包括:
发送单元,用于向第一网络设备发送第一消息,所述第一消息包括多个段标识SID列表,所述多个SID列表包括主SID列表和至少一个备SID列表,所述至少一个备SID列表包括第一备SID列表,所述第一备SID列表为所述主SID列表的备份;
所述第一消息使得所述第一网络设备生成第一报文,所述第一报文包括所述多个SID列表。
60.根据权利要求59所述的装置,其特征在于,所述第一消息还包括报文特征或路由特征,所述第一报文符合所述报文特征或路由特征。
61.根据权利要求59或60所述的装置,其特征在于,所述第一消息还包括位置指示信息,所述位置指示信息用于指示以下一项或多项:所述主SID列表在所述多个SID列表中的位置、所述第一备SID列表在所述多个SID列表中的位置和所述至少一个备SID列表在所述多个SID中的位置。
62.根据权利要求61所述的装置,其特征在于,所述位置指示信息包括:所述主SID列表的最后一个SID和/或所述主SID列表中的未被执行的SID中的第一个SID。
63.一种报文处理系统,其特征在于,所述系统包括如权利要求32至51任一项所述的装置和如权利要求52至58任一项所述的装置。
64.根据权利要求63所述的系统,其特征在于,所述系统还包括如权利要求59至62任一项所述的装置。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
BR112022014525A BR112022014525A2 (pt) | 2020-01-22 | 2021-01-22 | Método, aparelho e sistema de processamento de pacotes |
PCT/CN2021/073431 WO2021148021A1 (zh) | 2020-01-22 | 2021-01-22 | 一种报文处理方法、装置及系统 |
KR1020227025811A KR20220119708A (ko) | 2020-01-22 | 2021-01-22 | 패킷 프로세싱 방법, 장치, 및 시스템 |
JP2022544400A JP7443537B2 (ja) | 2020-01-22 | 2021-01-22 | パケット処理方法、パケット処理装置、およびパケット処理システム |
MX2022008999A MX2022008999A (es) | 2020-01-22 | 2021-01-22 | Metodo, aparato y sistema de procesamiento de paquetes. |
EP21744993.3A EP4080835A4 (en) | 2020-01-22 | 2021-01-22 | PACKAGE PROCESSING METHOD, APPARATUS AND SYSTEM |
US17/870,466 US20220360525A1 (en) | 2020-01-22 | 2022-07-21 | Packet Processing Method, Apparatus, and System |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020100757892 | 2020-01-22 | ||
CN202010075789 | 2020-01-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113162849A true CN113162849A (zh) | 2021-07-23 |
Family
ID=76882116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010209455.XA Pending CN113162849A (zh) | 2020-01-22 | 2020-03-23 | 一种报文处理方法、装置及系统 |
Country Status (8)
Country | Link |
---|---|
US (1) | US20220360525A1 (zh) |
EP (1) | EP4080835A4 (zh) |
JP (1) | JP7443537B2 (zh) |
KR (1) | KR20220119708A (zh) |
CN (1) | CN113162849A (zh) |
BR (1) | BR112022014525A2 (zh) |
MX (1) | MX2022008999A (zh) |
WO (1) | WO2021148021A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113794637A (zh) * | 2021-08-20 | 2021-12-14 | 新华三信息安全技术有限公司 | Sid列表的处理方法及装置 |
CN114448881A (zh) * | 2022-02-25 | 2022-05-06 | 烽火通信科技股份有限公司 | 一种跨sr mpls与srv6域互操作通信的方法和系统 |
CN114978600A (zh) * | 2022-04-25 | 2022-08-30 | 中国联合网络通信集团有限公司 | 异常流量处理方法、系统、设备及存储介质 |
CN115174469A (zh) * | 2022-06-30 | 2022-10-11 | 烽火通信科技股份有限公司 | Srv6节点保护方法、系统、设备及可读存储介质 |
WO2022228533A1 (zh) * | 2021-04-29 | 2022-11-03 | 华为技术有限公司 | 处理报文的方法、装置、系统及存储介质 |
WO2023040702A1 (zh) * | 2021-09-14 | 2023-03-23 | 华为技术有限公司 | 一种信息传输方法以及相关设备 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115695338A (zh) * | 2021-07-30 | 2023-02-03 | 华为技术有限公司 | 一种报文转发的方法及网络设备 |
WO2023030160A1 (zh) * | 2021-08-31 | 2023-03-09 | 华为技术有限公司 | 发送报文的方法、网络设备、存储介质及程序产品 |
CN113992558B (zh) * | 2021-10-26 | 2023-04-18 | 新华三信息安全技术有限公司 | 路由发布的方法、装置、电子设备及介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4161557B2 (ja) | 2001-09-03 | 2008-10-08 | 株式会社日立製作所 | パケット転送方法及びその装置 |
US9444677B2 (en) * | 2013-10-18 | 2016-09-13 | Cisco Technology, Inc. | Scalable edge node protection using IPv6 segment routing extension header |
US9762488B2 (en) * | 2014-03-06 | 2017-09-12 | Cisco Technology, Inc. | Segment routing extension headers |
CN105282028A (zh) * | 2014-06-05 | 2016-01-27 | 中兴通讯股份有限公司 | 一种报文传输方法、节点及路径管理服务器 |
CN105790996A (zh) * | 2014-12-26 | 2016-07-20 | 北京华为朗新科技有限公司 | 分布式网关备份处理方法及网络设备 |
US9794148B1 (en) * | 2014-12-31 | 2017-10-17 | Juniper Networks, Inc. | Node protection for stacked labels |
CN114070782B (zh) * | 2018-06-30 | 2023-05-16 | 华为技术有限公司 | 一种传输路径故障的处理方法、装置及系统 |
-
2020
- 2020-03-23 CN CN202010209455.XA patent/CN113162849A/zh active Pending
-
2021
- 2021-01-22 EP EP21744993.3A patent/EP4080835A4/en active Pending
- 2021-01-22 MX MX2022008999A patent/MX2022008999A/es unknown
- 2021-01-22 BR BR112022014525A patent/BR112022014525A2/pt unknown
- 2021-01-22 WO PCT/CN2021/073431 patent/WO2021148021A1/zh unknown
- 2021-01-22 JP JP2022544400A patent/JP7443537B2/ja active Active
- 2021-01-22 KR KR1020227025811A patent/KR20220119708A/ko active Search and Examination
-
2022
- 2022-07-21 US US17/870,466 patent/US20220360525A1/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022228533A1 (zh) * | 2021-04-29 | 2022-11-03 | 华为技术有限公司 | 处理报文的方法、装置、系统及存储介质 |
CN113794637A (zh) * | 2021-08-20 | 2021-12-14 | 新华三信息安全技术有限公司 | Sid列表的处理方法及装置 |
WO2023040702A1 (zh) * | 2021-09-14 | 2023-03-23 | 华为技术有限公司 | 一种信息传输方法以及相关设备 |
CN114448881A (zh) * | 2022-02-25 | 2022-05-06 | 烽火通信科技股份有限公司 | 一种跨sr mpls与srv6域互操作通信的方法和系统 |
CN114978600A (zh) * | 2022-04-25 | 2022-08-30 | 中国联合网络通信集团有限公司 | 异常流量处理方法、系统、设备及存储介质 |
CN114978600B (zh) * | 2022-04-25 | 2023-06-23 | 中国联合网络通信集团有限公司 | 异常流量处理方法、系统、设备及存储介质 |
CN115174469A (zh) * | 2022-06-30 | 2022-10-11 | 烽火通信科技股份有限公司 | Srv6节点保护方法、系统、设备及可读存储介质 |
CN115174469B (zh) * | 2022-06-30 | 2023-10-13 | 烽火通信科技股份有限公司 | Srv6节点保护方法、系统、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR20220119708A (ko) | 2022-08-30 |
MX2022008999A (es) | 2022-08-15 |
BR112022014525A2 (pt) | 2022-09-20 |
JP7443537B2 (ja) | 2024-03-05 |
JP2023511915A (ja) | 2023-03-23 |
EP4080835A4 (en) | 2023-06-21 |
EP4080835A1 (en) | 2022-10-26 |
WO2021148021A1 (zh) | 2021-07-29 |
US20220360525A1 (en) | 2022-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7443537B2 (ja) | パケット処理方法、パケット処理装置、およびパケット処理システム | |
US20220407802A1 (en) | Packet processing method and apparatus, network device, and storage medium | |
US10158558B1 (en) | Segment routing of packets according to a multicast distribution tree in a network | |
US20220255862A1 (en) | Packet forwarding method, device, storage medium, and system | |
US20020116669A1 (en) | System and method for fault notification in a data communication network | |
JP7479489B2 (ja) | パケット送信方法、デバイス、およびシステム | |
US20220255857A1 (en) | Packet Processing Method, Network Node, and System | |
CN112868214B (zh) | 分组内的协调负载转移oam记录 | |
CN113364680A (zh) | 一种sr策略的发布、接收方法及装置 | |
CN114531395B (zh) | 一种通告网络设备处理能力的方法、设备和系统 | |
CN113973082A (zh) | 一种报文处理方法及网络设备 | |
WO2022194023A1 (zh) | 报文处理的方法、网络设备及控制器 | |
CN112054969B (zh) | 一种实现报文镜像的方法及装置 | |
WO2022057810A1 (zh) | 业务报文的转发方法、sr策略的发送方法、设备及系统 | |
CN113438161A (zh) | 一种生成段标识sid的方法和网络设备 | |
WO2022007702A1 (zh) | 一种报文处理方法及网络设备 | |
CN114760244B (zh) | 一种传输绑定段标识bsid的方法、装置和网络设备 | |
US11784919B2 (en) | Method for sending BIERv6 packet and first network device | |
CN111885630B (zh) | 数据传输方法及通信装置 | |
CN115883452A (zh) | 一种通信方法和通信装置 | |
WO2023213216A1 (zh) | 一种报文处理的方法及相关设备 | |
WO2024021976A1 (zh) | 一种报文处理的方法及相关设备 | |
WO2023040783A1 (zh) | 获取能力、发送能力信息的方法、装置、系统及存储介质 | |
WO2024067084A1 (zh) | 一种路径故障检测的方法以及相关装置 | |
WO2022143572A1 (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 |