Method for applying linear programming to CDN (Content Delivery Network) scheduling
By employing hierarchical linear programming and weighted intersection hashing algorithms, the problems of low-latency response, high-precision execution, and policy stability in CDN scheduling are solved, achieving efficient and stable CDN scheduling results. This approach is suitable for node load balancing and quality of service assurance in content delivery networks.
Patent Information
- Application Number
- CN202511995966.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-26
- Publication Date
- 2026-03-03
AI Technical Summary
Existing CDN scheduling technologies have shortcomings in offline planning and online execution. Linear programming methods face challenges in low-latency response, high-precision execution, and stability in ultra-large-scale scenarios, and cannot achieve global optimization, smooth strategy, and accurate and efficient scheduling.
A hierarchical linear programming approach is adopted, including data preparation, smooth configuration of strategy layer versions, linear solution of macro and micro layers, online execution, cross-provincial transmission cost matrix optimization, and dynamic adaptation mechanism of request features. Through a small-scale linear programming model and parallel computing, combined with a weighted intersection hash algorithm, high-precision and low-memory scheduling is achieved.
It achieves second-level response to sudden traffic demands, near-global optimality for multiple objectives, combines high-precision execution with low memory consumption, and ensures system stability through smooth policy updates, thus overcoming the engineering challenges of linear programming in ultra-large-scale CDN scheduling.
Smart Images

