A virtual network function resource management framework based on multi-core servers

By adopting the virtual network function resource management framework in the virtual network environment of multi-core servers, using wavelet transform and Bayesian network for resource demand analysis and prediction, dynamically adjusting resource allocation, solving the problem of insufficient or excessive resource allocation in the existing technology, and achieving more efficient and stable resource management.

CN118981375BActive Publication Date: 2025-05-13PRIFIC (SHENZHEN) INFORMATION TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411023992.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-29
Publication Date
2025-05-13
Estimated Expiration
2044-07-29

AI Technical Summary

Technical Problem

The prior art is difficult to effectively manage resource allocation in a virtual network environment of multi-core servers, resulting in insufficient or over-resource allocation, affecting system operation efficiency and cost control, and lacking in-depth identification and prediction capabilities for resource use fluctuations, making it difficult to cope with rapid changes in resource demand.

Method used

A virtual network functional resource management framework based on multi-core servers is adopted, including resource usage analysis module, resource demand prediction module, dynamic resource configuration module and server performance monitoring module. Through wavelet transformation, Bayesian networks predict resource demand, dynamically adjust resource allocation, and monitor performance in real time to optimize resource configuration.

Benefits of technology

It improves the dynamic response ability of resource allocation, accurately predicts resource requirements, optimizes resource allocation, improves the operating efficiency and stability of the system, reduces costs, and enhances the ability to adapt to changing needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118981375B_ABST
    Figure CN118981375B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of resource management technology, and specifically to a virtual network function resource management framework based on a multi-core server, the framework comprising a resource usage analysis module, a resource demand prediction module, a dynamic resource configuration module and a server performance monitoring module. The present invention, by adopting wavelet transform, provides in-depth identification of periodicity and peak demand in data analysis, can mine subtle fluctuations and pattern changes in data, and greatly improves the dynamic response capability of resource allocation. The Bayesian network introduces the principle of probability statistics in predicting resource demand, and can more accurately process and predict the uncertainty and complexity of resource demand. It combines real-time data for resource allocation, optimizes the real-time allocation of resources, and improves the adaptability to changing demands. The real-time analysis and adjustment of performance monitoring ensures the continuous optimization of server performance, thereby maintaining the stability of multi-core servers and improving operating efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of resource management, and in particular to a virtual network function resource management framework based on a multi-core server. Background Art

[0002] In a multi-core server environment, resource management is particularly critical because processors, memory, storage space, and network bandwidth need to be efficiently allocated to multiple applications and services running on the server. This field uses algorithms and scheduling strategies to optimize resource utilization, reduce latency, and improve overall system performance and reliability. With the popularization of virtualization technology and cloud computing, resource management is increasingly involving the allocation and management of virtual resources, including virtual machines, containers, and virtual network functions.

[0003] Among them, the virtual network function resource management framework of multi-core servers is a technical framework specially designed to efficiently manage and optimize the resources of virtual network functions (VNFs) on multi-core servers, such as virtualized routers, firewalls, and load balancers. It is necessary to dynamically allocate computing and network resources on multi-core hardware. Its purpose is to ensure that each virtual network function can obtain the required resources through scheduling algorithms and resource allocation strategies, while maintaining the efficiency and responsiveness of the system operation. Its purpose is to improve the operational efficiency of data centers, reduce costs, and improve the reliability and security of services.

[0004] Existing technologies rely on fixed and traditional resource allocation strategies in resource management, which leads to insufficient or excessive resource allocation in a dynamically changing virtual network environment, affecting the system's operating efficiency and cost control. Traditional technologies lack the ability to deeply identify and predict fluctuations in resource usage, and are unable to effectively respond to rapid changes in resource demand. In terms of performance monitoring, existing technologies are based on static thresholds, which limits the flexibility and accuracy of monitoring, and are unable to identify and adapt to complex or unexpected performance issues in a timely manner, resulting in slow response in resource management and system maintenance, thereby affecting server performance. Summary of the invention

[0005] The purpose of the present invention is to solve the shortcomings in the prior art and to propose a virtual network function resource management framework based on a multi-core server.

[0006] In order to achieve the above object, the present invention adopts the following technical solution: a virtual network function resource management framework based on a multi-core server, the framework comprising:

[0007] The resource usage analysis module summarizes and sorts the data based on the collected multi-core server usage data, including CPU resources and memory resources, and uses wavelet transform to identify periodic usage patterns and peak demands, and generate periodic usage patterns;

