A method and system for adaptive determination of a tunnel path

CN122824653APending Publication Date: 2026-09-25ULTRAPOWER SOFTWARE
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610827357.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-09
Publication Date
2026-09-25

AI Technical Summary

Technical Problem

然而,这种路径计算方法的路径计算成功率较低

Benefits of technology

[0016]本申请实施例引入了弹性的降维算路机制,在基于初始约束条件的路径计算失败后,并非直接返回算路失败的结果,而是依据目标隧道对应的预设的约束降级策略,对约束条件集合迭代执行逐步降低约束严格程度的操作,并基于每次降级后的服务等级协议与目的地址重新发起路径计算,直至成功找到可行路径或约束降级策略执行完毕。该机制使得在严格路径不可达的网络状态下,能快速找到满足部分核心服务等级协议的最佳可用路径,避免了直接确定路径计算失败,显著提升了隧道建立和重路由的成功率,增强了网络的应急保障和容灾能力。本申请实施例填补了传统刚性约束算路与完全无约束自由转发之间的空白。使得网络在保障部分核心服务等级协议的约束条件时具备了一定的弹性,能够根据实际情况通过动态调整约束条件以适应实时网络状态或业务需求以实现优雅降级,而非断崖式放弃,是网络智能化运维的重要体现,实现了资源受限场景下的精细化调度与业务连续性的双重优化。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122824653A_ABST
    Figure CN122824653A_ABST
Patent Text Reader

Abstract

The application provides a tunnel path adaptive determination method and system, which can effectively improve the success rate and adaptability of path calculation in tunnel path calculation. The method comprises the following steps: obtaining a path calculation request corresponding to a target tunnel, the path calculation request comprising a destination address and a service level agreement (SLA), the SLA comprising a constraint condition set, the constraint condition set comprising at least one constraint condition; performing path calculation according to the destination address and the SLA in response to the path calculation request; if the path calculation is successful, outputting a path; if the path calculation fails, performing a constraint degradation operation on the constraint condition set according to a constraint degradation strategy corresponding to the target tunnel, and iteratively performing path calculation according to the SLA and the destination address determined according to the degraded constraint condition set until the path calculation is successful or the constraint degradation strategy is executed completely, and outputting a path calculation result, wherein the constraint degradation strategy is used to indicate that the constraint condition set gradually reduces the constraint strictness of the path.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer network technology, and in particular to an adaptive method and system for determining tunnel paths. Background Technology

[0002] With the development of internet technology, the service traffic carried by Internet Protocol (IP) networks is becoming increasingly diversified. In IP bearer networks employing segment routing over IPv6 (SRv6) technology, network operators need to dynamically establish tunnel paths with specific constraints for different types of traffic in order to meet the Service Level Agreement (SLA) requirements of various services. These constraints typically include key quality of service indicators such as end-to-end latency, packet loss rate, and path hop count, aiming to provide differentiated transmission guarantees for diverse services such as voice, video, and data.

[0003] Currently, traditional path calculation methods generally employ a rigid matching strategy when handling service requests with multiple constraints. That is, when network controllers or other path calculation network elements receive a tunnel establishment request carrying specific SLA constraints (e.g., latency ≤15ms and packet loss rate ≤0.1%), the traditional method searches the network topology for a tunnel path that simultaneously satisfies all given constraints. If such a path exists, the result is output; otherwise, the path calculation is considered a failure, and no valid path is output. However, this method has a low success rate. In complex network environments, a tunnel path that simultaneously satisfies all constraints may not exist, leading to path calculation failures and impacting the rapid establishment of new services and the efficiency of service recovery after failures. Therefore, this path calculation method is ill-suited to the dynamically changing network conditions in complex network environments.

[0004] Therefore, in the face of complex network environments, how to effectively improve the success rate and adaptability of tunnel path calculation has become an urgent problem to be solved. Summary of the Invention

[0005] This application provides an adaptive method and system for determining tunnel paths, which can effectively improve the success rate and adaptability of path calculation in tunnel path calculation.

[0006] Firstly, an adaptive method for determining tunnel paths is provided, including: Obtain the path calculation request corresponding to the target tunnel. The path calculation request includes the destination address and the service level agreement (SLA). The SLA includes a set of constraints, and the set of constraints includes at least one constraint. In response to a path calculation request, perform path calculation based on the destination address and SLA; If the path calculation is successful, output the path; If path calculation fails, the constraint degradation operation is iteratively performed on the constraint set according to the constraint degradation strategy corresponding to the target tunnel. The path calculation is performed iteratively based on the SLA and destination address determined by the downgraded constraint set until the path calculation is successful or the constraint degradation strategy is completed. The path calculation result is then output. The constraint degradation strategy is used to indicate the gradual reduction of the constraint set on the path.

[0007] In a feasible design, a constraint degradation strategy is used to define the degradation order of at least one constraint and the degradation method corresponding to each constraint. The degradation method includes relaxing the threshold or ignoring the corresponding constraint. Relaxing the threshold means adjusting the value of the corresponding constraint from a first threshold to a second threshold. The second threshold has a lower degree of constraint on the path than the first threshold.

[0008] In a feasible design, at least one priority corresponding to at least one constraint constitutes the degradation order. The number of constraints with the same priority can be one or more, and the smaller the priority value, the earlier the degradation order is executed.

