WO2022105927A1 - 一种通告网络设备处理能力的方法、设备和系统 - Google Patents

一种通告网络设备处理能力的方法、设备和系统 Download PDF

Info

Publication number
WO2022105927A1
WO2022105927A1 PCT/CN2021/132270 CN2021132270W WO2022105927A1 WO 2022105927 A1 WO2022105927 A1 WO 2022105927A1 CN 2021132270 W CN2021132270 W CN 2021132270W WO 2022105927 A1 WO2022105927 A1 WO 2022105927A1
Authority
WO
WIPO (PCT)
Prior art keywords
network device
message
path information
information
packet
Prior art date
Application number
PCT/CN2021/132270
Other languages
English (en)
French (fr)
Inventor
董林
陈新隽
肖亚群
王振星
方晟
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to MX2023006018A priority Critical patent/MX2023006018A/es
Priority to EP21894074.0A priority patent/EP4236209A4/en
Priority to CA3199722A priority patent/CA3199722A1/en
Priority to JP2023530852A priority patent/JP2023550488A/ja
Publication of WO2022105927A1 publication Critical patent/WO2022105927A1/zh
Priority to US18/320,536 priority patent/US20230300065A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/14Routing performance; Theoretical aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling

Definitions

  • the present application relates to the field of communication technologies, and in particular, to a method, device and system for announcing the processing capability of a network device.
  • the present application provides a method, system, device and network device for notifying the processing capability of a network device.
  • a first network device that needs to announce its own processing capability can send a notification message carrying indication information, and the indication information can indicate the first network device Whether there is a network device on the primary path for forwarding packets, when receiving a packet including primary path information and backup path information, it ignores the processing capability of the backup path information included in the packet.
  • the second network device that accepts the notification message can send a service packet including primary path information and backup path information to the first network device when determining that the first network device has the processing capability, so as to ensure that the first network device has the processing capability.
  • the type of the announcement message and the manner of carrying the first indication information in the announcement message may vary according to the network architecture and application scenarios used to implement the method.
  • the advertisement message may be a Border Gateway Protocol (Border Gateway Protocol, BGP) message for advertising routes, or a BGP Link State (Border Gateway Protocol Link-State, BGP-LS) message, or an Interior Gateway Protocol (Interior Gateway Protocol) message. Protocol, IGP) message, etc.
  • the first network device in this solution can send a notification message carrying indication information, and the indication information can indicate whether the first network device has a network device on the primary path as the forwarding message, and when receiving the notification message including the primary path information
  • the message contains the backup path information and the backup path information
  • the processing capability of the backup path information included in the message is ignored, so that the network device receiving the advertisement message can send the notification message to the first network device when it determines that the first network device has the processing capability.
  • the first network device sends, or instructs other network devices to send, to the first network device, a service packet including the primary path information and the backup path information, so that the first network device can ignore the primary path when the primary path can be used normally.
  • the backup path information does not need to be used in the service message, so as to ensure the robustness of the network operation, and at the same time avoid the problem of packet loss or wrong forwarding caused by the failure of the backup path information to be properly processed.
  • the first network device is an intermediate network device or an egress network device that bears services
  • the first indication information is carried in the IGP message or the BGP used to announce the link state message or.
  • P 31 reads the label B2::1 at the next layer of the label stack, which is the VPN SID advertised by the active device PE 24. If PE 24 fails, P 31 can quickly sense that the route of B2::1 is unreachable, then P 31 can skip the label of this layer and read the label of the next layer B3::1, by looking for the B3::1 The route is determined to forward the service packet to PE 25. When the service packet reaches PE 25, since B3::1 is the bottom label of the label stack, PE 25 can pop up the bottom label of the stack and determine the corresponding VPN service according to VPN SID B3::1 to complete the The user-side forwarding process of the service packet in the VPN identified by B3::1.
  • the SID list is added to the packet header of the packet to guide the continued forwarding of the packet in the next network domain.
  • the SID list may include multiple SIDs, and the multiple SIDs are used to indicate the forwarding path from the PE 24 to the PE 27.
  • a backup device PE 25 of PE 24 can be configured in the network. In this way, when the active node PE 24 fails, PE 25 acts as a backup node to forward the user side to PE 27. The traffic flow of this service is realized, thereby realizing tail node protection.
  • an indication can be added to the path information that guides the forwarding of the message, so that the previous hop node P 31 in the path can forward the indication to the standby node PE 25 according to the indication when sensing the failure of the tail node. the message.
  • a subfield can be added to the SID information TLV field, and the subfield can also be a TLV type. Because it belongs to a subfield in the SID information TLV field that is a sub TLV, it can be called a subfield. It is the sub TLV sub (sub sub TLV) field.
  • the type (type) field of the sub sub TLV may be used to identify the type of the sub sub TLV as a sub sub TLV for advertising tail node protection capabilities.
  • the value field of the sub sub TLV includes the indication information for indicating the processing capability of the PE 24, wherein the length of the value field is indicated by the length field of the sub sub TLV.
  • the indication information can also be carried in other possible fields of the BGP message, or carried in other types of announcement messages according to the needs of the application scenario.
  • the indication information may be carried in the notification message alone, rather than being published at the same time as the service routing, as long as a certain association method is used, the head node can establish the indication information and use it to guide the forwarding of service packets
  • the relationship between the service routes is determined, and according to the relationship, it is determined whether the sent service message can carry the path information that needs to be specially processed by the active tail node.
  • a network device does not have processing capability, wherein, in some possible situations, the indication information with the first value or the second value can be used together with other information carried in the advertisement message to determine whether the first network device has
  • the processing capability information is, for example, an implementation manner described in S401 in the method 400 by comparing whether the information carried in the extended community attribute in the BGP message is consistent with the information carried in the next hop attribute.
  • the first network device when the active path does not fail, can match the SID associated with the first network device included in the active path information, and the first report can be ignored at this time.
  • the ignoring may be removing or skipping, for example, refer to the description of S407 in the method 400 , or refer to the description of S509 in the method 500 .
  • the receiving unit 705 is further configured to receive the BGP message before the update, where the BGP message before the update includes the second VPN SID label field of the VPN route; the generating unit 701 is further configured to Replace the second VPN SID label field with the first VPN SID label field to update and generate the BGP message.
  • the first backup path information includes one or more backup SIDs
  • the first active path information includes an active SID
  • the active SID is associated with the first network device
  • the forwarding unit 707 is further configured to skip the one or more backup SIDs according to the matching of the primary SID with the SID stored by the first network device, and forward the SID according to the SID located after the one or more backup SIDs the first message.
  • the apparatus 800 may further include a sending unit 805, configured to send a first packet according to the processing capability of the first network device, where the first packet carries the first backup path information and first active path information, wherein the first active path information is used to indicate the first active path forwarding the first packet, and the first backup path information is used to indicate the first active path One or more first alternate paths for forwarding the first packet when the path is unavailable.
  • a sending unit 805 configured to send a first packet according to the processing capability of the first network device, where the first packet carries the first backup path information and first active path information, wherein the first active path information is used to indicate the first active path forwarding the first packet, and the first backup path information is used to indicate the first active path One or more first alternate paths for forwarding the first packet when the path is unavailable.

Abstract

一种通告网络设备处理能力的方法、系统以及网络设备,属于通信技术领域。所述方法由网络设备执行,包括:生成包括指示信息的通告消息,所述指示信息用于指示所述网络设备的处理能力,所述网络设备的处理能力包括所述网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述报文中包括的备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。通过本方法,作为报文转发主用路径上的所述网络设备能够在所述主用路径正常使用时,忽略所述报文中的备用路径信息,以避免因该备用路径信息无法适应性处理而导致的丢包或错误转发。

Description

