A message forwarding method and device

By selecting the highest priority forwarding path with good path quality in the SRv6 TE Policy, the service quality problem caused by the deterioration of the forwarding path quality is resolved, ensuring that service packets meet SLA requirements.

CN119172299BActive Publication Date: 2025-12-19NEW H3C TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310696970.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-13
Publication Date
2025-12-19
Estimated Expiration
2043-06-13

AI Technical Summary

Technical Problem

When the forwarding path quality of SRv6 TE Policy deteriorates, it cannot meet the SLA requirements of the business, thus affecting the quality of service.

Method used

After receiving a service packet, the head node obtains the SRv6 TE Policy group that matches the service attributes and destination address that match the flow characteristics, determines the SRv6 TE Policy with the highest priority, and uses the path to forward the packet if the path quality meets the conditions; otherwise, it selects a backup path with better path quality.

Benefits of technology

By prioritizing forwarding paths with good quality, service packets are ensured to meet SLA requirements, improving service quality and avoiding the impact of path quality degradation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172299B_ABST
    Figure CN119172299B_ABST
Patent Text Reader

Abstract

The embodiment of the application provides a message forwarding method and device, relates to the field of communication technology, and is applied to a head node. The method comprises the following steps: receiving a service message, wherein the service message comprises a destination address and a flow characteristic. Then, a service attribute matched with the flow characteristic, an SRv6TE Policy group matched with the destination address, and priorities of a plurality of SRv6TE Policies included in the SRv6TE Policy group and matched with the service attribute are acquired respectively. Then, a highest-priority SRv6TE Policy in the plurality of SRv6TE Policies is determined, and the highest-priority SRv6TE Policy comprises a first path. If the first path satisfies a path quality condition, the service message is forwarded by using the first path. By applying the embodiment of the application, the quality of service can be avoided from being affected due to the path quality degradation of a forwarding path.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of communication technology, in particular to a message forwarding method and device. BACKGROUND

[0002] SRv6 TE Policy (Internet Protocol Version 6 Segment Routing Traffic Engineering Policy, IPv6 segment routing traffic engineering policy) is a new tunnel flow technology developed on the basis of SRv6 (Internet Protocol Version 6 Segment Routing, Internet Protocol Version 6 segment routing) technology. By using the tunnel flow technology, the service message can be guided to a suitable SRv6 TE Policy, and then the service message is forwarded by using the forwarding path in the SRv6 TE Policy.

[0003] Taking a bank access network as an example, the bank access network includes a spoke, a boarder, a hub and a bank core network. The spoke is connected in communication with the boarder, the boarder is connected in communication with the hub, and the hub is connected in communication with the bank core network. By communicating with each other between the hub and the bank core network, mutual access with a data center can be realized. After receiving the service message, the hub can guide the service message to the SRv6 TE Policy, and forward the service message by using the forwarding path in the SRv6 TE Policy.

[0004] However, when the path quality of the forwarding path in the SRv6 TE Policy deteriorates, the requirement of the service on the SLA (Service Level Agreement, service level agreement) cannot be met, and thus the quality of service is affected. SUMMARY

[0005] The purpose of the embodiments of the present application is to provide a message forwarding method and device to avoid affecting the quality of service due to the deterioration of the path quality of the forwarding path. The specific technical solutions are as follows:

[0006] In a first aspect, the embodiments of the present application provide a message forwarding method applied to a head node, and the method comprises:

[0007] receiving a service message, wherein the service message comprises a destination address and a flow characteristic;

[0008] obtaining a service attribute matching the flow feature, a SRv6 TE Policy group matching the destination address, and priorities of a plurality of SRv6 TE Policies included in the SRv6 TE Policy group and matching the service attribute;

[0009] determining a highest-priority SRv6 TE Policy from the plurality of SRv6 TE Policies, the highest-priority SRv6 TE Policy including a first path;

[0010] if the first path meets a path quality condition, forwarding the service packet by using the first path.

[0011] In a possible implementation, each of the plurality of SRv6 TE Policies includes at least one path; after the determining of the highest-priority SRv6 TE Policy from the plurality of SRv6 TE Policies, the method further includes:

[0012] if the first path does not meet the path quality condition, determining a second path meeting the path quality condition from paths included in the plurality of SRv6 TE Policies;

[0013] forwarding the service packet by using the second path.

[0014] In a possible implementation, the method further includes:

[0015] every preset period, performing the following operations:

[0016] obtaining path quality parameters of paths included in each of the plurality of SRv6 TE Policies;

[0017] if the path quality parameters of the first path meet a preset threshold constraint, determining that the first path meets the path quality condition;

[0018] if the path quality parameters of the first path do not meet the preset threshold constraint, determining that the first path does not meet the path quality condition.

[0019] In a possible implementation, the method further includes:

[0020] every preset period, performing the following operations:

[0021] obtaining path quality parameters of paths included in each of the plurality of SRv6 TE Policies;

[0022] In a case where the first path does not satisfy the path quality condition, if a duration in which the path quality parameter of the first path satisfies the preset threshold constraint is greater than or equal to a first preset duration, it is determined that the first path satisfies the path quality condition.

[0023] In a case where the first path satisfies the path quality condition, if a duration in which the path quality parameter of the first path does not satisfy the preset threshold constraint is greater than or equal to a second preset duration, it is determined that the first path does not satisfy the path quality condition.

[0024] In a possible implementation, after the determination that the first path does not satisfy the path quality condition, the method further includes:

[0025] In order of priority from high to low, it is sequentially determined whether a path quality parameter of a path included in each of the plurality of SRv6 TE Policies satisfies the preset threshold constraint, and a first path satisfying the preset threshold constraint is taken as the second path.

[0026] In a possible implementation, the SRv6 TE Policy group includes intelligent routing information, and the intelligent routing information is used to store priorities of the plurality of SRv6 policies matched with the service attribute.

[0027] In a second aspect, an embodiment of the present application provides a packet forwarding device, applied to a head node, and the device includes:

[0028] A receiving module is configured to receive a service packet, and the service packet includes a destination address and a flow feature.

[0029] A obtaining module is configured to respectively obtain a service attribute matched with the flow feature, an SRv6 TE Policy group matched with the destination address, and priorities of a plurality of SRv6 TE Policies included in the SRv6 TE Policy group and matched with the service attribute.

[0030] A first determining module is configured to determine an SRv6 TE Policy with a highest priority in the plurality of SRv6 TE Policies, and the SRv6 TE Policy with the highest priority includes a first path.