[0009] In one feasible design, based on the constraint degradation strategy corresponding to the target tunnel, the constraint degradation operation is iteratively performed on the constraint condition set. This iteratively calculates the path based on the SLA and destination address determined by the downgraded constraint condition set, until the path calculation is successful or the constraint degradation strategy is completed. The path calculation results are then output, including: Based on the degradation order in the constraint degradation strategy corresponding to the target tunnel, at least one constraint condition is prioritized and sorted to generate a constraint condition list. Each constraint condition in the constraint condition list is arranged in ascending order of priority value. Select the first unadjusted constraint in the list as the target constraint, and determine the corresponding degradation method for the target constraint according to the constraint degradation strategy; Based on the degradation method corresponding to the target constraint, the target constraint is degraded to obtain the degradation result. The intermediate constraint set is formed based on the degradation result and the constraint set other than the target constraint in the constraint set. Path calculation is performed based on the SLA and destination address determined by the intermediate constraint set; If the path calculation is successful, output the path calculation result containing the path and end the path calculation process; If path calculation fails, determine whether the constraint degradation strategy has been executed completely; If the constraint degradation strategy has been executed, output the path calculation result indicating that the path calculation failed. If the constraint degradation strategy has not been completed, the first unadjusted constraint in the list is selected as the new target constraint. The degradation method corresponding to the new target constraint is determined according to the constraint degradation strategy. The new target constraint is then subjected to degradation processing according to the degradation method to obtain a new degradation result. A new set of intermediate constraints is formed based on the new degradation result and the constraints in the intermediate constraint set other than the new target constraint. Path calculation is performed based on the SLA and destination address determined by the new set of intermediate constraints until the path calculation is successful and the path calculation result containing the path is output, or the path calculation result indicating path calculation failure is output after the constraint degradation strategy has been completed.

[0010] In one feasible design, if path calculation fails, the constraint degradation strategy corresponding to the target tunnel is used to iteratively perform constraint degradation operations on the constraint set. This iteratively calculates the path based on the SLA and destination address determined by the downgraded constraint set until the path calculation succeeds or the constraint degradation strategy is completed. The path calculation results are then output, including: If path calculation fails and the target tunnel can enable the constraint degradation strategy, the constraint degradation operation is iteratively executed on the constraint condition set according to the constraint degradation strategy corresponding to the target tunnel. The path calculation is performed iteratively based on the SLA and destination address determined by the reduced constraint condition set until the path calculation is successful or the constraint degradation strategy is completed, and then the path calculation result is output.

[0011] In a feasible design, the method also includes: If path calculation fails and the target tunnel cannot enable the constraint degradation strategy, output the path calculation result indicating the failure.

[0012] In one feasible design, the method further includes a step of determining whether a constraint degradation strategy can be enabled. This step includes: Whether a constraint degradation strategy can be enabled is determined based on the type of service in the target tunnel, which includes video services, voice services, or text data services.

[0013] In a feasible design, path calculation is performed based on the destination address and SLA, including: The constrained shortest path first algorithm is used to calculate the path based on the destination address and SLA.

[0014] In one feasible design, the target tunnel is a tunnel that uses segment routing technology based on IPv6.

[0015] Secondly, an adaptive tunnel path determination system is provided, comprising: The request acquisition module is used to acquire the path calculation request corresponding to the target tunnel. The path calculation request includes the destination address and the service level agreement (SLA). The SLA includes a set of constraints, and the set of constraints includes at least one constraint. The path calculation engine is used to perform path calculation based on the destination address and SLA in response to path calculation requests; An adaptive scheduler is used to output the path if the path calculation is successful. The adaptive scheduler is also used to, if path calculation fails, iteratively perform constraint degradation operations on the constraint set according to the constraint degradation strategy corresponding to the target tunnel, to iteratively calculate the path based on the SLA and destination address determined by the downgraded constraint set, until the path calculation is successful or the constraint degradation strategy is completed, and then output the path calculation result. The constraint degradation strategy is used to indicate the gradual reduction of the constraint set on the path.

[0016] This application introduces a flexible path reduction mechanism. After a path calculation based on initial constraints fails, it doesn't directly return a failure result. Instead, it iteratively reduces the stringency of constraints based on a preset constraint degradation strategy corresponding to the target tunnel. It then re-initiates path calculation based on the service level protocol and destination address after each degradation, until a feasible path is found or the constraint degradation strategy is completed. This mechanism enables the rapid finding of the best available path satisfying some core service level protocols even in network conditions where strictly unreachable paths exist. It avoids directly determining path calculation failure, significantly improving the success rate of tunnel establishment and rerouting, and enhancing the network's emergency response and disaster recovery capabilities. This application fills the gap between traditional rigid constraint path calculation and completely unconstrained free forwarding. It gives the network a certain degree of flexibility in ensuring constraints on some core service level protocols, allowing it to dynamically adjust constraints to adapt to real-time network conditions or business needs for graceful degradation, rather than abrupt abandonment. This is an important manifestation of intelligent network operation and maintenance, achieving dual optimization of fine-grained scheduling and business continuity in resource-constrained scenarios.

[0017] In addition, the method logic of the embodiments of this application is clear and easy to implement through software upgrades in software-defined networking (SDN) controllers or intelligent network elements that support SRv6. It has good compatibility with existing standard protocols and has high practicality and deployability. Attached Figure Description