一种通告网络设备处理能力的方法、设备和系统
本申请要求于2020年11月23日提交的申请号为202011323142.3、申请名称为“一种部署SRV6VPN尾节点保护的方法和设备”的中国专利申请以及于2020年12月31日提交的申请号为202011638007.8、申请名称为“一种通告网络设备处理能力的方法、设备和系统”的中国专利申请的优先权,它们的全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别涉及一种通告网络设备处理能力的方法、设备和系统。
背景技术
为了保证业务流量在数据承载网络中传输的连续性和健壮性,通常需要部署对流量传输路径中包括的关键节点的保护策略,以避免当该关键节点出现故障时直接导致的业务中断。以采用基于第六版互联网协议(Internet Protocol version 6,IPv6)的段路由(Segment Routing over IPv6,SRv6)技术构建VPN业务流量的承载隧道的场景为例,用于连接用户侧设备的远端运营商边缘(provider edge)PE设备作为隧道主用尾节点可能会出现故障,为应对该种故障场景,需要部署尾节点保护。由于SRv6技术采用段标识(Segment Identifier,SID)列表指示报文转发路径,因此可以在发送的流量报文中添加备用尾节点的SID,如此,当直连该主用尾节点的上一跳节点发现该主用尾节点故障时,可以使用该报文头中携带的该备用尾节点的SID指导该流量报文通过该备用尾节点进行转发。采用SRv6技术还可以支持业务编排(service chain)场景,作为业务编排的典型应用,例如可以为业务流量提供流量清洗或病毒过滤等服务。为实现上述服务,需要使业务流量在转发过程中经过防火墙等服务设备,并由该服务设备提供相应服务后再沿后续转发路径发送至用户侧设备。但是该提供服务的防火墙设备也可能出现故障,为保证所传输业务流量的使用安全性,也可以设置可用于替代该防火墙而提供服务的备份设备,该备份设备可以通由添加在该业务流量的报文中的备用设备SID指示。
在上述描述的各应用场景中,SID列表中用于指示备用设备的备用SID通常置于用于指示主用设备的SID之后,如果主用设备发生故障,则可以按照SRv6规定的用于处理SID列表的一般规则读取备用SID用于流量报文的转发。然而,在主用设备未发生故障时,该流量报文仍然会发送至主用设备进行转发,此时如仍按照该一般规则处理则可能发生错误,并由此导致该流量报文被丢弃。
发明内容
本申请提供了一种通告网络设备处理能力的方法、系统、装置以及网络设备,需通告自身处理能力的第一网络设备可以发送携带指示信息的通告消息,该指示信息能够指示该第一网络设备是否具有作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力。接受该通告消息的 第二网络设备能够在确定该第一网络设备具有所述处理能力时,向该第一网络设备发送包括主用路径信息和备用路径信息的业务报文,以保证该第一网络设备在主用路径可正常使用时,能够忽略该业务报文中无需使用的该备用路径信息,以避免因该备用路径信息未被恰当处理而导致的丢包或错误转发等问题。本申请为此提供的技术方案至少包括以下几个方面。
第一方面,提供了一种通告网络设备处理能力的方法,由第一网络设备执行,所述方法包括:生成通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径;所述第一网络设备向第二网络设备发送所述通告消息。
其中,该通告消息的类型和该第一指示信息在该通告消息中的携带方式,可以根据用于实现该方法的网络架构和应用场景而有所不同。例如,该通告消息可以是用于通告路由的边界网关协议(Border Gateway Protocol,BGP)消息,或者BGP链路状态(Border Gateway Protocol Link-State,BGP-LS)消息,或者内部网关协议(Interior Gateway Protocol,IGP)消息等。
其中,不同消息类型可以应用于不同的场景中,例如,在场景A中,隧道出口设备可以通过通告路由的BGP消息向隧道入口设备通告其处理能力,以使得隧道入口设备在确定隧道出口设备具有处理能力时,在报文中添加用于实现对该隧道出口设备保护的备用路径信息,以确保该隧道出口设备未故障时,对于接收到的报文中包括的该备用路径信息能够进行适应性处理。再例如,在场景B中,报文转发路径上的任一网络设备均可以通过BGP-LS消息向控制器通告其处理能力,以使得控制器在确定相应网络设备具有处理能力时,编排与该网络设备关联的备用路径信息,以实现对于该网络设备或与该网络设备关联的业务的保护。如此,在该网络设备所在的主用路径未故障时,该网络设备能够对接收到的报文中包括的该备用路径信息进行适应性处理。
其中,对该备用路径信息的适应性处理即为忽略该备用路径信息。作为忽略处理的具体情形,可以是第一网络设备忽略该备用路径信息而不用于指导报文转发,也可以是忽略该备用路径信息而能够正常地处理报文,如允许在包括该备用路径信息的情况下剥离该报文的报文头。实现忽略的具体操作方式可以有多种,可结合具体的应用场景确定。例如,忽略方式可以是去除,该去除可以是由剥离整个报文头而导致的备用路径信息的去除。该方式可适用于上述提及的场景A中,所述第一网络设备作为连接用户侧设备的隧道出口节点,在匹配到报文头中包括的主用路径信息后,可以将报文的该报文头整个剥离,然后利用报文载荷部分携带的私网信息完成后续由该第一网络设备向用户侧设备的转发。再例如,忽略方式可以是跳过,所述跳过可以具体为不读取该备用路径信息而直接跳过,或者虽读取该备用路径信息但并不使用该备用路径信息指导转发而忽略式跳过。如果需提供备用路径保护的关联设备是转发路径上的中间网络设备,则中间网络设备在确定使用主用路径转发报文时,可以使用主用路径信息进行后续转发,并且由于不用使用备用路径而需跳过报文中携带的备用路径信息部分,以避免报文转发错误。
执行忽略并不意味着第一网络设备一定不对该备用路径信息执行任何操作,例如,在一些可能的应用场景或设计方式中,第一网络设备可以先读取该备用路径信息,而后再跳过式忽略该备用路径信息。
其中,该主用路径不可用可以是指主用路径上的节点或链路发生故障而导致的主用路径不可用,或者也可以是主用路径的服务质量无法达到要求而导致的主用路径不可用。
其中,该备用路径信息可以用于指示一条或多条备用路径。以该备用路径信息为一个或多个备用SID为例,其中,可以是一个备用SID指示一条备用路径,也可以是一个包括多个SID的备用SID列表指示一条备用路径。当可用的备用路径为多条时,该备用路径信息可以包括分别对应于多条备用路径的多个备用SID或备用SID列表,其中,该多个备用SID或备用SID列表在报文头中的排布顺序,可以确定在主用路径不可用时,该多条备用路径的使用顺序。
本方案中的第一网络设备能够发送携带指示信息的通告消息,该指示信息能够指示该第一网络设备是否具有作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,以使得接收该通告消息的网络设备能够在确定该第一网络设备具有所述处理能力时,向该第一网络设备发送,或指示其他网络设备向该第一网络设备发送包括主用路径信息和备用路径信息的业务报文,以使得该第一网络设备在主用路径可正常使用时,能够忽略该业务报文中无需使用的该备用路径信息,以在保证网络运行健壮性的同时,避免因该备用路径信息未被恰当处理而导致的丢包或错误转发问题。
在一种可能的实现方式中,接收第一报文,所述第一报文包括第一主用路径信息和第一备用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径;忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文。
在第一网络设备通过消息向第二网络设备通告了自身的处理能力后,如第二网络设备确定该第一网络设备具有处理能力,则可以由该第二网络设备发送该第一报文,或者由该第二网络设备指示其他网络设备发送该第一报文。例如,在该第二网络设备为隧道入口设备时,可以由该第二网络设备发送该第一报文。再例如,在该第二网络设备为具有业务编排功能的控制器时,可以由该控制器将包括主备路径信息的消息发送至隧道入口设备,然后由隧道入口设备发送包括主用路径信息和备用路径信息的第一报文。也即,该第一报文可以是从第二网络设备接收的,也可以是从其他网络设备接收的。
由于第一网络设备预先通告了自身的处理能力,因而在接收到包括第一主用路径信息和第一备用路径信息的第一报文时,能够对该第一报文中无需使用的第一备用路径信息进行忽略处理,从而保证第一报文的正常转发。
在一种可能的实现方式中,所述第一指示信息携带于所述BGP消息包括的私网路由或公网路由中,所述私网路由或公网路由为用于转发所述报文所属业务的路由。第一网络设备可以将用于通告其处理能力的指示信息携带于其发布的私网路由或公网路由中一并发送。该私网路由或公网路由中可以包括路径信息。接收该私网路由或公网路由的第二网络设备在根据该指示信息确定第一网络设备是否具有处理能力后,可以根据确定的具体情况将路由中携带的该路径信息作为所发送报文中的主用路径信息或备用路径信息发送出去。
可选地,所述第一网络设备为承载所述业务的出口网络设备,所述私网路由为虚拟专用网络(Virtual Private Network,VPN)路由,所述第一指示信息携带于所述VPN路由的第一 虚拟专用网段标识(VPNSID)标签字段中。
可选地,所述第一指示信息携带于所述BGP消息的扩展团体属性中。
通过在路由中携带指示信息的实现方式,第一网络设备能够配合现有机制关联性的通告处理能力和发布路径信息,从而提高本申请方案的使用兼容性和执行效率。
在一种可能的实现方式中,第一网络设备可以不是根据需通告的路由而最初生成BGP消息的设备,而是接收该BGP消息并通过修改该BGP消息中的必要信息而更新生成该BGP消息的设备。
可选地,所述生成BGP消息包括:接收更新前的所述BGP消息,所述更新前的BGP消息包括所述VPN路由的第二VPN SID标签字段;将所述第二VPN SID标签字段替换为所述第一VPN SID标签字段,以更新生成所述BGP消息。
可选地,所述第二VPN SID标签字段包括用于指示第三网络设备的处理能力的第二指示信息,所述第三网络设备的处理能力包括所述第三网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,其中,所述第三网络设备为所述更新前的BGP消息中携带的下一跳信息中所指示的网络设备。
可选地,接收更新前的所述BGP消息,所述更新前的BGP消息包括下一跳属性,其中,所述扩展团体属性中的所述第一指示信息和下一跳属性均包括第一下一跳信息,所述第一下一跳信息用于指示第三网络设备。
可选地,将所述第二扩展团体属性中的所述第一下一跳信息修改为第二下一跳信息,以更新生成所述BGP消息,其中,所述第二下一跳信息用于指示所述第一网络设备。
可选地,所述更新生成BGP消息还包括:将所述扩展团体属性中的所述第一下一跳信息修改为所述第二下一跳信息。
可选地,所述第一指示信息用于指示所述第一网络设备的处理能力,包括:所述第一指示信息和所述下一跳属性用于指示所述第一网络设备的处理能力。
在跨域等需修改路由下一跳的场景中,利用路由中更新的指示信息指示该路由中携带的由修改后的下一跳所标识的网络设备(如第一网络设备作为域边界设备时)是否具有处理能力,从而保证跨域场景下主用路径可用时,第一网络设备能够对备用路径信息进行忽略而使得报文能够正常转发或正常处理。
在一种可能的实现方式中,所述BGP消息包括的私网路由或公网路由中携带SID,所述SID用于所述第一网络设备接收的报文所携带的备用路径信息中。
在一种可能的实现方式中,所述备用路径信息包括一个或多个备用的路径标签,所述一个或多个备用路径由所述一个或多个备用的路径标签指示。可选地,所述路径标签包括SID。
当该备用路径信息包括一个或多个备用SID时,本申请提供的方案可以应用于SRv6网络或基于多协议标签交换的分段路由(Segment Routing-Multiprotocol Label Switching,SR-MPLS)网络中。
在一种可能的实现方式中,所述一个或多个备用SID为与所述第一网络设备构成多归关系的一个或多个网络设备分配的SID。该一个或多个备用SID可以分别携带在该一个或多个网络设备通告的路由中进行发布。
在一种可能的实现方式中,所述第一备用路径信息包括一个或多个备用SID,所述第一 主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,所述忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文,包括:根据所述主用SID与所述第一网络设备存储的SID匹配,去除所述一个或多个备用SID;根据所述第一报文携带的载荷信息向用户侧的网络设备转发所述第一报文,或者,根据去除所述一个或多个备用SID后再添加的SID转发所述第一报文。
在一种可能的实现方式中,所述第一备用路径信息包括一个或多个备用SID,所述第一主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,所述忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文,包括:根据所述主用SID与所述第一网络设备存储的SID匹配,跳过所述一个或多个备用SID,根据位于所述一个或多个备用SID之后的SID转发所述第一报文。
在一种可能的实现方式中,所述第一网络设备为承载业务的中间网络设备或出口网络设备,所述第一指示信息携带于所述IGP消息或用于通告链路状态的所述BGP消息中。其中,所述出口网络设备可以是端到端隧道的出口网络设备,也可以是分段隧道的出口网络设备。
在一种可能的实现方式中,所述第二网络设备为控制器或承载所述业务的入口网络设备。
第二方面,提供了一种通告网络设备处理能力的方法,所述方法由第二网络设备执行,所述方法包括:接收第一网络设备发送的通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径为所述主用路径不可用时用于转发所述报文的一个或多个备用路径;根据所述第一指示信息确定所述第一网络设备具有所述处理能力;或者,根据所述第一指示信息确定所述第一网络设备不具有所述处理能力。
本方案中的第二网络设备在接收第一网络设备发送的携带指示信息的通告消息,能够根据该指示信息确定第一网络设备是否具有处理能力,并在一些应用场景中,可以在确定该第一网络设备具有处理能力且作为转发报文的主用路径上的网络设备时,由第二网络设备向第一网络设备发送,或者,由第二网络设备指示其他网络设备(如隧道入口设备)向第一网络设备发送包括主用路径信息和备用路径信息的报文,以使得该第一网络设备在主用路径可正常使用时,能够忽略该业务报文中无需使用的该备用路径信息,以在保证网络运行健壮性的同时,避免因该备用路径信息未被恰当处理而导致的丢包或错误转发问题。
在一种可能的实现方式中,所述方法还包括:根据所述第一网络设备具有所述处理能力发送第一报文,所述第一报文携带第一备用路径信息和第一主用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径。或者,根据所述第一网络设备具有所述处理能力向第三网络设备发送第一消息,所述第一消息用于指示所述第三网络设备根据所述第一消息获取第一报文携带的第一备用路径信息和第一主用路径信息,所述第一报文为所述第三网络设备向所述第一网络设备发送的报文。
在一种可能的实现方式中,所述根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:根据所述第一网络设备发送的通告消息中携带了所述第一指示信息,确定所述第一网络设备具有所述处理能力。可选地,根据所述第一网络设备发送的通告消息中携 带的所述第一指示信息为第一值,确定所述第一网络设备具有所述处理能力。
在一种可能的实现方式中,所述第一网络设备发送的通告消息为BGP消息或IGP消息。
在一种可能的实现方式中,所述第一指示信息携带于所述BGP消息包括的私网路由或公网路由中,所述私网路由或公网路由为用于转发所述报文所属业务的路由。
可选地,所述第一指示信息携带于所述BGP消息的VPN路由中,所述根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:根据所述VPN路由中包括所述第一指示信息,确定所述第一网络设备具有所述处理能力。
可选地,所述第一指示信息携带于所述BGP消息的扩展团体属性中。
可选地,所述BGP消息还包括下一跳属性,所述下一跳属性携带用于指示所述第一网络设备的下一跳信息,所述根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:根据所述第一指示信息和所述下一跳属性中携带的下一跳信息相同,确定所述第一网络设备具有所述处理能力;或者,所述根据所述第一指示信息确定所述第一网络设备不具有所述处理能力,包括:根据所述第一指示信息和所述下一跳属性中携带的下一跳信息不同,确定所述第一网络设备不具有所述处理能力。
在一种可能的实现方式中,在发送第一报文之前,所述方法还包括:接收第四网络设备发送的通告消息,所述第四网络设备发送的通告消息包括第二指示信息,所述第二指示信息用于指示所述第四网络设备的处理能力,所述第四网络设备的处理能力包括所述第四网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。
在该方案中,第二网络设备能够从多个用于报文转发的网络设备分别接收多个通告消息,这样可以根据该多个通告消息分别确定该多个网络设备的处理能力,并根据该多个网络设备的处理能力确定其中一个具有处理能力的网络设备作为主用设备,由此提升方案使用的灵活性和可靠性。
在一种可能的实现方式中,所述第一网络设备发送的通告消息还包括第一路径信息,所述第四网络设备发送的通告消息还包括第二路径信息,在向所述第一网络设备发送第一报文或第一消息之前,所述方法还包括:根据所述第一网络设备发送的通告消息和所述第四网络设备发送的通告消息,确定所述第一网络设备为主用设备以及所述第四网络设备为备用设备;添加所述第一路径信息和所述第二路径信息以生成所述第一报文,其中,所述第一路径信息属于第一主用路径信息,所述第二路径信息属于第一备用路径信息;或者,将包括所述第一路径信息和所述第二路径信息的所述第一消息发送至所述第三网络设备,以指示所述第三网络设备在所述第一报文中携带所述第一路径信息和所述第二路径信息,其中,所述第一路径信息属于第一主用路径信息,所述第二路径信息属于第一备用路径信息。
在一种可能的实现方式中,所述第一路径信息包括所述第一网络设备分配的第一VPN SID标签,所述第二路径信息包括所述第四网络设备分配的第二VPN SID标签。
在一种可能的实现方式中,所述方法还包括:根据所述第一网络设备不具有所述处理能力发送第二报文,所述第二报文携带第二主用路径信息,但不携带第二备用路径信息,其中,所述第二主用路径信息用于指示转发所述第二报文的第二主用路径,所述第二备用路径信息用于指示所述第二主用路径不可用时用于转发所述第二报文的一个或多个第二备用路径。
在该方案中,第二网络设备可以在确定第一网络设备不具有处理能力时,发送或指示其他网络设备发送不包括备用路径信息的报文,从而至少保证在主用路径非故障场景下报文的正常转发或处理。
在一种可能的实现方式中,所述第一网络设备为隧道的出口网络设备或所述隧道的中间网络设备,所述第二网络设备为控制器或所述隧道的入口网络设备。
在一种可能的实现方式中,所述第一网络设备为所述第一网络设备和所述第二网络设备之间的第一隧道的出口网络设备,所述第四网络设备为所述第四网络设备和所述第二网络设备之间的第二隧道的出口网络设备,所述第二网络设备为所述第一隧道和所述第二隧道的入口网络设备。
在一种可能的实现方式中,所述第一隧道和所述第二隧道为SRv6隧道或SR-MPLS隧道中的任意一种。
第三方面,本申请提供了一种通告网络设备处理能力的装置。所述装置可以包括用于执行上述第一方面或上述第一方面的任一种可选方式提供的通告网络设备处理能力的方法的功能单元。
示例性地,该装置可以包括:生成单元和发送单元。其中,生成单元,用于生成通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径;发送单元,用于向第二网络设备发送所述通告消息。
本方案中的第一网络设备能够发送携带指示信息的通告消息,该指示信息能够指示该第一网络设备是否具有作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,以使得接收该通告消息的网络设备能够在确定该第一网络设备具有所述处理能力时,向该第一网络设备发送,或指示其他网络设备向该第一网络设备发送包括主用路径信息和备用路径信息的业务报文,以使得该第一网络设备在主用路径可正常使用时,能够忽略该业务报文中无需使用的该备用路径信息,以在保证网络运行健壮性的同时,避免因该备用路径信息未被恰当处理而导致的丢包或错误转发问题。
在一种可能的实现方式中,所述装置还包括接收单元和转发单元,所述接收单元用于接收所述第二网络设备发送的第一报文,所述第一报文包括第一主用路径信息和第一备用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径;所述转发单元用于忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文。
在一种可能的实现方式中,所述通告消息为边界网关协议BGP消息或内部网关协议IGP消息。
在一种可能的实现方式中,所述第一指示信息携带于所述BGP消息包括的私网路由或公网路由中,所述私网路由或公网路由为用于转发所述报文所属业务的路由。
可选地,所述第一网络设备为承载所述业务的出口网络设备,所述私网路由为VPN路由, 所述第一指示信息携带于所述VPN路由的第一虚拟专用网段标识VPNSID标签字段中。
可选地,所述接收单元还用于接收更新前的所述BGP消息,所述更新前的BGP消息包括所述VPN路由的第二VPN SID标签字段;将所述第二VPN SID标签字段替换为所述第一VPN SID标签字段,以更新生成所述BGP消息。
可选地,所述第二VPN SID标签字段包括用于指示第三网络设备的处理能力的第二指示信息,所述第三网络设备的处理能力包括所述第三网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,其中,所述第三网络设备为所述更新前的BGP消息中携带的下一跳信息中所指示的网络设备。
可选地,所述第一指示信息携带于所述BGP消息的扩展团体属性中。
可选地,在所述生成BGP消息之前,所述接收单元还用于接收更新前的所述BGP消息,所述更新前的BGP消息包括下一跳属性,其中,所述扩展团体属性中的所述第一指示信息和下一跳属性均包括第一下一跳信息,所述第一下一跳信息用于指示第三网络设备。
可选地,所述生成BGP消息包括:将所述下一跳扩展团体属性中的所述第一下一跳信息修改为第二下一跳信息,以更新生成所述BGP消息,其中,所述第二下一跳信息用于指示所述第一网络设备。
可选地,所述更新生成BGP消息还包括:将所述扩展团体属性中的所述第一下一跳信息修改为所述第二下一跳信息。
可选地,所述第一指示信息用于指示所述第一网络设备的处理能力,包括:所述第一指示信息和所述第二扩展团体属性用于指示所述第一网络设备的处理能力。
在一种可能的实现方式中,所述BGP消息包括的私网路由或公网路由中携带SID,所述SID用于所述第一网络设备接收的报文所携带的备用路径信息中。
在一种可能的实现方式中,所述备用路径信息包括一个或多个备用的路径标签,所述一个或多个备用路径由所述一个或多个备用的路径标签指示。可选地,所述路径标签包括SID。
在一种可能的实现方式中,所述一个或多个备用SID为与所述第一网络设备构成多归关系的一个或多个网络设备分配的SID。
在一种可能的实现方式中,所述第一备用路径信息包括一个或多个备用SID,所述第一主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,所述转发单元还用于根据所述主用SID与所述第一网络设备存储的SID匹配,去除所述一个或多个备用SID;根据所述第一报文携带的载荷信息向用户侧的网络设备转发所述第一报文,或者,根据去除所述一个或多个备用SID后再添加的SID转发所述第一报文。
在一种可能的实现方式中,所述第一备用路径信息包括一个或多个备用SID,所述第一主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,所述转发单元还用于根据所述主用SID与所述第一网络设备存储的SID匹配,忽略所述一个或多个备用SID,根据位于所述一个或多个备用SID之后的SID转发所述第一报文。
在一种可能的实现方式中,所述第一网络设备为承载业务的中间网络设备或出口网络设备,所述第一指示信息携带于所述IGP消息或用于通告链路状态的所述BGP消息中或。
在一种可能的实现方式中,所述第二网络设备为控制器或承载所述业务的入口网络设备。
第四方面,本申请提供了一种通告网络设备处理能力的装置。所述装置可以包括用于执 行上述第二方面或上述第二方面的任一种可选方式提供的通告网络设备处理能力的方法的功能单元。
示例性地,该装置可以包括:接收单元和确定单元。其中,所述接收单元用于接收第一网络设备发送的通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径为所述主用路径不可用时用于转发所述报文的一个或多个备用路径;所述确定单元用于根据所述第一指示信息确定所述第一网络设备具有所述处理能力;或者,根据所述第一指示信息确定所述第一网络设备不具有所述处理能力。
本方案中的第二网络设备在接收第一网络设备发送的携带指示信息的通告消息,能够根据该指示信息确定第一网络设备是否具有处理能力,并在一些应用场景中,可以在确定该第一网络设备具有处理能力且作为转发报文的主用路径上的网络设备时,由第二网络设备向第一网络设备发送,或者,由第二网络设备指示其他网络设备(如隧道入口设备)向第一网络设备发送包括主用路径信息和备用路径信息的报文,以使得该第一网络设备在主用路径可正常使用时,能够忽略该业务报文中无需使用的该备用路径信息,以在保证网络运行健壮性的同时,避免因该备用路径信息未被恰当处理而导致的丢包或错误转发问题。
在一种可能的实现方式中,所述装置还包括发送单元,所述发送单元用于根据所述第一网络设备具有所述处理能力发送第一报文,所述第一报文携带第一备用路径信息和第一主用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径。或者,所述发送单元用于根据所述第一网络设备具有所述处理能力向第三网络设备发送第一消息,所述第一消息用于指示所述第三网络设备根据所述第一消息获取第一报文携带的第一备用路径信息和第一主用路径信息,所述第一报文为所述第三网络设备向所述第一网络设备发送的报文。
在一种可能的实现方式中,所述确定单元还用于根据所述第一网络设备发送的通告消息中携带了所述第一指示信息,确定所述第一网络设备具有所述处理能力。可选地,根据所述第一网络设备发送的通告消息中携带的所述第一指示信息为第一值,确定所述第一网络设备具有所述处理能力。
在一种可能的实现方式中,所述第一网络设备发送的通告消息为BGP消息或IGP消息。
在一种可能的实现方式中,所述第一指示信息携带于所述BGP消息包括的私网路由或公网路由中,所述私网路由或公网路由为用于转发所述报文所属业务的路由。
可选地,所述第一指示信息携带于所述BGP消息的VPN路由中,所述确定单元根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:根据所述VPN路由中包括所述第一指示信息,确定所述第一网络设备具有所述处理能力。
可选地,所述第一指示信息携带于所述BGP消息的扩展团体属性中。
可选地,所述BGP消息还包括下一跳属性,所述下一跳属性携带用于指示所述第一网络设备的下一跳信息,所述确定单元根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:根据所述第一指示信息和所述下一跳属性中携带的下一跳信息相同,确定所 述第一网络设备具有所述处理能力;或者,所述确定单元根据所述第一指示信息确定所述第一网络设备不具有所述处理能力,包括:根据所述第一指示信息和所述下一跳属性中携带的下一跳信息不同,确定所述第一网络设备不具有所述处理能力。
在一种可能的实现方式中,在发送第一报文或第一消息之前,所述接收单元还用于接收第四网络设备发送的通告消息,所述第四网络设备发送的通告消息包括第二指示信息,所述第二指示信息用于指示所述第四网络设备的处理能力,所述第四网络设备的处理能力包括所述第四网络设备作为转发报文的主用路径上的网络设备,忽略所述报文中包括的备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。
可选地,所述第一网络设备发送的通告消息还包括第一路径信息,所述第四网络设备发送的通告消息还包括第二路径信息,在发送所述第一报文或第一消息之前,所述确定单元还用于根据所述第一网络设备发送的通告消息和所述第四网络设备发送的通告消息,确定所述第一网络设备为主用设备以及所述第四网络设备为备用设备;所述装置还包括生成单元,所述生成单元用于添加所述第一路径信息和所述第二路径信息以生成所述第一报文,其中,所述第一路径信息属于第一主用路径信息,所述第二路径信息属于第一备用路径信息。或者,所述发送单元将包括所述第一路径信息和所述第二路径信息的所述第一消息发送至所述第三网络设备,以指示所述第三网络设备在所述第一报文中携带所述第一路径信息和所述第二路径信息,其中,所述第一路径信息属于第一主用路径信息,所述第二路径信息属于第一备用路径信息。
可选地,所述第一路径信息包括所述第一网络设备分配的虚拟专用网段标识第一VPN SID标签,所述第二路径信息包括所述第四网络设备分配的第二VPN SID标签。
在一种可能的实现方式中,在所述确定单元根据所述第一指示信息确定所述第一网络设备不具有所述处理能力之后,所述发送单元还用于根据所述第一网络设备不具有所述处理能力发送第二报文,所述第二报文携带第二主用路径信息,但不携带第二备用路径信息,其中,所述第二主用路径信息用于指示转发所述第二报文的第二主用路径,所述第二备用路径信息用于指示所述第二主用路径不可用时用于转发所述第二报文的一个或多个第二备用路径。
在一种可能的实现方式中,所述第一网络设备为隧道的出口网络设备或所述隧道的中间网络设备,所述第二网络设备为控制器或所述隧道的入口网络设备。
在一种可能的实现方式中,所述第一网络设备为所述第一网络设备和所述第二网络设备之间的第一隧道的出口网络设备,所述第四网络设备为所述第四网络设备和所述第二网络设备之间的第二隧道的出口网络设备,所述第二网络设备为所述第一隧道和所述第二隧道的入口网络设备。
在一种可能的实现方式中,所述第一隧道和所述第二隧道为基于SRv6隧道或SR-MPLS隧道中的任意一种。
第五方面,提供了一种第一网络设备,该网络设备包括处理器,所述处理器调用程序指令,以使得该网络设备实现如上述第一方面或上述第一方面的任一种实现方式提供的方法所执行的操作。该网络设备还可以包括存储器,存储器与处理器耦合,处理器调用的程序指令存储在该存储器中。该网络设备还可以包括通信接口,通信接口用于该设备与其它设备进行通信,示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。上述 由所述处理器调用的程序指令也可以预先存储在外部存储器中,在使用前从互联网下载后存储在本地,本申请对于存储器中指令的来源不进行唯一方式的限定。
第六方面,提供了一种第二网络设备,该网络设备包括处理器,所述处理器调用程序指令,以使得该网络设备实现如上述第二方面或上述第二方面的任一种实现方式提供的方法所执行的操作。该网络设备还可以包括存储器,存储器与处理器耦合,处理器调用的程序指令存储在该存储器中。该网络设备还可以包括通信接口,通信接口用于该设备与其它设备进行通信,示例性的,通信接口可以是收发器、电路、总线、模块或其它类型的通信接口。上述由所述处理器调用的程序指令也可以预先存储在外部存储器中,在使用前从互联网下载后存储在本地,本申请对于存储器中指令的来源不进行唯一方式的限定。
第七方面,提供了一种通告网络设备处理能力的系统,所述系统可以包括一个或多个如上述第五方面描述的网络设备,以及一个或多个如上述第六方面描述的网络设备。
第八方面,提供了一种芯片系统,包括处理器和接口电路;该接口电路,用于接收指令并传输至该处理器;该处理器,用于执行如第一方面或上述第一方面的任一种可选方式提供的方法对应的指令,或用于执行如第二方面或上述第二方面的任一种可选方式提供的方法对应的指令。
第九方面,提供一种计算机可读存储介质,该存储介质中存储有程序代码,该程序代码由处理器加载并执行,以使得计算机实现如上述第一方面或上述第一方面的任一种可选方式提供的方法所执行的操作,或以使得计算机实现如上述第二方面或上述第二方面的任一种可选方式提供的方法所执行的操作。
第十方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括程序代码,当其在网络设备上运行时,使得该网络设备执行上述第一方面或者第一方面的各种可选实现方式中提供的方法,或使得该网络设备执行上述第二方面或者第二方面的各种可选实现方式中提供的方法。
第三方面至第十方面中任一种设计方式所带来的技术效果可参见第一方面或第二方面中相应设计方式所带来的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种实现业务流量转发的网络系统的结构示意图;
图1b为本申请实施例提供的另一种实现业务流量转发的网络系统的结构示意图;
图2为本申请实施例提供的另一种实现业务流量转发的网络系统的结构示意图;
图3a为本申请实施例提供的一种消息格式的示意图;
图3b为本申请实施例提供的另一种消息格式的示意图;
图4为本申请实施例提供的一种通告网络设备处理能力的方法的流程图;
图5为本申请实施例提供的另一种通告网络设备处理能力的方法的流程图;
图6为本申请实施例提供的另一种通告网络设备处理能力的方法的流程图;
图7为本申请实施例提供的一种通告网络设备处理能力的装置的结构示意图;
图8为本申请实施例提供的另一种通告网络设备处理能力的装置的结构示意图;
图9为本申请实施例提供的一种网络设备的结构示意图;
图10为本申请实施例提供的一种网络设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了保证业务流量在数据承载网络中的正常转发,通常需要针对流量传输路径中包括的关键节点配置主备保护策略,以避免当该关键节点出现故障时直接导致的业务中断。在SRv6网络中,作为实现节点主备保护的可行方式,可以通过在流量报文中同时携带指向主用节点的主用SID和指向一个或多个备用节点的备用SID,以实现主用节点故障场景下通过备用节点转发该流量报文的目的。为便于理解,本发明实施例先描述几种利用主备SID实现主备保护的可能应用场景。
场景1尾节点保护
在采用SRv6技术承载VPN业务的场景下,如果作为SRv6隧道出口设备的尾节点发生故障,会导致业务流量无法通过该尾节点而最终转发至用户侧设备上,由此导致业务中断。为保证业务流量在上述情形中的顺利转发,可以部署备用尾节点以形成尾节点的保护。
图1a为本发明实施例示出的一种在SRv6网络中实现业务流量转发的系统100。系统100可以包括以下设备:用户侧边缘(customer edge,CE)11、CE 12,运营商边缘(provider edge,PE)21、PE 24、PE 25,以及运营商(provider,P)(骨干)31、P 32,其中,CE11连接PE21,CE 12双归属连接与PE 24和PE 25。CE 11和CE 12可以分别与用户侧的多个用户主机连接,其中,CE 11或CE 12可以直接与多个用户主机连接,也可以通过其他用户侧网络设备与多个用户主机连接。以CE 11向CE 12转发与CE 11连接的用户主机的业务报文为例,在正常转发场景下,PE21可以向作为远端主用设备的PE24发送该业务报文,以通过PE24向CE 12转发。但在PE 24发生故障等场景下,当业务报文到达P 31时,P 31作为与PE 24直连的网络设备,可以快速感知PE 24的路由不可达,此时如果P 31能够通过某种方式将该业务报文转发至PE 25,则PE 25作为与PE 24构成双归设备的远端备用PE,即可以在PE 24故障时将该业务报文转发至CE 12。上述通过与PE 24直连的设备感知设备故障,并直接调整报文转发路径的实现方式,能够解决PE 24故障场景下业务报文无法正常转发而导致的丢包问题。由于承担诸如PE 24角色的设备通常位于报文传输隧道的出口位置,因而也可以将上文描述的机制称为尾节点保护机制。
作为SRv6网络中实现尾节点保护的可行方案,报文传输隧道的入口节点可以在指导报文转发的路径信息中添加指示,以使得路径中的上一跳节点在感知到尾节点故障时能够根据该指示向备用节点转发该报文。在该场景下,该入口节点也可以称为头节点。仍以图1a示出的系统100作为示例,PE 24和PE 25分别学习到CE 12发布的用于转发VPN业务报文的路由,这里简称为VPN路由,该VPN路由的目的地址例如可以为CE 12连接的一台用户主机的地址,也可以是CE 12连接的目的网络段的地址。以该VPN路由的目的地址为2.2.2.2为例,PE 24分配用于标识该VPN业务的VPN段标识(segment identifier,SID)B2::1,并携 带在该VPN路由中通告给PE 21。类似地,PE 25则分配用于标识该VPN业务的VPN SID B3::1,并携带在该VPN路由中通告给PE21。PE 21从CE 11接收发送至目的地址为2.2.2.2的业务报文,然后为该业务报文添加报文头信息。该报文头信息用于指导该业务报文在隧道中的转发,该报文头信息可以包括第六版互联网协议(Internet Protocol version 6,IPv6)头和段路由扩展头(segment routing header,SRH)扩展头。为实现尾节点保护功能,PE 21在SRH包括的段列表(segment list,SL)中同时添加PE 24通告的VPN SID B2::1和PE 25通告的VPN SID B3::1,其中,B3::1相较于B2::1位于更靠近SL标签栈的栈底位置,也即,在该业务报文穿越隧道时,SL中的B2::1可以先于B3::1被读取。如此,当该业务报文到达P 31时,P 31会先将接收到的业务报文所包括的标签栈中的SID标签A5::1弹出,因为该A5::1与P 31本地分配并通告的节点SID相匹配。之后,P 31读取标签栈的下一层标签B2::1,该B2::1为主用设备PE 24通告的VPN SID。如果PE 24发生故障,则P 31可以快速感知B2::1的路由不可达,则P 31可以跳过该层标签,并读取下一层标签B3::1,通过查找该B3::1的路由确定向PE 25转发该业务报文。当该业务报文达到PE 25时,由于B3::1为该标签栈的栈底标签,则PE 25可以弹出该栈底标签,并根据VPN SID B3::1确定相应的VPN业务,以完成该业务报文在该B3::1标识的VPN中的用户侧转发流程。
图1b为本发明实施例示出的另一种在SRv6网络中实现业务流量转发的系统110。在该系统中,PE 21、PE 24和PE 25为同一网络域的节点,该同一网络域例如可以是同一自治(autonomous,AS)域的节点,并且PE 24和PE 25作为域边界节点与另一AS域的节点PE 27连接,PE 27与用户侧网络节点CE 12连接,以用于与CE 12挂载的用户主机通信。由于涉及跨域场景,作为一种可能的实现,PE 21和PE 24之间可以建立隧道A,而PE 24和PE 27之间可以建立隧道B(图1b中未示出隧道B中包括的一个或多个中间节点)。隧道A和隧道B可以构成从入口节点PE 21到出口节点PE 27的端到端隧道,其中,隧道A和隧道B可以分别称为分段隧道。PE 21也可以称为隧道A的头节点,PE 24可以称为隧道A的尾节点。PE 27通过BGP消息向PE 24发布目的地址为2.2.2.2的VPN路由。对于跨域场景,在一些可能的实现方式中,需要PE 24在接收到该BGP消息后将该BGP消息中的下一跳属性修改为PE 24的设备标识,如PE 24的环回(loopback)地址或接口互联网协议(Internet Protocol,IP)地址。在一些可能的实现方式中,PE 24在修改该BGP消息的下一跳信息时,还会为该BGP消息中携带的VPN路由重新分配相应的VPN SID B7::1。PE 24在对该BGP消息进行更新后,将该更新的BGP消息发布至PE 21。
PE 21在正常转发场景下选择通过PE 24向跨域设备PE 27转发报文,如果是PE 24修改该BGP消息的下一跳并为该BGP消息中携带的该VPN路由重新分配VPN SID的实现方式,则PE 21将感知到PE 24为承载VPN业务的下一跳设备,而非PE 27,因而PE 21会在SL标签栈中添加PE 24分配的VPN SID B7::1以指导转发。当报文到达PE 24时,PE 24可以根据报文头中包括的目的地址(destination address,DA)字段携带的SID值与PE 24本地存储的VPN SID的值相匹配,查找到与该VPN SID存在对应关系的SID列表,并将该SID列表添加至该报文的报文头中以指导报文在下一网络域的继续转发。其中,该SID列表可以包括多个SID,该多个SID用于指示从PE 24到PE 27的转发路径。
为了避免尾节点PE 24出现故障时导致的业务流量中断,可以在网络中配置PE 24的备份设备PE 25,如此,在主用节点PE 24故障时,PE 25作为备用节点向PE 27转发用户侧的 该业务流量,由此实现尾节点保护。为了实现上述功能,作为入口PE 21可以在指导报文转发的路径信息中添加指示,以使得路径中的上一跳节点P 31在感知到尾节点故障时能够根据该指示向备用节点PE 25转发该报文。PE 21可以在段列表中添加PE 24分配并通告的VPN SID B7::1,以及添加PE 25分配并通告的VPN SID B9::1,其中,B9::1相较于B7::1位于更靠近SL标签栈的栈底位置,也即,在该业务报文穿越隧道时,SL中的B7::1可以先于B9::1被读取。如果PE 24发生故障,则P 31可以快速感知B7::1的路由不可达,则P 31可以跳过该层标签,并读取下一层标签B9::1,通过查找该B9::1的路由确定向PE 25转发该业务报文。当该业务报文达到PE 25时,PE 25可以根据B9::1查找本地存储的与B9::1对应的SID列表,并将该SID列表添加至指导报文转发的路径信息中,以指示报文继续向PE 27转发。
场景2业务保护
图2为本发明实施例示出的一种在SRv6网络中实现业务编排的系统120。业务编排器41可以获取管理域范围内的各PE节点通告的各种类型的SID。例如,业务编排器41可以从PE 22获取服务类型的SID,包括S1::1和S2::1,其中S1::1可以用于指示PE 22将业务报文发送至防火墙51进行清洗以实现攻击过滤,而S2::1则用于指示PE 22可以将业务报文发送至防火墙52进行清洗。也即在流量清洗场景下,S1::1可以用于指示报文转发的主用路径,而S1::2可以用于指示报文转发的备用路径。再例如,业务编排器41还可以从PE 23或PE 26获取节点类型的SID,其中A5::1用于指示PE 23,A7::1用于指示PE 26。再例如,业务编排器41还可以从PE 28获取节点类型的SID(A9::1)或VPN类型的SID(B2::1),其中,业务编排器41可以根据PE 28需承载业务的差别,使用相应类型的SID编排路径。作为可能的示例,A9::1可以用于指导转发公网业务报文,而B2::1可以用于指导转发私网VPN业务报文。
在正常转发场景下,防火墙51作为主用设备提供对流量报文的清洗业务,但为避免防火墙51故障时的流量中断,还可以部署防火墙52作为备用设备提供清洗业务。业务编排器41可以编排流量从PE 21向PE 28转发的路径信息,并将编排好的路径信息发送给头节点,以指示PE 21在报文中添加该路径信息以指导该报文的转发。在SRv6网络中,该路径信息即可以为包括多个SID的SL。为实现流量清洗等业务的保护,业务编排器41可以在下发的路径信息中同时添加S1::1和S2::1。如此,当流量报文转发至PE 22,且PE 22发现防火墙51故障时,可以忽略SL中当前指示的S1::1,并读取SL中的下一个SID,即S2::1,从而根据S2::1引导该流量报文转发至防火墙52进行清洗。清洗完成后,该流量报文可以返回PE 22,并根据SL中的后续SID的指示经由PE 23向PE 28转发。
上述场景1-2主要描述了SRv6网络中通过在报文里同时携带主用SID和备用SID,以实现当主用SID指示的路径出现故障时,跳过该主用SID而根据下一个备用SID指示的备用路径转发该报文的执行方式。可以理解地,场景1-2仅作为可能的示例,类似的执行方式在其他可能的网络架构和应用场景中也可以适用。例如,类似方法可应用于对转发路径上的中间节点的保护。以图2示出的网络场景为例,如果考虑在对流量进行清洗时,用于连接可提供清洗业务的防火墙51的PE 22也可能发生故障,从而导致流量无法使用清洗业务并可能导致流量中断,则可以为PE 22部署备用PE节点,该备用PE节点也连接一个可提供清洗服务的防火墙,从而在PE 21发现作为主用节点的PE 22故障时,可以根据业务编排器41编排的该备用PE节点分配的服务类型的备用SID,直接将流量报文转发至备用PE节点进行清洗。由 此在对中间节点PE 22形成保护的同时也保障了流量清洗的顺利执行。再例如,虽然场景1-2描述了使用一个备用SID作为备用路径信息,但在其他场景中,也可以使用多个备用SID作为备用路径信息以提供多条可选备用路径,或者备用路径信息的形式未必是SID,而是采用其他类型的路径标签,或者直接采用其他表示格式。再例如,无论是用于指示主用路径的主用SID,还是指示备用路径的备用SID,其中SID的类型可以是多样的,例如SID可以用于指示路径上的节点,也可以用于指示路径上的链路,也可以用于指示到达一个服务,或者用于指示包括多跳节点的路径。再例如,除了应用于节点保护或业务保护,也可以应用于其他需要实现主备保护的业务场景。再例如,除了应用于SRv6网络,也可以应用于其他类型的网络,作为可能的情形,当SR技术应用于多协议标签交换(Multi-protocol Label Switching,MPLS)数据平面时,类似的执行方式可以应用于基于MPLS的分段路由(Segment Routing-Multiprotocol Label Switching,SR-MPLS)网络。在SRv6网络中,主用SID和备用SID可以封装入IPv6扩展头的SRH中,而在SR-MPLS中,主用SID和备用SID可以封装入MPLS报文头中。
上述实施例描述的场景1-2主要描述了主用路径发生故障时使用备用路径实现保护的方案,但在实际应用中,当主用路径未发生故障时流量报文仍然需通过主用路径完成转发,此时需要主用路径上的节点知晓报文中携带的备用路径信息无需使用而进行相应处理,如去除或跳过等忽略处理方式,以避免因无法正确解析备用路径信息而导致报文被丢弃。
仍结合图1a描述的场景,描述尾节点PE 24未发生故障时PE 24对SL标签栈的处理方式。在尾节点未故障场景下,PE 24将正常接收到P 31转发的业务报文,该接收到的业务报文的SL标签栈中包括两层标签,即位于栈底的B3::1,和标签栈中位于B3::1上一层的B2::1。PE 24在接收到报文后,能够确定报文头的DA字段携带的SID B2::1与其本地分配的VPN SID相匹配。此时,PE 24还确定SRH中当前指示位置的SID也为B2::1,如果未添加备用SID,则B2::1为SRH的栈底标签,在基于SRv6的传统转发方案中,由于B2::1位于栈底,则PE 24可以剥离外层的报文头(即包括图1a示出的IPv6头和SRH扩展头的报文头部分),并根据内层载荷信息中包括的该业务报文的目的地址2.2.2.2向用户侧转发该业务报文。但在本发明实施例给出的场景1的尾节点保护实现方案中,B2::1不再是栈底标签,如按照SRv6网络现有的转发规则,由于无法正确处理B3::1,PE 24会执行报错或丢弃业务报文的操作,因而为了保证该业务报文在尾节点保护方案下的正常转发,需要PE 24能够对该标签栈进行特殊处理,即允许在匹配B2::1时将位于栈底的B3::1连同B2::1一并剥离。
为保证业务报文在尾节点保护场景中的正常转发,本发明实施例提供了一种SRv6网络中尾节点(如图1a示出的PE 24)向头节点通告其是否具有上述特殊处理能力的方法400。头节点可以在确定需作为主用尾节点的节点具有该特殊处理能力的前提下,在业务报文中同时添加主用尾节点和备用尾节点分配的业务标签,如用于标识VPN业务的VPN SID,以配合执行网络系统的尾节点保护方案。图4示出了一种通告尾节点处理能力的方法,该方法可以在如图1a或1b所示的网络系统中实现。该方法可以包括:
S401尾节点生成通告消息,所述通告消息包括指示信息,所述指示信息用于指示所述尾节点对报文中携带的用于实现尾节点保护的备用SID能够进行忽略处理。
尾节点PE 24可以生成指示信息,该指示信息用于向头节点PE 21通告PE 24作为尾节 点是否具有前述描述的尾节点保护场景下对于业务报文中的备用SID的忽略处理能力,以下为便于表述,简称为处理能力。该指示信息可以携带在通告消息中向头节点PE 21发送。在一种可能的实现中,PE 24通过在指示信息中携带不同的内容,区分PE 24是否具有处理能力,即当指示信息包括的内容为A时,指示PE 24具有处理能力,而当指示信息包括的内容为B时,指示PE 24不具有处理能力。在另一种可能的实现中,PE 24通过是否携带指示信息通告处理能力,也即,当通告消息中包括该指示信息时,说明PE 24具有处理能力,而当通告消息不包括该指示信息时,说明PE 24不具有处理能力。无论哪种实现方式,当PE 24发出的该通告消息中包括该指示信息时,该指示信息可以单独地用于指示PE 24的处理能力,也可以配合该通告消息中携带的其他信息共同指示PE 24的处理能力。
以图1a描述的同一AS域范围内的尾节点保护方案为例,作为一种可能的通告方式,该通告消息可以是边界网关协议(Border Gateway Protocol,BGP)消息。在SRv6网络中,PE 24可以通过BGP消息发布VPN路由的VPN SID标签,如图3a所示,与该VPN SID相关信息可以携带在BGP消息中的段标识信息类型-长度-值(segment identifier information type-length-value,SID information TLV)字段,该字段为BGP消息中的一个子类型-长度-值(type-length-value,TLV)类型的字段。为通告PE 24的处理能力,可以在该SID information TLV字段中增加一个子字段,该子字段也可以是TLV类型,因属于该作为子TLV的SID information TLV字段中的一个子字段,因而可以称为子TLV子(sub sub TLV)字段。该sub sub TLV的类型(type)字段可以用于标识该sub sub TLV的类型为用于通告尾节点保护能力的sub sub TLV。该sub sub TLV的值(value)字段包括用于指示PE 24处理能力的该指示信息,其中,该值字段的长度由该sub sub TLV的长度(length)字段指示。在一种可能的实现中,该sub sub TLV的值字段的长度可以为1比特(bit)位,则可以设置当该sub sub TLV的值字段取值为1时指示PE 24具有处理能力,而取值为0时指示PE 24不具有处理能力。上述长度为1bit的实现方式仅作为示例,也可以根据需要设置其他长度,以用于满足必要的格式要求或用于通告更多的细分情况。在该实现方式中,PE 24无论是否具有处理能力,均需要知晓可以通过添加该sub sub TLV的方式通告PE 24的能力情况,但在一种可能情形中,PE 24由于不具有处理能力而一并无从知晓其需要添加该sub sub TLV以通告其自身不具有处理能力。因而,在另一种可能的实现中,PE 24可以在具有处理能力时,添加该sub sub TLV,而在不具有处理能力时,无感知地或者有感知地不添加该包括指示信息的sub sub TLV。其中,所谓有感知地不添加意味着PE 24知晓其需要在具有处理能力时添加sub sub TLV,并知晓其需要在不具有处理能力时不添加sub sub TLV。PE 21在接收到该BGP消息后,即可根据该BGP消息中是否携带该sub sub TLV,或者该BGP消息中携带的该sub sub TLV中值字段的具体取值,确定PE 24是否具有支持尾节点保护场景下的路径信息的处理能力。在该场景中,尾节点PE 24也可以称为隧道的出口网络设备,头节点PE 21可以称为隧道的入口网络设备。
仍以图1a描述的同一AS域范围内的尾节点保护方案为例,作为另一种可能的通告方式,该通告消息仍然是BGP消息,例如可以是PE 24发送的用于发布VPN路由的BGP消息。该指示信息可以携带于该BGP消息的某种属性信息中。以该属性信息为扩展团体属性类型为例,如图3b所示,定义一种用于通告尾节点保护能力的扩展团体属性。该扩展团体属性用于携带该指示信息,以用于指示PE 24的处理能力。
在第一种可能的情形中,PE 21接收到该通告消息后,可以根据该BGP消息中携带了该 扩展团体属性,确定PE 24具有处理能力,而在未携带该扩展团体属性时确定PE 24不具有处理能力,在该情形中,携带在该扩展团体属性中的该指示信息的形式和内容可以根据需要进行各种可能的合理设计。
在第二种可能的情形中,无论PE 24是否具有该处理能力均添加该扩展团体属性,则PE 21在接收到该通告消息后,可以根据该扩展团体属性中携带的指示信息的不同内容区分PE 24是否具有处理能力,如当PE 24具有处理能力时,该指示信息包括取值为A的指示字段,而当PE 24不具有处理能力时,该指示信息包括取值为B的该指示字段。
在第三种可能的情形中,该扩展团体属性携带的该指示信息,以及该作为通告消息的BGP消息中的其他属性共同指示PE 24是否具有处理能力。作为一种可能的实现,当PE 24具有处理能力时,则在BGP消息中添加该扩展团体属性,该扩展团体属性中可以包括该VPN路由的下一跳信息,该下一跳信息也即该扩展团体属性携带的该指示信息。该下一跳信息包括PE 24的设备标识,如PE 24的loopback地址或接口IP地址。作为BGP协议的标准实现,该BGP消息中携带的下一跳属性中也携带该下一跳信息。则PE 21接收到该通告消息后,可以根据该扩展团体属性中携带的下一跳信息与下一跳属性中携带的下一跳信息一致,确定PE 24具有处理能力,其中,关于该PE 21根据扩展团体属性和下一跳属性中携带的下一跳信息不一致则确定PE 24不具有处理能力的应用场景,将结合图1b在接下来的描述中进一步阐述。
上述三种情形仅作为可能的示例,在其他可能的实现方式中,该指示信息也可以携带在BGP消息的其他可能字段,或者根据应用场景需要而携带在其他类型的通告消息中发布。在其他可能的实现方式中,该指示信息可以单独携带于通告消息中,而不与业务路由同时发布,只要通过某种关联方式,能够使得头节点建立起指示信息和用于指导业务报文转发的该业务路由之间的关系,并根据该关系确定可否在发送的业务报文中携带需主用尾节点进行特殊处理的路径信息即可。
再以图1b描述的跨域的尾节点保护方案为例,介绍尾节点PE 24生成指示信息并置于通告消息中发布的另一种方式。PE 24此时作为域边界节点以及分段隧道A的尾节点,可以接收到PE 27通过BGP消息发布的目的地址为2.2.2.2的VPN路由。在该场景中,尾节点PE 24也可以称为分段隧道A的出口网络设备,而头节点PE 21可以称为分段隧道A的入口网络设备。
如采用前述提及的采用VPN路由中包括的VPN SID的sub sub TLV携带指示信息的方式,则在一种可能的情形中,PE 24在接收到PE 27发布的BGP消息时,已包括PE 27用于通告其作为隧道B的尾节点对备用SID的处理能力的第一sub sub TLV,该第一sub sub TLV携带于PE 27分配的第一VPN SID中。而PE 24在接收到该BGP消息时需要修改下一跳,并且会为该目的地址为2.2.2.2的VPN路由重新分配第二VPN SID,并将接收的包括将该第一sub sub TLV的第一VPN SID替换掉。则PE 24可以在重分配的第二VPN SID中添加新生成的第二sub sub TLV,以指示PE 24作为隧道A的尾节点是否具有对备用SID的处理能力。可以理解地,如PE 27不具有处理能力,则也可以不在第一VPN SID中携带第一sub sub TLV。
如采用前述提及的采用BGP消息中的扩展团体属性携带指示信息的方式,则在一种可能的情形中,PE 27如具有处理能力,则可以在向PE 24发送的BGP消息的下一跳属性和该扩展团体属性中添加相同的下一跳信息,如PE 27的loopback地址。PE 24在接收到该BGP消息时,作为隧道A的尾节点需要将该BGP消息中的下一跳属性修改为PE 24的loopback地 址,此时如果PE 24具有处理能力,则可以一并修改该扩展团体属性中的下一跳信息为PE 24的loopback地址。但如果PE 24虽知晓可以通过该扩展团体属性通告处理能力,但并不具有该处理能力,甚至不知晓可以使用该扩展团体属性通告其处理能力,则PE 24不会修改该扩展团体属性中的下一跳信息,也即该情形下该扩展团体属性中的下一跳信息仍指示PE 27。因此,当PE 21从PE 24接收到该更新后的BGP消息时,可以根据该BGP消息中携带的该下一跳属性和该扩展团体属性中包括的下一跳信息是否一致,判断PE 24是否具有处理能力。如一致,则说明PE 24具有处理能力;如不一致,则说明PE 24不具有处理能力。
S403所述尾节点向头节点转发所述通告消息。
尾节点将生成的所述通告消息发布出去,所述通告消息可以先由一个或多个中间节点接收并继续扩散,直至由头节点PE 21接收。仍以图1a为例,PE 24发送的通告消息先由P 31接收,P 31作为骨干节点不对该通告消息进行任何处理,而是直接转发至下一节点。为简化描述,图示中以P 31的下一跳即为头节点PE 21为例,在实际应用场景中,P 31和PE21之间还可以包括一个或多个其他中间节点。作为示例,对于图1a描述的域内场景,尾节点PE 24可以作为连接用户侧设备的PE设备首次生成所述通告消息;而对于图1b描述的跨域场景,尾节点PE 24可以作为分段隧道的出口节点,或者也可以理解为由多个分段隧道构成的端到端隧道的中间节点,在接收PE 27生成并发布的通告消息后,对该通告消息进行修改以更新该通告消息,该情形下,S401所描述的尾节点PE 24生成该通告消息,可以理解为PE 24对接收的该通告消息进行更新以视为重生成。
S405所述头节点根据所述通告消息的所述指示信息发送业务报文,所述业务报文携带主用尾节点分配的主用VPN SID和备用尾节点分配的备用VPN SID。
头节点PE 21在接收到PE 24发布的所述通告消息后,根据不同的可能实现方式,可以根据所述通告消息中是否携带指示信息,或者携带的指示信息的具体内容,确定PE 24是否具有处理能力。
在一种可能的情形中,头节点PE 21在接收PE 24发布的通告消息之前,可能并未预先知晓或预先确定PE 24为主用尾节点。则在该情形中,头节点PE 21还可以从另一可作为尾节点的设备PE 25接收PE 25发布的通告消息,以根据PE 25发布的通告消息中携带的指示信息确定PE 25是否具有处理能力,其中,PE 25利用通告消息包括的指示信息通告处理能力的具体方式可参见S201和S203中关于PE 24通告其处理能力的相关描述,这里不再赘述。PE 21在接收到PE 24和PE 25分别发布的通告消息后,可以根据PE 24和PE 25是否具有处理能力,或进一步结合本地策略确定主用尾节点和备用尾节点,并根据角色的设置分别将主用尾节点发布的VPN SID作为主用SID,而将备用尾节点发布的VPN SID作为备用SID。
在另一种可能的情形中,头节点PE 21可以预先知晓PE 24和PE 25的主备分工,则此情形下,也可以仅接收PE 24发布的通告消息。此外,头节点PE 21在发送VPN的业务报文之前,还分别获取了主用尾节点PE 24发布的VPN路由,以及备用尾节点PE 25发布的路由。其中,该主用尾节点PE 24发布的VPN路由可以携带在PE 24发送的通告消息,如BGP消息中。在PE 24发布的VPN路由中包括PE 24为该VPN分配的VPN SID B2::1,PE 25发布的VPN路由中包括PE 25为该VPN分配的VPN SID B3::1。
无论采用哪种具体判断方式,在PE 21确定PE 24不具有处理能力时,可以选择按照传统方式,即将VPN SID B2::1作为栈底标签,封装在该VPN业务的报文的SRH扩展头中发 送出去。在PE 21确定PE 24具有处理能力时,则可以将B3::1作为栈底标签,并将B2::1置于紧邻B3::1的栈标签位置,封装在该VPN业务的报文的SRH扩展头中发送出去。
S407所述尾节点接收所述业务报文,并对所述业务报文中携带的备用SID进行忽略处理。
在一种可能的情形中,当作为主用尾节点的所述尾节点接收到携带了主用SID和备用SID的该业务报文时,可以根据该主用SID的匹配对该业务报文的报文头进行解封装,即使该报文头中还包括位于栈底位置的备用SID,从而根据该业务报文的载荷部分携带的用户侧的路由信息完成后续转发。仍以图1a示出的SRv6网络为例,在主用尾节点PE 24未发生故障时,PE 24能够接收到头节点PE 21发送的VPN业务的报文,并且发现当前IPv6头的DA字段携带的SID信息与PE 24分配的VPN SID B2::1相匹配,则此时可以对该业务报文的报文头进行解封装,由于该报文头的SRH中包括主用SID B2::1和备用SID B3::1,因此通过该解封装操作,B2::1和B3::1一并被去除。也即,在该情形中,PE 24对该业务报文中携带的备用SID进行忽略处理具体为通过去除方式实现忽略而不处理。在执行完报文头的解封装操作后,可以根据该报文载荷部分包括的目的地址2.2.2.2,查询虚拟路由转发(virtual routing and forwarding,VRF)表完成该报文向用户侧的转发。
在另一种可能的情形中,当作为主用尾节点的所述尾节点接收到携带了主用SID和备用SID的该业务报文时,可以根据该主用SID的匹配查询与该主用SID对应的SID列表,然后将该SID列表添加至该业务报文中,以用于指导后续转发。以图1b示出的SRv6网络为例,在隧道A的主用尾节点PE 24未发生故障时,PE 24能够接收到头节点PE 21发送的VPN业务的报文,并且由于PE 24在发布VPN路由阶段修改了下一跳并重新分配了标识该VPN业务的VPN SID B2::1,因此,在接收到该VPN业务的报文时,会发现当前IPv6头的DA字段携带的SID信息与PE 24分配的VPN SID B2::1相匹配,则此时PE 24可以在本地查找与B2::1对应的一段SID列表,该SID列表用于指示该业务报文从PE 24向PE 27的转发。此情形中,根据具体实现方式的不同,在一种可能的情形中,PE 24可以先去除与隧道A关联的报文头,然后为报文添加包括该SID列表的、与隧道B关联的报文头。在该情形中,PE 24相当于以去除方式对B3::1进行了忽略处理。在另一种可能的情形中,PE 24也可以在报文中添加该SID列表,并跳过B3::1而读取该SID列表中的SID以用于指导报文转发。
在上述方法400中,头节点可以承担路径编排的角色,头节点根据尾节点向其发布的通告信息,确定尾节点是否具有对报文中的备用路径信息的特殊处理能力,以保证在尾节点具有该处理能力时将该尾节点设置为主用尾节点,以保证在主用尾节点未发生故障时能够对备用路径信息执行去除或跳过等忽略方式的操作,从而保证主用尾节点未故障时报文的正常转发。该方法400可以应用于本申请场景1描述的尾节点保护方案中,或者也可以应用于需头节点根据报文传输路径上的其他节点通告的处理能力情况,确定报文中可否携带备用路径信息的其他可能场景。在其他可能的应用场景中,如本申请描述的场景2,承担路径编排角色的还可以是控制器,为此,本申请实施例还提供了一种方法500,通过该方法,控制器器可以根据从转发节点接收的通告消息确定该转发节点的处理能力,以根据该通告消息确定为报文转发编排的路径是否可以包括备用路径信息,从而保证主用路径未发生故障时报文的正常转发。图5示出了一种通告尾节点处理能力的方法,该方法可以在如图2所示的网络系统中实现。该方法可以包括:
S501转发节点生成通告消息,所述通告消息包括指示信息,所述指示信息用于指示所述转发节点对所接收报文中包括的用于指示备用路径的备用SID能够进行忽略处理。
该转发节点在转发路径上的角色可以是隧道的中间节点或出口节点。不同于将指示信息连同用于业务转发的路由(如VPN路由)一起携带于消息中通告的方式,在存在控制器的场景中,该转发节点可以生成控制类的通告消息,如BGP链路状态协议(Border Gateway Protocol Link-State,BGP-LS)消息以通告其处理能力。该指示信息可以携带于BGP-LS消息的指定字段,并可根据该指示信息包括的不同内容区分该转发节点是否具有处理能力。在一种可能的情形中,该转发节点还可以向控制器通告其分配的SID,如场景2中涉及的服务类型的SID,或者指示该转发节点的节点SID等。在另一种可能的情形中,该转发节点需匹配或使用的SID也可以是控制器统一配置后下发的。
S503所述转发节点向控制器转发所述通告消息。
包括所述转发节点在内的属于该控制器管理域范围内的各转发节点均可以向控制器发送通告消息。该通告消息可以是各转发节点主动发送至该控制器的,也可以是在接收到控制器发送的控制指令后作为响应发送的。
S505所述控制器根据所述通告消息的所述指示信息确定主用SID和备用SID,并发送至转发业务报文的入口节点。
该控制器在接收到该转发节点发送的该通告消息后,根据该通告消息中携带的指示信息确定该转发节点是否具有处理能力。该控制器还可以根据其他转发节点发送的通告消息中携带的指示信息,确定其他转发节点是否具有处理能力。该控制器可以根据各转发节点是否具有处理能力,并结合业务需求和各节点的能力情况进行业务转发路径的编排,以确定与主用转发节点关联的主用SID,以及与备用转发节点关联的备用SID。该主用SID和备用SID可以是节点类型的SID或服务类型的SID,也可以是其他定义类型的SID,不同类型的SID可以用于指示转发路径上的节点在匹配到该SID时执行相应的操作。
S505以控制器接收通告消息并根据该通告消息完成路径编排为例,在其他可能的实施例中,也可以是独立于该控制器存在的路径编排器完成控制器执行的根据通告消息进行路径编排,并将编排的路径发送至入口节点的功能。在一种可能的实现方式中,该路径编排器也可以作为控制器的组成部分集成于该控制器中。
S507所述入口节点将所述主用SID和备用SID添加至所述业务报文中,并发送所述业务报文。
该入口节点从该控制器接收主用SID和备用SID的方式,可以是从控制器接收用于指导从该入口节点向出口节点转发的端到端路径编排信息,该端到端路径编排信息中包括该主用SID和备用SID,也可以是从控制器接收用于指导部分关键路径段转发的局部路径编排信息。该局部路径编排信息中包括该主用SID和备用SID,而该入口节点在接收到该局部路径编排信息后,继续获取其他必要的用于指导业务报文转发的其他SID信息,然后利用该局部路径编排信息和继续获取的其他SID信息以生成一个完整的路径信息指导转发。例如,在场景2中,控制器可以只编排与防火墙清洗业务相关的局部路径,也即至少将该用于实现业务保护相关的主用SID和备用SID发送给转发节点,然后由该转发节点将已获取的用于指导业务报文向出口节点转发的路径信息和该局部路径的编排信息进行拼接,以确定能够支持业务保护的完整的路径信息。
该入口节点发送的包括该主用SID和备用SID的路径信息可以携带在该业务报文的报文头中。例如,在SRv6网络中,主用SID和备用SID可以封装入IPv6扩展头的SRH中,而在SR-MPLS中,主用SID和备用SID可以封装入MPLS报文头中。
S509所述转发节点接收所述业务报文,并在确定所述主用SID匹配时忽略所述业务报文中携带的备用SID。
在该转发节点所在的主用路径未发生故障的场景中,该转发节点在接收到该业务报文后,可以发现该业务报文携带的该主用SID与本地存储的SID可以匹配,并可以根据该匹配执行相应的操作。该转发节点所在的主用路径未发生故障,例如可以是该转发节点作为主用节点未发生故障,或者也可以是与该转发节点连接的提供业务的主用服务节点未发生故障。例如,如该主用SID的类型为VPN SID且应用于图1b描述的场景中,则该转发节点可以获取与该主用SID对应的SID列表,并将该SID列表添加至报文头中以指导报文在下一个域的转发。再例如,如该主用SID的类型为图2描述的场景中的服务类型的SID,则该转发节点可以根据该服务类型的SID确定可提供服务的防火墙,并将业务报文发送至该防火墙完成清洗。
在上述主用路径未发生故障的场景中,与备用节点关联的备用SID无需再使用,为保证该业务报文的后续正常转发,该作为主用节点的转发节点需要忽略该业务报文中携带的备用SID。忽略备用SID的具体处理方式可以根据场景而有所不同。例如,在图2示出的场景中,PE 22如发现主用路径上的防火墙51未发生故障,则可以使用与防火墙51关联的服务类型的SID S2::1确定向防火墙51转发该业务报文的主用路径,以利用防火墙51实现对该业务报文的清洗。此时未避免报文转发错误,PE 22需要对备用SID进行忽略处理。由于在该场景中,PE 22可能并不是转发该业务报文的出口网络设备,而是作为报文转发路径上的中间网络设备需继续使用位于备用SID之后的其他SID进行转发,因而不能通过剥离报文头的方式忽略备用SID,而只能跳过标签栈中的备用SID以读取后续转发所需的其他SID。也即,在图2示出的场景中,PE 22需要以跳过的方式对备用SID进行忽略处理。这里所说的跳过根据SID携带方式和应用场景的不同,可以包括不读取备用SID而直接跳过,或者虽读取备用SID但不使用该备用SID进行任何具体操作而视为跳过。
图2以备用路径信息包括的备用SID的个数为一个作为示例,在其他可能的场景中,备用路径信息包括的备用SID的个数也可以为多个,该多个备用SID可以用于指示多条备用路径,或者该多个备用SID也可以用于指示一条备用路径。该转发节点需要知晓何时需要跳过一个或多个备用SID,并且在一些情形下,如备用SID的个数不为定值时,需要知晓需要跳过的备用SID的个数。作为一种可能的实现方式,该转发节点在匹配到特定类型的主用SID时,跳过预定个数的备用SID。例如,图2中的PE 22可以在发现匹配到服务类型的SID S2::1时,跳过该业务报文携带的当前SID列表中的下一个SID,即备用SID S1::1。作为另一种可能的实现方式,该转发节点可以根据与主用SID关联的指示信息,确定在匹配到该主用SID时需要跳过的位于该主用SID之后的一个或多个备用SID。该指示信息例如可以包括需跳过的SID的个数的值。类似地,该指示信息也可以与备用SID关联,例如与第一个备用SID关联,以指示包括该备用SID在内的需跳过的SID的个数。以上只是作为可能的示例,也可以设计其他指示方式以使得转发节点能够确定需忽略的一个或多个备用SID。以上为便于描述,将转发节点需忽略的SID称之为备用SID,但在实际应用中,该转发节点可能并不真正地知晓其应当执行忽略处理的SID为指示备用路径的SID,而只是根据本地定义的规则或根据指 示信息确定其需要对接下来的一个或多个SID进行忽略处理。
此外,虽然S505描述了由控制器将主用SID和备用SID发送给入口节点的实现方式,但在其他可能的实现方案中,也可以允许控制器仅根据从各转发节点接收的通告消息,从各转发节点中确定主用节点和备用节点,然后向入口节点发送用于指示报文转发路径上的主用节点和备用节点的消息,之后由入口节点根据所述消息从本地获取与所述主用节点关联的主用SID,以及获取与所述备用节点关联的备用SID。
以上结合场景1和2阐述了入口网络设备或控制器能够根据从转发节点接收的通告消息中携带的指示信息,确定转发节点是否具有对备用路径信息进行忽略处理的能力,并在确定该转发节点具有该能力时,在向该转发节点发送的报文中添加备用路径信息的方案。通过执行相应的方案,用于编排路径的入口网络设备或控制器能够在确定被设定为主用路径上的转发节点具有相应的能力时,在需转发的报文中添加备用路径信息,以确保在主用路径未发生故障时,该转发节点能够忽略该报文中的该备用路径信息而不用于确定备用路径,以保证报文在主路径非故障场景下的正常转发。
以上方法400和500可以分别适用于前述描述的场景1和场景2,但类似于方法400和500所述的根据转发节点通告的能力情况确定在报文中是否携带备用路径信息的方案可以适用于更多的应用场景。接下来描述本发明实施例提供的一种通告网络设备处理能力的方法600,可以应用于包括场景1和场景2在内的多个不同的具体应用场景中。
S601第一网络设备生成通告消息,所述通告消息包括指示信息,所述指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。
第一网络设备例如可以是转发路径上隧道的出口网络设备或中间网络设备。携带指示信息的通告消息可以是结合网络架构和应用场景确定的各种可能的消息类型,例如IGP消息、BGP-LS消息或用于通告路由的BGP消息。其中,如接收通告的设备为隧道的入口网络设备,则可以利用通告私网路由的BGP消息携带指示信息,例如参见方法400中的S401;如接收通告的入口网络设备和该作为出口网络设备或中间网络设备的第一网络设备属于同一网络域的设备,则也可以利用IGP消息携带指示信息;如接收通告的设备为控制器或路径编排器,则可以用于BGP-LS消息携带指示信息,例如参见方法500的S501。BGP消息还可以用于通告公网路由,则在接收通告的设备为公网转发路径上的网络设备时,还可以利用BGP消息中的公网路由信息携带指示信息,例如在公网路由的公共段标识(public SID)字段携带指示信息。
在一种可能的实现中,可以根据携带该指示信息确定该第一网络设备具有处理能力,而根据不携带该指示信息确定第一网络设备不具有处理能力,例如方法400中的S401描述的sub sub TLV的实现方式。在另一种可能的实现中,可以根据携带的该指示信息为第一值,确定第一网络设备具有处理能力,而根据携带的该指示信息为不同于该指示信息的第二值,确定第一网络设备不具有处理能力,其中,在一些可能的情形中,具有该第一值或该第二值的指示信息可以与该通告消息中携带的其他信息一同作为确定该第一网络设备是否具有处理能力的信息,例如方法400中的S401描述的通过比较BGP消息中的扩展团体属性和下一跳属 性中携带的信息是否一致的实现方式。
所述第一网络设备通过通告消息通告的处理能力包括所述第一网络设备对接收的业务报文中携带的备用指示信息进行忽略的处理能力。例如,在主用路径未发生故障时,所述第一网络设备在接收到该业务报文时,能够对该业务报文中携带的主用路径信息进行匹配,并在匹配成功后忽略所述业务报文中包括的备用路径信息。该主用路径信息可以理解为报文中包括的能够用于指示主用路径的一个或多个字段。以图1a示出的场景为例,在SRv6网络中,PE 21发送的VPN业务的报文中可以携带包括IPv6头和SRH扩展头的报文头,则主用路径信息可以包括SRH扩展头中除备用SID B3::1外的其他全部SID,还可以包括IPv6头中DA字段包括的SID,其中,该DA字段包括的SID在转发过程中是可以动态变化的。在一些可能的应用场景中,该主用路径信息也可以认为是指与该备用SID(如B3::1)形成主备保护的、对应的主用SID(如B2::1),只要该主用SID作为主用路径信息能够足够充分地执行本发明实施例描述的基于主用路径信息需完成的各种可能的功能即可。
该备用路径信息可以理解为用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。在所述第一网络设备作为主用节点发生故障时,例如参见前述场景1的描述,或者与所述第一网络设备连接的可提供服务的设备发生故障时,例如参见前述场景2的描述,所述主用路径不可用。而如果未出现上述两种可能的故障类型或其他可能导致主用路径不可用的故障场景,如用于连接主用节点的链路发生故障,位于该主用路径上的该第一网络设备在接收到该业务报文时,需要对该业务报文中包括的备用路径信息进行特殊处理,以避免该备用路径信息影响报文的正常转发。在一种可能的实现中,所述第一网络设备对备用路径信息的忽略方式可以是去除,该去除可以是诸如图1a所示SRv6网络场景中由剥离整个报文头而实现的去除,在该场景中,所述第一网络设备作为连接用户侧设备的尾节点,在匹配到VPN SID B2::1后可以将VPN业务的报文的报文头整个剥离,然后利用报文载荷部分携带的VPN信息完成后续由该第一网络设备向用户侧设备的转发。这种剥离方式会导致报文头中包括的主用路径信息和备用路径信息被一并去除。而在SR-MPLS网络中,由于报文头中已使用过(例如已完成匹配)的SID将在SID列表中被弹出,因而在SR-MPLS网络中,无论所述第一网络设备的角色是中间节点还是尾节点,均可以在匹配到主用路径信息,如与所述第一网络设备关联的主用SID后,根据本地预设规则或报文中携带的指示信息确定需对位于所述主用SID后的一个或多个备用SID进行弹出操作,所述弹出操作导致所述一个或多个备用SID被去除。在另一种可能的实现中,所述第一网络设备对备用路径信息的忽略方式可以是跳过,所述跳过可以具体为不读取该备用路径信息而直接跳过,或者虽读取该备用路径信息但并不使用该备用路径信息指导转发而忽略式跳过。例如图2所示的SRv6网络场景中,中间节点PE 22在匹配到作为主用路径信息的主用SID S2::1后,需跳过标签栈中位于S2::1下一个的备用SID S3::1,也即不使用S3::1指导报文向备用防火墙52的转发,以避免报文转发错误。对该备用路径信息的忽略也可以根据需要设计为其他方式,如允许为该备用路径信息打上标记,以通过该标记标识该备用路径信息不会被使用。
由此可见,作为忽略处理的具体情形,可以是第一网络设备忽略该备用路径信息而不用于指导报文转发,也可以是忽略该备用路径信息而能够正常地处理报文,如允许在包括该备用路径信息的情况下剥离该报文的报文头。实现忽略的具体操作方式可以有多种,可结合具体的应用场景确定。此外,执行忽略并不意味着第一网络设备一定不对该备用路径信息执行 任何操作,例如,在一些可能的应用场景或设计方式中,第一网络设备可以先读取该备用路径信息,而后再跳过式忽略该备用路径信息。
虽然在图1a、图1b和图2的示意中,作为备用路径信息的备用SID的个数均为一个,但在其他可能的应用场景中,该备用路径信息包括的备用SID的个数也可以为多个,该多个备用SID可以用于分别指示多条在主用路径故障时可使用的备用路径,也可以是该多个备用SID中的多个或全部用于共同指示一条备用路径。当该多个备用SID分别指示多条备用路径时,可以根据该多个备用SID在SID列表中的排布顺序,确定多个备用路径的使用顺序。
S603所述第一网络设备向第二网络设备发送所述通告消息。
在一种可能的情形中,所述第一网络设备可以直接向第二网络设备发送所述通告消息,如转发节点角色的所述第一网络设备通过BGP-LS消息,向控制器或路径编排器角色的所述第二网络设备发送所述通告消息,例如参见方法500中S503的描述。在另一种可能的情形中,所述第一网络设备通过间接的方式向第二网络设备发送所述通告消息,例如尾节点角色的所述第一网络设备通过通告私网路由的BGP消息逐跳向头节点角色的所述第二网络设备扩散并通告所述BGP消息,例如参见方法400中S403的描述。在该情形中,该头节点角色的第二网络设备例如可以是图1a或1b示出的PE 21,也可以是图1b示出的同时作为域边界节点和隧道B的头节点的PE 24,也即PE 24即可以作为隧道A的尾节点以诸如修改VPN路由的下一跳的方式向隧道A的头节点PE 21通告处理能力,也可以作为隧道B的头节点接收隧道B的尾节点PE 27通告的处理能力(图1b中未示出PE 27的备用节点)。该头节点角色的第二网络设备还可以是图1b示出的PE 25,例如,尾节点PE 27及与PE 27构成双归节点的另一PE节点可以也向PE 25发送通告消息,如此在PE 24故障场景下,报文将转发至备用节点PE 25,而PE 25则可以根据在先接收的通告消息实现尾节点保护方式的报文转发。
S605所述第二网络设备接收所述通告消息,并根据所述通告消息中的所述指示信息确定所述第一网络设备具有所述处理能力。
所述第二网络设备接收所述通告消息后,可以通过所述通告消息中的指示信息确定所述第一网络设备是否具有在报文中包括的主用路径信息匹配时,忽略报文中包括的备用路径信息的处理能力。根据所述通告消息实现的不同形式或所述指示信息在所述通告消息中的不同实现方式,所述第二网络设备可以采用不同的方式确定所述第一网络设备的处理能力。例如,当所述通告消息为用于通告路由的BGP消息时,可以参见方法400中S405的描述。再例如,当所述通告消息为BGP-LS消息时,可以参见方法500中S505的描述。
在所述第二网络设备确定所述第一网络设备具有处理能力时,可以结合所述第二网络设备承担的不同角色执行不同的后续操作。在一种可能的情形中,当所述第二网络设备为图1a或图1b示出的头节点PE 21时,可以在需发送的业务的第一报文中添加第一主用路径信息和第一备用路径信息。或者,当所述第二网络设备为图1b示出的域边界节点PE 24时,可以在对接收的所述第一报文中与隧道A关联的备用路径信息进行忽略处理后,在继续转发该第一报文前添加与隧道B关联的第一主用路径信息和第一备用路径信息,以用于指导该第一报文在隧道B中采用尾节点保护方式的转发。例如可参见方法400中S405的描述。在另一种可能的情形中,当所述第二网络设备为图2示出的业务编排器41时,可以根据PE 22具有处理能力,确定与PE 22关联的主用SID S2::1和备用SID S3::1。然后将S2::1和S3::1下发给转发第一报文的头节点PE 21。PE 21将S2::1和S3::1编排入用于指导第一报文转发的SID列 表中,以生成该第一报文包括的第一主用路径信息和第一备用路径信息,从而指导该第一报文按照可实现业务保护的方式转发。在该情形中,业务编排器41也可以直接确定包括S2::1和S3::1的完整主备路径信息并发送给头节点。例如可参见方法500中S505和S507的描述。上述两种情形在一些场景中也可以配合使用,例如,头节点将用于实现业务保护的服务类型的主备SID,以及将用于实现尾节点保护的主备VPN SID均添加入第一报文中。
S607所述第一网络设备接收所述第一报文,所述第一报文包括第一主用路径信息和第一备用路径信息。
根据S606的描述,所述第一网络设备接收的所述第一报文中的第一主用路径信息和第一备用路径信息,可以是所述第一网络设备向其通告处理能力的所述第二网络设备生成的,也可以是其他网络设备,如头节点,根据所述第一网络设备向其通告处理能力的所述第二网络设备发送的局部主备用路径信息后拼接生成的,或根据所述第一网络设备向其通告处理能力的所述第二网络设备发送的完整主备用路径信息后添加在所述第一报文中的。
以SRv6网络中的实现为例,所述第一网络设备的上一跳节点可以在第一报文的IPv6头的DA字段添加与所述第一网络设备关联的SID,然后将该第一报文转发至该第一网络设备。
S609所述第一网络设备忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文。
仍以SRv6网络为例,在主用路径未发生故障时,所述第一网络设备能够匹配主用路径信息包括的与所述第一网络设备关联的SID,此时可以忽略所述第一报文中包括的所述第一备用路径信息。所述忽略可以是去除或跳过,例如可以参见方法400中S407的描述,或者参见方法500中S509的描述。
所述第一网络设备除了忽略所述第一备用路径信息,还可以根据所述第一主用路径信息转发所述第一报文。例如,在SRv6网络中所述第一网络设备根据位于一个或多个备用SID之后的、属于第一主用路径信息中的SID指导所述第一报文的后续转发,其中,该一个或多个备用SID即组成该备用路径信息。
本方法中的第一网络设备能够发送携带指示信息的通告消息,该指示信息能够指示该第一网络设备是否具有作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,以使得接收该通告消息的第二网络设备能够在确定该第一网络设备具有所述处理能力时,向该第一网络设备发送,或指示其他网络设备向该第一网络设备发送包括主用路径信息和备用路径信息的业务报文,以使得该第一网络设备在主用路径可正常使用时,能够忽略该业务报文中无需使用的该备用路径信息,以在保证网络运行健壮性的同时,避免因该备用路径信息未被恰当处理而导致的丢包或错误转发问题。
以上结合附图详细描述了本申请实施例提供的用于通告网络设备处理能力的方法,可以理解的是,用于执行该方法的网络设备为了实现上述各方法所描述的功能,需包含执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的方法的执行过程,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方式来实现所描述的功能,但是这种实现不应认为超 出本申请的范围。
本实施例可以根据上述方法实施例对相应的设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。需要说明的是,本实施例中对模块的划分是示意性的,具体作为一种逻辑功能可能的划分方式,实际实现时可以有另外的划分方式。
当采用功能模块划分方式时,下面将结合图7和图8描述本申请实施例提供的用于通告网络设备处理能力的装置。
图7为本申请实施例提供的一种用于通告网络设备处理能力的装置700的框图,该装置700例如可以是图1a示出的系统中的PE 24或PE 25,或者可以是图1b示出的系统中的PE 24、PE 25或PE 27,或者可以是图4的方法中描述的尾节点,或者可以是图5的方法中描述的转发节点,或者可以是图6的方法中描述的第一网络设备,或者上述提及的任一网络设备中的模块或部件,并可以实现上述提及的任一网络设备中在方法400、500或600中执行的相应功能。
在一种可能的实现方式中,如图7所示,该用于通告网络设备处理能力的装置700可以包括:生成单元701和发送单元703。
生成单元701,用于生成通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。生成单元701可执行的功能可参见S401、S501或S601中的相关描述。
发送单元703,用于向第二网络设备发送所述通告消息。发送单元703可执行的功能可参见S403、S503或S603中的相关描述。
在一种可能的实现方式中,装置700还包括接收单元705和转发单元707,其中,接收单元705用于接收第一报文,所述第一报文包括第一主用路径信息和第一备用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径;转发单元707用于忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文。接收单元705可执行的功能可参见S407、S509和S607中的相关描述,转发单元707可执行的功能可参见S609中的相关描述。
在一种可能的实现方式中,接收单元705还用于接收更新前的所述BGP消息,所述更新前的BGP消息包括所述VPN路由的第二VPN SID标签字段;生成单元701还用于将所述第二VPN SID标签字段替换为所述第一VPN SID标签字段,以更新生成所述BGP消息。
可选地,所述第二VPN SID标签字段包括用于指示第三网络设备的处理能力的第二指示信息,所述第三网络设备的处理能力包括所述第三网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,其中,所述第三网络设备为所述更新前的BGP消息中携带的下一跳信息中所指示的网络设备。
在一种可能的实现方式中,所述第一指示信息携带于所述BGP消息的扩展团体属性中。 接收单元705还用于接收更新前的所述BGP消息,所述更新前的BGP消息包括下一跳属性,其中,所述扩展团体属性中的所述第一指示信息和所述下一跳属性均包括第一下一跳信息,所述第一下一跳信息用于指示第三网络设备;生成单元701还用于将所述下一跳属性中的所述第一下一跳信息修改为第二下一跳信息,所述第二下一跳信息用于指示所述第一网络设备。
可选地,生成单元701还用于将所述扩展团体属性中的所述第一下一跳信息修改为所述第二下一跳信息。
可选地,所述第一指示信息用于指示所述第一网络设备的处理能力,包括:所述第一指示信息和所述下一跳属性用于指示所述第一网络设备的处理能力。
在一种可能的实现方式中,所述第一备用路径信息包括一个或多个备用SID,所述第一主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,转发单元707还用于根据所述主用SID与所述第一网络设备存储的SID匹配,去除所述一个或多个备用SID;根据所述第一报文携带的载荷信息向用户侧的网络设备转发所述第一报文,或者,根据去除所述一个或多个备用SID后再添加的SID转发所述第一报文。
在一种可能的实现方式中,所述第一备用路径信息包括一个或多个备用SID,所述第一主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,转发单元707还用于根据所述主用SID与所述第一网络设备存储的SID匹配,跳过所述一个或多个备用SID,根据位于所述一个或多个备用SID之后的SID转发所述第一报文。
图8为本申请实施例提供的另一种用于通告网络设备处理能力的装置800的框图,该装置800例如可以是图1a示出的系统中的PE 21,或者可以是图1b示出的系统中的PE 21、PE 24或PE 25,或者可以是图4的方法中描述的头节点,或者可以是图5的方法中描述的控制器,或者可以是图6的方法中描述的第二网络设备,或者上述提及的任一网络设备中的模块或部件,并可以实现上述提及的任一网络设备中在方法400、500或600中执行的相应功能。
在一种可能的实现方式中,如图8所示,该用于通告网络设备处理能力的装置800可以包括:接收单元801和确定单元803。其中,接收单元801可以用于接收第一网络设备发送的通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径为所述主用路径不可用时用于转发所述报文的一个或多个备用路径。确定单元803可以用于根据所述第一指示信息确定所述第一网络设备具有所述处理能力;或者,根据所述第一指示信息确定所述第一网络设备不具有所述处理能力。
在一种可能的实现方式中,装置800还可以包括发送单元805,用于根据所述第一网络设备具有所述处理能力发送第一报文,所述第一报文携带第一备用路径信息和第一主用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径。或者,发送单元805根据所述第一网络设备具有所述处理能力向第三网络设备发送第一消息,所述第一消息用于指示所述第三网络设备根据所述第一消息获取第一报文携带的第一备用路径信息和第一主用路径信息,所述第一报文为所述第三网络设备向所述第一网络设备发送的报文。
在一种可能的实现方式中,确定单元803用于根据所述第一网络设备发送的通告消息中携带了所述第一指示信息,确定所述第一网络设备具有所述处理能力。
在一种可能的实现方式中,根据所述第一网络设备发送的通告消息中携带的所述第一指示信息为第一值,确定所述第一网络设备具有所述处理能力。
可选地,所述第一指示信息携带于所述BGP消息的VPN路由中,确定单元803用于根据所述VPN路由中包括所述第一指示信息,确定所述第一网络设备具有所述处理能力。
可选地,所述第一指示信息携带于所述BGP消息的扩展团体属性中。
可选地,所述BGP消息还包括下一跳属性,所述下一跳属性携带用于指示所述第一网络设备的下一跳信息,确定单元803用于根据所述第一指示信息和所述下一跳属性中携带的下一跳信息相同,确定所述第一网络设备具有所述处理能力;或者,根据所述第一指示信息确定所述第一网络设备不具有所述处理能力,包括:根据所述第一指示信息和所述下一跳属性中携带的下一跳信息不同,确定所述第一网络设备不具有所述处理能力。
在一种可能的实现方式中,接收单元801,还用于接收第三网络设备发送的通告消息,所述第四网络设备发送的通告消息包括第二指示信息,所述第二指示信息用于指示所述第四网络设备的处理能力,所述第四网络设备的处理能力包括所述第三网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。
在一种可能的实现方式中,所述第一网络设备发送的通告消息还包括第一路径信息,所述第三网络设备发送的通告消息还包括第二路径信息,在向所述第一网络设备发送第一报文或第一消息之前,确定单元803用于根据所述第一网络设备发送的通告消息和所述第四网络设备发送的通告消息,确定所述第一网络设备为主用设备以及所述第四网络设备为备用设备。装置800还包括生成单元807,还用于添加所述第一路径信息和所述第二路径信息以生成所述第一报文,其中,所述第一路径信息属于第一主用路径信息,所述第二路径信息属于第一备用路径信息。或者,发送单元805用于将包括所述第一路径信息和所述第二路径信息的所述第一消息发送至所述第三网络设备,以指示所述第三网络设备在所述第一报文中携带所述第一路径信息和所述第二路径信息,其中,所述第一路径信息属于第一主用路径信息,所述第二路径信息属于第一备用路径信息。
在一种可能的实现方式中,确定单元803还用于根据所述第一指示信息确定所述第一网络设备不具有所述处理能力;发送单元805还用于根据所述第一网络设备不具有所述处理能力发送第二报文,所述第二报文携带第二主用路径信息,但不携带第二备用路径信息,其中,所述第二主用路径信息用于指示转发所述第二报文的第二主用路径,所述第二备用路径信息用于指示所述第二主用路径不可用时用于转发所述第二报文的一个或多个第二备用路径。
本申请实施例还提供了一种网络设备900。网络设备900例如可以是前述各方法实施例中所描述的可用于执行不同功能的网络设备,如图1a、图1b或是图2示出的系统10中的任一PE设备,或者可以是图7示出的装置700或图8示出的装置800。
网络设备900包括分别为了实现前述各方法实施例中的网络设备所执行的各方法步骤所需的各种硬件或软件模块,关于网络设备900可执行功能的详细流程,具体细节可参见前述 各方法实施例,为了简洁,在此不再赘述。上述各方法实施例中提及的各执行过程可通过网络设备900处理器中的硬件的集成逻辑电路或者软件形式的指令完成,例如,可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等存储介质中。该存储介质位于存储器,处理器可以读取存储器中的信息,结合其硬件完成上述方法的步骤。
网络设备900如对应于图7示出的装置700,或图8示出的装置800,则装置700或装置800中的每个功能模块可以采用网络设备900的软件、硬件或软硬件的结合实现。其中,对于装置700或装置800中以软件形式实现的功能模块所执行的功能,可以为网络设备900的处理器读取存储器中存储的程序代码后使网络设备900执行的。
图9是本申请实施例提供的一种示例性的网络设备900的结构示意图。网络设备900包括至少一个处理器901、通信总线902、存储器903以及至少一个物理接口909。
处理器901可以是一个通用中央处理器(central processing unit,CPU)、网络处理器(network processor,NP)、微处理器或者可以是一个或多个用于实现本申请方案的集成电路,例如,专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
通信总线902用于在上述组件之间传送信息。通信总线902可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器903可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,也可以是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器903可以是独立存在,并通过通信总线902与处理器901相连接。存储器903也可以和处理器901集成在一起。
物理接口909使用任何收发器一类的装置,用于与其它设备或通信网络通信。物理接口909包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线通信接口可以为无线局域网(wireless local area networks,WLAN)接口,蜂窝网络通信接口或其组合等。物理接口909也称物理口。物理接口909的个数可以为一个或多个。
在具体实现中,作为一种实施例,处理器901可以包括一个或多个CPU,如图9中所示的CPU0和CPU1。
在具体实现中,作为一种实施例,网络设备900可以包括多个处理器,如图9中所示的处理器901和处理器905。这些处理器中的每一个可以是一个单核处理器(single-CPU),也 可以是一个多核处理器(multi-CPU)。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,网络设备900还可以包括输出设备906和输入设备907。输出设备906和处理器901通信,可以以多种方式来显示信息。例如,输出设备906可以是液晶显示器(liquid crystal display,LCD)、发光二级管(light emitting diode,LED)显示设备、阴极射线管(cathode ray tube,CRT)显示设备或投影仪(projector)等。输入设备907和处理器901通信,可以以多种方式接收用户的输入。例如,输入设备907可以是鼠标、键盘、触摸屏设备或传感设备等。
在一些实施例中,存储器903用于存储执行本申请方案的程序代码910,处理器901可以执行存储器903中存储的程序代码910以实现相应的功能。例如,程序代码910中存储的程序可以被调用以实现装置700中生成单元701的功能,或者可以被调用以实现装置800中确定单元803和生成单元809的功能。也即是,网络设备900可以通过处理器901以及存储器903中的程序代码910,来配合实现前述各方法实施例提供的方法流程。在此情形下,示例性地,生成单元701、确定单元803等可以相当于网络设备900中的处理器901,发送单元703或接收单元705相当于网络设备900中的物理接口909。
图9作为网络设备组成结构的一种可能示例。网络设备也可以采用其他组成结构,例如,至少包括处理器,而用于存储程序代码的存储器可以独立于网络设备。例如,存储器可以是云服务器上的存储空间或网络硬盘等。此外,存储器可以为一个或多个。当存储器的个数为多个时,可以位于相同的或不同的位置,并且可以独立或配合使用。
图10是本申请实施例提供的另一种网络设备的结构示意图。网络设备1000例如可以是前述各方法实施例中所描述的可用于执行不同功能的网络设备,如图1a、图1b或是图2示出的系统10中的任一PE设备,或者可以是图7示出的装置700或图8示出的装置800。
网络设备1000包括:主控板1010和接口板1030。
主控板1010也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板1010对网络设备1000中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板1010包括:中央处理器1011和存储器1012。
接口板1030也称为线路接口单元卡(line processing unit,LPU)、线卡(line card)或业务板。接口板1030用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(Packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(Flexible Ethernet Clients,FlexE Clients)。接口板1030包括:中央处理器1031、网络处理器1032、转发表项存储器1034和物理接口卡(ph10sical interface card,PIC)1033。
接口板1030上的中央处理器1031用于对接口板1030进行控制管理并与主控板1010上的中央处理器1011进行通信。
网络处理器1032用于实现报文的转发处理。网络处理器1032的形态可以是转发芯片。具体而言,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。
物理接口卡1033用于实现物理层的对接功能,原始的流量由此进入接口板1030,以及处理后的报文从该物理接口卡1033发出。物理接口卡1033包括至少一个物理接口,物理接 口也称物理口。物理接口卡1033也称为子卡,可安装在接口板1030上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器1032处理。在一些实施例中,接口板1003的中央处理器1031也可执行网络处理器1032的功能,比如基于通用CPU实现软件转发,从而物理接口卡1033中不需要网络处理器1032。
可选地,网络设备1000包括多个接口板,例如网络设备1000还包括接口板1040,接口板1040包括:中央处理器1041、网络处理器1042、转发表项存储器1044和物理接口卡1043。
可选地,网络设备1000还包括交换网板1020。交换网板1020也可以称为交换网板单元(switch fabric unit,SFU)。在网络设备有多个接口板1030的情况下,交换网板1020用于完成各接口板之间的数据交换。例如,接口板1030和接口板1040之间可以通过交换网板1020通信。
主控板1010和接口板1030耦合。例如。主控板1010、接口板1030和接口板1040,以及交换网板1020之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板1010和接口板1030之间建立进程间通信协议(inter-process communication,IPC)通道,主控板1010和接口板1030之间通过IPC通道进行通信。
在逻辑上,网络设备1000包括控制面和转发面,控制面包括主控板1010和中央处理器1031,转发面包括执行转发的各个组件,比如转发表项存储器1034、物理接口卡1033和网络处理器1032。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器1032基于控制面下发的转发表对物理接口卡1033收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器1034中。在有些实施例中,控制面和转发面可以完全分离,不在同一设备上。
作为用于执行前述各方法实施例中描述的网络设备1000,中央处理器1011可以用于执行例如生成通告消息,或根据所述通告消息中携带的指示信息确定发送所述通告消息的网络设备的处理能力等的操作。网络处理器1032可以触发物理接口卡1033向其他网络设备转发流量报文。
示例性地,以装置700为例,装置700中的发送单元703或接收单元705可以相当于网络设备1000中的物理接口卡1033或物理接口卡1043;装置700中的生成单元701可以相当于网络设备1000中的中央处理器1011或中央处理器1031。
应理解,本申请实施例中接口板1040上的操作与接口板1030的操作一致,为了简洁,不再赘述。该网络设备1000中的主控板1010、接口板1030和/或接口板1040可以实现上述各个方法实施例中的网络设备所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
应理解,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地, 网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。
在一些可能的实施例中,上述网络设备可以实现为虚拟化设备。例如,虚拟化设备可以是运行有用于发送报文功能的程序的虚拟机(virtual machine,VM),虚拟机部署在硬件设备上(例如,物理服务器)。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。可以将虚拟机配置为网络设备。例如,可以基于通用的物理服务器结合网络功能虚拟化(network functions virtualization,NFV)技术来实现网络设备。网络设备为虚拟主机、虚拟路由器或虚拟交换机。本领域技术人员通过阅读本申请即可结合NFV技术在通用物理服务器上虚拟出具有上述功能的网络设备,此处不再赘述。
应理解,上述各种产品形态的网络设备,分别具有上述方法实施例中描述的网络设备的任意功能,此处不再赘述。
本申请实施例提供了一种计算机程序产品,当该计算机程序产品在网络设备上运行时,使得网络设备执行上述任一方法实施例提供的方法。
本申请实施例还提供了一种芯片系统,包括处理器和接口电路,接口电路,用于接收指令并传输至处理器;处理器,可以用于执行上述指令,以使得网络设备执行本申请实施例提供的方法。其中,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是现场可编程门阵列(field programmable gate array,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是CPU,还可以是NP,还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (37)

  1. 一种通告网络设备处理能力的方法,其特征在于,所述方法由第一网络设备执行,所述方法包括:
    生成通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径;
    所述第一网络设备向第二网络设备发送所述通告消息。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    接收第一报文,所述第一报文包括第一主用路径信息和第一备用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径;
    忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文。
  3. 根据权利要求1所述的方法,其特征在于,所述通告消息为边界网关协议BGP消息或内部网关协议IGP消息。
  4. 根据权利要求3所述的方法,其特征在于,所述第一指示信息携带于所述BGP消息包括的私网路由或公网路由中,所述私网路由或公网路由为用于转发所述报文所属业务的路由。
  5. 根据权利要求4所述的方法,其特征在于,所述第一网络设备为承载所述业务的出口网络设备,所述私网路由为虚拟专用网络VPN路由,所述第一指示信息携带于所述VPN路由的第一虚拟专用网段标识VPNSID标签字段中。
  6. 根据权利要求5所述的方法,其特征在于,所述生成BGP消息包括:
    接收更新前的所述BGP消息,所述更新前的BGP消息包括所述VPN路由的第二VPN SID标签字段;
    将所述第二VPN SID标签字段替换为所述第一VPN SID标签字段,以更新生成所述BGP消息。
  7. 根据权利要求6所述的方法,其特征在于,所述第二VPN SID标签字段包括用于指示第三网络设备的处理能力的第二指示信息,所述第三网络设备的处理能力包括所述第三网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述备用路径信息的处理能力,其中,所述第三网络设备为所述更新前的BGP消息中携带的下一跳信息中所指示的网络设备。
  8. 根据权利要求3所述的方法,其特征在于,所述第一指示信息携带于所述BGP消息的扩展团体属性中。
  9. 根据权利要求8所述的方法,其特征在于,所述方法包括:
    在所述生成BGP消息之前接收更新前的所述BGP消息,所述更新前的BGP消息包括下一跳属性,其中,所述扩展团体属性中的所述第一指示信息和所述下一跳属性均包括第一下一跳信息,所述第一下一跳信息用于指示第三网络设备;
    所述生成BGP消息包括:将所述下一跳属性中的所述第一下一跳信息修改为第二下一跳信息,以更新生成所述BGP消息,其中,所述第二下一跳信息用于指示所述第一网络设备。
  10. 根据权利要求9所述的方法,其特征在于,所述更新生成BGP消息还包括:
    将所述扩展团体属性中的所述第一下一跳信息修改为所述第二下一跳信息。
  11. 根据权利要求9或10所述的方法,其特征在于,所述第一指示信息用于指示所述第一网络设备的处理能力,包括:
    所述第一指示信息和所述下一跳属性用于指示所述第一网络设备的处理能力。
  12. 根据权利要求5-11所述的方法,其特征在于,所述BGP消息包括的私网路由或公网路由中携带段标识SID,所述SID用于所述第一网络设备接收的报文所携带的备用路径信息中。
  13. 根据权利要求1-12任一项所述的方法,其特征在于,所述备用路径信息包括一个或多个备用SID,所述一个或多个备用SID为与所述第一网络设备构成多归关系的一个或多个网络设备分配的SID。
  14. 根据权利要求2所述的方法,其特征在于,所述第一备用路径信息包括一个或多个备用SID,所述第一主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,所述忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文,包括:
    根据所述主用SID与所述第一网络设备存储的SID匹配,去除所述一个或多个备用SID;
    根据所述第一报文携带的载荷信息向用户侧的网络设备转发所述第一报文,或者,根据去除所述一个或多个备用SID后再添加的SID转发所述第一报文。
  15. 根据权利要求2所述的方法,其特征在于,所述第一备用路径信息包括一个或多个备用SID,所述第一主用路径信息包括主用SID,所述主用SID与所述第一网络设备关联,所述忽略所述第一备用路径信息,并根据所述第一主用路径信息转发所述第一报文,包括:
    根据所述主用SID与所述第一网络设备存储的SID匹配,跳过所述一个或多个备用SID,根据位于所述一个或多个备用SID之后的SID转发所述第一报文。
  16. 根据权利要求3所述的方法,其特征在于,所述第一网络设备为承载业务的中间网络设备或出口网络设备,所述第一指示信息携带于所述IGP消息或用于通告链路状态的所述BGP消息中。
  17. 根据权利要求1-16任一项所述的方法,其特征在于,所述第二网络设备为控制器或承载所述业务的入口网络设备。
  18. 一种通告网络设备处理能力的方法,其特征在于,所述方法由第二网络设备执行,所述方法包括:
    接收第一网络设备发送的通告消息,所述通告消息包括第一指示信息,所述第一指示信息用于指示所述第一网络设备的处理能力,所述第一网络设备的处理能力包括所述第一网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的所述报文时,忽略所述报文中包括的备用路径信息的处理能力,所述备用路径为所述主用路径不可用时用于转发所述报文的一个或多个备用路径;
    根据所述第一指示信息确定所述第一网络设备具有所述处理能力;或者,根据所述第一指示信息确定所述第一网络设备不具有所述处理能力。
  19. 根据权利要求18所述的方法,其特征在于,所述方法还包括:
    根据所述第一网络设备具有所述处理能力发送第一报文,所述第一报文携带第一备用路径信息和第一主用路径信息,其中,所述第一主用路径信息用于指示转发所述第一报文的第一主用路径,所述第一备用路径信息用于指示所述第一主用路径不可用时用于转发所述第一报文的一个或多个第一备用路径;或者,
    根据所述第一网络设备具有所述处理能力向第三网络设备发送第一消息,所述第一消息用于指示所述第三网络设备根据所述第一消息获取第一报文携带的第一备用路径信息和第一主用路径信息,所述第一报文为所述第三网络设备向所述第一网络设备发送的报文。
  20. 根据权利要求18或19所述的方法,其特征在于,所述根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:
    根据所述第一网络设备发送的通告消息中携带了所述第一指示信息,确定所述第一网络设备具有所述处理能力。
  21. 根据权利要求20所述的方法,其特征在于,所述根据所述第一网络设备发送的通告消息中携带了所述第一指示信息,确定所述第一网络设备具有所述处理能力,包括:
    根据所述第一网络设备发送的通告消息中携带的所述第一指示信息为第一值,确定所述第一网络设备具有所述处理能力。
  22. 根据权利要求18-21任一项所述的方法,其特征在于,所述第一网络设备发送的通告消息为边界网关协议BGP消息或内部网关协议IGP消息。
  23. 根据权利要求22所述的方法,其特征在于,所述第一指示信息携带于所述BGP消息包括的私网路由或公网路由中,所述私网路由或公网路由为用于转发所述报文所属业务的路由。
  24. 根据权利要求22所述的方法,其特征在于,所述第一指示信息携带于所述BGP消息的虚拟专用网VPN路由中,所述根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:
    根据所述VPN路由中包括所述第一指示信息,确定所述第一网络设备具有所述处理能力。
  25. 根据权利要求22所述的方法,其特征在于,所述第一指示信息携带于所述BGP消息的扩展团体属性中。
  26. 根据权利要求25所述的方法,其特征在于,所述BGP消息还包括下一跳属性,所述下一跳属性携带用于指示所述第一网络设备的下一跳信息,
    所述根据所述第一指示信息确定所述第一网络设备具有所述处理能力,包括:根据所述第一指示信息和所述下一跳属性中携带的下一跳信息相同,确定所述第一网络设备具有所述处理能力;或者,
    所述根据所述第一指示信息确定所述第一网络设备不具有所述处理能力,包括:根据所述第一指示信息和所述下一跳属性中携带的下一跳信息不同,确定所述第一网络设备不具有所述处理能力。
  27. 根据权利要求19-26任一项所述的方法,其特征在于,在所述发送第一报文或第一消息之前,所述方法还包括:
    接收第四网络设备发送的通告消息,所述第四网络设备发送的通告消息包括第二指示信息,所述第二指示信息用于指示所述第四网络设备的处理能力,所述第四网络设备的处理能 力包括所述第四网络设备作为转发报文的主用路径上的网络设备,在接收到包括主用路径信息和备用路径信息的报文时,忽略所述报文中包括的备用路径信息的处理能力,所述备用路径信息用于指示所述主用路径不可用时用于转发所述报文的一个或多个备用路径。
  28. 根据权利要求27所述的方法,其特征在于,所述第一网络设备发送的通告消息还包括第一路径信息,所述第四网络设备发送的通告消息还包括第二路径信息,在向所述第一网络设备发送第一报文或第一消息之前,所述方法还包括:
    根据所述第一网络设备发送的通告消息和所述第四网络设备发送的通告消息,确定所述第一网络设备为主用设备以及所述第四网络设备为备用设备;
    添加所述第一路径信息和所述第二路径信息以生成所述第一报文,或者,将包括所述第一路径信息和所述第二路径信息的所述第一消息发送至所述第三网络设备,以指示所述第三网络设备在所述第一报文中携带所述第一路径信息和所述第二路径信息,其中,所述第一路径信息属于第一主用路径信息,所述第二路径信息属于第一备用路径信息。
  29. 根据权利要求28所述的方法,其特征在于,所述第一路径信息包括所述第一网络设备分配的第一虚拟专用网段标识VPN SID标签,所述第二路径信息包括所述第四网络设备分配的第二VPN SID标签。
  30. 根据权利要求18所述的方法,其特征在于,所述方法还包括:
    根据所述第一网络设备不具有所述处理能力发送第二报文,所述第二报文携带第二主用路径信息,但不携带第二备用路径信息,其中,所述第二主用路径信息用于指示转发所述第二报文的第二主用路径,所述第二备用路径信息用于指示所述第二主用路径不可用时用于转发所述第二报文的一个或多个第二备用路径。
  31. 根据权利要求18-30任一项所述的方法,其特征在于,所述第一网络设备为隧道的出口网络设备或所述隧道的中间网络设备,所述第二网络设备为控制器或所述隧道的入口网络设备。
  32. 根据权利要求27-29所述的方法,其特征在于,所述第一网络设备为所述第一网络设备和所述第二网络设备之间的第一隧道的出口网络设备,所述第四网络设备为所述第四网络设备和所述第二网络设备之间的第二隧道的出口网络设备,所述第二网络设备为所述第一隧道和所述第二隧道的入口网络设备。
  33. 根据权利要求32所述的方法,其特征在于,所述第一隧道和所述第二隧道为基于互联网协议第6版的段路由的SRv6隧道或基于多协议标签交换的分段路由SR-MPLS隧道中的任意一种。
  34. 一种第一网络设备,其特征在于,所述第一网络设备包括处理器和存储器,所述存储器中存储有程序代码,所述程序代码由所述处理器加载并执行,以使得所述第一网络设备实现如权利要求1-17任一项所述的通告网络设备处理能力的方法。
  35. 一种第二网络设备,其特征在于,所述第二网络设备包括处理器和存储器,所述存储器中存储有程序代码,所述程序代码由所述处理器加载并执行,以使得所述第二网络设备实现如权利要求18-33任一项所述的通告网络设备处理能力的方法。
  36. 一种通告网络设备处理能力的系统,所述系统包括如权利要求34所述的第一网络设 备和如权利要求35所述的第二网络设备。
  37. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序代码,当其在计算机上运行时,使得所述计算机执行如权利要求1-33任一项所述的通告网络设备处理能力的方法。
PCT/CN2021/132270 2020-11-23 2021-11-23 一种通告网络设备处理能力的方法、设备和系统 WO2022105927A1 (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
MX2023006018A MX2023006018A (es) 2020-11-23 2021-11-23 Método para la capacidad de procesamiento de publicidad del dispositivo de red, dispositivo y sistema.
EP21894074.0A EP4236209A4 (en) 2020-11-23 2021-11-23 METHOD, DEVICE AND SYSTEM FOR REPORTING THE PROCESSING CAPABILITY OF A NETWORK DEVICE
CA3199722A CA3199722A1 (en) 2020-11-23 2021-11-23 Method for advertising processing capability of network device, device, and system
JP2023530852A JP2023550488A (ja) 2020-11-23 2021-11-23 ネットワークデバイスの処理能力をアドバタイズするための方法、デバイス、およびシステム
US18/320,536 US20230300065A1 (en) 2020-11-23 2023-05-19 Method for advertising processing capability of network device, device, and system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202011323142.3 2020-11-23
CN202011323142 2020-11-23
CN202011638007.8 2020-12-31
CN202011638007.8A CN114531395B (zh) 2020-11-23 2020-12-31 一种通告网络设备处理能力的方法、设备和系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/320,536 Continuation US20230300065A1 (en) 2020-11-23 2023-05-19 Method for advertising processing capability of network device, device, and system

Publications (1)

Publication Number Publication Date
WO2022105927A1 true WO2022105927A1 (zh) 2022-05-27

Family

ID=81618898

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/132270 WO2022105927A1 (zh) 2020-11-23 2021-11-23 一种通告网络设备处理能力的方法、设备和系统

Country Status (7)

Country Link
US (1) US20230300065A1 (zh)
EP (1) EP4236209A4 (zh)
JP (1) JP2023550488A (zh)
CN (2) CN114531395B (zh)
CA (1) CA3199722A1 (zh)
MX (1) MX2023006018A (zh)
WO (1) WO2022105927A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114697263A (zh) * 2020-12-15 2022-07-01 中兴通讯股份有限公司 信息处理方法、节点及计算机可读存储介质
CN114978978A (zh) * 2022-06-07 2022-08-30 中国电信股份有限公司 一种算力资源调度方法、装置、电子设备及介质
CN117395194A (zh) * 2022-07-05 2024-01-12 中兴通讯股份有限公司 路由信息的处理方法、系统、网络设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450437A (zh) * 2014-09-19 2016-03-30 中兴通讯股份有限公司 一种分配sid的方法和sr节点
CN107872383A (zh) * 2016-09-28 2018-04-03 中兴通讯股份有限公司 参数的通告方法、获取方法及装置
US20180359176A1 (en) * 2017-06-12 2018-12-13 Cisco Technology, Inc. Centralized segment routing dataplane based backup path validation
WO2020087398A1 (en) * 2018-10-31 2020-05-07 Huawei Technologies Co., Ltd. Method and apparatus for advertising and processing bier capability of link, and communication node

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102726000B (zh) * 2011-07-22 2017-06-16 华为技术有限公司 故障通告方法、检测装置、转发装置及系统
CN103138957A (zh) * 2011-11-22 2013-06-05 中国移动通信集团上海有限公司 一种业务路径回切的方法、设备及系统
US8750095B2 (en) * 2012-06-26 2014-06-10 Cisco Technology, Inc. System and method for protection against edge node failure
US10129202B2 (en) * 2014-11-25 2018-11-13 Cisco Technology, Inc. Optimizing global IPv6 address assignments
US10044603B1 (en) * 2016-03-30 2018-08-07 Amazon Technologies, Inc. Robust fast re-routing for label switching packets
CN110113259B (zh) * 2019-04-26 2021-08-06 新华三技术有限公司 路径状态通知方法、路径切换方法、转发设备及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450437A (zh) * 2014-09-19 2016-03-30 中兴通讯股份有限公司 一种分配sid的方法和sr节点
CN107872383A (zh) * 2016-09-28 2018-04-03 中兴通讯股份有限公司 参数的通告方法、获取方法及装置
US20180359176A1 (en) * 2017-06-12 2018-12-13 Cisco Technology, Inc. Centralized segment routing dataplane based backup path validation
WO2020087398A1 (en) * 2018-10-31 2020-05-07 Huawei Technologies Co., Ltd. Method and apparatus for advertising and processing bier capability of link, and communication node

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4236209A4

Also Published As

Publication number Publication date
US20230300065A1 (en) 2023-09-21
JP2023550488A (ja) 2023-12-01
CA3199722A1 (en) 2021-11-23
CN116827855A (zh) 2023-09-29
CN114531395A (zh) 2022-05-24
MX2023006018A (es) 2023-08-14
CN114531395B (zh) 2023-06-16
EP4236209A4 (en) 2024-03-20
EP4236209A1 (en) 2023-08-30

Similar Documents

Publication Publication Date Title
US20210084009A1 (en) Route generation method and device
WO2022105927A1 (zh) 一种通告网络设备处理能力的方法、设备和系统
US20220360525A1 (en) Packet Processing Method, Apparatus, and System
US20220337514A1 (en) Service Chain Fault Protection Method, Apparatus, Device and System, and Storage Medium
WO2022078415A1 (zh) 报文转发方法以及网络设备
US20230155937A1 (en) Route Advertisement Method and Related Device
US20230269169A1 (en) Method for Advertising Topology Information, Method for Collecting Network Topology, and Device
CN114513429A (zh) 检测报文的传输方法、反向路径的确定方法及设备
WO2022012489A1 (zh) 一种能力通告方法及相关设备
WO2022048418A1 (zh) 一种转发报文的方法、设备和系统
US20230421480A1 (en) Route Processing Method and Network Device
EP4325777A1 (en) Method and device for electing designated forwarder (df)
WO2022088685A1 (zh) 一种语义名称获取方法、装置、设备及存储介质
CN113872843B (zh) 一种路由生成方法、路由处理方法及装置
CN114006854A (zh) 通信方法及网络设备
US20230336458A1 (en) Route Transmission Method and Apparatus
JP7273130B2 (ja) 通信方法および装置
EP4210290A1 (en) Packet transmission method and apparatus
CN114025025B (zh) SRv6 SID的发布方法及网络设备
WO2023213216A1 (zh) 一种报文处理的方法及相关设备
WO2021135472A1 (zh) 一种路由信息的处理方法及装置
WO2022161061A1 (zh) 一种故障检测方法、网络设备及系统
WO2024087691A1 (zh) 一种报文处理方法及相关设备
CN114422435A (zh) 接口地址的通告方法、网络设备可达性的校验方法及设备
KR20230035673A (ko) 경로 광고 방법 및 관련 디바이스

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21894074

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 3199722

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2023530852

Country of ref document: JP

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112023009753

Country of ref document: BR

ENP Entry into the national phase

Ref document number: 2021894074

Country of ref document: EP

Effective date: 20230526

ENP Entry into the national phase

Ref document number: 112023009753

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20230519

NENP Non-entry into the national phase

Ref country code: DE