Network congestion early warning method, device, equipment, storage medium and program product
By training a network congestion model for unsupervised learning and cluster analysis, the technical challenges of network congestion early warning were solved, enabling accurate prediction and early warning of future network conditions, thus improving network resource utilization and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA MOBILE M2M
- Filing Date
- 2024-06-03
- Publication Date
- 2026-05-12
AI Technical Summary
Existing technologies cannot effectively warn of network congestion, leading to network resource shortages, packet loss, and latency issues, which negatively impact user experience.
Unsupervised learning is performed by training a network congestion model, and cluster analysis is conducted using winning neurons to predict future network states and provide early warnings. This includes data preprocessing, connection weight adjustment, and max pooling, combined with an autoregressive model for accurate prediction.
It enables early warning of network congestion, alleviates network congestion, and improves user experience.
Smart Images

Figure CN118827560B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the technical field of network detection, and in particular relates to a network congestion early warning method, device, equipment, storage medium and program product. Background Technology
[0002] Currently, with the development of internet technology, the internet has gradually become an indispensable part of people's daily lives.
[0003] As the number of internet users gradually increases, network resources are impacted, causing network congestion and affecting people's use of the internet.
[0004] Network congestion refers to a persistent network overload state. Due to limited bandwidth, storage space, and processor capabilities, user demand for network resources exceeds the inherent processing capacity. When network congestion occurs, resource shortages, packet loss, and delays occur during data transmission. Therefore, there is an urgent need for a network congestion early warning method, device, equipment, storage medium, and software product. Summary of the Invention
[0005] This application provides a network congestion early warning method, apparatus, device, storage medium, and program product, which can provide early warning of network congestion, improve network congestion, and enhance user experience.
[0006] On the one hand, embodiments of this application provide a network congestion early warning method, the method including:
[0007] Obtain current network performance parameters for different devices in multiple different regions;
[0008] The current network performance parameters are input into the network congestion model, and the following steps are performed on the current network performance parameters to obtain the future network state corresponding to the network performance parameters:
[0009] In the network congestion model, the connection weight value of each neuron in the network congestion model is calculated to obtain the optimal connection weight value, and the neuron corresponding to the optimal connection weight value is taken as the winning neuron.
[0010] Cluster the winning neurons to obtain a neighborhood neuron set;
[0011] Adjust the connection weight values of each neighborhood neuron in the neighborhood neuron set to obtain multiple future network states corresponding to the current network performance parameters;
[0012] The future network states are classified according to a preset time period to obtain multiple classified future network states;
[0013] Max pooling is performed on the multiple future network states after classification to obtain the future network state for each future time period.
[0014] Optionally, obtaining the current network performance parameters includes:
[0015] Raw network performance parameters are collected using preset network tools. These raw network performance parameters include bandwidth utilization, packet loss rate, packet latency, and traffic volume.
[0016] The original network performance parameters are preprocessed to obtain the current network performance parameters. The data preprocessing includes at least one of the following processing methods: standardization, missing value handling, and normalization.
[0017] Optionally, before calculating the connection weight values of each neuron in the network congestion model to obtain the optimal connection weight values, the method further includes:
[0018] The connection weight values of each neuron in the network congestion model are initialized according to the preset connection weight values to obtain the initialized connection weight values.
[0019] Optionally, before calculating the connection weight values of each neuron in the network congestion model to obtain the optimal connection weight values, the method further includes:
[0020] Obtain the initial learning rate;
[0021] The initial learning rate is adjusted by decaying according to a preset learning rate decay rate to obtain an adaptive learning rate.
[0022] Optionally, calculating the connection weight value of each neuron in the network congestion model to obtain the optimal connection weight value for the current network performance parameter includes:
[0023] The current network performance parameters are transformed into vectors to obtain the first feature vector of the current network performance.
[0024] Get the initial connection weight value;
[0025] The similarity value of each neuron is obtained by squared the difference between the first feature vector and the initial connection weight value.
[0026] Each similarity value is compared, and the smallest similarity value is taken as the best similarity value. The connection weight value corresponding to the best similarity value is taken as the best connection weight value.
[0027] Optionally, clustering the winning neurons to obtain a neighborhood neuron set includes:
[0028] Obtain the initial impact range of the network congestion model;
[0029] Calculate the first distance value between each neuron and the winning neuron;
[0030] The influence distance value is calculated based on the initial influence range, the preset time step, the preset decay coefficient, and the first distance value. The influence distance value is the distance between the winning neuron and the neighboring neurons that have an influence.
[0031] The neighborhood is determined based on the winning neuron and the influence distance value, and the neighborhood includes a region with the winning neuron as the center and the influence distance value as the radius;
[0032] All neurons within the neighborhood are considered as neighborhood neurons, forming a neighborhood neuron set.
[0033] Optionally, adjusting the connection weight values for each of the neighborhood neurons in the neighborhood neuron set includes:
[0034] Obtain the adaptive learning rate, the first feature vector, and the current connection weights of the current neuron;
[0035] The weight change is calculated based on the adaptive learning rate, the influence distance value, the first feature vector, and the connection weight value.
[0036] The current connection weight value of each neuron is adjusted according to the weight change to obtain the future network state mapped by the current neuron.
[0037] Optionally, after performing max pooling on the classified future network states to obtain the future network states for each future time period, the method further includes:
[0038] Obtain the first historical network status value of the first preset historical period of the multiple different regions and different devices, wherein the first historical network status value includes the network status value of the current device in the first preset historical period.
[0039] Calculate the autoregressive coefficients of the historical network state values based on the first historical network state;
[0040] Obtain the first historical white noise, which includes white noise from the first preset historical period of the current device;
[0041] Calculate the moving average coefficient of the white noise based on the first historical white noise;
[0042] Obtain the current network state value and white noise error term;
[0043] The network state value at future time points is calculated based on the autoregressive coefficient, moving average coefficient, current network state value, and white noise error value.
[0044] Optionally, after calculating the network state value at future times based on the autoregressive coefficients, moving average coefficients, current network state value, and white noise error value, the method further includes:
[0045] If the number of preset warning thresholds is one, and the network status value at a future time is greater than the preset warning threshold, the network status value at that future time will be used as warning information and sent to a preset terminal; or...
[0046] When there are multiple preset warning thresholds, multiple warning intervals are divided according to the preset warning thresholds;
[0047] The warning level for the future time is determined based on the network status value at the future time and multiple warning intervals;
[0048] The warning level and the network status value at the future time are used as warning information and sent to a preset terminal.
[0049] On the other hand, embodiments of this application provide a network congestion early warning device, the device comprising:
[0050] The acquisition module is used to acquire the current network performance parameters of different devices in multiple different regions;
[0051] Input module: Input the current network performance parameters into the network congestion model, and perform the following steps on the current network performance parameters to obtain the future network state corresponding to the network performance parameters:
[0052] The input module includes:
[0053] The calculation unit is used to calculate the connection weight value of each neuron in the network congestion model for the current network performance parameters, obtain the optimal connection weight value, and take the neuron corresponding to the optimal connection weight value as the winning neuron.
[0054] Clustering unit, used to cluster the winning neurons to obtain a neighborhood neuron set;
[0055] An adjustment unit is used to adjust the connection weight value of each of the neighborhood neurons in the neighborhood neuron set to obtain multiple future network states corresponding to the current network performance parameters.
[0056] A classification unit is used to classify the future network states according to a preset time period to obtain multiple classified future network states.
[0057] The pooling unit is used to perform max pooling on the multiple future network states after classification to obtain the future network state for each future time period.
[0058] In another aspect, embodiments of this application provide an electronic device, the device comprising:
[0059] Processor and memory storing computer program instructions;
[0060] When the processor executes the computer program instructions, it implements the network congestion early warning method as described in the first aspect.
[0061] In another aspect, embodiments of this application provide a computer storage medium storing computer program instructions, which, when executed by a processor, implement the network congestion warning method as described in the first aspect.
[0062] In another aspect, embodiments of this application provide a computer program product in which instructions, when executed by a processor of an electronic device, cause the electronic device to perform the network congestion warning method as described in the first aspect.
[0063] The network congestion early warning method, apparatus, device, and computer storage medium of this application embodiment can perform unsupervised learning on the current network performance parameters through a trained network congestion model. The network congestion model performs competitive learning based on the current network performance parameters to obtain winning neurons. The winning neurons are mapped to the current network performance parameters, and cluster analysis is performed through the winning neurons to obtain a set of neighboring neurons. Each neighboring neuron in the set of neighboring neurons outputs the network state for a future hour based on the current network performance parameters, thereby achieving prediction of the network state for that time period, enabling early warning of network congestion, improving network congestion phenomena, and enhancing user experience. Attached Figure Description
[0064] To more clearly illustrate the technical solutions of the embodiments of this application, the accompanying drawings used in the embodiments of this application will be briefly introduced below. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0065] Figure 1 This is a flowchart illustrating a network congestion early warning method provided in one embodiment of this application;
[0066] Figure 2 This is a system architecture diagram of a network congestion model provided in one embodiment of this application;
[0067] Figure 3 This is a simplified structural diagram of a network congestion model provided in one embodiment of this application;
[0068] Figure 4 This is a flowchart illustrating a method for obtaining adaptive learning rate according to an embodiment of this application;
[0069] Figure 5 This is a flowchart illustrating a competition method provided in one embodiment of this application;
[0070] Figure 6 This is a flowchart illustrating a clustering method provided in one embodiment of this application;
[0071] Figure 7 This is a schematic diagram of the structure of a network congestion early warning device provided in another embodiment of this application;
[0072] Figure 8 This is a schematic diagram of the structure of an electronic device provided in another embodiment of this application. Detailed Implementation
[0073] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.
[0074] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.
[0075] To address the problems in the prior art, embodiments of this application provide a network congestion early warning method, apparatus, device, storage medium, and program product.
[0076] In this embodiment, the network congestion model trained is used to perform unsupervised learning on the current network performance parameters. The network congestion model then engages in competitive learning based on the current network performance parameters to obtain winning neurons. These winning neurons are mapped to the current network performance parameters, and cluster analysis is performed on them to obtain a set of neighboring neurons. Each neighboring neuron in this set outputs the network state for a future hour based on the current network performance parameters, thereby enabling prediction of the network state for that time period. This allows for early warning of network congestion, mitigating network congestion and improving user experience.
[0077] The network congestion method provided in the embodiments of this application will be introduced first below.
[0078] Figure 1 A flowchart illustrating a network congestion method according to an embodiment of this application is shown. Figure 1 As shown, the network congestion method provided in this application embodiment includes the following steps S101-S107:
[0079] S101: Obtain the current network performance parameters of different devices in multiple different regions.
[0080] In some embodiments, network congestion is typically reflected through network performance parameters. These parameters are then used to perform cluster analysis to predict the network status of the current device over future time periods.
[0081] In a specific embodiment, S101 may specifically include:
[0082] Use preset network tools to collect raw network performance parameters, including bandwidth utilization, packet loss rate, packet latency, and traffic volume.
[0083] The original network performance parameters are preprocessed to obtain the current network performance parameters. The data preprocessing includes at least one of the following methods: standardization, missing value handling, and normalization.
[0084] In this embodiment, when collecting network performance parameters, in order to ensure that the collected original network performance parameters cover multiple aspects of network performance and obtain more comprehensive information, it is necessary to use a variety of preset network tools to collect network performance parameters from multiple aspects, as shown in Table 1 below. Table 1 lists the network tools corresponding to each network performance parameter.
[0085] Table 1 Comparison of Network Performance Parameters and Preset Network Tools
[0086]
[0087] Meanwhile, when using the aforementioned network tools to collect multiple network performance parameters, in order to ensure the diversity of the collected data, it is possible to collect data in different regions, collect network performance parameters of multiple different devices in one region, or collect network performance parameters of different devices in different regions.
[0088] It is worth noting that when collecting raw network performance parameters, it is necessary to record the timestamps of the raw network performance parameters in order to facilitate the prediction of network status in the future.
[0089] In one specific embodiment, when collecting network performance parameters using the aforementioned preset network tools, these network performance parameters are typically expressed in percentage, milliseconds, or bytes, resulting in inconsistent numerical units.
[0090] Therefore, in order to facilitate the analysis of these raw network performance parameters, data preprocessing is performed on the raw network performance parameters. As an example, data preprocessing includes at least one of standardization, missing value handling, and normalization.
[0091] Among them, standardization processing involves using standardization tools to adjust values of different ranges to the same scale; missing value processing involves checking and processing any missing values, and using interpolation, padding or deletion to complete the missing value processing; normalization processing involves using normalization methods to ensure that all feature values are between 0 and 1.
[0092] In one specific embodiment, the original network performance parameters are sequentially standardized, missing value processed, and normalized to obtain the current network performance parameters, so as to make it easier to predict the future network state based on the network performance parameters.
[0093] S102, input the current network performance parameters into the network congestion model, and perform the following steps on the current network performance parameters to obtain the future network state corresponding to the network performance parameters.
[0094] In some embodiments, the network congestion model is an unsupervised learning neural network of self-organizing map networks, used to map high-dimensional data to a low-dimensional space while preserving the topological results of the data. The network congestion model has clustering, classification, and dimensionality reduction capabilities and is commonly used in data visualization and pattern recognition.
[0095] In this embodiment, as Figure 2 As shown, Figure 2The system architecture diagram for the network congestion model is as follows: The input layer takes the collected current network performance parameters as input, and then the network layer undergoes self-organizing mapping and pooling. The network congestion model is continuously iterated through the current network performance parameters. During the continuous iteration, the parameters of the network congestion model are optimized. Finally, the output layer outputs the future network state. If the future network state is network congestion, a warning message is output.
[0096] In one specific embodiment, such as Figure 2 As shown, the traffic monitor collects traffic volume and bandwidth utilization, the Ping test tool collects packet loss rate and packet latency, and the network probe tracks packet latency.
[0097] In one specific embodiment, the output layer of the network congestion model can also be a competition layer. In the output layer, the number of neurons is typically the number of clusters, representing each cluster to be formed. The output layer involves a 4x4 two-dimensional plane, meaning it has 16 neurons. Its simplified structural diagram is shown below. Figure 3 As shown.
[0098] S103, In the network congestion model, calculate the connection weight value of each neuron in the network congestion model for the current network performance parameters, obtain the optimal connection weight value, and take the neuron corresponding to the optimal connection weight value as the winning neuron.
[0099] In one specific embodiment, to more quickly predict the future network state based on the current network performance parameters, before S103, the following may also be included:
[0100] The connection weights of each neuron in the network congestion model are initialized according to the preset connection weights to obtain the initialized connection weights.
[0101] In this embodiment, the connection weights between each neuron and the input layer in the network congestion model need to be initialized according to preset connection weight values to obtain initialized connection weights. As an example, the preset connection weight values can be random values to make each neuron different, that is, the i-th connection weight value vector is: W i =(W i,1 W i,2 W i,3 W i,4 ).
[0102] In one specific embodiment, see Figure 4 To quickly train the network congestion model, the following steps S401-S402 can be included before S103:
[0103] S401, Obtain the initial learning rate;
[0104] S402, adjusts the initial learning rate according to the preset learning rate decay rate to obtain the adaptive learning rate.
[0105] As an example, determining the adaptive learning rate requires adjusting the initial learning rate according to a preset learning rate decay rate to obtain the adaptive learning rate for the current network congestion model. It's worth noting that each adaptive learning network model has a corresponding initial learning rate, which can be obtained from the parameters of that model. After obtaining the adaptive learning rate, continuously adjusting it during the iterative process of network congestion allows for faster adaptation to the current network performance parameters, thus maintaining the model's stability in the later stages of training.
[0106] In one specific embodiment, the adaptive learning rate is determined by the following formula (1):
[0107] η(t)=η0 exp(-t / τ η (1)
[0108] Where η(t) is the learning rate, which gradually decreases as time t increases, η0 is the initial learning rate, and τ η This is the preset learning rate decay rate.
[0109] In one embodiment, see Figure 5 S103 may specifically include the following steps S1031-S1034:
[0110] S1031, transform the current network performance parameters into vectors to obtain the first feature vector of the current network performance.
[0111] S1032, obtain the initial connection weight value.
[0112] S1033, the squared difference between the first feature vector and the initial connection weight value is used to obtain the similarity value of each neuron.
[0113] S1034, compare the size of each similarity value, take the smallest similarity value as the best similarity value, and take the connection weight value corresponding to the best similarity value as the best connection weight value.
[0114] In this embodiment, when inputting the current network performance parameters into the network congestion model, the current network performance parameters need to be vectorized to facilitate the calculation by the network congestion model.
[0115] Taking current network performance parameters including bandwidth utilization, packet loss rate, packet latency, and traffic size as an example; the first feature vector of each current network performance parameter can be represented as: X i =(x i,1 ,x i,2 ,xi,3 ,x i,4 ), where x i,1 The first characteristic is bandwidth utilization, x. i,2 The second characteristic is the packet loss rate, x. i,3 The third characteristic is: packet delay; x i,4 The first characteristic is the flow rate.
[0116] In this embodiment, after converting the collected current network performance parameters into a first feature vector, the connection weight value of each neuron is calculated using the following formula (2):
[0117]
[0118] Where, x i Let w be the first eigenvector. i,j represents the connection weight value of the current neuron, and D represents the number of neurons.
[0119] In this embodiment, in the network congestion model, neurons compete with each other in each training iteration to determine which connection weight value is the optimal connection weight value.
[0120] The connection weight value of each neuron is calculated using the formula (2) above. The similarity between the input layer and each output layer is calculated using Euclidean similarity or cosine similarity to obtain the connection weight value of each neuron. Then, by comparing the magnitudes of each connection weight value, the connection weight value of the neuron with the smallest similarity value is selected as the optimal weight value, and the corresponding neuron is selected as the winning neuron. At this time, the input sample corresponding to the winning neuron is the one that best represents the current input sample. By selecting the one that best represents the current input sample, the future network state output by the network congestion model can be closer to reality, which has reference value.
[0121] S104, cluster the winning neurons to obtain the neighborhood neuron set.
[0122] In one specific embodiment, see Figure 6 S104 may include the following steps S1041-S1045:
[0123] S1041, Obtain the initial impact range of the network congestion model.
[0124] S1042, calculate the first distance value between each neuron and the winning neuron.
[0125] S1043, calculate the influence distance value based on the initial influence range, preset time steps, preset decay coefficient and first distance value. The influence distance value is the distance between the winning neuron and the neighboring neurons that have an influence.
[0126] S1044, determine the neighborhood based on the winning neuron and the influence distance value. The neighborhood includes the region with the winning neuron as the center and the influence distance value as the radius.
[0127] S1045, all neurons in the neighborhood are taken as neighborhood neurons, forming a neighborhood neuron set.
[0128] In one specific embodiment, since the network congestion model adopts a self-organizing network neural model, under the influence of the cooperation mechanism, neurons collectively form clusters of input data during the process of adjusting connection weights. Similar input samples will cause adjacent neurons to form network congestion clusters in the feature space, thereby realizing the learning of the topological structure of the input data.
[0129] In this embodiment, due to the cooperative mechanism, cluster analysis is performed on the current network performance parameters. Therefore, it is necessary to first define the range of the neighborhood. The range of the neighborhood is determined by the winning neuron and the influence distance value. Thus, when the self-organizing network neural model is selected, the initial influence range has been determined.
[0130] As an example, the influence distance value can be determined by formula (3), which is as follows:
[0131] T(t)=exp(-D2 / (2σ(t)2)) (3)
[0132] Where T(t) is the influence distance value, D is the first distance value, and σ(t) is a parameter that controls the size of the neighborhood.
[0133] In this embodiment, the influence distance value of the neighborhood is calculated by the above formula (3). The influence distance value is determined by the neighborhood function. The neighborhood function determines the range of neurons that are adjusted during the process of adjusting the connection weight value. As the distance from the winning neuron increases, the neighborhood function value gradually decreases, so that only neurons that are closer to the winning neuron will be adjusted. As an example, the neighborhood function is usually a decay function, and the neighborhood function can be a Gaussian function.
[0134] The shape of the Gaussian function causes neurons closer to the winning neuron in the neighborhood to be more affected, while neurons farther away are less affected. The neighborhood function can help the network congestion model to make local adjustments to the input data during training, thereby forming an ordered mapping of the input data topology.
[0135] It is worth noting that σ(t) is calculated using the following formula (4):
[0136] σ(t)=σ0 exp(-t / τ0) (4)
[0137] Where σ0 is the initial influence range, t is the preset time step, and τ0 is the preset attenuation coefficient.
[0138] In this embodiment, after determining the influencing distance value and the winning neuron, the neighborhood is divided with the winning neuron as the center and the influencing distance value as the radius. Then, all neurons in the neighborhood are taken as neighborhood neurons, and all neighborhood neurons are collected to obtain the neighborhood neuron set.
[0139] By obtaining the neighborhood neuron set, we can identify the neurons whose connection weights need to be adjusted, and make more targeted adjustments to the connection weights of neurons, thereby accelerating the output of the network congestion model and improving the accuracy and efficiency of the network congestion model in clustering analysis of current network performance parameters.
[0140] S105, adjust the connection weight values of each neighborhood neuron in the neighborhood neuron set to obtain multiple future network states corresponding to the current network performance parameters.
[0141] In one embodiment, S105 may specifically include:
[0142] Obtain the adaptive learning rate, the first feature vector, and the current connection weights of the current neuron;
[0143] The weight change is calculated based on the adaptive learning rate, the influence distance value, the first feature vector, and the connection weight value.
[0144] The current connection weights of each neuron are adjusted based on the weight changes to obtain the future network state mapped by the current neuron.
[0145] In this embodiment, when determining the connection weight values that need to be adjusted through the neighborhood neuron set, it is necessary to calculate the change in weights based on the adaptation learning rate and the influence distance value. Since the distance between each neuron and the winning neuron is not uniform, the corresponding weight change is also not the same. Therefore, it is necessary to calculate the weight change of each neuron based on the influence distance value, the adaptation learning rate, the first feature vector, and the connection weight value, so that the future network state output by the output layer of the network congestion model can be closer to reality. This enables the network congestion model to adapt to the topology of the input data by adjusting the connection weight values, so that the neurons can better map the spatial distribution of the input data. At the same time, by adjusting the connection weight values, the winning neuron and the neighborhood neurons can better match the input data.
[0146] As a specific example, the weight change is calculated as follows:
[0147] Δw =η(t)*T (t)*(x - w) (5)
[0148] Where Δw represents the weight change, η(t) represents the adaptive learning rate, T(t) represents the influence distance value, X is the first feature vector, and w is the connection weight value of the current neuron.
[0149] In this embodiment, adjusting the connection weights is also the adaptation phase of the network congestion model. During the adaptation phase, through repeated iterations and adjustments to the connection weights, the network congestion model gradually self-organizes and forms an ordered mapping of the input data, enabling more accurate prediction of future network conditions.
[0150] It is worth noting that the current network performance parameters are continuously trained iteratively in the network congestion model. During the iteration process, through continuous interaction of competition, cooperation, and adaptation, the network congestion model gradually self-organizes and forms a mapping to the input data. It continuously adjusts the connection weight values, enabling the network congestion model to adjust itself in terms of topology to better reflect the characteristic distribution of the input data. This allows neurons to self-organize and cluster the input data, with each neuron corresponding to a part of the input space, so that the state of the neurons reflects the network characteristics, thereby achieving real-time detection and early warning of the network state.
[0151] S106, classify the future network states according to a preset time period to obtain multiple classified future network states.
[0152] In this embodiment, when mapping the current network performance parameters to the output layer, it is necessary to classify the future network state output by each neuron according to a preset time period, that is, to classify the future network state according to time with one hour as a unit, so as to obtain the classified future network state, so as to realize that there is a future network state for each preset time period, so as to realize the prediction of the network state in the future.
[0153] S107, perform max pooling on the classified future network states to obtain the future network states for each future time period.
[0154] In one embodiment, the future network state is max-pooled within a unit of time, with each hour as a unit. That is, the state of the neuron with the maximum value is selected as the future network state within that unit of time, thus obtaining the future network state over 7*24 hours.
[0155] In some embodiments, after S107, the following steps may also be included:
[0156] Acquire the first historical network status value of a first preset historical period for multiple different regions and different devices. The first historical network status value includes the network status value of the current device in the first preset historical period.
[0157] Calculate the autoregressive coefficients of the historical network state values based on the first historical network state;
[0158] Obtain the first historical white noise, which includes the white noise of the first preset historical period of the current device;
[0159] The moving average coefficient of white noise is calculated based on the first historical white noise.
[0160] Obtain the current network state value and white noise error term;
[0161] The network state value at future time points is calculated based on the autoregressive coefficient, moving average coefficient, current network state value, and white noise error value.
[0162] In this embodiment, since the network state is periodic, the SARIMA (Seasonal Autoregressive Integrated Moving Average) model is used to analyze the network trend of the future network state again.
[0163] The SARIMA model uses formula (6) to describe the linear relationship between time series data y'(t) and its past p-period values, white noise error, and past q-period values.
[0164]
[0165] Among them, Y t ` is the network state value at time t, φi represents the autoregressive relationship between the bandwidth congestion state values at the past i time points, θj represents the moving average relationship between the past j white noise errors, and ∈t is the white noise error term, representing the random part that the model fails to explain.
[0166] It is worth noting that φi is calculated by inputting the first historical network state value into the seasonal autoregressive integral moving average model, and θj is calculated by inputting the first historical white noise into the seasonal autoregressive integral moving average model.
[0167] In one specific embodiment, after calculating the future network state value using the above-described seasonal autoregressive integral moving average model, the following steps are also included:
[0168] If there is only one preset warning threshold, and the network status value at a future time exceeds the preset warning threshold, the network status value at that future time will be used as warning information and sent to the preset terminal; or...
[0169] When there are multiple preset warning thresholds, multiple warning intervals are divided according to the preset warning thresholds;
[0170] The warning level for the future moment is determined based on the network status value at the future moment and multiple warning intervals;
[0171] The warning level and the network status value at a future time are used as warning information and sent to the preset terminal.
[0172] In this embodiment, comparing the future network state value with a preset warning threshold allows for a more accurate determination of whether network congestion will occur in the future. That is:
[0173] If a future network status value exceeds a preset warning threshold, it indicates that network congestion will occur at the time and under the network conditions corresponding to the future network status value. In this case, a warning message is generated based on the network status value and sent to a preset terminal. The preset terminal is the smart terminal of relevant personnel or system administrators. The message can be sent via email, SMS or other communication methods to prepare for future network congestion and improve user experience.
[0174] When there are multiple preset warning thresholds, such as three: a first warning threshold, a second warning threshold, and a third warning threshold, the first, second, and third warning thresholds gradually increase. When the future network state value is less than the first warning threshold, it is at the first warning level. When the future network state value is greater than or equal to the first warning threshold and less than the second warning threshold, it is at the second warning level. When the future network state value is greater than or equal to the second warning threshold and less than the third warning threshold, it is at the third warning level. When the future network state value is greater than the third warning threshold, it is at the fourth warning level. As an example, the network congestion status at the first, second, third, and fourth warning levels increases progressively, that is, no network congestion occurs at the first warning level, and severe network congestion occurs at the fourth warning level.
[0175] This application provides a network congestion early warning device 700, referring to... Figure 7 The scenario test script generation device 700 includes:
[0176] The acquisition module 701 is used to acquire the current network performance parameters of different devices in multiple different areas;
[0177] Input module 702: Input the current network performance parameters into the network congestion model, and perform the following steps on the current network performance parameters to obtain the future network state corresponding to the network performance parameters:
[0178] Input module 702 includes:
[0179] The computing unit 7021 is used to calculate the connection weight value of each neuron in the network congestion model for the current network performance parameters, obtain the optimal connection weight value, and take the neuron corresponding to the optimal connection weight value as the winning neuron.
[0180] Clustering unit 7022 is used to cluster the winning neurons to obtain a set of neighboring neurons;
[0181] The adjustment unit 7023 is used to adjust the connection weight value of each neighborhood neuron in the neighborhood neuron set to obtain multiple future network states corresponding to the current network performance parameters.
[0182] The classification unit 7024 is used to classify future network states according to a preset time period to obtain multiple classified future network states;
[0183] Pooling unit 7025 is used to perform max pooling on multiple future network states after classification to obtain the future network state for each future time period.
[0184] As an optional implementation, the acquisition module 701 is also specifically used for:
[0185] Use preset network tools to collect raw network performance parameters, including bandwidth utilization, packet loss rate, packet latency, and traffic volume.
[0186] The original network performance parameters are preprocessed to obtain the current network performance parameters. The data preprocessing includes at least one of the following methods: standardization, missing value handling, and normalization.
[0187] As an optional implementation, the acquisition module 701 is also specifically used for:
[0188] The connection weights of each neuron in the network congestion model are initialized according to the preset connection weights to obtain the initialized connection weights.
[0189] As an optional implementation, the computing unit 7021 is also specifically used for:
[0190] Obtain the initial learning rate;
[0191] The initial learning rate is adjusted by decaying according to the preset learning rate decay rate to obtain the adaptive learning rate.
[0192] As an optional implementation, the computing unit 7021 is also specifically used for:
[0193] The current network performance parameters are transformed into vectors to obtain the first feature vector of the current network performance.
[0194] Get the initial connection weight value;
[0195] The similarity value of each neuron is obtained by squared the difference between the first feature vector and the initial connection weight value.
[0196] Each similarity value is compared, and the smallest similarity value is taken as the best similarity value. The connection weight value corresponding to the best similarity value is taken as the best connection weight value.
[0197] As an optional implementation, the clustering unit 7022 is also specifically used for:
[0198] Obtain the initial impact range of the network congestion model;
[0199] Calculate the first distance value between each neuron and the winning neuron;
[0200] The influence distance value is calculated based on the initial influence range, preset time steps, preset decay coefficient, and first distance value. The influence distance value is the distance between the winning neuron and the neighboring neurons that have an influence.
[0201] The neighborhood is determined based on the winning neuron and the influence distance value. The neighborhood includes the region centered on the winning neuron and with the influence distance value as the radius.
[0202] All neurons within the neighborhood are considered as neighborhood neurons, forming a neighborhood neuron set.
[0203] As an optional implementation, the adjustment unit 7023 is also specifically used for:
[0204] Obtain the adaptive learning rate, the first feature vector, and the current connection weights of the current neuron;
[0205] The weight change is calculated based on the adaptive learning rate, the influence distance value, the first feature vector, and the connection weight value.
[0206] The current connection weights of each neuron are adjusted based on the weight changes to obtain the future network state mapped by the current neuron.
[0207] As an optional implementation, the pooling unit 7024 is also specifically used for:
[0208] Acquire the first historical network status value of a first preset historical period for multiple different regions and different devices. The first historical network status value includes the network status value of the current device in the first preset historical period.
[0209] Calculate the autoregressive coefficients of the historical network state values based on the first historical network state;
[0210] Obtain the first historical white noise, which includes the white noise of the first preset historical period of the current device;
[0211] The moving average coefficient of white noise is calculated based on the first historical white noise.
[0212] Obtain the current network state value and white noise error term;
[0213] The network state value at future time points is calculated based on the autoregressive coefficient, moving average coefficient, current network state value, and white noise error value.
[0214] As an optional implementation, the pooling unit 7024 is also specifically used for:
[0215] If there is only one preset warning threshold, and the network status value at a future time exceeds the preset warning threshold, the network status value at that future time will be used as warning information and sent to the preset terminal; or...
[0216] When there are multiple preset warning thresholds, multiple warning intervals are divided according to the preset warning thresholds;
[0217] The warning level for the future moment is determined based on the network status value at the future moment and multiple warning intervals;
[0218] The warning level and the network status value at a future time are used as warning information and sent to the preset terminal.
[0219] Figure 8 A schematic diagram of the hardware structure of the electronic device 800 provided in an embodiment of this application is shown.
[0220] Electronic device 800 may include processor 801 and memory 802 storing computer program instructions.
[0221] Specifically, the processor 801 may include a central processing unit (CPU), an application specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.
[0222] Memory 802 may include mass storage for data or instructions. For example, and not limitingly, memory 802 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. In one instance, memory 802 may include removable or non-removable (or fixed) media, or memory 802 may be non-volatile solid-state memory. Memory 802 may be internal or external to the integrated gateway disaster recovery device.
[0223] In one instance, memory 802 may be read-only memory (ROM). In one instance, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), an electrically rewritable ROM (EAROM), or flash memory, or a combination of two or more of these.
[0224] Memory 802 may include read-only memory (ROM), random access memory (RAM), disk storage media device, optical storage media device, flash memory device, electrical, optical, or other physical / tangible memory storage device. Therefore, typically, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the network congestion warning method according to the first aspect of this disclosure.
[0225] The processor 801 reads and executes computer program instructions stored in the memory 802 to achieve... Figure 1 A network congestion early warning method is shown in the embodiment.
[0226] In one example, the electronic device 800 may also include a communication interface 803 and a bus 804. For example, Figure 8 As shown, the processor 801, memory 802, and communication interface 803 are connected through bus 804 and complete communication with each other.
[0227] The communication interface 803 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.
[0228] Bus 804 includes hardware, software, or both, that couples components of an electronic device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Extended Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), a Hyper Transport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 504 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.
[0229] The electronic device 800 can execute the network congestion warning method in the embodiments of this application, thereby realizing the network congestion warning method and device.
[0230] Furthermore, in conjunction with the network congestion warning methods described in the above embodiments, this application embodiment can provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the network congestion warning methods described in the above embodiments.
[0231] In an optional embodiment, in conjunction with the network congestion warning method in the above embodiments, this application embodiment can provide a computer program product to implement it. The instructions in the computer program product are executed by the processor of the electronic device, enabling the electronic device to implement any of the network congestion warning methods in the above embodiments.
[0232] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.
[0233] The functional blocks shown in the above block diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.
[0234] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.
[0235] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0236] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.
Claims
1. A method for early warning of network congestion, characterized in that, include: Obtain current network performance parameters for different devices in multiple different regions; The current network performance parameters are input into the network congestion model, and the following steps are performed on the current network performance parameters to obtain the future network state corresponding to the network performance parameters: In the network congestion model, the connection weight value of each neuron in the network congestion model is calculated to obtain the optimal connection weight value, and the neuron corresponding to the optimal connection weight value is taken as the winning neuron. Cluster the winning neurons to obtain a neighborhood neuron set; The connection weight values of each of the neighboring neurons in the neighborhood neuron set are adjusted to obtain multiple future network states corresponding to the current network performance parameters; The future network states are classified according to a preset time period to obtain multiple classified future network states; Max pooling is performed on the classified future network states to obtain the future network states for each future time period. The calculation of the connection weight value of each neuron in the network congestion model to obtain the optimal connection weight value includes: The current network performance parameters are transformed into vectors to obtain the first feature vector of the current network performance. Get the initial connection weight value; The similarity value of each neuron is obtained by squared the difference between the first feature vector and the initial connection weight value. Each similarity value is compared, and the smallest similarity value is taken as the best similarity value. The connection weight value corresponding to the best similarity value is taken as the best connection weight value. The clustering of the winning neurons to obtain a neighborhood neuron set includes: Obtain the initial impact range of the network congestion model; Calculate the first distance value between each neuron and the winning neuron; The influence distance value is calculated based on the initial influence range, the preset time step, the preset decay coefficient, and the first distance value. The influence distance value is the distance between the winning neuron and the neighboring neurons that have an influence. The neighborhood is determined based on the winning neuron and the influence distance value, and the neighborhood includes a region with the winning neuron as the center and the influence distance value as the radius; All neurons within the neighborhood are considered as neighborhood neurons, forming a neighborhood neuron set; The adjustment of the connection weight value for each of the neighboring neurons in the neighborhood neuron set includes: Obtain the adaptive learning rate, the first feature vector, and the current connection weights of the current neuron; The weight change is calculated based on the adaptive learning rate, the influence distance value, the first feature vector, and the connection weight value. The current connection weight value of each neuron is adjusted according to the weight change to obtain the future network state mapped by the current neuron.
2. The method according to claim 1, characterized in that, The process of obtaining current network performance parameters from multiple different devices in different regions includes: Raw network performance parameters are collected using preset network tools. These raw network performance parameters include bandwidth utilization, packet loss rate, packet latency, and traffic volume. The original network performance parameters are preprocessed to obtain the current network performance parameters. The data preprocessing includes at least one of the following processing methods: standardization, missing value handling, and normalization.
3. The method according to claim 1, characterized in that, Before calculating the connection weight values of each neuron in the network congestion model to obtain the optimal connection weight values, the method further includes: The connection weight values of each neuron in the network congestion model are initialized according to the preset connection weight values to obtain the initialized connection weight values.
4. The method according to claim 3, characterized in that, Before calculating the connection weight values of each neuron in the network congestion model to obtain the optimal connection weight values, the method further includes: Obtain the initial learning rate; The initial learning rate is adjusted by decaying according to a preset learning rate decay rate to obtain an adaptive learning rate.
5. The method according to claim 1, characterized in that, After performing max pooling on the classified future network states to obtain the future network states for each future time period, the method further includes: Obtain the first historical network status value of the first preset historical period of the multiple different regions and different devices, wherein the first historical network status value includes the network status value of the current device in the first preset historical period. Calculate the autoregressive coefficients of the historical network state values based on the first historical network state values; Obtain the first historical white noise, which includes white noise from the first preset historical period of the current device; Calculate the moving average coefficient of the white noise based on the first historical white noise; Obtain the current network state value and white noise error term; The network state value at future time points is calculated based on the autoregressive coefficient, moving average coefficient, current network state value, and white noise error value.
6. The method according to claim 5, characterized in that, After calculating the network state value at future times based on the autoregressive coefficient, moving average coefficient, current network state value, and white noise error value, the method further includes: If the number of preset warning thresholds is one, and the network status value at a future time is greater than the preset warning threshold, the network status value at that future time will be used as warning information and sent to a preset terminal; or... When there are multiple preset warning thresholds, multiple warning intervals are divided according to the preset warning thresholds; The warning level for the future time is determined based on the network status value at the future time and multiple warning intervals; The warning level and the network status value at the future time are used as warning information and sent to a preset terminal.
7. A network congestion early warning device, characterized in that, The device includes: The acquisition module is used to acquire the current network performance parameters of different devices in multiple different regions; Input module: Input the current network performance parameters into the network congestion model, and perform the following steps on the current network performance parameters to obtain the future network state corresponding to the network performance parameters: The input module includes: The calculation unit is configured to: calculate the connection weight value of each neuron in the network congestion model for the current network performance parameters, obtain the optimal connection weight value, and designate the neuron corresponding to the optimal connection weight value as the winning neuron; and is further configured to: The current network performance parameters are transformed into vectors to obtain the first feature vector of the current network performance. Get the initial connection weight value; The similarity value of each neuron is obtained by squared the difference between the first feature vector and the initial connection weight value. Each similarity value is compared, and the smallest similarity value is taken as the best similarity value. The connection weight value corresponding to the best similarity value is taken as the best connection weight value. A clustering unit is used to cluster the winning neurons to obtain a set of neighboring neurons. It is also used for: Obtain the initial impact range of the network congestion model; Calculate the first distance value between each neuron and the winning neuron; The influence distance value is calculated based on the initial influence range, preset time steps, preset decay coefficient, and first distance value. The influence distance value is the distance between the winning neuron and the neighboring neurons that have an influence. The neighborhood is determined based on the winning neuron and the influence distance value. The neighborhood includes the region centered on the winning neuron and with the influence distance value as the radius. All neurons within the neighborhood are considered as neighborhood neurons, forming a neighborhood neuron set; The adjustment unit is used to adjust the connection weight values of each of the neighboring neurons in the neighborhood neuron set to obtain multiple future network states corresponding to the current network performance parameters; it is also used to: Obtain the adaptive learning rate, the first feature vector, and the current connection weights of the current neuron; The weight change is calculated based on the adaptive learning rate, the influence distance value, the first feature vector, and the connection weight value. The current connection weights of each neuron are adjusted based on the weight changes to obtain the future network state mapped by the current neuron. A classification unit is used to classify the future network states according to a preset time period to obtain multiple classified future network states. The pooling unit is used to perform max pooling on the multiple future network states after classification to obtain the future network state for each future time period.
8. An electronic device, characterized in that, The device includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the network congestion early warning method as described in any one of claims 1-6.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the network congestion early warning method as described in any one of claims 1-6.
10. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the electronic device, the electronic device performs the network congestion early warning method as described in any one of claims 1-6.