CN117354234A - Routing method, network device, system, computer program product and medium - Google Patents

Routing method, network device, system, computer program product and medium Download PDF

Info

Publication number
CN117354234A
CN117354234A CN202210764198.5A CN202210764198A CN117354234A CN 117354234 A CN117354234 A CN 117354234A CN 202210764198 A CN202210764198 A CN 202210764198A CN 117354234 A CN117354234 A CN 117354234A
Authority
CN
China
Prior art keywords
tunnel
network device
network
routing
route
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210764198.5A
Other languages
Chinese (zh)
Inventor
李兴诺
孙春霞
杜涛
丁祥峰
王丽丽
王海波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202210764198.5A priority Critical patent/CN117354234A/en
Publication of CN117354234A publication Critical patent/CN117354234A/en
Pending legal-status Critical Current

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/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the application provides a routing method, network equipment, a network system, a computer program product and a computer readable storage medium, and relates to the field of communication, wherein the method comprises the following steps: the first network device obtains tunnel information, the tunnel information can include a tunnel type and/or a tunnel quality, the tunnel type is a type of a tunnel between the first network device and the second network device, the tunnel quality is a quality of the tunnel between the first network device and the second network device, the first network device can perform routing according to the tunnel information, and the selected routing is used for the first network device to send traffic to the second network device through the tunnel. The method and the device can perform routing selection based on the tunnel type and/or the tunnel quality, and enhance network use experience of the user.

Description