[0031] A forwarding module is configured to forward the service packet by using the first path in a case where the first path satisfies a path quality condition.

[0032] In a possible implementation, each of the plurality of SRv6 TE Policies includes at least one path.

[0033] The first determining module is further configured to determine a second path that meets the path quality condition from paths included in the plurality of SRv6 TE Policies if the first path does not meet the path quality condition.

[0034] The forwarding module is further configured to forward the service packet by using the second path.

[0035] In a possible implementation, the apparatus further includes:

[0036] The second determining module is configured to perform the following operations every preset period:

[0037] obtain path quality parameters of paths included in each of the plurality of SRv6 TE Policies;

[0038] determine that the first path meets the path quality condition if the path quality parameters of the first path meet preset threshold constraints;

[0039] determine that the first path does not meet the path quality condition if the path quality parameters of the first path do not meet the preset threshold constraints.

[0040] In a possible implementation, the apparatus further includes:

[0041] The second determining module is configured to perform the following operations every preset period:

[0042] obtain path quality parameters of paths included in each of the plurality of SRv6 TE Policies;

[0043] determine that the first path meets the path quality condition if, in a case where the first path does not meet the path quality condition, the path quality parameters of the first path meet the preset threshold constraints for a duration greater than or equal to a first preset duration;

[0044] determine that the first path does not meet the path quality condition if, in a case where the first path meets the path quality condition, the path quality parameters of the first path do not meet the preset threshold constraints for a duration greater than or equal to a second preset duration.

[0045] In a possible implementation, the second determining module is further configured to, after determining that the first path does not meet the path quality condition, sequentially determine, in a descending order of priority, whether the path quality parameters of paths included in each of the plurality of SRv6 TE Policies meet the preset threshold constraints, and take a first path that meets the preset threshold constraints as the second path.

[0046] In a possible implementation, the SRv6 TE Policy group includes intelligent routing information used to store priorities of the multiple SRv6 policies matched with the service attribute.

[0047] In a third aspect, an electronic device is provided, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory complete mutual communication through the communication bus.

[0048] The memory is configured to store a computer program.

[0049] The processor is configured to execute the program stored in the memory, and implement the method in the first aspect.

[0050] In a fourth aspect, a computer readable storage medium is provided, and the computer readable storage medium stores a computer program. The computer program is executed by a processor to implement the method in the first aspect.

[0051] In a fifth aspect, a computer program product is provided, and the computer program product includes executable instructions. When the executable instructions are executed on a computer, the computer is caused to implement the method in the first aspect.

[0052] With the above technical solution, after the head node receives a service packet, the service attribute matched with the flow feature, the SRv6 TE Policy group matched with the destination address, and the priorities of the multiple SRv6 TE Policies included in the SRv6 TE Policy group and matched with the service attribute can be obtained. Since the flow feature of the service packet is information used to identify a service flow, that is, for the received service packet, the service attribute corresponding to the service flow identified by the flow feature can be obtained, and then the priorities of the multiple SRv6 TE Policies matched with the service attribute are obtained from the SRv6 TE Policy group, and the first path included in the SRv6 TE Policy with the highest priority is obtained, and the service packet is forwarded by using the first path, which can meet the requirement of the service on the SLA. In addition, the service packet is forwarded by using the first path only when the first path meets the path quality condition, that is, the path quality of the first path is good, which can avoid forwarding the service packet by using the path with poor path quality, and improve the service quality.

[0053] Of course, implementing any product or method of the present application does not necessarily require all the advantages described above to be achieved at the same time. BRIEF DESCRIPTION OF DRAWINGS

[0054] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the accompanying drawings needed to be used in the description of the embodiments or the prior art will be briefly introduced. Obviously, the accompanying drawings in the following description only only some embodiments of the present application, and for those skilled in the art, other embodiments can also be obtained from these drawings.

[0055] Figure 1 The structure schematic diagram of the bank access network provided by the embodiments of the present application is shown in the figure.

[0056] Figure 2 The exemplary schematic diagram of the tunnel diversion policy provided by the embodiments of the present application is shown in the figure.

[0057] Figure 3 The exemplary schematic diagram of the SRv6 TE Policy diversion process provided by the embodiments of the present application is shown in the figure.

[0058] Figure 4 The flow schematic diagram of the packet forwarding method provided by the embodiments of the present application is shown in the figure.

[0059] Figure 5 The structure schematic diagram of another bank access network provided by the embodiments of the present application is shown in the figure.

[0060] Figure 6 The exemplary schematic diagram of the path selection method in the packet forwarding method provided by the embodiments of the present application is shown in the figure.

[0061] Figure 7 The exemplary flow chart of the packet forwarding method provided by the embodiments of the present application is shown in the figure.

[0062] Figure 8 The structure schematic diagram of the packet forwarding device provided by the embodiments of the present application is shown in the figure.

[0063] Figure 9 The structure schematic diagram of the electronic device provided by the embodiments of the present application is shown in the figure. DETAILED DESCRIPTION

[0064] The technical solutions in the embodiments of the present application will be described clearly and completely below with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art based on the present application belong to the scope of protection of the present application.

[0065] Firstly, the application scenarios provided by the embodiments of the present application are introduced.

[0066] As shown in the figure, Figure 1 Figure 1 ​A structure schematic diagram of a bank access network provided by an embodiment of the present application is shown in FIG. 1. The bank access network includes spokes, boarders, hubs and a bank core network. The spokes include nodes for production office and nodes for Internet of Things.

[0067] The spokes are connected to the boarders, and the boarders are connected to the hubs. The spokes and the hubs can forward service messages to each other. The hubs are connected to the bank core network. The hubs and the bank core network can access each other to achieve mutual access to the data center. In addition, the spokes and the hubs can send service messages to the network management platform through the Telemetry protocol.

[0068] Each node in the bank access network is deployed with an SRv6 TE Policy. The SRv6 TE Policy can be deployed in various network environments. As an example, the SRv6 TE Policy in FIG. 2 is deployed in an EVPN (Ethernet Virtual Private Network) L3VPN (layer 3 Virtual Private Network) over SRv6 Policy. The SRv6 TE Policy includes multiple forwarding paths. Figure 1 Figure 1 As an example, three forwarding paths are given: a forwarding path 1, a forwarding path 2 and a forwarding path 3. In addition, the path quality of the forwarding paths in the SRv6 TE Policy can be detected based on IFIT (In-situ Flow Information Telemetry).

