WO2023169364A1 - Routing generation method and apparatus, and data message forwarding method and apparatus - Google Patents

Routing generation method and apparatus, and data message forwarding method and apparatus Download PDF

Info

Publication number
WO2023169364A1
WO2023169364A1 PCT/CN2023/079852 CN2023079852W WO2023169364A1 WO 2023169364 A1 WO2023169364 A1 WO 2023169364A1 CN 2023079852 W CN2023079852 W CN 2023079852W WO 2023169364 A1 WO2023169364 A1 WO 2023169364A1
Authority
WO
WIPO (PCT)
Prior art keywords
network device
protocol stack
address information
link
network
Prior art date
Application number
PCT/CN2023/079852
Other languages
French (fr)
Chinese (zh)
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
Priority claimed from CN202210459509.7A external-priority patent/CN116781618A/en
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023169364A1 publication Critical patent/WO2023169364A1/en

Links

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/74Address processing for routing
    • H04L45/741Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6

Definitions

  • the present application relates to the field of communication technology, and in particular to a route generation method, a data message forwarding method and a device.
  • IPv4 Internet Protocol version 4
  • IPv6 Internet protocol version 6
  • Embodiments of the present application provide a route generation method, a data packet forwarding method and a device, which help save address resources.
  • the technical solution is as follows.
  • the first aspect provides a route generation method, which includes:
  • the first network device obtains the network topology
  • the first network device receives a route advertisement message from the second network device, and the route advertisement message is used to publish address information corresponding to the first protocol stack;
  • the first network device generates a route, the route includes the address information corresponding to the first protocol stack and the address information corresponding to the second protocol stack, and the address information corresponding to the second protocol stack is the network The address information of the endpoint network device of the first link in the topology.
  • the object of route calculation is the address information corresponding to the first protocol stack, and the result of route calculation includes the address information corresponding to the second protocol stack. That is, the object of route calculation and the result of route calculation are allowed to have different Address family type.
  • the above method configures the address information of one protocol stack on the interface corresponding to the link to support the needs of dual-stack services without the need to configure two protocol stacks. address, thus saving Internet protocol (IP) addresses resource.
  • IP Internet protocol
  • the address information of endpoint network devices of all other links except the first link in the network topology is address information corresponding to the second protocol stack.
  • the network topology further includes a second link, and an endpoint network device of the second link includes address information corresponding to the first protocol stack.
  • the network topology includes a dual-stack link
  • an endpoint network device of the dual-stack link includes address information corresponding to a first protocol stack and address information corresponding to a second protocol stack.
  • the second network device belongs to the border gateway protocol shortest path first calculation (shortest path first with border gateway protocol, BGP SPF) routing domain and belongs to the interior gateway protocol (interior gateway protocol, IGP) routing domain, and the corresponding
  • the address information in the first protocol stack is the address information of the third network device in the IGP routing domain.
  • the address information corresponding to the first protocol stack is the address information of the user equipment accessed by the second network device.
  • the first network device obtains the network topology, including:
  • the first network device receives a link advertisement message, and the link advertisement message is used to publish address information of an endpoint network device of the first link;
  • the first network device obtains the network topology based on address information of an endpoint network device of the first link.
  • the route advertisement message is a BGP SPF message.
  • the first protocol stack is an IPv4 protocol stack
  • the second protocol stack is an IPv6 protocol stack
  • the first protocol stack is an IPv6 protocol stack
  • the second protocol stack is an IPv4 protocol stack.
  • a data packet forwarding method is provided. In this method,
  • the first network device receives a data packet, where the data packet includes address information corresponding to the first protocol stack;
  • the first network device forwards the data message to the address information corresponding to the second protocol stack based on the address information corresponding to the first protocol stack and the route.
  • the route includes the address information corresponding to the first protocol stack.
  • the route containing the address information of the two protocol stacks is used to forward the data message to the address information corresponding to the second protocol stack, thereby supporting dual communication.
  • Stack service requirements and there is no need to configure the addresses of the two protocol stacks on the interface corresponding to the link, thus saving IP address resources.
  • the first protocol stack is an IPv4 protocol stack
  • the second protocol stack is an IPv6 protocol stack
  • the first protocol stack is an IPv6 protocol stack
  • the second protocol stack is an IPv4 protocol stack.
  • a route generation device which has the function of implementing the above-mentioned first aspect or any optional method of the first aspect.
  • the route generation device includes at least one unit, and the at least one unit is used to implement the method provided by the above-mentioned first aspect or any optional manner of the first aspect.
  • the units in the route generation device are implemented by software, and the units in the route generation device are program modules. In other embodiments, the units in the route generating device are implemented by hardware or firmware.
  • the route generation device provided in the third aspect, please refer to the above-mentioned first aspect or any optional method of the first aspect, and will not be described again here.
  • a data message forwarding device has the function of implementing the above second aspect or any optional method of the second aspect.
  • the data message forwarding device includes at least one unit, and the at least one unit is used to implement the method provided by the above-mentioned second aspect or any optional manner of the second aspect.
  • the units in the device for forwarding data packets are implemented by software, and the units in the device for forwarding data packets are program modules. In other embodiments, the units in the device for forwarding data packets are implemented in hardware or firmware.
  • a network device in a fifth aspect, includes a processor and a network interface.
  • the processor is configured to execute instructions so that the network device executes the above-mentioned first aspect or any of the optional methods provided by the first aspect.
  • Method the network interface is used to receive or send messages.
  • a network device in a sixth aspect, includes a processor and a network interface.
  • the processor is configured to execute instructions so that the network device executes the above-mentioned second aspect or any of the optional methods provided by the second aspect.
  • Method the network interface is used to receive or send messages.
  • the network equipment please refer to the above-mentioned second aspect or any optional method of the second aspect, and will not be described again here.
  • a computer-readable storage medium stores at least one instruction.
  • the instruction When the instruction is run on a processor, it causes the processor to execute the above-mentioned first aspect or any one of the first optional aspects. method provided.
  • a computer-readable storage medium stores at least one instruction.
  • the instruction When the instruction is run on a processor, it causes the processor to execute the above-mentioned second aspect or any one of the second optional aspects. method provided.
  • a computer program product includes one or more computer program instructions.
  • the computer program instructions When the computer program instructions are loaded and run by a computer, they cause the computer to execute the first aspect or the third aspect. On the one hand, any of the options provided by the method.
  • a computer program product includes one or more computer program instructions.
  • the computer program product includes one or more computer program instructions.
  • the computer program instructions When the computer program instructions are loaded and run by a computer, they cause the computer to execute the above second aspect or the third aspect. Methods provided by any of the two optional methods.
  • a chip including a memory and a processor.
  • the memory is used to store computer instructions.
  • the processor is used to call and run the computer instructions from the memory to execute the above first aspect and any possibility of the first aspect. method in the implementation.
  • a chip including a memory and a processor.
  • the memory is used to store computer instructions.
  • the processor is used to call and run the computer instructions from the memory to execute the above second aspect or any one of the second aspects.
  • Optional methods provided.
  • a network device in a thirteenth aspect, includes: a main control board and an interface board, and may further include a switching network board.
  • the network device is configured to perform the method in the first aspect or any possible implementation of the first aspect.
  • the network device includes a unit for performing the method in the first aspect or any possible implementation of the first aspect.
  • a network device in a fourteenth aspect, includes: a main control board and an interface board. Further, it may also include a switching network board.
  • the network device is configured to perform the method in the second aspect or any possible implementation of the second aspect.
  • the network device includes a unit for performing the method in the second aspect or any possible implementation of the second aspect.
  • Figure 1 is a schematic diagram of a network deployment scenario provided by an embodiment of the present application.
  • Figure 2 is a flow chart of a route generation method provided by an embodiment of the present application.
  • Figure 3 is a schematic diagram of the format of a BGP SPF prefix NLRI provided by the embodiment of the present application;
  • Figure 4 is a schematic diagram of the format of the prefix descriptor field in the BGP SPF prefix NLRI provided by the embodiment of the present application;
  • Figure 5 is a schematic diagram of the format of a BGP SPF link NLRI provided by the embodiment of this application;
  • Figure 6 is a schematic diagram of the format of a BGP SPF node NLRI provided by the embodiment of the present application.
  • Figure 7 is a schematic diagram of a spliced deployment scenario of a BGP SPF routing domain and an IGP routing domain provided by the embodiment of this application;
  • Figure 8 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided by the embodiment of this application;
  • Figure 9 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided by the embodiment of this application;
  • Figure 10 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided by the embodiment of this application;
  • Figure 11 is a schematic diagram of a scenario where the BGP SPF routing domain is deployed as a dual-stack link provided by the embodiment of this application;
  • FIG. 12 is a schematic diagram of an IPv4 topology provided by an embodiment of the present application.
  • FIG. 13 is a schematic diagram of an IPv6 topology provided by an embodiment of the present application.
  • Figure 14 is a schematic diagram of a hybrid dual-stack topology provided by an embodiment of the present application.
  • Figure 15 is a schematic diagram of a scenario where the BGP SPF routing domain is spliced and deployed for IPv4 links and IPv6 links according to the embodiment of the present application;
  • Figure 16 is a schematic structural diagram of a route generation device 600 provided by an embodiment of the present application.
  • Figure 17 is a schematic structural diagram of a data message forwarding device 700 provided by an embodiment of the present application.
  • Figure 18 is a schematic structural diagram of a network device 800 provided by an embodiment of the present application.
  • Figure 19 is a schematic structural diagram of a network device 900 provided by an embodiment of the present application.
  • Figure 1 is a schematic diagram of a network deployment scenario provided by an embodiment of the present application.
  • the scenario shown in Figure 1 includes network devices D.
  • Network equipment C network equipment E, network equipment F and user network edge equipment (customer edge, CE).
  • CE custom edge, CE
  • Any network device among network device D, network device C, network device E, and network device F includes but is not limited to routers, switches, and the like.
  • Network device D, network device C, network device E and network device F belong to a routing domain.
  • a routing domain is an autonomous system.
  • a routing domain a group of routers exchange routing information through the same routing protocol.
  • the scenario shown in Figure 1 is a scenario based on IPv6 network deployment.
  • Network device D and network device E are connected through an IPv6 link.
  • Network device C and network device F are connected through an IPv6 link.
  • network device E and network device F are both connected to CE.
  • network device D has interface 3, and interface 3 is configured with IPv6 address 10::20.
  • Network device E has interface 4, which is configured with IPv6 address 10::10.
  • An IPv6 link is established between interface 3 and interface 4. That is, for the IPv6 link between network device D and network device E, the endpoint network devices of this IPv6 link include network device D and network device E, and the information of this IPv6 link includes IPv6 address 10 ::20 and IPv6 address 10::10.
  • Network device C has interface 6, which is configured with IPv6 address 30::20.
  • Network device F has interface 5, which is configured with IPv6 address 30::10.
  • An IPv6 link is established between interface 6 and interface 5. That is, for the IPv6 link between network device C and network device F, the endpoint network devices of this IPv6 link include network device C and network device F, and the information of this IPv6 link includes IPv6 address 30 ::20 and IPv6 address 30::10.
  • the so-called dual stack refers to two sets of protocol stacks, such as IPv4 and IPv6.
  • the so-called dual-stack service for a network device, means that the network device can forward data packets corresponding to two protocol stacks.
  • IPv4 protocol stack and IPv6 protocol stack as an example
  • IPv6 protocol stack when an operator upgrades the underlying network from an IPv4 network to an IPv6 network, a transition is generally required.
  • the process that is, there are both network devices and IPv4 links that support IPv4, and network devices and IPv6 links that support IPv6 in the underlay network.
  • IP Internet protocol
  • device A establishes a link based on the IPv4 address of interface 1, and device B establishes a link based on the IPv4 address of interface 2; and, device A establishes a link based on the IPv6 address of interface 1, and device B establishes a link based on the IPv6 address of interface 2.
  • the scale of the network becomes larger and larger, which undoubtedly requires a large number of IP addresses.
  • each network device needs to deploy two protocol stacks of IPv4 and IPv6 protocols to support dual-stack services, resulting in complex deployment and maintenance and high processing pressure on network devices.
  • the two protocol stacks are the IPv4 protocol stack and the IPv6 protocol stack as an example.
  • the outgoing interface is one of the network device itself configured with an IPv6 address.
  • the next hop is the IPv6 address configured on an interface of the peer network device; for another example, optionally, in the route calculated by the network device for an IPv6 prefix, the outgoing interface is an IPv4 address configured on the network device itself.
  • the next hop is the IPv4 address configured for an interface of the peer network device.
  • the types of IP protocol stacks corresponding to the three things: prefix, next hop, and outbound interface are inconsistent.
  • the address family type of the prefix and the address family type of the next hop are different.
  • the prefix is an IPv4 prefix and the next hop is an IPv6 address
  • the prefix is an IPv6 prefix and the next hop is an IPv4 address.
  • this method reduces the number of IP addresses that network devices need to configure to support dual-stack services, and saves IP address resources.
  • the deployment and maintenance workload caused by maintaining two sets of IP protocol stacks is reduced, and the cost of network equipment is reduced.
  • Figure 2 is a flow chart of a route generation method provided by an embodiment of the present application. The method shown in Figure 2 includes the following S201 to S204.
  • the method shown in Figure 2 involves interactions between multiple network devices.
  • first network device and “second network device” are used to describe multiple different network devices.
  • the method shown in Figure 2 involves dual protocol stack hybrid routing calculation.
  • first protocol stack and “second protocol stack” are used to describe multiple different protocol stacks.
  • the first protocol stack is an IPv4 protocol stack
  • the second protocol stack is an IPv6 protocol stack.
  • the first protocol stack is an IPv6 protocol stack
  • the second protocol stack is an IPv4 protocol stack.
  • the type of protocol stack is not limited in this application.
  • the first protocol stack is an IPv4 protocol stack and the second protocol stack is an IPv6 protocol stack as an example.
  • the network deployment scenario on which the method shown in Figure 2 is based is optionally shown in Figure 1 above.
  • the first network device in the method shown in FIG. 2 is the network device D in FIG. 1
  • the second network device in the method shown in FIG. 2 is the network device E in FIG. 1 .
  • the first network device obtains the network topology.
  • Network topology indicates the network devices and links that exist in a routing domain.
  • the network topology includes address information for endpoint network devices of at least one link.
  • the network topology also includes an identification of an endpoint network device of at least one link. The first network device obtains the network topology to generate a route based on part or all of the information in the network topology.
  • all links in the network topology are IPv6 links.
  • the address information of the endpoint network devices of all links in the network topology is IPv6 address.
  • network device A and network device B are deployed in the network.
  • Interface A of network device A is configured with an IPv6 Address A
  • interface B of network device B is configured with an IPv6 address B.
  • Network device A establishes a link 1 based on IPv6 address A and network device B based on IPv6 address B.
  • link 1 is an IPv6 link
  • the endpoint network devices of link 1 include network device A and network device B.
  • the address information of the endpoint network device of link 1 includes IPv6 address A and IPv6 address B.
  • every link in the network except link 1 is an IPv6 link, which is equivalent to the network being a pure IPv6 network.
  • Scenario 2 Pure IPv4 basic network deployment scenario.
  • the address information of the endpoint network devices of all links in the network topology is IPv4 address.
  • all links in the network topology are IPv4 links.
  • network device A and network device B are deployed in the network.
  • Interface A of network device A is configured with an IPv4 address A
  • interface B of network device B is configured with an IPv4 address B.
  • Network device A establishes a link 1 based on IPv4 address A and network device B based on IPv4 address B.
  • link 1 is an IPv4 link
  • the endpoint network devices of link 1 include network device A and network device B.
  • the address information of the endpoint network device of link 1 includes IPv4 address A and IPv4 address B.
  • every link in the network except link 1 is an IPv4 link, which is equivalent to the network being a pure IPv4 network.
  • Scenario 3 IPv6 link and IPv4 link splicing deployment scenario.
  • links between different network devices have different address family types.
  • the address family types of some links between network devices correspond to the first protocol stack, and the address family types of links between some network devices correspond to the first protocol stack.
  • the type corresponds to the second protocol stack.
  • network device A, network device B, and network device C are deployed in the network.
  • Interface A of network device A is configured with an IPv6 address A
  • interface B1 of network device B is configured with an IPv6 address B1
  • interface B2 of network device B is configured with an IPv4 address B2.
  • Interface C of network device C is configured with an IPv4 address C.
  • Network device A establishes a link 1 based on IPv6 address A and network device B based on IPv6 address B1.
  • Network device B establishes a link 2 based on IPv4 address B2 and network device C based on IPv4 address C.
  • link 1 is an IPv4 link
  • the endpoint network devices of link 1 include network device A and network device B.
  • the address information of the endpoint network device of link 1 includes IPv4 address A and IPv4 address B.
  • link 1 is an IPv6 link
  • the endpoint network devices of link 1 include network device A and network device B.
  • the address information of the endpoint network device of link 1 includes IPv6 address A and IPv6 address B1.
  • Link 2 is an IPv4 link, and the endpoint network devices of link 2 include network device B and network device C.
  • the address information of the endpoint network device of link 2 is included in IPv4 address B2 and IPv4 address C.
  • Scenario 4 Dual-stack link deployment scenario.
  • the network topology includes a dual-stack link
  • the endpoint network device of the dual-stack link includes address information corresponding to the first protocol stack and address information corresponding to the second protocol stack.
  • the second network device generates a route advertisement message based on the address information to be released, and the second network device sends the route advertisement message to the first network device.
  • the above address information includes at least one of a prefix or an IP address.
  • the above address information is IPv4 address information.
  • the above address information includes at least one of an IPv4 prefix or an IPv4 address.
  • the above address information is IPv6 address information.
  • the above address information includes at least one of an IPv6 prefix or an IPv6 address.
  • the device to which the above address information belongs includes many situations. The following is an example of three situations.
  • Case 1 The above address information is the address information of the user equipment.
  • the second network device accesses a user equipment, and the user equipment sends the address information of the user equipment to the second network device.
  • the second network device receives the address information of the user equipment, uses the address information of the user equipment as the address information to be released, carries the address information in the route advertisement message, and sends it to the first network device, thereby triggering the first network device to calculate arrival Routing of user equipment to meet the business requirements of forwarding data packets to user equipment.
  • the user equipment is, for example, a CE or a terminal.
  • Case 2 The above address information is the address information configured on an interface of the second network device, that is, the address information of the second network device itself.
  • Case 3 The above address information is the address information of the third network device.
  • the third network device and the second network device belong to the first routing domain, and the second network device and the first network device belong to the second routing domain.
  • the third network device sends the address information of the third network device to the second network device.
  • the second network device receives the address information from the third network device, uses the address information of the third network device as the address information to be released, carries the address information in the route advertisement message, and sends it to the first network device.
  • the address information of network devices in one routing domain is introduced to another routing domain, meeting the need for mutual introduction of address information between different routing domains.
  • the above-mentioned first routing domain is an IGP routing domain
  • the second routing domain is a BGP SPF routing domain.
  • the above-mentioned first routing domain is a BGP SPF routing domain
  • the second routing domain is an IGP routing domain.
  • the route advertisement message is used to publish address information corresponding to the first protocol stack.
  • the route advertisement message includes an identification of the second network device and address information corresponding to the first protocol stack.
  • the address information to be published is the CE's IPv4 address 10.1.1.2.
  • Network device E (the second network device) generates a route advertisement message based on the IPv4 address 10.1.1.2 and the identification of network device E.
  • Network device E sends a route advertisement message to network device D through the IPv6 link.
  • route advertisement messages are BGP SPF messages.
  • the route advertisement message is an IGP message.
  • route advertisement messages are open shortest path first (OSPF) messages or intermediate system to intermediate system (IS-IS) protocol messages.
  • OSPF open shortest path first
  • IS-IS intermediate system to intermediate system protocol
  • the route advertisement message includes BGP SPF prefix network layer reachability information (network layer reachability information, NLRI).
  • BGP SPF prefix network layer reachability information network layer reachability information, NLRI.
  • the second network device sends the BGP SPF prefix NLRI shown in Figure 3 to the first network device, where the local node descriptor field includes the identity of the second network device, and the prefix descriptor field includes the identifier corresponding to the first network device.
  • the prefix of the protocol stack is the protocol stack.
  • the first network device receives the route advertisement message from the second network device.
  • the second network device sends the route advertisement message to the first network device through the outbound interface configured with the address information of the second protocol stack.
  • the first network device receives the route advertisement message through the outgoing interface configured with the address information of the second protocol stack.
  • the second network device sends a route advertisement message containing the IPv4 prefix to the first network device through the IPv6 interface.
  • the first network device receives the route advertisement message containing the IPv4 prefix through the IPv6 interface.
  • the second network device sends a route advertisement message containing the IPv6 prefix to the first network device through the IPv4 interface.
  • the first network device receives the route advertisement message containing the IPv6 prefix through the IPv4 interface.
  • the first network device generates a route.
  • the route includes address information corresponding to the first protocol stack and address information corresponding to the second protocol stack.
  • the address information corresponding to the first protocol stack in the route is obtained from the route advertisement message. That is to say, the address information corresponding to the first protocol stack in the route is sent by the second network device to the third Address information published by a network device.
  • the route includes a destination prefix, and the destination prefix in the route is a prefix corresponding to the first protocol stack.
  • the route includes a destination address, and the destination address in the route is an address corresponding to the first protocol stack.
  • the address information corresponding to the second protocol stack in the route is obtained based on the network topology.
  • the route includes a next hop, and the next hop in the route is an IP address corresponding to the second protocol stack.
  • the address information corresponding to the second protocol stack in the route is, for example, the address information of the endpoint network device of the first link in the network topology.
  • a route includes a next hop and an outbound interface.
  • a first link is established between the first outbound interface of the first network device and the second outbound interface of the second network device.
  • the first network device generates a route.
  • the next hop in the route is the peer interface address, that is, the IP address configured on the second outgoing interface corresponding to the second protocol stack.
  • the outbound interface in the route is the first outbound interface.
  • the next hop is included in the route but not the outbound interface.
  • network device D receives the IPv4 address 10.1.1.2 issued by network device E (second network device), based on the IPv4 address and the peer of link DE in the network topology, interface address (i.e. IPv6 address 10::10), a route is generated.
  • the destination address in this route is IPv4 address 10.1.1.2
  • the next hop is the peer interface address of link DE (i.e. IPv6 address 10::10 )
  • the outgoing interface is the local interface of link DE (that is, interface 3).
  • the first network device generates the route based on the SPF algorithm. For example, the first network device obtains the identity of the second network device from the route advertisement message. The first network device finds the location of the second network device in the network topology based on the identifier of the second network device. The first network device determines a shortest path from the first network device to the second network device from the network topology. The first network device uses the network device next to the first network device on the shortest path as the next hop, and uses the prefix in the route advertisement message as the destination prefix, thereby generating a route.
  • the above S201 to S204 describe the route generation process of the control plane. Based on the above route generation process, the method shown in Figure 2 can further include the packet forwarding process of the data plane. See S205 to S206 below.
  • the first network device receives the data message.
  • the data packet includes address information corresponding to the first protocol stack.
  • the destination address field of the data message includes an IP address corresponding to the first protocol stack.
  • the first network device forwards the data packet to the address information corresponding to the second protocol stack based on the address information and routing corresponding to the first protocol stack.
  • the first network device searches the routing table using the address information corresponding to the first protocol stack as an index, and obtains the address information corresponding to the second protocol stack.
  • the first network device uses the address information corresponding to the second protocol stack as the next hop and forwards the data packet to the address information corresponding to the second protocol stack.
  • the object of route calculation is the address information corresponding to the first protocol stack
  • the result of route calculation includes the address information corresponding to the second protocol stack, that is, the object of route calculation and the result of route calculation are allowed
  • this embodiment configures an IPv4 address or an IPv6 address on the interface corresponding to the link to support the dual-stack service requirements without the need for configuration.
  • the addresses of the two protocol stacks thus save IP address resources.
  • the first network device obtains the network topology based on information of at least one link.
  • the information of a link includes, for example, a pair of IP addresses.
  • the pair of IP addresses includes the address information of the two endpoint network devices of the link.
  • How the first network device obtains link information includes multiple methods. For example, the first network device obtains information about each link directly connected to the device. Alternatively, a neighbor network device of the first network device advertises the link information to the first network device. Or, by The link information is configured on the first network device in a static configuration manner.
  • the second network device advertising the information of the first link to the first network device as an example, for example, the second network device generates a link advertisement message, and the second network device sends the link advertisement message to the first network device.
  • the first network device receives a link advertisement message, and the first network device obtains the network topology based on address information of an endpoint network device of the first link.
  • the link advertisement message is used to publish the address information of the endpoint network device of the first link; in some embodiments, the link advertisement message includes the address information of the two endpoint network devices of the first link. From the perspective of protocol type, optionally, the link advertisement message is a BGP SPF message. Alternatively, the link advertisement message is an IGP message. For example, the link advertisement message is an OSPF message or an IS-IS message.
  • the following takes the link advertisement message as a BGP SPF message as an example to illustrate the format and content of the link advertisement message.
  • the link advertisement message includes the BGP SPF link NLRI.
  • the second network device sends the BGP SPF link NLRI shown in Figure 5 to the first network device, where the local node descriptor field includes the identity of the second network device, and the link descriptor field includes the second network device.
  • the first network device further obtains the network topology based on the identity of at least one network device.
  • the second network device generates a node advertisement message, and the second network device sends the node advertisement message to the first network device.
  • the first network device receives the node advertisement message.
  • the node advertisement message includes the identification of the second network device.
  • the first network device obtains the identity of the second network device from the node advertisement message, and obtains the network topology according to the identity of the second network device.
  • the node advertisement message includes the BGP SPF node NLRI shown in Figure 6.
  • node information, link information, and prefix information are advertised through three different messages.
  • the node advertisement message, the link advertisement message and the route advertisement message are three different messages.
  • node information, link information, and prefix information are advertised through the same packet.
  • node information, link information and prefix information are advertised through three different type length values (TLV) in the same message.
  • Some optional embodiments of this application involve the application of the BGP SPF protocol.
  • the BGP SPF protocol is briefly described below.
  • BGP SPF protocol is a new type of routing protocol.
  • the BGP SPF protocol is based on the shortest path first (SPF) algorithm in the interior gateway protocol (IGP) protocol for path calculation, and uses the BGP link-state (BGP-LS) protocol. Defined NLRI and TLV.
  • the BGP SPF protocol is an extension of the BGP protocol.
  • the BGP SPF protocol corresponds to a new address family in the BGP protocol.
  • the BGP SPF protocol uses many mechanisms in the BGP protocol, including but not limited to the finite state machine in the BGP protocol, the encoding format of the BGP message, the processing process of the BGP message, BGP attributes, and BGP NLRI. And error handling mechanism, etc.
  • mechanisms in the BGP protocol please refer to the introduction of RFC4271 and RFC7606.
  • the BGP protocol is mainly used to support the transfer of routes between autonomous systems (AS).
  • the BGP protocol is usually not responsible for route calculation.
  • the BGP protocol uses routes provided by other routing protocols to determine paths based on policies and various attributes.
  • the BGP protocol is an overlay protocol, and the underlay protocol of the BGP protocol is generally an interior gateway protocol (IGP) protocol.
  • the BGP SPF protocol supports path calculation.
  • the BGP SPF protocol replaces the path decision-making process in the BGP protocol with path calculation based on the SPF algorithm.
  • the BGP SPF protocol can be used as an underlay protocol.
  • the BGP SPF protocol can replace the IGP protocol to a certain extent.
  • route calculation based on the BGP SPF protocol Compared with route calculation based on IGP, the technical effects achieved by route calculation based on the BGP SPF protocol include but are not limited to the following four aspects.
  • domain division When applying the IGP protocol in a large network, domain division is usually required, that is, an autonomous system is divided into different areas. Areas logically divide routers into different groups, and each group is identified by an area ID. Area boundaries are routers, not links.
  • the OSPF protocol divides autonomous systems into different types of areas such as normal areas, stub areas, and stub areas (not-so-stubby area, NSSA).
  • the IS-IS protocol divides routing domains into backbone networks. and non-backbone networks.
  • the BGP SPF protocol usually does not have the concept of domain classification and does not require domain classification.
  • the IGP protocol usually updates the link status within the entire area periodically.
  • the so-called flooding means that a router advertises its link status to neighboring routers, and the neighboring routers then send the link status to other neighboring routers until all routers in the entire area have the same link status. Because the device needs to update the link status periodically, the device overhead is high. In the BGP SPF protocol, link status updates are usually aperiodic, thus reducing device overhead.
  • the BGP SPF protocol usually uses an incremental method to advertise routes, that is, if the route does not change, there is no need to send a message to advertise the route. If a route is added, the added route is notified to the neighbor. If a route is deleted, the deleted route is notified to the neighbor. By incrementally advertising routes, it is possible to avoid the huge number of route entries being delivered and affecting efficiency caused by full advertising of routes.
  • TCP transmission control protocol
  • IGP is usually based on non-connection-oriented protocols to transmit routing protocol messages, so some additional mechanisms need to be designed to ensure the transmission reliability of routing protocol messages.
  • the OSPF protocol has a master-slave negotiation mechanism to ensure transmission reliability.
  • the routing information protocol (RIP) is designed with a regular retransmission method to ensure transmission reliability.
  • the BGP SPF protocol is usually based on the TCP protocol to transmit routing protocol messages, so the transmission reliability is high, and there is usually no need to design additional mechanisms to ensure transmission reliability.
  • BGP SPF NLRI is a network layer reachability information (NLRI) in the BGP LS protocol, which is used for route calculation.
  • BGP SPF NLRI has an encapsulation format defined by RFC 7752.
  • BGP SPF NLRI is further divided into three types, namely BGP SPF prefix NLRI, BGP SPF link NLRI and BGP SPF node NLRI.
  • BGP SPF prefix NLRI is used to publish prefix information.
  • Figure 3 is a schematic diagram of the format of a BGP SPF prefix NLRI provided by this embodiment.
  • the BGP SPF prefix NLRI includes a protocol ID (protocol-ID) field, an identifier (identifier) field, and a local node descriptor ( local node descriptors) field and prefix descriptors (prefix descriptors) field.
  • the local node descriptor field is used to carry the identification of the network device that publishes the prefix (or the source device of the prefix).
  • the local node descriptor field carries the AS number (autonomous system number) of the network device and the router ID. (router-ID).
  • the receiving end of the BGP SPF prefix NLRI can not only obtain the prefix, but also learn about the prefix. Which network device it comes from, thus triggering the receiving end to perform route calculation with this network device as the destination.
  • the prefix descriptor field is used to carry the IP address prefix, such as IPv4 prefix or IPv6 prefix.
  • the prefix descriptor field has a TLV encoding structure.
  • the prefix descriptor field includes the IP reachability information TLV (IP reachability information TLV) described in RFC7752.
  • Figure 4 is a schematic diagram of the format of a prefix descriptor field provided in this embodiment.
  • the prefix descriptor field shown in Figure 4 is, for example, the prefix descriptor field in the BGP SPF prefix NLRI shown in Figure 3.
  • the prefix descriptor field specifically includes a type field, a length field, a prefix length field and an IP prefix field.
  • the value of the type field in the prefix descriptor field that is, TLV type is 265.
  • the IP prefix field carries a specific IPv4 prefix
  • the prefix length field carries the length of the IPv4 prefix.
  • the IP prefix field carries a specific IPv6 prefix
  • the prefix length field carries the length of the IPv6 prefix.
  • BGP SPF link NLRI is used to publish link information.
  • Figure 5 is a schematic diagram of the format of a BGP SPF link NLRI provided in this embodiment.
  • the BGP SPF link NLRI includes a protocol ID (protocol-ID) field, an identifier (identifier) field, and a local node description. descriptors (local node descriptors) field, remote node descriptors (remote node descriptors) and link descriptors (link descriptors) fields.
  • protocol ID protocol-ID
  • identifier identifier
  • descriptors local node descriptors
  • remote node descriptors remote node descriptors
  • link descriptors link descriptors
  • the local node descriptor field in the BGP SPF link NLRI is used to carry the identification of the local endpoint (local end) network device of the link.
  • the remote node descriptor field is used to carry the identification of the remote end network device of the link.
  • the local node descriptor field is used to carry the AS number of the local endpoint network device of the link and the router-ID of the local endpoint network device
  • the remote node descriptor field carries the AS number of the remote endpoint network device of the link and The router-ID of the remote endpoint network device.
  • the link descriptor field includes a pair of IP addresses, namely the interface address of the local endpoint network device of the link and the interface address of the remote endpoint network device of the link.
  • network device A sends a BGP SPF link NLRI to advertise link AB between network device A and network device B.
  • Link AB is the link between interface A of network device A and interface B of network device B.
  • the local node descriptor field includes the identity of network device A
  • the remote node descriptor field includes the identity of network device B
  • the link descriptor field includes the IP address of interface A and the IP address of interface B. .
  • BGP SPF node NLRI is used to publish node information.
  • Figure 6 is a schematic diagram of the format of a BGP SPF node NLRI provided in this embodiment. As shown in Figure 6, the BGP SPF node NLRI includes a protocol ID (protocol-ID) field, an identifier (identifier) field and a local node descriptor ( local node descriptors) field.
  • protocol ID protocol-ID
  • identifier identifier
  • local node descriptors local node descriptors
  • the following is an example of the method shown in Figure 2 based on a specific scenario.
  • the following scenario shows the splicing deployment scenario of BGP SPF routing domain and IGP routing domain.
  • FIG. 7 is a schematic diagram of a scenario where the BGP SPF routing domain and the IGP routing domain are spliced and deployed in this embodiment.
  • each link between network devices in the IGP routing domain is an IPv4 link
  • each link between network devices in the BGP SPF routing domain is an IPv6 link.
  • IPv4 users and IPv6 users are connected to CE1, and CE2 is also connected.
  • the inter-domain splicing node For inter-domain splicing nodes between BGP SPF routing domain and IGP routing domain, such as network device C and network device D, the inter-domain splicing node will IGP routing prefix 10.1.1.1, 10.1.1.2, 20.1.1.1, 20.1.1.2 and network device
  • the access user address prefixes 200.1.1.2, 200::2 and other routing prefixes on network device A and network device B are introduced into the BGP SPF routing domain; after network device C and network device D introduce these prefixes, they route to BGP SPF through the BGP SPF protocol. Released to other network devices in the domain.
  • IPv6 prefix destination routes or IPv6 prefix destination routes with the IPv6 address as the next hop After receiving it, other network devices search for the corresponding nodes in the IPv6 topology matching the BGP SPF routing domain based on the network devices that advertise these prefixes, and generate IPv4 prefix destination routes or IPv6 prefix destination routes with the IPv6 address as the next hop.
  • FIG 8 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided in this embodiment.
  • the IGP routing domain contains IPv4 links and IPv6 links, which is equivalent to the IGP routing domain being deployed based on a mixed protocol stack.
  • the BGP SPF routing domain also includes IPv4 links and IPv6 links, which is equivalent to the BGP SPF routing domain being deployed based on a mixed protocol stack. IPv4 users and IPv6 users are connected to CE1, and IPv4 users and IPv6 users are also connected to CE2.
  • inter-domain splicing nodes between the BGP SPF routing domain and the IGP routing domain such as network device C and network device D
  • the access user address prefixes 200.1.1.2, 200::2 and other routing prefixes on network device B are introduced into the BGP SPF routing domain; after network device C and network device D introduce these prefixes, they are sent to the BGP SPF routing domain through the BGP SPF protocol.
  • Other nodes publish prefixes.
  • network device E is an illustration of the second network device in the method shown in Figure 2
  • network device D, network device F, or network device C is an illustration of the first network device in the method shown in Figure 2.
  • BGP SPF prefix-NLRI is an example of the route advertisement message in the method shown in Figure 2.
  • Example 1 The BGP SPF routing domain is deployed on a pure IPv6 basic network.
  • Example 1 includes the following steps 1 to 4.
  • Step 1 Import the IPv4 prefix 100.1.1.2 from the IPv6 edge network device E in the BGP SPF routing domain.
  • Network device E encapsulates this IPv4 prefix 100.1.1.2 to BGP SPF prefix-NLRI.
  • Network device E publishes BGP SPF prefix-NLRI to network devices other than network device E in the BGP SPF routing domain (including network device D, network device F, and network device C).
  • each network device (including network device D, network device F, and network device C) in the BGP SPF routing domain performs route calculations to the destination address 100.1.1.2.
  • BGP SPF prefix-NLRI For BGP SPF prefix-NLRI, it is encapsulated according to RFC7752, and the format is shown in Figure 3. The TLV format of prefix descriptors in BGP SPF prefix-NLRI is shown in Figure 4.
  • Each network device in the BGP SPF routing domain calculates the IPv4 route with the destination address 100.1.1.2.
  • Each network device in the BGP SPF routing domain generates IPv4 forwarding entries based on the IPv4 route.
  • the next hop in the IPv4 forwarding table is the IPv6 address, and the outbound interface in the IPv4 forwarding table is the interface to the neighbor node.
  • network device C calculates a route to the destination address 100.1.1.2.
  • the next hop in this route is 30::10, and the outgoing interface is interface 6.
  • Step 3 A network device in the BGP SPF routing domain receives traffic with the destination address 100.1.1.2.
  • Step 4 For the scenario where the IPv6 type BGP SPF routing domain is spliced with the IPv4 type IGP routing domain as shown in Figure 9, introduce the IPv4 address information of the IGP routing domain into the BGP SPF routing domain on network device D or network device C.
  • the IPv4 route to the IGP routing domain to which the destination address belongs can be calculated on each network device in the BGP SPF routing domain, such as network device E or network device F. The calculation process is the same as described in steps one to three.
  • the BGP SPF routing domain is a pure IPv6 basic network deployment scenario, so that the BGP SPF routing protocol supports a single-stack topology for IPv4 and IPv6 dual-stack hybrid routing calculations.
  • Example 2 The BGP SPF routing domain is deployed on a pure IPv4 basic network.
  • Example 2 includes the following steps 1 to 4.
  • Step 1 Import the IPv6 prefix 100::2 from the IPv4 edge network device F of the BGP SPF routing domain.
  • the network device F encapsulates this IPv6 prefix 100::2 to the BGP SPF prefix NLRI (BGP SPF prefix-NLRI).
  • Network device F publishes BGP SPF prefix-NLRI to other network devices other than network device F in the BGP SPF routing domain (including network device D, network device E, and network device C). After receiving the BGP SPF prefix-NLRI, each network device (including network device D, network device E, and network device C) in the BGP SPF routing domain performs route calculations to the destination address 100::2.
  • BGP SPF prefix-NLRI For BGP SPF prefix-NLRI, it is encapsulated according to RFC7752, and the format is shown in Figure 3. The TLV format of prefix descriptors in BGP SPF prefix-NLRI is shown in Figure 4.
  • Step 2 Each network device in the BGP SPF routing domain calculates the IPv6 route for the destination address 100::2.
  • Each network device in the BGP SPF routing domain generates IPv6 forwarding entries based on the IPv6 route.
  • the next hop in the IPv6 forwarding entry is the IPv4 address, and the outbound interface in the IPv6 forwarding entry is the interface to the neighbor node.
  • network device D calculates a route to the destination address 100::2.
  • the next hop in this route is 50.1.1.1, and the outbound interface is interface 3.
  • Step 3 A network device in the BGP SPF routing domain receives traffic with the destination address 100::2.
  • the network device queries the IPv6 forwarding table based on the destination address of the traffic and obtains the IPv4 next hop and outgoing interface. After the IPv4 next hop and outbound interface encapsulates the packet, it forwards the traffic to the next network device until the traffic reaches the destination address.
  • Step 4 For the scenario where the IPv4 type BGP SPF routing domain is spliced with the IPv6 type IGP routing domain as shown in Figure 10, introduce the IPv6 address information of the IGP routing domain to the BGP SPF routing domain on network device D or network device C.
  • the IPv6 route to the IGP routing domain to which the destination address belongs can be calculated on each network device in the BGP SPF routing domain, such as network device E or network device F. The calculation process is the same as described in steps one to three.
  • the BGP SPF routing domain is a pure IPv4 basic network deployment scenario.
  • the BGP SPF routing protocol supports single-stack topology for IPv4 and IPv6 dual-stack hybrid routing calculations.
  • Example 3 The BGP SPF routing domain is deployed for dual-stack links, that is, a link interface between network devices is configured with a dual-stack address.
  • the interface on the same link between network device C and network device F is configured with an IPv4 address and an IPv6 address, that is, a dual-stack address.
  • BGP SPF routing domains are collected to form a topology.
  • the network device generates IPv4 topology and IPv6 topology respectively.
  • the network device generates a topology that includes IPv4 links and IPv6 links. This topology may be called a hybrid dual-stack topology.
  • the IPv4 topology generated by the network device is shown in Figure 12
  • the IPv6 topology generated by the network device is shown in Figure 13
  • the hybrid dual-stack topology generated by the network device is shown in Figure 14.
  • IPv4 When network devices calculate IPv4 routes or IPv6 routes, they match according to the topology results and use the IPv4 next hop or IPv6 next hop.
  • the processing of routing and forwarding behavior is the same as that of Example 1 and Example 2.
  • the BGP SPF routing domain is a dual-stack link deployment scenario and can support IPv4 or IPv6 prefix route calculation at the same time.
  • the route next hop is matched according to the topology result and uses IPv4 or IPv6 next hop.
  • Example 4 The BGP SPF routing domain is deployed for splicing IPv4 links and IPv6 links, that is, there are different link address family types between different network devices.
  • IPv4 links there are IPv4 links, IPv6 links, and dual-stack links between different network devices in the BGP SPF routing domain; optionally, network devices calculate independently based on IPv4 links or IPv6 links.
  • Topology or network equipment calculates topology based on a mixture of IPv4 links and IPv6 links.
  • IPv4 prefix routes or IPv6 prefix routes they match according to the topology results and use the IPv4 next hop or IPv6 next hop.
  • the processing of routing and forwarding behavior is the same as that of Example 1 and Example 2.
  • the BGP SPF routing domain is deployed in a splicing deployment scenario of IPv4 links and IPv6 links. It can support IPv4 or IPv6 prefix route calculation at the same time. The route next hop is matched according to the topology result and uses IPv4 or IPv6 next hop. .
  • the methods provided by the above four examples can save IPv4/IPv6 address resources.
  • the single-stack network supports dual-stack business requirements, simplifies network operation and maintenance, and reduces network equipment overhead.
  • it provides a smooth evolution solution for the upgrade and transformation of the existing IPv4 basic network to IPv6 network.
  • FIG 16 is a schematic structural diagram of a route generation device 600 provided by an embodiment of the present application.
  • the route generating device 600 includes an obtaining unit 601, a receiving unit 602 and a generating unit 603.
  • the route generating device 600 further includes a sending unit 604.
  • the route generation device 600 shown in Figure 16 is provided in the network device D in the method flow shown in Figure 1, and the receiving unit 602 is used to receive the route announcement shown in Figure 1 message, the generating unit 603 is used to generate routes in the routing table or forwarding table shown in Figure 1, and the obtaining unit 601 is used to obtain the network topology shown in Figure 1.
  • the route generation device 600 shown in Figure 16 is provided in the first network device in the method flow shown in Figure 2, the obtaining unit 601 is used to perform S201, and the receiving unit 602 uses After executing S203, the generating unit 603 is used to execute S204.
  • the receiving unit 602 is also configured to perform S205, and the sending unit 604 is further configured to perform S206.
  • the device embodiment described in Figure 16 is only illustrative.
  • the division of the above units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined or integrated. to another system, or some features can be ignored, or not implemented.
  • Each functional unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • Each unit in the route generation device 600 is implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • the above-mentioned obtaining unit 601 and generating unit 603 are implemented by software functional units generated by at least one processor 801 in FIG. 18 after reading the program code stored in the memory 802.
  • the above-mentioned units in Figure 16 are respectively implemented by different hardware in the network device.
  • the acquisition unit 601 is implemented by a part of the processing resources of at least one processor 801 in Figure 18 (such as a multi-core processor). one core or two cores), while the generation unit 603 is implemented by the remainder of at least one processor 801 in FIG. 18 Processing resources (such as other cores in a multi-core processor), or using programmable devices such as field-programmable gate arrays (FPGAs) or co-processors.
  • the receiving unit 602 is implemented by the network interface 803 in Figure 18.
  • FIG 17 is a schematic structural diagram of a data packet forwarding device 700 provided by an embodiment of the present application.
  • the data packet forwarding device 700 includes a receiving unit 701 and a sending unit 702.
  • the data message forwarding device 700 shown in Figure 17 is located on the first network device in the method flow shown in Figure 2, and the receiving unit 701 is used to perform S205 and send Unit 702 is used to perform S206.
  • the device embodiment described in Figure 17 is only illustrative.
  • the division of the above units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined or integrated. to another system, or some features can be ignored, or not implemented.
  • Each functional unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • Each unit in the data packet forwarding device 700 is implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • receiving unit 701 and sending unit 702 are implemented by software functional units generated by at least one processor 801 in FIG. 18 after reading the program code stored in the memory 802.
  • the above-mentioned units in FIG. 17 are respectively implemented by different hardware in the network device.
  • the receiving unit 701 and the sending unit 702 are implemented by the network interface 803 in FIG. 18 .
  • FIG 18 is a schematic structural diagram of a network device 800 provided by an embodiment of the present application.
  • Network device 800 includes at least one processor 801, memory 802, and at least one network interface 803.
  • the network device 800 shown in Figure 18 is the network device D in Figure 1.
  • the network device 800 shown in Figure 18 is the first network device in the method flow shown in Figure 2.
  • the processor 801 is used to execute S201 and S204, and the network interface 803 is used to execute S203, S205 and S206.
  • the processor 801 is, for example, a general central processing unit (CPU), a network processor (NP), a graphics processing unit (GPU), or a neural network processor (neural-network processing units, NPU). ), a data processing unit (DPU), a microprocessor or one or more integrated circuits used to implement the solution of the present application.
  • the processor 801 includes an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof.
  • ASIC application-specific integrated circuit
  • PLD programmable logic device
  • PLD is, for example, a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a general array logic (GAL), or any combination thereof.
  • the memory 802 is, for example, a read-only memory (ROM) or other type of static storage device that can store static information and instructions, or a random access memory (random access memory, RAM) or a static storage device that can store static information and instructions.
  • ROM read-only memory
  • RAM random access memory
  • static storage device that can store static information and instructions.
  • Other types of dynamic storage devices that store information and instructions such as electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or Other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or can be used to carry or store expectations in the form of instructions or data structures program code and any other medium that can be accessed by a computer, without limitation.
  • the memory 802 exists independently and is connected to the processor 801 through an internal connection 804 .
  • memory 802 and processor 801 are optionally integrated together.
  • Network interface 803 uses any transceiver-like device for communicating with other devices or communications networks.
  • the network interface 803 includes, for example, at least one of a wired network interface or a wireless network interface.
  • the wired network interface is, for example, an Ethernet interface.
  • the Ethernet interface is, for example, an optical interface, an electrical interface or a combination thereof.
  • the wireless network interface is, for example, a wireless local area network (WLAN) interface, a cellular network network interface or a combination thereof.
  • WLAN wireless local area network
  • processor 801 includes one or more CPUs, such as CPU0 and CPU1 as shown in Figure 18.
  • network device 800 optionally includes multiple processors, such as processor 801 and processor 805 shown in Figure 18. Each of these processors is, for example, a single-core processor (single-CPU) or a multi-core processor (multi-CPU). Processor here optionally refers to one or more devices, circuits, and/or processing cores for processing data (eg, computer program instructions).
  • network device 800 also includes internal connections 804.
  • the processor 801, the memory 802 and at least one network interface 803 are connected through an internal connection 804.
  • Internal connections 804 include pathways that carry information between the components described above.
  • internal connection 804 is a single board or bus.
  • the internal connections 804 are divided into address bus, data bus, control bus, etc.
  • network device 800 also includes an input and output interface 806. Input/output interface 806 is connected to internal connection 804.
  • the processor 801 implements the method in the above embodiment by reading the program code 810 stored in the memory 802, or the processor 801 implements the method in the above embodiment by using the internally stored program code.
  • the processor 801 implements the method in the above embodiment by reading the program code 810 stored in the memory 802
  • the memory 802 stores the program code that implements the method provided by the embodiment of the present application.
  • processor 801 implements the above functions, please refer to the descriptions in the previous method embodiments, which will not be repeated here.
  • the network device 900 includes: a main control board 910 and an interface board 930 .
  • the network device 900 shown in Figure 19 is the network device D in Figure 1.
  • the network device 900 shown in Figure 19 is the first network device in the method flow shown in Figure 2.
  • the main control board 910 is used to execute S201, S203 and S204, and the interface board 930 is used to Execute S205 and S206.
  • the main control board is also called the main processing unit (MPU) or route processor card.
  • the main control board 910 is used to control and manage various components in the network device 900, including route calculation and device management. , equipment maintenance, protocol processing functions.
  • the main control board 910 includes: a central processing unit 911 and a memory 912 .
  • the interface board 930 is also called a line processing unit (LPU), line card or industry service board.
  • the interface board 930 is used to provide various service interfaces and implement data packet forwarding.
  • the service interface includes but is not limited to an Ethernet interface, a POS (packet over sONET/SDH) interface, etc.
  • the Ethernet interface is, for example, a flexible Ethernet service interface (flexible ethernet clients, FlexE clients).
  • the interface board 930 includes: a central processor 931, a network processor 932, a forwarding entry memory 934, and a physical interface card (physical interface card, PIC) 933.
  • the central processor 931 on the interface board 930 is used to control and manage the interface board 930 and communicate with the central processor 911 on the main control board 910 .
  • the network processor 932 is used to implement packet forwarding processing.
  • the network processor 932 is, for example, a forwarding chip.
  • the network processor 932 is configured to forward the received message based on the forwarding table stored in the forwarding table memory 934. If the destination address of the message is the address of the network device 900, then upload the message to the CPU (such as central processing unit 911) processing; if the destination address of the message is not the address of the network device 900, the next hop and outgoing interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to The outbound interface corresponding to the destination address.
  • the processing of uplink packets includes: processing of packet incoming interfaces, forwarding table search; processing of downlink packets: forwarding table search, etc.
  • the physical interface card 933 is used to implement the docking function of the physical layer.
  • the original traffic enters the interface card 930 through this, and the processed packets are sent out from the physical interface card 933.
  • the physical interface card 933 is also called a daughter card and can be installed on the interface board 930. It is responsible for converting photoelectric signals into messages and checking the validity of the messages before forwarding them to the network processor 932 for processing.
  • the central processor can also perform the functions of the network processor 932, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 932 is not required in the physical interface card 933.
  • the network device 900 includes multiple interface boards.
  • the network device 900 also includes an interface board 940.
  • the interface board 940 includes: a central processor 941, a network processor 942, a forwarding entry memory 944, and a physical interface card 943.
  • the network device 900 also includes a switching network board 920.
  • the switching fabric unit 920 is also called a switching fabric unit (SFU).
  • SFU switching fabric unit
  • the switching network board 920 is used to complete data exchange between the interface boards.
  • the interface board 930 and the interface board 940 communicate through the switching network board 920, for example.
  • the main control board 910 and the interface board 930 are coupled.
  • the main control board 910, the interface board 930, the interface board 940, and the switching network board 920 are connected to the system backplane through a system bus to achieve intercommunication.
  • an inter-process communication protocol (IPC) channel is established between the main control board 910 and the interface board 930, and the main control board 910 and the interface board 930 communicate through the IPC channel.
  • IPC inter-process communication protocol
  • the network device 900 includes a control plane and a forwarding plane.
  • the control plane includes a main control board 910 and a central processor 931.
  • the forwarding plane includes various components that perform forwarding, such as forwarding entry memory 934, physical interface card 933, and network processing.
  • the control plane executes functions such as router, generates forwarding tables, processes signaling and protocol messages, configures and maintains device status.
  • the control plane sends the generated forwarding tables to the forwarding plane.
  • the network processor 932 is based on the control plane.
  • the delivered forwarding table looks up the packets received by the physical interface card 933 and forwards them.
  • the forwarding table delivered by the control plane is stored in the forwarding table entry memory 934, for example.
  • the control plane and the forwarding plane are, for example, completely separate and not on the same device.
  • the network device 900 in this embodiment may correspond to the first network device in the above method embodiments, and the main control board 910, interface board 930 and/or 940 in the network device 900 implement, for example, the above method embodiments.
  • the functions of the first network device and/or the various steps performed will not be described again here.
  • main control boards There may be one or more main control boards. When there are multiple main control boards, for example, they include the main main control board and the backup main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards are provided. There can also be one or more physical interface cards on the interface board. There may be no switching network board, or there may be one or more. When there are multiple boards, they can be used together. Implement load sharing and redundant backup. Under the centralized forwarding architecture, network equipment does not need switching network boards, and the interface boards are responsible for processing the business data of the entire system. Under the distributed forwarding architecture, network equipment can have at least one switching network board, which enables data exchange between multiple interface boards through the switching network board, providing large-capacity data exchange and processing capabilities.
  • the network device can also be in the form of only one board, that is, there is no switching network board.
  • the functions of the interface board and the main control board are integrated on this board.
  • the central processor and main control board on the interface board The central processor on the board can be combined into one central processor on this board to perform the superimposed functions of the two.
  • This form of equipment has low data exchange and processing capabilities (for example, low-end switches or routers and other networks equipment).
  • the specific architecture used depends on the specific networking deployment scenario and is not limited here.
  • A refers to B, which means that A is the same as B or that A is a simple transformation of B.
  • first and second in the description and claims of the embodiments of this application are used to distinguish different objects, rather than to describe a specific order of objects, and cannot be understood to indicate or imply relative importance. sex.
  • first network device and the second network device are used to distinguish different network devices rather than describing a specific order of the network devices, nor can it be understood that the first network device is more important than the second network device.
  • the information including but not limited to user equipment information, user personal information, etc.
  • data including but not limited to data used for analysis, stored data, displayed data, etc.
  • signals involved in the embodiments of this application are all processed.
  • the above embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof.
  • software When implemented using software, it may be implemented in whole or in part in the form of a computer program product.
  • the computer program product includes one or more computer instructions.
  • the computer program instructions When the computer program instructions are loaded and executed on a computer, the processes or functions described in accordance with the embodiments of the present application are generated in whole or in part.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another, e.g., the computer instructions may be transferred from a website, computer, server, or data center Transmission to another website, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) means.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains one or more available media integrated therein.
  • the available media may be magnetic media (eg, floppy disk, hard disk, magnetic tape), optical media (eg, DVD), or semiconductor media (eg, Solid State Disk (SSD)), etc.