Figure CN121603504A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of content delivery network scheduling technology, and in particular to a method for using linear programming for CDN scheduling. Background Technology
[0002] The core objective of CDN scheduling is to achieve node load balancing and service quality assurance. Its implementation relies on a two-tier architecture of "offline planning – online execution": the offline planning phase calculates a global traffic allocation strategy based on network topology, traffic distribution, and node resources; the online execution phase applies this strategy to the routing and distribution of actual user requests, ensuring that user access is accurately directed to the optimal edge node. With the rapid development of internet services, the number of domain names carried by CDN systems has grown from thousands in the early days to hundreds of thousands or even millions. Traffic fluctuations have also significantly increased due to scenarios such as live streaming and e-commerce promotions. The shortcomings of existing systems have gradually become apparent, especially the limitations of offline planning algorithms and online execution schemes, as well as the engineering challenges of implementing the theoretically optimal linear programming method, all of which jointly restrict further improvements in CDN scheduling performance.
[0003] In the offline planning stage, existing mainstream algorithms include the stable marriage algorithm, the maximum flow minimum cost algorithm, and the greedy algorithm, but none of them can meet the comprehensive optimization requirements. The stable marriage algorithm achieves bidirectional preference matching between domain names and nodes through the Gale-Shapley algorithm. While it can maintain a high cache hit rate and TLS session reuse rate, it only obtains a locally stable solution and lacks a comprehensive consideration of complex network topology and multi-objective constraints, thus failing to achieve global optimum. The maximum flow minimum cost algorithm models the scheduling problem as a network flow model, which can integrate multi-dimensional objectives to a limited extent to derive the theoretical optimal solution. However, due to the lack of policy smoothing constraints, it cannot connect with the previous round of scheduling states, and policy updates are prone to causing large-scale traffic fluctuations, which in turn damages service stability. The greedy algorithm achieves scheduling through the accumulation of locally optimal decisions. Although it is logically simple and has a fast response, it lacks long-term planning and cannot guarantee global optimization results.
[0004] In the online execution phase, existing solutions primarily rely on DNS and HTTPDNS resolution, both of which have significant drawbacks. DNS-based resolution is mature and low-cost, but its scheduling granularity is coarse, only approximating node weights through the number of VIPs. It is also susceptible to recursive DNS caching, ISP caching, and hijacking, resulting in insufficient scheduling accuracy and real-time performance. While HTTPDNS-based resolution bypasses traditional recursive resolution and offers greater flexibility, its VIP-based node mapping method also suffers from coarse granularity. Consistent hashing based on virtual nodes, while achieving precise weighting and stable mapping to user requests, is strongly coupled to the number of virtual nodes. A large number of virtual nodes leads to substantial memory overhead, becoming a bottleneck for large-scale system expansion.
[0005] From a theoretical perspective, linear programming is an ideal tool for multi-objective optimal scheduling, possessing advantages such as strong multi-objective optimization capabilities, high computational efficiency, and high model flexibility. Furthermore, it can control the magnitude of policy changes through linear constraints, ensuring cache hit rates and TLS session reuse rates. However, in ultra-large-scale CDN scenarios, linear programming faces three major engineering implementation challenges: First, the challenge of low-latency response, where burst bandwidth scenarios require second-level scheduling responses, while global linear programming solutions take minutes, failing to meet the demand; second, the challenge of high-precision execution, where the floating-point weights generated by linear programming are difficult for existing online solutions to execute accurately and at low cost; and finally, the challenge of stability, as linear programming is prone to over-optimization, leading to drastic policy changes and causing problems such as cache invalidation and spikes in node load.
[0006] In summary, existing CDN scheduling technologies have shortcomings in both offline planning and online execution. The theoretically optimal linear programming method is hampered by engineering obstacles and cannot be practically applied. Overcoming these technological bottlenecks to achieve globally optimal, policy-smooth, accurate, and efficient CDN scheduling has become a critical issue that urgently needs to be addressed in this field. Summary of the Invention
[0007] The present invention proposes a method for using linear programming for CDN scheduling to solve the problems mentioned in the prior art.
[0008] To achieve the above objectives, the present invention adopts the following technical solution: a method for applying linear programming to CDN scheduling, comprising the following steps: Data preparation: Collect the basic data required for scheduling, including bandwidth demand of various regions and operators, available capacity of physical nodes, cross-provincial transmission cost matrix, macro quota of the previous version, micro weight of the previous version, and strategy parameters for version smoothing. Smooth version configuration at the strategy level: Set version change rules uniformly at the strategy level, specifying the upper limit of the single change range and the cumulative change range of macro quotas and micro weights between versions. This rule takes effect simultaneously on the subsequent macro and micro two-level linear solutions. Macro-level linear solution: A small-scale linear programming model is constructed at the provincial and operator levels to obtain the cross-provincial carrying quota for each resource pool; the model includes demand conservation constraints, capacity non-overrun constraints, and version smoothing constraints, with the goal of minimizing the cross-provincial cost; by setting the cost of the local province to 0, the cross-provincial cost is set according to network latency detection data and settlement costs, and in conjunction with the objective function of minimizing the cross-provincial cost, the local province's demand is guided to be prioritized to be carried by local province nodes; Micro-level linear solution: Using the carrying capacity quota obtained from the macro-level as a rigid boundary, the national problem is decoupled into sub-problems that are solved in parallel by province, generating a weight vector of "domain name class - node selection"; Online execution: When a user request is received, the target node is selected using weighted intersection hashing based on the generated weight vector. This algorithm can perform high-precision weight allocation without configuring a large number of virtual nodes by mapping the weights to continuous intervals in the hash space.
[0009] Furthermore, this invention also includes a dynamic optimization process for the inter-provincial transmission cost matrix, which updates the cost parameters in real time through a time series analysis model. The optimization formula is as follows: in Let be the inter-provincial transmission cost coefficient at time t. The cost coefficient at time t-1, Let be the cost weighting coefficient at time τ. Let τ be the joint deviation between network quality and settlement cost at time τ.
[0010] Furthermore, the present invention also includes a fine-grained control mechanism for macro-level version smoothing, which sets differentiated change thresholds for the business stability requirements of different resource pools, divides the change range according to the business stability level, and narrows the change range for resource pools with higher stability requirements. At the same time, a resource pool load pressure coefficient is introduced to dynamically adjust the change upper limit. The load pressure coefficient is calculated by the ratio of the current load to the available capacity. The higher the load pressure, the higher the change upper limit.
[0011] Furthermore, the present invention introduces minimum granularity control of weights in the linear solution process of the micro-layer, sets a minimum granularity threshold for weights, and ensures that the step size of each element in the weight vector is not less than the threshold. At the same time, discretization processing is used to ensure that the weight value is an integer multiple of the minimum granularity threshold.
[0012] Furthermore, the objective function of the macro-level linear programming model of this invention is to minimize the inter-provincial cost, which is calculated by combining network latency and settlement cost; the objective function expression is: Where Z is the total cost of inter-provincial transmission, m is the total number of operators, and n is the total number of CDN resource pools. Let be the bandwidth carried by the j-th resource pool for the i-th region. This is a weighting coefficient for network latency costs, ranging from 0 to 1, and is dynamically adjusted based on the service's latency sensitivity. The unit network latency cost for transmitting data from the j-th resource pool to the i-th region is... Settle the cost per unit for cross-regional coverage when transmitting data from the j-th resource pool to the i-th region user.
[0013] Furthermore, this invention introduces a dynamic adaptation mechanism for request features during online execution. By analyzing five core features of user requests—business type, data size, access frequency, timeliness requirements, and security level—the weight vector is fine-tuned in real time. The fine-tuning formula is as follows: ,in This represents the weight of domain class i at node j after fine-tuning. For the original weights, The feature impact factor function, k corresponds to five core features, k=1 to 5, corresponding to business type, data size, access frequency, timeliness requirements, and security level, respectively. Let be the business and resource compatibility coefficient between domain name class i and node j on feature dimension k.
[0014] Furthermore, the data preparation process includes anomaly cleaning and repair steps. Pre-defined statistical rules are used to identify outliers in bandwidth demand and network quality data. Data exceeding the normal range is marked, and then repaired using interpolation. The repair formula is as follows: ,in The data at time t is the repaired data. and These are the normal data at time t-1 and t+1, respectively. and These are the timestamps for the corresponding moments, ensuring the accuracy of the input data and providing reliable support for solving the linear programming model.
[0015] Furthermore, the policy-level version smoothing rules also include an emergency adjustment mechanism. When a major network failure, sudden traffic surge, or policy change occurs, an emergency adjustment process is triggered to remove the version change range restrictions. At this time, the macro quota and micro weight are adaptively adjusted according to actual needs. After the adjustment, they must be restored to the range of the version smoothing rules within a set period.
[0016] Furthermore, the parallel processing of the micro-level linear programming model solution in this invention adopts a dynamic task allocation strategy. Each province's subproblem is solved independently by only one thread. The number of CPU cores used during the solution process can be configured as needed and cannot exceed 50% of the total number of CPU cores on the server where the thread resides. Simultaneously, the computational complexity is calculated based on the number of domain name classes and nodes in each province, and corresponding computing resources are allocated accordingly. The computational complexity formula is: ,in This represents the computational complexity value for that province. This is a complexity adjustment factor. This refers to the number of domain name classes in that province. This represents the number of nodes in that province. A weighting function for the number of domain name classes. The weight function for the number of nodes allocates more CPU cores to provinces with higher computational complexity, ensuring that the load on each computing node is evenly distributed, shortening the overall solution time, and meeting the business needs of rapid scheduling strategy updates.
[0017] Compared with existing technologies, this invention systematically solves the engineering challenges of linear programming in ultra-large-scale CDN scheduling scenarios through a macroscopic and microscopic two-level linear programming architecture and innovative algorithm design, achieving a dual breakthrough in scheduling performance and execution efficiency. Specific beneficial effects are as follows: 1. Second-level response to sudden traffic demands: This invention innovatively adopts a hierarchical strategy of small-scale solution at the macro level of provinces and operators, and micro-level concurrent execution of provincial sub-problems, significantly reducing the scale of linear programming solutions. Through the collaborative optimization of hierarchical decomposition and parallel computing, the solution time of traditional global linear programming, which is typically in the minutes, is compressed to the second level. This enables rapid response to sudden bandwidth increases in scenarios such as popular live streamers going live or major sporting events starting, and timely completion of node load scheduling, avoiding service interruptions or node overload caused by solution delays.
[0018] 2. Achieving near-global optimum across multiple objectives: This invention constructs a linear programming model that links macro and micro layers, supporting flexible weighted configuration of multiple objectives such as cost, latency, and load balancing. The macro layer coordinates the global network topology and traffic distribution, formulating a cross-regional traffic allocation framework; the micro layer focuses on optimizing provincial node resources and refining local scheduling strategies. The two-level model iterates collaboratively, ensuring both a global optimization perspective and local execution accuracy, ultimately obtaining a near-global optimum solution that balances multiple objectives, comprehensively improving CDN service quality and resource utilization efficiency.
[0019] 3. High-precision execution combined with low memory consumption: The innovative weighted intersection hash algorithm eliminates the need for massive virtual nodes, directly supporting precise allocation of floating-point weights and completely resolving the conflict between scheduling accuracy and memory overhead in traditional solutions. The system only needs to store a compact weight vector, avoiding the resource consumption caused by redundant storage of virtual nodes. Actual testing shows a significant reduction in memory overhead compared to consistent hashing schemes based on virtual nodes, significantly improving the system's large-scale scalability while ensuring scheduling accuracy.
[0020] 4. Smooth Policy Updates Ensure System Stability: A unified version smoothing rule is set at the policy layer and applied simultaneously to both macro and micro planning processes. By setting hard constraints on the traffic remapping ratio, the magnitude of policy changes between versions is strictly limited. This design effectively avoids drastic policy changes, prevents large-scale traffic fluctuations, and prevents a sharp drop in cache hit rate and TLS session reuse rate. It also avoids sudden spikes in disk I / O and CPU load on edge nodes, achieving optimal scheduling while maximizing service continuity and system stability.
[0021] In summary, this invention comprehensively overcomes the three core challenges of low-latency response, high-precision execution, and policy stability in ultra-large-scale CDN scheduling using linear programming. It successfully promotes the transformation of linear programming from a theoretical level into a practically usable scheduling algorithm framework, providing a better technical option for CDN scheduling systems. Attached Figure Description
[0022] Figure 1 This is a schematic block diagram of a method for applying linear programming to CDN scheduling proposed in this invention; Figure 2 To obtain a line graph comparing time with the size of decision variables; Figure 3 A bar chart showing the magnitude of weight changes before and after version smoothing; Figure 4 Scatter plot of weighted precision; Figure 5 Line chart for system scalability. Detailed Implementation
[0023] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0024] In the description of this invention, it should be understood that the terms "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," "clockwise," and "counterclockwise," etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this invention.
[0025] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of indicated technical features. Thus, features defined with "first" and "second" may explicitly or implicitly include one or more of the stated features. In the description of this invention, "a plurality of" means two or more, unless otherwise explicitly specified. Furthermore, the terms "installed," "connected," and "linked" should be interpreted broadly; for example, they may refer to a fixed connection, a detachable connection, or an integral connection; they may refer to a mechanical connection or an electrical connection; they may refer to a direct connection or an indirect connection through an intermediate medium; and they may refer to the internal connection of two components. Those skilled in the art can understand the specific meaning of the above terms in this invention based on the specific circumstances. The invention will now be described in further detail with reference to the accompanying drawings.
[0026] Reference Figures 1 to 5 A method for applying linear programming to CDN scheduling includes the following steps: Data preparation: Collect the basic data required for scheduling, including bandwidth demand of various regions and operators, available capacity of physical nodes, cross-provincial transmission cost matrix, macro quota of the previous version, micro weight of the previous version, and strategy parameters for version smoothing. Among them, bandwidth demand is based on the daily average peak bandwidth statistics of the preset period, available capacity is set with a safety threshold according to node hardware configuration, and cross-provincial transmission cost matrix is constructed based on comprehensive network quality and settlement cost. Smooth version configuration at the strategy layer: Set version change rules uniformly at the strategy layer, specifying the upper limit of the single change range and cumulative change range of macro quotas and micro weights between versions. This rule takes effect simultaneously on the subsequent linear solutions at both the macro and micro levels, ensuring the stability of scheduling strategy iteration. Macro-level linear solution: A small-scale linear programming model is constructed at the provincial and operator levels to obtain the cross-provincial carrying quota for each resource pool. The model includes demand conservation constraints, capacity non-overflow constraints, and version smoothing constraints, with the objective of minimizing cross-provincial costs. The demand conservation constraint requires that the total carrying bandwidth of operators in each region equals the demand, and the capacity non-overflow constraint restricts the carrying bandwidth of the resource pool from exceeding the available capacity. At the same time, the model is constrained by the aforementioned version smoothing rules to limit the change range of macro-level quotas between new and old versions. By setting the cost of the local province to 0, the cross-provincial cost is set according to network latency detection data and settlement costs. Combined with the objective function of minimizing the cross-provincial cost, the demand of the local province is guided to be carried by the local provincial nodes first. Micro-level linear solution: The carrying capacity quota obtained from the macro-level is used as a rigid boundary to decouple the national problem into sub-problems that are solved in parallel by province, generating a weight vector of "domain name class - node". The model includes macro-level quota matching constraints and version smoothing constraints. The weight normalization constraint requires that the sum of the weights of a single domain name class in all candidate nodes within the province be 1. The multi-dimensional capacity non-over-boundary constraint limits the node bandwidth, CPU, and IO load to no more than the corresponding safety thresholds. The macro-level quota matching constraint ensures that the total carrying capacity of all domain name classes within the province is equal to the quota allocated by the macro-level. At the same time, the model is constrained by the aforementioned version smoothing rule to limit the change range of micro-level weights between the old and new versions. Online execution: When a user request is received, the target node is selected using weighted intersection hashing based on the generated weight vector. This algorithm maps the weights to continuous intervals in the hash space, which can perform high-precision weight allocation without configuring a large number of virtual nodes, reducing memory consumption and maintaining the determinism of selection, ensuring that the user request is routed to the optimal node.
[0027] This invention also includes a dynamic optimization process for the inter-provincial transmission cost matrix, which updates the cost parameters in real time using a time series analysis model. The optimization formula is as follows: in Let be the inter-provincial transmission cost coefficient at time t. The cost coefficient at time t-1, Let be the cost weighting coefficient at time τ. Let τ be the joint deviation between network quality and settlement cost at time τ. This optimization process can respond in real time to fluctuations in network quality and changes in cost, improve the accuracy of the cross-provincial cost matrix, and thus optimize the solution results of the macro-level linear programming.
[0028] This invention also includes a fine-grained control mechanism for macro-level version smoothing. Differentiated change thresholds are set for the business stability requirements of different resource pools. The change range is divided according to the business stability level. The change range is narrower for resource pools with higher stability requirements. At the same time, a resource pool load pressure coefficient is introduced to dynamically adjust the change limit. The load pressure coefficient is calculated by the ratio of the current load to the available capacity. The higher the load pressure, the higher the change limit, ensuring that macro-level quota adjustment meets both business needs and system stability.
[0029] In this invention, a minimum granularity control of weights is introduced during the linear solution process at the micro level. A minimum granularity threshold for weights is set, and the step size of each element in the weight vector is not less than this threshold. At the same time, discretization is used to ensure that the weight value is an integer multiple of the minimum granularity threshold, thereby avoiding execution-level errors caused by excessively high weight precision, ensuring the consistency and accuracy of target node selection, and reducing the computational complexity of the scheduling system.
[0030] In this invention, the objective function of the macro-level linear programming model is to minimize the inter-provincial cost, which is calculated by combining network latency and settlement cost; the objective function expression is: Where Z is the total cost of inter-provincial transmission, m is the total number of operators, and n is the total number of CDN resource pools. Let be the bandwidth carried by the j-th resource pool for the i-th region. This is a weighting coefficient for network latency costs, ranging from 0 to 1, and is dynamically adjusted based on the service's latency sensitivity. The unit network latency cost for transmitting data from the j-th resource pool to the i-th region is... The objective function is to calculate the settlement cost per unit of data transmission from the j-th resource pool to the i-th region. By balancing network latency and settlement costs, the macro-quota allocation ensures both user access experience and operational costs, thus better meeting the overall business optimization needs.
[0031] In this invention, a dynamic adaptation mechanism for request features is introduced during online execution. By analyzing five core features of user requests—business type, data size, access frequency, timeliness requirements, and security level—the weight vector is fine-tuned in real time. The fine-tuning formula is as follows: ,in This represents the weight of domain class i at node j after fine-tuning. For the original weights, The feature impact factor function, k corresponds to five core features, k=1 to 5, corresponding to business type, data size, access frequency, timeliness requirements, and security level, respectively. The business and resource suitability coefficient between domain name class i and node j on feature dimension k includes the expected number of CPUs or TLS hardware acceleration cards for dynamically accelerated services. If the expected value is not met, the suitability coefficient needs to be reduced, and vice versa. This mechanism enables the target node to be selected to better match the specific request characteristics, thereby further improving service quality.
[0032] In this invention, the data preparation process includes anomaly data cleaning and repair steps. Pre-defined statistical rules are used to identify outliers in bandwidth demand and network quality data. Data exceeding the normal range is marked, and then repair is performed using interpolation. The repair formula is as follows: ,in The data at time t is the repaired data. and These are the normal data at time t-1 and t+1, respectively. and These are the timestamps for the corresponding moments, ensuring the accuracy of the input data and providing reliable support for solving the linear programming model.
[0033] In this invention, the version smoothing rules at the strategy layer also include an emergency adjustment mechanism. When a major network failure, sudden traffic surge, or policy change occurs, an emergency adjustment process is triggered to remove the version change range restriction. At this time, the macro quota and micro weight are adaptively adjusted according to actual needs. After the adjustment, they need to be restored to the range of the version smoothing rules within a set period. This ensures the system's flexibility in responding to emergencies and avoids long-term deviation from a stable iteration track.
[0034] In this invention, the parallel processing of solving the micro-level linear programming model adopts a dynamic task allocation strategy. Each province's subproblem is solved independently by only one thread. The number of CPU cores used during the solution process can be configured as needed, but cannot exceed 50% of the total number of CPU cores on the server where the thread resides. Simultaneously, the computational complexity is calculated based on the number of domain name classes and nodes in each province, and corresponding computing resources are allocated accordingly. The computational complexity formula is: ,in This represents the computational complexity value for that province. This is a complexity adjustment factor. This refers to the number of domain name classes in that province. This represents the number of nodes in that province. A weighting function for the number of domain name classes. The weight function for the number of nodes allocates more CPU cores to provinces with higher computational complexity, ensuring that the load on each computing node is evenly distributed, shortening the overall solution time, and meeting the business needs of rapid scheduling strategy updates.
[0035] The following two examples further illustrate the specific implementation of this system: Example 1: Implementation of Hierarchical Linear Programming Scheduling for a Nationwide Large-Scale CDN Network This embodiment is applied to a large-scale CDN network covering 30 provincial-level administrative regions across the country, containing 1,000 physical edge nodes and carrying 1,000 domain name classes. It elaborates on the complete implementation process of the CDN scheduling method based on hierarchical linear programming to cope with sudden traffic scenarios caused by popular live broadcasts, and fully incorporates the technical features and formula calculations described in the claims.
[0036] I. Data Preparation and Scenario Background (I) System Scale and Network Topology This CDN system covers 30 provincial-level administrative regions across the country, with 1,000 physical edge nodes deployed throughout the network. All nodes are divided into 30 independent resource pools based on their province of origin, and each resource pool integrates the bandwidth, CPU, and IO resources of all nodes in the corresponding province.
[0037] Among them, Guangdong Province deployed 35 physical nodes with a total bandwidth capacity of 3500Gbps, and after reserving a 15% security threshold, the actual bandwidth that can be carried is 2975Gbps; Guangxi deployed nodes with a total bandwidth capacity of 2000Gbps, and after reserving a security threshold, it can carry 1700Gbps; Hainan Province deployed nodes with a total bandwidth capacity of 1800Gbps, and after reserving a security threshold, it can carry 1530Gbps; the nodes deployed in the remaining provinces have a total bandwidth capacity of 18000Gbps, and after reserving a security threshold, it can carry 15300Gbps.
[0038] The entire network carries 1,000 domain name classes, each composed of several domain name classes with similar resource consumption characteristics. Domain name classes serve as the basic unit for scheduling and participate in traffic allocation. The network topology adopts a two-tier architecture of provinces and operators, and the scheduling process is divided into macro and micro layers.
[0039] The macro-level uses provincial resource pools as the granularity for cross-provincial carrying capacity quota planning, with decision variables consisting of combinations of 30 source provinces and 30 target provinces, totaling 900 decision variables. The micro-level further decomposes the quotas allocated in the macro-level to specific nodes within each province. The decision variables for a single province consist of 1000 domain name classes combined with all nodes within that province. Taking Guangdong Province as an example, there are 35,000 decision variables for a single province. The micro-level solution tasks for all 30 provinces are executed in parallel.
[0040] (II) Description of the Emergency: At 8 PM one evening, a popular streamer started a live broadcast in Guangdong Province, causing a sudden surge in bandwidth demand. System monitoring data showed that the bandwidth demand in Guangdong Province surged from 2800Gbps to 5800Gbps within one minute, an increase of 3000Gbps. However, the maximum capacity of the local nodes in Guangdong Province after reserving the safety threshold was 2975Gbps, which was insufficient to handle all the traffic after the surge. An emergency cross-provincial dispatch mechanism needed to be activated to divert the excess traffic.
[0041] At this point, the emergency adjustment mechanism of the version smoothing rules at the strategy layer is triggered, the limitation on the extent of version changes is lifted, and the system will be restored to the range of version smoothing rules within 2 hours after the sudden traffic surge stabilizes.
[0042] (III) Data Collection and Anomaly Data Processing Preparation Phase: The basic data collected includes: bandwidth demand of various regions and operators, available capacity of physical nodes, cross-provincial transmission cost matrix, macro quota of the previous version, micro weight of the previous version, and strategy parameters for version smoothing. For the collected bandwidth demand data, outliers are identified using preset statistical rules, and data exceeding the normal fluctuation range of ±30% are marked.
[0043] The repair is performed using interpolation, and the repair formula is as follows: ,in The data at time t is the repaired data. and These are the normal data at time t-1 and t+1, respectively. and These are the timestamps for the corresponding moments. After the repair, the data accuracy was improved to 99.8%, providing reliable support for solving linear programming models.
[0044] The inter-provincial transmission cost matrix is updated in real time using a time series analysis model, and the optimization formula is as follows: in Let be the inter-provincial transmission cost coefficient at time t. The cost coefficient at time t-1, Let be the cost weighting coefficient at time τ. Let τ be the joint deviation between network quality and settlement cost at time τ.
[0045] In this scheduling process, the transmission cost coefficient from Guangdong to Guangxi was updated in real time to 5, from Guangdong to Hainan to 8, and from Guangdong to other provinces to 10-20.
[0046] II. Smooth Version Configuration at the Policy Layer: Smooth version configuration is the core mechanism to ensure scheduling stability. It limits the magnitude of traffic changes when policy is updated by setting constraint rules, thereby preventing large-scale migration of existing traffic.
[0047] In this embodiment, the version smoothing rule is divided into a macro level and a micro level, which are uniformly managed through the configuration center to ensure the consistency of constraints in the two-level solution process.
[0048] (i) The macro-level version smoothing rules follow the principle of unrestricted bursts and restricted redistribution. Bursts of new traffic are not subject to version smoothing constraints, while the redistribution of existing traffic is strictly restricted.
[0049] Specifically, it includes two types of constraints: (1) Single Resource Pool Constraint: Limits the quota change range of a single province. The calculation formula is: the absolute value of the difference between the new quota and the old quota ≤ old quota × 10% + the province's burst traffic. For Guangdong Province, the old quota is 2800Gbps and the burst traffic is 150Gbps. Substituting into the formula, the upper limit of the single resource pool change is 2800 × 10% + 150 = 430Gbps. At the same time, the resource pool load pressure coefficient is introduced to dynamically adjust the upper limit of the change. The load pressure coefficient is calculated by the ratio of the current load to the available capacity. The higher the load pressure, the higher the upper limit of the change. The load pressure coefficient of Guangdong Province is 1.05, and the upper limit of the change is increased to 451.5Gbps.
[0050] (2) Multi-province cumulative constraint: Limits the total change in quota across all provinces in the network. The calculation formula is: the sum of the absolute values of the difference between the new quota and the old quota in the entire network ≤ the old quota in the entire network × 5% + the burst traffic in the entire network. The old quota in the entire network is 15000Gbps, and the burst traffic in the entire network is 3000Gbps. Substituting these values into the formula, the upper limit of the multi-province cumulative change is 15000 × 5% + 3000 = 3750Gbps.
[0051] (ii) The micro-level version smoothing rules, which apply to the weight allocation of domain names and nodes within the province, also include the following three types of constraints: (1) Single domain name class constraint: Limit the weight change of a single domain name class on a node, with an upper limit of 15%; at the same time, introduce weight minimum granularity control, set the weight minimum granularity threshold to 0.01, and the value step of each element in the weight vector is not less than 0.01 and is an integer multiple of 0.01 to avoid execution errors caused by extremely small weights.
[0052] (2) Provincial Cumulative Constraint: The total traffic change of all domain names in a single province is limited. The calculation formula is: ∑(absolute value of traffic change of each domain name at the provincial nodes) ≤ old quota of the province × 20% + sudden traffic of the province. Guangdong Province has an old quota of 2800Gbps and a sudden traffic of 150Gbps. Substituting these values into the formula, the upper limit of the provincial cumulative change is 2800 × 20% + 150 = 710Gbps.
[0053] (3) Total Network Constraint: Limits the total traffic change of all domain names across the entire network. The calculation formula is: ∑(absolute value of traffic change for each domain name across all nodes) ≤ total network old quota × 10% + total network burst traffic. The total network old quota is 15000Gbps, and the total network burst traffic is 3000Gbps. Substituting these values into the formula, the total network cumulative change limit is 15000 × 10% + 3000 = 4500Gbps.
[0054] III. Macro-level Linear Programming Solution The core objective of the macro-level is to plan cross-provincial carrying quotas at the provincial operator level, determine the allocation ratio of traffic from each source province to the target province, and provide a rigid boundary for the micro-level solution.
[0055] (a) Problem modeling, the decision variables at the macro level are: , representing the quota allocated from source province i to target province j. The decision variable size is a combination of 30 source provinces and 30 target provinces, totaling 900.
[0056] Taking Guangdong Province as an example, the total demand after a sudden surge is 5800Gbps. It is necessary to determine the distribution ratio of this traffic among Guangdong Province, Guangxi Province, Hainan Province and other provinces through calculation to ensure that the total distribution is equal to 5800Gbps.
[0057] (II) Constraint Construction: The constraint system includes four types of hard constraints, totaling approximately 91: (1) Demand conservation constraint: The flow demand of each source province must be fully satisfied. The calculation formula is as follows: ,in This represents the demand from province i. Specifically, for Guangdong province... There are a total of 30 such constraints.
[0058] (2) Capacity Limitation Constraint: The total flow carried by each target province must not exceed its capacity limit after reserving the safety threshold. The calculation formula is as follows: ,in Let this be the available capacity of target province j. Taking Guangdong Province as the target province as an example, There are a total of 30 such constraints.
[0059] (3) Version smoothing constraint, single resource pool: ,in For the new quota of target province j, For the old quota, There are a total of 30 such constraints for sudden traffic surges in the province.
[0060] (4) Version smoothing constraint, multi-province cumulative: ,in This represents the total old quota across the entire network. There is a total of 1 constraint for sudden traffic spikes across the entire network.
[0061] (III) Optimization Objective Design The macro-level optimization objective is to minimize the total cost of inter-provincial transmission. The objective function expression is: Where Z represents the total cost of inter-provincial transmission, m represents the total number of operators, and n represents the total number of CDN resource pools. Let be the bandwidth carried by the j-th resource pool for the i-th region. This is a weighting coefficient for network latency costs. In this scheduling process, because the services are highly sensitive to latency, The value is 0.7. The unit network latency cost for transmitting data from the j-th resource pool to the i-th region is... The unit settlement cost for transmitting data from the j-th resource pool to the i-th region.
[0062] By balancing network latency and settlement costs through this objective function, the needs of the province are guided to be prioritized to be carried by nodes within the province.
[0063] (iv) Solution process and results: The model was solved using an open-source linear programming solver with 900 decision variables and 90 constraints. The solution time was 0.8 seconds. The results are as follows: Guangdong Province: The new quota is 2975Gbps, a change of 175Gbps, which is less than the adjusted single resource pool constraint limit of 451.5Gbps, thus meeting the version smoothing requirements.
[0064] Guangxi: The new quota is 1700Gbps, and the quota change is 500Gbps, which is less than the single resource pool constraint limit of 500Gbps, thus meeting the requirements.
[0065] Hainan Province: The new quota is 1530Gbps, and the quota change is 430Gbps, which is equal to the single resource pool constraint limit of 430Gbps, thus meeting the requirements.
[0066] Other provinces: The new quota is 11795Gbps, and the quota change is 1895Gbps, which is less than the single resource pool constraint limit of 3140Gbps, thus meeting the requirements.
[0067] The total change in the network quota was 3000Gbps, consistent with the network-wide sudden traffic surge, and did not exceed the cumulative constraint limit of 3750Gbps for multiple provinces.
[0068] IV. Micro-level linear programming: The core objective of solving the micro-level problem is to decompose the quota allocated in the macro-level to specific nodes within each province, and determine the weight allocation ratio of each domain name class in each node.
[0069] (a) Problem modeling, the decision variables at the micro level are: , representing the weight of domain class c allocated to node n, with the decision variable size being the combination of the number of domain classes and nodes in a single province. Taking Guangdong Province as an example, 1000 domain classes and 35 nodes form 35000 decision variables. The quota allocated at the macro level serves as a rigid boundary, requiring that the deviation between the total bandwidth allocated at the micro level and the macro level quota does not exceed ±2%, meaning that the total bandwidth allocated at the micro level in Guangdong Province must be between 2915.5Gbps and 3034.5Gbps.
[0070] (II) Constraint Construction: The constraint system includes six categories of hard constraints, totaling approximately 2150: (1) Weight normalization constraint: , where k is the number of candidate nodes for this domain name class, ensuring that all traffic for each domain name class is allocated, and there are a total of 1000 constraints for this class.
[0071] (2) Multidimensional capacity constraints: Limit node bandwidth, CPU, and IO load to not exceed the corresponding safety thresholds, i.e. , , ,in , , These are the bandwidth, CPU, and I / O requirements for domain class C, respectively. , , These represent the bandwidth, CPU, and IO capacity of node n, respectively. 0.85 is the safety threshold coefficient for bandwidth and CPU, and 0.80 is the safety threshold coefficient for IO. The corresponding proportion of resources is reserved to cope with sudden demand. There are a total of 105 such constraints.
[0072] (3) Macro quota matching constraints: Where Q represents the provincial quota allocated at the macro level, and there is a total of 1 such constraint.
[0073] (4) Version smoothing constraint, single domain class: In normal scenarios, the absolute difference between the newly assigned weight and the original weight satisfies For scenarios involving sudden traffic surges, when the real-time fluctuation of traffic corresponding to a domain exceeds a preset threshold, the upper limit of the weight difference is temporarily relaxed to adapt to the rapid scheduling needs under sudden traffic surges; at the same time, regardless of whether it is a normal or sudden scenario, All constraints must be multiples of 0.01, and there are a total of 1000 such constraints.
[0074] (5) Version smoothing constraint: The traffic adjustment of all domain names at each node across the province must balance smoothness and adaptability to sudden traffic surges, and the constraint relationship must satisfy the formula. .in This represents the sum of absolute traffic changes for all domain names across all nodes in the province, where c is the domain name class index, C is the total number of domain name classes in the province, n is the node index, and N is the total number of nodes in the province. The new traffic value allocated to domain class c on node n. This represents the original traffic allocation value for domain class c on node n. This represents the province's old traffic quota within a historical period, and 0.2 is the traffic adjustment ratio threshold under normal scenarios. This is a pre-set limit for sudden traffic surges in the province. This constraint limits traffic fluctuations in normal scenarios through a proportional threshold, preventing drastic changes in node load from affecting service stability. It also reserves flexibility through the sudden traffic surge limit to adapt to instantaneous traffic peaks in scenarios such as live-streaming e-commerce and major e-commerce promotions, ensuring that the scheduling strategy has both stability and flexibility in dynamic business environments. There is a total of 1 constraint of this type.
[0075] (6) Version Smoothing Constraint (Network-wide Cumulative): The traffic changes of all domain names across the entire network at each node must balance smoothness and resilience in the event of sudden changes, and the constraint relationship must satisfy the formula. .in, This means traversing all provinces across the entire network. This indicates iterating through 1000 domain names across the entire network. Assign a new weight to domain class c on node n. The original weight assigned to domain class c on node n For the baseline traffic of domain class C, This represents the absolute value of the traffic change for domain class c on node n. This refers to the old traffic quota within the historical period of the entire network; 10% is the threshold for adjusting the network's traffic ratio under normal scenarios. This constraint sets a pre-defined limit for sudden traffic spikes across the entire network. It limits the fluctuation range of network traffic in normal scenarios through a proportional threshold, preventing drastic changes in node load from affecting service stability. It also reserves elasticity through the sudden traffic spike limit to adapt to the instantaneous traffic demand in scenarios such as live streaming promotions and peak access. There is a total of 1 constraint of this type.
[0076] (iii) Parallel solution strategy: The micro-level solution adopts a dynamic task allocation strategy. Each province's sub-problem is assigned to a thread for independent solution. The number of CPU cores used in the solution process does not exceed 50% of the total number of CPU cores on the server.
[0077] Computational resources are allocated according to the computational complexity of each province. The computational complexity formula is as follows: ,in, Let be the computational complexity value for the province. is the complexity adjustment coefficient, M is the number of domain name classes in the province, N is the number of nodes in the province, u is the weight function for the number of domain name classes, and v is the weight function for the number of nodes.
[0078] Guangdong Province has the highest computational complexity, with 4 CPU cores allocated and a solution time of 10.5 seconds; other provinces are allocated 2-3 CPU cores and a solution time of 8-10 seconds.
[0079] (iv) Example of Solution Results Taking Guangdong Province domain name class A as an example, its candidate nodes are N1-N5. The weight allocation results after solution are as follows: The old weight allocation is N1=0.25, N2=0.30, N3=0.20, N4=0.15, N5=0.10; the new weight allocation is N1=0.30, N2=0.25, N3=0.20, N4=0.15, N5=0.10. The maximum weight change is 0.05, which is less than the 15% constraint upper limit, and all are integer multiples of 0.01, satisfying all constraint requirements.
[0080] V. Online Execution - Weighted Cross-Hash and Request Feature Adaptation (I) Weighted intersection hash algorithm execution: The weighted intersection hash algorithm is used to implement floating-point weight allocation. The core process is as follows: calculate the hash value based on the user ID and normalize it to the [0,1] interval, calculate the cumulative distribution function CDF based on the weight vector, and find the interval where the hash value is located to determine the target node.
[0081] Taking the weight vector of domain class A [0.30, 0.25, 0.20, 0.15, 0.10] as an example, its cumulative distribution function is [0.30, 0.55, 0.75, 0.90, 1.00]. When the user request hash value is normalized to 0.42, it is mapped to node N2.
[0082] This algorithm requires no virtual node configuration and uses only 120KB of memory per domain, significantly reducing memory usage compared to traditional virtual node consistent hashing algorithms (1.7MB memory usage), thus greatly improving system scalability. In a simulated test of 1 million requests, the deviation between the actual traffic share and the theoretical weight of each node was less than 5%, meeting the required execution accuracy.
[0083] (ii) Dynamic adaptation of request features: During online execution, a dynamic adaptation mechanism for request features is introduced to analyze five core features of user requests: business type, data size, access frequency, timeliness requirements, and security level, and to fine-tune the weight vector in real time.
[0084] The fine-tuning formula is: ,in, This represents the weight of domain class i at node j after fine-tuning. For the original weights, The function represents the characteristic influence factor, where k = 1 to 5 corresponds to five types of characteristics, with values ranging from 0.05 to 0.2. Let be the business and resource compatibility coefficient between domain name class i and node j on feature dimension k.
[0085] For example, in a dynamically accelerated service request, k=1, the service type is dynamic acceleration, and node N2 is configured with a TLS hardware acceleration card. , Then the weight of domain A on node N2 is fine-tuned to 0.25×[1+0.1×0.15]=0.2538, ensuring that the target node selection is more in line with the request characteristics.
[0086] VI. Verification and Comparative Analysis of Scheduling Effects (a) Response time verification: The total response time of the system is 14.3 seconds, including 2 seconds for data preparation, 0.8 seconds for macroscopic layer solution, 10.5 seconds for microscopic layer solution, and 1 second for configuration distribution.
[0087] Compared to the traditional global solution method with a response time of 3-5 minutes, the response speed is improved by 12 times, meeting the need for second-level response in emergency scenarios.
[0088] (II) Accuracy and Cost Verification: After the scheduling strategy was issued, the bandwidth deviation rate of each node was less than 5%, with an average deviation rate of 3.2%, which is a significant improvement compared to the average deviation rate of 15.7% of the traditional method. At the same time, through objective function optimization, the total cost of cross-province transmission was reduced by 28%, effectively controlling operating costs while ensuring service quality.
[0089] Table 1: Comparison of Scheduling Effects
[0090] Table 1 compares the scheduling performance of the proposed method with traditional methods in large-scale CDN networks using four core indicators: response time, average bandwidth deviation rate, total cost of inter-provincial transmission, and memory usage. Data shows that the proposed method has a response time of only 14.3 seconds, a significant reduction of 92.1% compared to the traditional method's 180 seconds, meeting the second-level scheduling requirements for bursty traffic. The average bandwidth deviation rate decreased from 15.7% to 3.2%, an improvement of 80.2%. The core reason for this is that the weighted intersection hash algorithm can accurately execute floating-point weights, avoiding accuracy loss caused by insufficient virtual nodes due to memory consumption issues. The total cost of inter-provincial transmission decreased by 28%, stemming from the objective function's optimization of the balance between network latency and settlement costs, guiding traffic to prioritize local transmission. Single-process memory usage decreased from 2300MB to 600MB, a reduction of 73.91%, attributed to the weighted intersection hash algorithm's elimination of virtual nodes, storing only a compact weight vector, significantly improving system scalability. These four indicators comprehensively verify the integrated advantages of the proposed method in terms of efficiency, accuracy, cost, and resource usage.
[0091] Example 2: Implementation of Hierarchical Linear Programming Scheduling for Regional Medium-Scale CDN Networks This embodiment is applied to a regional medium-sized CDN network covering 6 provincial-level administrative regions, containing 300 physical edge nodes and carrying 500 domain name classes. It elaborates on the implementation process of the hierarchical linear programming scheduling method in a regional scenario to cope with the traffic growth scenario caused by e-commerce promotions.
[0092] I. Data Preparation and Scenario Background (I) System Scale and Network Topology: This CDN system covers six provincial-level administrative regions in a certain area, with 300 physical edge nodes deployed across the network. The nodes are divided into six resource pools according to their province affiliation. Province A has 60 nodes with a total bandwidth capacity of 6000Gbps, which can support 5100Gbps after reserving a 15% security threshold; Province B has 50 nodes with a total bandwidth capacity of 5000Gbps, which can support 4250Gbps; Province C has 40 nodes with a total bandwidth capacity of 4000Gbps, which can support 3400Gbps; Provinces D, E, and F each have 50 nodes with a total bandwidth capacity of 5000Gbps, which can support 4250Gbps.
[0093] The entire network carries 500 domain name classes. The network topology adopts a two-level architecture of "province-operator". There are 6×6=36 macro-level decision variables and 500×number of nodes for each micro-level province. The solution is performed in parallel for 6 provinces.
[0094] (II) Traffic Growth Scenarios and Data Processing: After the launch of e-commerce promotional activities, the bandwidth demand in Province A increased from 4000Gbps to 6500Gbps, and in Province B from 3000Gbps to 4500Gbps, with the total network traffic increasing from 18000Gbps to 23500Gbps. During the data preparation phase, various basic data were collected, and abnormal data was repaired using interpolation. The accuracy of the repaired data reached 99.7%. The cross-provincial transmission cost matrix was updated in real time using a time series analysis model. The transmission cost coefficient for adjacent provinces was 3-5, and for non-adjacent provinces, it was 8-10.
[0095] II. Smooth Configuration of Strategy Layer Versions (a) Macro-level version smoothing rules, single resource pool constraints: Province A has an old quota of 4000Gbps and a burst traffic of 2500Gbps. The upper limit of a single resource pool is 4000×15%+2500=3100Gbps. Combined with a load pressure coefficient of 1.05, the adjusted upper limit is 3255Gbps.
[0096] Cumulative constraints across multiple provinces: The total network old quota is 18000Gbps, the burst traffic is 5500Gbps, and the cumulative change limit is 18000×8%+5500=6940Gbps.
[0097] (ii) Micro-level version smoothing rules, single domain name class constraints: weight change amplitude ≤ 20%, minimum granularity threshold 0.02, ensuring that the weight is an integer multiple of 0.02.
[0098] The cumulative traffic changes of all domain names across all nodes within the province must satisfy the constraint formula. Where c is the provincial domain name class sequence number, C is the total number of domain name classes in the province, n is the provincial node sequence number associated with the corresponding domain name class c, and N is the total number of nodes associated with this domain name class. Assign a new weight to domain class c on node n. The original weight assigned to domain class c on node n. For the baseline traffic of domain class C, This represents the absolute value of the traffic change for domain class c on node n. This refers to the old traffic quota within the province's historical periods, while 25% is the threshold for traffic adjustment under normal scenarios in the province. This refers to the pre-set emergency traffic quota for the province. Taking Province A as an example, its old traffic quota... Sudden traffic limit Then the cumulative change limit for the province is .
[0099] III. Solving Macro-level Linear Programming (a) Objective function and constraints: The macroscopic objective function still adopts the following: ,in The value is 0.6. The constraints include three categories: demand conservation, capacity not exceeding limits, and version smoothing, totaling 19.
[0100] (II) Solution Results The solution took 0.5 seconds. The quota allocation results for each province are as follows: Province A 5100Gbps, Province B 4250Gbps, Province C 3400Gbps, Province D 4250Gbps, Province E 3200Gbps, and Province F 3300Gbps. The total quota change is 5500Gbps, which is consistent with the burst traffic of the entire network and all meet the version smoothing constraint.
[0101] IV. Solving linear programming at the micro level (I) Constraints and Parallel Solution: Micro-level constraints include six categories: weight normalization, multi-dimensional capacity, macro-level quota matching, version smoothing, etc., totaling 1850. A dynamic task allocation strategy is adopted, based on the computational complexity formula... The computing resources are allocated as follows: Province A is allocated 3 CPU cores, and the solution takes 7.8 seconds; other provinces are allocated 2 CPU cores each, and the solution takes 5-7 seconds.
[0102] (II) Example of solution results: The candidate nodes of domain name class B in province A are M1-M6. The old weight allocation is M1=0.30, M2=0.25, M3=0.20, M4=0.15, M5=0.05, M6=0.05; the new weight allocation is M1=0.35, M2=0.25, M3=0.20, M4=0.10, M5=0.05, M6=0.05. The weight changes are all less than 20% and are integer multiples of 0.02, which meets the constraint requirements.
[0103] V. Online Execution and Effect Verification (i) The online execution process uses a weighted intersection hash algorithm to perform weight allocation. The memory usage of a single domain regional scenario is only 120KB, which is 99.99% lower than the traditional method of 1.7MB. At the same time, through a request feature dynamic adaptation mechanism, the weights are fine-tuned according to the characteristics of different business types in e-commerce promotions to improve service targeting.
[0104] (II) Scheduling Effect Verification: The total system response time was 11.3 seconds, including 3 seconds for data preparation, 0.5 seconds for macro-level solution, 7.8 seconds for micro-level solution, and 1 second for configuration distribution. The average bandwidth deviation rate of each node was 2.8%, and the total cost of cross-provincial transmission was reduced by 25%, demonstrating excellent scheduling performance. Table 2: Comparison of Scheduling Effects in Regional Scenarios
[0105] Table 2 focuses on medium-scale regional CDN networks, verifying the adaptability and superiority of the present invention through four key indicators. The response time of 11.3 seconds is 90.6% shorter than the traditional method's 120 seconds. This is because the decision variables in regional scenarios are smaller, making the efficiency advantage of layered parallel solution more prominent, enabling rapid response to traffic surges during e-commerce promotions. The average bandwidth deviation rate of 2.8% is 80.7% lower than the traditional method's 14.5%, demonstrating the synergistic effect of precise weight allocation at the micro-level and online algorithm execution, ensuring balanced node load. The total cost of cross-provincial transmission is reduced by 24.8%, thanks to the optimized configuration of low-cost transmission between adjacent provinces within the region, controlling operating costs while meeting service quality requirements. The single-domain class memory usage of 120KB is 92.94% lower than the traditional method's 1.7MB, verifying that the weighted intersection hash algorithm maintains extremely low memory consumption across networks of different sizes. This table demonstrates that the present invention also possesses the core advantages of high efficiency, accuracy, and low cost in regional scenarios, exhibiting broad adaptability.
[0106] VI. Scalability Verification (a) The test to expand the number of domain name classes increased the number of domain name classes from 500 to 800, and the number of micro-level decision variables in Province A increased from 30,000 to 48,000, increasing the computational complexity to [missing information]. With 4 CPU cores allocated, the solution took 9.2 seconds, and the total system response time was still controlled within 15 seconds, verifying the scalability of the system.
[0107] Table 3 Comparison of Domain Name Class Extension Solving Time
[0108] Table 3 verifies the scalability of this invention through a domain name class expansion test. When the number of domain name classes increases from 500 to 800, the number of micro-level decision variables in Province A increases from 30,000 to 48,000, and the computational complexity increases from 412 to 632, an increase of approximately 53.4%. However, through a dynamic task allocation strategy, more CPU cores are allocated to high-complexity tasks, and the solution time only increases from 7.8 seconds to 9.2 seconds, an increase of 17.9%, far lower than the increase in decision variables and complexity. The total system response time increases from 11.3 seconds to 13.7 seconds, but remains within 15 seconds, meeting the business requirements for rapid updates to the scheduling strategy. This result demonstrates that the hierarchical linear programming model and dynamic resource allocation mechanism of this invention can effectively cope with the computational pressure brought about by the increase in the number of domain name classes, ensure stable solution efficiency, verify the reliability and flexibility of the system under business scale expansion scenarios, and provide technical support for the long-term expansion of CDN networks.
[0109] Reference Figure 2 This invention highlights the efficiency advantages of hierarchical parallel solution. Traditional global solutions, as the number of decision variables increases to 100,000, experience a time spike to 360 seconds, failing to handle sudden surges in traffic. This invention decomposes the global problem into macroscopic and microscopic sub-problems for parallel solution. Even with 48,000 variables, the solution time is only 9.2 seconds, and for large-scale scenarios, the total time is 11.3 seconds, both meeting second-level response requirements. The line trend shows that the solution time of this invention increases gradually, overcoming the bottleneck of traditional methods where "efficiency drops drastically with increasing variable size." Reference Figure 3 This invention verifies the stability guarantee effect of version smoothing rules. Without version smoothing, the change in domain class weight can reach 22%-35%, which can easily cause traffic fluctuations. This invention controls the weight change within 5%-12% by constraining the change in a single domain class to ≤15%, and all of these meet the granular control requirements. This effect stems from the version smoothing rules uniformly configured at the strategy layer, which simultaneously constrain macro quota and micro weight changes, avoiding cache invalidation or node overload caused by drastic policy changes, and ensuring service continuity. Reference Figure 4 This demonstrates the high-precision advantage of weighted intersection hashing. Traditional methods rely on virtual node mapping, resulting in a consistently high deviation rate of 12%-16%, which fluctuates more significantly with the increase in the number of nodes. This invention eliminates the need for virtual nodes, directly applying floating-point weights, achieving a stable deviation rate of 2.1%-3.2%, unaffected by the number of nodes. This precision stems from the continuous interval mapping design of the hash space, ensuring minimal deviation between the actual traffic proportion and the theoretical weight, thus resolving the traditional dilemma of "precision versus memory overhead being mutually exclusive." Reference Figure 5The system's scalability was verified. Based on the extended test of Example 2, the number of domain name classes increased from 500 to 1500, with the total response time only increasing from 11.3 seconds to 20.1 seconds, a gradual increase. This is attributed to the dynamic task allocation strategy at the micro-level, allocating more CPU cores to provinces with higher computational complexity, and the layered architecture ensuring that the scale of decision variables does not grow exponentially with the number of domain name classes. Compared to the traditional method's drawback of "double the number of domain name classes equals double the response time," this invention can stably support the scheduling of millions of domain names, adapting to the long-term expansion needs of CDN networks.
[0110] In summary, this invention, through a complete process of data preparation, smooth version configuration, macro-level solution, and online execution of micro-level solution, incorporates the formula calculations and technical features described in the claims, systematically solving the engineering challenges of linear programming in CDN scheduling. It achieves the technical effects of second-level response, high-precision execution, and low-cost operation in CDN networks of different sizes, and has broad application value.
[0111] The above are merely preferred embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. A method for applying linear programming to CDN scheduling, characterized in that, Includes the following steps: Data preparation: Collect the basic data required for scheduling, including bandwidth demand of various regions and operators, available capacity of physical nodes, cross-provincial transmission cost matrix, macro quota of the previous version, micro weight of the previous version, and strategy parameters for version smoothing. Smooth version configuration at the strategy level: Set version change rules uniformly at the strategy level, specifying the upper limit of the single change range and the cumulative change range of macro quotas and micro weights between versions. This rule takes effect simultaneously on the subsequent macro and micro two-level linear solutions. Macro-level linear solution: A small-scale linear programming model is constructed at the provincial and operator levels to obtain the cross-provincial carrying quota for each resource pool; the model includes demand conservation constraints, capacity non-overrun constraints, and version smoothing constraints, with the goal of minimizing the cross-provincial cost; by setting the cost of the local province to 0, the cross-provincial cost is set according to network latency detection data and settlement costs, and in conjunction with the objective function of minimizing the cross-provincial cost, the local province's demand is guided to be prioritized to be carried by local province nodes; Micro-level linear solution: Using the carrying capacity quota obtained from the macro-level as a rigid boundary, the national problem is decoupled into sub-problems that are solved in parallel by province, generating a weight vector of "domain name class - node"; Online execution: When a user request is received, the target node is selected using weighted intersection hashing based on the generated weight vector. This algorithm can perform high-precision weight allocation without configuring a large number of virtual nodes by mapping the weights to continuous intervals in the hash space.
2. The method for applying linear programming to CDN scheduling according to claim 1, characterized in that, It also includes a dynamic optimization process for the inter-provincial transmission cost matrix, which updates the cost parameters in real time using a time series analysis model. The optimization formula is: in Let be the cross-provincial transmission cost coefficient at time t. The cost coefficient at time t-1, Let be the cost weighting coefficient at time τ. Let τ be the joint deviation between network quality and settlement cost at time τ.
3. The method for applying linear programming to CDN scheduling according to claim 1, characterized in that, It also includes a fine-grained control mechanism for smoothing versioning at the macro level, setting differentiated change thresholds for the business stability requirements of different resource pools, dividing the change range according to the business stability level, with the change range being narrower for resource pools with higher stability requirements, and introducing a resource pool load pressure coefficient to dynamically adjust the change limit. The load pressure coefficient is calculated by the ratio of the current load to the available capacity, and the higher the load pressure, the higher the change limit.
4. A method for applying linear programming to CDN scheduling according to claim 1, characterized in that, In the linear solution process of the micro-level, a minimum granularity control of the weight is introduced. A minimum granularity threshold for the weight is set, and the step size of each element in the weight vector is not less than this threshold. At the same time, discretization is used to ensure that the weight value is an integer multiple of the minimum granularity threshold.
5. A method for applying linear programming to CDN scheduling according to claim 1, characterized in that, The objective function of the macro-level linear programming model is to minimize the inter-provincial cost, which is calculated by combining network latency and settlement cost; the objective function expression is: Where Z is the total cost of inter-provincial transmission, m is the total number of operators, and n is the total number of CDN resource pools. Let be the bandwidth carried by the j-th resource pool for the i-th region. This is a weighting coefficient for network latency costs, ranging from 0 to 1, and is dynamically adjusted based on the service's latency sensitivity. The unit network latency cost for transmitting data from the j-th resource pool to the i-th region is... Settle the cost per unit for cross-regional coverage when transmitting data from the j-th resource pool to the i-th region user.
6. A method for applying linear programming to CDN scheduling according to claim 1, characterized in that, During online execution, a dynamic adaptation mechanism based on request features is introduced. This mechanism analyzes five core features of user requests: business type, data size, access frequency, timeliness requirements, and security level. The weight vector is then fine-tuned in real time using the following formula: ,in This represents the weight of domain class i at node j after fine-tuning. For the original weights, The feature impact factor function, k corresponds to five core features, k=1 to 5, corresponding to business type, data size, access frequency, timeliness requirements, and security level, respectively. Let be the business and resource compatibility coefficient between domain name class i and node j on feature dimension k.
7. A method for applying linear programming to CDN scheduling according to claim 1, characterized in that, The data preparation process includes anomaly cleaning and repair steps. Pre-defined statistical rules are used to identify outliers in bandwidth demand and network quality data. Data exceeding the normal range is marked, and then repaired using interpolation. The repair formula is as follows: ,in The data at time t is the repaired data. and These are the normal data at time t-1 and t+1, respectively. and These are the timestamps for the corresponding moments, ensuring the accuracy of the input data and providing reliable support for solving the linear programming model.
8. A method for applying linear programming to CDN scheduling according to claim 1, characterized in that, The policy-level version smoothing rules also include an emergency adjustment mechanism. When a major network failure, sudden traffic surge, or policy change occurs, an emergency adjustment process is triggered to remove the version change range restrictions. At this time, the macro quota and micro weight are adaptively adjusted according to actual needs. After the adjustment, they must be restored to the range of the version smoothing rules within a set period.
9. A method for applying linear programming to CDN scheduling according to claim 1, characterized in that, Parallel processing of the micro-level linear programming model solution employs a dynamic task allocation strategy. Each province's subproblem is solved independently by a single thread. The number of CPU cores used during the solution process can be configured as needed, but cannot exceed 50% of the total CPU cores of the server hosting the thread. Simultaneously, computational resources are allocated based on the computational complexity calculated according to the number of domain name classes and nodes in each province. The computational complexity formula is as follows: ,in This represents the computational complexity value for that province. This is a complexity adjustment factor. This refers to the number of domain name classes in that province. This represents the number of nodes in that province. A weighting function for the number of domain name classes. The weight function for the number of nodes allocates more CPU cores to provinces with higher computational complexity, ensuring that the load on each computing node is evenly distributed, shortening the overall solution time, and meeting the business needs of rapid scheduling strategy updates.
Citation Information
Cited By
Scheduling method and device for workflow batch processing concurrent nodes, electronic equipment and storage medium
CN121858213A
A workflow batch processing concurrent node scheduling method and device, electronic equipment and storage medium
CN121858213B