[0069] The related technical terms related to the embodiments of the present application are explained below.

[0070] The SRv6 TE Policy is a new tunnel diversion technology developed on the basis of SRv6 technology. An SRv6 TE Policy can be identified by a HeadEnd, a Color value and an Endpoint.

[0071] The HeadEnd is used to divert service messages to the SRv6 TE Policy. The Color value represents the requirement of the service for SLA. The Endpoint address is the IPv6 address of the destination node in the SRv6 TE Policy. Currently, the service messages can be diverted to the appropriate SRv6 TE Policy based on the Color value, tunnel policy and other diversion methods.

[0072] ​Taking the Color value as an example, after the head node receives a service packet, it looks up the routing table to obtain the next hop address and Color value in the routing table item matched with the service packet, and then looks up the SRv6 TE Policy with the same Endpoint address and Color value as the next hop address and Color value in the routing table item, and then forwards the service packet through the SRv6 TE Policy.

[0073] The SRv6 TE Policy group is a set of SRv6 TE Policies with the same Endpoint address. The SRv6 TE Policy group can be identified by a Color value and an Endpoint address, wherein the Color values of different SRv6-TE Policies in the SRv6 TE Policy group can be different.

[0074] Before forwarding the service packet by using the SRv6 TE Policy, the SRv6 TE Policy needs to be configured. The process of configuring the SRv6-TE Policy is described below.

[0075] As shown in Figure 2 , the main process of configuring the SRv6 TE Policy is as follows: first, configure the BGP (Border Gateway Protocol) routing Color value, and then configure the tunnel steering policy, Figure 2 Only four tunnel steering policies are shown by way of example: steering to the SRv6 TE Policy by Color, steering to the SRv6 TE Policy by DSCP (Differentiated Services Code Point), steering to the SRv6 TE Policy by Service Class, and steering to the SRv6 TE Policy by TE-Class (Traffic Engineering Class). The implementation of the tunnel steering policy is not limited to this in actual implementation. Finally, different tunnel steering policies are configured for specific services, for example, the tunnel steering policy of steering by DSCP is configured for the first service, and the tunnel steering policy of steering by TE-Class is configured for the second service.

[0076] Referring to Figure 3 , the SRv6-TE Policy steering process is described below by way of example of steering to the SRv6 TE Policy by DSCP. Other tunnel steering policies can refer to relevant protocol provisions, which are not described one by one here.

[0077] Figure 3 The node A is a head node, the nodes G and H are tail nodes on two forwarding paths, the node B is a CE (Custom Edge) device, and there are multiple transmission paths between the node A and the node B. The node B can advertise BGP routing information to the node A, and the BGP routing information includes, as an example, a prefix: 2001:db8:: / 96, a Color: 123, and a Nexthop: 2001:db8::1, wherein the Nexthop is a next-hop address of the BGP routing, that is, an IP address of the node B.

[0078] The SRv6 TE Policy group between the node A and the node B can be configured in the node A by a controller. As an example, the EndPoint address of the SRv6 TE Policy group is 2001:db8::1, and the SRv6 TE Policy group includes two SRv6 TE Policies.

[0079] The Color value of the SRv6 TE Policy1 is 123, the EndPoint address is the IP address 2001:db8::1 of the node B, and the segment list 1 is: C, E, G, and B, that is, the forwarding path in the SRv6 TE Policy1 is: node A-node C-node E-node G-node B.

[0080] The Color value of the SRv6 TE Policy2 is 124, the EndPoint address is the IP address 2001:db8::1 of the node B, and the segment list 2 is: D, F, H, and B, that is, the forwarding path in the SRv6 TE Policy2 is: node A-node D-node F-node H-node B.

[0081] In addition, the SRv6 TE Policy group further includes a mapping relationship between the Color value and the DSCP, and as an example, the Color 123 is mapped to the DSCP 10, and the Color 124 is mapped to the DSCP 20.

[0082] The EndPoint address of the SRv6 TE Policy group is bound to the next-hop address of the BGP routing information, and it is assumed that a tunnel steering policy by DSCP is configured in the node A.

[0083] When node A receives the service packet, the routing table is searched and the next hop address is determined as 2001:db8::1, and then associated to the SRv6 TE Policy group with the same EndPoint address as 2001:db8::1, and then the DSCP 10 in the service packet is obtained, the Color 123 corresponding to the DSCP 10 is determined based on the mapping relationship between the Color and the DSCP in the SRv6 TE Policy group, the SRv6 TE Policy 1 same as the Color 123 is selected in the SRv6 TE Policy group, and then the service packet is forwarded by using the forwarding path in the SRv6 TE Policy 1.

[0084] By using any one of the tunnel diversion strategies introduced in the above embodiments, after the service packet is diverted into the SRv6 TE Policy, the service packet is forwarded by using the forwarding path in the SRv6 TE Policy. When the path quality of the forwarding path in the SRv6 TE Policy deteriorates, the requirement of the service on the SLA cannot be met, and then the quality of service is affected.

[0085] To solve the above problems, the embodiments of the present application provide a packet forwarding method, applied to a head node, for example, the head node can be node A in Figure 3 , as shown in Figure 4 , can include the following steps:

[0086] S401, receiving a service packet, the service packet including a destination address and a flow characteristic.

[0087] The flow characteristic of the service packet can include a five-tuple, a DSCP, and a VPN identifier, and the like, which are information for identifying a service flow, and the embodiments of the present application do not limit this.

[0088] S402, respectively obtaining a service attribute matched with the flow characteristic, an SRv6 TE Policy group matched with the destination address, and priorities of a plurality of SRv6 TE Policies included in the SRv6 TE Policy group and matched with the service attribute.

[0089] The correspondence between the flow characteristic and the service attribute is pre-stored in the head node, and the service attribute can be represented by TE-Class.

[0090] For example, the service attribute of the office service is TE-Class 100, and the service attribute of the production service is TE-Class 200. The office service belongs to VPN 1, and the production service belongs to VPN 2, and the correspondence between the flow characteristic and the service attribute is shown in Table 1.

[0091] Table 1

[0092] Flow characteristics Service attributes VPN 1 TE-Class 100 VPN 2 TE-Class 200

[0093] Based on Table 1, if the flow feature obtained from the service packet is VPN1, it is determined that the service attribute matching the flow feature is TE-Class100.

[0094] In addition, the head node can determine the SRv6 TE Policy group matching the destination address of the service packet based on Color diversion, tunnel diversion, etc.