[0008] The resource demand prediction module uses the Bayesian network based on the periodic usage pattern to predict the server CPU resource and network bandwidth requirements, calculate the resource demand increase and decrease trend, and perform resource matching through the difference analysis between current and predicted demand to generate a resource matching profile;

[0009] The dynamic resource configuration module analyzes the distribution status of virtual machine instance resources based on the resource matching profile, identifies the resource allocation imbalance area, dynamically adjusts the CPU and memory resource allocation based on the current operation data of the server, optimizes the use efficiency of virtual network functions, and generates configuration optimization information;

[0010] Based on the configuration optimization information, the server performance monitoring module monitors the virtual network function of the multi-core server, records performance data, performs real-time performance analysis, adjusts the monitoring process according to the performance analysis results, and generates a virtual network monitoring adjustment record.

[0011] The present invention is improved in that the step of summarizing and sorting the data is specifically as follows:

[0012] Based on the collected multi-core server usage data, including CPU and memory usage data, the data is preliminarily sorted using the formula:

[0013] S initial =sort(D)

[0014] Get the preliminary sorting result S initial , where D represents the original data set and sort() is the sorting function;

[0015] Based on the preliminary sorting results, outlier detection is performed to remove data points that are not within a reasonable range, using the formula:

[0016] S clean =S initial [(S initial ≥L)∧(S initial ≤U)]

[0017] Get the sorted result S after cleaning clean , where S initial is the preliminary sorting result, L and U represent the lower and upper limits of the reasonable range of the data respectively;

[0018] The sorting results after cleaning are summarized and sorted using the formula:

[0019]

[0020] Get the inductive sorting result S final , where S clean,i is the i-th element in the sorted result after cleaning, wi is the weight of the ith data point, and n is the total number of data points.

[0021] The present invention is improved in that the step of acquiring the periodic usage pattern is specifically as follows:

[0022] Based on the summarized sorting results, wavelet transform is used to identify the basic periodic characteristics, using the formula:

[0023]

[0024] Get the basic periodic pattern P base , where S final is the inductive sorting result, a c and b c are the scale and location parameters in the wavelet transform, u c and t are time variables;

[0025] Based on the underlying periodic pattern, the peak demand is determined using the formula:

[0026]

[0027] Determine the local maximum and obtain the peak demand data D peaks , where P base is the underlying periodic pattern, t is the time variable, YesP base The first derivative with respect to time t is YesP base The second derivative with respect to time t;

[0028] Based on the peak demand data, the basic periodic pattern is optimized using the formula:

[0029]

[0030] The periodic usage pattern PZ is obtained, where P base is the basic periodic pattern, αs t is the adjustment coefficient at time point t, βs is the attenuation factor, D peaks is the peak demand data, is an exponential decay function, and t is the time variable.

[0031] The present invention is improved in that the calculation steps of the resource demand increase and decrease trend are specifically as follows:

[0032] Based on the periodic usage pattern and combined with historical resource data, a Bayesian network model is established using the formula:

[0033]

[0034] Get the conditional probability table, where B ij represents the conditional probability between nodes i and j, X ik is the state of node i at the kth data point, X jk is the state of node j at the kth data point, and n is the total number of data points;

[0035] Using the Bayesian network and the current periodic pattern, future resource demand forecasting is performed using the formula:

[0036]

[0037] Get the resource demand matrix, where Q i (t) represents the resource demand predicted by the i-th node at time t, m is the total number of nodes in the network, and P j (t) is the value of the jth factor in the periodic usage pattern at time point t, B ij represents the conditional probability between nodes i and j;

[0038] Based on the resource demand matrix, the difference between consecutive time points is calculated to determine the demand trend, using the formula:

[0039] ΔQ i (t) = Q i (t)-Q i (t-1)

[0040] Get the resource demand increase and decrease trend ΔQ i (t), where Q i (t) represents the resource demand predicted for the i-th node at time t, Q i (t-1) is the predicted resource demand of the i-th node at time t-1.

[0041] The present invention is improved in that the step of obtaining the resource matching profile is specifically as follows:

[0042] Based on the resource demand increase and decrease trends, determine the difference between current and forecasted demand using the formula:

[0043] DR(t)=α y (Q(t)-R current (t))+γ y

[0044] The demand difference DR(t) is obtained, where Q(t) is the resource demand predicted at time t, R current (t) is the current resource usage at the same time point, α y is the adjustment coefficient, γ y is a constant bias term;

[0045] Based on the differences in demand, a resource matching process is developed using the formula:

[0046]

[0047] The resource matching configuration MR(t) is obtained, where DR(t) is the demand difference, max(DR) represents the maximum absolute value of the difference at a time point, and δ y is a constant;

[0048] Based on the resource matching configuration, the judgment formula is used:

[0049]

[0050] The resource matching profile SR(t) is obtained, where MR(t) is the resource matching configuration.

[0051] The present invention is improved in that the step of identifying the resource allocation imbalance area is specifically:

[0052] Based on the resource matching profile, the CPU and memory usage data of the virtual machine instances are collected, and the resource utilization of each instance is calculated using the formula:

[0053]

[0054] Get the virtual machine instance resource usage U i , where CPU i and MEM i Indicates the current CPU and memory usage of instance i. CPU total and MEM total Indicates the total CPU and memory resources allocated to the instance;

[0055] The resource utilization rate of the virtual machine instance is analyzed to calculate the balance of resource distribution using the formula:

[0056]

[0057] Get the resource allocation imbalance indicator ZB, where U i,CPU and U i,MEM is the CPU and memory usage of instance i, and is the average CPU and memory usage of the instance, and n is the total number of virtual machine instances;

[0058] Based on the resource allocation imbalance indicator, the area exceeding the target threshold is identified as the key imbalance area, using the judgment formula:

[0059] KE={i|ZB i >θ}

[0060] Get the key imbalance area KE, where ZB i is the ith resource allocation imbalance indicator, and θ is the imbalance threshold.

[0061] The present invention is improved in that the step of obtaining the configuration optimization information is specifically as follows:

[0062] Analyze the demand of each instance in the imbalanced area and calculate the demand difference using the formula:

[0063] ΔBR i =R desired,i -R current,i

[0064] Get the multi-region resource demand difference ΔBR i , where R desired,i represents the ideal resource requirement, R current,i Represents current resource usage;

[0065] Based on the resource demand difference, resource allocation is dynamically adjusted, including CPU and memory configuration, using the formula:

[0066] BA i =R current,i +β H ·ΔBR i

[0067] Get the updated resource configuration BA i , where ΔBR i is the resource requirement difference, R current,i is the current resource usage, β H is the sensitivity adjustment parameter;

[0068] Based on the updated resource configuration, the utilization efficiency of the virtual network function is optimized to obtain configuration optimization information.

[0069] The present invention is improved in that the step of obtaining the virtual network monitoring adjustment record is specifically as follows:

[0070] Based on the configuration optimization information, configure the monitoring tool of the virtual network, continuously capture network traffic and performance indicators, calculate the load of multiple nodes in the network, locate performance bottlenecks, and use the formula:

[0071]

[0072] Get the monitoring data set, where EL i represents the weighted average load of node i, et ij is the flow of node i at time j, ew j is the weight coefficient of time j, and n is the number of measurement time points;

[0073] The monitoring data set is analyzed in real time to identify performance degradation trends and bottleneck areas, using the formula:

[0074]

[0075] Get the performance analysis results, where EB represents the performance bottleneck index, EL i is the i-th node load, is the average value of node load, m is the number of nodes;

[0076] Based on the performance analysis result, the monitoring process is adjusted, and a virtual network monitoring adjustment record is obtained.

[0077] Compared with the prior art, the advantages and positive effects of the present invention are:

[0078] In the present invention, by adopting wavelet transform, in-depth identification of periodicity and peak demand is provided in data analysis, which can mine subtle fluctuations and pattern changes in data, greatly improving the dynamic response capability of resource allocation. Bayesian network introduces probability statistics principle in predicting resource demand, which can more accurately process and predict the uncertainty and complexity of resource demand, and combines real-time data for resource allocation, optimizes the real-time allocation of resources, and improves the adaptability to changing demand. Real-time analysis and adjustment of performance monitoring ensure continuous optimization of server performance, thereby maintaining the stability of multi-core servers and improving operating efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0079] Figure 1 is a system flow chart of the present invention;

[0080] Figure 2 A flowchart for summarizing and sorting data in the present invention;

[0081] Figure 3 is a flow chart for obtaining the periodic usage mode in the present invention;

[0082] Figure 4 It is a flow chart for calculating the trend of resource demand increase and decrease in the present invention;

[0083] Figure 5 A flowchart for obtaining a resource matching profile in the present invention;

[0084] Figure 6 A flowchart for identifying resource allocation imbalance areas in the present invention;

[0085] Figure 7 A flowchart for obtaining configuration optimization information in the present invention;