[0018] To more clearly illustrate the technical solution of this application, the drawings used in the embodiments will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0019] Figure 1 This is a schematic flowchart illustrating an adaptive tunnel path determination method provided in an exemplary embodiment of this application; Figure 2 This is a schematic flowchart illustrating yet another example of an adaptive tunnel path determination method provided in an exemplary embodiment of this application; Figure 3 This is an example of an adaptive dimensionality reduction algorithm flowchart provided in an exemplary embodiment of this application; Figure 4 This is a schematic diagram of an adaptive tunnel path determination system provided in an exemplary embodiment of this application. Detailed Implementation

[0020] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0021] Traditional tunnel path calculation methods typically require all constraints in the SLA to be strictly satisfied; otherwise, the path calculation is considered a failure. This approach has the following drawbacks: 1) Low path calculation success rate: In complex networks or when the network state changes dynamically, a path that satisfies all constraints may not exist, leading to path calculation failure and affecting service establishment and recovery.

[0022] 2) Lack of flexibility and adaptability: Traditional methods cannot dynamically adjust constraints to adapt to real-time network conditions or business needs, making it difficult to achieve flexible path selection while ensuring business continuity.

[0023] 3) Limited disaster recovery capabilities: If all constraints are still required to be strictly met when a link or node failure occurs, it may lead to tunnel switching failure or switching delay, affecting service continuity.

[0024] To overcome the above shortcomings, this application provides an adaptive method for determining tunnel paths, such as... Figure 1 As shown, the method includes: S110, Obtain the path calculation request corresponding to the target tunnel.

[0025] The target tunnel is used to carry business traffic.

[0026] The path calculation request includes the destination address and the Service Level Agreement (SLA). The SLA includes a set of constraints, each of which includes at least one constraint. Each constraint is used to limit the network performance indicators that the path calculation must meet, such as latency, packet loss rate, bandwidth, and hop count.

[0027] S120, in response to the path calculation request, performs path calculation based on the destination address and SLA.

[0028] It should be noted that the SLA also includes a strategy, which is used to define the objective of path computation, such as minimizing loss or minimizing latency.

[0029] In a feasible design, path calculation based on destination address and SLA is achieved in the following way: The Constrained Shortest Path First (CSPF) algorithm is used to calculate the path based on the destination address and SLA.

[0030] The above embodiments use the CSPF algorithm to calculate the path based on the destination address and SLA, which can accurately and quickly identify the optimal path that meets the SLA constraints.

[0031] S130, if the path calculation is successful, output the path.

[0032] For example, if the path calculation is successful, the output is the optimal path calculated using the CSPF algorithm.

[0033] S140, if the path calculation fails, the constraint reduction operation is iteratively executed on the constraint condition set according to the constraint reduction strategy corresponding to the target tunnel. The path calculation is performed iteratively based on the SLA and destination address determined by the reduced constraint condition set until the path calculation is successful or the constraint reduction strategy is completed, and then the path calculation result is output.

[0034] The constraint degradation strategy is used to indicate the gradual reduction of the strictness of the constraint set on the path. "Reducing the strictness of the constraint set on the path" means that the constraint degradation strategy reduces the overall restriction of the constraint set on the candidate path, thereby expanding the search space of feasible paths and increasing the probability of finding a usable path that meets the degradation requirements in a complex network environment. This realizes the transformation from a rigid "all or nothing" algorithm to a flexible algorithm with "graceful degradation".

[0035] The lower the constraint stringency, the larger the path search space. For example, relaxing the latency constraint from 50ms to 100ms, or allowing the packet loss rate to increase from 0.001% to 0.1%, or even temporarily removing the latency constraint or packet loss rate constraint, are all ways to reduce the constraint stringency.

[0036] It should be understood that because different tunnels may carry different types of services (e.g., video, voice, or text data services) (i.e., different service levels), each tunnel has its own constraint degradation strategy to achieve differentiated SLA guarantees. That is, by flexibly defining constraint degradation strategies (such as the priority of constraints and the allowable thresholds), differentiated guarantee schemes can be provided for services of different levels. High-value services can be configured with more conservative degradation strategies (e.g., allowing only slight relaxation of latency), while ordinary services can be configured with more aggressive strategies (e.g., ignoring packet loss), achieving fine-grained scheduling of network resources.

[0037] In a feasible design, the constraint degradation strategy is used to define the degradation order of at least one constraint and the degradation method corresponding to each constraint. The degradation method (also known as the degradation objective) includes relaxing the threshold or ignoring the corresponding constraint. Relaxing the threshold means adjusting the value of the corresponding constraint from the first threshold to the second threshold. The second threshold has a lower degree of constraint on the path than the first threshold.

[0038] For example, at least one priority corresponding to at least one constraint constitutes a degradation order, and the number of constraints with the same priority is one or more. The smaller the priority value, the earlier the degradation order is executed.