[0095] For example, if the tunnel diversion method is used, the next hop address for forwarding the service packet can be obtained based on the destination address of the service packet by searching the routing table, and then the SRv6 TE Policy group with the same EndPoint address as the next hop address is obtained, and the SRv6 TE Policy group obtained is the SRv6 TE Policy group matching the destination address.

[0096] If the Color diversion method is used, the matching next hop address and Color value can be obtained from the routing table based on the destination address of the service packet, and then the SRv6 TE Policy group with the same EndPoint address as the next hop address is obtained, and if the Color value of the SRv6 TE Policy group is the same as the Color value obtained from the routing table, the SRv6 TE Policy group is the SRv6 TE Policy group matching the destination address.

[0097] The head node can also select other diversion methods to divert the service packet to the SRv6 TE Policy group matching the destination address according to the configuration, and the specific diversion method can refer to the related protocol, and the embodiments of the present application are not limited thereto.

[0098] The SRv6 TE Policy group includes a plurality of SRv6 TE Policies with the same Endpoint address, and a corresponding relationship between each service attribute and the priority of the plurality of SRv6 TE Policies. After the head node obtains the service attribute matching the flow feature, the priority of the plurality of SRv6 TE Policies matching the service attribute can be obtained based on the corresponding relationship.

[0099] Optionally, the SRv6 TE Policy group can include intelligent routing information, and the intelligent routing information is used to store the priority of the plurality of SRv6 TE Policy strategies matching the service attribute.

[0100] It can be understood that each service attribute can match one intelligent routing information, and the priorities of the same SRv6 TE Policy included in different intelligent routing information can be different.

[0101] As an example, it is assumed that 3 SRv6 TE Policies, SRv6 TE Policy1, SRv6 TE Policy2 and SRv6 TE Policy3, are included in the SRv6 TE Policy group.

[0102] The intelligent routing information 1 includes: the priority of the SRv6 TE Policy1 is the first priority, the priority of the SRv6 TE Policy2 is the third priority, and the priority of the SRv6 TE Policy3 is the second priority.

[0103] The intelligent routing information 2 includes: the priority of the SRv6 TE Policy1 is the third priority, the priority of the SRv6 TE Policy2 is the second priority, and the priority of the SRv6 TE Policy3 is the first priority.

[0104] The preset correspondence between the service attribute and the intelligent routing information is pre-stored in the head node.

[0105] For example, the service attribute is represented by TE-Class, the service attribute of the office service is TE-Class100, and the service attribute of the production service is TE-Class200, and the correspondence between the service attribute and the intelligent routing information is shown in Table 2.

[0106] Table 2

[0107] Service attributes Intelligent routing information TE-Class 100 Intelligent routing information 1 TE-Class 200 Intelligent routing information 2

[0108] Based on Table 2, if the service attribute matched with the flow feature of the service packet is TE-Class100, the intelligent routing information 1 matched with TE-Class100 can be found, and then the priorities of the multiple SRv6 TE Policies matched with TE-Class100 are obtained from the intelligent routing information 1.

[0109] S403, determine the SRv6 TE Policy with the highest priority in the multiple SRv6 TE Policies, and the SRv6 TE Policy with the highest priority includes the first path.

[0110] For example, the priorities of the multiple SRv6 TE Policies matched by the service attribute are as follows: the priority of the SRv6 TE Policy 1 is the first priority, the priority of the SRv6 TE Policy 2 is the third priority, and the priority of the SRv6 TE Policy 3 is the second priority. If the first priority is the lowest and the third priority is the highest, the main path in the SRv6 TE Policy 2 can be obtained, and the main path is the first path.

[0111] It should be noted that one SRv6 TE Policy includes at least one main path and optionally includes a backup path. It can be understood that the path currently used in one SRv6 TE Policy is the main path, and the master node can switch between the main path and the backup path in the existing manner.

[0112] In the embodiments of the present application, the path selected for the service packet is the main path in the SRv6 TE Policy when the service packet is received.

[0113] In S404, if the first path meets the path quality condition, the service packet is forwarded by using the first path.

[0114] In the embodiments of the present application, the path selected for the service packet is the main path in the SRv6 TE Policy when the service packet is received.

[0115] It can be understood that because the priorities of different SRv6 TE Policies can be the same, there can be multiple SRv6 TE Policies with the highest priority, that is, multiple first paths can be determined. Under the condition that multiple first paths are determined and the multiple first paths all meet the path quality condition, the service packets of the same service flow can be forwarded by using the multiple first paths in a load balancing manner.

[0116] By adopting the technical scheme, after the head node receives the service packet, the service attribute matched with the flow feature, the SRv6 TE Policy group matched with the destination address, and the priorities of the multiple SRv6 TE Policies included in the SRv6 TE Policy group and matched with the service attribute can be obtained, because the flow feature of the service packet is information used for identifying a service flow, that is, for the received service packet, the service attribute corresponding to the service flow identified by the flow feature of the service packet can be obtained, and then the priorities of the multiple SRv6 TE Policies matched with the service attribute are obtained from the SRv6 TE Policy group, and the first path included in the SRv6 TE Policy with the highest priority is obtained, and the service packet is forwarded by using the first path, so that the requirement of the service on the SLA can be met. In addition, when the first path meets the path quality condition, that is, the path quality of the first path is good, the service packet is forwarded by using the first path, so that the service packet can be prevented from being forwarded by using the path with poor path quality, and the service quality is improved.

[0117] In order to better understand the scheme provided in the embodiments of the present application, a bank-related service scenario is taken as an example for illustration, as shown in Figure 5

[0118] Figure 5 The hub and the spoke in the figure include: a first branch (Hub1), a second branch (Hub2), a first network point (Spoke1), a second network point (Spoke2), PE1, PE2, PE3, PE4, CE1 and CE2. Figure 5 The hub and the spoke in the figure include: a first branch (Hub1), a second branch (Hub2), a first network point (Spoke1), a second network point (Spoke2), PE1, PE2, PE3, PE4, CE1 and CE2. Figure 5 The controller is not shown in the figure.

[0119] Each hub and spoke supports SRv6, and also has the capability of IS-IS (Intermediate system to intermediate system) SRv6, so that the respective Locators (positioning) routes can be published between the hub and the spoke. The BGP EVPN neighbor is configured in each hub and spoke, so that the local SRv6 SID (Segment Identifier) can be carried in the VPN private network route announced between the hub and the spoke. The SRv6 TE Policy is also configured in each hub and spoke. The Spoke1 and the Spoke2 can access the Hub1 and the Hub2 through a wide area line.