[0086] Figure 8 This is a flowchart for obtaining the virtual network monitoring adjustment record in the present invention. DETAILED DESCRIPTION

[0087] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0088] In the description of the present invention, it should be understood that the terms "length", "width", "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside", "outside", etc., indicating positions or positional relationships, are based on the positions or positional relationships shown in the accompanying drawings, and are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as limiting the present invention. In addition, in the description of the present invention, the meaning of "multiple" is two or more, unless otherwise clearly and specifically defined.

[0089] Example

[0090] See also Figure 1 The present invention provides a technical solution: a virtual network function resource management framework based on a multi-core server includes:

[0091] The resource usage analysis module summarizes and sorts the data based on the collected multi-core server usage data, including CPU resources and memory resources, and uses wavelet transform to identify periodic usage patterns and peak demands, and generate periodic usage patterns;

[0092] The resource demand prediction module uses Bayesian networks based on periodic usage patterns to predict server CPU resource and network bandwidth requirements, calculate resource demand increase and decrease trends, and perform resource matching through difference analysis between current and predicted demand to generate a resource matching profile.

[0093] The dynamic resource configuration module analyzes the distribution status of virtual machine instance resources based on the resource matching profile, identifies areas of unbalanced resource allocation, dynamically adjusts CPU and memory resource allocation based on the current operation data of the server, optimizes the efficiency of virtual network function usage, and generates configuration optimization information;

[0094] The server performance monitoring module monitors the virtual network functions of multi-core servers based on configuration optimization information, records performance data, performs real-time performance analysis, adjusts the monitoring process according to the performance analysis results, and generates virtual network monitoring adjustment records.

[0095] Periodic usage patterns include peak usage periods, resource consumption patterns, and periodic change characteristics; resource matching profiles include resource coverage, demand forecast accuracy results, and resource idle rates; configuration optimization information includes resource configuration efficiency, load balancing level, and configuration adjustment frequency; virtual network monitoring adjustment records include monitoring strategy update information, performance optimization information, and adjustment response effects.

[0096] See also Figure 2 , the steps to summarize and sort the data are as follows:

[0097] Based on the collected multi-core server usage data, including CPU and memory usage data, the data is preliminarily sorted using the formula:

[0098] S initial =sort(D)

[0099] Get the preliminary sorting result S initial , where D represents the original data set, sort() is a sorting function, specifically a function in the numpy library, which can sort the data;

[0100] Based on the preliminary sorting results, outlier detection is performed to remove data points that are not within a reasonable range using the formula:

[0101] S clean =S initial [(S initial ≥L)∧(S initial ≤U)]

[0102] Get the sorted result S after cleaning clean , where S initial is the preliminary sorting result, L and U represent the lower and upper limits of the reasonable range of the data respectively;

[0103] The sorted results after cleaning are summarized and sorted using the formula:

[0104]

[0105] Get the inductive sorting result S final , where S clean,i is the i-th element in the sorted result after cleaning, w i is the weight of the ith data point, and n is the total number of data points.

[0106] Suppose there is a set of CPU usage data:

[0107] D=[40%,90%,20%,70%,50%]

[0108] Using basic sorting, we get:

[0109] Sinitial =sort([40%,90%,20%,70%,50%])

[0110] =[20%,40%,50%,70%,90%]

[0111] The sort results represent the order of CPU usage from lowest to highest.

[0112] Using the above ranking results, let L be 25% and U be 85%:

[0113] S clean =[20%, 40%, 50%, 70%, 90%][(20% ≥ 25%) ∧(20% ≤ 85%), (40% ≥ 25%) ∧(40% ≤ 85%), …]

[0114] =[40%,50%,70%]

[0115] The results removed abnormal data below 25% and above 85%, and retained the normal range data in the middle.

[0116] Assume w i is 1, using the above cleaned data, assuming that all data points have the same weight, that is, w = [1,1,1],

[0117]

[0118] This weighted average represents the average CPU usage.

[0119] See also Figure 3 , the specific steps for obtaining the periodic usage pattern are:

[0120] Based on the inductive sorting results, wavelet transform is used to identify the basic periodic characteristics, using the formula:

[0121]

[0122] Get the basic periodic pattern P base , where S final is the inductive sorting result, a c and b c are the scale and location parameters in the wavelet transform, u c and t are time variables, du c Represents the variable u c Differential elements when performing integration;

[0123] Based on the underlying periodic pattern, peak demand is determined using the formula:

[0124]