[0039] Taking the initial SLA constraint set including "latency ≤ 15ms, packet loss rate ≤ 0.1%, hop count ≤ 6" as an example, the constraint degradation strategy is as follows: Priority 1: Latency Adaptive (Degradation Target: Ignore); Priority 2: Packet loss adaptive (degradation target: ignore); Priority 3: Adaptive hop count (Degradation target: Ignore); In this constraint degradation strategy, the three constraints are downgraded sequentially according to their priority. When path calculation fails, the latency constraint is ignored first, and the path is recalculated. If it still fails, the packet loss constraint is ignored, and the path is recalculated. If it still fails, the hop count constraint is ignored, and the path is recalculated. If all three attempts fail, the adaptive path calculation is considered to have failed.

[0040] For example, the constraint degradation strategy is as follows: Priority 1: Latency Adaptive (Degradation Target: Ignore); Priority 2: Adaptive packet loss and hop count (degradation target: ignore); In this constraint degradation strategy, the three constraints are degraded sequentially according to their priority. When path calculation fails, the latency constraint is ignored first, and the path is recalculated. If it still fails, the packet loss constraint and hop count constraint are ignored simultaneously, and the path is recalculated. If it still fails, it is determined that the adaptive path calculation has failed. This design supports merging multiple constraints to the same priority, thereby improving dimensionality reduction efficiency and path convergence speed while ensuring the SLA of some services.

[0041] For example, the constraint degradation strategy is as follows: Priority 1: Latency Adaptive (Degradation Target: Relaxed to 20ms); Priority 2: Packet loss adaptive (degradation target: ignore); Priority 3: Adaptive jump count (downgrade target: relax to 8 jumps); In this constraint degradation strategy, the three constraints are downgraded sequentially according to their priority. When path calculation fails, the latency constraint is first relaxed to 20ms and the path is recalculated. If it still fails, the packet loss constraint is ignored and the path is recalculated. If it still fails, the hop count constraint is relaxed to 8 hops and the path is recalculated. If all three attempts fail, the adaptive path calculation is considered to have failed.

[0042] The above embodiments, by defining a constraint degradation strategy, specify the execution "degradation order" and specific "degradation methods" for at least one constraint condition, achieving a smooth transition from rigid path failure to flexible adaptive convergence. Specifically, the "degradation order" ensures that after the initial path failure, constraints can be relaxed in an orderly manner according to a preset and determined priority order, making the degradation process controllable. The "degradation method" provides specific operational means for each constraint relaxation attempt: "relaxation threshold" reduces the strictness of the single constraint by adjusting the value of the constraint condition from a more stringent first threshold to a relatively lenient second threshold, thereby expanding the candidate range of effective paths in the dimension of that single constraint; "ignore corresponding constraint condition" removes the consideration of the constraint, deleting a screening dimension in path calculation. The constraint degradation strategy in the above example allows the "strictness of the overall constraint set on the path" to be systematically and stepwise reduced. This enables the exploration and potential finding of a usable path that meets the degradation conditions by gradually relaxing the requirements, even when no strict path exists initially. This improves the final success rate of path calculation and the adaptability to dynamic network environments.

[0043] In one feasible design, if path calculation fails, the constraint degradation strategy corresponding to the target tunnel is used to iteratively perform constraint degradation operations on the constraint set. This iteratively calculates the path based on the SLA and destination address determined by the downgraded constraint set until the path calculation succeeds or the constraint degradation strategy is completed. The path calculation results are then output, including: If path calculation fails and the target tunnel can enable the constraint degradation strategy, the constraint degradation operation is iteratively executed on the constraint condition set according to the constraint degradation strategy corresponding to the target tunnel. The path calculation is performed iteratively based on the SLA and destination address determined by the reduced constraint condition set until the path calculation is successful or the constraint degradation strategy is completed, and then the path calculation result is output.

[0044] For example, for SRv6 tunnels with high priority (such as video conferencing) services, the adaptive scheduling switch can be turned on and a constraint degradation policy can be set, meaning that the tunnel can enable the constraint degradation policy. However, for SRv6 tunnels with medium or low priority (such as email services), the adaptive scheduling switch cannot be turned on, meaning that the tunnel cannot enable the constraint degradation policy.

[0045] In this embodiment, by first determining whether the target tunnel has enabled the constraint degradation strategy after the path calculation fails, differentiated processing for different service levels is achieved. For example, for the target tunnel of high-priority services (such as video conferencing), adaptive scheduling is enabled and the constraints are gradually relaxed according to the preset constraint degradation strategy, so as to seek available paths as much as possible while ensuring the SLA constraints.

[0046] In a feasible design, the method also includes: If path calculation fails and the target tunnel cannot enable the constraint degradation strategy, output the path calculation result indicating the failure.

[0047] The above example demonstrates differentiated processing for different service levels by first determining whether the target tunnel has enabled the constraint degradation strategy after the path calculation fails. For example, for target tunnels of medium and low priority services (such as email services), the degradation switch is directly turned off to avoid invalid calculations and save system resources.

[0048] In one feasible design, the method further includes a step of determining whether a constraint degradation strategy can be enabled. This step includes: Whether a constraint degradation strategy can be enabled is determined based on the type of service in the target tunnel, which includes video services, voice services, or text data services.

[0049] For example, video and voice services have high real-time requirements, so their target tunnels both enable constraint degradation strategies to ensure service continuity; while text data services (such as email services) are not sensitive to latency, so their target tunnels do not enable constraint degradation strategies.

[0050] The above embodiments, by associating service types with the enabling rules of constraint degradation policies, can determine whether to enable the degradation mechanism before path calculation. In resource-constrained network environments, this can maintain the stable operation of critical services at the lowest cost and avoid affecting the path adaptation efficiency of high-priority services due to non-critical services consuming too many computing resources.

[0051] In one feasible design, based on the constraint degradation strategy corresponding to the target tunnel, the constraint degradation operation is iteratively performed on the constraint condition set. This iteratively calculates the path based on the SLA and destination address determined by the downgraded constraint condition set, until the path calculation is successful or the constraint degradation strategy is completed. The path calculation results are then output, including: Based on the degradation order in the constraint degradation strategy corresponding to the target tunnel, at least one constraint condition is prioritized and sorted to generate a constraint condition list. Each constraint condition in the constraint condition list is arranged in ascending order of priority value. Select the first unadjusted constraint in the list as the target constraint, and determine the corresponding degradation method for the target constraint according to the constraint degradation strategy; Based on the degradation method corresponding to the target constraint, the target constraint is degraded to obtain the degradation result. The intermediate constraint set is formed based on the degradation result and the constraint set other than the target constraint in the constraint set. Path calculation is performed based on the SLA and destination address determined by the intermediate constraint set; If the path calculation is successful, output the path calculation result containing the path and end the path calculation process; If path calculation fails, determine whether the constraint degradation strategy has been executed completely; If the constraint degradation strategy has been executed, output the path calculation result indicating that the path calculation failed. If the constraint degradation strategy has not been completed, the first unadjusted constraint in the list is selected as the new target constraint. The degradation method corresponding to the new target constraint is determined according to the constraint degradation strategy. The new target constraint is then subjected to degradation processing according to the degradation method to obtain a new degradation result. A new set of intermediate constraints is formed based on the new degradation result and the constraints in the intermediate constraint set other than the new target constraint. Path calculation is performed based on the SLA and destination address determined by the new set of intermediate constraints until the path calculation is successful and the path calculation result containing the path is output, or the path calculation result indicating path calculation failure is output after the constraint degradation strategy has been completed.

[0052] For example Figure 2 As shown, the process retrieves the path calculation request corresponding to the target tunnel. The SLA in the path calculation request includes a set of constraints such as "latency ≤ 15ms, packet loss rate ≤ 0.1%, hop count ≤ 6". Path calculation is performed based on the destination address and SLA. If the path calculation is successful, the optimal path is directly output and the process terminates; if it fails, the process checks whether the adaptive scheduling switch is enabled. If it is not enabled, the path calculation result including the failure is returned. If it is enabled, the adaptive dimensionality reduction path calculation process is executed, which involves "iteratiatingly performing constraint reduction operations on the constraint set according to the constraint reduction strategy corresponding to the target tunnel, and iteratively calculating the path based on the SLA and destination address determined by the reduced constraint set". If the path calculation is successful, the dimensionality-reduced path is output, and the path calculation process ends; if the path calculation fails, the path calculation result including the failure is output, and the path calculation process ends.

[0053] Constraint-based degradation strategies include: Priority 1: Latency Adaptive (Degradation Target: Relaxed to 20ms); Priority 2: Packet loss adaptive (degradation target: ignore); Priority 3: Taking adaptive hop count (degradation target: relaxed to 8 hops) as an example, the adaptive dimensionality reduction algorithm process will be further introduced, such as... Figure 3 As shown: At least one constraint is prioritized according to the degradation order of the constraint degradation strategy, and a constraint list is generated (i.e., a constraint list sorted by strategy priority). For example, the constraint list is: [Latency ≤ 15ms; Packet loss rate ≤ 0.1%; Number of hops ≤ 6]. Select the first unadjusted constraint in the list as the target constraint. Determine the degradation method (i.e., adaptive target) of the target constraint according to the constraint degradation strategy, which is "relax the threshold" or "ignore". For example, if "latency ≤ 15ms" is taken as the target constraint, the degradation method corresponding to "latency ≤ 15ms" is determined according to the constraint degradation strategy as "relaxing its constraint from ≤ 15ms to ≤ 20ms". The target constraint is downgraded according to the downgrade method to obtain the downgrade result. The intermediate constraint set is formed based on the downgrade result and the constraints other than the target constraint in the constraint set. For example, according to the downgrade method "relax its constraint from ≤15ms to ≤20ms" corresponding to "latency ≤15ms", the downgrade process is performed on "latency ≤20ms" to obtain the downgrade result "latency ≤20ms". The intermediate constraint set "latency ≤20ms, packet loss rate ≤0.1%, hop count ≤6" is formed based on the downgrade result "latency ≤20ms" and the constraints other than the target constraint in the constraint set "packet loss rate ≤0.1%, hop count ≤6". Path calculation is performed based on the SLA and destination address determined by the intermediate constraint set. For example, path calculation is performed based on the SLA and destination address determined by "latency ≤ 20ms, packet loss rate ≤ 0.1%, hop count ≤ 6". If the path calculation is successful, output the path calculation result containing the path and end the path calculation process; If path calculation fails, determine whether the constraint degradation strategy has been completed (i.e., determine whether the priority has been exhausted). For example, at this time, the degradation operation of the constraint condition corresponding to priority 1 in the constraint degradation strategy has been executed, and the priority has not been exhausted. After determining that the constraint degradation strategy has not been fully executed, the first unadjusted constraint in the list is selected as the new target constraint. Then, degradation processing is performed on the new target constraint to obtain a new set of intermediate constraints. Path calculation is then performed again. For example, if "packet loss rate ≤ 0.1%" is selected as the new target constraint, degradation processing is performed to obtain a new set of intermediate constraints "latency ≤ 20ms, hop count ≤ 6", and path calculation is performed again.