[0120] ​CE1 sends the service packet to Hub1, and then Hub1 as the head node can send the service packet to CE2 through SRv6 TE Policy.

[0121] The following is an example of Hub1.

[0122] The tunnel diversion strategy is pre-configured in Hub1, and the service packet can be diverted to the SRv6 TE Policy group after receiving the service packet.

[0123] There are three SRv6 TE Policies in Hub1: SRv6 TE Policy1, SRv6 TE Policy2 and SRv6 TE Policy3. SRv6 TE Policy1, SRv6 TE Policy2 and SRv6 TE Policy3 each have two forwarding paths, one is the main path and the other is the backup path, and the Endpoint address of SRv6 TE Policy1, SRv6 TE Policy2 and SRv6 TE Policy3 is CE_SID, which belongs to the same SRv6 TE Policy group, and CE_SID is the IPv6 address of CE2.

[0124] The Color value of SRv6 TE Policy1 is 100, the main path of SRv6 TE Policy1 is Hub1-Spoke1-CE2, and the backup path of SRv6 TE Policy1 is Hub1-Hub2-Spoke1-CE2.

[0125] The Color value of SRv6 TE Policy2 is 200, the main path of SRv6 TE Policy2 is Hub1-Hub2-Spoke2-Spoke1-CE2, and the backup path of SRv6 TE Policy2 is Hub1-Spoke2-Spoke1-CE2.

[0126] The Color value of SRv6 TE Policy3 is 300, the main path of SRv6 TE Policy3 is Hub1-Spoke2-CE2, and the backup path of SRv6 TE Policy2 is Hub1-Spoke1-Spoke2-CE2.

[0127] Hub1 pre-configures the service attributes of production service and office service, and the service attributes can be represented by TE-Class. As an example, the service attribute of production service is represented by production TE-Class, and the service attribute of office service is represented by office TE-Class.

[0128] The intelligent routing information in Hub1 is preconfigured, and the intelligent routing information 1 includes: the priority of SRv6 TE Policy1 is the first priority, the priority of SRv6 TE Policy2 is the second priority, and the priority of SRv6 TE Policy3 is the third priority. The intelligent routing information 2 includes: the priority of SRv6 TE Policy1 is the second priority, the priority of SRv6 TE Policy2 is the third priority, and the priority of SRv6 TE Policy3 is the first priority, wherein the third priority is the highest, and the first priority is the lowest.

[0129] The SRv6 TE Policy group in Hub1 includes a preset correspondence relationship, for example, the preset correspondence relationship is: production TE-Class corresponds to the intelligent routing information 1, and office TE-Class corresponds to the intelligent routing information 2.

[0130] When Hub1 receives the service packet sent by CE1, the service attribute matching the flow characteristics of the service packet is obtained: production TE-Class, and the intelligent routing information 2 corresponding to production TE-Class is determined based on the preset correspondence relationship. Then, the SRv6 TE Policy with the highest priority in the intelligent routing information 2 is determined as SRv6 TE Policy2 based on the priorities of the SRv6 TE Policies included in the intelligent routing information 2, and then the main path in SRv6 TE Policy2 is determined: Hub1-Hub2-Spoke2-Spoke1-CE2, and the service packet is forwarded based on the main path in the case that the main path meets the path quality condition.

[0131] In an embodiment of the present application, each of the plurality of SRv6 TE Policies includes at least one path, after the SRv6 TE Policy with the highest priority in the plurality of SRv6 TE Policies is determined, if the first path in the SRv6 TE Policy with the highest priority does not meet the path quality condition, a second path meeting the path quality condition in the paths included in the plurality of SRv6 TE Policies is determined, and the service packet is forwarded by using the second path.

[0132] For example, the SRv6 TE Policy group includes three SRv6 TE Policies: SRv6 TE Policy 1, SRv6 TE Policy 2, and SRv6 TE Policy 3. The priorities of the multiple SRv6 TE Policies matching the service attribute of the service packet are as follows: the priority of the SRv6 TE Policy 1 is the first priority, the priority of the SRv6 TE Policy 2 is the third priority, and the priority of the SRv6 TE Policy 3 is the second priority, where the third priority is the highest, and the first priority is the lowest. In order of the priorities from high to low, the primary path in the SRv6 TE Policy 3 is preferentially selected, and if the primary path in the SRv6 TE Policy 3 meets the path quality condition, the primary path is taken as the second path.

[0133] It can be understood that because the priorities of different SRv6 TE Policies can be the same, there can be multiple SRv6 TE Policies with the same priority, that is, multiple second paths can be determined. If the multiple second paths all meet the path quality condition, the multiple second paths are used to forward the service packets of the same service flow in a load balancing manner.

[0134] It can be understood that because the priorities of different SRv6 TE Policies can be the same, there can be multiple SRv6 TE Policies with the same priority, that is, multiple second paths can be determined. If the multiple second paths all meet the path quality condition, the multiple second paths are used to forward the service packets of the same service flow in a load balancing manner.

[0135] On the basis of the above embodiments, the following will be combined Figure 6 to introduce the method of selecting a path by the head node after obtaining the SRv6 TE Policy group matching the destination address.

[0136] As shown in Figure 6 , after the head node receives a service packet and determines an SRv6 TE Policy group matching the destination address of the service packet, the head node can determine intelligent routing information matching the service attribute matching the flow characteristics of the service packet. In Figure 6In the embodiment, if the service attribute matched with the flow feature is production TE-Class, the intelligent routing information matched with the service attribute is intelligent routing information 1; if the service attribute matched with the flow feature is office TE-Class, the intelligent routing information matched with the service attribute is intelligent routing information 2. The intelligent routing information 1 includes a high-priority SRv6 TE Policy 1 and a low-priority SRv6 TE Policy 2, and the intelligent routing information 2 includes a high-priority SRv6 TE Policy 2 and a low-priority SRv6 TE Policy 1. As an example, each SRv6 TE Policy includes an Active path and a Standby path.

[0137] The following takes the intelligent routing information matched with the service attribute as the intelligent routing information 1 as an example.

[0138] When the Active path in the high-priority SRv6 TE Policy 1 meets the path quality condition, the head node takes the Active path in the SRv6 TE Policy 1 as the first path and forwards the service packet by using the Active path in the SRv6 TE Policy 1. When the Active path in the high-priority SRv6 TE Policy 1 does not meet the path quality condition and the Active path in the low-priority SRv6 TE Policy 2 meets the path quality condition, the head node takes the Active path in the SRv6 TE Policy 2 as the second path and forwards the service packet by using the Active path in the SRv6 TE Policy 2. In addition, the path quality of the Active path in each SRv6 TE Policy indicated by the intelligent routing information can change, and the head node can detect the path quality based on the IFIT technology to obtain the path quality parameter of the Active path in each SRv6 TE Policy, so as to determine the Active path meeting the path quality condition.

[0139] In an embodiment, the head node can perform the following operations every preset period:

[0140] obtain the path quality parameter of the path included in each SRv6 TE Policy in the plurality of SRv6 TE Policies. If the path quality parameter of the first path meets the preset threshold constraint, it is determined that the first path meets the path quality condition; if the path quality parameter of the first path does not meet the preset threshold constraint, it is determined that the first path does not meet the path quality condition.

[0141] The head node can obtain the path quality parameter of the main path of each SRv6 TE Policy based on the IFIT technology. The preset period can be set according to actual needs, and the application does not make specific limitations on this.

[0142] The path quality parameter can include at least one of bandwidth occupation rate, jitter, transmission delay and packet loss rate, wherein the lower the bandwidth occupation rate, jitter, transmission delay and packet loss rate, the better the path quality of the main path of the SRv6 TE Policy.

[0143] The path quality parameter of the first path meeting the preset threshold constraint means that each type of path quality parameter of the first path meets the threshold constraint of the corresponding path quality parameter. For example, assuming that the path quality parameter includes bandwidth occupation rate, jitter, transmission delay and packet loss rate, if the bandwidth occupation rate of the first path is less than the bandwidth occupation rate threshold, the jitter is less than the jitter threshold, the transmission delay is less than the transmission delay threshold, and the packet loss rate is less than the packet loss rate threshold, it means that the path quality of the first path is not degraded, and it can be determined that the first path meets the path quality condition, and then the first path is used to forward the service message.

[0144] On the contrary, if any one of the path quality parameters of the first path is higher than the threshold corresponding to the parameter, it is determined that the first path does not meet the preset threshold constraint. For example, if the transmission delay in the path quality parameter of the first path is higher than the transmission delay threshold, it is determined that the path quality parameter of the first path does not meet the preset threshold constraint, and then the second path needs to be further selected.

[0145] After it is determined that the first path does not meet the path quality condition, the head node can sequentially determine whether the path quality parameter of the path included in each SRv6 TE Policy in the plurality of SRv6 TE Policies meets the preset threshold constraint in order of priority from high to low, and take the first path meeting the preset threshold constraint as the second path.

[0146] It should be noted that the head node can determine the main path meeting the path quality condition in each SRv6 TE Policy indicated by each type of intelligent routing information every preset period. Then, after receiving the service message, the head node can directly select the main path meeting the path quality condition corresponding to the intelligent routing information to forward the service message after determining the intelligent routing information corresponding to the service message.

[0147] With the technical solution, the path quality parameter of the path included in each SRv6 TE Policy in the plurality of SRv6 TE Policies is acquired every preset period, the head node can learn the change of the path quality of the main path included in each SRv6 TE Policy in time, and then can make a response based on the change of the path quality of the first path, that is, if the path quality parameter of the first path meets the preset threshold constraint, it means that the path quality of the first path is good and the first path continues to be used as the main path meeting the path quality condition. If the path quality parameter of the first path does not meet the preset threshold constraint, it means that the path quality of the first path deteriorates, and then a main path meeting the path quality condition can be reselected from the SRv6 TE Policies of other priorities. In this way, when forwarding the service message, the head node can select the main path meeting the path quality condition in time, can avoid using the path with deteriorated path quality, and can improve the service quality.

[0148] In addition, with the method, the link bandwidth and other resources of each path can be used evenly, congestion can be avoided due to too high link bandwidth of an individual path, and the service quality can be improved.

[0149] In another embodiment, the head node can perform the following operations every preset period:

[0150] acquire the path quality parameter of the path included in each SRv6 TE Policy in the plurality of SRv6 TE Policies.

[0151] In the case where the first path does not meet the path quality condition, if the duration for which the path quality parameter of the first path meets the preset threshold constraint is greater than or equal to a first preset duration, it is determined that the first path meets the path quality condition.

[0152] In the case where the first path meets the path quality condition, if the duration for which the path quality parameter of the first path does not meet the preset threshold constraint is greater than or equal to a second preset duration, it is determined that the first path does not meet the path quality condition.

[0153] The second preset duration can be set based on actual services, and the second preset duration corresponding to different services can be different. For example, the first preset duration can be set to a relatively short value, such as 50 ms, for a voice service with high real-time requirement.

[0154] In cases where it has been determined that the first path does not meet the path quality conditions, the path quality of subsequent first paths may recover. Therefore, if, after determining that the first path does not meet the path quality conditions, it is then detected that the path quality parameters of the first path meet the preset threshold constraints, and the duration of meeting the preset threshold constraints is greater than or equal to the first preset duration, it indicates that the path quality of the first path has indeed recovered and is not a temporary improvement. In this case, the path quality conditions can be redefined as meeting the first path quality conditions.

[0155] If the path quality parameters of the first path do not meet the preset threshold constraint, and the duration of the failure of the path quality parameters of the first path to meet the preset threshold constraint does not reach the second preset duration, it means that the first path has only experienced a short-term decline in path quality, and the first path can still be regarded as the main path that meets the path quality condition.

[0156] This avoids frequent switching, prevents switching oscillations, and prevents the quality of business services from being affected by path switching.

[0157] After determining that the first path does not meet the path quality conditions, the head node can sequentially check whether the path quality parameters of the paths included in each of the multiple SRv6 TE Policies meet the preset threshold constraints, according to the priority from high to low. The first path that meets the preset threshold constraints is then designated as the second path. This avoids continuing to use the first path that has already deteriorated in quality, thereby improving the quality of business services.

[0158] In this embodiment, when the head node detects that the path quality of the first path does not meet the preset threshold constraint, a switching cycle timer can be started. The timing duration of the switching cycle timer can be a second preset duration. After the switching cycle timer is started, it continuously determines whether the path quality parameters of the first path do not meet the preset threshold constraint. If, during the time from the start of the switching cycle timer to its timeout, the path quality parameters of the first path detected by the head node do not meet the preset threshold constraint, it is determined that the first path does not meet the path quality condition, and then a second path that meets the path quality condition is selected.

[0159] If the path quality parameters of the first path meet the preset threshold constraint before the switching cycle timer expires, the first path is determined to still meet the path quality condition, the switching cycle timer is reset to zero, and the timing stops. The timing will restart the next time the path quality parameters of the first path are detected to no longer meet the preset threshold constraint.

[0160] Because the first path is the primary path included in the highest-priority SRv6 TE Policy that matches the service attributes of the service packet, while the second path is not the primary path in the highest-priority SRv6 TE Policy, meaning the second path is not the path that best meets the SLA requirements. Therefore, once the path quality of the first path is restored, the first path should continue to be used to forward service packets. To this end, under the condition that the path quality of the first path is not met, the embodiments of this application can switch back to the first path in the following two ways.

[0161] Method 1: If the path quality parameters of the first path are detected to meet the preset threshold constraints, then the first path is determined to meet the path quality conditions.

[0162] If the path quality parameters of the first path are found to meet the preset threshold constraints, it means that the path quality of the first path has been restored. The first path can then be used again as the primary path that meets the path quality conditions, so that the primary path in the highest priority SRv6 TE Policy can still be used to forward service packets, thereby improving the quality of service.

[0163] Method 2: If the path quality parameters of the first path meet the preset threshold constraint for a first preset duration, then the first path is determined to meet the path quality condition.

[0164] The method for setting the first preset duration is the same as the method for setting the second preset duration, and the first preset duration can be the same as the second preset duration or different from the second preset duration.

[0165] Specifically, if the path quality parameters of the first path consistently meet the preset threshold constraints for a first preset duration, it indicates that the path quality of the first path has not only improved temporarily, but has returned to normal. Therefore, it can be determined that the first path meets the path quality conditions. This avoids frequent switching, prevents switching oscillations, and prevents path switching from affecting service quality.

[0166] In this embodiment, when the first path does not meet the path quality condition, if the head node detects that the path quality of the first path meets the preset threshold constraint, a backflip waiting timer is started. The duration of the backflip waiting timer can be a first preset duration. After the backflip waiting timer is started, it continuously determines whether the path quality parameters of the first path meet the preset threshold constraint. If, during the time from the start of the backflip waiting timer to its timeout, all path quality parameters of the first path detected by the head node meet the preset threshold constraint, it indicates that the path quality of the first path has been restored, and the first path can be used as the main path that meets the path quality condition.

[0167] In one embodiment of this application, such asFigure 7 As shown, Figure 7 The following is an exemplary schematic diagram illustrating the message forwarding process provided in an embodiment of this application. The message forwarding process is as follows:

[0168] After receiving a service message, the head node enters the flow classification process, which matches the service attributes with the flow characteristics of the service message. The service attributes can be represented by TE-Class.

[0169] Then, the flow steering process begins, which determines the SRv6 TE Policy group that matches the destination address of the service packet based on tunneling flow steering strategies, such as color flow steering.

[0170] Then the head node enters the Intelligent Routing process, which determines the intelligent routing information that matches the business attributes and selects the main path that meets the path quality conditions based on the intelligent routing information.

[0171] The head node can periodically perform network quality measurement to obtain the path quality parameters of the main path in each SRv6 TE Policy.

[0172] Finally, the head node performs message forwarding (Flow Forwarding), forwarding service messages using the main path that meets the path quality conditions.

[0173] Based on the same inventive concept, embodiments of this application also provide a message forwarding device, which should be located at the header node, such as... Figure 8 As shown, the device includes:

[0174] The receiving module 801 is used to receive service messages, which include the destination address and flow characteristics.

[0175] The acquisition module 802 is used to acquire the service attributes that match the flow characteristics, the SRv6TE Policy group that matches the destination address, and the priority of multiple SRv6 TE Policy groups that match the service attributes.

[0176] The first determining module 803 is used to determine the highest priority SRv6 TEPolicy among multiple SRv6 TE Policies, and the highest priority SRv6 TE Policy includes the first path;

[0177] The forwarding module 804 is used to forward service packets using the first path if the first path meets the path quality conditions.

[0178] Optionally, each of the multiple SRv6 TE Policies includes at least one path;

[0179] The first determining module 803 is further configured to determine a second path that meets the path quality conditions among the paths included in the multiple SRv6 TEPolicies if the first path does not meet the path quality conditions.

[0180] Forwarding module 804 is also used to forward service packets using the second path.

[0181] Optionally, the device further includes:

[0182] The second determining module is used to perform the following operations at preset intervals:

[0183] Obtain the path quality parameters of the paths included in each SRv6 TE Policy among multiple SRv6 TE Policies;

[0184] If the path quality parameters of the first path meet the preset threshold constraint, then the first path is determined to meet the path quality condition.

[0185] If the path quality parameters of the first path do not meet the preset threshold constraints, then the first path is determined not to meet the path quality conditions.

[0186] Optionally, the device further includes:

[0187] The second determining module is used to perform the following operations at preset intervals:

[0188] Obtain the path quality parameters of the paths included in each SRv6 TE Policy among multiple SRv6 TE Policies;

[0189] If the first path does not meet the path quality conditions, and the duration of the first path's path quality parameters meeting the preset threshold constraint is greater than or equal to the first preset duration, then the first path is determined to meet the path quality conditions.

[0190] If the first path meets the path quality conditions, and the duration of the first path's path quality parameters not meeting the preset threshold constraint is greater than or equal to the second preset duration, then the first path is determined not to meet the path quality conditions.

[0191] Optionally, the second determining module is further configured to, after determining that the first path does not meet the path quality conditions, sequentially determine whether the path quality parameters of the paths included in each of the multiple SRv6 TE Policies meet the preset threshold constraints in order of priority from high to low, and take the first path that meets the preset threshold constraints as the second path.

[0192] Optionally, the SRv6 TE Policy group includes intelligent routing information, which is used to store the priority of multiple SRv6 policies that match the service attributes.

[0193] This application also provides an electronic device, such as... Figure 9 As shown, it includes a processor 901, a communication interface 902, a memory 903, and a communication bus 904, wherein the processor 901, the communication interface 902, and the memory 903 communicate with each other through the communication bus 904.

[0194] Memory 903 is used to store computer programs;

[0195] When the processor 901 executes the program stored in the memory 903, it implements the steps of any of the message forwarding methods in the above method embodiments.

[0196] The communication bus mentioned in the above electronic devices can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. This communication bus can be divided into address bus, data bus, control bus, etc. For ease of illustration, only one thick line is used to represent it in the diagram, but this does not mean that there is only one bus or one type of bus.

[0197] The communication interface is used for communication between the aforementioned electronic devices and other devices.

[0198] The memory may include random access memory (RAM) or non-volatile memory (NVM), such as at least one disk storage device. Optionally, the memory may also be at least one storage device located remotely from the aforementioned processor.

[0199] The processors mentioned above can be general-purpose processors, including central processing units (CPUs), network processors (NPs), etc.; they can also be digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0200] In another embodiment provided in this application, a computer-readable storage medium is also provided, which stores a computer program that, when executed by a processor, implements the steps of any of the message forwarding methods in the above method embodiments.

[0201] In another embodiment provided in this application, a computer program product containing instructions is also provided, which, when run on a computer, causes the computer to execute the steps of any of the message forwarding methods in the above method embodiments.

[0202] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially 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, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid state disk (SSD)).

[0203] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0204] The various embodiments in this specification are described in a related manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, the embodiments of apparatus, electronic devices, computer-readable storage media, and computer program products are basically similar to the method embodiments, so the descriptions are relatively simple; relevant parts can be referred to the descriptions of the method embodiments.

[0205] The above description is merely a preferred embodiment of this application and is not intended to limit the scope of protection of this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application are included within the scope of protection of this application.

Claims

1. A packet forwarding method, characterized by, Applied to a head node, the method comprises: receiving a service packet, the service packet comprising a destination address and a flow characteristic; respectively acquiring a service attribute matched with the flow characteristic, an SRv6 TE Policy group matched with the destination address, and priorities of a plurality of SRv6 TE Policies included in the SRv6 TE Policy group and matched with the service attribute; determining an SRv6 TE Policy with the highest priority in the plurality of SRv6 TE Policies, the SRv6 TE Policy with the highest priority comprising a first path; if the first path meets a path quality condition, forwarding the service packet by using the first path; the method further comprises: every preset period, performing the following operations: acquiring path quality parameters of paths included in each of the plurality of SRv6 TE Policies; in a case where the first path does not meet the path quality condition, if a duration in which the path quality parameters of the first path meet a preset threshold constraint is greater than or equal to a first preset duration, it is determined that the first path meets the path quality condition; in a case where the first path meets the path quality condition, if the path quality parameters of the first path do not meet the preset threshold constraint for a duration greater than or equal to a second preset duration, it is determined that the first path does not meet the path quality condition.

2. The method of claim 1, wherein, each of the plurality of SRv6 TE Policies comprises at least one path; after the determination of the SRv6 TE Policy with the highest priority in the plurality of SRv6 TE Policies, the method further comprises: if the first path does not meet the path quality condition, determining a second path that meets the path quality condition in the paths included in the plurality of SRv6 TE Policies; forwarding the service packet by using the second path.

3. The method of claim 2, wherein, the method further comprises: every preset period, performing the following operations: acquiring path quality parameters of paths included in each of the plurality of SRv6 TE Policies; if the path quality parameters of the first path meet a preset threshold constraint, it is determined that the first path meets the path quality condition; if the path quality parameters of the first path do not meet the preset threshold constraint, it is determined that the first path does not meet the path quality condition.

4. The method according to claim 1 or 3, characterized in that, after the determination that the first path does not meet the path quality condition, the method further comprises: in order of priority from high to low, sequentially judging whether the path quality parameters of the paths included in each of the plurality of SRv6 TE Policies meet the preset threshold constraint, and taking a first path that meets the preset threshold constraint as a second path.

5. The method of claim 1, wherein, the SRv6 TE Policy group comprises intelligent routing information, the intelligent routing information being used to store priorities of a plurality of SRv6 policies matched with the service attribute.

6. A packet forwarding device, characterized by, applied to a head node, the device comprises: The receiving module is configured to receive a service packet, the service packet comprising a destination address and a flow characteristic; The obtaining module is configured to respectively obtain a service attribute matched with the flow characteristic, an SRv6 TE Policy group matched with the destination address, and priorities of a plurality of SRv6 TE Policies included in the SRv6 TE Policy group and matched with the service attribute; The first determining module is configured to determine an SRv6 TE Policy with the highest priority from the plurality of SRv6 TE Policies, the SRv6 TE Policy with the highest priority comprising a first path; The forwarding module is configured to forward the service packet by using the first path if the first path satisfies a path quality condition. The apparatus further comprises: The second determining module is configured to perform the following operations every preset period: Obtain a path quality parameter of a path included in each of the plurality of SRv6 TE Policies; In a case where the first path does not satisfy the path quality condition, if a duration in which the path quality parameter of the first path satisfies a preset threshold constraint is greater than or equal to a first preset time length, it is determined that the first path satisfies the path quality condition; In a case where the first path satisfies the path quality condition, if the path quality parameter of the first path does not satisfy the preset threshold constraint for a duration greater than or equal to a second preset time length, it is determined that the first path does not satisfy the path quality condition.

7. The apparatus of claim 6, wherein, Each of the plurality of SRv6 TE Policies comprises at least one path; The first determining module is further configured to, if the first path does not satisfy the path quality condition, determine a second path that satisfies the path quality condition from the paths included in the plurality of SRv6 TE Policies; The forwarding module is further configured to forward the service packet by using the second path.

8. The apparatus of claim 7, wherein, The apparatus further comprises: The second determining module is configured to perform the following operations every preset period: Obtain a path quality parameter of a path included in each of the plurality of SRv6 TE Policies; If the path quality parameter of the first path satisfies a preset threshold constraint, it is determined that the first path satisfies the path quality condition; If the path quality parameter of the first path does not satisfy the preset threshold constraint, it is determined that the first path does not satisfy the path quality condition.

9. The apparatus of claim 6 or 8, wherein The second determining module is further configured to, after determining that the first path does not satisfy the path quality condition, in order of priority from high to low, sequentially determine whether the path quality parameter of the path included in each of the plurality of SRv6 TE Policies satisfies the preset threshold constraint, and take a first path that satisfies the preset threshold constraint as a second path.

10. The apparatus of claim 6, wherein, The SRv6 TE Policy group includes intelligent routing information for storing a priority of a plurality of SRv6 policies matched with the service attribute. The SRv6 TE Policy group includes intelligent routing information for storing a priority of a plurality of SRv6 policies matched with the service attribute.

Citation Information

Patent Citations

  • Forwarding path determination method and device

    CN113542123A

  • Congested link processing method and device and network controller

    CN115865812A