[0125] Determine the local maximum and obtain the peak demand data D peaks , where P base is the underlying periodic pattern, t is the time variable, YesP base The first derivative with respect to time t is used to find the local maximum (peak) point, YesP base For the second derivative at time t, a negative value indicates that P base Reaching a local maximum, d represents the differential operation, and dt represents an infinitesimal change in time t;

[0126] Based on the peak demand data, the basic periodic pattern is optimized using the formula:

[0127]

[0128] The periodic usage pattern PZ is obtained, where P base is the basic periodic pattern, αs t is the adjustment coefficient at time point t, βs is the attenuation factor, D peaks is the peak demand data, is an exponential decay function for peaks Nearby Adjustment P base , t is the time variable.

[0129] Assume a c =2 and b c =5;

[0130] Assume S final (u c ) in u c =0 to u c =10, it increases linearly, that is, S final (u c )=0.1u c .

[0131] Using the above wavelet function and S final The expression is:

[0132]

[0133] Assume that t does not affect u c The integral can be solved numerically. Assuming the integral result is 1.5, it means that at time point t, the baseline intensity of the periodic pattern is 1.5.

[0134] Set the derivative to 0 and find t=3 and t=7 as local maxima, assuming the second derivative is negative.

[0135] Let αs t=0.5, βs=0.1;

[0136] D peaks =3 and 7.

[0137] For each peak value t:

[0138]

[0139] At t=3 and 7, PZ(t) increases significantly, indicating the key peak points of the periodic pattern.

[0140] See also Figure 4 , the calculation steps of resource demand increase and decrease trend are as follows:

[0141] Based on the periodic usage pattern and combined with historical resource data, a Bayesian network model is established using the formula:

[0142]

[0143] Get the conditional probability table, where B ij represents the conditional probability between nodes i and j, X ik is the state of node i at the kth data point, X jk is the state of node j at the kth data point, and n is the total number of data points;

[0144] Using the Bayesian network, combined with the current periodic pattern, future resource demand forecasting is performed using the formula:

[0145]

[0146] Get the resource demand matrix, where Q i (t) represents the resource demand predicted by the i-th node at time t, m is the total number of nodes in the network, and P j (t) is the value of the jth factor in the periodic usage pattern at time point t, B ij represents the conditional probability between nodes i and j;

[0147] Based on the resource demand matrix, calculate the difference between consecutive time points and determine the demand trend using the formula:

[0148] ΔQ i (t) = Q i (t)-Q i (t-1)

[0149] Get the resource demand increase and decrease trend ΔQ i (t), where Q i (t) represents the resource demand predicted for the i-th node at time t, Q i(t-1) is the predicted resource demand of the i-th node at time t-1.

[0150] Assume there are two nodes (CPU and bandwidth), the data at three time points are as follows:

[0151] CPU Status X 1k :

[0152] [1,0,1]

[0153] Bandwidth Status X 2k :

[0154] [1,1,0]

[0155] Calculate B 12 (CPU dependence on bandwidth):

[0156]

[0157] This means that there is a 50% probability that bandwidth demand is dependent on the high CPU demand state.

[0158] Assume that at a certain time t, the periodic usage patterns P(t) of CPU and bandwidth are 0.7 and 0.3 respectively;

[0159] Use the above B 12 =0.5, predicted bandwidth demand Q 2 (t):

[0160] Q 2 (t) = B 12 ×P 1 (t) = 0.5 × 0.7 = 0.35

[0161] It means that at time t, the bandwidth demand is predicted to be 35%.

[0162] Assume that the bandwidth demand Q at the previous time point t-1 is 2 (t-1) is 0.30

[0163] Calculate the change in demand at time point t:

[0164] ΔQ 2 (t) = Q 2 (t)-Q 2 (t-1) = 0.35-0.30 = 0.05

[0165] It means that the bandwidth demand increases by 5% from t-1 to t.

[0166] See also Figure 5 , the specific steps for obtaining the resource matching profile are:

[0167] Based on the trend of resource demand increase and decrease, determine the difference between current and forecasted demand, using the formula:

[0168] DR(t)=α y (Q(t)-R current (t))+γ y

[0169] The demand difference DR(t) is obtained, where Q(t) is the resource demand predicted at time t, R current (t) is the current resource usage at the same time point, α y is the adjustment coefficient, controlling the sensitivity of the difference between the forecast and the actual, γ y is a constant bias term used to adjust for baseline bias;

[0170] Based on the differences in demand, a resource matching process is developed using the formula:

[0171]

[0172] The resource matching configuration MR(t) is obtained, where DR(t) is the demand difference, max(DR) represents the maximum absolute value of the difference at a time point, and δ y is a constant, avoiding the denominator being zero;

[0173] Based on resource matching configuration, use the judgment formula:

[0174]

[0175] The resource matching profile SR(t) is obtained, where MR(t) is the resource matching configuration.

[0176] Assume Q(t) is 120;

[0177] R current (t) is 100;

[0178] α y =1 and γ y = 2 to adjust the model's sensitivity and baseline bias.

[0179] Calculate DR(t):

[0180] DR(t)=1.5×(120-100)+2=1.5×20+2=32

[0181] This means that at time point t, the predicted demand is 32 higher than the current demand;

[0182] Continue to use DR(t) = 32, assuming δ y =0.1 and max(DR)=50.

[0183] Calculate MR(t):

[0184]

[0185] This shows that at time point t, approximately 20.44 resources need to be reduced to match the forecast demand;

[0186] Since -20.44 is less than 0, SR(t) is increasing, which means that resources should be increased to align the forecasted demand with the current supply.

[0187] See also Figure 6 ,The identification steps of the resource allocation imbalance region are as follows:

[0188] Based on the resource matching profile, collect the CPU and memory usage data of the virtual machine instances and calculate the resource utilization of each instance using the formula:

[0189]

[0190] Get the virtual machine instance resource usage U i , where CPU i and MEM i Indicates the current CPU and memory usage of instance i. CPU total and MEM total Indicates the total CPU and memory resources allocated to the instance;

[0191] Analyze the resource usage of virtual machine instances and calculate the balance of resource distribution using the formula:

[0192]

[0193] Get the resource allocation imbalance indicator ZB, where U i,CPU and U i,MEM is the CPU and memory usage of instance i, and is the average CPU and memory usage of the instance, and n is the total number of virtual machine instances;

[0194] Based on the resource allocation imbalance indicator, the area exceeding the target threshold is identified as the key imbalance area, using the judgment formula:

[0195] KE={i|ZB i >θ}

[0196] Get the key imbalance area KE, where ZB i is the ith resource allocation imbalance indicator, and θ is the imbalance threshold.

[0197] Assume that a virtual machine instance i has 2GHz of CPU usage, 4GHz of total allocation, and 8GB of memory usage, with a total allocation of 16GB.

[0198] Substituting the values:

[0199]

[0200] Indicates that the CPU and memory usage of the VM instance is 50%.

[0201] Assume there are three instances, and the resource usage rates are (0.5, 0.5), (0.3, 0.7), and (0.6, 0.4) respectively;

[0202] Calculate the average usage:

[0203]

[0204] Calculate the imbalance index:

[0205]

[0206] The value ZB≈0.209 indicates a deviation from the average usage, with lower values ​​indicating a smaller imbalance;

[0207] If the imbalance threshold θ is set to 0.2, then any ZB i Instances with values ​​> 0.2 will be considered as critical imbalanced regions, since ZB of all instances i ≈0.209, so all instances are considered critical regions.

[0208] See also Figure 7 , the specific steps for obtaining configuration optimization information are:

[0209] Analyze the demand for each instance in the imbalanced area and calculate the demand difference using the formula:

[0210] ΔBR i =R desired,i -R current,i

[0211] Get the multi-region resource demand difference ΔBR i , where R desired,i represents the ideal resource requirement, R current,i Represents current resource usage;

[0212] Based on the difference in resource requirements, dynamically adjust resource allocation, including CPU and memory configuration, using the formula:

[0213] BA i =R current,i +β H ·ΔBRi

[0214] Get the updated resource configuration BA i , where ΔBR i is the resource requirement difference, R current,i is the current resource usage, β H It is a sensitivity adjustment parameter, which is used to control the speed and amplitude of resource adjustment;

[0215] Based on the updated resource configuration, the utilization efficiency of the virtual network function is optimized to obtain configuration optimization information.

[0216] Assume that VM instance i ideally requires 10 GB of memory, currently uses 8 GB, and the ideal CPU is 4 GHz, currently uses 3 GHz;

[0217] Poor memory requirements:

[0218] ΔMEM i =10-8=2GB

[0219] Poor CPU requirements:

[0220] ΔCPU i =4-3=1GHz

[0221] This means that instance i needs an additional 2 GB of memory and 1 GHz of CPU to achieve the ideal configuration.

[0222] Using the above memory requirement difference and assuming β H =0.5:

[0223] Adjusted memory:

[0224]

[0225] Adjusted CPU:

[0226]

[0227] This means that the memory of instance i will be increased to 9GB and the CPU to 3.5GHz to better meet demand but avoid over-provisioning.

[0228] See also Figure 8 , the specific steps for obtaining the virtual network monitoring adjustment record are:

[0229] Based on the configuration optimization information, configure the monitoring tool of the virtual network, continuously capture the network traffic and performance indicators, calculate the load of multiple nodes in the network, locate the performance bottleneck, and use the formula:

[0230]

[0231] Get the monitoring data set, where EL i represents the weighted average load of node i, et ij is the flow of node i at time j, ew j is the weight coefficient of time j, and n is the number of measurement time points;

[0232] Perform real-time analysis on monitoring data sets to identify performance degradation trends and bottleneck areas, using the formula:

[0233]

[0234] Get the performance analysis results, where EB represents the performance bottleneck index, EL i is the i-th node load, is the average value of node load, m is the number of nodes;

[0235] Based on the performance analysis results, the monitoring process is adjusted and the virtual network monitoring adjustment record is obtained.

[0236] Suppose there is a network node collecting traffic data at three different time points:

[0237] et i1 =100MB;

[0238] et i2 =150MB;

[0239] et i3 =200MB;

[0240] Assume that 1 =1,ew 2 =2,ew 3 =3.

[0241] Calculating EL i :

[0242]

[0243] The results show that the average load of node i is 166.67MB, reflecting the weighted average of traffic in terms of time and importance.

[0244] Assume there are three nodes with load data, the EL calculated previously 1 =166.67MB, the other two nodes EL 2 =150MB, EL 3 =180MB.

[0245] calculate

[0246]

[0247] Calculate EB:

[0248]

[0249] The performance bottleneck index is 9.41, reflecting the degree of load imbalance between nodes.

[0250] The above are only preferred embodiments of the present invention and are not intended to limit the present invention in other forms. Any technician familiar with the profession may use the technical contents disclosed above to change or modify them into equivalent embodiments with equivalent changes and apply them to other fields. However, any simple modification, equivalent change and modification made to the above embodiments based on the technical essence of the present invention without departing from the technical solution of the present invention still falls within the protection scope of the technical solution of the present invention.

Claims

1. A virtual network function resource management framework based on a multi-core server, characterized in that: The framework includes: The resource usage analysis module summarizes and sorts the data based on the collected multi-core server usage data, including CPU resources and memory resources, and uses wavelet transform to identify basic periodic characteristics, determine peak demand, and optimize the basic periodic pattern to generate a periodic usage pattern; The steps of summarizing and sorting the data are specifically as follows: Based on the collected multi-core server usage data, including CPU and memory usage data, the data is preliminarily sorted using the formula: Get preliminary sorting results ,in, represents the original dataset, is a sorting function; Based on the preliminary sorting results, outlier detection is performed to remove data points that are not within a reasonable range, using the formula: Get the sorted results after cleaning ,in, is the preliminary sorting result. and Respectively represent the lower and upper limits of the reasonable range of data; The sorting results after cleaning are summarized and sorted using the formula: Get the inductive sorting results ,in, It is the first one in the sorting result after cleaning. elements, It is The weight of the data point, is the total number of data points; The steps of obtaining the periodic usage pattern are specifically as follows: Based on the summarized sorting results, wavelet transform is used to identify the basic periodic characteristics, using the formula: Get the basic periodic pattern ,in, is the inductive sorting result, and are the scale and location parameters in the wavelet transform, and is a time variable; Based on the underlying periodic pattern, the peak demand is determined using the formula: Determine local maxima and obtain peak demand data ,in, is the basic periodic pattern, is the time variable, yes About Time The first derivative of yes For time The second derivative of Based on the peak demand data, the basic periodic pattern is optimized using the formula: Get periodic usage pattern ,in, is the basic periodic pattern, It's time point The adjustment factor, is the attenuation factor, is the peak demand data, is an exponential decay function, is a time variable; The resource demand prediction module uses the Bayesian network based on the periodic usage pattern to predict the server CPU resource and network bandwidth requirements, calculate the resource demand increase and decrease trend, and perform resource matching through the difference analysis between current and predicted demand to generate a resource matching profile; The steps for obtaining the resource matching profile are specifically as follows: Based on the resource demand increase and decrease trends, determine the difference between current and forecasted demand using the formula: Get the demand difference ,in, It's time Forecasted resource requirements, is the current resource usage at the same point in time, is the adjustment factor, is a constant bias term; Based on the differences in demand, a resource matching process is developed using the formula: Get resource matching configuration ,in, It’s the difference in demand. Indicates the maximum absolute value of the difference in time points, is a constant; Based on the resource matching configuration, the judgment formula is used: Get resource matching overview ,in, It is resource matching configuration; The dynamic resource configuration module analyzes the distribution status of virtual machine instance resources based on the resource matching profile, identifies the resource allocation imbalance area, dynamically adjusts the CPU and memory resource allocation based on the current operation data of the server, optimizes the use efficiency of virtual network functions, and generates configuration optimization information; Based on the configuration optimization information, the server performance monitoring module monitors the virtual network function of the multi-core server, records performance data, performs real-time performance analysis, adjusts the monitoring process according to the performance analysis results, and generates a virtual network monitoring adjustment record.

2. The virtual network function resource management framework based on a multi-core server according to claim 1, characterized in that: The specific steps for calculating the resource demand increase and decrease trend are: Based on the periodic usage pattern and combined with historical resource data, a Bayesian network model is established using the formula: Get the conditional probability table, where Representation Node and The conditional probability between Is a node In the The state of the data point, Is a node In the The state of the data point, is the total number of data points; Using the Bayesian network and the current periodic pattern, future resource demand forecasting is performed using the formula: Get the resource demand matrix, where Indicates at time No. The resource requirements predicted by the node, is the total number of nodes in the network, It's at the time In the periodic usage pattern of The value of the factor, Representation Node and The conditional probability between Based on the resource demand matrix, the difference between consecutive time points is calculated to determine the demand trend, using the formula: Get the trend of resource demand increase and decrease ,in, Indicates at time No. The resource requirements predicted by the node, It's time No. The predicted resource demand of each node.

3. The virtual network function resource management framework based on a multi-core server according to claim 1, characterized in that: The steps for identifying the resource allocation imbalance area are specifically as follows: Based on the resource matching profile, the CPU and memory usage data of the virtual machine instances are collected, and the resource utilization of each instance is calculated using the formula: Get the resource usage of virtual machine instances ,in, and Representation instance Current CPU and memory usage, and Indicates the total CPU and memory resources allocated to the instance; The resource utilization rate of the virtual machine instance is analyzed to calculate the balance of resource distribution using the formula: Get resource allocation imbalance indicator ,in, and is an instance CPU and memory usage, and is the average CPU and memory usage of the instance, is the total number of virtual machine instances; Based on the resource allocation imbalance indicator, the area exceeding the target threshold is identified as the key imbalance area, using the judgment formula: Get the key imbalance area ,in, It is resource allocation imbalance indicator, is the imbalance threshold.

4. The virtual network function resource management framework based on a multi-core server according to claim 1, characterized in that: The steps for obtaining the configuration optimization information are specifically as follows: Analyze the demand of each instance in the imbalanced area and calculate the demand difference using the formula: Get the difference in resource requirements in multiple regions ,in, represents the ideal resource demand, Represents current resource usage; Based on the resource demand difference, resource allocation is dynamically adjusted, including CPU and memory configuration, using the formula: Get the updated resource configuration ,in, The resource requirements are poor. is the current resource usage, is the sensitivity adjustment parameter; Based on the updated resource configuration, the utilization efficiency of the virtual network function is optimized to obtain configuration optimization information.

5. The virtual network function resource management framework based on multi-core server according to claim 1, characterized in that: The steps for obtaining the virtual network monitoring adjustment record are specifically as follows: Based on the configuration optimization information, configure the monitoring tool of the virtual network, continuously capture network traffic and performance indicators, calculate the load of multiple nodes in the network, locate performance bottlenecks, and use the formula: Get the monitoring data set, where Representative Node The weighted average load, Is a node In time of traffic, It's time The weight coefficient of To measure the number of time points; The monitoring data set is analyzed in real time to identify performance degradation trends and bottleneck areas, using the formula: The performance analysis results are obtained, among which, Represents the performance bottleneck index, It is Node load, is the average value of the node load, is the number of nodes; Based on the performance analysis result, the monitoring process is adjusted, and a virtual network monitoring adjustment record is obtained.

Citation Information

Patent Citations

  • Systems and methods for initializing allocations of transport streams based on historical data

    US20130007191A1

  • Method for determining network congestion and link capacities

    US7248564B1