Abstract

The present application belongs to the technical field of communications. Provided are a routing generation method and apparatus, and a data message forwarding method and apparatus. In the present application, a routing calculation object is address information corresponding to a first protocol stack, and a routing calculation result comprises address information corresponding to a second protocol stack, that is, it is allowed that the routing calculation object and the routing calculation result have different address family types. In this way, a method for supporting dual-stack hybrid routing calculation is implemented. Compared with a single-stack routing calculation mode in the prior art, in the method, by means of configuring one of an IPv4 address and an IPv6 address on an interface corresponding to a link, the requirements of a dual-stack service can be supported, without the need for configuring the addresses of two protocol stacks, thereby saving on IP address resources.

Description

路由生成方法、数据报文的转发方法及装置Route generation method, data message forwarding method and device
本申请要求于2022年03月11日提交的申请号为202210239542.9、发明名称为“一种BGP SPF支持V6与V4双栈混合路由计算的方法”的中国专利申请的优先权,以及,要求于2022年04月27日提交的申请号为202210459509.7、发明名称为“路由生成方法、数据报文的转发方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application requires the priority of the Chinese patent application with the application number 202210239542.9 and the invention title "A method for BGP SPF to support V6 and V4 dual-stack hybrid routing calculation" submitted on March 11, 2022, and the application is requested in 2022 The priority of the Chinese patent application with the application number 202210459509.7 and the invention title "Route Generation Method, Data Message Forwarding Method and Device" submitted on April 27, 2020, the entire content of which is incorporated into this application by reference.
技术领域Technical field
本申请涉及通信技术领域,特别涉及一种路由生成方法、数据报文的转发方法及装置。The present application relates to the field of communication technology, and in particular to a route generation method, a data message forwarding method and a device.
背景技术Background technique
目前各种路由协议一般采用单栈路由计算的方式。即,网络设备针对一个互联网协议第4版(internet protocol version 4,IPv4)前缀计算出的路由中,出接口是网络设备自身的一个配置有IPv4地址的接口,下一跳是对端网络设备的一个接口配置的IPv4地址;网络设备针对一个互联网协议第6版(internet protocol version 6,IPv6)前缀计算出的路由中,出接口是网络设备自身的一个配置有IPv6地址的接口,下一跳是对端网络设备的一个接口配置的IPv6地址。也即是,前缀、下一跳、出接口这三种事物对应的协议栈(或者说地址族)的类型均相同,要么都是IPv4,要么都是IPv6。从网络设备上路由表和转发表的角度描述,路由表或转发表的同一条表项中,前缀的地址族类型和下一跳的地址族类型是一致的。Currently, various routing protocols generally adopt a single-stack route calculation method. That is, in the route calculated by the network device for an Internet Protocol version 4 (IPv4) prefix, the outbound interface is an interface configured with an IPv4 address on the network device itself, and the next hop is the peer network device. An IPv4 address configured on an interface; in the route calculated by the network device for an Internet protocol version 6 (IPv6) prefix, the outgoing interface is an interface configured with an IPv6 address on the network device itself, and the next hop is The IPv6 address configured on an interface of the peer network device. That is to say, the protocol stacks (or address families) corresponding to the three things of prefix, next hop, and outbound interface are all of the same type, either IPv4 or IPv6. From the perspective of routing tables and forwarding tables on network devices, in the same entry in the routing table or forwarding table, the address family type of the prefix and the address family type of the next hop are consistent.
然而,如果采用上述单栈路由计算的方式来实现双栈业务,需要在每条链路对应的接口上配置IPv4地址和IPv6地址这两种地址,导致需要耗费大量的地址资源。However, if the above-mentioned single-stack route calculation method is used to implement dual-stack services, both IPv4 addresses and IPv6 addresses need to be configured on the interface corresponding to each link, resulting in the consumption of a large amount of address resources.
发明内容Contents of the invention
本申请实施例提供了一种路由生成方法、数据报文的转发方法及装置,有助于节省地址资源。所述技术方案如下。Embodiments of the present application provide a route generation method, a data packet forwarding method and a device, which help save address resources. The technical solution is as follows.
第一方面,提供了一种路由生成方法,该方法包括:The first aspect provides a route generation method, which includes:
第一网络设备获得网络拓扑;The first network device obtains the network topology;
所述第一网络设备接收来自第二网络设备的路由通告报文,所述路由通告报文用于发布对应于第一协议栈的地址信息;The first network device receives a route advertisement message from the second network device, and the route advertisement message is used to publish address information corresponding to the first protocol stack;
所述第一网络设备生成路由,所述路由包括所述对应于第一协议栈的地址信息以及对应于第二协议栈的地址信息,所述对应于第二协议栈的地址信息是所述网络拓扑中的第一链路的端点网络设备的地址信息。The first network device generates a route, the route includes the address information corresponding to the first protocol stack and the address information corresponding to the second protocol stack, and the address information corresponding to the second protocol stack is the network The address information of the endpoint network device of the first link in the topology.
上述方法中,路由计算的对象为对应于第一协议栈的地址信息,而路由计算的结果包括对应于第二协议栈的地址信息,即,允许路由计算的对象与路由计算的结果具有不同的地址族类型。以此方式,实现了支持双栈混合路由计算的方法。相较于现有技术中单栈路由计算的方式而言,上述方法在链路对应的接口上配置一种协议栈的地址信息,即可支持双栈业务的需求,而无需配置两种协议栈的地址,因而节约了互联网协议(internet protocol,IP)地址 资源。In the above method, the object of route calculation is the address information corresponding to the first protocol stack, and the result of route calculation includes the address information corresponding to the second protocol stack. That is, the object of route calculation and the result of route calculation are allowed to have different Address family type. In this way, a method to support dual-stack hybrid route computation is implemented. Compared with the single-stack route calculation method in the existing technology, the above method configures the address information of one protocol stack on the interface corresponding to the link to support the needs of dual-stack services without the need to configure two protocol stacks. address, thus saving Internet protocol (IP) addresses resource.
在一些实施方式中,所述网络拓扑中所述第一链路之外的其他所有链路的端点网络设备的地址信息均是对应于第二协议栈的地址信息。In some implementations, the address information of endpoint network devices of all other links except the first link in the network topology is address information corresponding to the second protocol stack.
通过上述方式,有助于在基于第二协议栈这一种协议栈来部署网络中所有链路的场景下,支持单栈拓扑进行双栈混合路由计算。Through the above method, it is helpful to support single-stack topology for dual-stack hybrid route calculation in the scenario where all links in the network are deployed based on the second protocol stack.
在一些实施方式中,所述网络拓扑还包括第二链路,所述第二链路的端点网络设备包括对应于第一协议栈的地址信息。In some embodiments, the network topology further includes a second link, and an endpoint network device of the second link includes address information corresponding to the first protocol stack.
通过上述方式,有助于在不同网络设备之间存在不同协议栈对应的链路的场景下,支持双栈混合路由计算。Through the above method, it is helpful to support dual-stack hybrid route calculation in scenarios where there are links corresponding to different protocol stacks between different network devices.
在一些实施方式中,所述网络拓扑包括双栈链路,所述双栈链路的端点网络设备包括对应于第一协议栈的地址信息和对应于第二协议栈的地址信息。In some embodiments, the network topology includes a dual-stack link, and an endpoint network device of the dual-stack link includes address information corresponding to a first protocol stack and address information corresponding to a second protocol stack.
通过上述方式,有助于在双栈链路部署的场景下,支持双栈混合路由计算。Through the above method, it helps to support dual-stack hybrid route calculation in the scenario of dual-stack link deployment.
在一些实施方式中,第二网络设备属于边界网关协议最短路径优先计算(shortest path first with border gateway protocol,BGP SPF)路由域且属于内部网关协议(interior gateway protocol,IGP)路由域,所述对应于第一协议栈的地址信息是所述IGP路由域中第三网络设备的地址信息。In some implementations, the second network device belongs to the border gateway protocol shortest path first calculation (shortest path first with border gateway protocol, BGP SPF) routing domain and belongs to the interior gateway protocol (interior gateway protocol, IGP) routing domain, and the corresponding The address information in the first protocol stack is the address information of the third network device in the IGP routing domain.
通过上述方式,有助于在BGP SPF路由域与IGP路由域拼接组建基础网络的场景下,支持将IGP路由域中网络设备的地址信息引入到BGP SPF路由域。Through the above method, it is helpful to introduce the address information of network devices in the IGP routing domain into the BGP SPF routing domain in the scenario where the BGP SPF routing domain and the IGP routing domain are spliced to form a basic network.
在一些实施方式中,所述对应于第一协议栈的地址信息是所述第二网络设备接入的用户设备的地址信息。In some implementations, the address information corresponding to the first protocol stack is the address information of the user equipment accessed by the second network device.
在一些实施方式中,所述第一网络设备获得网络拓扑,包括:In some implementations, the first network device obtains the network topology, including:
所述第一网络设备接收链路通告报文,所述链路通告报文用于发布所述第一链路的端点网络设备的地址信息;The first network device receives a link advertisement message, and the link advertisement message is used to publish address information of an endpoint network device of the first link;
所述第一网络设备根据所述第一链路的端点网络设备的地址信息获得所述网络拓扑。The first network device obtains the network topology based on address information of an endpoint network device of the first link.
在一些实施方式中,所述路由通告报文为BGP SPF报文。In some implementations, the route advertisement message is a BGP SPF message.
在一些实施方式中,所述第一协议栈为IPv4协议栈,所述第二协议栈为IPv6协议栈;或者,In some implementations, the first protocol stack is an IPv4 protocol stack, and the second protocol stack is an IPv6 protocol stack; or,
所述第一协议栈为IPv6协议栈,所述第二协议栈为IPv4协议栈。The first protocol stack is an IPv6 protocol stack, and the second protocol stack is an IPv4 protocol stack.
第二方面,提供了一种数据报文的转发方法,在该方法中,In the second aspect, a data packet forwarding method is provided. In this method,
第一网络设备接收数据报文,所述数据报文包括对应于第一协议栈的地址信息;The first network device receives a data packet, where the data packet includes address information corresponding to the first protocol stack;
所述第一网络设备基于所述对应于第一协议栈的地址信息以及路由,向对应于第二协议栈的地址信息转发所述数据报文,所述路由包括所述对应于第一协议栈的地址信息以及所述对应于第二协议栈的地址信息。The first network device forwards the data message to the address information corresponding to the second protocol stack based on the address information corresponding to the first protocol stack and the route. The route includes the address information corresponding to the first protocol stack. The address information and the address information corresponding to the second protocol stack.
上述方法中,接收到包含第一协议栈的地址信息的数据报文后,利用包含两种协议栈的地址信息的路由,向对应于第二协议栈的地址信息转发数据报文,从而支持双栈业务的需求,并且无需在链路对应的接口上配置两种协议栈的地址,因而节约了IP地址资源。In the above method, after receiving the data message containing the address information of the first protocol stack, the route containing the address information of the two protocol stacks is used to forward the data message to the address information corresponding to the second protocol stack, thereby supporting dual communication. Stack service requirements, and there is no need to configure the addresses of the two protocol stacks on the interface corresponding to the link, thus saving IP address resources.
在一些实施方式中,所述第一协议栈为IPv4协议栈,所述第二协议栈为IPv6协议栈;或者,In some implementations, the first protocol stack is an IPv4 protocol stack, and the second protocol stack is an IPv6 protocol stack; or,
所述第一协议栈为IPv6协议栈,所述第二协议栈为IPv4协议栈。 The first protocol stack is an IPv6 protocol stack, and the second protocol stack is an IPv4 protocol stack.
第三方面,提供了一种路由生成装置,该路由生成装置具有实现上述第一方面或第一方面任一种可选方式的功能。该路由生成装置包括至少一个单元,至少一个单元用于实现上述第一方面或第一方面任一种可选方式所提供的方法。In a third aspect, a route generation device is provided, which has the function of implementing the above-mentioned first aspect or any optional method of the first aspect. The route generation device includes at least one unit, and the at least one unit is used to implement the method provided by the above-mentioned first aspect or any optional manner of the first aspect.
在一些实施例中,路由生成装置中的单元通过软件实现,路由生成装置中的单元是程序模块。在另一些实施例中,路由生成装置中的单元通过硬件或固件实现。第三方面提供的路由生成装置的具体细节可参见上述第一方面或第一方面任一种可选方式,此处不再赘述。In some embodiments, the units in the route generation device are implemented by software, and the units in the route generation device are program modules. In other embodiments, the units in the route generating device are implemented by hardware or firmware. For specific details of the route generation device provided in the third aspect, please refer to the above-mentioned first aspect or any optional method of the first aspect, and will not be described again here.
第四方面,提供了一种数据报文的转发装置,该数据报文的转发装置具有实现上述第二方面或第二方面任一种可选方式的功能。该数据报文的转发装置包括至少一个单元,至少一个单元用于实现上述第二方面或第二方面任一种可选方式所提供的方法。In a fourth aspect, a data message forwarding device is provided. The data message forwarding device has the function of implementing the above second aspect or any optional method of the second aspect. The data message forwarding device includes at least one unit, and the at least one unit is used to implement the method provided by the above-mentioned second aspect or any optional manner of the second aspect.
在一些实施例中,数据报文的转发装置中的单元通过软件实现,数据报文的转发装置中的单元是程序模块。在另一些实施例中,数据报文的转发装置中的单元通过硬件或固件实现。第四方面提供的数据报文的转发装置的具体细节可参见上述第二方面或第二方面任一种可选方式,此处不再赘述。In some embodiments, the units in the device for forwarding data packets are implemented by software, and the units in the device for forwarding data packets are program modules. In other embodiments, the units in the device for forwarding data packets are implemented in hardware or firmware. For specific details of the data packet forwarding device provided in the fourth aspect, please refer to the above-mentioned second aspect or any optional method of the second aspect, and will not be described again here.
第五方面,提供了一种网络设备,该网络设备包括处理器和网络接口,该处理器用于执行指令,使得该网络设备执行上述第一方面或第一方面任一种可选方式所提供的方法,所述网络接口用于接收或发送报文。第五方面提供的网络设备的具体细节可参见上述第一方面或第一方面任一种可选方式,此处不再赘述。In a fifth aspect, a network device is provided. The network device includes a processor and a network interface. The processor is configured to execute instructions so that the network device executes the above-mentioned first aspect or any of the optional methods provided by the first aspect. Method, the network interface is used to receive or send messages. For specific details of the network device provided in the fifth aspect, please refer to the above-mentioned first aspect or any optional method of the first aspect, and will not be described again here.
第六方面,提供了一种网络设备,该网络设备包括处理器和网络接口,该处理器用于执行指令,使得该网络设备执行上述第二方面或第二方面任一种可选方式所提供的方法,所述网络接口用于接收或发送报文。第六方面提供的网络设备的具体细节可参见上述第二方面或第二方面任一种可选方式,此处不再赘述。In a sixth aspect, a network device is provided. The network device includes a processor and a network interface. The processor is configured to execute instructions so that the network device executes the above-mentioned second aspect or any of the optional methods provided by the second aspect. Method, the network interface is used to receive or send messages. For specific details of the network equipment provided in the sixth aspect, please refer to the above-mentioned second aspect or any optional method of the second aspect, and will not be described again here.
第七方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令,该指令在处理器上运行时,使得处理器执行上述第一方面或第一方面任一种可选方式所提供的方法。In a seventh aspect, a computer-readable storage medium is provided. The storage medium stores at least one instruction. When the instruction is run on a processor, it causes the processor to execute the above-mentioned first aspect or any one of the first optional aspects. method provided.
第八方面,提供了一种计算机可读存储介质,该存储介质中存储有至少一条指令,该指令在处理器上运行时,使得处理器执行上述第二方面或第二方面任一种可选方式所提供的方法。In an eighth aspect, a computer-readable storage medium is provided. The storage medium stores at least one instruction. When the instruction is run on a processor, it causes the processor to execute the above-mentioned second aspect or any one of the second optional aspects. method provided.
第九方面,提供了一种计算机程序产品,所述计算机程序产品包括一个或多个计算机程序指令,当所述计算机程序指令被计算机加载并运行时,使得所述计算机执行上述第一方面或第一方面任一种可选方式所提供的方法。In a ninth aspect, a computer program product is provided. The computer program product includes one or more computer program instructions. When the computer program instructions are loaded and run by a computer, they cause the computer to execute the first aspect or the third aspect. On the one hand, any of the options provided by the method.
第十方面,提供了一种计算机程序产品,所述计算机程序产品包括一个或多个计算机程序指令,当所述计算机程序指令被计算机加载并运行时,使得所述计算机执行上述第二方面或第二方面任一种可选方式所提供的方法。In a tenth aspect, a computer program product is provided. The computer program product includes one or more computer program instructions. When the computer program instructions are loaded and run by a computer, they cause the computer to execute the above second aspect or the third aspect. Methods provided by any of the two optional methods.
第十一方面,提供了一种芯片,包括存储器和处理器,存储器用于存储计算机指令,处理器用于从存储器中调用并运行该计算机指令,以执行上述第一方面及其第一方面任意可能的实现方式中的方法。In an eleventh aspect, a chip is provided, including a memory and a processor. The memory is used to store computer instructions. The processor is used to call and run the computer instructions from the memory to execute the above first aspect and any possibility of the first aspect. method in the implementation.
第十二方面,提供了一种芯片,包括存储器和处理器,存储器用于存储计算机指令,处理器用于从存储器中调用并运行该计算机指令,以执行上述第二方面或第二方面任一种可选方式所提供的方法。 In a twelfth aspect, a chip is provided, including a memory and a processor. The memory is used to store computer instructions. The processor is used to call and run the computer instructions from the memory to execute the above second aspect or any one of the second aspects. Optional methods provided.
第十三方面,提供了一种网络设备,所述网络设备包括:主控板和接口板,进一步,还可以包括交换网板。所述网络设备用于执行第一方面或第一方面的任意可能的实现方式中的方法。具体地,所述网络设备包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的单元。In a thirteenth aspect, a network device is provided. The network device includes: a main control board and an interface board, and may further include a switching network board. The network device is configured to perform the method in the first aspect or any possible implementation of the first aspect. Specifically, the network device includes a unit for performing the method in the first aspect or any possible implementation of the first aspect.
第十四方面,提供了一种网络设备,所述网络设备包括:主控板和接口板,进一步,还可以包括交换网板。所述网络设备用于执行第二方面或第二方面的任意可能的实现方式中的方法。具体地,所述网络设备包括用于执行第二方面或第二方面的任意可能的实现方式中的方法的单元。In a fourteenth aspect, a network device is provided. The network device includes: a main control board and an interface board. Further, it may also include a switching network board. The network device is configured to perform the method in the second aspect or any possible implementation of the second aspect. Specifically, the network device includes a unit for performing the method in the second aspect or any possible implementation of the second aspect.
附图说明Description of the drawings
图1是本申请实施例提供的一种网络部署场景的示意图;Figure 1 is a schematic diagram of a network deployment scenario provided by an embodiment of the present application;
图2是本申请实施例提供的一种路由生成方法的流程图;Figure 2 is a flow chart of a route generation method provided by an embodiment of the present application;
图3是本申请实施例提供的一种BGP SPF前缀NLRI的格式示意图;Figure 3 is a schematic diagram of the format of a BGP SPF prefix NLRI provided by the embodiment of the present application;
图4是本申请实施例提供的一种BGP SPF前缀NLRI中前缀描述符字段的格式示意图;Figure 4 is a schematic diagram of the format of the prefix descriptor field in the BGP SPF prefix NLRI provided by the embodiment of the present application;
图5是本申请实施例提供的一种BGP SPF链路NLRI的格式示意图;Figure 5 is a schematic diagram of the format of a BGP SPF link NLRI provided by the embodiment of this application;
图6是本申请实施例提供的一种BGP SPF节点NLRI的格式示意图;Figure 6 is a schematic diagram of the format of a BGP SPF node NLRI provided by the embodiment of the present application;
图7是本申请实施例提供的一种BGP SPF路由域与IGP路由域拼接部署的场景示意图;Figure 7 is a schematic diagram of a spliced deployment scenario of a BGP SPF routing domain and an IGP routing domain provided by the embodiment of this application;
图8是本申请实施例提供的另一种BGP SPF路由域与IGP路由域拼接部署的场景示意图;Figure 8 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided by the embodiment of this application;
图9是本申请实施例提供的另一种BGP SPF路由域与IGP路由域拼接部署的场景示意图;Figure 9 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided by the embodiment of this application;
图10是本申请实施例提供的另一种BGP SPF路由域与IGP路由域拼接部署的场景示意图;Figure 10 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided by the embodiment of this application;
图11是本申请实施例提供的一种BGP SPF路由域为双栈链路部署的场景示意图;Figure 11 is a schematic diagram of a scenario where the BGP SPF routing domain is deployed as a dual-stack link provided by the embodiment of this application;
图12是本申请实施例提供的一种IPv4拓扑的示意图;Figure 12 is a schematic diagram of an IPv4 topology provided by an embodiment of the present application;
图13是本申请实施例提供的一种IPv6拓扑的示意图;Figure 13 is a schematic diagram of an IPv6 topology provided by an embodiment of the present application;
图14是本申请实施例提供的一种混合双栈拓扑的示意图;Figure 14 is a schematic diagram of a hybrid dual-stack topology provided by an embodiment of the present application;
图15是本申请实施例提供的一种BGP SPF路由域为IPv4链路和IPv6链路拼接部署的场景示意图;Figure 15 is a schematic diagram of a scenario where the BGP SPF routing domain is spliced and deployed for IPv4 links and IPv6 links according to the embodiment of the present application;
图16是本申请实施例提供的一种路由生成装置600的结构示意图;Figure 16 is a schematic structural diagram of a route generation device 600 provided by an embodiment of the present application;
图17是本申请实施例提供的一种数据报文的转发装置700的结构示意图;Figure 17 is a schematic structural diagram of a data message forwarding device 700 provided by an embodiment of the present application;
图18是本申请实施例提供的一种网络设备800的结构示意图;Figure 18 is a schematic structural diagram of a network device 800 provided by an embodiment of the present application;
图19是本申请实施例提供的一种网络设备900的结构示意图。Figure 19 is a schematic structural diagram of a network device 900 provided by an embodiment of the present application.
具体实施方式Detailed ways
为使本申请的目的、技术方案和优点更加清楚,下面将结合图对本申请实施方式作进一步地详细描述。In order to make the purpose, technical solutions and advantages of the present application clearer, the embodiments of the present application will be further described in detail below with reference to the drawings.
下面描述一个本申请实施例提供的网络部署场景。The following describes a network deployment scenario provided by the embodiment of this application.
图1是本申请实施例提供的一种网络部署场景的示意图。图1所示的场景包括网络设备 D、网络设备C、网络设备E、网络设备F和用户网络边缘设备(customer edge,CE)。Figure 1 is a schematic diagram of a network deployment scenario provided by an embodiment of the present application. The scenario shown in Figure 1 includes network devices D. Network equipment C, network equipment E, network equipment F and user network edge equipment (customer edge, CE).
网络设备D、网络设备C、网络设备E和网络设备F中的任一个网络设备包括而不限于路由器、交换机等。网络设备D、网络设备C、网络设备E和网络设备F属于一个路由域。路由域即自治系统,在一个路由域中一群路由器通过相同的路由协议来交换路由信息。Any network device among network device D, network device C, network device E, and network device F includes but is not limited to routers, switches, and the like. Network device D, network device C, network device E and network device F belong to a routing domain. A routing domain is an autonomous system. In a routing domain, a group of routers exchange routing information through the same routing protocol.
图1所示的场景是一个基于IPv6网络部署的场景。网络设备D与网络设备E通过IPv6链路相连。网络设备C与网络设备F通过IPv6链路相连。此外,网络设备E与网络设备F均与CE相连。The scenario shown in Figure 1 is a scenario based on IPv6 network deployment. Network device D and network device E are connected through an IPv6 link. Network device C and network device F are connected through an IPv6 link. In addition, network device E and network device F are both connected to CE.
如图1所示,网络设备D具有接口3,接口3配置有IPv6地址10::20。网络设备E具有接口4,接口4配置有IPv6地址10::10。接口3与接口4之间建立了IPv6链路。也即是,对于网络设备D与网络设备E之间的IPv6链路而言,这条IPv6链路的端点网络设备包括网络设备D与网络设备E,这条IPv6链路的信息包括IPv6地址10::20和IPv6地址10::10。As shown in Figure 1, network device D has interface 3, and interface 3 is configured with IPv6 address 10::20. Network device E has interface 4, which is configured with IPv6 address 10::10. An IPv6 link is established between interface 3 and interface 4. That is, for the IPv6 link between network device D and network device E, the endpoint network devices of this IPv6 link include network device D and network device E, and the information of this IPv6 link includes IPv6 address 10 ::20 and IPv6 address 10::10.
网络设备C具有接口6,接口6配置有IPv6地址30::20。网络设备F具有接口5,接口5配置有IPv6地址30::10。接口6与接口5之间建立了IPv6链路。也即是,对于网络设备C与网络设备F之间的IPv6链路而言,这条IPv6链路的端点网络设备包括网络设备C与网络设备F,这条IPv6链路的信息包括IPv6地址30::20和IPv6地址30::10。Network device C has interface 6, which is configured with IPv6 address 30::20. Network device F has interface 5, which is configured with IPv6 address 30::10. An IPv6 link is established between interface 6 and interface 5. That is, for the IPv6 link between network device C and network device F, the endpoint network devices of this IPv6 link include network device C and network device F, and the information of this IPv6 link includes IPv6 address 30 ::20 and IPv6 address 30::10.
本申请的发明人发现,传统的基于单栈拓扑路由计算的技术在实现双栈业务时,会出现诸多缺陷。The inventor of this application discovered that the traditional single-stack topology route calculation technology will have many defects when implementing dual-stack services.
所谓双栈,是指两套协议栈,例如IPv4和IPv6这两套协议栈。所谓双栈业务,对于一个网络设备而言,是指网络设备能够转发两种协议栈对应的数据报文。在很多场景下,都具有实现双栈业务的需求。以两种协议栈分别为IPv4协议栈和IPv6协议栈为例进行描述,在一个示例性场景中,在运营商将基础(underlay)网络从IPv4网络升级改造为IPv6网络时,一般需要有一个过渡过程,即,underlay网络中既存在支持IPv4的网络设备以及IPv4链路,也存在支持IPv6的网络设备以及IPv6链路。在另一个示例性场景中,在应用从基于IPv4通信逐步升级为基于IPv6通信的过程中,一般也会存在很长一段时间内,安装应用的终端设备同时具有IPv4地址和IPv6地址的情况。在这两种场景下,涉及IPv4网络与IPv6网络共存互通,要求网络设备既能够将数据报文转发给一个IPv6网络设备或者IPv6终端,也能够将数据报文转发给一个IPv4网络设备或者IPv4终端。The so-called dual stack refers to two sets of protocol stacks, such as IPv4 and IPv6. The so-called dual-stack service, for a network device, means that the network device can forward data packets corresponding to two protocol stacks. In many scenarios, there is a need to implement dual-stack services. Taking the two protocol stacks as IPv4 protocol stack and IPv6 protocol stack as an example, in an exemplary scenario, when an operator upgrades the underlying network from an IPv4 network to an IPv6 network, a transition is generally required. The process, that is, there are both network devices and IPv4 links that support IPv4, and network devices and IPv6 links that support IPv6 in the underlay network. In another exemplary scenario, in the process of an application gradually upgrading from IPv4-based communication to IPv6-based communication, there will generally be a situation where the terminal device on which the application is installed has both an IPv4 address and an IPv6 address for a long period of time. In these two scenarios, involving the coexistence and interoperability of IPv4 networks and IPv6 networks, network devices are required to be able to forward data packets to an IPv6 network device or IPv6 terminal, and also to forward data packets to an IPv4 network device or IPv4 terminal. .
传统技术中在实现上述双栈业务时,需要将所有链路配置为双栈链路,从而形成双栈物理拓扑,即IPv4网络拓扑和IPv6网络拓扑。针对IPv4前缀,网络设备基于IPv4网络拓扑计算路由。针对IPv6前缀,网络设备基于IPv6网络拓扑计算路由。In traditional technology, when implementing the above dual-stack services, all links need to be configured as dual-stack links, thereby forming a dual-stack physical topology, namely IPv4 network topology and IPv6 network topology. For IPv4 prefixes, network devices calculate routes based on IPv4 network topology. For IPv6 prefixes, network devices calculate routes based on IPv6 network topology.
然而,这种方式会耗费大量的互联网协议(internet protocol,IP)地址资源。具体地,将网络中每一条链路配置为双栈链路时,都需要配置一对IPv4地址和一对IPv6地址,例如,将设备A的接口1和设备B的接口2之间的一条链路配置为双栈链路,就要求在接口1上配置IPv4地址和IPv6地址,且在接口2也配置IPv4地址和IPv6地址。然后,设备A基于接口1的IPv4地址、设备B基于接口2的IPv4地址建立链路;并且,设备A基于接口1的IPv6地址、设备B基于接口2的IPv6地址建立链路。随着业务发展,网络规模越来越大,无疑需要大量的IP地址。此外,每个网络设备需要部署IPv4和IPv6协议两套协议栈支持双栈业务,导致部署和维护复杂,网络设备处理压力较大。 However, this method consumes a large amount of Internet protocol (internet protocol, IP) address resources. Specifically, when configuring each link in the network as a dual-stack link, you need to configure a pair of IPv4 addresses and a pair of IPv6 addresses. For example, configure a link between interface 1 of device A and interface 2 of device B. If the link is configured as a dual-stack link, it is required to configure the IPv4 address and IPv6 address on interface 1, and also configure the IPv4 address and IPv6 address on interface 2. Then, device A establishes a link based on the IPv4 address of interface 1, and device B establishes a link based on the IPv4 address of interface 2; and, device A establishes a link based on the IPv6 address of interface 1, and device B establishes a link based on the IPv6 address of interface 2. As business develops, the scale of the network becomes larger and larger, which undoubtedly requires a large number of IP addresses. In addition, each network device needs to deploy two protocol stacks of IPv4 and IPv6 protocols to support dual-stack services, resulting in complex deployment and maintenance and high processing pressure on network devices.
基于此,本申请的一些实施例提供了一种支持双栈混合路由计算的方式。以两种协议栈分别为IPv4协议栈和IPv6协议栈为例进行描述,例如,可选地,网络设备针对一个IPv4前缀计算出的路由中,出接口是网络设备自身的一个配置有IPv6地址的接口,下一跳是对端网络设备的一个接口配置的IPv6地址;又如,可选地,网络设备针对一个IPv6前缀计算出的路由中,出接口是网络设备自身的一个配置有IPv4地址的接口,下一跳是对端网络设备的一个接口配置的IPv4地址。也即是,前缀、下一跳、出接口这三种事物对应的IP协议栈的类型不一致。从网络设备上路由表和转发表的角度描述,路由表或转发表的同一条表项中,前缀的地址族类型和下一跳的地址族类型是不同的。例如,前缀是IPv4前缀,而下一跳是IPv6地址,或者,前缀是IPv6前缀,而下一跳是IPv4地址。Based on this, some embodiments of the present application provide a way to support dual-stack hybrid route calculation. The two protocol stacks are the IPv4 protocol stack and the IPv6 protocol stack as an example. For example, optionally, in the route calculated by the network device for an IPv4 prefix, the outgoing interface is one of the network device itself configured with an IPv6 address. interface, the next hop is the IPv6 address configured on an interface of the peer network device; for another example, optionally, in the route calculated by the network device for an IPv6 prefix, the outgoing interface is an IPv4 address configured on the network device itself. Interface, the next hop is the IPv4 address configured for an interface of the peer network device. That is to say, the types of IP protocol stacks corresponding to the three things: prefix, next hop, and outbound interface are inconsistent. From the perspective of routing tables and forwarding tables on network devices, in the same entry in the routing table or forwarding table, the address family type of the prefix and the address family type of the next hop are different. For example, the prefix is an IPv4 prefix and the next hop is an IPv6 address, or the prefix is an IPv6 prefix and the next hop is an IPv4 address.
通过这种方式计算路由,仍以两种协议栈分别为IPv4协议栈和IPv6协议栈为例进行描述,在数据面转发阶段,当网络设备接收到IPv4数据报文时,网络设备基于IPv4数据报文中的目的IPv4地址查找路由时,能够寻址到IPv6下一跳,通过配置的IPv6地址的出接口,将IPv4数据报文转发至IPv6下一跳,而无需使用到网络设备本地的IPv4地址,也基本上不必要求网络设备基于IPv4协议与对端网络设备建立链路并保持通信。由此可见,这种方式减少了网络设备为支持双栈业务所需配置的IP地址数量,节约了IP地址资源。并且,减小维护两套IP协议栈引起的部署和维护的工作量,减小了网络设备的开销。Calculating routes in this way is still described by taking the two protocol stacks as IPv4 protocol stack and IPv6 protocol stack as an example. In the data plane forwarding stage, when the network device receives the IPv4 data packet, the network device performs the calculation based on the IPv4 data packet. When the destination IPv4 address in this article searches for a route, it can address the IPv6 next hop and forward the IPv4 data packet to the IPv6 next hop through the configured outbound interface of the IPv6 address without using the local IPv4 address of the network device. , and there is basically no need to require network equipment to establish a link with the peer network equipment based on the IPv4 protocol and maintain communication. It can be seen that this method reduces the number of IP addresses that network devices need to configure to support dual-stack services, and saves IP address resources. In addition, the deployment and maintenance workload caused by maintaining two sets of IP protocol stacks is reduced, and the cost of network equipment is reduced.
图2是本申请实施例提供的一种路由生成方法的流程图。图2所示方法包括以下S201至S204。Figure 2 is a flow chart of a route generation method provided by an embodiment of the present application. The method shown in Figure 2 includes the following S201 to S204.
图2所示方法涉及多个网络设备之间的交互。为了区分不同的网络设备,用“第一网络设备”、“第二网络设备”区分描述多个不同的网络设备。The method shown in Figure 2 involves interactions between multiple network devices. In order to distinguish different network devices, "first network device" and "second network device" are used to describe multiple different network devices.
图2所示方法涉及双协议栈混合路由计算,为了区分不同的协议栈,用“第一协议栈”、“第二协议栈”区分描述多个不同的协议栈。例如,所述第一协议栈为IPv4协议栈,所述第二协议栈为IPv6协议栈。又如,所述第一协议栈为IPv6协议栈,所述第二协议栈为IPv4协议栈。应理解,本申请中并不对协议栈的类型进行限定,下文中,以第一协议栈为IPv4协议栈,第二协议栈为IPv6协议栈为例进行描述。The method shown in Figure 2 involves dual protocol stack hybrid routing calculation. In order to distinguish different protocol stacks, "first protocol stack" and "second protocol stack" are used to describe multiple different protocol stacks. For example, the first protocol stack is an IPv4 protocol stack, and the second protocol stack is an IPv6 protocol stack. For another example, the first protocol stack is an IPv6 protocol stack, and the second protocol stack is an IPv4 protocol stack. It should be understood that the type of protocol stack is not limited in this application. In the following description, the first protocol stack is an IPv4 protocol stack and the second protocol stack is an IPv6 protocol stack as an example.
图2所示方法所基于的网络部署场景可选地如上述图1所示。例如,结合图1来看,图2所示方法中的第一网络设备为图1中的网络设备D,图2所示方法中的第二网络设备为图1中的网络设备E。The network deployment scenario on which the method shown in Figure 2 is based is optionally shown in Figure 1 above. For example, looking at FIG. 1 , the first network device in the method shown in FIG. 2 is the network device D in FIG. 1 , and the second network device in the method shown in FIG. 2 is the network device E in FIG. 1 .
S201、第一网络设备获得网络拓扑。S201. The first network device obtains the network topology.
网络拓扑用于指示路由域中存在的网络设备以及链路。在一些实施例中,网络拓扑包括至少一条链路的端点网络设备的地址信息。可选地,网络拓扑还包括至少一条链路的端点网络设备的标识。第一网络设备通过获取网络拓扑,以便基于网络拓扑中部分信息或全部信息生成路由。Network topology indicates the network devices and links that exist in a routing domain. In some embodiments, the network topology includes address information for endpoint network devices of at least one link. Optionally, the network topology also includes an identification of an endpoint network device of at least one link. The first network device obtains the network topology to generate a route based on part or all of the information in the network topology.
下面结合不同的网络部署场景对上述网络拓扑举例说明,参见下述场景一至场景四。The following is an example of the above network topology based on different network deployment scenarios, see Scenario 1 to Scenario 4 below.
场景一、纯IPv6基础网络部署场景。Scenario 1. Pure IPv6 basic network deployment scenario.
在场景一下,网络拓扑中所有链路均为IPv6链路。换句话说,网络拓扑中所有链路的端点网络设备的地址信息均是IPv6地址。In scenario 1, all links in the network topology are IPv6 links. In other words, the address information of the endpoint network devices of all links in the network topology is IPv6 address.
例如,网络中部署有网络设备A与网络设备B。网络设备A的接口A配置了一个IPv6 地址A,网络设备B的接口B配置了一个IPv6地址B。网络设备A基于IPv6地址A、网络设备B基于IPv6地址B建立了一条链路1。在这个例子中,链路1是一条IPv6链路,链路1的端点网络设备包括网络设备A以及网络设备B。链路1的端点网络设备的地址信息包括IPv6地址A和IPv6地址B。与此同理,网络中除了链路1之外的每条链路均为IPv6链路,相当于网络是一个纯IPv6网络。For example, network device A and network device B are deployed in the network. Interface A of network device A is configured with an IPv6 Address A, interface B of network device B is configured with an IPv6 address B. Network device A establishes a link 1 based on IPv6 address A and network device B based on IPv6 address B. In this example, link 1 is an IPv6 link, and the endpoint network devices of link 1 include network device A and network device B. The address information of the endpoint network device of link 1 includes IPv6 address A and IPv6 address B. In the same way, every link in the network except link 1 is an IPv6 link, which is equivalent to the network being a pure IPv6 network.
场景二、纯IPv4基础网络部署场景。Scenario 2: Pure IPv4 basic network deployment scenario.
在场景二下,网络拓扑中所有链路的端点网络设备的地址信息均是IPv4地址。换句话说,网络拓扑中所有链路均为IPv4链路。In scenario 2, the address information of the endpoint network devices of all links in the network topology is IPv4 address. In other words, all links in the network topology are IPv4 links.
例如,网络中部署有网络设备A与网络设备B。网络设备A的接口A配置了一个IPv4地址A,网络设备B的接口B配置了一个IPv4地址B。网络设备A基于IPv4地址A、网络设备B基于IPv4地址B建立了一条链路1。在这个例子中,链路1是一条IPv4链路,链路1的端点网络设备包括网络设备A以及网络设备B。链路1的端点网络设备的地址信息包括IPv4地址A和IPv4地址B。与此同理,网络中除了链路1之外的每条链路均为IPv4链路,相当于网络是一个纯IPv4网络。For example, network device A and network device B are deployed in the network. Interface A of network device A is configured with an IPv4 address A, and interface B of network device B is configured with an IPv4 address B. Network device A establishes a link 1 based on IPv4 address A and network device B based on IPv4 address B. In this example, link 1 is an IPv4 link, and the endpoint network devices of link 1 include network device A and network device B. The address information of the endpoint network device of link 1 includes IPv4 address A and IPv4 address B. In the same way, every link in the network except link 1 is an IPv4 link, which is equivalent to the network being a pure IPv4 network.
场景三、IPv6链路和IPv4链路拼接部署场景。Scenario 3: IPv6 link and IPv4 link splicing deployment scenario.
在场景三下,不同网络设备之间的链路具有不同的地址族类型,有些网络设备之间的链路的地址族类型对应于第一协议栈,有些网络设备之间的链路的地址族类型对应于第二协议栈。In scenario three, links between different network devices have different address family types. The address family types of some links between network devices correspond to the first protocol stack, and the address family types of links between some network devices correspond to the first protocol stack. The type corresponds to the second protocol stack.
例如,网络中部署有网络设备A、网络设备B和网络设备C。网络设备A的接口A配置了一个IPv6地址A,网络设备B的接口B1配置了一个IPv6地址B1,且网络设备B的接口B2配置了一个IPv4地址B2。网络设备C的接口C配置了一个IPv4地址C。网络设备A基于IPv6地址A、网络设备B基于IPv6地址B1建立了一条链路1。网络设备B基于IPv4地址B2、网络设备C基于IPv4地址C建立了一条链路2。在这个例子中,链路1是一条IPv4链路,链路1的端点网络设备包括网络设备A以及网络设备B。链路1的端点网络设备的地址信息包括IPv4地址A和IPv4地址B。在这个例子中,链路1是一条IPv6链路,链路1的端点网络设备包括网络设备A以及网络设备B。链路1的端点网络设备的地址信息包括IPv6地址A和IPv6地址B1。链路2是一条IPv4链路,链路2的端点网络设备包括网络设备B以及网络设备C。链路2的端点网络设备的地址信息包括于IPv4地址B2和IPv4地址C。For example, network device A, network device B, and network device C are deployed in the network. Interface A of network device A is configured with an IPv6 address A, interface B1 of network device B is configured with an IPv6 address B1, and interface B2 of network device B is configured with an IPv4 address B2. Interface C of network device C is configured with an IPv4 address C. Network device A establishes a link 1 based on IPv6 address A and network device B based on IPv6 address B1. Network device B establishes a link 2 based on IPv4 address B2 and network device C based on IPv4 address C. In this example, link 1 is an IPv4 link, and the endpoint network devices of link 1 include network device A and network device B. The address information of the endpoint network device of link 1 includes IPv4 address A and IPv4 address B. In this example, link 1 is an IPv6 link, and the endpoint network devices of link 1 include network device A and network device B. The address information of the endpoint network device of link 1 includes IPv6 address A and IPv6 address B1. Link 2 is an IPv4 link, and the endpoint network devices of link 2 include network device B and network device C. The address information of the endpoint network device of link 2 is included in IPv4 address B2 and IPv4 address C.
场景四、双栈链路部署场景。Scenario 4: Dual-stack link deployment scenario.
在场景四下,网络拓扑包括双栈链路,双栈链路的端点网络设备包括对应于第一协议栈的地址信息和对应于第二协议栈的地址信息。In scenario four, the network topology includes a dual-stack link, and the endpoint network device of the dual-stack link includes address information corresponding to the first protocol stack and address information corresponding to the second protocol stack.
S202、第二网络设备基于待发布的地址信息,生成路由通告报文,第二网络设备向第一网络设备发送路由通告报文。S202. The second network device generates a route advertisement message based on the address information to be released, and the second network device sends the route advertisement message to the first network device.
上述待发布的地址信息存在多种可能情况。从地址信息的形式的角度来看,可选地,上述地址信息包括前缀或IP地址中至少一项。从地址族类型的角度来看,可选地,上述地址信息是IPv4地址信息,例如上述地址信息包括IPv4前缀或者IPv4地址中至少一项。或者,上述地址信息是IPv6地址信息,例如上述地址信息包括IPv6前缀或者IPv6地址中至少一项。There are many possible situations for the above address information to be released. From the perspective of the form of address information, optionally, the above address information includes at least one of a prefix or an IP address. From the perspective of address family type, optionally, the above address information is IPv4 address information. For example, the above address information includes at least one of an IPv4 prefix or an IPv4 address. Alternatively, the above address information is IPv6 address information. For example, the above address information includes at least one of an IPv6 prefix or an IPv6 address.
上述地址信息所属的设备包括多种情况,下面结合三种情况举例说明。The device to which the above address information belongs includes many situations. The following is an example of three situations.
情况一、上述地址信息是用户设备的地址信息。 Case 1: The above address information is the address information of the user equipment.
在一个示例性场景中,第二网络设备接入了一个用户设备,用户设备将用户设备的地址信息发送给第二网络设备。第二网络设备接收用户设备的地址信息,将用户设备的地址信息作为待发布的地址信息,将地址信息携带在路由通告报文中,发送给第一网络设备,从而触发第一网络设备计算到达用户设备的路由,以便满足向用户设备转发数据报文的业务需求。该用户设备例如是CE,又如是终端。In an exemplary scenario, the second network device accesses a user equipment, and the user equipment sends the address information of the user equipment to the second network device. The second network device receives the address information of the user equipment, uses the address information of the user equipment as the address information to be released, carries the address information in the route advertisement message, and sends it to the first network device, thereby triggering the first network device to calculate arrival Routing of user equipment to meet the business requirements of forwarding data packets to user equipment. The user equipment is, for example, a CE or a terminal.
情况二、上述地址信息是第二网络设备的一个接口上配置的地址信息,即第二网络设备本端的地址信息。Case 2: The above address information is the address information configured on an interface of the second network device, that is, the address information of the second network device itself.
情况三、上述地址信息是第三网络设备的地址信息。Case 3: The above address information is the address information of the third network device.
例如,第三网络设备和第二网络设备属于第一路由域,第二网络设备和第一网络设备属于第二路由域。第三网络设备将第三网络设备的地址信息发送给第二网络设备。第二网络设备接收来自第三网络设备的地址信息,将第三网络设备的地址信息作为待发布的地址信息,将地址信息携带在路由通告报文中,发送给第一网络设备。通过这种方式,从而将一个路由域中网络设备的地址信息引入到另一个路由域,满足不同路由域之间地址信息互相引入的需求。可选地,上述第一路由域为IGP路由域,第二路由域为BGP SPF路由域。或者,上述第一路由域为BGP SPF路由域,第二路由域为IGP路由域。For example, the third network device and the second network device belong to the first routing domain, and the second network device and the first network device belong to the second routing domain. The third network device sends the address information of the third network device to the second network device. The second network device receives the address information from the third network device, uses the address information of the third network device as the address information to be released, carries the address information in the route advertisement message, and sends it to the first network device. In this way, the address information of network devices in one routing domain is introduced to another routing domain, meeting the need for mutual introduction of address information between different routing domains. Optionally, the above-mentioned first routing domain is an IGP routing domain, and the second routing domain is a BGP SPF routing domain. Alternatively, the above-mentioned first routing domain is a BGP SPF routing domain, and the second routing domain is an IGP routing domain.
路由通告报文用于发布对应于第一协议栈的地址信息。在一些实施例中,路由通告报文包括第二网络设备的标识以及对应于第一协议栈的地址信息。例如,请参考图1,待发布的地址信息是CE的IPv4地址10.1.1.2。网络设备E(第二网络设备)基于IPv4地址10.1.1.2以及网络设备E的标识生成一个路由通告报文。网络设备E通过IPv6链路向网络设备D发送路由通告报文。The route advertisement message is used to publish address information corresponding to the first protocol stack. In some embodiments, the route advertisement message includes an identification of the second network device and address information corresponding to the first protocol stack. For example, please refer to Figure 1. The address information to be published is the CE's IPv4 address 10.1.1.2. Network device E (the second network device) generates a route advertisement message based on the IPv4 address 10.1.1.2 and the identification of network device E. Network device E sends a route advertisement message to network device D through the IPv6 link.
从协议类型的角度来看,可选地,路由通告报文为BGP SPF报文。可替代地,路由通告报文为IGP报文。例如,路由通告报文为开放式最短路径优先(open shortest path first,OSPF)报文或者中间系统到中间系统(intermediate system to intermediate system,IS-IS)协议报文。下面以路由通告报文为BGP SPF报文为例,对路由通告报文的格式和内容举例说明。From the perspective of protocol type, optionally, route advertisement messages are BGP SPF messages. Alternatively, the route advertisement message is an IGP message. For example, route advertisement messages are open shortest path first (OSPF) messages or intermediate system to intermediate system (IS-IS) protocol messages. The following takes the route advertisement message as a BGP SPF message as an example to illustrate the format and content of the route advertisement message.
可选地,路由通告报文包括BGP SPF前缀网络层可达性消息(network layer reachability information,NLRI)。例如,请参考图3,第二网络设备向第一网络设备发送图3所示的BGP SPF前缀NLRI,其中本地节点描述符字段包括第二网络设备的标识,前缀描述符字段包括对应于第一协议栈的前缀。Optionally, the route advertisement message includes BGP SPF prefix network layer reachability information (network layer reachability information, NLRI). For example, please refer to Figure 3. The second network device sends the BGP SPF prefix NLRI shown in Figure 3 to the first network device, where the local node descriptor field includes the identity of the second network device, and the prefix descriptor field includes the identifier corresponding to the first network device. The prefix of the protocol stack.
S203、第一网络设备接收来自第二网络设备的路由通告报文。S203. The first network device receives the route advertisement message from the second network device.
可选地,第二网络设备通过配置有第二协议栈的地址信息的出接口,向第一网络设备发送路由通告报文。第一网络设备通过配置有第二协议栈的地址信息的出接口接收路由通告报文。例如,第二网络设备通过IPv6接口,向第一网络设备发送包含IPv4前缀的路由通告报文。第一网络设备通过IPv6接口,接收包含IPv4前缀的路由通告报文。又如,第二网络设备通过IPv4接口,向第一网络设备发送包含IPv6前缀的路由通告报文。第一网络设备通过IPv4接口,接收包含IPv6前缀的路由通告报文。Optionally, the second network device sends the route advertisement message to the first network device through the outbound interface configured with the address information of the second protocol stack. The first network device receives the route advertisement message through the outgoing interface configured with the address information of the second protocol stack. For example, the second network device sends a route advertisement message containing the IPv4 prefix to the first network device through the IPv6 interface. The first network device receives the route advertisement message containing the IPv4 prefix through the IPv6 interface. For another example, the second network device sends a route advertisement message containing the IPv6 prefix to the first network device through the IPv4 interface. The first network device receives the route advertisement message containing the IPv6 prefix through the IPv4 interface.
S204、第一网络设备生成路由。S204. The first network device generates a route.
路由包括对应于第一协议栈的地址信息以及对应于第二协议栈的地址信息。The route includes address information corresponding to the first protocol stack and address information corresponding to the second protocol stack.
关于路由中对应于第一协议栈的地址信息而言,路由中对应于第一协议栈的地址信息是从路由通告报文获得的。也即是,路由中对应于第一协议栈的地址信息是第二网络设备向第 一网络设备发布的地址信息。例如,路由包括目的前缀,路由中的目的前缀为对应于第一协议栈的前缀。又如,路由包括目的地址,路由中的目的地址为对应于第一协议栈的地址。Regarding the address information corresponding to the first protocol stack in the route, the address information corresponding to the first protocol stack in the route is obtained from the route advertisement message. That is to say, the address information corresponding to the first protocol stack in the route is sent by the second network device to the third Address information published by a network device. For example, the route includes a destination prefix, and the destination prefix in the route is a prefix corresponding to the first protocol stack. For another example, the route includes a destination address, and the destination address in the route is an address corresponding to the first protocol stack.
关于路由中对应于第二协议栈的地址信息而言,路由中对应于第二协议栈的地址信息是基于网络拓扑获得的。例如,路由包括下一跳,路由中下一跳为对应于第二协议栈的IP地址。路由中对应于第二协议栈的地址信息例如是网络拓扑中的第一链路的端点网络设备的地址信息。Regarding the address information corresponding to the second protocol stack in the route, the address information corresponding to the second protocol stack in the route is obtained based on the network topology. For example, the route includes a next hop, and the next hop in the route is an IP address corresponding to the second protocol stack. The address information corresponding to the second protocol stack in the route is, for example, the address information of the endpoint network device of the first link in the network topology.
在一些实施例中,路由包括下一跳和出接口。例如,第一网络设备的第一出接口与第二网络设备的第二出接口之间建立了第一链路。第一网络设备生成了一条路由。路由中下一跳为对端接口地址,即第二出接口上配置的对应于第二协议栈的IP地址。路由中出接口为第一出接口。可替代地,路由中包括下一跳而不包括出接口。In some embodiments, a route includes a next hop and an outbound interface. For example, a first link is established between the first outbound interface of the first network device and the second outbound interface of the second network device. The first network device generates a route. The next hop in the route is the peer interface address, that is, the IP address configured on the second outgoing interface corresponding to the second protocol stack. The outbound interface in the route is the first outbound interface. Alternatively, the next hop is included in the route but not the outbound interface.
例如,请参考图1,网络设备D(第一网络设备)接收到网络设备E(第二网络设备)发布的IPv4地址10.1.1.2后,基于该IPv4地址以及网络拓扑中链路DE的对端接口地址(即IPv6地址10::10),生成了一条路由,这条路由中目的地址是IPv4地址10.1.1.2,下一跳是链路DE的对端接口地址(即IPv6地址10::10),出接口是链路DE的本地接口(即接口3)。For example, please refer to Figure 1. After network device D (first network device) receives the IPv4 address 10.1.1.2 issued by network device E (second network device), based on the IPv4 address and the peer of link DE in the network topology, interface address (i.e. IPv6 address 10::10), a route is generated. The destination address in this route is IPv4 address 10.1.1.2, and the next hop is the peer interface address of link DE (i.e. IPv6 address 10::10 ), the outgoing interface is the local interface of link DE (that is, interface 3).
可选地,第一网络设备基于SPF算法生成路由。例如,第一网络设备从路由通告报文获得第二网络设备的标识。第一网络设备基于第二网络设备的标识在网络拓扑中查找到第二网络设备所在的位置。第一网络设备从网络拓扑中确定从第一网络设备至第二网络设备的最短路径。第一网络设备将该最短路径上第一网络设备的下一个网络设备作为下一跳,并将路由通告报文中的前缀作为目的前缀,从而生成一条路由。Optionally, the first network device generates the route based on the SPF algorithm. For example, the first network device obtains the identity of the second network device from the route advertisement message. The first network device finds the location of the second network device in the network topology based on the identifier of the second network device. The first network device determines a shortest path from the first network device to the second network device from the network topology. The first network device uses the network device next to the first network device on the shortest path as the next hop, and uses the prefix in the route advertisement message as the destination prefix, thereby generating a route.
以上S201至S204描述了控制面的路由生成流程,基于上述路由生成流程,图2所示方法还可以进一步包括数据面的报文转发流程,参见下述S205至S206。The above S201 to S204 describe the route generation process of the control plane. Based on the above route generation process, the method shown in Figure 2 can further include the packet forwarding process of the data plane. See S205 to S206 below.
S205、第一网络设备接收数据报文。S205. The first network device receives the data message.
数据报文包括对应于第一协议栈的地址信息。例如,数据报文的目的地址字段包括对应于第一协议栈的IP地址。The data packet includes address information corresponding to the first protocol stack. For example, the destination address field of the data message includes an IP address corresponding to the first protocol stack.
S206、第一网络设备基于对应于第一协议栈的地址信息以及路由,向对应于第二协议栈的地址信息转发数据报文。S206. The first network device forwards the data packet to the address information corresponding to the second protocol stack based on the address information and routing corresponding to the first protocol stack.
例如,第一网络设备以对应于第一协议栈的地址信息为索引查找路由表,得到对应于第二协议栈的地址信息。第一网络设备将该对应于第二协议栈的地址信息作为下一跳,向对应于第二协议栈的地址信息转发数据报文。For example, the first network device searches the routing table using the address information corresponding to the first protocol stack as an index, and obtains the address information corresponding to the second protocol stack. The first network device uses the address information corresponding to the second protocol stack as the next hop and forwards the data packet to the address information corresponding to the second protocol stack.
本实施例提供的方法,路由计算的对象为对应于第一协议栈的地址信息,而路由计算的结果包括对应于第二协议栈的地址信息,即,允许路由计算的对象与路由计算的结果具有不同的地址族类型。以此方式,实现了支持双栈混合路由计算的方法。相较于现有技术中单栈路由计算的方式而言,本实施例在链路对应的接口上配置IPv4地址或IPv6地址其中的一种地址,即可支持双栈业务的需求,而无需配置两种协议栈的地址,因而节约了IP地址资源。In the method provided by this embodiment, the object of route calculation is the address information corresponding to the first protocol stack, and the result of route calculation includes the address information corresponding to the second protocol stack, that is, the object of route calculation and the result of route calculation are allowed There are different address family types. In this way, a method to support dual-stack hybrid route computation is implemented. Compared with the single-stack route calculation method in the prior art, this embodiment configures an IPv4 address or an IPv6 address on the interface corresponding to the link to support the dual-stack service requirements without the need for configuration. The addresses of the two protocol stacks thus save IP address resources.
下面对图2所示方法中第一网络设备获得网络拓扑的过程举例说明。The following is an example of the process by which the first network device obtains the network topology in the method shown in Figure 2.
在一些实施例中,第一网络设备基于至少一条链路的信息获得网络拓扑。一条链路的信息例如包括一对IP地址,这对IP地址包括链路的两个端点网络设备的地址信息。第一网络设备如何获得链路的信息包括多种方式。例如,第一网络设备获取本设备直连的每条链路的信息。或者,由第一网络设备的邻居网络设备向第一网络设备通告链路的信息。或者,通过 静态配置的方式在第一网络设备上配置链路的信息。In some embodiments, the first network device obtains the network topology based on information of at least one link. The information of a link includes, for example, a pair of IP addresses. The pair of IP addresses includes the address information of the two endpoint network devices of the link. How the first network device obtains link information includes multiple methods. For example, the first network device obtains information about each link directly connected to the device. Alternatively, a neighbor network device of the first network device advertises the link information to the first network device. Or, by The link information is configured on the first network device in a static configuration manner.
以第二网络设备向第一网络设备通告第一链路的信息为例,例如,第二网络设备生成链路通告报文,第二网络设备向第一网络设备发送链路通告报文。所述第一网络设备接收链路通告报文,所述第一网络设备根据所述第一链路的端点网络设备的地址信息获得所述网络拓扑。Taking the second network device advertising the information of the first link to the first network device as an example, for example, the second network device generates a link advertisement message, and the second network device sends the link advertisement message to the first network device. The first network device receives a link advertisement message, and the first network device obtains the network topology based on address information of an endpoint network device of the first link.
所述链路通告报文用于发布所述第一链路的端点网络设备的地址信息;在一些实施例中,链路通告报文包括第一链路的两个端点网络设备的地址信息。从协议类型的角度来看,可选地,所述链路通告报文为BGP SPF报文。可替代地,所述链路通告报文为IGP报文。例如,所述链路通告报文为OSPF报文或者IS-IS报文。The link advertisement message is used to publish the address information of the endpoint network device of the first link; in some embodiments, the link advertisement message includes the address information of the two endpoint network devices of the first link. From the perspective of protocol type, optionally, the link advertisement message is a BGP SPF message. Alternatively, the link advertisement message is an IGP message. For example, the link advertisement message is an OSPF message or an IS-IS message.
下面以链路通告报文为BGP SPF报文为例,对链路通告报文的格式和内容举例说明。The following takes the link advertisement message as a BGP SPF message as an example to illustrate the format and content of the link advertisement message.
可选地,链路通告报文包括BGP SPF链路NLRI。例如,请参考图5,第二网络设备向第一网络设备发送图5所示的BGP SPF链路NLRI,其中本地节点描述符字段包括第二网络设备的标识,链路描述符字段包括第二网络设备上对应于第一链路的接口的IP地址。Optionally, the link advertisement message includes the BGP SPF link NLRI. For example, please refer to Figure 5. The second network device sends the BGP SPF link NLRI shown in Figure 5 to the first network device, where the local node descriptor field includes the identity of the second network device, and the link descriptor field includes the second network device. The IP address of the interface on the network device that corresponds to the first link.
可选地,第一网络设备还基于至少一个网络设备的标识获得网络拓扑。例如,第二网络设备生成节点通告报文,第二网络设备向第一网络设备发送节点通告报文。第一网络设备接收节点通告报文。节点通告报文包括第二网络设备的标识。所述第一网络设备从节点通告报文获得第二网络设备的标识,根据第二网络设备的标识获得所述网络拓扑。可选地,节点通告报文包括图6所示的BGP SPF节点NLRI。Optionally, the first network device further obtains the network topology based on the identity of at least one network device. For example, the second network device generates a node advertisement message, and the second network device sends the node advertisement message to the first network device. The first network device receives the node advertisement message. The node advertisement message includes the identification of the second network device. The first network device obtains the identity of the second network device from the node advertisement message, and obtains the network topology according to the identity of the second network device. Optionally, the node advertisement message includes the BGP SPF node NLRI shown in Figure 6.
可选地,节点信息、链路信息和前缀信息是通过三个不同的报文通告的。换句话说,节点通告报文、链路通告报文和路由通告报文是三个不同的报文。可替代地,节点信息、链路信息和前缀信息是通过同一个报文通告的。例如,节点信息、链路信息和前缀信息是通过同一报文中的三个不同类型长度值(type length value,TLV)通告的。Optionally, node information, link information, and prefix information are advertised through three different messages. In other words, the node advertisement message, the link advertisement message and the route advertisement message are three different messages. Alternatively, node information, link information, and prefix information are advertised through the same packet. For example, node information, link information and prefix information are advertised through three different type length values (TLV) in the same message.
本申请的一些可选实施例涉及BGP SPF协议的应用,为帮助理解,下面对BGP SPF协议进行简要描述。Some optional embodiments of this application involve the application of the BGP SPF protocol. To help understanding, the BGP SPF protocol is briefly described below.
(1)BGP SPF协议(1)BGP SPF protocol
BGP SPF协议是一种新型的路由协议。BGP SPF协议基于内部网关协议(interior gateway protocol,IGP)协议中最短路径优先计算(shortest path first,SPF)算法进行算路,并使用了BGP链路状态(BGP link-state,BGP-LS)协议定义的NLRI和TLV。BGP SPF protocol is a new type of routing protocol. The BGP SPF protocol is based on the shortest path first (SPF) algorithm in the interior gateway protocol (IGP) protocol for path calculation, and uses the BGP link-state (BGP-LS) protocol. Defined NLRI and TLV.
(2)BGP SPF协议与边界网关协议(border gateway protocol,BGP)协议之间的关系(2) The relationship between the BGP SPF protocol and the border gateway protocol (BGP) protocol
BGP SPF协议是一种BGP协议的扩展协议。BGP SPF协议对应于BGP协议中一种新增的地址族。The BGP SPF protocol is an extension of the BGP protocol. The BGP SPF protocol corresponds to a new address family in the BGP protocol.
关于这两种路由协议的共性而言,BGP SPF协议使用了BGP协议中很多机制,包括而不限于BGP协议中有限状态机、BGP消息的编码格式、BGP消息的处理过程、BGP属性、BGP NLRI以及错误处理机制等。BGP协议中的这些机制可参考RFC4271以及RFC7606的介绍。Regarding the commonalities between the two routing protocols, the BGP SPF protocol uses many mechanisms in the BGP protocol, including but not limited to the finite state machine in the BGP protocol, the encoding format of the BGP message, the processing process of the BGP message, BGP attributes, and BGP NLRI. And error handling mechanism, etc. For these mechanisms in the BGP protocol, please refer to the introduction of RFC4271 and RFC7606.
关于这两种路由协议的区别而言,BGP协议主要用于支持自治系统(autonomous system,AS)之间路由的传递。BGP协议通常不负责算路,BGP协议利用其它路由协议提供的路由,基于策略和各种属性决策路径。BGP协议是一种覆盖(overlay)协议,BGP协议的underlay协议一般是内部网关协议(interior gateway protocol,IGP)协议。BGP SPF协议支持算路, BGP SPF协议将BGP协议中的路径决策过程替代为基于SPF算法进行算路。BGP SPF协议可作为一种underlay协议。BGP SPF协议在一定程度上可以替代IGP协议。Regarding the differences between the two routing protocols, the BGP protocol is mainly used to support the transfer of routes between autonomous systems (AS). The BGP protocol is usually not responsible for route calculation. The BGP protocol uses routes provided by other routing protocols to determine paths based on policies and various attributes. The BGP protocol is an overlay protocol, and the underlay protocol of the BGP protocol is generally an interior gateway protocol (IGP) protocol. The BGP SPF protocol supports path calculation. The BGP SPF protocol replaces the path decision-making process in the BGP protocol with path calculation based on the SPF algorithm. The BGP SPF protocol can be used as an underlay protocol. The BGP SPF protocol can replace the IGP protocol to a certain extent.
(3)BGP SPF协议相较于IGP协议的优势(3) Advantages of BGP SPF protocol compared to IGP protocol
基于BGP SPF协议进行路由计算相较于基于IGP进行路由计算而言,达到的技术效果包括而不限于以下四个方面。Compared with route calculation based on IGP, the technical effects achieved by route calculation based on the BGP SPF protocol include but are not limited to the following four aspects.
A、无需分域A. No need for domain division
在大型网络中应用IGP协议时通常需要分域,即,将一个自治系统划分成不同的区域。区域是从逻辑上将路由器划分为不同的组,每个组用区域号(area ID)来标识。区域的边界是路由器,而不是链路。例如,OSPF协议会将自治系统划分为普通区域、末梢(stub)区域、末梢节区域(not-so-stubby area,NSSA)等不同类型的区域,IS-IS协议会将路由域划分出骨干网和非骨干网。而BGP SPF协议通常没有分域的概念,不需要进行分域。When applying the IGP protocol in a large network, domain division is usually required, that is, an autonomous system is divided into different areas. Areas logically divide routers into different groups, and each group is identified by an area ID. Area boundaries are routers, not links. For example, the OSPF protocol divides autonomous systems into different types of areas such as normal areas, stub areas, and stub areas (not-so-stubby area, NSSA). The IS-IS protocol divides routing domains into backbone networks. and non-backbone networks. The BGP SPF protocol usually does not have the concept of domain classification and does not require domain classification.
B、非周期性地链路状态更新B. Aperiodic link status updates
IGP协议通常会周期性地更新整个区域内的链路状态。所谓泛洪是指,一个路由器向相邻路由器通告自己的链路状态,相邻路由器再将该链路状态发送至其他相邻路由器,直至整个区域内所有路由器拥有相同的链路状态。由于设备需要周期性地更新链路状态,导致设备的开销较大。而BGP SPF协议中,链路状态的更新通常是非周期性地,从而减少了设备的开销。The IGP protocol usually updates the link status within the entire area periodically. The so-called flooding means that a router advertises its link status to neighboring routers, and the neighboring routers then send the link status to other neighboring routers until all routers in the entire area have the same link status. Because the device needs to update the link status periodically, the device overhead is high. In the BGP SPF protocol, link status updates are usually aperiodic, thus reducing device overhead.
C、增量式的路由通告C. Incremental route advertisement
BGP SPF协议通常采用增量式的方式通告路由,即,如果路由没有发生变化,则无需发送报文来通告路由。如果路由发生增加,则通告给邻居增加的路由,如果路由发生删除,则通告给邻居删除的路由。通过增量地通告路由,能够避免全量式通告路由导致传递的路由条目数量巨大、影响效率。The BGP SPF protocol usually uses an incremental method to advertise routes, that is, if the route does not change, there is no need to send a message to advertise the route. If a route is added, the added route is notified to the neighbor. If a route is deleted, the deleted route is notified to the neighbor. By incrementally advertising routes, it is possible to avoid the huge number of route entries being delivered and affecting efficiency caused by full advertising of routes.
D、基于传输控制协议(transmission control protocol,TCP)的流量控制D. Flow control based on transmission control protocol (TCP)
IGP通常基于非面向连接的协议来传输路由协议报文,因此需要额外设计一些机制,来保证路由协议报文的传输可靠性,如OSPF协议中设计了主从协商机制来保证传输可靠性,路由信息协议(routing information protocol,RIP)中设计了定期重传的方式来保证传输可靠性。而BGP SPF协议通常基于TCP协议传输路由协议报文,因此传输可靠性较高,通常无需额外设计机制来保证传输可靠性。IGP is usually based on non-connection-oriented protocols to transmit routing protocol messages, so some additional mechanisms need to be designed to ensure the transmission reliability of routing protocol messages. For example, the OSPF protocol has a master-slave negotiation mechanism to ensure transmission reliability. The routing information protocol (RIP) is designed with a regular retransmission method to ensure transmission reliability. The BGP SPF protocol is usually based on the TCP protocol to transmit routing protocol messages, so the transmission reliability is high, and there is usually no need to design additional mechanisms to ensure transmission reliability.
(4)BGP SPF NLRI(4)BGP SPF NLRI
BGP SPF NLRI是一种BGP LS协议中的网络层可达信息(NLRI),用于进行路由计算。BGP SPF NLRI具有RFC 7752定义的封装格式。BGP SPF NLRI进一步分为三种类型,分别是BGP SPF前缀NLRI、BGP SPF链路NLRI和BGP SPF节点NLRI。BGP SPF NLRI is a network layer reachability information (NLRI) in the BGP LS protocol, which is used for route calculation. BGP SPF NLRI has an encapsulation format defined by RFC 7752. BGP SPF NLRI is further divided into three types, namely BGP SPF prefix NLRI, BGP SPF link NLRI and BGP SPF node NLRI.
(5)BGP SPF前缀NLRI(BGP SPF prefix-NLRI)(5)BGP SPF prefix NLRI (BGP SPF prefix-NLRI)
BGP SPF前缀NLRI用于发布前缀信息。图3是本实施例提供的一种BGP SPF前缀NLRI的格式示意图,如图3所示,BGP SPF前缀NLRI包括协议ID(protocol-ID)字段、标识符(identifier)字段、本地节点描述符(local node descriptors)字段以及前缀描述符(prefix descriptors)字段。BGP SPF prefix NLRI is used to publish prefix information. Figure 3 is a schematic diagram of the format of a BGP SPF prefix NLRI provided by this embodiment. As shown in Figure 3, the BGP SPF prefix NLRI includes a protocol ID (protocol-ID) field, an identifier (identifier) field, and a local node descriptor ( local node descriptors) field and prefix descriptors (prefix descriptors) field.
本地节点描述符字段用于携带发布前缀的网络设备(或者说前缀的源设备)的标识。例如,本地节点描述符字段携带网络设备的AS号(autonomous system number)以及路由器ID (router-ID)。The local node descriptor field is used to carry the identification of the network device that publishes the prefix (or the source device of the prefix). For example, the local node descriptor field carries the AS number (autonomous system number) of the network device and the router ID. (router-ID).
由于BGP SPF前缀NLRI携带本地节点描述符字段以及前缀描述符字段,从而指示前缀与发布前缀的网络设备之间的绑定关系,因此BGP SPF前缀NLRI的接收端不仅能够获得前缀,也能够获知前缀来自于哪个网络设备,从而触发接收端以该网络设备为目的端进行路由计算。Since the BGP SPF prefix NLRI carries the local node descriptor field and the prefix descriptor field, thereby indicating the binding relationship between the prefix and the network device that publishes the prefix, the receiving end of the BGP SPF prefix NLRI can not only obtain the prefix, but also learn about the prefix. Which network device it comes from, thus triggering the receiving end to perform route calculation with this network device as the destination.
前缀描述符字段用于携带IP地址前缀,例如携带IPv4前缀或者IPv6前缀。可选地,前缀描述符字段具有TLV的编码结构。例如,前缀描述符字段包括RFC7752中描述的IP可达性信息TLV(IP reachability information TLV)。The prefix descriptor field is used to carry the IP address prefix, such as IPv4 prefix or IPv6 prefix. Optionally, the prefix descriptor field has a TLV encoding structure. For example, the prefix descriptor field includes the IP reachability information TLV (IP reachability information TLV) described in RFC7752.
图4是本实施例提供的一种前缀描述符字段的格式示意图。图4示出的前缀描述符字段例如是图3示出的BGP SPF前缀NLRI中前缀描述符字段。如图4所示,前缀描述符字段具体包括类型(type)字段、长度(length)字段、前缀长度(prefix length)字段以及IP前缀(IP prefix)字段。可选地,前缀描述符字段中类型(type)字段的值,即TLV type为265。可选地,IP前缀字段携带一个具体的IPv4前缀,前缀长度字段携带该IPv4前缀的长度。可选地,IP前缀字段携带一个具体的IPv6前缀,前缀长度字段携带该IPv6前缀的长度。Figure 4 is a schematic diagram of the format of a prefix descriptor field provided in this embodiment. The prefix descriptor field shown in Figure 4 is, for example, the prefix descriptor field in the BGP SPF prefix NLRI shown in Figure 3. As shown in Figure 4, the prefix descriptor field specifically includes a type field, a length field, a prefix length field and an IP prefix field. Optionally, the value of the type field in the prefix descriptor field, that is, TLV type is 265. Optionally, the IP prefix field carries a specific IPv4 prefix, and the prefix length field carries the length of the IPv4 prefix. Optionally, the IP prefix field carries a specific IPv6 prefix, and the prefix length field carries the length of the IPv6 prefix.
(6)BGP SPF链路NLRI(6)BGP SPF link NLRI
BGP SPF链路NLRI用于发布链路信息。图5是本实施例提供的一种BGP SPF链路NLRI的格式示意图,如图5所示,BGP SPF链路NLRI包括协议ID(protocol-ID)字段、标识符(identifier)字段、本地节点描述符(local node descriptors)字段、远端节点描述符(remote node descriptors)以及链路描述符(link descriptors)字段。BGP SPF link NLRI is used to publish link information. Figure 5 is a schematic diagram of the format of a BGP SPF link NLRI provided in this embodiment. As shown in Figure 5, the BGP SPF link NLRI includes a protocol ID (protocol-ID) field, an identifier (identifier) field, and a local node description. descriptors (local node descriptors) field, remote node descriptors (remote node descriptors) and link descriptors (link descriptors) fields.
BGP SPF链路NLRI中本地节点描述符字段用于携带链路的本地端点(local end)网络设备的标识。远端节点描述符字段用于携带链路的远端端点(remote end)网络设备的标识。The local node descriptor field in the BGP SPF link NLRI is used to carry the identification of the local endpoint (local end) network device of the link. The remote node descriptor field is used to carry the identification of the remote end network device of the link.
例如,本地节点描述符字段用于携带链路的本地端点网络设备的AS号以及本地端点网络设备的router-ID,而远端节点描述符字段携带链路的远端端点网络设备的AS号以及远端端点网络设备的router-ID。可选地,链路描述符字段包括一对IP地址,即链路的本地端点网络设备的接口地址以及链路的远端端点网络设备的接口地址。For example, the local node descriptor field is used to carry the AS number of the local endpoint network device of the link and the router-ID of the local endpoint network device, while the remote node descriptor field carries the AS number of the remote endpoint network device of the link and The router-ID of the remote endpoint network device. Optionally, the link descriptor field includes a pair of IP addresses, namely the interface address of the local endpoint network device of the link and the interface address of the remote endpoint network device of the link.
例如,网络设备A发送BGP SPF链路NLRI,以发布网络设备A与网络设备B之间的链路AB。链路AB是网络设备A的接口A与网络设备B的接口B之间链路。在BGP SPF链路NLRI中,本地节点描述符字段包括网络设备A的标识,远端节点描述符字段包括网络设备B的标识,链路描述符字段包括接口A的IP地址以及接口B的IP地址。For example, network device A sends a BGP SPF link NLRI to advertise link AB between network device A and network device B. Link AB is the link between interface A of network device A and interface B of network device B. In the BGP SPF link NLRI, the local node descriptor field includes the identity of network device A, the remote node descriptor field includes the identity of network device B, and the link descriptor field includes the IP address of interface A and the IP address of interface B. .
(7)BGP SPF节点NLRI(7)BGP SPF node NLRI
BGP SPF节点NLRI用于发布节点信息。图6是本实施例提供的一种BGP SPF节点NLRI的格式示意图,如图6所示,BGP SPF节点NLRI包括协议ID(protocol-ID)字段、标识符(identifier)字段以及本地节点描述符(local node descriptors)字段。BGP SPF node NLRI is used to publish node information. Figure 6 is a schematic diagram of the format of a BGP SPF node NLRI provided in this embodiment. As shown in Figure 6, the BGP SPF node NLRI includes a protocol ID (protocol-ID) field, an identifier (identifier) field and a local node descriptor ( local node descriptors) field.
下面结合一个具体场景对图2所示方法举例说明,下述场景示出了BGP SPF路由域与IGP路由域拼接部署的场景。The following is an example of the method shown in Figure 2 based on a specific scenario. The following scenario shows the splicing deployment scenario of BGP SPF routing domain and IGP routing domain.
图7是本实施例提供的一种BGP SPF路由域与IGP路由域拼接部署的场景示意图。在图7所示的场景中,IGP路由域中网络设备之间的每条链路为IPv4链路,BGP SPF路由域中网络设备之间的每条链路为IPv6链路。CE1上接入了IPv4用户和IPv6用户,CE2上也接入了 IPv4用户和IPv6用户。Figure 7 is a schematic diagram of a scenario where the BGP SPF routing domain and the IGP routing domain are spliced and deployed in this embodiment. In the scenario shown in Figure 7, each link between network devices in the IGP routing domain is an IPv4 link, and each link between network devices in the BGP SPF routing domain is an IPv6 link. IPv4 users and IPv6 users are connected to CE1, and CE2 is also connected. IPv4 users and IPv6 users.
对于BGP SPF路由域与IGP路由域的域间拼接节点,如网络设备C和网络设备D,域间拼接节点将IGP路由前缀10.1.1.1,10.1.1.2,20.1.1.1,20.1.1.2以及网络设备A和网络设备B上的接入用户地址前缀200.1.1.2,200::2等路由前缀引入到BGP SPF路由域;网络设备C和网络设备D引入这些前缀后,通过BGP SPF协议向BGP SPF路由域内的其他网络设备发布。其他网络设备收到后,根据发布这些前缀的网络设备查找匹配BGP SPF路由域的IPv6拓扑中的相应节点,生成以IPv6地址为下一跳的IPv4前缀目的路由或IPv6前缀目的路由。For inter-domain splicing nodes between BGP SPF routing domain and IGP routing domain, such as network device C and network device D, the inter-domain splicing node will IGP routing prefix 10.1.1.1, 10.1.1.2, 20.1.1.1, 20.1.1.2 and network device The access user address prefixes 200.1.1.2, 200::2 and other routing prefixes on network device A and network device B are introduced into the BGP SPF routing domain; after network device C and network device D introduce these prefixes, they route to BGP SPF through the BGP SPF protocol. Released to other network devices in the domain. After receiving it, other network devices search for the corresponding nodes in the IPv6 topology matching the BGP SPF routing domain based on the network devices that advertise these prefixes, and generate IPv4 prefix destination routes or IPv6 prefix destination routes with the IPv6 address as the next hop.
图8是本实施例提供的另一种BGP SPF路由域与IGP路由域拼接部署的场景示意图。在图8所示的场景中,IGP路由域中包含IPv4链路以及IPv6链路,相当于IGP路由域基于混合协议栈部署。BGP SPF路由域中也包含IPv4链路以及IPv6链路,相当于BGP SPF路由域基于混合协议栈部署。CE1上接入了IPv4用户和IPv6用户,CE2上也接入了IPv4用户和IPv6用户。对于BGP SPF路由域与IGP路由域的域间拼接节点,如网络设备C和网络设备D,将IGP路由前缀10.1.1.1,10.1.1.2,30::10,30::20以及网络设备A和网络设备B上的接入用户地址前缀200.1.1.2,200::2等路由前缀引入到BGP SPF路由域;网络设备C和网络设备D引入这些前缀后,通过BGP SPF协议向BGP SPF路由域域内的其他节点发布前缀,其他节点收到前缀后,根据发布这些前缀的节点查找匹配BGP SPF路由域的包含IPv6链路和IPv4链路的混合拓扑中的相应节点,生成以IPv6地址为下一跳的IPv4前缀目的路由或IPv6前缀目的路由,或者以IPv6地址为下一跳的IPv6前缀目的路由,或以IPv4地址为下一跳的IPv4前缀目的路由。Figure 8 is a schematic diagram of another splicing deployment scenario of BGP SPF routing domain and IGP routing domain provided in this embodiment. In the scenario shown in Figure 8, the IGP routing domain contains IPv4 links and IPv6 links, which is equivalent to the IGP routing domain being deployed based on a mixed protocol stack. The BGP SPF routing domain also includes IPv4 links and IPv6 links, which is equivalent to the BGP SPF routing domain being deployed based on a mixed protocol stack. IPv4 users and IPv6 users are connected to CE1, and IPv4 users and IPv6 users are also connected to CE2. For the inter-domain splicing nodes between the BGP SPF routing domain and the IGP routing domain, such as network device C and network device D, add the IGP routing prefixes 10.1.1.1, 10.1.1.2, 30::10, 30::20 and network device A and The access user address prefixes 200.1.1.2, 200::2 and other routing prefixes on network device B are introduced into the BGP SPF routing domain; after network device C and network device D introduce these prefixes, they are sent to the BGP SPF routing domain through the BGP SPF protocol. Other nodes publish prefixes. After receiving the prefixes, other nodes search for the corresponding nodes in the mixed topology containing IPv6 links and IPv4 links that match the BGP SPF routing domain according to the nodes publishing these prefixes, and generate a generation with the IPv6 address as the next hop. An IPv4 prefix destination route or an IPv6 prefix destination route, or an IPv6 prefix destination route with an IPv6 address as the next hop, or an IPv4 prefix destination route with an IPv4 address as the next hop.
下面结合四个实例,对上述图2所示方法举例说明。下述实例中,网络设备E是对图2所示方法中第二网络设备的举例说明,网络设备D、网络设备F或者网络设备C是对图2所示方法中第一网络设备的举例说明。BGP SPF prefix-NLRI是对图2所示方法中路由通告报文的举例说明。The above-mentioned method shown in Figure 2 is illustrated below with four examples. In the following examples, network device E is an illustration of the second network device in the method shown in Figure 2, and network device D, network device F, or network device C is an illustration of the first network device in the method shown in Figure 2. . BGP SPF prefix-NLRI is an example of the route advertisement message in the method shown in Figure 2.
实例一:BGP SPF路由域为纯IPv6基础网络部署。Example 1: The BGP SPF routing domain is deployed on a pure IPv6 basic network.
实例一包括以下步骤一至步骤四。Example 1 includes the following steps 1 to 4.
步骤一、从BGP SPF路由域的IPv6边缘网络设备E引入IPv4前缀100.1.1.2。网络设备E将此IPv4前缀100.1.1.2封装至BGP SPF prefix-NLRI。网络设备E向BGP SPF路由域中网络设备E之外的网络设备发布(包括网络设备D、网络设备F和网络设备C)BGP SPF prefix-NLRI。BGP SPF路由域中各个网络设备(包括网络设备D、网络设备F和网络设备C)收到BGP SPF prefix-NLRI后,分别进行到目的地址100.1.1.2的路由计算。Step 1. Import the IPv4 prefix 100.1.1.2 from the IPv6 edge network device E in the BGP SPF routing domain. Network device E encapsulates this IPv4 prefix 100.1.1.2 to BGP SPF prefix-NLRI. Network device E publishes BGP SPF prefix-NLRI to network devices other than network device E in the BGP SPF routing domain (including network device D, network device F, and network device C). After receiving the BGP SPF prefix-NLRI, each network device (including network device D, network device F, and network device C) in the BGP SPF routing domain performs route calculations to the destination address 100.1.1.2.
对于BGP SPF prefix-NLRI按照RFC7752进行封装,格式如图3所示。BGP SPF prefix-NLRI中prefix descriptors TLV格式如图4所示。For BGP SPF prefix-NLRI, it is encapsulated according to RFC7752, and the format is shown in Figure 3. The TLV format of prefix descriptors in BGP SPF prefix-NLRI is shown in Figure 4.
步骤二、BGP SPF路由域中各网络设备计算目的地址为100.1.1.2的IPv4路由。BGP SPF路由域中各网络设备基于该IPv4路由生成IPv4转发表项。IPv4转发表项中下一跳为IPv6地址,IPv4转发表项中出接口为到邻居节点的接口。例如,网络设备C计算目的地址100.1.1.2路由,该路由中下一跳为30::10,出接口为接口6。Step 2. Each network device in the BGP SPF routing domain calculates the IPv4 route with the destination address 100.1.1.2. Each network device in the BGP SPF routing domain generates IPv4 forwarding entries based on the IPv4 route. The next hop in the IPv4 forwarding table is the IPv6 address, and the outbound interface in the IPv4 forwarding table is the interface to the neighbor node. For example, network device C calculates a route to the destination address 100.1.1.2. The next hop in this route is 30::10, and the outgoing interface is interface 6.
步骤三、BGP SPF路由域中一个网络设备接收到目的地址为100.1.1.2的流量,该网络设备根据流量的目的地址,查询IPv4转发表项,得到IPv6下一跳、出接口。网络设备根据IPv6下一跳、出接口封装报文后,向下一个网络设备转发流量,直至流量到达目的地址。 Step 3. A network device in the BGP SPF routing domain receives traffic with the destination address 100.1.1.2. The network device queries the IPv4 forwarding table based on the destination address of the traffic and obtains the IPv6 next hop and outgoing interface. After the network device encapsulates the message based on the IPv6 next hop and outgoing interface, it forwards the traffic to the next network device until the traffic reaches the destination address.
步骤四、对于如图9所示的IPv6类型BGP SPF路由域同IPv4类型IGP路由域拼接的场景,在网络设备D或者网络设备C上将IGP路由域的IPv4地址信息引入到BGP SPF路由域,可在BGP SPF路由域中各个网络设备如网络设备E或网络设备F上,计算到目的地址所属IGP路由域的IPv4路由,计算过程同步骤一至步骤三所述。Step 4. For the scenario where the IPv6 type BGP SPF routing domain is spliced with the IPv4 type IGP routing domain as shown in Figure 9, introduce the IPv4 address information of the IGP routing domain into the BGP SPF routing domain on network device D or network device C. The IPv4 route to the IGP routing domain to which the destination address belongs can be calculated on each network device in the BGP SPF routing domain, such as network device E or network device F. The calculation process is the same as described in steps one to three.
通过实例一的方法,在BGP SPF路由域为纯IPv6基础网络部署场景,使得BGP SPF路由协议支持单栈拓扑进行IPv4和IPv6双栈混合路由计算。Through the method of Example 1, the BGP SPF routing domain is a pure IPv6 basic network deployment scenario, so that the BGP SPF routing protocol supports a single-stack topology for IPv4 and IPv6 dual-stack hybrid routing calculations.
实例二:BGP SPF路由域为纯IPv4基础网络部署。Example 2: The BGP SPF routing domain is deployed on a pure IPv4 basic network.
实例二包括以下步骤一至步骤四。Example 2 includes the following steps 1 to 4.
步骤一、从BGP SPF路由域的IPv4边缘网络设备F引入IPv6前缀100::2,网络设备F将此IPv6前缀100::2封装至BGP SPF前缀NLRI(BGP SPF prefix-NLRI)。网络设备F向BGP SPF路由域中网络设备F之外的其他网络设备(包括网络设备D、网络设备E和网络设备C)发布BGP SPF prefix-NLRI。BGP SPF路由域中各个网络设备(包括网络设备D、网络设备E和网络设备C)收到BGP SPF prefix-NLRI后,分别进行到目的地址100::2的路由计算。Step 1: Import the IPv6 prefix 100::2 from the IPv4 edge network device F of the BGP SPF routing domain. The network device F encapsulates this IPv6 prefix 100::2 to the BGP SPF prefix NLRI (BGP SPF prefix-NLRI). Network device F publishes BGP SPF prefix-NLRI to other network devices other than network device F in the BGP SPF routing domain (including network device D, network device E, and network device C). After receiving the BGP SPF prefix-NLRI, each network device (including network device D, network device E, and network device C) in the BGP SPF routing domain performs route calculations to the destination address 100::2.
对于BGP SPF prefix-NLRI按照RFC7752进行封装,格式如图3所示。BGP SPF prefix-NLRI中prefix descriptors TLV格式如图4所示。For BGP SPF prefix-NLRI, it is encapsulated according to RFC7752, and the format is shown in Figure 3. The TLV format of prefix descriptors in BGP SPF prefix-NLRI is shown in Figure 4.
步骤二、BGP SPF路由域各网络设备计算目的地址100::2的IPv6路由。BGP SPF路由域各网络设备基于该IPv6路由生成IPv6转发表项。IPv6转发表项中下一跳为IPv4地址,IPv6转发表项中出接口为到邻居节点的接口。例如,网络设备D计算目的地址100::2路由,该路由中下一跳为50.1.1.1,出接口为接口3。Step 2: Each network device in the BGP SPF routing domain calculates the IPv6 route for the destination address 100::2. Each network device in the BGP SPF routing domain generates IPv6 forwarding entries based on the IPv6 route. The next hop in the IPv6 forwarding entry is the IPv4 address, and the outbound interface in the IPv6 forwarding entry is the interface to the neighbor node. For example, network device D calculates a route to the destination address 100::2. The next hop in this route is 50.1.1.1, and the outbound interface is interface 3.
步骤三、BGP SPF路由域中一个网络设备接收到目的地址为100::2的流量,该网络设备根据流量的目的地址,查询IPv6转发表项,得到IPv4下一跳、出接口,网络设备根据IPv4下一跳、出接口封装报文后,向下一个网络设备转发流量,直至流量到达目的地址。Step 3. A network device in the BGP SPF routing domain receives traffic with the destination address 100::2. The network device queries the IPv6 forwarding table based on the destination address of the traffic and obtains the IPv4 next hop and outgoing interface. After the IPv4 next hop and outbound interface encapsulates the packet, it forwards the traffic to the next network device until the traffic reaches the destination address.
步骤四、对于如图10所示的IPv4类型BGP SPF路由域同IPv6类型IGP路由域拼接的场景,在网络设备D或者网络设备C上将IGP路由域的IPv6地址信息引入到BGP SPF路由域,可在BGP SPF路由域中各个网络设备如网络设备E或网络设备F上,计算到目的地址所属IGP路由域的IPv6路由,计算过程同步骤一至步骤三所述。Step 4. For the scenario where the IPv4 type BGP SPF routing domain is spliced with the IPv6 type IGP routing domain as shown in Figure 10, introduce the IPv6 address information of the IGP routing domain to the BGP SPF routing domain on network device D or network device C. The IPv6 route to the IGP routing domain to which the destination address belongs can be calculated on each network device in the BGP SPF routing domain, such as network device E or network device F. The calculation process is the same as described in steps one to three.
通过实例二提供的方法,BGP SPF路由域为纯IPv4基础网络部署场景,BGP SPF路由协议支持单栈拓扑进行IPv4和IPv6双栈混合路由计算。Through the method provided in Example 2, the BGP SPF routing domain is a pure IPv4 basic network deployment scenario. The BGP SPF routing protocol supports single-stack topology for IPv4 and IPv6 dual-stack hybrid routing calculations.
实例三:BGP SPF路由域为双栈链路部署,即网络设备之间某一链路接口配置双栈地址。Example 3: The BGP SPF routing domain is deployed for dual-stack links, that is, a link interface between network devices is configured with a dual-stack address.
如图11所示,网络设备C与网络设备F之间同一链路的接口配置IPv4地址和IPv6地址,即双栈地址。BGP SPF路由域收集形成拓扑。可选地,网络设备分别生成IPv4拓扑和IPv6拓扑。或者,网络设备生成包含IPv4链路和IPv6链路的拓扑,这种拓扑可称为混合双栈拓扑。As shown in Figure 11, the interface on the same link between network device C and network device F is configured with an IPv4 address and an IPv6 address, that is, a dual-stack address. BGP SPF routing domains are collected to form a topology. Optionally, the network device generates IPv4 topology and IPv6 topology respectively. Alternatively, the network device generates a topology that includes IPv4 links and IPv6 links. This topology may be called a hybrid dual-stack topology.
示例性地,网络设备生成的IPv4拓扑如图12所示,网络设备生成的IPv6拓扑如图13所示,网络设备生成的混合双栈拓扑如图14所示。Exemplarily, the IPv4 topology generated by the network device is shown in Figure 12, the IPv6 topology generated by the network device is shown in Figure 13, and the hybrid dual-stack topology generated by the network device is shown in Figure 14.
网络设备计算IPv4路由或IPv6路由时,按照拓扑结果进行匹配,使用IPv4下一跳或IPv6下一跳。路由转发行为处理同实例一和实例二。When network devices calculate IPv4 routes or IPv6 routes, they match according to the topology results and use the IPv4 next hop or IPv6 next hop. The processing of routing and forwarding behavior is the same as that of Example 1 and Example 2.
通过实例三提供的方法,BGP SPF路由域为双栈链路部署场景,能够同时支持IPv4或IPv6前缀路由计算,路由下一跳按照拓扑结果进行匹配使用IPv4或IPv6下一跳。 Through the method provided in Example 3, the BGP SPF routing domain is a dual-stack link deployment scenario and can support IPv4 or IPv6 prefix route calculation at the same time. The route next hop is matched according to the topology result and uses IPv4 or IPv6 next hop.
实例四:BGP SPF路由域为IPv4链路和IPv6链路拼接部署,即不同网络设备之间存在不同的链路地址族类型。Example 4: The BGP SPF routing domain is deployed for splicing IPv4 links and IPv6 links, that is, there are different link address family types between different network devices.
如图15所示,BGP SPF路由域中不同网络设备之间有IPv4链路,有IPv6链路,有双栈链路;可选地,网络设备分别基于IPv4链路或者IPv6链路独立地计算拓扑,或者网络设备基于IPv4链路和IPv6链路混合计算拓扑。网络设备在计算IPv4前缀路由或IPv6前缀路由时,按照拓扑结果进行匹配,使用IPv4下一跳或IPv6下一跳。路由转发行为处理同实例一和实例二。As shown in Figure 15, there are IPv4 links, IPv6 links, and dual-stack links between different network devices in the BGP SPF routing domain; optionally, network devices calculate independently based on IPv4 links or IPv6 links. Topology, or network equipment calculates topology based on a mixture of IPv4 links and IPv6 links. When network devices calculate IPv4 prefix routes or IPv6 prefix routes, they match according to the topology results and use the IPv4 next hop or IPv6 next hop. The processing of routing and forwarding behavior is the same as that of Example 1 and Example 2.
通过实例四提供的方法,在BGP SPF路由域为IPv4链路和IPv6链路拼接部署场景,能够同时支持IPv4或IPv6前缀路由计算,路由下一跳按照拓扑结果进行匹配使用IPv4或IPv6下一跳。Through the method provided in Example 4, the BGP SPF routing domain is deployed in a splicing deployment scenario of IPv4 links and IPv6 links. It can support IPv4 or IPv6 prefix route calculation at the same time. The route next hop is matched according to the topology result and uses IPv4 or IPv6 next hop. .
总结来看,上述四个实例提供的方法,节约IPv4/IPv6地址资源。此外,单栈网络支持双栈业务需求,简化网络运维,减少网络设备开销。此外,为现网IPv4基础网络向IPv6网络升级改造提供平滑演进方案。In summary, the methods provided by the above four examples can save IPv4/IPv6 address resources. In addition, the single-stack network supports dual-stack business requirements, simplifies network operation and maintenance, and reduces network equipment overhead. In addition, it provides a smooth evolution solution for the upgrade and transformation of the existing IPv4 basic network to IPv6 network.
图16是本申请实施例提供的一种路由生成装置600的结构示意图。路由生成装置600包括获得单元601、接收单元602和生成单元603。可选地,路由生成装置600还包括发送单元604。Figure 16 is a schematic structural diagram of a route generation device 600 provided by an embodiment of the present application. The route generating device 600 includes an obtaining unit 601, a receiving unit 602 and a generating unit 603. Optionally, the route generating device 600 further includes a sending unit 604.
可选地,结合图1所示应用场景来看,图16所示的路由生成装置600设于图1所示方法流程中的网络设备D,接收单元602用于接收图1示出的路由通告报文,生成单元603用于生成图1示出的路由表或转发表中的路由,获得单元601用于获得图1所示的网络拓扑。Optionally, combined with the application scenario shown in Figure 1, the route generation device 600 shown in Figure 16 is provided in the network device D in the method flow shown in Figure 1, and the receiving unit 602 is used to receive the route announcement shown in Figure 1 message, the generating unit 603 is used to generate routes in the routing table or forwarding table shown in Figure 1, and the obtaining unit 601 is used to obtain the network topology shown in Figure 1.
可选地,结合图2所示方法流程来看,图16所示的路由生成装置600设于图2所示方法流程中的第一网络设备,获得单元601用于执行S201,接收单元602用于执行S203,生成单元603用于执行S204。可选地,接收单元602还用于执行S205,发送单元604还用于执行S206。Optionally, combined with the method flow shown in Figure 2, the route generation device 600 shown in Figure 16 is provided in the first network device in the method flow shown in Figure 2, the obtaining unit 601 is used to perform S201, and the receiving unit 602 uses After executing S203, the generating unit 603 is used to execute S204. Optionally, the receiving unit 602 is also configured to perform S205, and the sending unit 604 is further configured to perform S206.
图16所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。The device embodiment described in Figure 16 is only illustrative. For example, the division of the above units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated. to another system, or some features can be ignored, or not implemented. Each functional unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
路由生成装置600中的各个单元全部或部分地通过软件、硬件、固件或者其任意组合来实现。Each unit in the route generation device 600 is implemented in whole or in part by software, hardware, firmware, or any combination thereof.
下面结合后文描述的网络设备800,描述使用硬件或软件来实现路由生成装置600中的各个功能单元的一些可能实现方式。Some possible implementations of using hardware or software to implement each functional unit in the route generation device 600 are described below in conjunction with the network device 800 described later.
在采用软件实现的情况下,例如,上述获得单元601和生成单元603是由图18中的至少一个处理器801读取存储器802中存储的程序代码后,生成的软件功能单元来实现。In the case of software implementation, for example, the above-mentioned obtaining unit 601 and generating unit 603 are implemented by software functional units generated by at least one processor 801 in FIG. 18 after reading the program code stored in the memory 802.
在采用硬件实现的情况下,例如,图16中上述各个单元由网络设备中的不同硬件分别实现,例如获得单元601由图18中的至少一个处理器801中的一部分处理资源(例如多核处理器中的一个核或两个核)实现,而生成单元603由图18中至少一个处理器801中的其余部分 处理资源(例如多核处理器中的其他核),或者采用现场可编程门阵列(field-programmable gate array,FPGA)、或协处理器等可编程器件来完成。接收单元602由图18中的网络接口803实现。In the case of hardware implementation, for example, the above-mentioned units in Figure 16 are respectively implemented by different hardware in the network device. For example, the acquisition unit 601 is implemented by a part of the processing resources of at least one processor 801 in Figure 18 (such as a multi-core processor). one core or two cores), while the generation unit 603 is implemented by the remainder of at least one processor 801 in FIG. 18 Processing resources (such as other cores in a multi-core processor), or using programmable devices such as field-programmable gate arrays (FPGAs) or co-processors. The receiving unit 602 is implemented by the network interface 803 in Figure 18.
图17是本申请实施例提供的一种数据报文的转发装置700的结构示意图。数据报文的转发装置700包括接收单元701和发送单元702。Figure 17 is a schematic structural diagram of a data packet forwarding device 700 provided by an embodiment of the present application. The data packet forwarding device 700 includes a receiving unit 701 and a sending unit 702.
可选地,结合图2所示方法流程来看,图17所示的数据报文的转发装置700设于图2所示方法流程中的第一网络设备,接收单元701用于执行S205,发送单元702用于执行S206。Optionally, in conjunction with the method flow shown in Figure 2, the data message forwarding device 700 shown in Figure 17 is located on the first network device in the method flow shown in Figure 2, and the receiving unit 701 is used to perform S205 and send Unit 702 is used to perform S206.
图17所描述的装置实施例仅仅是示意性的,例如,上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。The device embodiment described in Figure 17 is only illustrative. For example, the division of the above units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated. to another system, or some features can be ignored, or not implemented. Each functional unit in various embodiments of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
数据报文的转发装置700中的各个单元全部或部分地通过软件、硬件、固件或者其任意组合来实现。Each unit in the data packet forwarding device 700 is implemented in whole or in part by software, hardware, firmware, or any combination thereof.
下面结合后文描述的网络设备800,描述使用硬件或软件来实现数据报文的转发装置700中的各个功能单元的一些可能实现方式。Some possible implementations of using hardware or software to implement each functional unit in the data packet forwarding apparatus 700 are described below in conjunction with the network device 800 described below.
在采用软件实现的情况下,例如,上述接收单元701和发送单元702是由图18中的至少一个处理器801读取存储器802中存储的程序代码后,生成的软件功能单元来实现。In the case of software implementation, for example, the above-mentioned receiving unit 701 and sending unit 702 are implemented by software functional units generated by at least one processor 801 in FIG. 18 after reading the program code stored in the memory 802.
在采用硬件实现的情况下,例如,图17中上述各个单元由网络设备中的不同硬件分别实现,例如接收单元701和发送单元702由图18中的网络接口803实现。In the case of hardware implementation, for example, the above-mentioned units in FIG. 17 are respectively implemented by different hardware in the network device. For example, the receiving unit 701 and the sending unit 702 are implemented by the network interface 803 in FIG. 18 .
下面对网络设备的基本硬件结构举例说明。The following is an example of the basic hardware structure of network equipment.
图18是本申请实施例提供的一种网络设备800的结构示意图。网络设备800包括至少一个处理器801、存储器802以及至少一个网络接口803。Figure 18 is a schematic structural diagram of a network device 800 provided by an embodiment of the present application. Network device 800 includes at least one processor 801, memory 802, and at least one network interface 803.
可选地,结合图1所示的应用场景来看,图18所示的网络设备800是图1中的网络设备D。Optionally, combined with the application scenario shown in Figure 1, the network device 800 shown in Figure 18 is the network device D in Figure 1.
可选地,结合图2来看,图18所示的网络设备800是图2所示方法流程中的第一网络设备,处理器801用于执行S201和S204,网络接口803用于执行S203、S205和S206。Optionally, in conjunction with Figure 2, the network device 800 shown in Figure 18 is the first network device in the method flow shown in Figure 2. The processor 801 is used to execute S201 and S204, and the network interface 803 is used to execute S203, S205 and S206.
处理器801例如是通用中央处理器(central processing unit,CPU)、网络处理器(network processer,NP)、图形处理器(graphics processing unit,GPU)、神经网络处理器(neural-network processing units,NPU)、数据处理单元(data processing unit,DPU)、微处理器或者一个或多个用于实现本申请方案的集成电路。例如,处理器801包括专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。PLD例如是复杂可编程逻辑器件(complex programmable logic device,CPLD)、现场可编程逻辑门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合。The processor 801 is, for example, a general central processing unit (CPU), a network processor (NP), a graphics processing unit (GPU), or a neural network processor (neural-network processing units, NPU). ), a data processing unit (DPU), a microprocessor or one or more integrated circuits used to implement the solution of the present application. For example, the processor 801 includes an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. PLD is, for example, a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a general array logic (GAL), or any combination thereof.
存储器802例如是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,又如是随机存取存储器(random access memory,RAM)或者可 存储信息和指令的其它类型的动态存储设备,又如是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。可选地,存储器802独立存在,并通过内部连接804与处理器801相连接。或者,可选地存储器802和处理器801集成在一起。The memory 802 is, for example, a read-only memory (ROM) or other type of static storage device that can store static information and instructions, or a random access memory (random access memory, RAM) or a static storage device that can store static information and instructions. Other types of dynamic storage devices that store information and instructions, such as electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or Other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or can be used to carry or store expectations in the form of instructions or data structures program code and any other medium that can be accessed by a computer, without limitation. Optionally, the memory 802 exists independently and is connected to the processor 801 through an internal connection 804 . Alternatively, memory 802 and processor 801 are optionally integrated together.
网络接口803使用任何收发器一类的装置,用于与其它设备或通信网络通信。网络接口803例如包括有线网络接口或者无线网络接口中的至少一项。其中,有线网络接口例如为以太网接口。以太网接口例如是光接口,电接口或其组合。无线网络接口例如为无线局域网(wireless local area networks,WLAN)接口,蜂窝网络网络接口或其组合等。Network interface 803 uses any transceiver-like device for communicating with other devices or communications networks. The network interface 803 includes, for example, at least one of a wired network interface or a wireless network interface. The wired network interface is, for example, an Ethernet interface. The Ethernet interface is, for example, an optical interface, an electrical interface or a combination thereof. The wireless network interface is, for example, a wireless local area network (WLAN) interface, a cellular network network interface or a combination thereof.
在一些实施例中,处理器801包括一个或多个CPU,如图18中所示的CPU0和CPU1。In some embodiments, processor 801 includes one or more CPUs, such as CPU0 and CPU1 as shown in Figure 18.
在一些实施例中,网络设备800可选地包括多个处理器,如图18中所示的处理器801和处理器805。这些处理器中的每一个例如是一个单核处理器(single-CPU),又如是一个多核处理器(multi-CPU)。这里的处理器可选地指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。In some embodiments, network device 800 optionally includes multiple processors, such as processor 801 and processor 805 shown in Figure 18. Each of these processors is, for example, a single-core processor (single-CPU) or a multi-core processor (multi-CPU). Processor here optionally refers to one or more devices, circuits, and/or processing cores for processing data (eg, computer program instructions).
在一些实施例中,网络设备800还包括内部连接804。处理器801、存储器802以及至少一个网络接口803通过内部连接804连接。内部连接804包括通路,在上述组件之间传送信息。可选地,内部连接804是单板或总线。可选地,内部连接804分为地址总线、数据总线、控制总线等。In some embodiments, network device 800 also includes internal connections 804. The processor 801, the memory 802 and at least one network interface 803 are connected through an internal connection 804. Internal connections 804 include pathways that carry information between the components described above. Optionally, internal connection 804 is a single board or bus. Optionally, the internal connections 804 are divided into address bus, data bus, control bus, etc.
在一些实施例中,网络设备800还包括输入输出接口806。输入输出接口806连接到内部连接804上。In some embodiments, network device 800 also includes an input and output interface 806. Input/output interface 806 is connected to internal connection 804.
可选地,处理器801通过读取存储器802中保存的程序代码810实现上述实施例中的方法,或者,处理器801通过内部存储的程序代码实现上述实施例中的方法。在处理器801通过读取存储器802中保存的程序代码810实现上述实施例中的方法的情况下,存储器802中保存实现本申请实施例提供的方法的程序代码。Optionally, the processor 801 implements the method in the above embodiment by reading the program code 810 stored in the memory 802, or the processor 801 implements the method in the above embodiment by using the internally stored program code. In the case where the processor 801 implements the method in the above embodiment by reading the program code 810 stored in the memory 802, the memory 802 stores the program code that implements the method provided by the embodiment of the present application.
处理器801实现上述功能的更多细节请参考前面各个方法实施例中的描述,在这里不再重复。For more details on how the processor 801 implements the above functions, please refer to the descriptions in the previous method embodiments, which will not be repeated here.
参见图19,图19是本申请实施例提供的一种网络设备的结构示意图。网络设备900包括:主控板910和接口板930。Refer to Figure 19, which is a schematic structural diagram of a network device provided by an embodiment of the present application. The network device 900 includes: a main control board 910 and an interface board 930 .
可选地,结合图1所示的应用场景来看,图19所示的网络设备900是图1中的网络设备D。Optionally, combined with the application scenario shown in Figure 1, the network device 900 shown in Figure 19 is the network device D in Figure 1.
可选地,结合图2来看,图19所示的网络设备900是图2所示方法流程中的第一网络设备,主控板910用于执行S201、S203和S204,接口板930用于执行S205和S206。Optionally, combined with Figure 2, the network device 900 shown in Figure 19 is the first network device in the method flow shown in Figure 2. The main control board 910 is used to execute S201, S203 and S204, and the interface board 930 is used to Execute S205 and S206.
主控板也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板910用于对网络设备900中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板910包括:中央处理器911和存储器912。The main control board is also called the main processing unit (MPU) or route processor card. The main control board 910 is used to control and manage various components in the network device 900, including route calculation and device management. , equipment maintenance, protocol processing functions. The main control board 910 includes: a central processing unit 911 and a memory 912 .
接口板930也称为线路接口单元卡(line processing unit,LPU)、线卡(line card)或业 务板。接口板930用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(packet over sONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(flexible ethernet clients,FlexE clients)。接口板930包括:中央处理器931、网络处理器932、转发表项存储器934和物理接口卡(physical interface card,PIC)933。The interface board 930 is also called a line processing unit (LPU), line card or industry service board. The interface board 930 is used to provide various service interfaces and implement data packet forwarding. The service interface includes but is not limited to an Ethernet interface, a POS (packet over sONET/SDH) interface, etc. The Ethernet interface is, for example, a flexible Ethernet service interface (flexible ethernet clients, FlexE clients). The interface board 930 includes: a central processor 931, a network processor 932, a forwarding entry memory 934, and a physical interface card (physical interface card, PIC) 933.
接口板930上的中央处理器931用于对接口板930进行控制管理并与主控板910上的中央处理器911进行通信。The central processor 931 on the interface board 930 is used to control and manage the interface board 930 and communicate with the central processor 911 on the main control board 910 .
网络处理器932用于实现报文的转发处理。网络处理器932的形态例如是转发芯片。具体而言,网络处理器932用于基于转发表项存储器934保存的转发表转发接收到的报文,如果报文的目的地址为网络设备900的地址,则将该报文上送至CPU(如中央处理器911)处理;如果报文的目的地址不是网络设备900的地址,则根据该目的地址从转发表中查找到该目的地址对应的下一跳和出接口,将该报文转发到该目的地址对应的出接口。其中,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。The network processor 932 is used to implement packet forwarding processing. The network processor 932 is, for example, a forwarding chip. Specifically, the network processor 932 is configured to forward the received message based on the forwarding table stored in the forwarding table memory 934. If the destination address of the message is the address of the network device 900, then upload the message to the CPU ( Such as central processing unit 911) processing; if the destination address of the message is not the address of the network device 900, the next hop and outgoing interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to The outbound interface corresponding to the destination address. Among them, the processing of uplink packets includes: processing of packet incoming interfaces, forwarding table search; processing of downlink packets: forwarding table search, etc.
物理接口卡933用于实现物理层的对接功能,原始的流量由此进入接口板930,以及处理后的报文从该物理接口卡933发出。物理接口卡933也称为子卡,可安装在接口板930上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器932处理。在一些实施例中,中央处理器也可执行网络处理器932的功能,比如基于通用CPU实现软件转发,从而物理接口卡933中不需要网络处理器932。The physical interface card 933 is used to implement the docking function of the physical layer. The original traffic enters the interface card 930 through this, and the processed packets are sent out from the physical interface card 933. The physical interface card 933 is also called a daughter card and can be installed on the interface board 930. It is responsible for converting photoelectric signals into messages and checking the validity of the messages before forwarding them to the network processor 932 for processing. In some embodiments, the central processor can also perform the functions of the network processor 932, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 932 is not required in the physical interface card 933.
可选地,网络设备900包括多个接口板,例如网络设备900还包括接口板940,接口板940包括:中央处理器941、网络处理器942、转发表项存储器944和物理接口卡943。Optionally, the network device 900 includes multiple interface boards. For example, the network device 900 also includes an interface board 940. The interface board 940 includes: a central processor 941, a network processor 942, a forwarding entry memory 944, and a physical interface card 943.
可选地,网络设备900还包括交换网板920。交换网板920也例如称为交换网板单元(switch fabric unit,SFU)。在网络设备有多个接口板930的情况下,交换网板920用于完成各接口板之间的数据交换。例如,接口板930和接口板940之间例如通过交换网板920通信。Optionally, the network device 900 also includes a switching network board 920. The switching fabric unit 920 is also called a switching fabric unit (SFU). When the network device has multiple interface boards 930, the switching network board 920 is used to complete data exchange between the interface boards. For example, the interface board 930 and the interface board 940 communicate through the switching network board 920, for example.
主控板910和接口板930耦合。例如。主控板910、接口板930和接口板940,以及交换网板920之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板910和接口板930之间建立进程间通信协议(inter-process communication,IPC)通道,主控板910和接口板930之间通过IPC通道进行通信。The main control board 910 and the interface board 930 are coupled. For example. The main control board 910, the interface board 930, the interface board 940, and the switching network board 920 are connected to the system backplane through a system bus to achieve intercommunication. In one possible implementation, an inter-process communication protocol (IPC) channel is established between the main control board 910 and the interface board 930, and the main control board 910 and the interface board 930 communicate through the IPC channel.
在逻辑上,网络设备900包括控制面和转发面,控制面包括主控板910和中央处理器931,转发面包括执行转发的各个组件,比如转发表项存储器934、物理接口卡933和网络处理器932。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器932基于控制面下发的转发表对物理接口卡933收到的报文查表转发。控制面下发的转发表例如保存在转发表项存储器934中。在有些实施例中,控制面和转发面例如完全分离,不在同一设备上。Logically, the network device 900 includes a control plane and a forwarding plane. The control plane includes a main control board 910 and a central processor 931. The forwarding plane includes various components that perform forwarding, such as forwarding entry memory 934, physical interface card 933, and network processing. Device 932. The control plane executes functions such as router, generates forwarding tables, processes signaling and protocol messages, configures and maintains device status. The control plane sends the generated forwarding tables to the forwarding plane. On the forwarding plane, the network processor 932 is based on the control plane. The delivered forwarding table looks up the packets received by the physical interface card 933 and forwards them. The forwarding table delivered by the control plane is stored in the forwarding table entry memory 934, for example. In some embodiments, the control plane and the forwarding plane are, for example, completely separate and not on the same device.
接口板940上的操作与接口板930的操作一致,为了简洁,不再赘述。应理解,本实施例的网络设备900可对应于上述各个方法实施例中的第一网络设备,该网络设备900中的主控板910、接口板930和/或940例如实现上述各个方法实施例中的第一网络设备所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。The operations on the interface board 940 are the same as those on the interface board 930, and will not be described again for the sake of simplicity. It should be understood that the network device 900 in this embodiment may correspond to the first network device in the above method embodiments, and the main control board 910, interface board 930 and/or 940 in the network device 900 implement, for example, the above method embodiments. For the sake of brevity, the functions of the first network device and/or the various steps performed will not be described again here.
主控板可能有一块或多块,有多块的时候例如包括主用主控板和备用主控板。接口板可能有一块或多块,网络设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同 实现负荷分担冗余备份。在集中式转发架构下,网络设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,网络设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的网络设备的数据接入和处理能力要大于集中式架构的设备。可选地,网络设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等网络设备)。具体采用哪种架构,取决于具体的组网部署场景,此处不做任何限定。There may be one or more main control boards. When there are multiple main control boards, for example, they include the main main control board and the backup main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards are provided. There can also be one or more physical interface cards on the interface board. There may be no switching network board, or there may be one or more. When there are multiple boards, they can be used together. Implement load sharing and redundant backup. Under the centralized forwarding architecture, network equipment does not need switching network boards, and the interface boards are responsible for processing the business data of the entire system. Under the distributed forwarding architecture, network equipment can have at least one switching network board, which enables data exchange between multiple interface boards through the switching network board, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of network equipment with a distributed architecture are greater than those with a centralized architecture. Optionally, the network device can also be in the form of only one board, that is, there is no switching network board. The functions of the interface board and the main control board are integrated on this board. In this case, the central processor and main control board on the interface board The central processor on the board can be combined into one central processor on this board to perform the superimposed functions of the two. This form of equipment has low data exchange and processing capabilities (for example, low-end switches or routers and other networks equipment). The specific architecture used depends on the specific networking deployment scenario and is not limited here.
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分可互相参考,每个实施例重点说明的都是与其他实施例的不同之处。Each embodiment in this specification is described in a progressive manner. The same and similar parts between the various embodiments can be referred to each other. Each embodiment focuses on its differences from other embodiments.
A参考B,指的是A与B相同或者A为B的简单变形。A refers to B, which means that A is the same as B or that A is a simple transformation of B.
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序,也不能理解为指示或暗示相对重要性。例如,第一网络设备和第二网络设备用于区别不同的网络设备,而不是用于描述网络设备的特定顺序,也不能理解为第一网络设备比第二网络设备更重要。The terms "first" and "second" in the description and claims of the embodiments of this application are used to distinguish different objects, rather than to describe a specific order of objects, and cannot be understood to indicate or imply relative importance. sex. For example, the first network device and the second network device are used to distinguish different network devices rather than describing a specific order of the network devices, nor can it be understood that the first network device is more important than the second network device.
本申请实施例所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。例如,本申请中涉及到的地址信息都是在充分授权的情况下获取的。The information (including but not limited to user equipment information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.) and signals involved in the embodiments of this application are all processed. Authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions. For example, the address information involved in this application was obtained with full authorization.
上述实施例可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例描述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。The above embodiments may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in accordance with the embodiments of the present application are generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, e.g., the computer instructions may be transferred from a website, computer, server, or data center Transmission to another website, computer, server or data center by wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains one or more available media integrated therein. The available media may be magnetic media (eg, floppy disk, hard disk, magnetic tape), optical media (eg, DVD), or semiconductor media (eg, Solid State Disk (SSD)), etc.
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。 The above embodiments are only used to illustrate the technical solutions of the present application, but are not intended to limit them. Although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments. Modifications may be made to the recorded technical solutions, or equivalent substitutions may be made to some of the technical features; however, these modifications or substitutions do not cause the essence of the corresponding technical solutions to depart from the scope of the technical solutions of the embodiments of the present application.