[0054] If the path calculation is successful, output the path calculation result containing the path and end the path calculation process; If path calculation fails, determine whether the constraint degradation strategy has been completed (i.e., determine whether the priority has been exhausted). For example, this time the degradation operation of the constraint condition corresponding to priority 2 in the constraint degradation strategy has been executed, and the priority has not been exhausted. After determining that the constraint degradation strategy has not been fully executed, the first unadjusted constraint in the list is selected as the new target constraint. Then, degradation processing is performed on the new target constraint to obtain a new set of intermediate constraints. Path calculation is then performed again. For example, if "number of lost hops ≤ 6" is selected as the new target constraint, degradation processing is performed to obtain a new set of intermediate constraints "delay ≤ 20ms, number of hops ≤ 8", and path calculation is performed again.

[0055] If the path calculation is successful, output the path calculation result containing the path and end the path calculation process; If path calculation fails, determine whether the constraint degradation strategy has been completed. For example, if the constraint degradation operation corresponding to priority 3 in the constraint degradation strategy has been executed and the priority has been exhausted, output the path calculation result indicating that the path calculation failed.

[0056] The above embodiment transforms the degradation order in the constraint degradation strategy into a list of constraints arranged in ascending order of priority values. It then iteratively performs degradation operations on each constraint according to this list. In each iteration, only the first unadjusted constraint in the list is selected as the current degradation target. This constraint is then adjusted according to its preset degradation method (such as relaxing the threshold or ignoring it) before triggering path calculation, thereby gradually expanding the search range of candidate paths with minimal granularity. If the path calculation succeeds under the current constraint set, the path is output and the process terminates, avoiding subsequent redundant strategy attempts. If the path calculation fails and the strategy is not exhausted, the next constraint is selected for degradation until the path calculation succeeds or the constraint degradation strategy is completed, at which point the path calculation result indicating failure is output. This adaptive degradation mechanism ensures that high-priority constraints are adjusted last or retained first in the degradation sequence, maximizing the maintenance of specific constraints in the service level agreement and improving the probability of successful path calculation and resource utilization. Furthermore, since only a portion of the constraints are downgraded each time, it avoids the loss of path quality control caused by relaxing all constraints.

[0057] In one feasible design, the target tunnel is a tunnel that uses Segment Routing over IPv6 (SRv6) technology.

[0058] Traditional SRv6 path calculation relies on fixed constraints, which can easily lead to calculation failures due to changes in network status during disaster recovery scenarios such as link failures or network congestion. This application introduces a constraint degradation strategy. After failing to calculate an SRv6 tunnel path based on an initial set of constraints, it automatically relaxes the constraints in stages according to preset priorities, ensuring the rapid generation of usable paths while still meeting some SLA constraints. This constraint degradation mechanism is highly compatible with the programmable nature of SRv6 tunnel paths, fully leveraging SRv6's fine-grained control over tunnel paths to achieve dynamic and elastic adjustment and efficient disaster recovery switching, thereby improving the robustness and service continuity assurance capabilities of SRv6 tunnels.

[0059] This application introduces a flexible path reduction mechanism. After a path calculation based on initial constraints fails, it doesn't directly return a failure result. Instead, it iteratively reduces the stringency of constraints based on a preset constraint degradation strategy corresponding to the target tunnel. It then re-initiates path calculation based on the service level protocol and destination address after each degradation, until a feasible path is found or the constraint degradation strategy is completed. This mechanism enables the rapid finding of the best available path satisfying some core service level protocols even in network conditions where strictly unreachable paths exist. It avoids directly determining path calculation failure, significantly improving the success rate of tunnel establishment and rerouting, and enhancing the network's emergency response and disaster recovery capabilities. This application fills the gap between traditional rigid constraint path calculation and completely unconstrained free forwarding. It gives the network a certain degree of flexibility in ensuring constraints on some core service level protocols, allowing it to dynamically adjust constraints to adapt to real-time network conditions or business needs for graceful degradation, rather than abrupt abandonment. This is an important manifestation of intelligent network operation and maintenance, achieving dual optimization of fine-grained scheduling and business continuity in resource-constrained scenarios.

[0060] In addition, the method logic of the embodiments of this application is clear and easy to implement through software upgrades in software-defined networking (SDN) controllers or intelligent network elements that support SRv6. It has good compatibility with existing standard protocols and has high practicality and deployability.

[0061] like Figure 4 As shown, this application also provides an adaptive tunnel path determination system, comprising: The request acquisition module is used to acquire the path calculation request corresponding to the target tunnel. The path calculation request includes the destination address and the service level agreement (SLA). The SLA includes a set of constraints, and the set of constraints includes at least one constraint. The path calculation engine is used to perform path calculation based on the destination address and SLA in response to path calculation requests; An adaptive scheduler is used to output the path if the path calculation is successful. The adaptive scheduler is also used to, if path calculation fails, iteratively perform constraint degradation operations on the constraint set according to the constraint degradation strategy corresponding to the target tunnel, to iteratively calculate the path based on the SLA and destination address determined by the downgraded constraint set, until the path calculation is successful or the constraint degradation strategy is completed, and then output the path calculation result. The constraint degradation strategy is used to indicate the gradual reduction of the constraint set on the path.