Routing method, network device, system, computer program product and medium
Technical Field
The present application relates to the field of communications, and in particular, to a routing method, a network device, a network system, a computer program product, and a computer readable storage medium.
Background
Autonomous systems (Autonomous System, AS) are network units that can autonomously determine what routing protocols are employed within the system, each autonomous system corresponding to a globally unique autonomous system number (AS number). Border gateway protocol (Border Gateway Protocol, BGP) is employed in propagating routing information between the different autonomous systems. Each autonomous system comprises at least one routing device, wherein one routing device is used as a BGP Speaker (BGP Speaker) of the autonomous system and used for establishing a BGP session with the BGP Speaker in other autonomous systems, and the routing information is propagated through the BGP session.
Existing BGP routing rules support routing by comparing routing attribute values, which may include Local priority (Local Preference), multiple-egress-differentiation (MED) values, autonomous system Path (Autonomous System Path, AS-Path) length, interior gateway protocol Metric values (Interior Gateway Protocol Metric, IGP-Metric), and so forth. Routing by comparing routing attribute values does not take into account customer requirements for network service level agreements (Service Level Agreement, SLA), which may lead to customer network quality degradation.
Disclosure of Invention
In view of this, the present application provides a routing method, which solves the problem of network quality degradation in the prior art.
The first aspect of the application discloses a routing method, comprising the following steps: the method comprises the steps that a first network device obtains tunnel information, the tunnel information comprises a tunnel type, the tunnel type is the type of a tunnel between the first network device and a second network device, and/or the tunnel quality is the quality of the tunnel between the first network device and the second network device; the first network device performs routing according to the tunnel information, and the selected routing is used for the first network device to send traffic to the second network device through the tunnel.
By adopting the technical scheme, the first network equipment acquires the tunnel information, the tunnel information can comprise tunnel types and/or tunnel quality, and the tunnel information is applied to route selection, so that the selected route can be prevented from causing the quality degradation of the client network as far as possible because the route iterates tunnels of different types or tunnels of different qualities can have the satisfaction degree of different service level protocols, and then the route iterated with the tunnel type with better service level protocol satisfaction degree can be selected based on the acquired tunnel types in the route selection process, or the route iterated with the tunnel quality with better service level protocol satisfaction degree is selected based on the acquired tunnel quality, and the network use experience of the user can be enhanced.
In some embodiments, the first network device performs routing according to the tunnel information, including: the first network equipment acquires priorities of a plurality of tunnel types; the first network device performs routing according to priorities of the plurality of tunnel types.
By adopting the technical scheme, the first network device can pre-store priorities of a plurality of tunnel types, for example, a device administrator can log in to the first network device to set the priorities of the tunnel types, the first network device can also receive the priorities of the tunnel types issued by other devices, the higher the priorities of the tunnel types can represent the better satisfaction of the service level protocol, the first network device carries out routing according to the priorities of the tunnel types, and can select the routing iterating the tunnel types with better satisfaction of the service level protocol, so that the network use experience of users can be enhanced.
In some embodiments, the first network device performs routing according to the tunnel information, including: the tunnel types comprise a first tunnel type and a second tunnel type, and the first network equipment selects a route corresponding to the first tunnel type, wherein the quality of a first tunnel corresponding to the first tunnel type is better than that of a second tunnel corresponding to the second tunnel type.
By adopting the technical scheme, different tunnel types can be used for representing that tunnels have different qualities, the qualities can be traffic forwarding qualities, the first network equipment can select the route of the tunnel with better quality for iteration, the network requirements of users are met as much as possible, and the network use experience of the users can be enhanced.
In some embodiments, the first network device performs routing according to the tunnel information, including: the first network equipment adjusts the attribute value of the route associated with the tunnel type according to the tunnel type; the first network device performs routing according to the attribute value of the route.
By adopting the technical scheme, the routing with the expected tunnel type can be selected by setting the attribute value of the routing affected by the tunnel type and the adjustment mode of the attribute value, and the routing with the expected tunnel type can be iterated when the attribute value of the routing is compared, so that the routing based on the tunnel type is indirectly realized, the existing rule of routing based on the attribute value of the routing is compatible, the requirement of network service level agreements can be met as far as possible, and the network use experience of a user can be enhanced.
In some embodiments, the tunnel type includes at least one of, but is not limited to, border gateway protocol-label switched path tunnels, static label switched path tunnels, label distribution protocol-label switched path tunnels, segment routing-multiprotocol label switching-best effort tunnels, segment routing-multiprotocol label interaction-traffic engineering tunnels, segment routing-multiprotocol label switching-traffic engineering-policy tunnels, resource reservation protocol-traffic engineering tunnels, generic routing encapsulation tunnels, internet protocol security tunnels, two-layer tunneling protocol tunnels, internet protocol tunnels, segment routing-traffic engineering-policy tunnels based on internet protocol version 6 forwarding plane, segment routing-traffic engineering-policy group tunnels based on internet protocol version 6 forwarding plane, segment routing-best effort tunnels based on internet protocol version 6 forwarding plane.
By adopting the technical scheme, the first network equipment can perform route selection according to the priorities of the tunnel types, and then can select the route iterated with the expected tunnel type so as to meet the requirement of the network service level protocol.
In some embodiments, the tunnel quality includes, but is not limited to, at least one of a bandwidth of the tunnel, a remaining bandwidth of the tunnel, a delay of the tunnel, delay jitter information of the tunnel.
By adopting the technical scheme, the first network equipment can perform routing according to the bandwidth of the tunnel, the residual bandwidth of the tunnel, the time delay jitter information of the tunnel and the like, so that the routing iterated by the tunnel with large bandwidth, or the residual bandwidth, or the low time delay, or the infrequent time delay jitter can be selected, the requirements of network service level agreements can be met as much as possible, and the network use experience of users can be enhanced.
In some embodiments, the routes may include, but are not limited to, BGP routes or static routes.
By adopting the technical scheme, the first network equipment can select BGP route or static route according to the tunnel information.
In some embodiments, the first network device includes, but is not limited to, one of a switch, router, controller, repeater, firewall device, virtual switch, virtual router, virtual controller, virtual repeater, virtual firewall device.
By adopting the technical scheme, the switch, the router, the controller, the repeater, the firewall equipment, the virtual switch, the virtual router, the virtual controller, the virtual repeater, the virtual firewall equipment and the like can perform routing selection according to the tunnel information, can select the routing iterating the tunnel type or the tunnel quality with better service level protocol satisfaction, realize the network appeal of users as far as possible, and can enhance the network use experience of users.
In some embodiments, the first network device is applied to, but not limited to, a segment routing bearer three-layer virtual private network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-virtual private local area network service network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-virtual private line service network based on an internet protocol version 6 forwarding plane, a public network bearer tunnel network based on an internet protocol version 4, a public network bearer tunnel network based on an internet protocol version 6, and the like.
By adopting the technical scheme, the first network equipment can perform route selection in various network environments according to the tunnel information, can select the route iterating the tunnel type or the tunnel quality with better service level protocol satisfaction, realizes that the network appeal of the user is met as much as possible, and can enhance the network use experience of the user.
A second aspect of the present application discloses a network device, the network device serving as a first network device, the network device comprising: the system comprises an acquisition module, a control module and a control module, wherein the acquisition module is used for acquiring tunnel information, the tunnel information comprises a tunnel type, the tunnel type is the type of a tunnel between first network equipment and second network equipment, and/or the tunnel quality is the quality of the tunnel between the first network equipment and the second network equipment; and the processing module is used for carrying out routing selection according to the tunnel information, and the selected routing is used for the first network equipment to send the traffic to the second network equipment through the tunnel.
By adopting the technical scheme, the network equipment acquires the tunnel information, the tunnel information can comprise tunnel types and/or tunnel quality, and the tunnel information is applied to route selection, so that the selected route is prevented from causing the quality degradation of the customer network as far as possible because the route iterates tunnels of different types or tunnels of different qualities can have the satisfaction degree of different service level protocols, and then the route iterated with the tunnel type with better service level protocol satisfaction degree can be selected based on the acquired tunnel types in the route selection process, or the route iterated with the tunnel quality with better service level protocol satisfaction degree is selected based on the acquired tunnel quality, and the network use experience of the user can be enhanced.
In some embodiments, the processing module is further configured to obtain priorities of the plurality of tunnel types, and perform routing according to the priorities of the plurality of tunnel types.
By adopting the technical scheme, the network equipment can prestore the priorities of a plurality of tunnel types, for example, an equipment administrator can log in to the first network equipment to set the priorities of a plurality of tunnel types, the first network equipment can also receive the priorities of a plurality of tunnel types issued by other equipment, the higher the priorities of the tunnel types can represent the better satisfaction of the service level protocol, the network equipment carries out routing according to the priorities of the tunnel types, can select the routing iterating the tunnel types with better satisfaction of the service level protocol, realizes the network appeal of users as far as possible, and can enhance the network use experience of users.
In some embodiments, the tunnel types include a first tunnel type and a second tunnel type, and the processing module is further configured to select a route corresponding to the first tunnel type, where a quality of the first tunnel corresponding to the first tunnel type is better than a quality of the second tunnel corresponding to the second tunnel type.
By adopting the technical scheme, different tunnel types can be used for representing that tunnels have different qualities, the qualities can be traffic forwarding qualities, network equipment can select the route of the tunnel with better quality for iteration, the network requirements of users are met as far as possible, and the network use experience of the users can be enhanced.
In some embodiments, the processing module is further configured to adjust an attribute value of a route associated with the tunnel type according to the tunnel type, and to perform routing according to the attribute value of the route.
By adopting the technical scheme, the routing with the expected tunnel type can be selected by setting the attribute value of the routing affected by the tunnel type and the adjustment mode of the attribute value, and the routing with the expected tunnel type can be iterated when the attribute value of the routing is compared, so that the routing based on the tunnel type is indirectly realized, the existing rule of routing based on the attribute value of the routing is compatible, the requirement of network service level agreements can be met as far as possible, and the network use experience of a user can be enhanced.
In some embodiments, the tunnel type includes at least one of, but is not limited to, border gateway protocol-label switched path tunnels, static label switched path tunnels, label distribution protocol-label switched path tunnels, segment routing-multiprotocol label switching-best effort tunnels, segment routing-multiprotocol label interaction-traffic engineering tunnels, segment routing-multiprotocol label switching-traffic engineering-policy tunnels, resource reservation protocol-traffic engineering tunnels, generic routing encapsulation tunnels, internet protocol security tunnels, two-layer tunneling protocol tunnels, internet protocol tunnels, segment routing-traffic engineering-policy tunnels based on internet protocol version 6 forwarding plane, segment routing-traffic engineering-policy group tunnels based on internet protocol version 6 forwarding plane, segment routing-best effort tunnels based on internet protocol version 6 forwarding plane.
By adopting the technical scheme, the network equipment can perform routing according to the priorities of a plurality of tunnel types, and then can select the routing iterated with the expected tunnel types so as to meet the requirements of network service level protocols.
In some embodiments, the tunnel quality includes, but is not limited to, at least one of a bandwidth of the tunnel, a remaining bandwidth of the tunnel, a delay of the tunnel, delay jitter information of the tunnel.
By adopting the technical scheme, the network equipment can perform routing according to the bandwidth of the tunnel, the residual bandwidth of the tunnel, the time delay jitter information of the tunnel and the like, so that the routing iterated by the tunnel with large bandwidth, or the residual bandwidth, or the low time delay, or the infrequent time delay jitter can be selected, the requirements of network service level protocols can be met as much as possible, and the network use experience of users can be enhanced.
In some embodiments, the routes may include, but are not limited to, BGP routes or static routes.
By adopting the technical scheme, the network equipment can select BGP route or static route according to the tunnel information.
In some embodiments, the network device includes, but is not limited to, one of a switch, router, controller, repeater, firewall device, virtual switch, virtual router, virtual controller, virtual repeater, virtual firewall device.
By adopting the technical scheme, the switch, the router, the controller, the repeater, the firewall equipment, the virtual switch, the virtual router, the virtual controller, the virtual repeater, the virtual firewall equipment and the like can perform routing selection according to the tunnel information, can select the routing iterating the tunnel type or the tunnel quality with better service level protocol satisfaction, realize the network appeal of users as far as possible, and can enhance the network use experience of users.
In some embodiments, the network device is applied to, but not limited to, a segment routing bearer three-layer virtual private network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-virtual private local area network service network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-virtual private line service network based on an internet protocol version 6 forwarding plane, a public network bearer tunnel network based on an internet protocol version 4, a public network bearer tunnel network based on an internet protocol version 6, and the like.
By adopting the technical scheme, the network equipment can perform routing selection in various network environments according to the tunnel information, can select the routing iterated with the tunnel type or tunnel quality with better service level protocol satisfaction, realize the network appeal of users as far as possible, and can enhance the network use experience of users.
In a third aspect, the present application provides a computer readable storage medium comprising computer instructions which, when run on a network device, cause the network device to perform the routing method as described in the first aspect.
In a fourth aspect, the present application provides a network device comprising a processor and a memory, the memory being for storing instructions, the processor being for invoking the instructions in the memory to cause the network device to perform the routing method according to the first aspect.
In a fifth aspect, the present application provides a computer program product for, when run on a computer, causing the computer to perform the routing method as described in the first aspect.
In a sixth aspect, the present application provides a network system, including the network device provided in the second aspect and the second network device.
In a seventh aspect, an apparatus is provided, where the apparatus has a function of implementing the behavior of the first network device in the method provided in the first aspect. The functions may be realized by hardware, or may be realized by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the functions described above.
It will be appreciated that the computer readable storage medium according to the third aspect, the network device according to the fourth aspect, the computer program product according to the fifth aspect, and the apparatus according to the seventh aspect correspond to the method according to the first aspect, and the network system according to the sixth aspect corresponds to the network device according to the second aspect, so that the advantages achieved by the method according to the third aspect and the apparatus according to the fourth aspect may refer to the advantages provided in the corresponding method or apparatus, and are not repeated herein.
Drawings
Fig. 1 is a schematic diagram of an application scenario of routing provided in an embodiment of the present application;
fig. 2 is a schematic diagram of an application scenario of routing provided in another embodiment of the present application;
fig. 3 is a flow chart of a routing method according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of a network device according to an embodiment of the present application;
fig. 5 is a schematic functional block diagram of a network device according to an embodiment of the present application;
fig. 6 is a schematic diagram of a network system according to an embodiment of the present application.
Detailed Description
It should be noted that "at least one" in this application means one or more, and "a plurality" means two or more. "and/or", describes an association relationship of an association object, and the representation may have three relationships, for example, a and/or B may represent: a alone, a and B together, and B alone, wherein a, B may be singular or plural. The terms "first," "second," "third," "fourth" and the like in the description and in the claims and drawings, if any, are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order.
In the embodiments of the present application, words such as "exemplary" or "such as" are used to mean serving as examples, illustrations, or descriptions. Any embodiment or design described herein as "exemplary" or "for example" should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "such as" is intended to present related concepts in a concrete fashion.
Before introducing the technical solution of the embodiment of the present application, an application scenario of the embodiment of the present application is first described by way of example. The application can be applied to a network using a border gateway protocol (Border Gateway Protocol, BGP), and the network comprises network equipment, wherein the network equipment is equipment for performing a routing forwarding function, and can be equipment such as a router, a switch, a controller, a repeater and the like. The routers, switches, controllers, and forwarders may be physical devices or may be virtual devices (e.g., virtual routers, virtual switches, virtual forwarders, virtual controllers) implemented based on virtualization technology. Depending on where and roles of network devices are deployed in the network, the network devices may also be referred to as Provider Edge (PE) devices, customer Edge (CE) devices, route Reflectors (RR), autonomous system border routers (Autonomous SystemBorder Router, ASBR), and the like.
For example, the network may be, but is not limited to, a segment routing bearer three-Layer virtual private network (Layer 3Virtual Private Network over Segment Routing Internet Protocol Version 6, L3VPN over SRv 6) network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-three-Layer virtual private network (Ethernet Virtual Private Network-Layer 3Virtual Private Network over Segment Routing Internet Protocol Version 6,EVPN-L3VPN over SRv 6) network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private local area network service (Ethernet Virtual Private Network-Virtual Private Lan Service over Segment Routing Internet Protocol Version 6, evpn-VPLS over SRv 6) network based on an internet protocol version 6 forwarding plane, or a segment routing bearer ethernet virtual private network-virtual private line service (Ethernet Virtual Private Network-Virtual Private Wire Service over Segment Routing Internet Protocol Version 6, evpn-VPWS over SRv 6) network based on an internet protocol version 4 public network bearer tunnel network, a public network bearer tunnel network based on an internet protocol version 6, or the like.
Fig. 1 is a schematic view of an application scenario provided in an embodiment of the present application. The scenario shown in fig. 1 is illustrated by taking an L3VPN over SRv6 network scenario as an example, and the schematic diagram includes a controller, a network device 1, a network device 2, a network device 3, a network device 4, a network device 5, and a network device 6. Fig. 1 is shown for ease of understanding only and is not limiting of embodiments of the present application, and the L3VPN over SRv6 network may include more or fewer network devices.
In the application scenario shown in the present embodiment, BGP neighbors are respectively established between the network device 1 and the network device 2, between the network device 2 and the network device 3, and between the network device 3 and the network device 4, and BGP neighbors are respectively established between the network device 1 and the network device 5, between the network device 5 and the network device 6, and between the network device 6 and the network device 4. And advertising BGP service route information between BGP neighbors through BGP update information to realize service creation. Based on the direction in which network device 1 advertises BGP traffic routes to network device 4, the former node is referred to as the upstream node of the latter node, and the latter node is referred to as the downstream node of the former node, e.g., network device 2 is the downstream node of network device 1, and network device 1 is the upstream node of network device 2. The BGP service route information includes a destination address and a next-hop address. For example, the destination address may be carried in a BGP-defined multiprotocol network layer reachability information (Multiprotocol Reachable NLRI, mp_reach_nlri) attribute, and the NEXT-HOP address may be carried in a BGP-defined NEXT-HOP (next_hop) attribute. If the destination address is an internet protocol (Internet Protocol, IP) address, such as an IPv4 address or an IPv6 address, the destination address may also be referred to as an IP address prefix or IP prefix.
The routing iteration refers to an iterative routing lookup (recursive route lookup), specifically, an operation of performing an iterative routing lookup for an IP address in a NEXT HOP (NEXT HOP) attribute. The iterative route search comprises iterative IP search and iterative tunnel search. When a network device receives BGP routing information, if the IP address in the NEXT HOP attribute is a NEXT HOP address that is not directly connected to the network device, an iterative route lookup of the IP address in the NEXT HOP attribute is required to determine a direct NEXT HOP address (i.e., iterative IP lookup) or a tunnel identification (i.e., iterative tunnel lookup) to confirm whether the route to the IP address in the NEXT HOP attribute is reachable.
It is assumed that for the network device 1, there are two routes with the same IP prefix and different next hops, the two routes are route1 and route2, respectively, the next hops are nhp and nhp2, or there are two routes with the same IP prefix and the same next hop, the two routes are route1 and route2, respectively, and the next hop is nhp1. Taking the example that two routes with identical IP prefixes and different next hops exist, in order to ensure that the L3VPN service has ultra-low delay requirement and always has enough bandwidth, the controller sets segment route-traffic engineering-Policy (Segment Routing Internet Protocol Version 6-Traffic Engineering-Policy, SRv 6-TE-Policy) tunnel requirements based on an internet protocol version 6 forwarding plane, and in order to prevent that the two routes cannot iterate to the SRv-TE-Policy tunnel, the two routes are configured to use a segment route-Best Effort (Segment Routing Internet Protocol Version 6-Best effect, SRv 6-BE) tunnel based on the internet protocol version 6 forwarding plane as an escape path to ensure that the routes can still iterate to the tunnel and keep traffic forwarding capacity, and meanwhile, the optimal route is determined based on Local priority (local_pref), and the higher the local_pref value is, the more preferable. SRv6-TE-POLICY refers to a source Routing mechanism that uses Segment Routing to direct messages across the network by encapsulating an ordered list of instructions (path information) at the head node. SRv6-TE-Policy is used for realizing traffic engineering, improving network quality and meeting the end-to-end requirements of services. SRv6-BE refers to the optimal SRv path calculated based on the IGP shortest path algorithm, and uses a service system identification code (System Identity Number, SID) to direct the forwarding of a message in a link, which is a best effort mode of operation. SRv6-BE has no traffic engineering capability and is typically used to carry ordinary VPN traffic, fast on-coming traffic. Assuming an IP prefix of 1.1.1.1, the two routes are shown in table 1 below.
TABLE 1
Routing IP prefix Next hop Iterative tunneling Local_pref
route1 1.1.1.1 nhp1 SRv6-TE-POLICY1 200
route2 1.1.1.1 nhp2 SRv6-TE-POLICY2 100
Since the local_pref value of the route1 is greater than the local_pref value of the route2, the optimal route can be determined to be the route1, the controller selects the route1, and the network device 1 sends the traffic to the downstream node through the SRv-TE-POLICY 1 tunnel. When the SRv-TE-POLICY 1 tunnel for route1 iteration is not available for some reason, route1 can iterate to the SRv6-BE tunnel, i.e., route1 is still available, since route1 configures the SRv-BE tunnel as an escape path. The local_pref value of the route1 is greater than the local_pref value of the route2, the optimal route is still the route1, and the network device 1 sends the traffic to the downstream node through the SRv-BE tunnel. The information of both routes is updated from table 1 to table 2.
TABLE 2
Routing IP prefix Next hop Iterative tunneling Local_pref
route1 1.1.1.1 nhp1 SRv6-BE 200
route2 1.1.1.1 nhp2 SRv6-TE-POLICY2 100
Because the SRV6-BE tunnel can only forward the traffic in a best effort mode, the traffic sent through the SRv6-BE tunnel cannot ensure the ultra-low delay of traffic transmission service and network quality requirements such as bandwidth and the like the SRv-TE-POLICY tunnel. I.e. routing iterates SRv6-BE tunnels may cause changes in the network Service-Level agent (SLA), affecting the user network usage experience. For example, the transition of a route from an iteration SRv6-TE-POLICY tunnel to an iteration SRv-BE tunnel is likely to not guarantee network complaints with low latency requirements, such as telemedicine traffic, real-time production monitoring traffic, etc.
Fig. 2 is a schematic diagram of an application scenario provided in an embodiment of the present application. The scenario shown in fig. 2 is illustrated by way of example of deployment of L3VPN traffic, and the schematic diagram includes network device 1, network device 2, network device 3, and network device 4. Fig. 2 is shown for ease of understanding only and is not to be construed as limiting the embodiments of the present application.
It is assumed that the network device 2 carries a bandwidth of 300G when sending a route of 1.1.1.1/32 to the network device 1, and the network device 3 carries a bandwidth of 200G when sending a route of 1.1.1.1/32 to the network device 1. If a route is preferred which the network device 3 sends to the network device 1. If the traffic exceeds 200G, a network packet loss phenomenon occurs, that is, the route sent by the network device 3 to the network device 1 is not the optimal route desired by the user, and the route sent by the network device 2 to the network device 1 is the optimal route desired by the user.
Assume that network device 1 to network device 4 have two tunnels T1, T2, the bandwidth of tunnel T1 being 100G and the bandwidth of tunnel T2 being 40G. The tunnel T1 is the optimal tunnel, the network equipment 1 selects the tunnel T1 according to service deployment, and the bandwidth of the tunnel T1 can meet service requirements. With other services deployed in the tunnel T1, the residual bandwidth of the tunnel T1 is smaller than the residual bandwidth of the tunnel T2, or the delay of the tunnel T1 is larger than the delay of the tunnel T2, at this time, if the tunnel T1 is still used for traffic transmission, the phenomenon of network packet loss or large network delay may occur, which affects the user network usage experience.
In order to solve the above-mentioned problems, the present application provides a routing method, which is described below with reference to the accompanying drawings.
Referring to fig. 3, a flow chart of a routing method according to an embodiment of the present application is provided. The routing method provided by the application can be realized by the following S101 to S102, for example.
S101: the first network device obtains tunnel information.
In some embodiments, the tunnel information may include a tunnel type and/or a tunnel quality. The tunnel type may refer to a type of tunnel between the first network device and the second network device, and the tunnel quality may refer to a quality of the tunnel between the first network device and the second network device. The first network device may be a router, switch, repeater, or the like. Correspondingly, the second network device may also be a router, a switch, a repeater, etc. For example, in an L3VPN over SRv6 network scenario, the first network device and the second network device may be PE devices. For example, the first network device corresponds to the network device 1 shown in fig. 1, and the second network device corresponds to the network device 4 shown in fig. 1.
It can be appreciated that if the first network device and the second network device are applied to the L3VPN over SRv6 network scenario, VPN instances are configured on both the first network device and the second network device, and the private network route is learned by using the VPN instances. The first network device and the second network device have pre-established BGP neighbor relationships, and both support SRv.
In some embodiments, the first network device may receive BGP routing information from the second network device, which may include a destination address and a next-hop address to the destination address. The first network device may perform route iteration processing on the next hop address, and record a route iteration result. The routing iteration result may comprise tunnel information of the routing iteration, i.e. may comprise a tunnel type and/or a tunnel quality of the routing iteration. The present application is not limited to the tunnel types of the Routing iterations, for example, the tunnel types of the Routing iterations may include, but are not limited to, border gateway protocol-label switched path (Border Gateway Protocol-Label Switched Path, BGP-LSP) tunnels, static label switched path (Label Switched Path, LSP) tunnels, label distribution protocol-label switched path (Label Distribution Protocol-Label Switched Path, LDP-LSP) tunnels, segment Routing-multiprotocol label switching-Best Effort (SR-MPLS-BE) tunnels, segment Routing-multiprotocol label interaction-traffic engineering (Segment Routing-Multiple Protocol Label Switching-Traffic Engineering), SR-MPLS-TE) tunnel, segment Routing-multiprotocol Label switching-traffic engineering-Policy (SR-MPLS-TE-Policy) tunnel, resource reservation protocol-traffic engineering (Resource Reservation Protocol-Traffic Engineering, RSVP-TE) tunnel, generic Routing encapsulation (Generic Routing Encapsulation, GRE) tunnel, internet protocol Security (Internet Protocol Security, IPSEC) tunnel, layer 2Tunneling Protocol,L2TP tunnel, internet protocol (Internet Protocol, IP) tunnel, SRv6-TE-Policy tunnel, at least one of a segment routing-traffic engineering-Policy Group (Segment Routing Internet Protocol Version 6-Traffic Engineering-Policy Group, SRv6-TE-Policy Group) tunnel, SRv6-BE tunnel based on an internet protocol version 6 forwarding plane.
Tunnel quality may refer to tunnel parameters that may affect traffic transmission quality when a network device performs route forwarding. The present application does not limit the tunnel quality, for example, the tunnel quality may include, but is not limited to, at least one of a bandwidth of the tunnel, a remaining bandwidth of the tunnel, a delay of the tunnel, and delay jitter information of the tunnel. The tunnel of the routing iteration generally carries information such as bandwidth, residual bandwidth and the like, and the first network device can acquire the information such as the bandwidth, residual bandwidth and the like of the tunnel of the routing iteration when performing routing iteration processing on the next hop address. The delay of the tunnel may be detected by deploying a delay detection tool, for example, the first network device may deploy bidirectional active measurement protocol (Two-Way Active Measurement Protocol, TWAMP) software to obtain delay and delay jitter information of the tunnel. The delay jitter information may refer to information such as the number of times and duration that the delay of the tunnel is greater than a preset time (e.g., 50 ms) in a unit time (e.g., one day or one hour, etc.).
In some embodiments, the first network device performs a routing iteration process on the next hop address, where the iterated routing may be static routing, BGP routing, and so on.
S102, the first network device performs route selection according to the tunnel information, and the selected route is used for the first network device to send traffic to the second network device through the tunnel.
In some embodiments, in the process of performing route iteration processing on the next hop address by the first network device, tunnel information of each route iteration may be obtained, and then route selection is performed according to the tunnel information. After the first network device selects a certain route r_1 according to the tunnel information, the first network device may send traffic (or referred to as data traffic) to the second network device through the tunnel iterated by the route r_1. The first network device may also update the selected route to a forwarding information table (Forward Information dataBase, FIB) and publish the route to the neighbor device.
In some embodiments, the first network device may route according to a tunnel type, or route according to a tunnel quality, or route according to a tunnel type and a tunnel quality.
Taking the routing of the first network device according to the tunnel type as an example, priorities of a plurality of tunnel types may be predefined, and priority information of the tunnel types may be stored on the first network device, for example, the predefined priority information of the plurality of tunnel types may be stored on the first network device before the first network device leaves the factory. In addition, the present application does not limit the definition manner of the priority, for example, a specific numerical value may be set to characterize the priority order, the larger the numerical value is, the higher the priority is, or a priority order table may be established, in which the tunnel types sorted by the priority order are described. When the first network device performs routing, the first network device may perform routing by comparing priorities of tunnel types.
For example, the priority of the SRv6-TE-POLICY tunnel is preset to BE higher than the priority of the SRv6-BE tunnel, two routes r_1 and r_2 exist between the first network device and the second network device, the tunnel iterated by the route r_1 is the SRv6-TE-POLICY tunnel, and the tunnel iterated by the route r_2 is the SRv6-BE tunnel. Since the priority of the SRv6-TE-POLICY tunnel is higher than the SRv6-BE tunnel priority, the first network device may determine that route r_1 is the optimal route, i.e., the first network device selects SRv6-TE-POLICY tunnels iterated through route r_1 to send traffic to the second network device. Compared with the method that the traffic is sent to the second network device through the SRv-BE tunnel, the SRv-TE-POLICY tunnel can ensure low delay of traffic transmission service and network quality requirements such as bandwidth, and the network use experience of the user is better.
In some embodiments, the priorities of the plurality of tunnel types stored on the first network device may support a device administrator to make priority adjustments according to actual needs. For example, a device administrator may log onto a first network device and update the priority order of tunnel types. For example, the default priority information stored by the first network device defines a priority of SRv6-TE-POLICY tunnels higher than SRv6-BE tunnels, and a priority of SRv6-BE tunnels higher than GRE tunnels. After the device administrator logs into the first network device, the GRE tunnel priority may BE reset to BE higher than the SRv6-BE tunnel priority, the SRv-BE tunnel priority to BE higher than the SRv6-TE-POLICY tunnel priority, and so on.
Existing routing rules support routing by comparing routing attribute values, which may include, but are not limited to, protocol preference values (preferred-value), local_pref, as_path, MED values, next hop Metric values, CLUSTER LIST (clusterlist) length, IGP-Metric values, etc. For example, the routing rules may include at least one of: the route with the largest preferred-value, the route with the highest local_pref, the route with the shortest AS_Path, the route with the lowest MED value, the route with the lowest next hop Metric value, the route with the shortest CLUSTER_LIST length and the route with the lowest IGP-Metric value are selected. It will be appreciated that the names of the attribute values of the routes described above are merely exemplary, and that the names set by different device manufacturers for the attribute values of the routes may not be the same, and the present application is not limited thereto.
The tunnel type and the attribute value of the route may be combined for routing, and the comparison sequence of the comparison of the tunnel types in the comparison of the attribute values of the routes may be preset, that is, the routing rule of the first network device may include the attribute value of the route and the tunnel type. For example, a network device defines the following routing rules: r1, preferentially selecting the route with the maximum preferred-value, and if the preferred-value is the same, continuing to execute R2; r2, preferentially selecting the route with the highest local_pref, and if the local_pref is the same, continuing to execute R3; r3, preferentially selecting the shortest route of the AS_Path, and if the AS_Path is the same, continuing to execute R4; r4, preferentially selecting a route with the lowest MED value, and continuously executing R5 if the MED values are the same; and R5, preferentially selecting the route with the lowest next hop metric value. The first network device may then define the following routing rules: r1, preferentially selecting a route with the highest priority of the tunnel type, and continuously executing R2 if the priorities of the tunnel types are the same; r2, preferentially selecting the route with the maximum preferred-value, and if the preferred-value is the same, continuing to execute R3; r3, preferentially selecting the route with the highest local_pref, and if the local_pref is the same, continuing to execute R4; r4, preferentially selecting the shortest route of the AS_Path, and if the AS_Path is the same, continuing to execute R5; r5, preferentially selecting a route with the lowest MED value, and if the MED values are the same, continuing to execute R6; r6, the route with the lowest next hop measurement value is preferentially selected. The device administrator may also log into the first network device to update the comparison order of comparison of tunnel types in the comparison of attribute values of the routes. For example, the route with the highest priority of the tunnel type may be selected with the priority of "R1", and if the priorities of the tunnel types are the same, R2 may be continuously executed; r2, preferentially selecting the route with the largest preferred-value, if the preferred-value is the same, continuously executing R3 update to R1, preferentially selecting the route with the largest preferred-value, and if the preferred-value is the same, continuously executing R2; and R2, preferentially selecting the route with the highest priority of the tunnel type, and if the priorities of the tunnel types are the same, continuing to execute R3".
In some embodiments, the priority comparison of the tunnel type may be placed in a preceding comparison order in the routing rules, e.g., in a first comparison order, a second comparison order, etc., so that routes with a higher priority to the tunnel type may be preferred. In the embodiment of the present application, the comparison order of the priority comparison of the tunnel types in the routing rule is not limited, for example, the priority comparison order of the selectable tunnel types is higher than the comparison order of the local_pref, the MED value, the IGP-metric value and other routing attributes, and lower than the security attribute of the route.
In some embodiments, the plurality of tunnel types may be further classified into several types, for example, the tunnel types include a first tunnel type and a second tunnel type, the quality of a tunnel corresponding to the first tunnel type is better than the quality of a tunnel corresponding to the second tunnel type, and the first network device may select a route corresponding to the first tunnel type when performing route selection, so as to ensure network usage experience of the user. The quality of the tunnel may include, but is not limited to, the bandwidth of the tunnel, the remaining bandwidth of the tunnel, the delay of the tunnel, delay jitter information of the tunnel, and the like tunnel parameters that may affect the quality of traffic transmission.
For example, SR-MPLS-TE-POLICY, RSVP-TE may be categorized as a first tunnel type, GRE, IPSEC, L2TP, IP may be categorized as a second tunnel type.
In some embodiments, the comparison of the tunnel types is not directly used as a routing rule, but the routing based on the tunnel types can be realized by setting the attribute values of the routes affected by the tunnel types and the adjustment modes of the attribute values. The existing routing rules may not need to be modified, and the routing may still be performed by comparing the attribute values of the routes. The attribute value and the adjustment mode of the attribute value, which are affected by the tunnel type of the routing iteration, may be preset and stored on the first network device. The first network device may adjust an attribute value of a route associated with the tunnel type according to the tunnel type by recording a tunnel type of the route iteration, and then perform route selection according to the adjusted attribute value of the route. The embodiment of the application does not set the attribute value and the adjustment mode of the attribute value, which are affected by the tunnel type of the route iteration, for example, the attribute value affected by the tunnel type of the route iteration can be set according to the comparison order of the attribute value in the route selection rule currently defined by the network equipment, and the adjustment mode of the attribute value can be set according to the size/height/length of the attribute value.
For example, when the tunnel type of the routing iteration is SRv6-TE-POLICY tunnel, local_pref is adjusted in such a way that the local_pref value is increased by 1000; when the tunnel type of the routing iteration is SRv6-BE tunnel, the local_pref is adjusted in such a way that the local_pref value is increased by 100. In this way, the information of the two routes shown in table 2 is updated to table 3.
TABLE 3 Table 3
Routing IP prefix Next hop Iterative tunneling Local_pref
route1 1.1.1.1 nhp1 SRv6-BE 300(200+100)
route2 1.1.1.1 nhp2 SRv6-TE-POLICY2 1100(100+1000)
Because the local_pref value of the route2 is larger than the local_pref value of the route1, the optimal route is changed from the route1 to the route2, and the network equipment 1 sends the traffic to the downstream node through the SRv6-TE-POLICY2 tunnel, so that the network quality requirements such as ultra-low delay, bandwidth and the like of traffic transmission service are ensured.
Taking the routing selection by the first network device according to the tunnel quality as an example, assuming that the tunnel quality includes any one of tunnel parameters such as the bandwidth of the tunnel, the residual bandwidth of the tunnel, the time delay of the tunnel, and the like, the optimal route is the route with the optimal tunnel quality of the tunnel with route iteration. For example, the optimal route is the route with the largest bandwidth of the tunnel, or the route with the largest residual bandwidth of the tunnel, or the route with the lowest delay of the tunnel.
For example, when the service deployment is performed, for the service with the guaranteed bandwidth requirement, the bandwidth of the tunnel can be set to participate in the route selection, so that the optimal route is the route with the guaranteed bandwidth. The bandwidth of the tunnel may be set to participate in the routing by the following code.
When the service deployment is carried out, for the service with the bandwidth requirement guarantee, the residual bandwidth of the tunnel can be set to participate in the route selection, so that the optimal route is the route with the residual bandwidth guarantee. The remaining bandwidth of the tunnel may be set to participate in the routing by the following code.
When the service deployment is carried out, for the service with the delay requirement guarantee, the delay participation routing of the tunnel can be set, so that the optimal route is the route with the delay guarantee. For example, the delay of the tunnel is acquired by TWAMP software, and the delay of the tunnel can be set by the following codes to participate in the routing.
Assuming that the tunnel quality includes, but is not limited to, a plurality of tunnel parameters including a bandwidth of the tunnel, a remaining bandwidth of the tunnel, a delay of the tunnel, delay jitter information of the tunnel, etc., a comparison order of the tunnel parameters may be set to select an optimal route. The comparison order of the tunnel parameters is not limited, can be set and adjusted according to actual application scenes, and can be set according to the traffic flow, the network SLA and the like.
For example, the tunnel quality includes the bandwidth of the tunnel and the delay of the tunnel, and the following routing rules may be defined based on the tunnel quality: r1, preferentially selecting a route with the lowest time delay of the tunnel, and continuously executing R2 if the time delay of the tunnels is the same; r2, the route with the largest bandwidth of the tunnel is preferentially selected.
In some embodiments, the tunnel quality may be further selected in combination with the attribute value of the route, and the comparison sequence of the comparison of the tunnel quality in the comparison of the attribute values of the route may be preset, that is, the routing rule of the first network device may include the attribute value of the route and the tunnel quality. For example, existing network devices define the following routing rules: r1, preferentially selecting the route with the maximum preferred-value, and if the preferred-value is the same, continuing to execute R2; r2, preferentially selecting the route with the highest local_pref, and if the local_pref is the same, continuing to execute R3; r3, preferentially selecting the shortest route of the AS_Path, and if the AS_Path is the same, continuing to execute R4; r4, the route with the lowest MED value is preferentially selected. The first network device may then define the following routing rules: r1, preferentially selecting a route with the lowest time delay of the tunnel, and continuously executing R2 if the time delay of the tunnels is the same; r2, preferentially selecting the route with the maximum preferred-value, and if the preferred-value is the same, continuing to execute R3; r3, preferentially selecting the route with the highest local_pref, and if the local_pref is the same, continuing to execute R4; r4, preferentially selecting the shortest route of the AS_Path, and if the AS_Path is the same, continuing to execute R5; r5, the route with the lowest MED value is preferentially selected.
In some embodiments, the tunnel type and the tunnel quality may be further combined for routing, and the comparison sequence of the tunnel type and the tunnel quality may be preset, that is, the routing rule of the first network device may include the tunnel type and the tunnel quality. For example, the tunnel quality includes a delay of the tunnel, and the following routing rule may be defined based on the tunnel type and the tunnel quality: r1, preferentially selecting a route with the highest priority of the tunnel type, and continuously executing R2 if the priorities of the tunnel types are the same; and R2, preferentially selecting the route with the lowest time delay of the tunnel.
In some embodiments, the tunnel type, the tunnel quality and the attribute value of the route may be further combined for routing, and the comparison sequence of the comparison of the tunnel type and the comparison of the tunnel quality in the comparison of the attribute values of the route may be preset, that is, the routing rule of the first network device may include the attribute value of the route, the tunnel type and the tunnel quality. For example, existing network devices define the following routing rules: r1, preferentially selecting the route with the maximum preferred-value, and if the preferred-value is the same, continuing to execute R2; r2, preferentially selecting the route with the highest local_pref, and if the local_pref is the same, continuing to execute R3; r3, preferentially selecting the shortest route of the AS_Path, and if the AS_Path is the same, continuing to execute R4; r4, the route with the lowest MED value is preferentially selected. The first network device may then define the following routing rules: r1, preferentially selecting a route with the highest priority of the tunnel type, and continuously executing R2 if the priorities of the tunnel types are the same; r2, preferentially selecting the route with the lowest time delay of the tunnel, and continuously executing R3 if the time delay of the tunnels is the same; r3, preferentially selecting the route with the largest preferred-value, and if the preferred-value is the same, continuing to execute R4; r4, preferentially selecting the route with the highest local_pref, and if the local_pref is the same, continuing to execute R5; r5, preferentially selecting the shortest route of the AS_Path, and if the AS_Path is the same, continuing to execute R6; r6, selecting the route with the lowest MED value preferentially.
Fig. 4 is a schematic diagram of a network device according to an embodiment of the present application. The network device 100 is used as a first network device, and may be applied to, but not limited to, L3VPN OVER SRv6 networks, EVPN-VPLS OVER SRv6 networks, EVPN-VPWS OVER SRv6 networks, internet protocol 4 th edition public network bearer tunnel networks, internet protocol 6 th edition public network bearer tunnel networks, other traffic networks that are carried through SRv6, and so on. The network device 100 includes a processor 1001, a memory 1002 coupled to the processor 1001, and a transceiver 1003. The processor 1001 may be a central processing unit (central processing unit, CPU), a network processor (network processor, NP) or a combination of CPU and NP. The processor 1001 may also be an application-specific integrated circuit (ASIC), a programmable logic device (programmable logic device, PLD), or a combination thereof. The PLD may be a complex programmable logic device (complex programmable logic device, CPLD), a field-programmable gate array (field-programmable gate array, FPGA), general-purpose array logic (generic array logic, GAL), or any combination thereof. The processor 1001 may refer to one processor or may include a plurality of processors. The transceiver 1003 is configured to receive BGP routing information from the second network device and send the message to the processor 1001 for use in subsequent operational processing. BGP routing information may include a destination address and a next-hop address to the destination address. The memory 1002 may include volatile memory, such as random-access memory (RAM); the memory may also include a nonvolatile memory such as a read-only memory (ROM), a flash memory (english: flash memory), a hard disk (HDD) or a Solid State Drive (SSD); the memory 1002 may also include a combination of the above types of memory. The memory 1002 has stored therein one or more computer programs 1004. One or more computer programs 1004 are configured to be executed by the processor 1001. The one or more computer programs 1004 include instructions that can be used to implement the routing method described in fig. 3 for implementation in the network device 100.
Fig. 5 is a schematic functional block diagram of a network device according to an embodiment of the present application. The network device 100 may include an acquisition module 1100 and a processing module 1101. Modules referred to in the embodiments herein may be program segments, which perform a particular function and are more suited to describing software processes performed by a processor than a program. The one or more modules may be stored in the memory and configured to be executed by the one or more processors. For example, the one or more modules may be stored in the memory 1002 shown in fig. 4 and configured to be executed by the processor 1001 shown in fig. 4.
The acquiring module 1100 is configured to acquire tunnel information. The tunnel information includes a tunnel type and/or a tunnel quality, the tunnel type being a type of a tunnel between the first network device and the second network device, the tunnel quality being a quality of the tunnel between the first network device and the second network device.
The processing module 1101 is configured to perform routing according to the tunnel information. The selected route is used for the first network device to send traffic to the second network device through the tunnel.
In some embodiments, the processing module 1101 may also be configured to obtain priorities of a plurality of tunnel types and to route according to the priorities of the plurality of tunnel types.
For example, the tunnel types include a first tunnel type and a second tunnel type, the quality of the first tunnel corresponding to the first tunnel type is better than the quality of the second tunnel corresponding to the second tunnel type, and the processing module 1101 may select the route corresponding to the first tunnel type.
In some embodiments, the processing module 1101 may be further configured to adjust an attribute value of a route associated with the tunnel type according to the tunnel type, and to perform routing according to the attribute value of the route.
Fig. 6 is a system schematic diagram of a network system according to an embodiment of the present application. As shown in fig. 6, the network system 200 includes a first network device 210 and a second network device 220. The first network device 210 and the second network device 220 may be the network devices described in the embodiments corresponding to fig. 1 and fig. 2. The first network device 210 may also be a first network device as described in the above-described embodiment corresponding to fig. 3, and the second network device 220 may also be a second network device as described in the above-described embodiment corresponding to fig. 3. For a detailed description of each device in the network system 200, please refer to the relevant sections in the corresponding embodiments of fig. 1, fig. 2, fig. 3, etc., and the detailed description is omitted here.
The present embodiment also provides a computer storage medium having stored therein computer instructions which, when executed on a network device, cause the network device to perform the above-mentioned related method steps to implement the routing method in the above-mentioned embodiments.
The present embodiment also provides a computer program product which, when run on a computer, causes the computer to perform the above-mentioned related steps to implement the routing method in the above-mentioned embodiments.
In addition, embodiments of the present application also provide an apparatus, which may be specifically a chip, a component, or a module, where the apparatus may include a processor and a memory connected to each other; the memory is configured to store computer-executable instructions, and when the device is running, the processor may execute the computer-executable instructions stored in the memory, so that the chip performs the routing method in the above method embodiments.
The network device, the computer storage medium, the computer program product, or the chip provided in this embodiment are used to execute the corresponding methods provided above, so that the beneficial effects thereof can be referred to the beneficial effects in the corresponding methods provided above, and will not be described herein.
From the foregoing description of the embodiments, it will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of functional modules is illustrated, and in practical application, the above-described functional allocation may be implemented by different functional modules according to needs, i.e. the internal structure of the apparatus is divided into different functional modules to implement all or part of the functions described above.
In the several embodiments provided in this application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the apparatus embodiments described above are illustrative, and the module or unit is divided into a logic function, and there may be other division manners in actual implementation, for example, multiple units or components may be combined or integrated into another apparatus, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be an indirect coupling or communication connection via some interfaces, devices or units, which may be in electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and the parts displayed as units may be one physical unit or a plurality of physical units, may be located in one place, or may be distributed in a plurality of different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in each embodiment of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a readable storage medium. Based on such understanding, the technical solutions of the embodiments of the present application may be essentially or a part contributing to the prior art or all or part of the technical solutions may be embodied in the form of a software product stored in a storage medium, where the software product includes several instructions to cause a device (may be a single-chip microcomputer, a chip or the like) or a processor (processor) to perform all or part of the steps of the methods described in the embodiments of the present application. And the aforementioned storage medium includes: a usb disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk, etc.
The foregoing is merely a specific embodiment of the present application, but the protection scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present disclosure should be covered in the protection scope of the present application.

