WO2020142873A1 - 控制路由迭代的方法、设备和系统 - Google Patents

控制路由迭代的方法、设备和系统 Download PDF

Info

Publication number
WO2020142873A1
WO2020142873A1 PCT/CN2019/070685 CN2019070685W WO2020142873A1 WO 2020142873 A1 WO2020142873 A1 WO 2020142873A1 CN 2019070685 W CN2019070685 W CN 2019070685W WO 2020142873 A1 WO2020142873 A1 WO 2020142873A1
Authority
WO
WIPO (PCT)
Prior art keywords
iteration
tunnel
network device
information
routing
Prior art date
Application number
PCT/CN2019/070685
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 CN201980005592.7A priority Critical patent/CN111670565B/zh
Priority to EP19908142.3A priority patent/EP3886388A4/en
Priority to PCT/CN2019/070685 priority patent/WO2020142873A1/zh
Priority to CN202210050452.5A priority patent/CN114500369A/zh
Publication of WO2020142873A1 publication Critical patent/WO2020142873A1/zh
Priority to US17/367,008 priority patent/US11652737B2/en
Priority to US18/300,056 priority patent/US20230254239A1/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/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • 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
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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
    • 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/033Topology update or discovery by updating distance vector protocols
    • 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/74Address processing for 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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/251Translation of Internet protocol [IP] addresses between different IP versions
    • 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

Definitions

  • This application relates to the field of communications, and in particular to a method, device and system for controlling routing iteration.
  • Border Gateway Protocol (Border Gateway Protocol, BGP) is an inter-autonomous system routing protocol used to exchange routing information between different autonomous systems (Autonomous Systems, AS). After receiving the BGP routing information announcement, the network device needs to perform iterative processing for the next hop address. When it is determined that the route passes through iteratively, the BGP routing information is delivered from the control plane to the forwarding plane for guiding forwarding, and the BGP routing information can continue to be announced to other network devices. When it is determined that the route iteration does not pass, the BGP routing information is not used to guide forwarding, and the announcement of the BGP routing information to other network devices is terminated.
  • BGP Border Gateway Protocol
  • the method, device and system for controlling route iteration provided by the embodiments of the present invention solve the problems of tedious operation, time-consuming, labor-consuming and error-prone caused by manually configuring the route iteration processing strategy one by one in the network, and help to simplify network operation Maintenance, save labor costs, and improve the accuracy and efficiency of network management.
  • embodiments of the present application provide a method for controlling route iteration.
  • the first network device receives the border gateway protocol BGP routing information from the second network device, the BGP routing information includes the destination address, the next hop address to the destination address, and attribute information, wherein, the The attribute information indicates a manner in which the first network device performs iterative processing on the next hop address.
  • the first network device determines, according to the attribute information, a way to perform iterative processing on the next hop address.
  • the attribute information used to control the route iteration mode in the advertised BGP routing information is disseminated to related network devices in the network along with the BGP route advertisement message, avoiding manual configuration on each network device one by one
  • the routing iteration strategy is tedious and error-prone, which saves labor and improves the accuracy and efficiency of network management.
  • the first network device when the attribute information indicates that routing iteration is not performed on the next hop address, the first network device does not perform routing iteration processing on the next hop address.
  • the first network device when the attribute information indicates that the Internet protocol IP iteration is performed on the next hop address, the first network device performs IP iteration processing on the next hop address, wherein, the IP iteration includes ordinary IP iteration or flow specification FlowSpec routing iteration.
  • the first network device when the attribute information indicates that tunnel iteration is performed on the next hop address, performs tunnel iteration processing on the next hop address, where the tunnel iteration Including multi-protocol label switching MPLS label switching path LSP tunnel iteration, resource reservation protocol-traffic engineering RSVP-TE tunnel iteration, segmented routing-traffic engineering SR-TE tunnel iteration, SR-BE tunnel iteration or general routing encapsulated GRE tunnel, Internet Protocol version 4 IPv4 tunnel or Internet Protocol version 6 IPv6 tunnel.
  • the tunnel iteration Including multi-protocol label switching MPLS label switching path LSP tunnel iteration, resource reservation protocol-traffic engineering RSVP-TE tunnel iteration, segmented routing-traffic engineering SR-TE tunnel iteration, SR-BE tunnel iteration or general routing encapsulated GRE tunnel, Internet Protocol version 4 IPv4 tunnel or Internet Protocol version 6 IPv6 tunnel.
  • the first network device when the attribute information indicates that IP and tunnel iterations are performed on the next hop address, the first network device performs IP iteration and tunnel iteration processing on the next hop address, where ,
  • the IP iteration includes ordinary IP iteration or FlowSpec routing iteration
  • the tunnel iteration includes MPLS LSP tunnel iteration, RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel iteration, GRE tunnel iteration, IPv4 tunnel iteration or IPv6 tunnel iteration.
  • the attribute information is a BGP extended community attribute
  • the BGP extended community attribute includes a type Type field and a flag Flag field, wherein the Type field indicates routing iteration to the next hop address
  • the Flag field controls the manner in which iterative processing of the next hop address is performed.
  • the manner includes any one of the following: no iteration, IP iteration, tunnel iteration, IP, and tunnel iteration.
  • the BGP extended community attribute further includes a first value Value field and a second Value field
  • the first Value field indicates the type of IP iteration
  • the type of IP iteration includes the Ordinary IP iteration or the FlowSpec routing iteration
  • the second Value field indicates the type of tunnel iteration
  • the tunnel iteration includes MPLS LSP tunnel iteration, RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel Iteration, GRE tunnel iteration, IPv4 tunnel iteration or IPv6 tunnel iteration.
  • embodiments of the present application provide a method for controlling routing iteration.
  • the second network device obtains the border gateway protocol BGP routing information, the BGP routing information includes the destination address, the next hop address to the destination address and attribute information, the attribute information indicates that the first network device A way for performing iterative processing on the next hop address.
  • the second network device sends the BGP routing information to the first network device.
  • the attribute information used to control the route iteration mode in the advertised BGP routing information is disseminated to related network devices in the network along with the BGP route advertisement message, avoiding manual configuration on each network device one by one
  • the routing iteration strategy is tedious and error-prone, which saves labor and improves the accuracy and efficiency of network management.
  • the way to perform iterative processing on the next hop address includes one of the following ways: no iterative processing on the next hop address is performed on the next hop address; Perform IP iteration processing on the address, wherein the IP iteration includes ordinary IP iteration or FlowSpec routing iteration; perform tunnel iteration processing on the next hop address, where the tunnel iteration includes MPLS LSP tunnel iteration, RSVP-TE tunnel iteration , SR-TE tunnel iteration, SR-BE tunnel iteration, GRE tunnel iteration, IPv4 tunnel iteration, or IPv6 tunnel iteration; performing the IP iteration and the tunnel iteration processing on the next hop address.
  • the attribute information is a BGP extended community attribute
  • the BGP extended community attribute includes a type Type field and a flag Flag field, wherein the Type field indicates routing iteration to the next hop address
  • the Flag field controls the way of iterative processing of the next hop address, and the method includes any one of the following: no iteration; IP iteration; tunnel iteration; the IP iteration and The tunnel iterates.
  • the BGP extended community attribute further includes a first value Value field and a second Value field
  • the first Value field indicates the type of IP iteration
  • the type of IP iteration includes the Ordinary IP iteration or the FlowSpec routing iteration
  • the second Value field indicates the type of tunnel iteration
  • the tunnel iteration includes MPLS LSP tunnel iteration, RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel Iteration, GRE tunnel iteration, IPv4 tunnel iteration or IPv6 tunnel iteration.
  • the method before the second network device obtains the BGP routing information, the method further includes:
  • the second network device obtains policy information, and the policy information instructs the second network device to add the attribute information to the BGP routing information notified to the first network device.
  • policy information Through policy information, it provides a function (or capability) to add (or activate) attribute information to BGP routing information according to user needs, which helps to manage or use the network as needed, and improve the flexibility of network management Sex.
  • the obtaining of the BGP routing information by the second network device includes: the second network device obtaining the BGP routing information according to the indication of the policy information.
  • the policy information further includes specified address information, the specified address information indicates an address set, and accordingly, the policy information indicates that the second network device sets the destination address in the address set
  • the attribute information is added to the BGP routing information notified to the first network device within.
  • iterative routing control can be performed for BGP routes within a certain address range, which enriches the means of technical implementation and improves the flexibility of use.
  • obtaining the BGP routing information by the second network device includes: according to the instruction of the policy information, when the second network device determines that the destination address is within the address set, Obtain the BGP routing information.
  • the obtaining of the policy information by the second network device includes at least one of the following ways: the second network device obtains the policy information according to a command line configuration; the second network The device receives a message from the control management device, where the message includes the policy information; the second network device runs algorithm software to automatically generate the policy information.
  • the embodiments of the present application provide a method for controlling routing iteration.
  • the control management device generates a message, the message includes policy information, the policy information instructs the second network device to add attribute information to the border gateway protocol BGP routing information notified to the first network device; the BGP routing information Including the destination address, the next hop address to the destination address, and the attribute information; the attribute information indicates the way in which the first network device performs iterative processing on the next hop address.
  • the control management device sends a message to the second network device.
  • policy information Through policy information, it provides a function (or capability) to add (or activate) attribute information to BGP routing information according to user needs, which helps to manage or use the network as needed, and improve the flexibility of network management Sex.
  • the policy information further includes specified address information, the specified address information indicates an address set, and accordingly, the policy information indicates that the second network device sets the destination address in the address set
  • the attribute information is added to the BGP routing information notified to the first network device within.
  • iterative routing control can be performed for BGP routes within a certain address range, which enriches the means of technical implementation and improves the flexibility of use.
  • an embodiment of the present application provides a network device, which is used as a first network device.
  • the first network device includes a memory and a processor connected to the memory.
  • the processor is configured to execute computer-readable instructions in the memory to perform the method in the first aspect or any possible implementation manner of the first aspect.
  • the present invention provides a computer-readable medium, including instructions, which when executed on a computer, causes the computer to execute the method in the first aspect or any possible implementation manner of the first aspect.
  • an embodiment of the present application provides a network device, which is used as a second network device.
  • the second network device includes a memory and a processor connected to the memory.
  • the processor is configured to execute computer-readable instructions in the memory to perform the method of the second aspect or any possible implementation manner of the second aspect.
  • the present invention provides a computer-readable medium, including instructions, which when executed on a computer, causes the computer to perform the method in the second aspect or any possible implementation manner of the second aspect.
  • control management device includes a memory and a processor connected to the memory.
  • the processor is configured to execute computer readable instructions in the memory to perform the method of the third aspect or any possible implementation manner of the third aspect.
  • the present invention provides a computer-readable medium, including instructions, which when executed on a computer, causes the computer to perform the method of the third aspect or any possible implementation manner of the third aspect.
  • the present invention provides a system including the first network device of the fourth or fifth aspect and the second network device of the sixth or seventh aspect.
  • the present invention provides a system including the second network device of the sixth or seventh aspect and the control management device of the eighth or ninth aspect.
  • FIG. 1 is a schematic diagram of a network application scenario in an embodiment of this application
  • FIG. 2 is a flowchart of a method for controlling routing iteration in an embodiment of the present application
  • FIG. 3 is a schematic diagram of a field format in an embodiment of this application.
  • FIG. 4 is a schematic diagram of an application scenario of an end-to-end tunnel bearer service in an embodiment of this application;
  • 5a is a schematic diagram of an application scenario of an end-to-end tunnel carrying VPN services in an embodiment of the present application
  • FIG. 5b is a schematic diagram of another application scenario of an end-to-end tunnel carrying VPN services in an embodiment of the present application
  • 5c is a schematic diagram of an application scenario of an end-to-end tunnel carrying IPv6 services in an embodiment of the present application
  • FIG. 6 is a schematic diagram of a first network device 600 in an embodiment of this application.
  • FIG. 7 is a schematic diagram of a first network device 700 in an embodiment of this application.
  • FIG. 8 is a schematic diagram of a control management device 800 in an embodiment of this application.
  • FIG. 9 is a schematic diagram of a system 900 in an embodiment of this application.
  • FIG. 10 is a schematic diagram of another system 1000 in an embodiment of the present application.
  • the network architecture and business scenarios described in the embodiments of the present invention are for more clearly illustrating the technical solutions of the embodiments of the present invention, and do not constitute a limitation on the technical solutions provided by the embodiments of the present invention. With the evolution of the architecture and the emergence of new business scenarios, the technical solutions provided by the embodiments of the present invention are also applicable to similar technical problems.
  • the present invention is applied to a network that uses BGP for route announcements.
  • the network includes network devices.
  • the network devices are devices that perform route forwarding functions, and may be routers, switches, repeaters, and other devices.
  • the router, switch, and repeater may be physical devices, or virtual devices based on virtualization technology (eg, virtual servers, virtual routers, virtual switches, and virtual repeaters).
  • the network devices may also be referred to as provider edge (PE) devices, customer edge (Customer Edge, CE) devices, and route reflectors (Route Reflector, RR) ), Autonomous System Border Router (Autonomous System Border Router, ASBR), etc.
  • PE provider edge
  • CE Customer Edge
  • RR Route reflectors
  • ASBR Autonomous System Border Router
  • FIG. 1 shows a schematic diagram of an application scenario of BGP route advertisement.
  • the application scenario includes three ASs, namely AS1, AS2, and AS3.
  • AS1 includes network device 1 and network device 2.
  • AS1, AS2 and AS3 use BGP to advertise routing information between autonomous systems.
  • the BGP routing information includes the destination address and the next hop address to the destination address.
  • the destination can be carried in the Multiprotocol Reachable NLRI (MP_REACH_NLRI) attribute defined by BGP
  • the next hop address can be carried in the next hop defined by BGP (English: NEXT_HOP) Property.
  • MP_REACH_NLRI Multiprotocol Reachable NLRI
  • the destination address may be an Internet Protocol version 4 (Internet Protocol version 4, IPv4) address, an IPv4 prefix, an Internet Protocol version 6 (Internet Protocol version 6, IPv6) address, an IPv6 prefix, or a virtual private network (Virtual Private Network) , VPN) address (private network address), for example, VPN-IPv4 address, VPN-IPv6 address, Media Access Control (MAC) address in Ethernet Virtual Private Network (EVPN).
  • IPv4 Internet Protocol version 4, IPv4 address
  • IPv6 Internet Protocol version 6
  • IPv6 prefix IPv6 prefix
  • VPN virtual private network address
  • VPN-IPv4 address VPN-IPv6 address
  • MAC Media Access Control
  • EVPN Ethernet Virtual Private Network
  • the destination address can also be another form of address, which is not limited here.
  • network device 2 after receiving a BGP routing message from AS2 (for example, the destination address is an IPv4 address: 10.10.10.10/32), network device 2 replaces the next hop in the BGP routing information after passing iterative processing.
  • the address is its own address (that is, the address of network device 2), and then it continues to advertise the BGP routing information to AS3.
  • route iteration refers to iterative route lookup (English: recursive route lookup), specifically, iterative route lookup operation for the Internet Protocol (IP) address in the NEXT_HOP attribute. Iterative route lookup includes iterative IP lookup and iterative tunnel lookup.
  • IP address in the NEXT_HOP attribute is a next-hop address that is not directly connected to the network device
  • iterative route lookup needs to be performed on the IP address in the NEXT_HOP attribute to determine the direct Link (English: immediate or direct) next hop address (ie iterative IP lookup) or tunnel identification (ie iterative tunnel lookup) to confirm whether the route to the IP address in the NEXT_HOP attribute is reachable.
  • Routing iteration can be divided into IP iteration and tunnel iteration.
  • the IP iteration refers to the iterative IP lookup, that is, iterative route lookup is performed on the IP address in the NEXT_HOP attribute to determine the directly connected next hop address.
  • the IP iteration may include ordinary IP iteration or FlowSpec routing iteration.
  • the ordinary IP iteration refers to searching in an IP routing table generated by a dynamic routing protocol such as Internal Gateway Protocol (Interior Gateway Protocol, IGP), BGP, or a static routing protocol when performing the iterative IP lookup.
  • the FlowSpec routing iteration refers to searching in the FlowSpec routing table generated by the FlowSpec protocol when iterative IP searching is performed.
  • the tunnel iteration refers to the iterative tunnel search, that is, the iterative route search is performed on the IP address in the NEXT_HOP attribute to determine the tunnel identifier, and the tunnel identifier is used to identify one tunnel or multiple tunnels (for example, multiple tunnels) Tunnels are used for load sharing).
  • the tunnel iteration includes iteration of various types of tunnels, usually including but not limited to Multi-Protocol Label Switching (MPLS) Label Switching Path (Label) Switched Path (LSP) tunnel iteration, resource reservation protocol-traffic Engineering (Resource, Protocol-Traffic Engineering, RSVP-TE) tunnel iteration, segmented routing-traffic engineering (Segment Routing-Traffic Engineering, SR-TE) tunnel iteration, segmented routing best effort (Segment Routing-BestEffort, SR -BE) Tunnel iteration, Generic Routing Encapsulation (GRE) tunnel iteration, IPv4 tunnel iteration, IPv6 tunnel iteration, etc.
  • MPLS Multi-Protocol Label Switching
  • Label Label Switched Path
  • RSVP-TE Resource reservation protocol-traffic Engineering
  • SR-TE Segment Routing-Traffic Engineering
  • GRE Generic Routing Encapsulation
  • the MPLS LSP tunnel iteration refers to searching in the tunnel table (or tunnel list) generated by the MPLS LSP protocol when performing the iterative tunnel search.
  • the RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel iteration, GRE tunnel iteration, IPv4 tunnel iteration, or IPv6 tunnel iteration refers to when performing the iterative tunnel search, respectively in RSVP-TE, Look in the tunnel table (or tunnel list) generated by SR-TE, SR-BE, GRE, IPv4 or IPv6 protocol.
  • An embodiment of the present invention provides a method for controlling route iteration.
  • the attribute information used to control the route iteration method is distributed to the network along with the BGP route advertisement message.
  • the problem of tedious and error-prone operation of manually configuring the routing iteration strategy on each network equipment one by one is avoided, thereby saving manpower and improving the accuracy and efficiency of network management.
  • the first network device in FIG. 2 may be the network device 1 in FIG. 1
  • the second network device may be the network device 2 in FIG. 1
  • the control management device may be the control management device in FIG.
  • FIG. 2 is a schematic flowchart of a method for controlling routing iteration according to an embodiment of the present invention. The method includes the following contents.
  • the control management device generates a message, where the message includes policy information, and the policy information instructs the second network device to add attribute information to the BGP routing information notified to the first network device.
  • the BGP routing information includes a destination address, a next hop address to the destination address, and the attribute information.
  • the attribute information indicates a manner in which the first network device performs iterative processing on the next hop address.
  • the control management device sends the message to the second network device.
  • the second network device receives the message, and obtains and saves the policy information.
  • the control management device generates and sends a message to the network device 2 according to the user's needs.
  • the network device 2 receives the message and obtains policy information from the message.
  • the policy information instructs the network device 2 to add attribute information to the BGP routing information notified to the network device 1.
  • the attribute information indicates the manner in which the network device 1 performs iterative routing processing on the next hop address (for example, the address of the network device 2) in the BGP routing information.
  • the user refers to the operator, manager or user of the network.
  • the user's needs may be requirements for using the network or managing the network.
  • the user's needs can be manually configured and input on the control management device, or can be obtained automatically by the control management device after receiving the request messages of other application servers (such as a third-party application server), or it can be other ways, this article does not do limited.
  • policy information Through policy information, it provides a function (or capability) to add (or activate) attribute information to BGP routing information according to user needs, which helps to manage or use the network as needed, and improve the flexibility of network management Sex.
  • the policy information further includes specified address information, the specified address information indicates an address set, and accordingly, the policy information indicates that the second network device sets the destination address in the address set
  • the attribute information is added to the BGP routing information notified to the first network device within.
  • the second network device adds the attribute information to the BGP routing information whose destination address is in the address set and is notified to the first network device.
  • the destination address to be notified by the network device 2 to the network device 1 is 10.10.10.10/32. If the address set is ⁇ 10.10.10.10/32, 50.1.1.1/32, 60.1.1.1/32,... ⁇ , then the destination address is in the address set. Therefore, the network device 2 receives the message from the control management device and obtains policy information from the message.
  • the policy information instructs the network device 2 to add the attribute information to the BGP routing information advertised to the network device 1 with the destination address in the address set.
  • the attribute information indicates the manner in which the network device 1 performs iterative routing processing on the next hop address (for example, the address of the network device 2) in the BGP routing information. According to the instruction of the policy information, when determining that the destination address (10.10.10.10/32) is in the address set, the network device 2 adds the BGP routing information with the destination address 10.10.10.10/32 Attribute information.
  • iterative routing control can be performed for BGP routes within a certain address range, which enriches the means of technical implementation and improves the flexibility of use.
  • the message may be sent through a management channel, or may be sent through a control channel protocol.
  • Commonly used management channel protocols can include: Simple Network Management Protocol (SNMP, Simple Network Management Protocol), Network Configuration Protocol (Network Configuration Protocol, NETCONF), etc.
  • Commonly used control channel protocols may include: OpenFlow (English: OpenFlow) protocol, Path Computing Communication Protocol (Path Computation Element Communication Protocol, PCEP), Border Gateway Protocol (Border Gateway Protocol, BGP), routing system interface ( Interface to the Routing System (I2RS), etc.
  • the manner in which the first network device obtains the policy information can be achieved in at least one of the following ways, in addition to receiving the message from the control management device:
  • the first network device obtains the policy information according to the command line configuration. For example, the administrator logs in to the first network device and performs configuration operations through the command line.
  • the first network device automatically runs the algorithm software to automatically generate the policy information.
  • the second network device obtains BGP routing information.
  • the BGP routing information includes a destination address, a next hop address to the destination address, and attribute information.
  • the attribute information instructs the first network device to One-hop address routing iteration processing method.
  • the second network device may obtain the BGP routing information (which carries the attribute information).
  • the BGP routing information which carries the attribute information.
  • the second network device is the initial device that initiates the BGP routing information announcement. At this time, the second network device generates the BGP routing information that carries the attribute information.
  • Method 2 As the transit node, the second network device receives the BGP routing information (that is, transited BGP routing information) notification from other network devices that does not carry the attribute information, and then adds the attribute information to the transit Continue to advertise in the BGP routing information.
  • the transferred BGP routing information carries the attribute information.
  • the second network device may directly obtain the BGP routing information according to the execution operation of the software code.
  • the second network device may also obtain policy information first, and then obtain BGP routing information according to the policy information.
  • the second network device generates new BGP routing information carrying the attribute information according to the policy information or adds the attribute information to a BGP routing information to be transferred.
  • the network device 2 when the network device 2 receives a route advertisement from the IP address of AS2 (for example, 10.10.10.10/32), it can directly add attribute information to the BGP routing information or add the attribute information to the BGP routing information according to policy information. Added attribute information.
  • the BGP routing information includes the destination address (10.10.10.10/32), the next hop address to the destination address (the network device 2's own address, for example, 2.2.2.2/32), and the attribute information.
  • the attribute information instructs the network device 1 how to perform iterative processing on the next hop address (2.2.2.2/32).
  • the network device 2 when the network device 2 initiates the announcement of the IP address (for example, 80.1.1.1/32) as the originating device of route advertisement, it may directly add attribute information to the BGP routing information or generate a BGP routing information for attribute information.
  • the BGP routing information includes the destination address (80.1.1.1/32), the next hop address to the destination address (2.2.2.2/32), and the attribute information.
  • the routing iteration strategy is broadcast to the corresponding network devices with the release of BGP routing information, so that only a few network devices or a few network devices need to be configured. Yes, it saves manual configuration and improves efficiency and accuracy. For example, as shown in FIG. 1, only the configuration on the network device 2 is required, and no similar configuration is required on the network device 1, thereby reducing manual configuration and cost.
  • the attribute information instructs the first network device to perform route iteration processing on the next hop address, including but not limited to the following.
  • routing iteration please refer to the description in Figure 1 above, which will not be repeated here.
  • IP iterative processing is performed on the next hop address.
  • the IP iteration includes ordinary IP iteration or FlowSpec routing iteration.
  • the network device 1 uses the address (next hop address) of the network device 2 to search in the IP routing table or the FlowSpec routing table, and if a matching entry is found, it passes through ordinary IP iteration or FlowSpec routing Iterative check processing; if no matching entry is found, it cannot be iterated through ordinary IP or FlowSpec routing iterative check processing.
  • the tunnel iteration includes MPLS LSP tunnel iteration, RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel iteration, GRE tunnel iteration, IPv4 tunnel iteration or IPv6 tunnel iteration.
  • the network device 1 uses the address (next hop address) of the network device 2 to the MPLS LSP tunnel table, RSVP-TE tunnel table, SR-TE tunnel table, SR-BE tunnel table, GRE tunnel iteration tunnel table, The IPv4 tunnel table or the IPv6 tunnel table is searched. If a matching entry is found, the corresponding tunnel iterative inspection process is passed; if no matching entry is found, the corresponding tunnel iterative inspection process cannot be passed.
  • the network device 1 uses the address (next hop address) of the network device 2 to perform the IP iteration check process shown in 1) above, and also perform the tunnel iteration check process shown in 2) above. If both iterative inspection processes are passed, the network device 1 determines to pass the IP iteration and the tunnel iteration process. If at least one of the two iteration checks fails, the network device 1 determines that the IP iteration and the tunnel iteration processing failed.
  • the network device 1 may not perform any iterative routing check without using the address (next hop address) of the network device 2.
  • the non-border network device in the cross-domain network receives the BGP routing information from the upstream network device after receiving the BGP routing information from the upstream network device. Before the network device continues to advertise the BGP routing information, the method of not iteratively processing the route of the next hop address is helpful for the normal creation of services. It should be noted that, for the explanation of non-border network devices, please see the description of the cross-domain network section below, and for the explanation of upstream and downstream, please see the description in section 4 below, which will not be repeated here.
  • the attribute information is a BGP extended community (English: Extended_Communities) attribute.
  • Extended_Communities attribute For a detailed description of the Extended_Communities attribute, please refer to RFC4271 published by the IETF. The content of this document and this related part seems to be copied into the entire text of this document in a way that it is incorporated by reference. The description of the conflict is subject to the description of this application. For the sake of brevity, I will not repeat them here.
  • the embodiment of the present invention extends the BGP extended community attribute and adds a new type to indicate the control of the routing iteration of the next hop address. As shown in FIG.
  • the BGP extended community attribute includes a type (English: Type) field and a flag (English: Flag) field, where the Type field indicates the control of the routing iteration of the next hop address.
  • the Flag field controls the way in which iterative processing is performed on the next hop address, and the manner includes any one of the following: no iteration, IP iteration, tunnel iteration, IP, and tunnel iteration.
  • the BGP extended community attribute further includes a value (English: Value) field, and the Value field is used to control specific methods of the IP iteration and the tunnel iteration.
  • the Value field indicates non-iterative processing of the next hop address, the Value field does not indicate any meaning, for example, the value may be 0.
  • the Value field indicates normal IP iteration or FlowSpec routing iteration. For example, a value of 1 indicates normal IP iteration and a value of 2 indicates FlowSpec routing iteration.
  • the Value field indicates the MPLS LSP tunnel iteration, RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel iteration, GRE tunnel iteration, IPv4 tunnel Iteration or IPv6 tunnel iteration, for example, a value of 1 indicates MPLS LSP tunnel iteration, a value of 2 indicates RSVP-TE tunnel iteration, a value of 3 indicates SR-TE tunnel iteration, and a value of 4 indicates SR-BE tunnel iteration. 5 indicates GRE tunnel iteration, value 6 indicates IPv4 tunnel iteration, value 7 indicates IPv6 tunnel iteration, and so on.
  • the Value field can also be split into two parts, including a first Value field and a second Value field.
  • the first Value field indicates the type of the IP iteration, and the type of the IP iteration includes the ordinary IP iteration or the FlowSpec routing iteration.
  • the second Value field indicates the type of the tunnel iteration.
  • the tunnel iteration includes MPLS LSP tunnel iteration, RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel iteration, GRE tunnel iteration, IPv4 tunnel iteration or IPv6 tunnel iteration. It should be noted that the format of FIG. 3 is only an example, and does not limit the position and length of each field.
  • the second network device sends the BGP routing information to the first network device.
  • the network device 2 notifies the network device 1 of the BGP routing information whose destination address is 10.10.10.10/32 and the next hop address is the address of the network device 2.
  • the first network device receives the BGP routing information.
  • the first network device determines, according to the attribute information, a way to perform iterative processing on the next hop address.
  • the network device 1 receives the BGP routing information, and determines, according to the attribute information, which route iterative processing is performed on the address (next hop address, 2.2.2.2/32) of the network device 2.
  • the first network device When the attribute information indicates that IP iteration is performed on the next hop address, the first network device performs IP iteration processing on the next hop address.
  • the network device 1 determines to perform IP iteration, it performs IP iteration processing on the address of the network device 2. For details, please refer to the description in section 204 above, which will not be repeated here.
  • the first network device When the attribute information indicates that tunnel iteration is performed on the next hop address, the first network device performs tunnel iteration processing on the next hop address.
  • the first network device When the attribute information indicates that IP and tunnel iterations are performed on the next hop address, the first network device performs IP iteration and tunnel iteration processing on the next hop address.
  • the IP iteration includes ordinary IP iteration or FlowSpec routing iteration.
  • the tunnel iteration includes MPLS LSP tunnel iteration, RSVP-TE tunnel iteration, SR-TE tunnel iteration, SR-BE tunnel iteration, GRE tunnel iteration, IPv4 tunnel iteration or IPv6 tunnel iteration.
  • the network device 1 determines to perform IP iteration and tunnel iteration, it performs IP iteration and tunnel iteration processing on the address of the network device 2. For details, please refer to the description in section 204 above, which will not be repeated here.
  • the first network device When the attribute information indicates that routing iteration is not performed on the next hop address, the first network device does not perform routing iteration processing on the next hop address.
  • the network device 1 determines not to perform iterative processing, the address of the network device 2 is not iterated. Please refer to the description in section 204 above for details.
  • FIGS. 4 to 5c will describe in detail the application scenario where the network device uses the attribute information to control the process of not performing iterative routing processing in the cross-domain end-to-end tunnel bearing service application scenario.
  • a cross-domain end-to-end tunnel refers to a tunnel that passes through at least two IGP network domains.
  • the cross-domain end-to-end tunnel is a complete tunnel, rather than a single network domain tunnel (single network domain A tunnel refers to a segmented tunnel spliced by only one network domain.
  • the cross-domain end-to-end tunnel is a tunnel composed of two end nodes and at least one intermediate node. The node may also be called a network device.
  • the cross-domain end-to-end tunnel may be a two-way tunnel between the two end nodes, or a two-way tunnel formed by two-way reciprocal unidirectional tunnels, for example, from end node A to end node B.
  • the IGP network domain is a network that exchanges routing information through IGP, also called IGP domain.
  • the network formed by the at least two IGP network domains is also called a cross-domain network.
  • an AS is an IGP network domain.
  • the scale of an AS is relatively large, and the performance of network equipment is insufficient to support the routing calculation of such a large-scale network or for the convenience of maintenance and management, operators will also divide an AS into Multiple IGP network domains to meet network device performance or management needs.
  • cross-domain end-to-end tunnels can be SR-TE tunnels, SR-BE tunnels, RSVP-TE tunnels, MPLS LSP tunnels, GRE tunnels, IPv4 tunnels (for example, in the context of IPv6overIPv4), Tunnel forms such as IPv6 tunnels (for example, in the scenario of IPv4overIPv6) are only examples here and are not limiting.
  • the establishment of the end-to-end tunnel can be implemented by a centralized control and management device, or by other methods.
  • the cross-domain network includes multiple network devices.
  • Network devices connected to devices in the service network (such as service network 1 and service network 2 shown in FIG. 4 below) in the cross-domain network are also called border network devices, and networks that are not connected to devices in the service network Devices are also called non-border network devices.
  • Figure 4 shows a schematic diagram of an application scenario of a cross-domain end-to-end tunnel carrying services.
  • the schematic diagram includes three IGP network domains, namely IGP domain 1, IGP domain 2 and IGP domain 3.
  • IGP domain 1 includes network device 1 and network device 2
  • IGP domain 2 includes network device 2 and network device 3
  • IGP domain 3 includes network device 3 and network device 4.
  • Network device 2 is connected to IGP domain 1 and IGP domain 2
  • network device 3 is connected to IGP domain 2 and IGP domain 3.
  • the control management device centrally controls and establishes an end-to-end tunnel traversing these three IGP domains between the network device 1 and the network device 4, and the services between the service network 1 and the service network 2 can be carried on the end-to-end tunnel.
  • This end-to-end tunnel is also called a public network tunnel or an outer tunnel.
  • the previous node is called the upstream node of the rear node, and the latter node is called the downstream node of the front node.
  • the network device 2 is the downstream node of the network device 1.
  • the network device 1 is an upstream node of the network device 2.
  • the BGP service routing information includes the destination address and the next hop address.
  • the service may be VPN service, IPv6 service, etc. If it is a VPN service, the service network 1 and the service network 2 are two sites (English: Site) networks of the VPN, and the service routing information is VPN routing information. At this time, the destination address is a VPN private network address, for example, it may be a VPN-IPv4 address, a VPN-IPv6 address, or a Media Access Control (MAC) address in an Ethernet VPN (Ethernet VPN, EVPN). If it is an IPv6 service, the service network 1 and the service network 2 are IPv6 networks, and the service routing information is IPv6 routing information, so that the IPv6 network traverses the IPv4 network. When the service routing information is IPv6 routing information, the destination address is an IPv6 address.
  • BGP routing information is also referred to as BGP service routing information.
  • the method implemented by the present invention in an application scenario of a cross-domain end-to-end tunnel (also referred to as a cross-domain tunnel hereinafter) bearing services shown in FIG. 4 is the same as that described in FIGS. 1 to 3 above.
  • the second network device is the network device 1 in FIG. 4
  • the first network device is the network device 2, the network device 3, and the network device 4 in FIG. 4
  • the control management device is the control management device in FIG. .
  • the cross-domain network where the cross-domain tunnel is located in order to ensure the reliability of creating the services carried by the cross-domain tunnel, when associating services with the cross-domain tunnel, you need to ensure that the cross-domain tunnel is reachable.
  • the end node network device 4 of the cross-domain tunnel needs to be able to iterate with the address of the end node network device 1 to the cross-domain tunnel from the network device 4 to the network device 1. If the iteration is successful, the service and the The cross-domain tunnel is associated to complete business creation. If the iteration is unsuccessful, the business creation is terminated.
  • the address of the head-end node needs to be carried in the next hop address in the BGP service routing information.
  • intermediate nodes such as network devices 2 and 3
  • the network device 2 and 3 do not use the address of the network device 1 (as the next hop address) for routing iteration processing.
  • network device 3 in Figure 1 uses the address of network device 1 as the next hop address for IP iteration, it cannot find the routing table entry whose destination address is the address of network device 1, because network device 1 belongs to IGP
  • the route of network device 1 is only in the range of IGP domain 1, only in the routing table of IGP domain 1, and there is no route to network device 1 in IGP domain 2, that is, the route in IGP domain 2.
  • the network device 3 uses the address of the network device 1 as the next hop address for tunnel iteration, because it is in the middle node position of the cross-domain end-to-end tunnel, it cannot be iterated to the cross-domain end-to-end tunnel, that is, in the tunnel forwarding table In, the tunnel identifier corresponding to the address (next hop address) of the network device 1 cannot be found. Therefore, the network device 3 cannot succeed in routing iteration.
  • the network device 1 By carrying attribute information in the BGP service routing information, and disseminating the iterative routing method to the corresponding network equipment as the advertisement message is broadcast, it provides a more precise control method, saves labor costs, and improves efficiency and accuracy rate.
  • the network device 1 obtains BGP service routing information carrying attribute information indicating that iterative processing of routing is not performed directly or according to policy information (for example, by receiving a message to control the management device or obtaining a policy message through a user command line configuration) (The destination address is the address in the service network 1, and the next hop address is the address of the network device 1), and sends the BGP service routing information to the network device 2.
  • the network device 2 After receiving, the network device 2 parses out the attribute information, and does not perform iterative routing processing on the address (next hop address) of the network device 1 according to the indication of the attribute information. Similarly, the network device 2 continues to send the BGP service routing information to the network device 3, and the network device 3 does not perform iterative routing processing on the address of the network device 1 according to the attribute information. After receiving the BGP service routing information, the network device 4 does not perform routing iteration processing according to the attribute information.
  • the network device 4 does not perform iterative processing based on the attribute information when receiving BGP service routing information, it needs to add iterative route lookup processing when creating a service forwarding entry to ensure that the cross-domain tunnel If it is reachable, then create a business to improve the reliability of the creation.
  • Figures 5a to 5c below respectively illustrate specific application scenarios of carrying VPN services and IPv6 services.
  • the embodiments of the present invention are further explained and explained below in conjunction with specific application scenarios.
  • FIG. 5a shows a schematic diagram of an application scenario where a cross-domain end-to-end tunnel carries VPN services.
  • an AS includes three IGP network domains, and VPN Site accesses the AS's network through Customer Edge (CE) equipment (hereinafter, CE equipment is referred to as CE).
  • CE equipment is referred to as CE.
  • the control and management equipment is centrally controlled, and end-to-end tunnels across the three IGP network domains are established between provider edge (PE) equipment (hereinafter PE equipment is referred to as PE) to carry VPN services.
  • PE provider edge
  • SR-TE tunnel public network tunnel
  • BGP neighbors are established between PE1 and Route Reflector (RR)1, between RR1 and RR2, and between RR2 and PE2.
  • the VPN routing information of CE1 and CE2 is sent to PE1-RR1-RR2-PE2 through the BGP Update message Advertise and broadcast among BGP neighbors. Therefore, a VPN private network tunnel (that is, an inner tunnel) is established on the public network tunnel (that is, the outer tunnel) between PE1 and PE2, and VPN1 service intercommunication between Site1 and Site2 across regions is realized.
  • the method implemented by the present invention in the VPN service scenario shown in FIG. 5a is the same as that described in FIG. 4 above, except that the announced BGP service routing information is specifically a private network route in VPN1.
  • the second network device in FIG. 2 is PE1 in FIG. 5a
  • the first network device in FIG. 2 is RR1, RR2, PE2 in FIG. 5a
  • the control management device in FIG. 2 is the one in FIG. 5a.
  • Control management equipment. RR1 and RR2 as non-border network devices in a cross-domain network, receive the BGP service routing information and obtain attribute information that controls the route iteration mode from them, and do not perform iterative route lookup processing according to the indication of the attribute information.
  • RR1 and RR2 do not update the next hop for themselves when advertising BGP VPN routing information.
  • PE1 as a border network device in a cross-domain network, needs to update the next hop to itself when advertising BGP VPN routing information.
  • PE2 as a border network device in a cross-domain network, needs to perform iterative routing processing when creating VPN service forwarding entries to ensure that the iterative cross-domain end-to-end tunnel from PE2 to PE1 is reachable. This can ensure that the BGP VPN routing information advertised by PE1 can be normally disseminated through RR1 and RR2 to reach PE2, and can ensure that the end-to-end tunnel from PE2 to PE1 is reachable, and then complete the creation of the VPN1 service, which is helpful for the reliability of the VPN1 service. create.
  • FIG. 5b shows a schematic diagram of another application scenario in which a cross-domain end-to-end tunnel carries VPN services.
  • This scenario is similar to FIG. 5a, except that this scenario includes three ASs, and the ASs are interconnected by an autonomous system border router (English: Autonomous System Border Router, ASBR).
  • ASBR Autonomous System Border Router
  • Each AS is an IGP network domain, and the ASs can also be regarded as an IGP network domain.
  • the control and management equipment centrally controls and establishes end-to-end tunnels between the three ASs to carry VPN services between PEs.
  • an RSVP-TE tunnel public network tunnel
  • the RSVP-TE tunnel can be used to carry VPN1 services between Site 1 and Site 2.
  • CE1 is connected to PE1 and PE3 of AS1 respectively, and CE2 is connected to PE2 and PE4 of AS3 respectively.
  • PE1 and PE3 establish BGP neighbors with ASBR1 and ASBR5 respectively, ASBR1 and ASBR5 establish BGP neighbors with ASBR3 and ASBR7 respectively, ASBR3 and ASBR7 establish BGP neighbors with ASBR4 and ASBR8 respectively, ASBR4 and ASBR8 respectively with PE2 and PE4 Establish BGP neighbors.
  • the VPN routing (also called private network routing) information between Site1 and Site2 is carried in the BGP Update message and then announced and disseminated through these BGP neighbors.
  • VPN private network tunnel that is, an inner tunnel
  • public network tunnel that is, the outer tunnel
  • VPN1 service intercommunication between Site1 and Site2 across regions is realized. It is worth noting that it is the same as that CE can be dual-homed to PE.
  • multiple cross-domain end-to-end tunnels between PE1 and PE3 and PE2 and PE4 can also be established. Examples, but not limited.
  • the method implemented by the present invention in the VPN service scenario shown in FIG. 5b is the same as that described in FIG. 4 and FIG. 5a above, but is applied in a scenario that spans multiple AS domains.
  • the second network device in FIG. 2 may be PE1 and PE3 in FIG. 5b, and the first network device in FIG. 2 is ASBR1, ASBR2, ASBR3, ASBR4, ASBR5, ASBR6, ASBR7, ASBR8 in FIG. 5b. , PE2, PE4, the control management device in FIG. 2 is the control management device in FIG. 5b.
  • the control management device in FIG. 2 is the control management device in FIG. 5b.
  • the specific method please refer to the relevant part above.
  • Fig. 5c shows a schematic diagram of an application scenario where a cross-domain end-to-end tunnel carries IPv6 services.
  • an AS includes three IGP network domains, which are IPv4-based networks.
  • IPv6 network 1 and IPv6 network 2 access the AS network, and Router 5 and Router 6 are located in IPv6 network 1 and IPv6 network 2, respectively.
  • the control and management equipment is centrally controlled, and an end-to-end IPv4 tunnel across these three IGP network domains is established between Router 1 and Router 4 to carry IPv6 services.
  • BGP neighbors are established between Router1 and Router2, between Router2 and Router3, and between Router3 and Router4.
  • IPv6 routing information of IPv6 network 1 and IPv6 network 2 is advertised between BGP neighbors of Router1-Router2-Router3-Router4 through BGP Update messages ,spread.
  • an IPv6 tunnel (that is, an inner tunnel) is established on the IPv4 tunnel (that is, an outer tunnel) between Router1 and Router4, and interworking between IPv6 network 1 and IPv6 network 2 is realized.
  • the method implemented by the present invention in the IPv6 service scenario shown in FIG. 5c is the same as that described in FIG. 4 above.
  • the difference is that the announced BGP service routing information is specifically an IPv6 address in the IPv6 network, and the iterative routing tunnel is cross-domain End-to-end IPv4 tunnel.
  • the second network device in FIG. 2 may be Router1 in FIG. 5c, the first network device in FIG. 2 is Router2, Router3, Router4 in FIG. 5c, and the control management device in FIG. 2 is in FIG. 5c Control management equipment.
  • Router2 and Router3 as non-border network devices in a cross-domain network, receive the BGP service routing information and obtain the attribute information that controls the route iteration mode, and do not perform iterative route lookup processing according to the indication of the attribute information.
  • Router2 and Router3 advertise BGP IPv6 routing information, they do not update the next hop to themselves.
  • Router 4 is a border network device in a cross-domain network. When receiving BGP IPv6 routing information, it can not perform iterative route lookup processing according to the indication of attribute information. However, when creating an IPv6over IPv4 service forwarding entry, iterative routing processing is still required to ensure that the iterative cross-domain end-to-end tunnel from Router4 to Router1 is reachable.
  • Figure 5c uses IPv6over IPv4 service scenario as an example.
  • IPv4over IPv6 service is also the same.
  • the cross-domain tunnel is an IPv6 tunnel
  • the BGP service routing information advertised is IPv4 routing information.
  • I will not repeat them here.
  • FIG. 6 is a schematic diagram of a network device 600 in an embodiment of this application.
  • the network device 600 serves as a first network device, including a processor 610, a memory 620 coupled to the processor 610, and a transceiver 630.
  • the processor 610 may be a central processing unit (CPU), a network processor (NP), or a combination of CPU and NP.
  • the processor may also be an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or a combination thereof.
  • the PLD may be a complex programmable logic device (complex programmable logic device, CPLD), a field programmable logic gate array (field-programmable gate array, FPGA), a general array logic (generic array logic, GAL), or any combination thereof.
  • the processor 610 may refer to one processor, or may include multiple processors.
  • the transceiver 630 is used to receive BGP routing information from the second network device, and send the message to the processor 610 for subsequent operation processing.
  • the BGP routing information includes a destination address, a next hop address to the destination address, and attribute information.
  • the attribute information indicates a manner in which the first network device performs iterative processing on the next hop address.
  • the memory 620 may include volatile memory (English: volatile memory), such as random-access memory (random-access memory, RAM); the memory may also include non-volatile memory (English: non-volatile memory), such as read-only Memory (read-only memory, ROM), flash memory (English: flash memory), hard disk (hard disk drive) or solid-state drive (SSD); memory can also include a combination of the above types of memory .
  • the memory 620 stores computer readable instructions including at least one software module, for example, the determination module 622. After executing each software module, the processor 610 may perform corresponding operations according to the instructions of each software module. In this embodiment, the operation performed by one software module actually refers to the operation performed by the processor 610 according to the instruction of the software module.
  • the determining module 622 may be used to determine a way to iteratively process the next hop address according to the attribute information.
  • the processor 610 executes the computer-readable instructions in the memory 620, it may perform all operations that can be performed by the first network device according to the instructions of the computer-readable instructions. The operation performed in the corresponding embodiment.
  • the network device 700 serves as a second network device, including a processor 710, a memory 720 coupled to the processor 710, and a transceiver 730.
  • the processor 710 may be a central processing unit (CPU), a network processor (NP), or a combination of CPU and NP.
  • the processor may also be an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or a combination thereof.
  • the PLD may be a complex programmable logic device (complex programmable logic device, CPLD), a field programmable logic gate array (field-programmable gate array, FPGA), a general array logic (generic array logic, GAL), or any combination thereof.
  • the processor 710 may refer to one processor, or may include multiple processors.
  • the transceiver 730 is configured to send BGP routing information to the first network device according to the operation instruction of the processor 710.
  • the memory 720 may include volatile memory (English: volatile memory), such as random-access memory (random-access memory, RAM); the memory may also include non-volatile memory (English: non-volatile memory), such as read-only Memory (read-only memory, ROM), flash memory (English: flash memory), hard disk (hard disk drive) or solid-state drive (SSD); memory can also include a combination of the above types of memory .
  • the memory 720 stores computer readable instructions including at least one software module, such as the obtaining module 722.
  • the processor 710 After the processor 710 executes each software module, it can perform corresponding operations according to the instructions of each software module. In this embodiment, the operation performed by one software module actually refers to the operation performed by the processor 710 according to the instruction of the software module.
  • the obtaining module 722 may be used to obtain the BGP routing information.
  • the BGP routing information includes a destination address, a next hop address to the destination address, and attribute information.
  • the attribute information instructs the first network device to One-hop address routing iteration processing method.
  • the processor 710 executes the computer-readable instructions in the memory 720, it can perform all operations that the second network device can perform according to the instructions of the computer-readable instructions. For example, the second network device Operation performed in the embodiment corresponding to 5c.
  • FIG. 8 is a schematic diagram of a control and management device 800 in an embodiment of the present application.
  • the control management device 800 includes a processor 810, a memory 820 coupled to the processor 810, and a transceiver 830.
  • the processor 810 may be a central processing unit (CPU), a network processor (NP), or a combination of CPU and NP.
  • the processor may also be an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or a combination thereof.
  • the PLD may be a complex programmable logic device (complex programmable logic device, CPLD), a field programmable logic gate array (field-programmable gate array, FPGA), a general array logic (generic array logic, GAL), or any combination thereof.
  • the processor 810 may refer to one processor, or may include multiple processors.
  • the memory 820 may include volatile memory (English: volatile memory), such as random-access memory (random-access memory, RAM); the memory may also include non-volatile memory (English: non-volatile memory), such as read-only Memory (read-only memory, ROM), flash memory (English: flash memory), hard disk (hard disk drive) or solid-state drive (SSD); memory can also include a combination of the above types of memory .
  • the memory 820 stores computer-readable instructions including at least one software module, such as a message generation module 822. After executing each software module, the processor 810 may perform corresponding operations according to the instructions of each software module.
  • the operation performed by one software module actually refers to the operation performed by the processor 810 according to the instruction of the software module.
  • the message generation module 822 is used to generate a message including policy information, and the policy information instructs the second network device to carry attribute information in the BGP routing information notified to the first network device.
  • the BGP routing information includes a destination address, a next hop address to the destination address, and the attribute information.
  • the attribute information indicates a way for the first network device to perform iterative processing on the next hop address.
  • the transceiver 830 is used to send the message to the second network device.
  • the processor 810 executes the computer-readable instructions in the memory 820, it can perform all operations that the control management device can perform according to the instructions of the computer-readable instructions.
  • the control management device corresponds to FIG. 1 to FIG. 5c. The operations performed in the example.
  • the system 900 includes a first network device 910 and a second network device 920.
  • the first network device 910 is the first network device described in FIG. 6 above
  • the second network device 920 is the second network device described in FIG. 7 above.
  • FIG. 6 and FIG. 7 For a detailed description of each device in the system 900, please refer to the relevant sections of FIG. 6 and FIG. 7 above, which will not be repeated here.
  • the system 1000 includes a second network device 1010 and a control management device 1020.
  • the second network device 1010 is the second network device described above in FIG. 7, and the control management device 1020 is the control management device described above in FIG. 8.
  • the control management device 1020 is the control management device described above in FIG. 8.
  • first and the "second” in the second network device in the embodiment of the present invention are only used to distinguish between two network devices, and do not mean that the two network devices Have order, hierarchy or other dependencies.
  • the size of the sequence numbers of the above processes does not mean that the execution order is sequential, and the execution order of each process should be determined by its function and inherent logic, and should not correspond to the embodiments of the present invention.
  • the implementation process constitutes no limitation.

Abstract

本申请提供一种控制路由迭代的方法,该方法包括:第一网络设备接收来自第二网络设备的边界网关协议BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,其中,所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式。所述第一网络设备根据所述属性信息确定对所述下一跳地址进行路由迭代处理的方式。该方法有助于简化网络运维,节省人工成本,提升网络管理的正确率和效率。

Description

控制路由迭代的方法、设备和系统 技术领域
本申请涉及通信领域,尤其涉及控制路由迭代的方法、设备和系统。
背景技术
边界网关协议(Border Gateway Protocol,BGP)是一个自治系统间路由协议,用于在不同的自治系统(Autonomous System,AS)之间交换路由信息。网络设备收到BGP路由信息通告后,需要进行针对下一跳地址的路由迭代处理。当确定路由迭代通过时,才将该BGP路由信息从控制平面下发到转发平面用于指导转发,并且可以继续向其它的网络设备通告该BGP路由信息。当确定路由迭代不通过时,则不将该BGP路由信息用于指导转发,并终止向其它的网络设备通告该BGP路由信息。
但是路由迭代处理的策略是由人工在网络中的网络设备上逐一进行配置,操作繁琐、耗时耗力、还容易出错。
发明内容
本发明实施例提供的控制路由迭代的方法、设备和系统,解决了在网络中人工逐一配置路由迭代处理的策略造成的操作繁琐、耗时耗力、易出错的问题,有助于简化网络运维,节省人工成本,提升网络管理的正确率和效率。
第一方面,本申请的实施例提供一种控制路由迭代的方法。依照该方法,第一网络设备接收来自第二网络设备的边界网关协议BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,其中,所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式。所述第一网络设备根据所述属性信息确定对所述下一跳地址进行路由迭代处理的方式。
通过在通告的BGP路由信息中携带用来控制路由迭代方式的属性信息,使得该属性信息随着BGP路由通告消息散播到网络中的相关网络设备上,避免了人工在每个网络设备上逐一配置路由迭代策略的操作繁琐和易出错的问题,从而节省了人工,提升了网络管理的正确率和效率。
在一种可能的设计中,当所述属性信息指示对所述下一跳地址不进行路由迭代时,所述第一网络设备不对所述下一跳地址进行路由迭代处理。
在跨域端到端隧道承载业务的应用场景中,跨域网络中的非边界网络设备接收到来自上游网络设备的BGP路由信息后,在向下游网络设备继续通告BGP路由信息之前,根据所述属性信息的指示,不对该下一跳地址进行路由迭代处理,避免了因为路由迭代处理不成功而终止该BGP路由信息通告,从而有助于业务的正常创建。
在一种可能的设计中,当所述属性信息指示对所述下一跳地址进行互联网协议IP迭代时,所述第一网络设备对所述下一跳地址进行IP迭代处理,其中,所述IP迭代包括普通IP迭代或者流规范FlowSpec路由迭代。
通过在通告的BGP路由信息中携带指示对下一跳地址进行IP迭代处理,避免了人工在每个网络设备上逐一配置IP迭代的操作繁琐和易出错的问题,从而节省了IP迭代配置的人工成本,并提升了网络管理的正确率和效率。
在一种可能的设计中,当所述属性信息指示对所述下一跳地址进行隧道迭代时,所述第一网络设备对所述下一跳地址进行隧道迭代处理,其中,所述隧道迭代包括多协议标记交换MPLS标签交换路径LSP隧道迭代、资源预留协议-流量工程RSVP-TE隧道迭代、分段路由-流量工程SR-TE隧道迭代、SR-BE隧道迭代或者通用路由封装GRE隧道、互联网协议第4版IPv4隧道或者互联网协议第6版IPv6隧道。
通过在通告的BGP路由信息中携带指示对下一跳地址进行隧道迭代处理,避免了人工在每个网络设备上逐一配置隧道迭代的操作繁琐和易出错的问题,从而节省了隧道迭代配置的人工成本,并提升了网络管理的正确率和效率。
在一种可能的设计中,当所述属性信息指示对所述下一跳地址进行IP和隧道迭代时,所述第一网络设备对所述下一跳地址进行IP迭代和隧道迭代处理,其中,所述IP迭代包括普通IP迭代或者FlowSpec路由迭代,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
通过在通告的BGP路由信息中携带指示对下一跳地址进行IP和隧道迭代处理,避免了人工在每个网络设备上逐一配置IP和隧道迭代的操作繁琐和易出错的问题,从而节省了IP和隧道迭代配置的人工成本,并提升了网络管理的正确率和效率。
进一步,通过将属性信息分为IP迭代、隧道迭代、IP和隧道迭代、不迭代,灵活地实现各种路由迭代方式,提高了路由迭代处理的灵活性。
在一种可能的设计中,所述属性信息为BGP扩展团体属性,所述BGP扩展团体属性包括类型Type字段和标志Flag字段,其中,所述Type字段指示对所述下一跳地址的路由迭代进行控制,所述标志Flag字段控制对所述下一跳地址进行路由迭代处理的方式,所述方式包括以下各项中的任一项:不迭代、IP迭代、隧道迭代、IP和隧道迭代。
通过在BGP扩展团体属性中扩展新的类型来控制路由迭代的方式,提供了一种简便且扩展性较好的方法,有助于简便的实施发明方案、兼容性好。
在一种可能的设计中,所述BGP扩展团体属性还包括第一值Value字段和第二Value字段,所述第一Value字段指示所述IP迭代的类型,所述IP迭代的类型包括所述普通IP迭代或者所述FlowSpec路由迭代,所述第二Value字段指示所述隧道迭代的类型,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
通过Value字段可以精细的控制IP迭代或隧道迭代的具体类型,通过进一步将Value字段细分为第一Value字段和第二Value字段既可以分别控制IP迭代或隧道迭代的具体类型,又可以同时精细地控制IP和隧道迭代的具体类型,提高了路由迭代控制的精细度。
第二方面,本申请的实施例提供一种控制路由迭代的方法。依照该方法,第二网络设备获得边界网关协议BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,所述属性信息指示第一网络设备对所述下一跳地址进行路由迭代处理的方式。所述第二网络设备向所述第一网络设备发送所述BGP路由信息。
通过在通告的BGP路由信息中携带用来控制路由迭代方式的属性信息,使得该属性信息随着BGP路由通告消息散播到网络中的相关网络设备上,避免了人工在每个网络设备上逐一配置路由迭代策略的操作繁琐和易出错的问题,从而节省了人工,提升了网络管理的正确率和效率。
在一种可能的设计中,所述对所述下一跳地址进行路由迭代处理的方式包括以下方式中的一种:对所述下一跳地址不进行路由迭代处理;对所述下一跳地址进行IP迭代处理,其中,所述IP迭代包括普通IP迭代或者FlowSpec路由迭代;对所述下一跳地址进行隧道迭代处理,其中,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代;对所述下一跳地址进行所述IP迭代和所述隧道迭代处理。
通过将属性信息分为IP迭代、隧道迭代、IP和隧道迭代、不迭代,灵活地实现各种路由迭代方式,提高了路由迭代处理的灵活性。
在一种可能的设计中,所述属性信息为BGP扩展团体属性,所述BGP扩展团体属性包括类型Type字段和标志Flag字段,其中,所述Type字段指示对所述下一跳地址的路由迭代进行控制,所述标志Flag字段控制对所述下一跳地址进行路由迭代处理的方式,所述方式包括以下各项中的任一项:不迭代;IP迭代;隧道迭代;所述IP迭代和所述隧道迭代。
通过在BGP扩展团体属性中扩展新的类型来控制路由迭代的方式,提供了一种简便且扩展性较好的方法,有助于简便的实施发明方案、兼容性好。
在一种可能的设计中,所述BGP扩展团体属性还包括第一值Value字段和第二Value字段,所述第一Value字段指示所述IP迭代的类型,所述IP迭代的类型包括所述普通IP迭代或者所述FlowSpec路由迭代,所述第二Value字段指示所述隧道迭代的类型,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
通过Value字段可以精细的控制IP迭代或隧道迭代的具体类型,通过进一步将Value字段细分为第一Value字段和第二Value字段既可以分别控制IP迭代或隧道迭 代的具体类型,又可以同时精细地控制IP和隧道迭代的具体类型,提高了路由迭代控制的精细度。
在一种可能的设计中,在所述第二网络设备获得所述BGP路由信息之前还包括:
所述第二网络设备获得策略信息,所述策略信息指示所述第二网络设备在向所述第一网络设备通告的所述BGP路由信息中添加所述属性信息。
通过策略信息,提供了一种根据用户需求来使能(或激活)在BGP路由信息中添加属性信息的功能(或能力),有助于按需对网络进行管理或使用,提升网络管理的灵活性。
在一种可能的设计中,所述第二网络设备获得所述BGP路由信息包括:所述第二网络设备根据所述策略信息的指示,获得所述BGP路由信息。
通过根据策略信息的指示来确定将属性信息添加到待通告的BGP路由信息中,有助于按需管理网络,提升网络管理的灵活性。
在一种可能的设计中,所述策略信息还包括指定地址信息,所述指定地址信息指示一个地址集合,相应地,所述策略信息指示所述第二网络设备对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。
通过在所述策略信息中包含指定地址信息,可以针对一定地址范围内的BGP路由进行路由迭代控制,丰富了技术实施的手段,提高了使用的灵活性。
在一种可能的设计中,所述第二网络设备获得所述BGP路由信息包括:所述第二网络设备根据所述策略信息的指示,当确定所述目的地址在所述地址集合内时,获得所述BGP路由信息。
通过根据策略信息的指示来确定在符合要求的待通告的BGP路由信息中添加属性信息,有助于按需管理网络,提升网络管理的灵活性。
在一种可能的设计中,所述第二网络设备获得所述策略信息包括下述方式中的至少一种:所述第二网络设备根据命令行配置获得所述策略信息;所述第二网络设备接收来自控制管理设备的消息,所述消息包括所述策略信息;所述第二网络设备自身运行算法软件自动生成所述策略信息。
通过提供多种获取所述策略信息的途径,丰富了技术实施的手段,提高了易用性。
第三方面,本申请的实施例提供一种控制路由迭代的方法。依照该方法,控制管理设备生成消息,所述消息包括策略信息,所述策略信息指示第二网络设备在向第一网络设备通告的边界网关协议BGP路由信息中添加属性信息;所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和所述属性信息;所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式。所述控制管理设备向所述第二网络设备发送消息。
通过策略信息,提供了一种根据用户需求来使能(或激活)在BGP路由信息中添加属性信息的功能(或能力),有助于按需对网络进行管理或使用,提升网络管理的灵活性。
在一种可能的设计中,所述策略信息还包括指定地址信息,所述指定地址信息指示一个地址集合,相应地,所述策略信息指示所述第二网络设备对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。
通过在所述策略信息中包含指定地址信息,可以针对一定地址范围内的BGP路由进行路由迭代控制,丰富了技术实施的手段,提高了使用的灵活性。
第四方面,本申请的实施例提供一种网络设备,用作第一网络设备。所述第一网络设备包括存储器和与所述存储器相连的处理器。所述处理器用于执行所述存储器中的计算机可读指令从而执行第一方面或第一方面的任意可能的实现方式中的方法。
第五方面,本发明提供一种计算机可读介质,包括指令,当其在计算机上运行时,使得计算机执行第一方面或第一方面的任意可能的实现方式中的方法。
第六方面,本申请的实施例提供一种网络设备,用作第二网络设备。所述第二网络设备包括存储器和与所述存储器相连的处理器。所述处理器用于执行所述存储器中的计算机可读指令从而执行第二方面或第二方面的任意可能的实现方式中的方法。
第七方面,本发明提供一种计算机可读介质,包括指令,当其在计算机上运行时,使得计算机执行第二方面或第二方面的任意可能的实现方式中的方法。
第八方面,本申请的实施例提供一种控制管理设备。所述控制管理设备包括存储器和与所述存储器相连的处理器。所述处理器用于执行所述存储器中的计算机可读指令从而执行第三方面或第三方面的任意可能的实现方式中的方法。
第九方面,本发明提供一种计算机可读介质,包括指令,当其在计算机上运行时,使得计算机执行第三方面或第三方面的任意可能的实现方式中的方法。
第十方面,本发明提供一种系统,所述系统包括第四方面或第五方面的第一网络设备和第六方面或第七方面的第二网络设备。
第十一方面,本发明提供一种系统,所述系统包括第六方面或第七方面的第二网络设备和第八方面或第九方面的控制管理设备。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其它的附图。
图1所示为本申请实施例中一种网络应用场景示意图;
图2所示为本申请实施例中一种控制路由迭代的方法流程图;
图3所示为本申请实施例中一种字段格式示意图;
图4所示为本申请实施例中一种端到端隧道承载业务的应用场景示意图;
图5a所示为本申请实施例中一种端到端隧道承载VPN业务的应用场景示意图;
图5b所示为本申请实施例中另一种端到端隧道承载VPN业务的应用场景示意图;
图5c所示为本申请实施例中一种端到端隧道承载IPv6业务的应用场景示意图;
图6所示为本申请实施例中的第一网络设备600的示意图;
图7所示为本申请实施例中的第一网络设备700的示意图;
图8所示为本申请实施例中的控制管理设备800的示意图;
图9所示为本申请实施例中的一种系统900的示意图;
图10所示为本申请实施例中的另一种系统1000的示意图。
具体实施方式
下面将结合附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例描述的网络架构以及业务场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
在介绍本发明实施例的技术方案之前,先对本发明实施例的应用场景进行示例性说明。本发明应用于使用BGP进行路由通告的网络中,该网络中包括网络设备,所述网络设备是执行路由转发功能的设备,可以是路由器、交换机、转发器等设备。所述路由器、交换机、转发器可以是物理设备,也可以是基于虚拟化技术实现的虚拟设备(如,虚拟服务器、虚拟路由器、虚拟交换机、虚拟转发器)。根据网络设备在网络中部署的位置和角色不同,所述网络设备也可以称为运营商边缘(Provider Edge,PE)设备、用户边缘(Customer Edge,CE)设备、路由反射器(Route Reflector,RR)、自治系统边界路由器(Autonomous System Border Router,ASBR)等。
图1所示为一个BGP路由通告的应用场景示意图。该应用场景包括三个AS,分别是AS1、AS2和AS3。AS1包括网络设备1和网络设备2。AS1、AS2和AS3之间通过BGP进行自治系统间的路由信息通告。BGP路由信息包括目的地址、去往所述目的地址的下一跳地址。例如,该目的地可以被承载在BGP定义的多协议网络层可达信息(Multiprotocol Reachable NLRI,即MP_REACH_NLRI)属性中,该下一跳地址可以被 承载在BGP定义的下一跳(英文:NEXT_HOP)属性中。有关MP_REACH_NLRI属性和NEXT_HOP属性的详细描述,请参见国际互联网工程任务组(Internet Engineering Task Force,IETF)发布的征求意见(Request For Comments,RFC)4271,该文档与此相关部分的内容好像整体复制一般以引入的方式并入(incorporated by reference)本文本中,对于其中与本申请矛盾或冲突的描述,以本申请的描述为准。本文本中,此处为了简洁,不再赘述。该目的地址可以为互联网协议第4版(Internet Protocol version4,IPv4)地址、IPv4前缀,互联网协议第6版(Internet Protocol version 6,IPv6)地址、IPv6前缀,还可以为虚拟专用网(Virtual Private Network,VPN)的地址(私网地址),例如,VPN-IPv4地址、VPN-IPv6地址、以太网虚拟专用网(Ethernet Virtual Private Network,EVPN)中的介质访问控制(Media Access Control,MAC)地址。该目的地址还可以为其它形式的地址,此处不做限定。
图1中网络设备2接收到一条来自AS2的BGP路由信息(例如,目的地址为IPv4地址:10.10.10.10/32)通告后,进行路由迭代处理通过后,更换该BGP路由信息中的下一跳地址为自己的地址(即网络设备2的地址),然后继续向AS3通告该BGP路由信息。需要说明的是,路由迭代是指迭代路由查找(英文:recursive route lookup),具体地,是针对NEXT_HOP属性中的互联网协议(Internet Protocol,IP)地址进行迭代路由查找的操作。迭代路由查找包括迭代IP查找和迭代隧道查找。当一个网络设备接收到BGP路由信息时,如果NEXT_HOP属性中的IP地址是一个与该网络设备非直连的下一跳地址时,需要对该NEXT_HOP属性中的IP地址进行迭代路由查找来确定直连(英文:immediate或者direct)下一跳地址(即迭代IP查找)或者隧道标识(即迭代隧道查找),以确认去往该NEXT_HOP属性中的IP地址的路由是否可达。
路由迭代可以分为IP迭代和隧道迭代。所述IP迭代是指所述迭代IP查找,即对该NEXT_HOP属性中的IP地址进行迭代路由查找来确定直连下一跳地址。所述IP迭代可以包括普通IP迭代或者FlowSpec路由迭代。所述普通IP迭代是指进行所述迭代IP查找时,在内部网关协议(Interior Gateway Protocol,IGP)、BGP等动态路由协议或静态路由协议生成的IP路由表中进行查找。所述FlowSpec路由迭代是指进行迭代IP查找时,在FlowSpec协议生成的FlowSpec路由表中进行查找。所述隧道迭代是指所述迭代隧道查找,即对该NEXT_HOP属性中的IP地址进行所述迭代路由查找来确定隧道标识,所述隧道标识用于标识一条隧道或多条隧道(例如,多条隧道用于负载分担)。所述隧道迭代包括对各种类型隧道的迭代,通常包括但不限定多协议标记交换(Multi-Protocol Label Switching,MPLS)标签交换路径(Label Switched Path,LSP)隧道迭代、资源预留协议-流量工程(Resource Reservation Protocol-Traffic Engineering,RSVP-TE)隧道迭代、分段路由-流量工程(Segment Routing-Traffic Engineering,SR-TE)隧道迭代、分段路由尽力而为(Segment Routing-Best Effort,SR-BE)隧道迭代、通用路由封装(Generic Routing Encapsulation,GRE)隧道迭代、IPv4隧道迭代或者IPv6隧道迭代等。所述MPLS LSP隧道迭代是指进行所述迭代隧道查找时,在MPLS LSP协议生成的隧道表(或隧道列表)中进行查找。同理,所述RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代是指 进行所述迭代隧道查找时,分别在RSVP-TE、SR-TE、SR-BE、GRE、IPv4或者IPv6协议生成的隧道表(或隧道列表)中进行查找。
本发明实施例中提供了一种控制路由迭代的方法,通过在通告的BGP路由信息中携带用来控制路由迭代方式的属性信息,使得该属性信息随着BGP路由通告消息散播到网络中的相关网络设备上,避免了人工在每个网络设备上逐一配置路由迭代策略的操作繁琐和易出错的问题,从而节省了人工,提升了网络管理的正确率和效率。
下面基于图1的应用场景对本发明实施例进一步详细说明。下文图2中的第一网络设备可以为图1中的网络设备1,第二网络设备可以为图1中的网络设备2,控制管理设备可以为图1中的控制管理设备。
如图2所示为本发明实施例的控制路由迭代方法的流程示意图,该方法包括以下内容。
201、控制管理设备生成消息,所述消息包括策略信息,所述策略信息指示所述第二网络设备在向第一网络设备通告的BGP路由信息中添加属性信息。所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和所述属性信息。所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式。
202、所述控制管理设备向第二网络设备发送所述消息。
203、所述第二网络设备接收所述消息,获取并保存所述策略信息。
以图1示例,控制管理设备根据用户的需求,生成并向网络设备2发送消息。网络设备2接收该消息,从该消息中获取策略信息。该策略信息指示所述网络设备2在向网络设备1通告的BGP路由信息中添加属性信息。该属性信息指示网络设备1对该BGP路由信息中的下一跳地址(例如,为网络设备2的地址)进行路由迭代处理的方式。需要说明的是,用户是指网络的运营者、管理者或者使用者。用户的需求可以是使用网络或者管理网络等的需求。用户的需求可以是人工在控制管理设备上配置输入的,也可以是控制管理设备通过接收其它应用服务器(如第三方应用服务器)的需求消息后自动获得的,还可以是其它方式,本文不做限定。
通过策略信息,提供了一种根据用户需求来使能(或激活)在BGP路由信息中添加属性信息的功能(或能力),有助于按需对网络进行管理或使用,提升网络管理的灵活性。
在一个具体的实施例中,所述策略信息还包括指定地址信息,所述指定地址信息指示一个地址集合,相应地,所述策略信息指示所述第二网络设备对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。所述第二网络设备根据所述策略信息的指示,对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。
以图1示例,网络设备2要向网络设备1通告的目的地址为10.10.10.10/32。如果所述地址集合为{10.10.10.10/32,50.1.1.1/32,60.1.1.1/32,……},则所述目的地址在 所述地址集合中。因此,网络设备2接收来自所述控制管理设备的消息,从该消息中获取策略信息。该策略信息指示所述网络设备2对目的地址在所述地址集合内的、在向网络设备1通告的BGP路由信息中添加所述属性信息。该属性信息指示网络设备1对该BGP路由信息中的下一跳地址(例如,为网络设备2的地址)进行路由迭代处理的方式。网络设备2根据该策略信息的指示,当确定所述目的地址(10.10.10.10/32)在所述地址集合内时,对所述目的地址为10.10.10.10/32的BGP路由信息中添加所述属性信息。
通过在所述策略信息中包含指定地址信息,可以针对一定地址范围内的BGP路由进行路由迭代控制,丰富了技术实施的手段,提高了使用的灵活性。
需要说明的是,所述消息可以是通过管理通道发送,也可以是通过控制通道协议发送。目前常用的管理通道协议,例如,可以包括:简单网络管理协议(SNMP,Simple Network Management Protocol),网络配置协议(Network Configuration Protocol,NETCONF)等。目前常用的控制通道协议,例如,可以包括:开放流(英文:OpenFlow)协议、路径计算通信协议(Path Computation Element Communication Protocol,PCEP)、边界网关协议(Border Gateway Protocol,BGP)、路由系统接口(Interface to the Routing System,I2RS)等。
还需要说明的是,所述第一网络设备获得所述策略信息的方式,除了通过接收来自所述控制管理设备的消息来获取以外,还可以通过下述至少一种方式来实现:
1)所述第一网络设备根据命令行配置获得所述策略信息。例如,管理员登陆到所述第一网络设备上通过命令行进行配置操作。
2)所述第一网络设备自身运行算法软件自动生成所述策略信息。
通过提供多种获取所述策略信息的途径,丰富了技术实施的手段,提高了易用性。
204、所述第二网络设备获得BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,所述属性信息指示第一网络设备对所述下一跳地址进行路由迭代处理的方式。
所述第二网络设备获得所述BGP路由信息(携带了所述属性信息)的方式可以有多种。例如:
方式一、所述第二网络设备是发起该BGP路由信息通告的起始设备,此时,第二网络设备生成携带了所述属性信息的所述BGP路由信息。
方式二、所述第二网络设备作为中转节点,接收到来自其它网络设备的未携带所述属性信息的BGP路由信息(即中转的BGP路由信息)通告后,将所述属性信息添加到该中转的BGP路由信息中继续向前通告。该中转的BGP路由信息中携带了所述属性信息。
在一个具体的实施例中,所述第二网络设备可以根据软件代码的执行操作来直接获得所述BGP路由信息。此外,所述第二网络设备也可以先获得策略信息,然后根据所述策略信息获得BGP路由信息。例如,所述第二网络设备根据所述策略信息生成一个新的携带所述属性信息的BGP路由信息或者添加所述属性信息到一个待中转的 BGP路由信息中。有关获得策略信息的方式和策略信息的定义请参考上文201-203部分的描述,为了简洁,不再赘述。
以图1示例,当网络设备2接收到来自AS2的IP地址(例如,10.10.10.10/32)的路由通告时,可以直接在该BGP路由信息中增加属性信息或者根据策略信息在该BGP路由信息中增加属性信息。该BGP路由信息包括目的地址(为10.10.10.10/32)、去往所述目的地址的下一跳地址(为网络设备2自己的地址,例如,2.2.2.2/32)和所述属性信息。所述属性信息指示网络设备1对所述下一跳地址(2.2.2.2/32)进行路由迭代处理的方式。此外,当网络设备2作为路由通告的起始设备发起对IP地址(例如,80.1.1.1/32)的通告时,可以直接在该BGP路由信息中增加属性信息或者根据策略信息生成一条携带所述属性信息的BGP路由信息。该BGP路由信息包括目的地址(80.1.1.1/32)、去往所述目的地址的下一跳地址(2.2.2.2/32)和所述属性信息。
通过根据策略信息的指示来确定将属性信息添加到待通告的BGP路由信息中,有助于按需管理网络,提升网络管理的灵活性。
总之,通过在通告的BGP路由信息中携带属性信息使得路由迭代策略随着BGP路由信息的发布而散播到相应的各个网络设备上,这样只需要在少数1个或若干个网络设备上进行配置即可,节省了人工配置,提升了效率和正确率。例如图1所示,只需要在网络设备2上进行配置即可,不需要在网络设备1上再进行类似的配置,从而减少了人工配置和成本。
在另一个具体的实施例中,所述属性信息指示第一网络设备对所述下一跳地址进行路由迭代处理的方式包括但不限于以下几种。有关路由迭代的定义请参考上文图1部分的描述,此处不再赘述。
1)对所述下一跳地址进行IP迭代处理。所述IP迭代包括普通IP迭代或者FlowSpec路由迭代。以图1示例,网络设备1用网络设备2的地址(下一跳地址)到所述IP路由表或FlowSpec路由表中进行查找,如果查找到匹配的表项,则通过普通IP迭代或者FlowSpec路由迭代检查处理;如果查找不到匹配的表项,则不能通过普通IP迭代或者FlowSpec路由迭代检查处理。
通过在通告的BGP路由信息中携带指示对下一跳地址进行IP迭代处理,避免了人工在每个网络设备上逐一配置IP迭代的操作繁琐和易出错的问题,从而节省了IP迭代配置的人工成本,并提升了网络管理的正确率和效率。
2)对所述下一跳地址进行隧道迭代处理。所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。以图1示例,网络设备1用网络设备2的地址(下一跳地址)到MPLS LSP隧道表、RSVP-TE隧道表、SR-TE隧道表、SR-BE隧道表、GRE隧道迭代隧道表、IPv4隧道表或者IPv6隧道表中进行查找,如果查找到匹配的表项,则通过相应的隧道迭代检查处理;如果查找不到匹配的表项,则不能通过相应的隧道迭代检查处理。
通过在通告的BGP路由信息中携带指示对下一跳地址进行隧道迭代处理,避免了人工在每个网络设备上逐一配置隧道迭代的操作繁琐和易出错的问题,从而节省了隧 道迭代配置的人工成本,并提升了网络管理的正确率和效率。
3)对所述下一跳地址进行所述IP迭代和所述隧道迭代处理。也就是,既做所述IP迭代处理,又做所述隧道迭代处理。以图1示例,网络设备1用网络设备2的地址(下一跳地址)即进行上述1)所示的IP迭代检查处理,也进行上述2)所示的隧道迭代检查处理。如果两种迭代检查处理都通过了,则网络设备1确定通过所述IP迭代和所述隧道迭代处理。如果两种迭代检查中有至少一种处理没有通过,则网络设备1确定未能通过所述IP迭代和所述隧道迭代处理。
通过在通告的BGP路由信息中携带指示对下一跳地址进行IP和隧道迭代处理,避免了人工在每个网络设备上逐一配置IP和隧道迭代的操作繁琐和易出错的问题,从而节省了IP和隧道迭代配置的人工成本,并提升了网络管理的正确率和效率。
4)对所述下一跳地址不进行路由迭代处理。以图1示例,在某些情况下,网络设备1可以不用网络设备2的地址(下一跳地址)进行任何迭代路由检查。在下文图4至图5c部分,将详细描述在跨域端到端隧道承载业务的应用场景中,跨域网络中的非边界网络设备接收到来自上游网络设备的BGP路由信息后,在向下游网络设备继续通告BGP路由信息之前,不对该下一跳地址进行路由迭代处理的方法,有助于业务的正常创建。需要说明的是,有关非边界网络设备的解释请见下文跨域网络部分的描述,有关上游、下游的解释请见下文图4部分的描述,此处不再赘述。
通过将属性信息分为IP迭代、隧道迭代、IP和隧道迭代、不迭代,灵活地实现各种路由迭代方式,提高了路由迭代处理的灵活性。
在又一个具体的实施方式中,所述属性信息为BGP扩展团体(英文:Extended_Communities)属性。有关Extended_Communities属性的详细描述,请参见IETF发布的征求意见RFC4271,该文档与此相关部分的内容好像整体复制一般以引入的方式并入(incorporated by reference)本文本中,对于其中与本申请矛盾或冲突的描述,以本申请的描述为准。此处为了简洁,不再赘述。本发明实施例扩展了所述BGP扩展团体属性,增加了一种新的类型来指示对所述下一跳地址的路由迭代进行控制。如图3所示,所述BGP扩展团体属性包括类型(英文:Type)字段和标志(英文:Flag)字段,其中,所述Type字段指示对所述下一跳地址的路由迭代进行控制,所述标志Flag字段控制对所述下一跳地址进行路由迭代处理的方式,所述方式包括以下各项中的任一项:不迭代、IP迭代、隧道迭代、IP和隧道迭代。
通过在BGP扩展团体属性中扩展新的类型来控制路由迭代的方式,提供了一种简便且扩展性较好的方法,有助于简便的实施发明方案、兼容性好。
进一步,所述BGP扩展团体属性还包括值(英文:Value)字段,所述Value字段用来对所述IP迭代和所述隧道迭代的具体方式进行控制。当Flag字段指示对所述下一跳地址进行不迭代处理时,该Value字段不指示任何含义,例如,值可以为0。当Flag字段指示对所述下一跳地址进行IP迭代处理时,该Value字段指示普通IP迭代或者FlowSpec路由迭代,例如,值为1指示普通IP迭代,值为2指示FlowSpec路由迭代。当Flag字段指示对所述下一跳地址进行隧道迭代处理时,该Value字段指示 MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代等,例如,值为1指示MPLS LSP隧道迭代,值为2指示RSVP-TE隧道迭代,值为3指示SR-TE隧道迭代,值为4指示SR-BE隧道迭代,值为5指示GRE隧道迭代,值为6指示IPv4隧道迭代,值为7指示IPv6隧道迭代等,以此类推。
更进一步,所述Value字段还可以拆分成两部分,包括第一Value字段和第二Value字段。所述第一Value字段指示所述IP迭代的类型,所述IP迭代的类型包括所述普通IP迭代或者所述FlowSpec路由迭代。所述第二Value字段指示所述隧道迭代的类型,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。需要说明的是,图3的格式仅仅是一个实例,并不对每个字段的位置、长度等构成限定。
通过Value字段可以精细的控制IP迭代或隧道迭代的具体类型,通过进一步将Value字段细分为第一Value字段和第二Value字段既可以分别控制IP迭代或隧道迭代的具体类型,又可以同时精细地控制IP和隧道迭代的具体类型,提高了路由迭代控制的精细度。
205、所述第二网络设备向所述第一网络设备发送所述BGP路由信息。
以图1示例,网络设备2向网络设备1通告该目的地址为10.10.10.10/32、下一跳地址为网络设备2的地址的BGP路由信息。
206、所述第一网络设备接收所述BGP路由信息。
207、所述第一网络设备根据所述属性信息确定对所述下一跳地址进行路由迭代处理的方式。
以图1示例,网络设备1接收该BGP路由信息,并根据属性信息确定对网络设备2的地址(下一跳地址,2.2.2.2/32)进行何种路由迭代处理。
当所述属性信息指示对所述下一跳地址进行IP迭代时,所述第一网络设备对所述下一跳地址进行IP迭代处理。
以图1示例,当网络设备1确定进行IP迭代时,对网络设备2的地址进行IP迭代处理。详细请参见上文204部分的描述,此处不再赘述。
当所述属性信息指示对所述下一跳地址进行隧道迭代时,所述第一网络设备对所述下一跳地址进行隧道迭代处理。
以图1示例,当网络设备1确定进行隧道迭代时,对网络设备2的地址进行隧道迭代处理。详细请参见上文204部分的描述,此处不再赘述。
当所述属性信息指示对所述下一跳地址进行IP和隧道迭代时,所述第一网络设备对所述下一跳地址进行IP迭代和隧道迭代处理。所述IP迭代包括普通IP迭代或者FlowSpec路由迭代。所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭 代。
以图1示例,当网络设备1确定进行IP迭代和隧道迭代时,对网络设备2的地址进行IP迭代和隧道迭代处理。详细请参见上文204部分的描述,此处不再赘述。
当所述属性信息指示对所述下一跳地址不进行路由迭代时,所述第一网络设备不对所述下一跳地址进行路由迭代处理。
以图1示例,当网络设备1确定不进行迭代处理时,对网络设备2的地址不进行迭代处理。详细请参见上文204部分的描述。
此外,下文图4至图5c部分,将详细描述在跨域端到端隧道承载业务的应用场景中,网络设备使用所述属性信息控制不进行路由迭代处理的过程。
跨域端到端隧道是指一条穿过了至少两个IGP网络域的隧道,该跨域端到端隧道是一条完整的隧道,而不是通过将多条单个网络域的隧道(单个网络域的隧道是指一条只穿过一个网络域的隧道)拼接而成的分段隧道。该跨域端到端隧道是一条由两个端节点和至少一个中间节点构成的隧道,节点也可以称为网络设备。该跨域端到端隧道可以是所述两个端节点之间的一条双向隧道,也可以是由两条方向互反的单向隧道构成的双向隧道,例如从端节点A到端节点B的单向隧道1和从端节点B到端节点A的单向隧道2构成了端节点A和端节点B之间的双向隧道。该IGP网络域是一个通过IGP交换路由信息的网络,也叫IGP域。该至少两个IGP网络域构成的网络,也叫跨域网络。通常,一个AS是一个IGP网络域,但是,有时一个AS的规模比较大,网络设备的性能不足以支撑如此大规模网络的路由计算或者为了维护管理的方便,运营商也会将一个AS划分成多个IGP网络域,从而满足网络设备性能或管理的需求。
值得说明的是,该跨域的端到端隧道可以是SR-TE隧道、SR-BE隧道、RSVP-TE隧道、MPLS LSP隧道、GRE隧道、IPv4隧道(例如,在IPv6over IPv4的场景中)、IPv6隧道(例如,在IPv4over IPv6的场景中)等隧道形式,此处仅仅示例,并不做限定。此外,该端到端隧道的建立可以通过集中控制管理设备来实现,也可以通过其它方式来实现。
所述跨域网络包括多个网络设备。在所述跨域网络中与业务网络(如下文中图4所示的业务网络1和业务网络2)中的设备相连的网络设备也称为边界网络设备,不与业务网络中的设备相连的网络设备也称为非边界网络设备。
图4所示为一个跨域端到端隧道承载业务的应用场景示意图。该示意图包括3个IGP网络域,分别为IGP域1、IGP域2和IGP域3。IGP域1包括网络设备1和网络设备2,IGP域2包括网络设备2和网络设备3,IGP域3包括网络设备3和网络设备4。网络设备2联接IGP域1和IGP域2,网络设备3联接IGP域2和IGP域3。控制管理设备集中控制,在网络设备1和网络设备4之间建立穿越这三个IGP域的端到端隧道,在端到端隧道上可以承载业务网络1和业务网络2之间的业务。该端到端的隧道也称为公网隧道或外层隧道。网络设备1和网络设备2之间、网络设备2和网络设 备3之间、网络设备3和网络设备4之间分别建立BGP邻居,在该BGP邻居之间通过BGP更新(英文:Update)消息通告BGP业务路由信息,实现业务创建。基于网络设备1向网络设备4通告BGP业务路由的方向,前面的节点称为后面节点的上游节点,后面的节点称为前面节点的下游节点,例如,网络设备2为网络设备1的下游节点,网络设备1为网络设备2的上游节点。该BGP业务路由信息中包括目的地址和下一跳地址。该业务可以是VPN业务、IPv6业务等。如果是VPN业务,则业务网络1和业务网络2为VPN的两个站点(英文:Site)网络,业务路由信息为VPN路由信息。此时,该目的地址为VPN的私网地址,例如,可以为VPN-IPv4地址、VPN-IPv6地址、以太网VPN(Ethernet VPN,EVPN)中的介质访问控制(Media Access Control,MAC)地址。如果是IPv6业务,则业务网络1和业务网络2为IPv6网络,业务路由信息为IPv6路由信息,实现IPv6网络穿越IPv4网络。业务路由信息为IPv6路由信息时,该目的地址为IPv6地址。需要说明的是,如果该目的地址为IP地址(包括IPv4地址和IPv6地址)时,也称为IP地址前缀或IP前缀。需要说明的是,在图4至图5c部分的描述中,BGP路由信息也称为BGP业务路由信息。
本发明在图4所示的跨域端到端隧道(下文也简称为跨域隧道)承载业务的应用场景中实施的方法与上文图1至图3部分所述一致,图2中的所述第二网络设备为图4中的网络设备1,所述第一网络设备为图4中的网络设备2、网络设备3、网络设备4,所述控制管理设备为图4中的控制管理设备。在跨域隧道所在的跨域网络中,为了保证创建跨域隧道承载的业务的可靠性,在将业务与该跨域隧道关联时,需要确保该跨域隧道是可达的。为此,需要在该跨域隧道的端节点网络设备4上能够用端节点网络设备1的地址迭代到从网络设备4到网络设备1的跨域隧道上,如果迭代成功,再将该业务与该跨域隧道关联,完成业务创建。如果迭代不成功,则终止业务创建。
为了能够在跨域隧道的尾端节点(如网络设备4)上能够迭代到头端节点(如网络设备1),需要将头端节点的地址携带在BGP业务路由信息中的下一跳地址中,随着BGP业务路由的散播,发布到跨域隧道的尾端节点上,并且中间节点(如网络设备2和3)在处理BGP业务路由信息时不更改下一跳地址为各自的地址。而且,在这种情况下,网络设备2和3上也不用网络设备1的地址(作为下一跳地址)进行路由迭代处理。从而避免迭代路由查找不通过而终止BGP业务路由信息的通告,造成通告的信息无法到达网络设备4,无法创建业务。例如,图1中的网络设备3如果用网络设备1的地址作为下一跳地址进行IP迭代时,无法查找到目的地址为网络设备1的地址对应的路由表项,因为网络设备1是属于IGP域1中的设备,网络设备1的路由只在IGP域1的范围内,只在IGP域1的路由表中,而IGP域2中没有去往网络设备1的路由,即在IGP域2的路由表中没有网络设备1的地址对应的路由表项。网络设备3如果用网络设备1的地址作为下一跳地址进行隧道迭代,因为处于跨域端到端隧道的中间节点位置,所以也无法迭代到跨域端到端隧道上,即在隧道转发表中,无法查找到网络设备1的地址(下一跳地址)对应的隧道标识。因此,网络设备3进行路由迭代不能成功。
通过在BGP业务路由信息中携带属性信息,并且随着通告消息的散播将迭代路 由方式散播到相应的网络设备上,提供了一种更精准的控制方式,节省了人工成本,提升了效率和准确率。以图4示例,网络设备1直接或者根据策略信息(例如,通过接收控制管理设备的消息或者用户命令行的配置获取策略消息)获得携带指示不进行路由迭代处理的属性信息的BGP业务路由信息(目的地址为业务网络1中的地址,下一跳地址为网络设备1的地址),向网络设备2发送该BGP业务路由信息。网络设备2收到后,解析出该属性信息,根据该属性信息的指示不对该网络设备1的地址(下一跳地址)进行路由迭代处理。同理,网络设备2继续向网络设备3发送该BGP业务路由信息,网络设备3根据该属性信息,不对该网络设备1的地址进行路由迭代处理。网络设备4收到该BGP业务路由信息后,根据该属性信息也不进行路由迭代处理。需要说明的是,网络设备4虽然在收到BGP业务路由信息时,根据该属性信息不进行迭代处理,但是在创建业务转发表项时,需要增加迭代路由查找处理,以确保在该跨域隧道可达的情况下,再创建业务,提升创建的可靠性。
为了更清晰的理解跨域端到端隧道承载各种业务的具体应用场景,下面图5a至图5c分别举例示出了承载VPN业务和IPv6业务的具体应用场景。下文结合具体的应用场景,对本发明实施例进一步解释说明。
图5a所示为跨域端到端隧道承载VPN业务的应用场景示意图。在该场景中,一个AS包括三个IGP网络域,VPN Site通过用户边缘(Customer Edge,CE)设备(下文中CE设备简称为CE)接入该AS的网络。控制管理设备集中控制,在运营商边缘(Provider Edge,PE)设备(下文中PE设备简称为PE)之间建立了穿过这三个IGP网络域的端到端隧道来承载VPN业务。例如,在PE1和PE2之间建立了一条SR-TE隧道(公网隧道),CE1和CE2分别位于VPN1的Site1和Site 2中,Site 1和Site 2之间可以通过该SR-TE隧道承载VPN1的业务。PE1和路由反射器(Route Reflector,RR)1之间、RR1和RR2之间、RR2和PE2之间分别建立BGP邻居,CE1和CE2的VPN路由信息通过BGP Update消息在PE1-RR1-RR2-PE2的BGP邻居间通告、散播。从而在PE1和PE2之间的公网隧道(即外层隧道)之上建立了VPN私网隧道(即内层隧道),实现了跨地域的Site1和Site2之间的VPN1业务互通。
本发明在图5a所示的VPN业务场景中实施的方法与上文图4部分所述一致,不同的是通告的BGP业务路由信息具体为VPN1里的私网路由。图2中的所述第二网络设备为图5a中的PE1,图2中的所述第一网络设备为图5a中的RR1、RR2、PE2,图2中的控制管理设备为图5a中的控制管理设备。RR1和RR2作为跨域网络中的非边界网络设备,通过接收该BGP业务路由信息,并从中获取控制路由迭代方式的属性信息,根据该属性信息的指示不进行迭代路由查找处理。RR1和RR2在发布BGP VPN路由信息时,不更新下一跳为自己。PE1作为跨域网络中的边界网络设备,发布BGP VPN路由信息时,需要更新下一跳为自己。PE2作为跨域网络中的边界网络设备,需要在创建VPN业务转发表项时,进行路由迭代处理,以确保迭代到的PE2到PE1的跨域端到端隧道是可达的。这样可以确保PE1发布的BGP VPN路由信息能够经过RR1、RR2正常散播到达PE2,并且可以确保PE2到PE1的端到端隧道是可达的,再完成 VPN1业务的创建,有助于VPN1业务的可靠创建。
图5b所示为另一个跨域端到端隧道承载VPN业务的应用场景示意图。该场景与图5a相似,不同的是该场景包括三个AS,AS之间通过自治系统边界路由器(英文:Autonomous System Border Router,ASBR)互联。每个AS是一个IGP网络域,AS之间也可以看作一个IGP网络域。控制管理设备集中控制,在PE之间建立穿过这三个AS的端到端隧道来承载VPN业务。例如,在PE1和PE2之间建立了一条RSVP-TE隧道(公网隧道)。Site 1和Site 2之间可以通过该RSVP-TE隧道承载VPN1的业务。CE1分别接入到AS1的PE1和PE3,CE2分别接入到AS3的PE2和PE4。PE1和PE3分别与ASBR1和ASBR5之间建立BGP邻居、ASBR1和ASBR5分别与ASBR3和ASBR7之间建立BGP邻居,ASBR3和ASBR7分别与ASBR4和ASBR8之间建立BGP邻居,ASBR4和ASBR8分别与PE2和PE4之间建立BGP邻居。Site1和Site2之间的VPN路由(也叫私网路由)信息承载在BGP Update消息中通过这些BGP邻居依次通告、散播。从而在PE1和PE2之间的公网隧道(即外层隧道)之上建立了VPN私网隧道(即内层隧道),实现了跨地域的Site1和Site2之间的VPN1业务互通。值得说明的是,与CE可以双归接入到PE同理,为了可靠性的保证,PE1和PE3与PE2和PE4之间的跨域端到端隧道也可以建立多条,此处仅以一条示例,但并不限定。
本发明在图5b所示的VPN业务场景中实施的方法与上文图4部分和图5a部分所述一致,只是应用在跨多个AS域的场景中。图2中的所述第二网络设备可以为图5b中的PE1、PE3,图2中的所述第一网络设备为图5b中的ASBR1、ASBR2、ASBR3、ASBR4、ASBR5、ASBR6、ASBR7、ASBR8、PE2、PE4,图2中的控制管理设备为图5b中的控制管理设备。具体方法请参考上文相关部分,为了简洁,不再赘述。
图5c所示为一个跨域端到端隧道承载IPv6业务的应用场景示意图。该场景中一个AS包括三个IGP网络域,这三个IGP网络域为基于IPv4的网络。IPv6网络1和IPv6网络2接入该AS的网络,Router5和Router6分别位于IPv6网络1和IPv6网络2中。控制管理设备集中控制,在路由器(Router)1和Router4之间建立了穿过这三个IGP网络域的端到端IPv4隧道来承载IPv6业务。Router1和Router2之间、Router2和Router3之间、Router3和Router4之间分别建立BGP邻居,IPv6网络1和IPv6网络2的IPv6路由信息通过BGP Update消息在Router1-Router2-Router3-Router4的BGP邻居间通告、散播。从而在Router1和Router4之间的IPv4隧道(即外层隧道)之上建立了IPv6隧道(即内层隧道),实现了IPv6网络1和IPv6网络2之间的互通。
本发明在图5c所示的IPv6业务场景中实施的方法与上文图4部分所述一致,不同的是通告的BGP业务路由信息具体为IPv6网络里的IPv6地址,路由迭代的隧道为跨域端到端IPv4隧道。图2中的所述第二网络设备可以为图5c中的Router1,图2中的所述第一网络设备为图5c中的Router2、Router3、Router4,图2中的控制管理设备为图5c中的控制管理设备。Router2和Router3作为跨域网络中的非边界网络设备,通过接收该BGP业务路由信息,并从中获取控制路由迭代方式的属性信息,根据该属性信息的指示不进行迭代路由查找处理。Router2和Router3在发布BGP IPv6路由信息时,不更新下一跳为自己。Router 4作为跨域网络中的边界网络设备,收到BGP IPv6 路由信息时,可以根据属性信息的指示不进行迭代路由查找处理。但是在创建IPv6over IPv4业务转发表项时,还是需要进行路由迭代处理,以确保迭代到的Router4到Router1的跨域端到端隧道是可达的。这样可以确保Router1发布的BGP IPv6路由信息能够经过Router2、Router3正常散播到达Router4,并且可以确保Router4到Router1的端到端隧道是可达的,再完成IPv6over IPv4业务的创建,有助于IPv6over IPv4业务的可靠创建。
需要说明的是,图5c以IPv6over IPv4业务场景举例,反之,IPv4over IPv6业务也是同理,不同的是,跨域隧道为IPv6隧道,通告的BGP业务路由信息为IPv4路由信息。为了简洁,不再赘述。
图6所示为本申请实施例中的网络设备600的示意图。网络设备600用作第一网络设备,包括处理器610,与所述处理器610耦接的存储器620,收发器630。处理器610可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和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)或其任意组合。处理器610可以是指一个处理器,也可以包括多个处理器。收发器630用于接收来自第二网络设备的BGP路由信息,并将所述报文发送给处理器610,以便用于后续的操作处理。所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息。所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式。存储器620可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(英文:flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合。存储器620中存储有计算机可读指令,所述计算机可读指令包括至少一个软件模块,例如确定模块622。处理器610执行各个软件模块后可以按照各个软件模块的指示进行相应的操作。在本实施例中,一个软件模块所执行的操作实际上是指处理器610根据所述软件模块的指示而执行的操作。确定模块622可以用于根据所述属性信息确定对所述下一跳地址进行路由迭代处理的方式。此外,处理器610执行存储器620中的计算机可读指令后,可以按照所述计算机可读指令的指示,执行第一网络设备可以执行的全部操作,例如第一网络设备在与图1至图5c对应的实施例中执行的操作。
图7所示为本申请实施例中的网络设备700的示意图。网络设备700用作第二网络设备,包括处理器710,与所述处理器710耦接的存储器720,收发器730。处理器710可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和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)或其任意组合。处理器710可以是指一个处理器,也可以包括多个处理器。收发器730用于根据处理器710的操作指令,向所述第一网络设备发送BGP路由信息。存储器720可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(英文:flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合。存储器720中存储有计算机可读指令,所述计算机可读指令包括至少一个软件模块,例如获得模块722。处理器710执行各个软件模块后可以按照各个软件模块的指示进行相应的操作。在本实施例中,一个软件模块所执行的操作实际上是指处理器710根据所述软件模块的指示而执行的操作。获得模块722可以用于获得所述BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,所述属性信息指示第一网络设备对所述下一跳地址进行路由迭代处理的方式。此外,处理器710执行存储器720中的计算机可读指令后,可以按照所述计算机可读指令的指示,执行第二网络设备可以执行的全部操作,例如,第二网络设备在与图1至图5c对应的实施例中执行的操作。
图8所示为本申请实施例中的控制管理设备800的示意图。控制管理设备800包括处理器810,与所述处理器810耦接的存储器820,收发器830。处理器810可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和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)或其任意组合。处理器810可以是指一个处理器,也可以包括多个处理器。存储器820可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(英文:flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合。存储器820中存储有计算机可读指令,所述计算机可读指令包括至少一个软件模块,例如消息生成模块822。处理器810执行各个软件模块后可以按照各个软件模块的指示进行相应的操作。在本实施例中,一个软件模块所执行的操作实际上是指处理器810根据所述软件模块的指示而执行的操作。消息生成模块822用于生成消息,所述消息包括策略信息,所述策略信息指示第二网络设备在向所述第一网络设备通告的BGP路由信息中携带属性信息。所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和所述属性信息。所述属性信息指示第一网络设备对所述下一跳地址进行路由迭代处理的方式。收发器830 用于向所述第二网络设备发送所述消息。此外,处理器810执行存储器820中的计算机可读指令后,可以按照所述计算机可读指令的指示,执行控制管理设备可以执行的全部操作,例如,控制管理设备在与图1至图5c对应的实施例中执行的操作。
如图9所示,系统900包括第一网络设备910和第二网络设备920。第一网络设备910为上述图6所述的第一网络设备,第二网络设备920为上述图7所述的第二网络设备。有关系统900中各设备的详细描述,请参见上述图6和图7等相关章节,此处不再赘述。
如图10所示,系统1000包括第二网络设备1010和控制管理设备1020。第二网络设备1010为上述图7所述的第二网络设备,控制管理设备1020为上述图8所述的控制管理设备。有关系统1000中各设备的详细描述,请参见上述图7和图8等相关章节,此处不再赘述。
值得说明的是,本发明实施例中第一网络设备中的“第一”,第二网络设备中的“第二”,仅用于区分两个网络设备,并非表示这两个网络设备之间具有顺序、层级或者其它依赖关系。
应理解,本领域技术人员在阅读本申请文件的基础上,可以针对本申请实施例中所描述的可选的特征、步骤或方法进行不需要付出创造性的组合,都属于本申请公开的实施例,只是由于描述或行文的简单没有重复赘述不同组合。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

Claims (41)

  1. 一种控制路由迭代的方法,其特征在于,所述方法包括:
    第一网络设备接收来自第二网络设备的边界网关协议BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,其中,所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式;
    所述第一网络设备根据所述属性信息确定对所述下一跳地址进行路由迭代处理的方式。
  2. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    当所述属性信息指示对所述下一跳地址不进行路由迭代时,所述第一网络设备不对所述下一跳地址进行路由迭代处理。
  3. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    当所述属性信息指示对所述下一跳地址进行互联网协议IP迭代时,所述第一网络设备对所述下一跳地址进行IP迭代处理,其中,所述IP迭代包括普通IP迭代或者流规范FlowSpec路由迭代。
  4. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    当所述属性信息指示对所述下一跳地址进行隧道迭代时,所述第一网络设备对所述下一跳地址进行隧道迭代处理,其中,所述隧道迭代包括多协议标记交换MPLS标签交换路径LSP隧道迭代、资源预留协议-流量工程RSVP-TE隧道迭代、分段路由-流量工程SR-TE隧道迭代、SR-BE隧道迭代或者通用路由封装GRE隧道、互联网协议第4版IPv4隧道或者互联网协议第6版IPv6隧道。
  5. 根据权利要求1所述的方法,其特征在于,所述方法还包括:
    当所述属性信息指示对所述下一跳地址进行IP和隧道迭代时,所述第一网络设备对所述下一跳地址进行IP迭代和隧道迭代处理,其中,所述IP迭代包括普通IP迭代或者FlowSpec路由迭代,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
  6. 根据权利要求1至5任一所述的方法,其特征在于,所述属性信息为BGP扩展团体属性,所述BGP扩展团体属性包括类型Type字段和标志Flag字段,其中,所述Type字段指示对所述下一跳地址的路由迭代进行控制,所述标志Flag字段控制对所述下一跳地址进行路由迭代处理的方式,所述方式包括以下各项中的任一项:不迭代、IP迭代、隧道迭代、IP和隧道迭代。
  7. 根据权利要求6所述的方法,其特征在于,所述BGP扩展团体属性还包括第一值Value字段和第二Value字段,所述第一Value字段指示所述IP迭代的类型,所述IP迭代 的类型包括所述普通IP迭代或者所述FlowSpec路由迭代,所述第二Value字段指示所述隧道迭代的类型,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
  8. 一种控制路由迭代的方法,其特征在于,所述方法包括:
    第二网络设备获得边界网关协议BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,所述属性信息指示第一网络设备对所述下一跳地址进行路由迭代处理的方式;
    所述第二网络设备向所述第一网络设备发送所述BGP路由信息。
  9. 根据权利要求8所述的方法,其特征在于,所述对所述下一跳地址进行路由迭代处理的方式包括以下方式中的一种:
    对所述下一跳地址不进行路由迭代处理;
    对所述下一跳地址进行IP迭代处理,其中,所述IP迭代包括普通IP迭代或者FlowSpec路由迭代;
    对所述下一跳地址进行隧道迭代处理,其中,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代;
    对所述下一跳地址进行所述IP迭代和所述隧道迭代处理。
  10. 根据权利要求8或9所述的方法,其特征在于,所述属性信息为BGP扩展团体属性,所述BGP扩展团体属性包括类型Type字段和标志Flag字段,其中,所述Type字段指示对所述下一跳地址的路由迭代进行控制,所述标志Flag字段控制对所述下一跳地址进行路由迭代处理的方式,所述方式包括以下各项中的任一项:
    不迭代;
    IP迭代;
    隧道迭代;
    所述IP迭代和所述隧道迭代。
  11. 根据权利要求10所述的方法,其特征在于,所述BGP扩展团体属性还包括第一值Value字段和第二Value字段,所述第一Value字段指示所述IP迭代的类型,所述IP迭代的类型包括所述普通IP迭代或者所述FlowSpec路由迭代,所述第二Value字段指示所述隧道迭代的类型,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
  12. 根据权利要求8至11中任一项所述的方法,其特征在于,在所述第二网络设备获得所述BGP路由信息之前还包括:
    所述第二网络设备获得策略信息,所述策略信息指示所述第二网络设备在向所述第一网络设备通告的所述BGP路由信息中添加所述属性信息。
  13. 根据权利要求12所述的方法,其特征在于,所述第二网络设备获得所述BGP路由信息包括:
    所述第二网络设备根据所述策略信息的指示,获得所述BGP路由信息。
  14. 根据权利要求12所述的方法,其特征在于,所述策略信息还包括指定地址信息,所述指定地址信息指示一个地址集合,相应地,所述策略信息指示所述第二网络设备对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。
  15. 根据权利要求14所述的方法,其特征在于,所述第二网络设备获得所述BGP路由信息包括:
    所述第二网络设备根据所述策略信息的指示,当确定所述目的地址在所述地址集合内时,获得所述BGP路由信息。
  16. 根据权利要求12至15任一所述的方法,其特征在于,所述第二网络设备获得所述策略信息包括下述方式中的至少一种:
    所述第二网络设备根据命令行配置获得所述策略信息;
    所述第二网络设备接收来自控制管理设备的消息,所述消息包括所述策略信息;
    所述第二网络设备自身运行算法软件自动生成所述策略信息。
  17. 一种控制路由迭代的方法,其特征在于,所述方法包括:
    控制管理设备生成消息,所述消息包括策略信息,所述策略信息指示第二网络设备在向第一网络设备通告的边界网关协议BGP路由信息中添加属性信息;所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和所述属性信息;所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式;
    所述控制管理设备向所述第二网络设备发送消息。
  18. 根据权利要求17所述的方法,其特征在于,所述策略信息还包括指定地址信息,所述指定地址信息指示一个地址集合,相应地,所述策略信息指示所述第二网络设备对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。
  19. 一种网络设备,用作第一网络设备,其特征在于,包括:
    存储器;
    与所述存储器相连的处理器,所述处理器用于执行所述存储器中的计算机可读指令从而执行以下操作:
    接收来自第二网络设备的边界网关协议BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,其中,所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式;
    根据所述属性信息确定对所述下一跳地址进行路由迭代处理的方式。
  20. 根据权利要求19所述的第一网络设备,其特征在于,还包括:
    当所述属性信息指示对所述下一跳地址不进行路由迭代时,所述处理器不对所述下一跳地址进行路由迭代处理。
  21. 根据权利要求19所述的第一网络设备,其特征在于,还包括:
    当所述属性信息指示对所述下一跳地址进行互联网协议IP迭代时,所述处理器对所述下一跳地址进行IP迭代处理,其中,所述IP迭代包括普通IP迭代或者流规范FlowSpec路由迭代。
  22. 根据权利要求19所述的第一网络设备,其特征在于,还包括:
    当所述属性信息指示对所述下一跳地址进行隧道迭代时,所述处理器对所述下一跳地址进行隧道迭代处理,其中,所述隧道迭代包括多协议标记交换MPLS标签交换路径LSP隧道迭代、资源预留协议-流量工程RSVP-TE隧道迭代、分段路由-流量工程SR-TE隧道迭代、SR-BE隧道迭代或者通用路由封装GRE隧道、互联网协议第4版IPv4隧道或者互联网协议第6版IPv6隧道。
  23. 根据权利要求19所述的第一网络设备,其特征在于,还包括:
    当所述属性信息指示对所述下一跳地址进行IP和隧道迭代时,所述处理器对所述下一跳地址进行IP迭代和隧道迭代处理,其中,所述IP迭代包括普通IP迭代或者FlowSpec路由迭代,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
  24. 根据权利要求19至23任一所述的第一网络设备,其特征在于,所述属性信息为BGP扩展团体属性,所述BGP扩展团体属性包括类型Type字段和标志Flag字段,其中,所述Type字段指示对所述下一跳地址的路由迭代进行控制,所述标志Flag字段控制对所述下一跳地址进行路由迭代处理的方式,所述方式包括以下各项中的任一项:不迭代、IP迭代、隧道迭代、IP和隧道迭代。
  25. 根据权利要求24所述的第一网络设备,其特征在于,所述BGP扩展团体属性还包括第一值Value字段和第二Value字段,所述第一Value字段指示所述IP迭代的类型,所述IP迭代的类型包括所述普通IP迭代或者所述FlowSpec路由迭代,所述第二Value字段指示所述隧道迭代的类型,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6 隧道迭代。
  26. 一种网络设备,用作第二网络设备,其特征在于,包括:
    存储器;
    与所述存储器相连的处理器,所述处理器用于执行所述存储器中的计算机可读指令从而执行以下操作:
    获得边界网关协议BGP路由信息,所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和属性信息,所述属性信息指示第一网络设备对所述下一跳地址进行路由迭代处理的方式;
    向所述第一网络设备发送所述BGP路由信息。
  27. 根据权利要求26所述的第二网络设备,其特征在于,所述对所述下一跳地址进行路由迭代处理的方式包括以下方式中的一种:
    对所述下一跳地址不进行路由迭代处理;
    对所述下一跳地址进行IP迭代处理,其中,所述IP迭代包括普通IP迭代或者FlowSpec路由迭代;
    对所述下一跳地址进行隧道迭代处理,其中,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代;
    对所述下一跳地址进行所述IP迭代和所述隧道迭代处理。
  28. 根据权利要求26或27所述的第二网络设备,其特征在于,所述属性信息为BGP扩展团体属性,所述BGP扩展团体属性包括类型Type字段和标志Flag字段,其中,所述Type字段指示对所述下一跳地址的路由迭代进行控制,所述标志Flag字段控制对所述下一跳地址进行路由迭代处理的方式,所述方式包括以下各项中的任一项:
    不迭代;
    IP迭代;
    隧道迭代;
    所述IP迭代和所述隧道迭代。
  29. 根据权利要求28所述的第二网络设备,其特征在于,所述BGP扩展团体属性还包括第一值Value字段和第二Value字段,所述第一Value字段指示所述IP迭代的类型,所述IP迭代的类型包括所述普通IP迭代或者所述FlowSpec路由迭代,所述第二Value字段指示所述隧道迭代的类型,所述隧道迭代包括MPLS LSP隧道迭代、RSVP-TE隧道迭代、SR-TE隧道迭代、SR-BE隧道迭代、GRE隧道迭代、IPv4隧道迭代或者IPv6隧道迭代。
  30. 根据权利要求26至29中任一项所述的第二网络设备,其特征在于,在所述第二网络设备获得所述BGP路由信息之前还包括:
    所述处理器获得策略信息,所述策略信息指示所述第二网络设备在向所述第一网络设备通告的所述BGP路由信息中添加所述属性信息。
  31. 根据权利要求30所述的第二网络设备,其特征在于,所述处理器获得所述BGP路由信息包括:
    所述处理器根据所述策略信息的指示,获得所述BGP路由信息。
  32. 根据权利要求30所述的第二网络设备,其特征在于,所述策略信息还包括指定地址信息,所述指定地址信息指示一个地址集合,相应地,所述策略信息指示所述第二网络设备对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。
  33. 根据权利要求32所述的第二网络设备,其特征在于,所述处理器获得所述BGP路由信息包括:
    所述处理器根据所述策略信息的指示,当确定所述目的地址在所述地址集合内时,获得所述BGP路由信息。
  34. 根据权利要求30至33任一所述的第二网络设备,其特征在于,所述处理器获得所述策略信息包括下述方式中的至少一种:
    所述处理器根据命令行配置获得所述策略信息;
    所述处理器接收来自控制管理设备的消息,所述消息包括所述策略信息;
    所述处理器自身运行算法软件自动生成所述策略信息。
  35. 一种控制管理设备,其特征在于,包括:
    存储器;
    与所述存储器相连的处理器,所述处理器用于执行所述存储器中的计算机可读指令从而执行以下操作:
    生成消息,所述消息包括策略信息,所述策略信息指示第二网络设备在向第一网络设备通告的边界网关协议BGP路由信息中添加属性信息;所述BGP路由信息包括目的地址、去往所述目的地址的下一跳地址和所述属性信息;所述属性信息指示所述第一网络设备对所述下一跳地址进行路由迭代处理的方式;
    向所述第二网络设备发送消息。
  36. 根据权利要求35所述的控制管理设备,其特征在于,所述策略信息还包括指定地址信息,所述指定地址信息指示一个地址集合,相应地,所述策略信息指示所述第二网络设备对目的地址在所述地址集合内的、向所述第一网络设备通告的BGP路由信息中添加所述属性信息。
  37. 一种计算机可读介质,包括指令,当其在计算机上运行时,使得计算机执行 如权利要求1至7任意一项所述的方法。
  38. 一种计算机可读介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求8至16任意一项所述的方法。
  39. 一种计算机可读介质,包括指令,当其在计算机上运行时,使得计算机执行如权利要求17或18所述的方法。
  40. 一种网络系统,其特征在于,所述系统包括如权利要求19至25任一所述的第一网络设备和如权利要求26至34任一所述的第二网络设备。
  41. 一种网络系统,其特征在于,所述系统包括如权利要求26至34任一所述的第二网络设备和如权利要求35或36所述的控制管理设备。
PCT/CN2019/070685 2019-01-07 2019-01-07 控制路由迭代的方法、设备和系统 WO2020142873A1 (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201980005592.7A CN111670565B (zh) 2019-01-07 2019-01-07 控制路由迭代的方法、设备和系统
EP19908142.3A EP3886388A4 (en) 2019-01-07 2019-01-07 ROUTE ITERATION CONTROL PROCESS, DEVICE AND SYSTEM
PCT/CN2019/070685 WO2020142873A1 (zh) 2019-01-07 2019-01-07 控制路由迭代的方法、设备和系统
CN202210050452.5A CN114500369A (zh) 2019-01-07 2019-01-07 控制路由迭代的方法、设备和系统
US17/367,008 US11652737B2 (en) 2019-01-07 2021-07-02 Route recursion control method, device, and system
US18/300,056 US20230254239A1 (en) 2019-01-07 2023-04-13 Route Recursion Control Method, Device, and System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/070685 WO2020142873A1 (zh) 2019-01-07 2019-01-07 控制路由迭代的方法、设备和系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/367,008 Continuation US11652737B2 (en) 2019-01-07 2021-07-02 Route recursion control method, device, and system

Publications (1)

Publication Number Publication Date
WO2020142873A1 true WO2020142873A1 (zh) 2020-07-16

Family

ID=71520640

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/070685 WO2020142873A1 (zh) 2019-01-07 2019-01-07 控制路由迭代的方法、设备和系统

Country Status (4)

Country Link
US (2) US11652737B2 (zh)
EP (1) EP3886388A4 (zh)
CN (2) CN114500369A (zh)
WO (1) WO2020142873A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4254881A4 (en) * 2020-12-21 2024-01-17 Huawei Tech Co Ltd METHOD AND APPARATUS FOR ROUTING TRANSMISSION

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114640615B (zh) * 2020-11-30 2024-01-02 华为技术有限公司 一种路由通告方法、路由生成方法及设备
CN114650262A (zh) * 2020-12-21 2022-06-21 中国移动通信有限公司研究院 一种ip流量传输方法、装置及网络侧设备
US11658934B2 (en) * 2021-04-26 2023-05-23 Verizon Patent And Licensing Inc. Systems and methods for advertising internet protocol (IP) version 4 network layer routing information with an IP version 6 Next Hop address
CN115277526A (zh) * 2021-04-30 2022-11-01 华为技术有限公司 一种通信方法及装置
CN113259241B (zh) * 2021-05-08 2022-04-26 烽火通信科技股份有限公司 一种提升SRv6转发效率的方法与电子设备
US11924100B2 (en) * 2021-05-27 2024-03-05 Cisco Technology, Inc. Encoding local next-hop information into border gateway protocol (BGP) routes
CN113765803B (zh) * 2021-08-05 2023-10-24 新华三大数据技术有限公司 一种路由发布方法及装置、网络设备
CN117395194A (zh) * 2022-07-05 2024-01-12 中兴通讯股份有限公司 路由信息的处理方法、系统、网络设备和存储介质
CN115022242B (zh) * 2022-08-08 2022-11-18 深圳高灯计算机科技有限公司 网络层识别方法、装置、计算机设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101155118A (zh) * 2006-09-27 2008-04-02 华为技术有限公司 Bgp路由处理方法及装置
US7423974B2 (en) * 2004-04-30 2008-09-09 Alcatel Disabling mutually recursive routes
CN106878177A (zh) * 2016-12-30 2017-06-20 新华三技术有限公司 一种路由处理方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7369556B1 (en) * 1997-12-23 2008-05-06 Cisco Technology, Inc. Router for virtual private network employing tag switching
US6512487B1 (en) 2000-10-31 2003-01-28 Harris Corporation Wideband phased array antenna and associated methods
US7185107B1 (en) * 2002-10-02 2007-02-27 Cisco Technology Inc. Redirecting network traffic through a multipoint tunnel overlay network using distinct network address spaces for the overlay and transport networks
US20040177157A1 (en) * 2003-02-13 2004-09-09 Nortel Networks Limited Logical grouping of VPN tunnels
CN101340374B (zh) * 2008-08-28 2011-01-19 杭州华三通信技术有限公司 控制传输优先级的方法、系统、装置和用户网络边缘设备
CN102594657B (zh) * 2011-12-20 2016-07-06 杭州华三通信技术有限公司 一种路由迭代方法及路由交换设备
US9912577B2 (en) * 2014-04-17 2018-03-06 Cisco Technology, Inc. Segment routing—egress peer engineering (SP-EPE)
CN105721305B (zh) * 2016-01-19 2019-04-16 烽火通信科技股份有限公司 L3vpn路由迭代出口的方法
US10212100B2 (en) * 2016-09-26 2019-02-19 Huawei Technologies Co., Ltd. System and method for data transmission in uplink RAN
CN108259205B (zh) * 2016-12-29 2021-05-25 新华三技术有限公司 一种路由发布方法及网络设备
US10908499B2 (en) 2017-03-01 2021-02-02 Phase Sensitive Innovations, Inc. Two-dimensional conformal optically-fed phased array and methods of manufacturing the same
CN107017470A (zh) 2017-04-12 2017-08-04 电子科技大学 一种基于强互耦效应的低剖面宽带宽角扫描相控阵天线
CN111201672A (zh) 2017-10-11 2020-05-26 维斯普瑞公司 使端射天线和低频天线并置的系统、设备和方法
CN108900413B (zh) * 2018-06-05 2020-10-02 北京邮电大学 一种路由路径选择方法、装置、电子设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7423974B2 (en) * 2004-04-30 2008-09-09 Alcatel Disabling mutually recursive routes
CN101155118A (zh) * 2006-09-27 2008-04-02 华为技术有限公司 Bgp路由处理方法及装置
CN106878177A (zh) * 2016-12-30 2017-06-20 新华三技术有限公司 一种路由处理方法及装置

Non-Patent Citations (1)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4254881A4 (en) * 2020-12-21 2024-01-17 Huawei Tech Co Ltd METHOD AND APPARATUS FOR ROUTING TRANSMISSION

Also Published As

Publication number Publication date
US20230254239A1 (en) 2023-08-10
CN111670565A (zh) 2020-09-15
US20210336870A1 (en) 2021-10-28
EP3886388A4 (en) 2021-12-22
US11652737B2 (en) 2023-05-16
CN114500369A (zh) 2022-05-13
EP3886388A1 (en) 2021-09-29
CN111670565B (zh) 2022-01-21

Similar Documents

Publication Publication Date Title
WO2020142873A1 (zh) 控制路由迭代的方法、设备和系统
US10361884B2 (en) Virtual private network forwarding and nexthop to transport mapping scheme
CN109257278B (zh) 用于非分段路由启用的路由器的分段路由标签交换路径方法
CN108574639B (zh) Evpn报文处理方法、设备及系统
CN111865796B (zh) 用于网络业务的路径计算单元中央控制器(pcecc)
US10097446B2 (en) Dynamic area filtering for link-state routing protocols
EP3200402B1 (en) Segment routing information obtainment method and segment routing network establishment method
US7826482B1 (en) Service-specific forwarding in an LDP-RSVP hybrid network
US20170373973A1 (en) Signaling ip address mobility in ethernet virtual private networks
US9860169B1 (en) Neighbor resolution for remote EVPN hosts in IPV6 EVPN environment
CN113452610B (zh) 跨城域网的无缝端到端分段路由的方法及区域边界路由器
CN111865783A (zh) 用于计算机网络的方法和网络设备
US11888722B2 (en) Route advertisement method, device, and system
EP3975489A1 (en) Label deduction with flexible-algorithm
WO2021109763A1 (zh) 连接建立方法、装置、设备和存储介质
WO2016119461A1 (zh) 一种建立bgp lsp隧道的方法及网络设备
WO2023051179A1 (zh) 边界网关协议路由的接收、发送方法及装置和存储介质
WO2024007762A1 (zh) 一种路由发布方法、通信方法及装置
WO2023274083A1 (zh) 路由发布和转发报文的方法、装置、设备和存储介质
WO2017041493A1 (zh) 一种实现mbb的方法和装置

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: 19908142

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019908142

Country of ref document: EP

Effective date: 20210624

NENP Non-entry into the national phase

Ref country code: DE