[0062] In a feasible design, the system also includes a policy management module, which is used to store, manage and provide preset constraint degradation policies. The constraint degradation policy is used to define the degradation order of at least one constraint and the degradation method corresponding to each constraint. The degradation method includes relaxing the threshold or ignoring the corresponding constraint. Relaxing the threshold means adjusting the value of the corresponding constraint from a first threshold to a second threshold. The second threshold has a lower constraint severity on the path than the first threshold.

[0063] In a feasible design, at least one priority corresponding to at least one constraint constitutes a degradation order. The number of constraints with the same priority can be one or more, and the smaller the priority value, the earlier the degradation order is executed.

[0064] In a feasible design, the adaptive scheduler is implemented by iteratively performing constraint degradation operations on the constraint set according to the constraint degradation strategy corresponding to the target tunnel. This iteratively calculates the path based on the SLA and destination address determined by the degraded constraint set until the path calculation is successful or the constraint degradation strategy is completed, at which point the path calculation result is output. Based on the degradation order in the constraint degradation strategy corresponding to the target tunnel, at least one constraint condition is prioritized and sorted to generate a constraint condition list. Each constraint condition in the constraint condition list is arranged in ascending order of priority value. Select the first unadjusted constraint in the list as the target constraint, and determine the corresponding degradation method for the target constraint according to the constraint degradation strategy; Based on the degradation method corresponding to the target constraint, the target constraint is degraded to obtain the degradation result. The intermediate constraint set is formed based on the degradation result and the constraint set other than the target constraint in the constraint set. Path calculation is performed based on the SLA and destination address determined by the intermediate constraint set; If the path calculation is successful, output the path calculation result containing the path and end the path calculation process; If path calculation fails, determine whether the constraint degradation strategy has been executed completely; If the constraint degradation strategy has been executed, output the path calculation result indicating that the path calculation failed. If the constraint degradation strategy has not been completed, the first unadjusted constraint in the list is selected as the new target constraint. The degradation method corresponding to the new target constraint is determined according to the constraint degradation strategy. The new target constraint is then subjected to degradation processing according to the degradation method to obtain a new degradation result. A new set of intermediate constraints is formed based on the new degradation result and the constraints in the intermediate constraint set other than the new target constraint. Path calculation is performed based on the SLA and destination address determined by the new set of intermediate constraints until the path calculation is successful and the path calculation result containing the path is output, or the path calculation result indicating path calculation failure is output after the constraint degradation strategy has been completed.

[0065] In a feasible design, the adaptive scheduler is implemented as follows: if path calculation fails, it iteratively performs constraint degradation operations on the constraint set according to the constraint degradation strategy corresponding to the target tunnel. This iteratively calculates the path based on the SLA and destination address determined by the degraded constraint set until the path calculation is successful or the constraint degradation strategy is completed, at which point the path calculation result is output. If path calculation fails and the target tunnel can enable the constraint degradation strategy, the constraint degradation operation is iteratively executed on the constraint condition set according to the constraint degradation strategy corresponding to the target tunnel. The path calculation is performed iteratively based on the SLA and destination address determined by the reduced constraint condition set until the path calculation is successful or the constraint degradation strategy is completed, and then the path calculation result is output.

[0066] In a feasible design, the adaptive scheduler is implemented in the following ways, and other methods also include: If path calculation fails and the target tunnel cannot enable the constraint degradation strategy, output the path calculation result indicating the failure.

[0067] In a feasible design, the adaptive scheduler determines whether a constraint degradation strategy can be enabled by: Whether a constraint degradation strategy can be enabled is determined based on the type of service in the target tunnel, which includes video services, voice services, or text data services.

[0068] In a feasible design, the path calculation engine is implemented by performing path calculation based on the destination address and SLA: The constrained shortest path first algorithm is used to calculate the path based on the destination address and SLA.

[0069] In one feasible design, the target tunnel is a tunnel that uses segment routing technology based on IPv6.

[0070] Other implementations and effects of the above-described device can be found in the description of the adaptive tunnel path determination method embodiment, and will not be repeated here.

[0071] The basic principles of this application have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this application are merely examples and not limitations, and should not be considered as essential features of each embodiment of this application. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the application to the necessity of employing the aforementioned specific details for implementation.

[0072] It should be understood that although the steps in the flowcharts of the accompanying figures are shown sequentially as indicated by the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the accompanying figures may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the sub-steps or stages of other steps.

[0073] The block diagrams of devices, apparatuses, devices, and systems involved in this application are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0074] It should also be noted that in the apparatus, equipment, and methods of this application, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions of this application.

[0075] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this application. Therefore, this application is not intended to be limited to the aspects shown herein, but rather to be accorded the widest scope consistent with the principles and novel features disclosed herein.

[0076] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this application to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.

Claims

1. An adaptive method for determining a tunnel path, characterized in that, include: Obtain the path calculation request corresponding to the target tunnel. The path calculation request includes the destination address and the Service Level Agreement (SLA). The SLA includes a set of constraints, and the set of constraints includes at least one constraint. In response to the path calculation request, a path is calculated based on the destination address and the SLA; If the path calculation is successful, output the path; If path calculation fails, the constraint degradation operation is iteratively performed on the constraint set according to the constraint degradation strategy corresponding to the target tunnel. The path calculation is performed iteratively based on the SLA determined by the downgraded constraint set and the destination address until the path calculation is successful or the constraint degradation strategy is completed. The path calculation result is then output. The constraint degradation strategy is used to indicate the gradual reduction of the constraint set's strictness on the path.

2. The method according to claim 1, characterized in that, The constraint degradation strategy is used to define the degradation order of the at least one constraint and the degradation method corresponding to each constraint. The degradation method includes relaxing the threshold or ignoring the corresponding constraint. Relaxing the threshold means adjusting the value of the corresponding constraint from a first threshold to a second threshold. The second threshold has a lower degree of constraint on the path than the first threshold.

3. The method according to claim 2, characterized in that, The at least one priority corresponding to the at least one constraint constitutes the degradation order. The number of constraints with the same priority is one or more, and the smaller the priority value, the earlier the degradation order is executed.

4. The method according to claim 3, characterized in that, The constraint degradation strategy corresponding to the target tunnel iteratively performs constraint degradation operations on the constraint set to iteratively calculate the path based on the SLA determined by the downgraded constraint set and the destination address, until the path calculation is successful or the constraint degradation strategy is completed, and then outputs the path calculation result, including: The at least one constraint condition is prioritized according to the degradation order in the constraint degradation strategy corresponding to the target tunnel to generate a constraint condition list, wherein each constraint condition in the constraint condition list is arranged in ascending order of priority value. Select the first unadjusted constraint in the list as the target constraint, and determine the degradation method corresponding to the target constraint according to the constraint degradation strategy; According to the degradation method corresponding to the target constraint, the target constraint is subjected to degradation processing to obtain a degradation result. An intermediate constraint set is formed based on the degradation result and the constraint conditions other than the target constraint in the constraint set. Path calculation is performed based on the SLA determined by the intermediate constraint set and the destination address; If the path calculation is successful, output the path calculation result containing the path and end the path calculation process; If path calculation fails, determine whether the constraint degradation strategy has been executed completely; If the constraint degradation strategy is completed, output the path calculation result indicating that the path calculation failed; If the constraint degradation strategy has not been completed, the first unadjusted constraint in the list is selected as the new target constraint. The degradation method corresponding to the new target constraint is determined according to the constraint degradation strategy. The new target constraint is then subjected to degradation processing according to the degradation method to obtain a new degradation result. A new set of intermediate constraints is formed based on the new degradation result and the constraints in the intermediate constraint set other than the new target constraint. Path calculation is performed based on the SLA determined by the new set of intermediate constraints and the destination address until the path calculation is successful and a path calculation result containing the path is output, or the constraint degradation strategy is completed and a path calculation result indicating path calculation failure is output.

5. The method according to any one of claims 1-4, characterized in that, If path calculation fails, the constraint degradation strategy corresponding to the target tunnel is used to iteratively perform constraint degradation operations on the constraint set. This iteratively calculates the path based on the SLA determined by the downgraded constraint set and the destination address until the path calculation is successful or the constraint degradation strategy is completed. The path calculation result is then output, including: If path calculation fails and the target tunnel can enable the constraint degradation strategy, the constraint degradation operation is iteratively performed on the constraint condition set according to the constraint degradation strategy corresponding to the target tunnel. The path calculation is performed iteratively based on the SLA determined by the downgraded constraint condition set and the destination address until the path calculation is successful or the constraint degradation strategy is completed, and then the path calculation result is output.

6. The method according to claim 5, characterized in that, The method further includes: If path calculation fails and the target tunnel cannot enable the constraint degradation strategy, output the path calculation result indicating path calculation failure.

7. The method according to claim 5, characterized in that, The method further includes a step of determining whether a constraint degradation strategy can be enabled, the step of determining whether a constraint degradation strategy can be enabled including: Whether a constraint degradation strategy can be enabled is determined based on the service type of the target tunnel, which includes video services, voice services, or text data services.

8. The method according to any one of claims 1-4, characterized in that, The path calculation based on the destination address and the SLA includes: Based on the destination address and the SLA, the constrained shortest path first algorithm is used to calculate the path.

9. The method according to any one of claims 1-4, characterized in that, The target tunnel is a tunnel that uses segment routing technology based on IPv6.

10. An adaptive tunnel path determination system, characterized in that, include: The request acquisition module is used to acquire the path calculation request corresponding to the target tunnel. The path calculation request includes the destination address and the service level agreement (SLA). The SLA includes a set of constraints, and the set of constraints includes at least one constraint. A path calculation engine is used to perform path calculation based on the destination address and the SLA in response to the path calculation request; An adaptive scheduler is used to output the path if the path calculation is successful. The adaptive scheduler is further configured to, if path calculation fails, iteratively perform constraint degradation operations on the constraint set according to the constraint degradation strategy corresponding to the target tunnel, to iteratively perform path calculation based on the SLA determined by the downgraded constraint set and the destination address, until the path calculation is successful or the constraint degradation strategy is completed, and then output the path calculation result. The constraint degradation strategy is used to indicate the gradual reduction of the constraint set's strictness on the path.