Claims (23)

  1. 一种路由生成方法,其特征在于,包括:A route generation method, characterized by including:
    第一网络设备获得网络拓扑;The first network device obtains the network topology;
    所述第一网络设备接收来自第二网络设备的路由通告报文,所述路由通告报文用于发布对应于第一协议栈的地址信息;The first network device receives a route advertisement message from the second network device, and the route advertisement message is used to publish address information corresponding to the first protocol stack;
    所述第一网络设备生成路由,所述路由包括所述对应于第一协议栈的地址信息以及对应于第二协议栈的地址信息,所述对应于第二协议栈的地址信息是所述网络拓扑中的第一链路的端点网络设备的地址信息。The first network device generates a route, the route includes the address information corresponding to the first protocol stack and the address information corresponding to the second protocol stack, and the address information corresponding to the second protocol stack is the network The address information of the endpoint network device of the first link in the topology.
  2. 根据权利要求1所述的方法,其特征在于,所述网络拓扑中所述第一链路之外的其他所有链路的端点网络设备的地址信息均是对应于第二协议栈的地址信息。The method according to claim 1, characterized in that the address information of endpoint network devices of all other links except the first link in the network topology is address information corresponding to the second protocol stack.
  3. 根据权利要求1所述的方法,其特征在于,所述网络拓扑还包括第二链路,所述第二链路的端点网络设备包括对应于第一协议栈的地址信息。The method of claim 1, wherein the network topology further includes a second link, and an endpoint network device of the second link includes address information corresponding to the first protocol stack.
  4. 根据权利要求1所述的方法,其特征在于,所述网络拓扑包括双栈链路,所述双栈链路的端点网络设备包括对应于第一协议栈的地址信息和对应于第二协议栈的地址信息。The method of claim 1, wherein the network topology includes a dual-stack link, and the endpoint network device of the dual-stack link includes address information corresponding to the first protocol stack and information corresponding to the second protocol stack. address information.
  5. 根据权利要求1所述的方法,其特征在于,所述第二网络设备属于BGP SPF路由域且属于内部网关协议IGP路由域,所述对应于第一协议栈的地址信息是所述IGP路由域中第三网络设备的地址信息;或者,The method of claim 1, wherein the second network device belongs to the BGP SPF routing domain and belongs to the Interior Gateway Protocol IGP routing domain, and the address information corresponding to the first protocol stack is the IGP routing domain the address information of the third network device; or,
    所述对应于第一协议栈的地址信息是所述第二网络设备接入的用户设备的地址信息。The address information corresponding to the first protocol stack is the address information of the user equipment accessed by the second network device.
  6. 根据权利要求1至5中任一项所述的方法,其特征在于,所述第一网络设备获得网络拓扑,包括:The method according to any one of claims 1 to 5, characterized in that the first network device obtains the network topology, including:
    所述第一网络设备接收链路通告报文,所述链路通告报文用于发布所述第一链路的端点网络设备的地址信息;The first network device receives a link advertisement message, and the link advertisement message is used to publish address information of an endpoint network device of the first link;
    所述第一网络设备根据所述第一链路的端点网络设备的地址信息获得所述网络拓扑。The first network device obtains the network topology based on address information of an endpoint network device of the first link.
  7. 根据权利要求1至6中任一项所述的方法,其特征在于,所述路由通告报文为边界网关协议最短路径优先计算BGP SPF报文。The method according to any one of claims 1 to 6, characterized in that the route advertisement message is a Border Gateway Protocol shortest path first calculation BGP SPF message.
  8. 根据权利要求1至7中任一项所述的方法,其特征在于,所述第一协议栈为互联网协议第4版IPv4协议栈,所述第二协议栈为互联网协议第6版IPv6协议栈;或者,The method according to any one of claims 1 to 7, characterized in that the first protocol stack is an Internet Protocol version 4 IPv4 protocol stack, and the second protocol stack is an Internet Protocol version 6 IPv6 protocol stack. ;or,
    所述第一协议栈为IPv6协议栈,所述第二协议栈为IPv4协议栈。The first protocol stack is an IPv6 protocol stack, and the second protocol stack is an IPv4 protocol stack.
  9. 一种数据报文的转发方法,其特征在于,包括: A method for forwarding data messages, which is characterized by including:
    第一网络设备接收数据报文,所述数据报文包括对应于第一协议栈的地址信息;The first network device receives a data packet, where the data packet includes address information corresponding to the first protocol stack;
    所述第一网络设备基于所述对应于第一协议栈的地址信息以及路由,向对应于第二协议栈的地址信息转发所述数据报文,所述路由包括所述对应于第一协议栈的地址信息以及所述对应于第二协议栈的地址信息。The first network device forwards the data message to the address information corresponding to the second protocol stack based on the address information corresponding to the first protocol stack and the route. The route includes the address information corresponding to the first protocol stack. The address information and the address information corresponding to the second protocol stack.
  10. 根据权利要求9所述的方法,其特征在于,所述第一协议栈为互联网协议第4版IPv4协议栈,所述第二协议栈为互联网协议第6版IPv6协议栈;或者,The method according to claim 9, wherein the first protocol stack is an Internet Protocol version 4 IPv4 protocol stack, and the second protocol stack is an Internet Protocol version 6 IPv6 protocol stack; or,
    所述第一协议栈为IPv6协议栈,所述第二协议栈为IPv4协议栈。The first protocol stack is an IPv6 protocol stack, and the second protocol stack is an IPv4 protocol stack.
  11. 一种路由生成装置,其特征在于,包括:A route generation device, characterized by including:
    获得单元,用于获得网络拓扑;Obtain unit, used to obtain network topology;
    接收单元,用于接收来自第二网络设备的路由通告报文,所述路由通告报文用于发布对应于第一协议栈的地址信息;A receiving unit configured to receive a route advertisement message from the second network device, where the route advertisement message is used to publish address information corresponding to the first protocol stack;
    生成单元,用于生成路由,所述路由包括所述对应于第一协议栈的地址信息以及对应于第二协议栈的地址信息,所述对应于第二协议栈的地址信息是所述网络拓扑中的第一链路的端点网络设备的地址信息。Generating unit, configured to generate a route, the route including the address information corresponding to the first protocol stack and the address information corresponding to the second protocol stack, the address information corresponding to the second protocol stack being the network topology The address information of the network device at the endpoint of the first link.
  12. 根据权利要求11所述的装置,其特征在于,所述网络拓扑中所述第一链路之外的其他所有链路的端点网络设备的地址信息均是对应于第二协议栈的地址信息。The apparatus according to claim 11, wherein the address information of endpoint network devices of all other links except the first link in the network topology is address information corresponding to the second protocol stack.
  13. 根据权利要求11所述的装置,其特征在于,所述网络拓扑还包括第二链路,所述第二链路的端点网络设备包括对应于第一协议栈的地址信息。The apparatus according to claim 11, wherein the network topology further includes a second link, and an endpoint network device of the second link includes address information corresponding to the first protocol stack.
  14. 根据权利要求11所述的装置,其特征在于,所述网络拓扑包括双栈链路,所述双栈链路的端点网络设备包括对应于第一协议栈的地址信息和对应于第二协议栈的地址信息。The apparatus according to claim 11, wherein the network topology includes a dual-stack link, and the endpoint network device of the dual-stack link includes address information corresponding to the first protocol stack and information corresponding to the second protocol stack. address information.
  15. 根据权利要求11所述的装置,其特征在于,所述第二网络设备属于BGP SPF路由域且属于内部网关协议IGP路由域,所述对应于第一协议栈的地址信息是所述IGP路由域中第三网络设备的地址信息;或者,The device according to claim 11, characterized in that the second network device belongs to the BGP SPF routing domain and belongs to the Interior Gateway Protocol IGP routing domain, and the address information corresponding to the first protocol stack is the IGP routing domain the address information of the third network device; or,
    所述对应于第一协议栈的地址信息是所述第二网络设备接入的用户设备的地址信息。The address information corresponding to the first protocol stack is the address information of the user equipment accessed by the second network device.
  16. 根据权利要求11至15中任一项所述的装置,其特征在于,所述获得单元,用于接收链路通告报文,所述链路通告报文用于发布所述第一链路的端点网络设备的地址信息;根据所述第一链路的端点网络设备的地址信息获得所述网络拓扑。The device according to any one of claims 11 to 15, characterized in that the obtaining unit is configured to receive a link announcement message, and the link announcement message is used to publish the link of the first link. The address information of the endpoint network device; the network topology is obtained according to the address information of the endpoint network device of the first link.
  17. 根据权利要求11至16中任一项所述的装置,其特征在于,所述路由通告报文为边界网关协议最短路径优先计算BGP SPF报文。The device according to any one of claims 11 to 16, characterized in that the route advertisement message is a Border Gateway Protocol shortest path first calculation BGP SPF message.
  18. 根据权利要求11至17中任一项所述的装置,其特征在于,所述第一协议栈为互联网 协议第4版IPv4协议栈,所述第二协议栈为互联网协议第6版IPv6协议栈;或者,The device according to any one of claims 11 to 17, characterized in that the first protocol stack is an Internet Protocol version 4 IPv4 protocol stack, the second protocol stack is the Internet protocol version 6 IPv6 protocol stack; or,
    所述第一协议栈为IPv6协议栈,所述第二协议栈为IPv4协议栈。The first protocol stack is an IPv6 protocol stack, and the second protocol stack is an IPv4 protocol stack.
  19. 一种数据报文的转发装置,其特征在于,包括:A data message forwarding device, characterized by including:
    接收单元,用于接收数据报文,所述数据报文包括对应于第一协议栈的地址信息;A receiving unit, configured to receive a data message, where the data message includes address information corresponding to the first protocol stack;
    发送单元,用于基于所述对应于第一协议栈的地址信息以及路由,向对应于第二协议栈的地址信息转发所述数据报文,所述路由包括所述对应于第一协议栈的地址信息以及所述对应于第二协议栈的地址信息。A sending unit, configured to forward the data message to the address information corresponding to the second protocol stack based on the address information corresponding to the first protocol stack and the route, where the route includes the address information corresponding to the first protocol stack. address information and the address information corresponding to the second protocol stack.
  20. 根据权利要求19所述的装置,其特征在于,所述第一协议栈为互联网协议第4版IPv4协议栈,所述第二协议栈为互联网协议第6版IPv6协议栈;或者,The device according to claim 19, wherein the first protocol stack is an Internet Protocol version 4 IPv4 protocol stack, and the second protocol stack is an Internet Protocol version 6 IPv6 protocol stack; or,
    所述第一协议栈为IPv6协议栈,所述第二协议栈为IPv4协议栈。The first protocol stack is an IPv6 protocol stack, and the second protocol stack is an IPv4 protocol stack.
  21. 一种网络设备,其特征在于,所述网络设备包括处理器和网络接口,所述处理器用于执行指令,使得所述网络设备执行如权利要求1至权利要求10中任一项所述的方法,所述网络接口用于接收或发送报文。A network device, characterized in that the network device includes a processor and a network interface, and the processor is configured to execute instructions so that the network device executes the method according to any one of claims 1 to 10 , the network interface is used to receive or send messages.
  22. 一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令在处理器上运行时,使得处理器执行如权利要求1-10中任一项所述的方法。A computer-readable storage medium, characterized in that at least one instruction is stored in the storage medium, and when the instruction is run on a processor, it causes the processor to execute the method described in any one of claims 1-10. method.
  23. 一种计算机程序产品,其特征在于,所述计算机程序产品包括一个或多个计算机程序指令,当所述计算机程序指令被计算机加载并运行时,使得所述计算机执行权利要求1-10中任一项所述的方法。 A computer program product, characterized in that the computer program product includes one or more computer program instructions, which when the computer program instructions are loaded and run by a computer, cause the computer to execute any one of claims 1-10 method described in the item.
PCT/CN2023/079852 2022-03-11 2023-03-06 Routing generation method and apparatus, and data message forwarding method and apparatus WO2023169364A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN202210239542.9 2022-03-11
CN202210239542 2022-03-11
CN202210459509.7 2022-04-27
CN202210459509.7A CN116781618A (en) 2022-03-11 2022-04-27 Route generation method, data message forwarding method and device

Publications (1)

Publication Number Publication Date
WO2023169364A1 true WO2023169364A1 (en) 2023-09-14

Family

ID=87935992

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/079852 WO2023169364A1 (en) 2022-03-11 2023-03-06 Routing generation method and apparatus, and data message forwarding method and apparatus

Country Status (1)

Country Link
WO (1) WO2023169364A1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001031888A1 (en) * 1999-10-26 2001-05-03 3Com Corporation Method and system for dual-network address utilization by virtual tunneling
CN1972295A (en) * 2006-12-01 2007-05-30 清华大学 IPv4 over IPv6 extension method of BGP protocol software
US7246175B1 (en) * 2001-12-07 2007-07-17 Cisco Technology, Inc. IPv6 over MPLS IPv4 core
CN101667968A (en) * 2009-09-11 2010-03-10 华为技术有限公司 IPv6 message forwarding method, equipment and system
CN110601982A (en) * 2019-09-27 2019-12-20 新华三信息安全技术有限公司 Route transmission method and device and router
CN111130978A (en) * 2019-12-03 2020-05-08 杭州迪普科技股份有限公司 Network traffic forwarding method and device, electronic equipment and machine-readable storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001031888A1 (en) * 1999-10-26 2001-05-03 3Com Corporation Method and system for dual-network address utilization by virtual tunneling
US7246175B1 (en) * 2001-12-07 2007-07-17 Cisco Technology, Inc. IPv6 over MPLS IPv4 core
CN1972295A (en) * 2006-12-01 2007-05-30 清华大学 IPv4 over IPv6 extension method of BGP protocol software
CN101667968A (en) * 2009-09-11 2010-03-10 华为技术有限公司 IPv6 message forwarding method, equipment and system
CN110601982A (en) * 2019-09-27 2019-12-20 新华三信息安全技术有限公司 Route transmission method and device and router
CN111130978A (en) * 2019-12-03 2020-05-08 杭州迪普科技股份有限公司 Network traffic forwarding method and device, electronic equipment and machine-readable storage medium

Similar Documents

Publication Publication Date Title
US10375193B2 (en) Source IP address transparency systems and methods
WO2021233267A1 (en) Method for forwarding message in srv6 service function chain, sff and sf device
CN111510379A (en) EVPN message processing method, device and system
WO2021164258A1 (en) Method for generating forwarding entry, method for sending message, network device, and system
US9467374B2 (en) Supporting multiple IEC-101/IEC-104 masters on an IEC-101/IEC-104 translation gateway
US11863454B2 (en) Systems and methods for scalable validation of multiple paths in a network using segment routing
WO2022028216A1 (en) Network layer reachable information transmission method, system and apparatus, and network device
CN115865769A (en) Message processing method, network equipment and system
US20230269164A1 (en) Method and apparatus for sending route calculation information, device, and storage medium
US20230353479A1 (en) Edge Computing Data and Service Discovery Using an Interior Gateway Protocol (IGP)
WO2023274083A1 (en) Route publishing method and apparatus, packet forwarding method and apparatus, device, and storage medium
WO2022188530A1 (en) Route processing method and network device
WO2022111666A1 (en) Route advertisement method, apparatus, and system
WO2023169364A1 (en) Routing generation method and apparatus, and data message forwarding method and apparatus
WO2022088685A1 (en) Semantic name acquisition method and apparatus, device, and storage medium
CN114422415B (en) Egress node processing flow in segmented routing
WO2021147357A1 (en) Method, device, and system for distributing routing information
CN109861912B (en) Optimizing fabric path forwarding for virtual nodes within an electronic device
CN114513485A (en) Method, device, equipment and system for obtaining mapping rule and readable storage medium
CN113285878A (en) Load sharing method and first network equipment
CN116781618A (en) Route generation method, data message forwarding method and device
WO2023116226A1 (en) Route advertisement method and related device
WO2022012690A1 (en) Router advertisement method and related device
US10924395B2 (en) Seamless multipoint label distribution protocol (mLDP) transport over a bit index explicit replication (BIER) core
WO2022194193A1 (en) Method and apparatus for acquiring path

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

Country of ref document: EP

Kind code of ref document: A1