Claims (22)

1. A routing method, the routing method comprising:
the method comprises the steps that a first network device obtains tunnel information, wherein the tunnel information comprises a tunnel type, the tunnel type is the type of a tunnel between the first network device and a second network device, and/or the tunnel quality is the quality of the tunnel between the first network device and the second network device;
And the first network equipment performs routing according to the tunnel information, and the selected routing is used for sending traffic to the second network equipment through the tunnel by the first network equipment.
2. The routing method of claim 1, wherein the first network device performs routing according to the tunnel information, comprising:
the first network equipment acquires priorities of a plurality of tunnel types;
and the first network equipment performs routing according to the priorities of the tunnel types.
3. The routing method of claim 1, wherein the first network device performs routing according to the tunnel information, comprising:
the tunnel types comprise a first tunnel type and a second tunnel type, and the first network equipment selects a route corresponding to the first tunnel type, wherein the quality of a first tunnel corresponding to the first tunnel type is better than that of a second tunnel corresponding to the second tunnel type.
4. The routing method of claim 1, wherein the first network device performs routing according to the tunnel information, comprising:
The first network equipment adjusts the attribute value of the route associated with the tunnel type according to the tunnel type;
and the first network equipment performs routing according to the routing attribute value.
5. The routing method according to any of claims 1 to 4, wherein the tunnel types comprise at least one of border gateway protocol-label switched path BGP-LSP tunnel, static label switched path LSP tunnel, label distribution protocol-label switched path LDP-LSP tunnel, segment route-multiprotocol label switching-best effort SR-MPLS-BE tunnel, segment route-multiprotocol label interaction-traffic engineering SR-MPLS-TE tunnel, segment route-multiprotocol label switching-traffic engineering-POLICY SR-MPLS-TE-POLICY tunnel, resource reservation protocol-traffic engineering RSVP-TE tunnel, generic routing encapsulation GRE tunnel, internet protocol security IPSEC tunnel, two-layer tunnel protocol L2TP tunnel, internet protocol IP tunnel, segment route-traffic engineering-POLICY SRv-TE-POLICY tunnel based on internet protocol version 6 forwarding plane, segment route-traffic engineering-POLICY GROUP SRv-TE-POLICY oup based on internet protocol version 6 forwarding plane, and internet protocol version 6-best effort tunnel based on internet protocol version 6 forwarding plane SRv.
6. The routing method of claim 1, wherein the tunnel quality comprises at least one of a bandwidth of a tunnel, a remaining bandwidth of a tunnel, a delay of a tunnel, delay jitter information of a tunnel.
7. A routing method as recited in any of claims 1 to 6, wherein said routes comprise BGP routes or static routes.
8. The routing method of any of claims 1 to 7, wherein the first network device comprises one of a switch, a router, a controller, a repeater, a firewall device, a virtual switch, a virtual router, a virtual controller, a virtual repeater, a virtual firewall device.
9. The routing method according to any of claims 1 to 8, wherein the first network device is applied in a segment routing bearer three-layer virtual private network L3VPN over SRv6 network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-three-layer virtual private network EVPN-L3VPN over SRv6 network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-virtual private network service EVPN-VPLS over SRv6 network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network-virtual private network service EVPN-VPWS over SRv6 network based on an internet protocol version 6 forwarding plane, a public network bearer tunnel network based on an internet protocol version 4, or a public network bearer tunnel network based on an internet protocol version 6.
10. A network device, the network device functioning as a first network device, the network device comprising:
an obtaining module, configured to obtain tunnel information, where the tunnel information includes a tunnel type, where the tunnel type is a type of a tunnel between the first network device and the second network device, and/or a tunnel quality, where the tunnel quality is a quality of the tunnel between the first network device and the second network device;
and the processing module is used for carrying out routing selection according to the tunnel information, and the selected routing is used for the first network equipment to send the flow to the second network equipment through the tunnel.
11. The network device of claim 10, wherein the processing module is further configured to obtain priorities of a plurality of tunnel types, and to route according to the priorities of the plurality of tunnel types.
12. The network device of claim 10, wherein the tunnel type comprises a first tunnel type and a second tunnel type, the processing module to select a route corresponding to the first tunnel type, wherein a quality of the first tunnel corresponding to the first tunnel type is better than a quality of the second tunnel corresponding to the second tunnel type.
13. The network device of claim 10, wherein the processing module is further configured to adjust an attribute value of a route associated with the tunnel type based on the tunnel type, and to route based on the attribute value of the route.
14. The network device of claim 10, wherein the tunnel types include at least one of border gateway protocol-label switched path BGP-LSP tunnel, static label switched path LSP tunnel, label distribution protocol-label switched path LDP-LSP tunnel, segment route-multiprotocol label switched-best effort SR-MPLS-BE tunnel, segment route-multiprotocol label interaction-traffic engineering SR-MPLS-TE tunnel, segment route-multiprotocol label switched-traffic engineering-POLICY SR-MPLS-TE-POLICY tunnel, resource reservation protocol-traffic engineering RSVP-TE tunnel, generic route encapsulation GRE tunnel, internet protocol security IPSEC tunnel, two-layer tunneling protocol L2TP tunnel, internet protocol IP tunnel, segment route-traffic engineering-POLICY SRv6-TE-POLICY grlip tunnel based on internet protocol version 6 forwarding plane, segment route-traffic engineering-POLICY GROUP SRv-TE-POLICY GROUP based on internet protocol version 6 forwarding plane, and segment route-best effort tunnel based on internet protocol version 6 forwarding plane SRv-best effort plane.
15. The network device of claim 10, wherein the tunnel quality comprises at least one of a bandwidth of a tunnel, a remaining bandwidth of a tunnel, a delay of a tunnel, delay jitter information of a tunnel.
16. A network device as claimed in any one of claims 10 to 15, wherein the routes comprise BGP routes or static routes.
17. The network device of any one of claims 10 to 16, wherein the network device comprises one of a switch, a router, a controller, a repeater, a firewall device, a virtual switch, a virtual router, a virtual controller, a virtual repeater, a virtual firewall device.
18. The network device according to any of claims 10 to 17, wherein the network device is applied in a segment routing bearer three-layer virtual private network, L3VPN over SRv6, network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network, service EVPN-VPLS over SRv6, network based on an internet protocol version 6 forwarding plane, a segment routing bearer ethernet virtual private network, service EVPN-VPWS over SRv6, network based on an internet protocol version 4 public network bearer tunnel, or network based on an internet protocol version 6 public network bearer tunnel.
19. A computer readable storage medium comprising computer instructions which, when run on a processor, cause a network device to perform the routing method of any of claims 1 to 9.
20. A network device comprising a processor and a memory for storing instructions, the processor for invoking the instructions in the memory to cause the network device to perform the routing method of any of claims 1-9.
21. A network system comprising a network device according to any one of claims 10 to 18 and a second network device.
22. A computer program product comprising computer instructions which, when run on a processor, cause a network device to perform the routing method of any of claims 1 to 9.
CN202210764198.5A 2022-06-29 2022-06-29 Routing method, network device, system, computer program product and medium Pending CN117354234A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210764198.5A CN117354234A (en) 2022-06-29 2022-06-29 Routing method, network device, system, computer program product and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210764198.5A CN117354234A (en) 2022-06-29 2022-06-29 Routing method, network device, system, computer program product and medium

