Network scheduling method, system, device, equipment and medium
Through the intelligent load balancing model, the network device parameters are processed, and routing and load balancing strategies are generated and issued, which solves the shortcomings of software-defined wide area networks in adapting to different network scenarios and changes, and improves the flexibility and performance of network scheduling.
Patent Information
- Application Number
- CN202411785120.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-04-18
AI Technical Summary
Existing software-defined WANs are difficult to adapt to different network scenarios and changes, and rely on artificially designed algorithms and parameters, resulting in insufficient efficiency and flexibility.
By obtaining the network parameters of each network device, processing these parameters using an intelligent load balancing model, generating routing policies and load balancing policies, and issuing them to each network device to achieve intelligent interface selection and traffic allocation.
It improves the flexibility and network performance of network scheduling, and can dynamically adjust routing and load balancing strategies according to the parameters of different network devices, improving user experience and network resource utilization efficiency.
Smart Images

Figure CN119854216A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of software defined wide area network, and in particular to a network scheduling method, system, device, equipment and medium. Background Art
[0002] Software-defined WAN is a solution that uses software-defined technology to optimize and manage WANs. It can support multiple WAN access methods, and uniformly configure and monitor devices in the entire network.
[0003] In related technologies, software-defined wide area networks usually rely on manually designed algorithms and parameters, which are difficult to adapt to different network scenarios and changes.
[0004] In view of this, a network scheduling method is needed to improve the efficiency and flexibility of software-defined wide area networks. Summary of the invention
[0005] In view of this, the present invention provides a network scheduling method, which can improve the efficiency and flexibility of software-defined wide area networks.
[0006] In a first aspect, the present invention provides a network scheduling method, which is applied to a controller in a software-defined wide area network, and the software-defined wide area network also includes various network devices connected to the controller; the method includes: obtaining network parameters of each network device; processing the network parameters of each network device through an intelligent load balancing model to obtain a routing strategy and a load balancing strategy corresponding to the software-defined wide area network; and sending the routing strategy and the load balancing strategy to each network device so that each network device selects a corresponding network interface according to the routing strategy, and distributes traffic to the selected network interface according to the load balancing strategy.
[0007] In this implementation, the network parameters of each network device in the software-defined wide area network are obtained, and the network parameters are processed using an intelligent load balancing model to obtain the corresponding routing strategy and load balancing strategy, and then the routing strategy and load balancing strategy are sent to each network device, so that each network device can select the corresponding network interface according to the routing strategy, and distribute the traffic to the selected network interface according to the load strategy. In the above scheme, the corresponding routing strategy and load balancing strategy are determined according to the network parameters of the network device, which can improve the flexibility of network scheduling and optimize network performance.
[0008] In an optional embodiment, the network parameters include network service quality parameters and user demand parameters; the network service quality parameters include at least one of bandwidth, delay, packet loss and jitter; the user demand parameters include at least one of traffic, priority, SLA requirements, application response time and throughput.
[0009] In this implementation, the network parameters include network service quality parameters and user demand parameters, which can improve user experience and efficiently utilize network resources.
[0010] In an optional implementation, the network parameters of each network device are processed through an intelligent load balancing model, including: converting the network parameters into data in a target format to obtain a first parameter; determining outliers in the first parameter and deleting the outliers to obtain a second parameter; performing feature extraction on the second parameter to obtain a third parameter in a feature vector format; normalizing or normally distributing the third parameter to obtain a fourth parameter; and inputting the fourth parameter into the intelligent load balancing model for data processing.
[0011] In this embodiment, by deleting outliers in the network parameters and performing feature extraction on the network parameters without outliers to obtain a third parameter in a feature vector format, and then performing normalization or normal distribution processing on the third parameter, the data quality of the network parameters can be improved to improve the accuracy of the intelligent load balancing model.
[0012] In an optional embodiment, the intelligent load balancing model is a machine learning model trained according to sample network parameters and user evaluations; the intelligent load balancing model includes a first output head and a second output head; the first output head is used to output routing strategies; the second output head is used to output load balancing strategies; the first output head and the second output head share the data processing layer in the intelligent load balancing model.
[0013] In this embodiment, the intelligent load balancing model is a machine learning model trained according to sample network parameters and user evaluations, and includes a first output header for outputting routing strategies and a second output header for outputting load balancing strategies, which can improve the efficiency of strategy generation.
[0014] In an optional embodiment, the method also includes: obtaining a user's evaluation score; the user's evaluation score is obtained after the network device selects the corresponding network interface according to the routing strategy, and distributes the traffic to the selected network interface according to the load balancing strategy; based on the user's evaluation score, generating a corresponding loss function value to update the intelligent load balancing model.
[0015] In this embodiment, by obtaining the user's evaluation score and generating a corresponding loss function value based on the user's evaluation score to update the intelligent load balancing model, the performance of the model can be improved and the adaptability of the model can be increased.
[0016] In a second aspect, the present invention provides a software-defined wide area network intelligent load system, the system comprising: a data acquisition module for collecting network parameters from the software-defined wide area network; a model application module for processing the network parameters of each network device through an intelligent load balancing model to obtain a routing strategy and a load balancing strategy corresponding to the software-defined wide area network; the routing strategy and the load balancing strategy are sent down to each network device so that each network device selects a corresponding network interface according to the routing strategy, and distributes traffic to the selected network interface according to the load balancing strategy.
[0017] In some optional embodiments, the system also includes: a data processing module for preprocessing, cleaning and normalizing the collected data; a model training module for obtaining an intelligent load balancing model based on sample network parameters and user evaluation training; a model updating module for generating corresponding loss function values based on user evaluation scores to update the intelligent load balancing model; the user's evaluation score is obtained after the network device selects the corresponding network interface according to the routing strategy, and distributes the traffic to the selected network interface according to the load balancing strategy.
[0018] In the third aspect, the present invention provides a network scheduling device, which includes: an acquisition module for acquiring network parameters of each network device; a processing module for processing the network parameters of each network device through an intelligent load balancing model to obtain a routing strategy and a load balancing strategy corresponding to a software-defined wide area network; and a distribution module for sending the routing strategy and the load balancing strategy to each network device so that each network device selects a corresponding network interface according to the routing strategy, and distributes traffic to the selected network interface according to the load balancing strategy.
[0019] In a fourth aspect, the present invention provides a computer device, comprising: a memory and a processor, the memory and the processor are communicatively connected to each other, computer instructions are stored in the memory, and the processor executes the network scheduling method of the first aspect or any corresponding embodiment thereof by executing the computer instructions.
[0020] In a fifth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the network scheduling method of the first aspect or any corresponding embodiment thereof. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0022] Figure 1 is a flow chart of a network scheduling method according to an embodiment of the present invention;
[0023] Figure 2 is a flow chart of another network scheduling method according to an embodiment of the present invention;
[0024] Figure 3 is a schematic diagram of the system structure of a software-defined wide area network intelligent load system according to an embodiment of the present invention;
[0025] Figure 4 is a flow chart of another network scheduling method according to an embodiment of the present invention;
[0026] Figure 5 is a structural block diagram of a network scheduling device according to an embodiment of the present invention;
[0027] Figure 6 It is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. DETAILED DESCRIPTION
[0028] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0029] Software-defined WAN is a solution that uses software-defined technology to optimize and manage WAN. Software-defined WAN has four technical features. First, it supports multiple WAN access methods including MPLS (Multiprotocol Label Switching), Internet, 4G (fourth-generation mobile communication technology), 5G (fifth-generation mobile communication technology), etc., and can dynamically select the best WAN path according to different application requirements and SLA (Service Level Agreement) requirements. Second, it has centralized control and management capabilities. By providing a centralized controller and management platform, it can uniformly configure and monitor the devices and policies in the entire network; third, it integrates comprehensive value-added service functions, integrating security, acceleration, load balancing and other functions to improve the performance and reliability of the WAN; fourth, it supports cloud and virtualized deployment methods, and can be seamlessly connected with public cloud, private cloud, SaaS (Software as a Service) and other services to achieve corresponding deployment.
[0030] In related technologies, software-defined wide area networks usually use manually designed algorithms and parameters, which cannot adapt to different network scenarios and changes, and the effect is limited. For example, when manually specifying line strategies, customers are required to know the quality of each line, and they cannot handle abnormal situations such as line failures or congestion; automatic routing strategies require real-time detection and evaluation of each line, but it is difficult to consider factors such as application characteristics and priority; expert system routing strategies require customers to customize access POP (Point of Presence) points and QoS (Quality of Service) strategies, and it is difficult to take into account the utilization and cost of line resources.
[0031] The embodiment of the present invention provides a network scheduling method, which obtains the network parameters of each network device in a software-defined wide area network and processes the network parameters using an intelligent load balancing model to obtain corresponding routing strategies and load balancing strategies, and then sends the routing strategies and load balancing strategies to each network device, so that each network device can select the corresponding network interface according to the routing strategy, and distribute the traffic to the selected network interface according to the load strategy. Different routing strategies and load balancing strategies can be formulated for different network devices to improve the flexibility of network scheduling and optimize network performance.
[0032] According to an embodiment of the present invention, a network scheduling method embodiment is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0033] In this embodiment, a network scheduling method is provided, which is applied to a controller in a software-defined wide area network. The software-defined wide area network also includes various network devices connected to the controller. Figure 1 is a flow chart of a network scheduling method according to an embodiment of the present invention. Figure 1 As shown, the process includes the following steps:
[0034] Step S101, obtaining network parameters of each network device.
[0035] The network parameters that need to be obtained can be determined according to the type and purpose of each network device to determine the scope of data collection. According to the network structure and application scenarios of the software-defined wide area network, select the appropriate data collection method. If the network structure is star or tree, you can choose to collect more detailed network parameters at the central node or root node, and not collect data at other nodes or only collect more basic network parameters. If the network structure is mesh or ring, you can collect more detailed network parameters for each network device in the network.
[0036] You can choose the appropriate sampling period and sampling frequency according to the network scale and changes. If the network scale is large and the network changes quickly, you can choose a shorter sampling period and a higher sampling frequency; if the network scale is small and the changes are slow, you can choose a longer sampling period and a higher sampling frequency.
[0037] You can select the appropriate data collection type based on the network service quality and user needs. You can collect parameters such as network bandwidth and round-trip delay to obtain network service quality. You can determine whether user needs are met based on parameters such as the bandwidth of network devices and the traffic of network device ports.
[0038] According to the actual situation, corresponding data collection equipment can be deployed on the network equipment to complete the data collection work. In some optional implementations, the data collection equipment can be SD-WAN (Software-Defined Wide Area Network) equipment, SD-WAN controller, management platform, user terminal equipment, and third-party data source.
[0039] Step S102, processing the network parameters of each network device through the intelligent load balancing model to obtain the routing strategy and load balancing strategy corresponding to the software defined wide area network.
[0040] After obtaining the network parameters of each network device, the intelligent load balancing model will perform data processing on the network parameters. Data processing may include data cleaning, data conversion, and data reduction. Data cleaning may include removing outliers and duplicate values; data conversion may include data discretization and data encoding; data reduction may include data feature selection and data sampling. It can be determined by the staff according to the actual situation.
[0041] After processing the network parameters of the network devices, the intelligent load balancing model can generate routing strategies and load balancing strategies corresponding to the network devices in the software-defined LAN.
[0042] Among them, the intelligent load balancing model can be a neural network model. According to the use environment of the software-defined wide area network, a suitable neural network structure, optimization algorithm, loss function, activation function, etc. can be selected, and the model can be trained by obtaining data from the software-defined wide area network and the objective function and constraint conditions preset by the system. The objective function can be to minimize the variance of the network service quality or maximize the mean of user satisfaction, etc.; the constraint conditions can be to ensure network security or meet application SLA requirements, etc.
[0043] The neural network structure can be MLP (Multilayer Perceptron), CNN (Convolutional Neural Network), RNN (Recurrent Neural Network), etc. Different neural network structures can be used for different network parameters. In a practical application, MLP is used to implement the classification and regression of link state data and traffic feature data, CNN is used to implement efficient recognition and classification of application type data, and RNN is used to implement time series analysis and prediction of application performance data and user feedback data.
[0044] The optimization algorithm can be gradient descent, stochastic gradient descent, Adam (Adaptive Moment Estimation), etc. According to the scale and speed of the network, choose the appropriate parameter update method and step size.
[0045] The loss function can be MSE (Mean Squared Error), CE (Cross Entropy), relative entropy, etc. According to the goals and performance of the network, choose the appropriate error measurement method and optimization goal.
[0046] The activation function can be ReLU (Rectified Linear Unit), Sigmoid (Sigmoid function), Tanh (Hyperbolic Tangent function), etc. According to the nonlinearity and stability of the network, the appropriate nonlinear transformation method and gradient propagation method are selected.
[0047] Step S103, sending the routing policy and the load balancing policy to each network device, so that each network device selects a corresponding network interface according to the routing policy, and distributes traffic to the selected network interface according to the load balancing policy.
[0048] After receiving the routing strategy and load balancing strategy, the network device will select the corresponding network interface according to the routing strategy and update the routing table. Then, according to the load balancing measurement, the traffic will be distributed to the selected network interface, and traffic encapsulation, traffic decapsulation, traffic encryption, traffic decryption and other operations will be performed.
[0049] Among them, the traffic can be encapsulated before it is sent; after it is received, the traffic can be decapsulated. The encapsulation protocol can be selected by the staff according to the application scenario of the software-defined wide area network. The traffic can be encrypted before it is sent; after it is received, the traffic can be decrypted. The encryption algorithm can be selected by the staff according to the network security requirements of the software-defined wide area network.
[0050] The network scheduling method provided in this embodiment obtains the network parameters of each network device in the software-defined wide area network, and uses the intelligent load balancing model to process the network parameters to obtain the corresponding routing strategy and load balancing strategy, and then sends the routing strategy and load balancing strategy to each network device, so that each network device can select the corresponding network interface according to the routing strategy, and distribute the traffic to the selected network interface according to the load strategy. In the above scheme, the corresponding routing strategy and load balancing strategy are determined according to the network parameters of the network device, which can improve the flexibility of network scheduling and optimize network performance. By continuously collecting various types of data and performing operations such as processing, analysis, training, application, and updating, real-time perception and response to network environment and user needs can be achieved. By supporting multiple wide area network interfaces, dynamic allocation and optimization of network resources are achieved, thereby enhancing the network's adaptability and scalability.
[0051] In this embodiment, a network scheduling method is provided, which is applied to a controller in a software-defined wide area network. The software-defined wide area network also includes various network devices connected to the controller. Figure 2 is a flow chart of a network scheduling method according to an embodiment of the present invention. Figure 2 As shown, the process includes the following steps:
[0052] Step S201, obtaining network parameters of each network device.
[0053] For details, please see Figure 1 Step S101 of the illustrated embodiment will not be described in detail here.
[0054] In some optional embodiments, the network parameters include network service quality parameters and user demand parameters; the network service quality parameters include at least one of bandwidth, delay, packet loss and jitter; the user demand parameters include at least one of traffic, priority, SLA requirements, application response time and throughput.
[0055] Network parameters include network service quality parameters and user demand parameters, which can improve user experience and efficiently utilize network resources.
[0056] Step S202, the network parameters of each network device are processed through the intelligent load balancing model to obtain the routing strategy and load balancing strategy corresponding to the software defined wide area network.
[0057] For details, please see Figure 1 Step S102 of the illustrated embodiment will not be described in detail here.
[0058] In some optional implementations, the above step S202 includes:
[0059] Step S2021, converting the network parameters into data in a target format to obtain first parameters.
[0060] The target format may be selected by the staff according to the actual situation. Different intelligent load balancing models may have different target formats. The data converted into the target format is used as the first parameter. After obtaining the first parameter, the first parameter may be verified, and the first parameter may be adjusted and optimized according to the verification result.
[0061] Step S2022, determine the outliers in the first parameter, delete the outliers, and obtain the second parameter.
[0062] Among them, the outlier detection method can be set by the staff according to the actual situation. After determining the outlier in the first parameter, the outlier can be marked first. Then the outlier is deleted. The first parameter after deleting the outlier is the second parameter.
[0063] Step S2023, perform feature extraction on the second parameter to obtain a third parameter in a feature vector format.
[0064] According to the data type of the second parameter, a suitable feature extraction method is selected. The second parameter is processed according to the selected method, the target features therein are extracted, and organized into a vector form of fixed length in a certain order to obtain a third parameter in a feature vector format. Among them, PCA (Principal Component Analysis), LDA (Linear Discriminant Analysis) and other dimensionality reduction methods can be selected to convert the second parameter into a feature vector format.
[0065] Step S2024, normalize or normally distribute the third parameter to obtain a fourth parameter.
[0066] When normalizing the third parameter, select a suitable normalization method, and then process the third parameter according to the calculation formula and corresponding requirements of the selected method. During the processing, ensure that the calculation is accurate. After the calculation is completed, check whether the normalized data meets expectations. The third parameter after normalization is the fourth parameter.
[0067] When the third parameter is processed by normal distribution, a suitable normal distribution processing method can be selected according to the actual situation, and then the third parameter is sequentially substituted and processed according to the mathematical formula and rules corresponding to the method, and the processed third parameter is the fourth parameter. After the processing is completed, the fourth parameter can also be verified.
[0068] Step S2025: input the fourth parameter into the intelligent load balancing model for data processing.
[0069] The fourth parameter is input into the intelligent load balancing model, and the intelligent load balancing model performs data processing on the fourth parameter.
[0070] By removing outliers from network parameters and performing feature extraction on the network parameters without outliers to obtain a third parameter in feature vector format, and then performing normalization or normal distribution processing on the third parameter, the data quality of the network parameters can be improved to improve the accuracy of the intelligent load balancing model.
[0071] Step S2026, obtain the routing strategy and load balancing strategy corresponding to the software-defined wide area network.
[0072] The data processing result of the intelligent load balancing model is the routing strategy and load balancing strategy corresponding to the software-defined wide area network.
[0073] In some optional embodiments, the intelligent load balancing model is a machine learning model trained according to sample network parameters and user evaluations; the intelligent load balancing model includes a first output head and a second output head; the first output head is used to output routing strategies; the second output head is used to output load balancing strategies; the first output head and the second output head share the data processing layer in the intelligent load balancing model.
[0074] The machine learning model may be a neural network model. Routing strategies and load balancing strategies are obtained based on the neural network model, which can improve the accuracy and efficiency of strategy generation.
[0075] The intelligent load balancing model can receive real-time collected data and then process the data through the data processing layer. The first output head outputs the routing strategy based on the information of the data processing layer. The second output head outputs the load balancing strategy based on the information of the data processing layer.
[0076] The intelligent load balancing model is a machine learning model trained based on sample network parameters and user evaluations, and includes a first output header for outputting routing strategies and a second output header for outputting load balancing strategies, which can improve the efficiency of strategy generation.
[0077] Step S203: Send the routing policy and the load balancing policy to each network device, so that each network device selects the corresponding network interface according to the routing policy and distributes the traffic to the selected network interface according to the load balancing policy.
[0078] For details, please see Figure 1 Step S103 of the illustrated embodiment will not be described in detail here.
[0079] Step S204, obtaining the user's evaluation score; the user's evaluation score is obtained after the network device selects the corresponding network interface according to the routing policy and distributes the traffic to the selected network interface according to the load balancing policy.
[0080] Among them, it is possible to receive user evaluations, feedback, suggestions and other data from network devices, process and analyze the data, score or classify the user evaluations according to set evaluation indicators, and finally calculate the user's evaluation score.
[0081] Step S205, generating a corresponding loss function value according to the user's evaluation score to update the intelligent load balancing model.
[0082] Determine the optimization function and user evaluation score of the intelligent load balancing model; then, according to the loss function type of the intelligent load balancing model, substitute the user evaluation score into the corresponding position for calculation to obtain a specific loss function value. The loss function value can reflect the degree of difference between the current output of the intelligent load balancing model and the expected user evaluation performance, and then select a suitable optimization algorithm based on the loss function value to adjust the parameters of the model. Among them, the loss function can be a mean square error loss function, etc. The optimization algorithm can be a gradient optimization, etc.
[0083] In some optional implementations, this process may be repeated continuously, and changes in the loss function value may be observed until it is minimized.
[0084] The network scheduling method provided in this embodiment obtains the user's evaluation score and generates a corresponding loss function value based on the user's evaluation score to update the intelligent load balancing model, thereby improving the performance of the model, realizing feedback learning, and increasing the adaptability of the model.
[0085] In this embodiment, a software-defined wide area network intelligent load system is provided, and the system includes:
[0086] The data acquisition module is used to collect network parameters from the software-defined wide area network.
[0087] Among them, the data collection module can collect link status data, traffic characteristic data, application type data, application performance data and user feedback data, etc.
[0088] When the data collection module collects link status data, probes or agents can be deployed on network devices, or by cooperating with third-party service providers, each link can be detected or monitored by timing or event triggering to obtain the link's availability, bandwidth, delay, jitter, packet loss rate and other parameters. In some optional implementations, tools such as ping or tracerout are used to detect link availability and delay, and tools such as iPerf or Speedtest are used to measure link bandwidth and packet loss rate.
[0089] When the data acquisition module collects traffic characteristic data, it is possible to deploy packet capture or statistical software on the network device, or cooperate with a third-party service provider to capture or count the data flow in and out of the network device to obtain the source address, destination address, protocol type, port number, size, duration and other parameters of the traffic. In some optional implementations, tools such as Wireshark or Tcpdump are used to capture and analyze traffic characteristic data.
[0090] When the data collection module collects application type data, the DPI (Deep Packet Inspection) method can be used to identify the application type to which the traffic belongs, such as video, audio, game, office, etc., and mark its priority.
[0091] When the data collection module collects application performance data, the application's response time, throughput, packet loss rate, retransmission rate and other parameters can be obtained by actively or passively testing or monitoring the application. In some optional implementations, tools such as WebPageTest or PageSpeed Insights can be used to test and monitor the performance of web applications, and tools such as VoIP Monitor or Skype for Business can be used to test and monitor the performance of voice or video applications.
[0092] When the data collection module collects user feedback data, parameters such as user satisfaction with application performance and experience can be obtained by actively or passively surveying or evaluating users.
[0093] The model application module is used to process the network parameters of each network device through the intelligent load balancing model to obtain the routing strategy and load balancing strategy corresponding to the software-defined wide area network; the routing strategy and load balancing strategy are sent to each network device so that each network device selects the corresponding network interface according to the routing strategy, and distributes the traffic to the selected network interface according to the load balancing strategy.
[0094] The model application module can apply the intelligent load balancing model in the software-defined WAN, and can realize the intelligent scheduling and allocation of various WAN lines and various applications in the software-defined WAN to achieve the optimal network service quality.
[0095] The model application module can receive real-time data from the data acquisition module, process and analyze the data to obtain the current network status and application requirements; then input the data analysis results into the intelligent load balancing model to obtain the optimal routing strategy and load balancing strategy; then send the routing strategy and load balancing strategy to the network equipment to realize the intelligent scheduling and allocation of various WAN lines and various applications; then output the scheduling and allocation results to the user-end device to improve the user experience.
[0096] In some optional embodiments, the system further comprises:
[0097] The data processing module is used to preprocess, clean and normalize the collected data.
[0098] Among them, the data processing module can first convert the format of the collected data, convert data from different sources and different types into a unified format; then perform quality inspection on the data, delete or correct incomplete, inaccurate, inconsistent or duplicate data; after the data quality inspection, feature extraction can be performed on the data, and the data can be converted into feature vectors. Then the feature vectors are standardized or normalized, and data of different ranges and distributions are converted into the same or similar ranges and distributions. In some optional implementations, methods such as Z-score or Min-Max can be used.
[0099] By preprocessing, cleaning and normalizing the collected data, the accuracy of subsequent data analysis and model training can be improved.
[0100] The model training module is used to train the intelligent load balancing model based on sample network parameters and user evaluations.
[0101] Among them, a deep neural network can be used to build a software-defined wide area network intelligent load model, so that the model can automatically learn and optimize the routing strategy and load balancing strategy of the software-defined wide area network based on the information provided by the data analysis module and the preset objective functions and constraints of the system.
[0102] Among them, the model training can be carried out by selecting the appropriate deep neural network structure, optimization algorithm, loss function, activation function, regularization method, hyperparameters, etc., and then inputting the feature vector provided by the data processing module, the label corresponding to the feature vector, and the system preset objective function and constraints. The deep neural network structure can be a multi-layer perceptron, a convolutional neural network, a recurrent neural network, etc.; the optimization algorithm can be gradient descent, stochastic gradient descent, Adam, etc.; the loss function can be mean square error, cross entropy, relative entropy, etc.; the activation function can be ReLU, Sigmoid, Tanh, etc.; the regularization method can be L1 (L1 Regularization, L1 regularization), L2 (L2 Regularization, L2 regularization), Dropout (random inactivation), etc.; the hyperparameters can be learning rate, batch size, number of iterations, etc.
[0103] The model update module is used to generate the corresponding loss function value according to the user's evaluation score to update the intelligent load balancing model; the user's evaluation score is obtained after the network device selects the corresponding network interface according to the routing strategy and distributes the traffic to the selected network interface according to the load balancing strategy.
[0104] The model update module can receive real-time data from the data acquisition module, and process and analyze the real-time data to obtain the current network status and application requirements of the software-defined wide area network. Then it can also receive user evaluations, user feedback, user suggestions and other data from the user-end device, and process and analyze these data to obtain indicators such as user satisfaction. After obtaining new data and analyzing the data, the intelligent load balancing model can be fine-tuned according to the analysis results, as well as the objective function and constraints preset by the system. In the case of poor user satisfaction, you can choose to retrain the intelligent load balancing model to update the intelligent load balancing model. Then apply the updated intelligent load balancing model to the software-defined wide area network.
[0105] In a practical application, Figure 3 As shown, the software-defined wide area network intelligent load system includes a data acquisition module, a data processing module, a model training module, a model update module and a model application module. The data acquisition module collects various types of data from the software-defined wide area network, which can be network parameters of various network devices. The collected data is then passed to the data processing module, and the data processing model performs format conversion, quality inspection, feature extraction and standardization on the data, and inputs the processed data into the model training module and the module update module. The model training module uses a suitable neural network for training and gives the trained model to the model application module; the model application module accepts the real-time data collected by the data acquisition module, and then inputs it into the trained model to determine the best routing strategy and load balancing strategy, and sends it to the network device to achieve intelligent scheduling and allocation; the model update module is independent of the model application module. It receives the data collected by the data acquisition module to fine-tune or retrain the model, and reapplies the updated model to the software-defined wide area network.
[0106] The data collection module can also collect user evaluation data, send the user evaluation data to the model application module, and adjust the output of the model application module to adjust the routing strategy and load balancing strategy, thereby improving the user experience.
[0107] In a practical application, applying the software-defined WAN intelligent load system to the enterprise network can help the enterprise network achieve efficient, flexible and intelligent WAN management, improve network service quality and user experience, reduce network operating costs and complexity, and support cloud and virtualized deployment methods to achieve seamless connection with cloud services.
[0108] In a practical application, applying the software-defined WAN intelligent load system to cloud service providers can help cloud service providers achieve efficient, flexible and intelligent WAN services, improve the performance and reliability of the WAN, enhance the adaptability and scalability of the WAN, support multiple WAN access methods, and realize dynamic allocation and optimization of WAN resources.
[0109] In a practical application, applying the software-defined WAN intelligent load system to network operators can help network operators achieve efficient, flexible and intelligent WAN optimization, improve WAN bandwidth utilization and network efficiency, enhance WAN security and stability, support multiple WAN technologies, and realize innovation and upgrading of WAN technologies.
[0110] The software-defined wide area network intelligent load system provided in this embodiment realizes unified configuration and monitoring of the entire network's devices and policies through a centralized controller and management platform, and achieves seamless connection with cloud services through cloud and virtualized deployment methods, thereby reducing network operating costs and complexity.
[0111] In this embodiment, a network scheduling method is also provided. Figure 4 As shown, firstly, various types of data are collected from the software-defined wide area network. The data to be obtained can be determined and collected according to the type and purpose of each network device in the software-defined wide area network.
[0112] Perform preprocessing and other operations on the data. Preprocessing can include data cleaning, feature selection, feature workshop, feature standardization, etc.
[0113] Train the SD-WAN intelligent load model; select the appropriate neural network structure, optimization algorithm, loss function, activation function, etc. according to the usage environment of the SD-WAN. Then train the model based on the preprocessed data.
[0114] The model is applied to the software-defined wide area network, new data is received from the software-defined wide area network, and the new data is input into the model to obtain the load balancing strategy and routing strategy. The load balancing strategy and routing strategy are then sent to the network devices so that each network device selects the corresponding network interface according to the routing strategy and distributes the traffic to the selected network interface according to the load balancing strategy.
[0115] Update and adjust the model based on new data collected in real time; receive new data from the software-defined wide area network, process and analyze the data to obtain new network status and application requirements, and receive user evaluations, feedback, suggestions and other data from user-end devices, process and analyze the data. Then update and adjust the model based on the new data analysis results. Then reapply the updated model to the software-defined wide area network.
[0116] The method provided in this embodiment uses neural network technology to convert the routing strategy and load balancing strategy of the software-defined wide area network from manually designed algorithms and parameters to data-driven models and methods, which can realize intelligent routing and load balancing of the software-defined wide area network. And using data from multiple sources and types as input for model training and model optimization, an intelligent load balancing model based on multi-dimensional data is realized. A deep neural network is used to build an intelligent load balancing model that can automatically learn and optimize, so that the model can dynamically select the best routing path according to the network status and application requirements, and continuously update and adjust the model parameters and model structure of the intelligent load balancing model according to user feedback, thereby improving network service quality and user experience.
[0117] In this embodiment, a network scheduling device is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.
[0118] This embodiment provides a network scheduling device, such as Figure 5 As shown, including:
[0119] The acquisition module 301 is used to acquire the network parameters of each network device.
[0120] The processing module 302 is used to process the network parameters of each network device through the intelligent load balancing model to obtain the routing strategy and load balancing strategy corresponding to the software-defined wide area network.
[0121] The allocation module 303 is used to send the routing policy and the load balancing policy to each network device, so that each network device selects the corresponding network interface according to the routing policy and allocates the traffic to the selected network interface according to the load balancing policy.
[0122] In some optional embodiments, the network parameters include network service quality parameters and user demand parameters; the network service quality parameters include at least one of bandwidth, delay, packet loss and jitter; the user demand parameters include at least one of traffic, priority, SLA requirements, application response time and throughput.
[0123] In some optional implementations, the processing module 302 includes:
[0124] The conversion unit is used to convert the network parameter into data in a target format to obtain a first parameter.
[0125] The deletion unit is used to determine the abnormal value in the first parameter and delete the abnormal value to obtain the second parameter.
[0126] The extraction unit is used to perform feature extraction on the second parameter to obtain a third parameter in a feature vector format.
[0127] The processing unit is used to perform normalization processing or normal distribution processing on the third parameter to obtain a fourth parameter.
[0128] The input unit is used to input the fourth parameter into the intelligent load balancing model for data processing.
[0129] In some optional embodiments, the intelligent load balancing model is a machine learning model trained according to sample network parameters and user evaluations; the intelligent load balancing model includes a first output head and a second output head; the first output head is used to output routing strategies; the second output head is used to output load balancing strategies; the first output head and the second output head share the data processing layer in the intelligent load balancing model.
[0130] In some optional implementations, the network scheduling device further includes:
[0131] The rating acquisition module is used to obtain the user's evaluation score; the user's evaluation score is obtained after the network device selects the corresponding network interface according to the routing strategy and distributes the traffic to the selected network interface according to the load balancing strategy.
[0132] The update module is used to generate corresponding loss function values according to the user's evaluation scores to update the intelligent load balancing model.
[0133] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.
[0134] The network scheduling device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.
[0135] The embodiment of the present invention also provides a computer device having the above Figure 5 The network scheduling device shown.
[0136] See also Figure 6 , Figure 6 is a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, such as Figure 6 As shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process the instructions executed in the computer device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as, a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 6 A processor 10 is taken as an example.
[0137] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.
[0138] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.
[0139] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0140] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.
[0141] The computer device also includes an input device 30 and an output device 40. The processor 10, the memory 20, the input device 30 and the output device 40 may be connected via a bus or other means. Figure 6 The example of connecting through bus is taken in the following.
[0142] The input device 30 can receive input digital or character information, and generate key signal input related to the user settings and function control of the computer device, such as a touch screen, a keypad, a mouse, a track pad, a touch pad, an indicator bar, one or more mouse buttons, a trackball, a joystick, etc. The output device 40 may include a display device, an auxiliary lighting device (e.g., an LED) and a tactile feedback device (e.g., a vibration motor), etc. The above-mentioned display device includes but is not limited to a liquid crystal display, a light emitting diode, a display and a plasma display. In some optional embodiments, the display device can be a touch screen.
[0143] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium through a network download, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.
[0144] A part of the present invention may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should understand that the existence of the computer program instruction in a computer-readable medium includes, but is not limited to, a source file, an executable file, an installation package file, etc., and accordingly, the way in which the computer program instruction is executed by the computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium may be any available computer-readable storage medium or communication medium accessible to the computer.
[0145] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations are all within the scope defined by the appended claims.
Claims
1. A network scheduling method, characterized in that: The method is applied to a controller in a software-defined wide area network, and the software-defined wide area network also includes various network devices connected to the controller; the method includes: Obtaining network parameters of each of the network devices; The network parameters of each network device are processed by an intelligent load balancing model to obtain a routing strategy and a load balancing strategy corresponding to the software defined wide area network; The routing strategy and the load balancing strategy are sent to each of the network devices, so that each of the network devices selects a corresponding network interface according to the routing strategy, and distributes traffic to the selected network interface according to the load balancing strategy.
2. The method according to claim 1, characterized in that The network parameters include network service quality parameters and user demand parameters; the network service quality parameters include at least one of bandwidth, delay, packet loss and jitter; the user demand parameters include at least one of traffic, priority, SLA requirements, application response time and throughput.
3. The method according to claim 2, characterized in that The processing of the network parameters of each network device by using the intelligent load balancing model includes: Convert the network parameter into data in a target format to obtain a first parameter; Determine an outlier in the first parameter, and delete the outlier to obtain a second parameter; Performing feature extraction on the second parameter to obtain a third parameter in a feature vector format; Performing normalization processing or normal distribution processing on the third parameter to obtain a fourth parameter; The fourth parameter is input into the intelligent load balancing model for data processing.
4. The method according to any one of claims 1 to 3, characterized in that: The intelligent load balancing model is a machine learning model trained according to sample network parameters and user evaluations; the intelligent load balancing model includes a first output head and a second output head; the first output head is used to output the routing strategy; the second output head is used to output the load balancing strategy; the first output head and the second output head share the data processing layer in the intelligent load balancing model.
5. The method according to claim 4, characterized in that The method further comprises: Obtaining a user's evaluation score; the user's evaluation score is obtained after the network device selects a corresponding network interface according to the routing strategy and distributes traffic to the selected network interface according to the load balancing strategy; According to the evaluation score of the user, a corresponding loss function value is generated to update the intelligent load balancing model.
6. A software-defined wide area network intelligent load system, characterized in that: The system comprises: A data acquisition module, used to collect network parameters from the software-defined wide area network; The model application module is used to process the network parameters of each network device through an intelligent load balancing model to obtain the routing strategy and load balancing strategy corresponding to the software-defined wide area network; the routing strategy and load balancing strategy are sent to each network device so that each network device selects the corresponding network interface according to the routing strategy, and distributes the traffic to the selected network interface according to the load balancing strategy.
7. The system according to claim 6, characterized in that The system further comprises: Data processing module, used to preprocess, clean and normalize the collected data; A model training module, used to train the intelligent load balancing model according to sample network parameters and user evaluations; A model update module is used to generate a corresponding loss function value according to the user's evaluation score to update the intelligent load balancing model; the user's evaluation score is obtained after the network device selects the corresponding network interface according to the routing strategy and distributes the traffic to the selected network interface according to the load balancing strategy.
8. A network scheduling device, characterized in that: The device comprises: An acquisition module is used to obtain network parameters of each network device; A processing module, used to process the network parameters of each network device through an intelligent load balancing model to obtain a routing strategy and a load balancing strategy corresponding to the software defined wide area network; The allocation module is used to send the routing strategy and load balancing strategy to each network device, so that each network device selects a corresponding network interface according to the routing strategy and allocates traffic to the selected network interface according to the load balancing strategy.
9. A computer device, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the network scheduling method according to any one of claims 1 to 5 by executing the computer instructions.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the network scheduling method according to any one of claims 1 to 5.