Publications (1)

Publication Number Publication Date
CN117354234A true CN117354234A (en) 2024-01-05

Family

ID=89369834

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210764198.5A Pending CN117354234A (en) 2022-06-29 2022-06-29 Routing method, network device, system, computer program product and medium

Country Status (1)

Country Link
CN (1) CN117354234A (en)

Similar Documents

Publication Publication Date Title
US11134006B2 (en) Loop conflict avoidance in a spine-and-leaf network topology
JP7456057B2 (en) Enhanced SD-WAN path quality measurement and selection
US10797911B2 (en) Virtual private network VPN service optimization method and device
US10097446B2 (en) Dynamic area filtering for link-state routing protocols
US9019865B2 (en) Advertising traffic engineering information with the border gateway protocol
CN107968750B (en) Message transmission method, device and node
CN109314663B (en) PCEP extensions to support distributed computing, multiple services, and inter-domain routing PCECC
US20080123524A1 (en) Failure protection for P2MP tunnel head-end node
US20130013809A1 (en) Managing host routes for local computer networks with a plurality of field area routers
EP3836492B1 (en) Pseudo wire load sharing method and device
US9166903B2 (en) System, method and apparatus to resolve RPF-vector attribute conflicts
US11362954B2 (en) Tunneling inter-domain stateless internet protocol multicast packets
CN110611616A (en) Traffic scheduling method, system, device and medium based on Radius server
US20210359930A1 (en) Forwarding Path Determining Method, Apparatus, and System
US8085799B2 (en) System, method and program for network routing
WO2020244304A1 (en) Method for sending routing information, method and apparatus for routing selection
Kalyan et al. Optimal selection of Dynamic Routing Protocol with real time case studies
CN106878173B (en) Route sending method and device
CN113366804A (en) Method and system for preventing micro-loops during network topology changes
WO2022068484A1 (en) Service chain address pool slicing method, device and system
CN117354234A (en) Routing method, network device, system, computer program product and medium
CN112929193A (en) Method and apparatus for configuring aging time of medium access control address
US20240056359A1 (en) Automated Scaling Of Network Topologies Using Unique Identifiers
CN105591940B (en) TRILL network distribution tree selection method and TRILL network node
WO2022042610A1 (en) Information processing method, network controller, node and computer-readable storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication