Bandwidth adjustment method and network access device

By acquiring and analyzing feature data in the home network environment, determining the importance of features, and updating bandwidth parameters, the problem of not being able to adjust bandwidth in real time in existing technologies is solved, achieving more efficient network resource allocation and improved user experience.

CN122437772APending Publication Date: 2026-07-21ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
ZTE CORP
Filing Date
2025-01-21
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

Existing network bandwidth management methods cannot be adjusted in real time according to the dynamic changes in user behavior and network application needs, resulting in poor service quality, especially in home network environments with diverse devices and changing user needs.

Method used

By acquiring feature data of various features, determining feature importance, receiving adjustment requests and updating the importance of target features, and adjusting preset bandwidth parameters based on the updated feature importance, intelligent dynamic adjustment is achieved.

Benefits of technology

Allocate network resources rationally to avoid bandwidth waste, improve user experience, ensure service quality for critical applications, and adapt to changing home network environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122437772A_ABST
    Figure CN122437772A_ABST
Patent Text Reader

Abstract

The present disclosure provides a bandwidth adjustment method. The present disclosure also provides a network access device and a computer program product. The bandwidth adjustment method can be applied to a network access device, and the method comprises: obtaining feature data of various features; determining feature importance of the various features; receiving an adjustment requirement and confirming a target feature corresponding to the adjustment requirement; updating the feature importance of the target feature by the adjustment requirement; and adjusting a preset bandwidth parameter based on the updated feature importance.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments disclosed herein relate to, but are not limited to, the field of network communication technology, and particularly to a bandwidth adjustment method, a network access device, and a computer program product. Background Technology

[0002] Network bandwidth management typically relies on static configurations or simple traffic control policies, which cannot adapt to dynamic changes in user behavior and diverse network application needs. Users often need to manually configure QoS policies to suit specific network usage scenarios, such as video conferencing, online gaming, video streaming, or file downloading. This static bandwidth management approach cannot adjust in real time according to actual usage, which may lead to poor service quality in certain application scenarios. However, with the rapid development of mobile internet and smart homes, the number of devices and application types in home network environments have increased dramatically, and static bandwidth management methods cannot cope with the ever-changing home network environment. Summary of the Invention

[0003] This disclosure provides a bandwidth adjustment method, a network access device, and a computer program product.

[0004] In a first aspect, embodiments of this disclosure provide a bandwidth adjustment method applied to a network access device. The method includes: acquiring feature data of various features; determining the feature importance of the various features; receiving an adjustment request and confirming a target feature corresponding to the adjustment request; updating the feature importance of the target feature based on the adjustment request; and adjusting a preset bandwidth parameter based on the updated feature importance.

[0005] Secondly, embodiments of this disclosure provide a network access device, which includes a memory and a processor; the memory stores a computer program that can be executed by the processor, and when the computer program is executed by the processor, it implements the bandwidth adjustment method described in embodiments of this disclosure.

[0006] Thirdly, embodiments of this disclosure provide a computer program product, including a computer program that, when executed by a processor, implements the bandwidth adjustment method described in embodiments of this disclosure.

[0007] The bandwidth adjustment method, network access device, and computer program product of this disclosure can acquire feature data of various features, determine the feature importance of each feature, receive adjustment requests, and confirm the target feature corresponding to the adjustment request; update the feature importance of the target feature based on the adjustment request, and adjust the preset bandwidth parameters based on the updated feature importance. In this way, network resources can be rationally allocated according to the actual needs and importance of different applications, avoiding the waste of bandwidth resources and problems such as insufficient bandwidth for critical applications due to indiscriminate allocation. This solution can comprehensively consider the differences of multiple features and dynamically adjust bandwidth parameters, thereby providing personalized network services based on users' actual usage habits and behaviors, thus improving the user's network experience. Attached Figure Description

[0008] In the accompanying drawings of the embodiments disclosed herein:

[0009] Figure 1 A schematic diagram illustrating an application scenario of a bandwidth adjustment method provided in this embodiment of the disclosure;

[0010] Figure 2 A schematic flowchart illustrating a bandwidth adjustment method provided in an embodiment of this disclosure;

[0011] Figure 3 A flowchart illustrating the steps for determining feature importance provided in embodiments of this disclosure;

[0012] Figure 4 A flowchart illustrating another bandwidth adjustment method provided in this embodiment of the present disclosure;

[0013] Figure 5 A flowchart illustrating the steps for updating feature importance provided in embodiments of this disclosure;

[0014] Figure 6 A flowchart illustrating the steps for adjusting preset bandwidth parameters provided in this embodiment of the disclosure;

[0015] Figure 7 A schematic block diagram of a network access device provided in this disclosure embodiment; and

[0016] Figure 8 This is a schematic block diagram of a computer program product provided in an embodiment of the present disclosure. Detailed Implementation

[0017] To enable those skilled in the art to better understand the technical solutions of this disclosure, the embodiments of this disclosure will be described in detail below with reference to the accompanying drawings.

[0018] The present disclosure will be described more fully below with reference to the accompanying drawings; however, the embodiments shown may be embodied in different forms, and the present disclosure should not be construed as limited to the embodiments set forth below. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will enable those skilled in the art to fully understand the scope of the disclosure.

[0019] The accompanying drawings of the embodiments disclosed herein are provided to further illustrate the embodiments of this disclosure and form part of the specification. They are used together with the detailed embodiments to explain this disclosure and do not constitute a limitation thereof. The above and other features and advantages will become more apparent to those skilled in the art from the description of the detailed embodiments with reference to the accompanying drawings.

[0020] This disclosure may be described with reference to plan and / or cross-sectional views using the ideal schematic diagrams of this disclosure. Therefore, the example illustrations may be modified according to manufacturing techniques and / or tolerances.

[0021] Where there is no conflict, the various embodiments of this disclosure and the features thereof in the embodiments may be combined with each other.

[0022] The terminology used in this disclosure is for the purpose of describing particular embodiments only and is not intended to limit the disclosure. The term "and / or" as used in this disclosure includes any and all combinations of one or more of the associated enumerated entries. The singular forms "a" and "the" as used in this disclosure are also intended to include the plural forms, unless the context clearly indicates otherwise. The terms "comprising," "made of," etc., as used in this disclosure specify the presence of the stated feature, integral, step, operation, element, and / or component, but do not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components, and / or groups thereof.

[0023] Unless otherwise specified, all terms used in this disclosure (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and this disclosure, and will not be interpreted as having an idealized or overly formal meaning, unless expressly so defined in this disclosure.

[0024] This disclosure is not limited to the embodiments shown in the accompanying drawings, but includes modifications to the configuration based on the manufacturing process. Therefore, the areas illustrated in the drawings are schematic, and the shapes of the areas shown illustrate specific shapes of the areas of an element, but are not intended to be limiting.

[0025] In today's network environment, homes and small offices typically have multiple devices accessing the internet simultaneously, leading to competition for limited bandwidth. Traditional bandwidth management methods often require users to manually configure specific application scenarios, such as video conferencing, online gaming, video streaming, or file downloading. Existing bandwidth management methods are usually static and cannot adjust in real time according to actual usage, which may result in poor network service quality in certain application scenarios. Currently, there is no solution on the market that can intelligently and dynamically adjust bandwidth based on user behavior to adapt to the ever-changing network environment and user needs.

[0026] With the development of artificial intelligence (AI) and machine learning technologies, more intelligent and automated solutions have emerged. To address the aforementioned issues, this disclosure aims to utilize AI technology to achieve intelligent dynamic adjustment of bandwidth, thereby improving network service quality and user experience.

[0027] Figure 1 This is a schematic diagram illustrating an application scenario of a bandwidth adjustment method provided in an embodiment of this disclosure. Figure 1 In the scenario shown, users A, B, C, and D access the internet through network access devices. Initially, the user devices compete for limited network bandwidth resources. This causes user A's downloading applications to consume excessive bandwidth, while users B, C, and D's video applications experience buffering and stuttering due to insufficient bandwidth. After dynamic bandwidth adjustment, the bandwidth resources are redistributed, reducing the bandwidth available to user A's downloading applications and increasing the bandwidth available to users B, C, and D's video applications, thus ensuring smooth video playback.

[0028] In a first aspect, embodiments of this disclosure provide a bandwidth adjustment method applied to a network access device, which allows terminal devices to access the network. Here, the network access device may include, but is not limited to, a router or gateway, and the terminal device may include any device capable of accessing the network. Figure 2 As shown, the method includes operations S101-S104.

[0029] In S101, feature data for various features are obtained.

[0030] Here, the various characteristics mentioned may include, but are not limited to, the following: time characteristics, behavioral characteristics, device characteristics, application characteristics, user characteristics, or scenario characteristics. Time characteristics may include feature data related to usage time, such as weekdays, weekends, a specific time period, daytime, or nighttime. Behavioral characteristics may include feature data related to user behavior or habits. For example, frequent application switching may indicate dissatisfaction with the current network conditions or a search for an application with specific functions. Another example is continuous use of an online education application for more than 3 hours, indicating important learning activities, and the application should have a relatively high priority. Device characteristics may include feature data related to the user's device. For example, tablets may experience lag when running complex graphics processing software, so network bandwidth allocation can be adjusted according to the tablet's performance characteristics. Another example is that smart TVs are typically connected to a home network to play high-definition video content, thus requiring stable high bandwidth to ensure smooth video playback. Application characteristics may include feature data related to the application, such as application type, traffic percentage per unit time, and usage frequency. Different applications may have different network bandwidth requirements. User characteristics may include feature data related to the user using the application, such as different members of a household (e.g., children or parents) or visitors. Scene features can include feature data related to the scenario in which the user uses the application, such as scenarios with network congestion or scenarios with network idleness.

[0031] Typically, family members are the primary users of the network access device, consistently and regularly. They have regular and continuous network usage needs, such as daily work, study, and entertainment. These activities often rely on stable and reasonable network bandwidth allocation to ensure the smooth operation of various applications, such as online office software and uninterrupted online courses. Visitors, who occasionally access the network temporarily, generally have lower network dependence and less demand for specific applications compared to family members. Given limited bandwidth resources, it's usually necessary to prioritize the network experience for family members. Therefore, applications used by family members should be given higher priority. This way, when allocating bandwidth, family members' applications will receive sufficient bandwidth first, preventing non-critical applications from visitors from consuming excessive bandwidth and affecting their normal network use. For example, if a family member is holding a video conference while a visitor is downloading files, the network access device will prioritize the bandwidth needs of the video conference application and appropriately limit the bandwidth used by the visitor downloading files.

[0032] In S102, the feature importance of each type of feature is determined.

[0033] In this embodiment, the potential relationship between different features and network bandwidth requirements is explored by analyzing the feature data of each feature. For example, by analyzing the feature data, it can be found that family members play online games frequently between 8 pm and 10 pm, or that certain applications consume a lot of data during specific time periods.

[0034] Feature importance characterizes the degree of influence a feature has in determining an application's bandwidth allocation strategy. A higher feature importance means that the feature plays a crucial role in judging the bandwidth allocation strategy. For example, if online gaming is frequently played between 8 PM and 10 PM, the importance of gaming applications during this period will increase. In this case, "time features" and "application features" may play a key role in determining the bandwidth allocation strategy. Determining feature importance allows for more accurate bandwidth allocation to adapt to different user behaviors and network conditions, avoiding unreasonable resource allocation and waste, and effectively improving overall network performance and user experience.

[0035] In S103, an adjustment request is received, and the target feature corresponding to the adjustment request is confirmed.

[0036] In this embodiment, the network access device can be equipped with the ability to receive adjustment requests from multiple sources.

[0037] In one implementation, users can manually input their needs through the device's user interface. For example, a user might find that a particular application is not running smoothly in the current network environment, and although the application normally has a low priority, the user wants to increase its priority. In this case, the user can manually specify the application (such as a specific game app) and the corresponding time period (such as 8 PM to 10 PM) in the settings, sending a request to the device to increase the importance of this application during that time period.

[0038] In one implementation, network access devices can also generate adjustment requirements based on their own monitoring and analysis mechanisms. For example, when abnormal network congestion is detected, and it is found that a network access device for an application that is not originally important (such as a background automatic update program) is consuming a large amount of bandwidth, affecting the operation of network access devices for critical applications (such as video conferencing or online games), the device will automatically generate a requirement to reduce the importance of the automatic update program in order to ensure network bandwidth for critical applications.

[0039] Based on the received adjustment requests, network access devices can determine target features according to pre-defined mapping relationships. If the adjustment request concerns increasing the importance of a specific application during a specific time period, then the application feature and the corresponding time feature will be determined as target features. For example, if a user requests to increase the importance of an online education application from 7 pm to 9 pm on weekdays, then the features "online education application" and "7 pm to 9 pm on weekdays" become target features.

[0040] In S104, the feature importance of the target feature is updated based on the adjustment requirements.

[0041] After identifying the target features, the network access device updates the feature importance based on the specific adjustments required. If the adjustment involves increasing the priority of an application, the device increases the importance coefficient of the target feature. For example, increasing the importance coefficient previously assigned to a video playback application from 0.3 to 0.6 means that in subsequent bandwidth allocation decisions, this video playback application will receive a higher weight and is more likely to receive sufficient bandwidth resources. Conversely, if the adjustment involves decreasing the priority of an application, the device correspondingly decreases the importance coefficient of the target feature. For example, for a file download application that consumes bandwidth for a long time but is not currently critical, the application's importance coefficient is reduced from 0.5 to 0.2, thereby reducing the bandwidth resources allocated to the file download application and prioritizing other more important applications.

[0042] By receiving adjustment requests and updating feature importance, bandwidth allocation strategies can better adapt to different application scenarios and changes in user needs, thereby meeting users' personalized network usage needs and improving user experience.

[0043] In S105, the preset bandwidth parameters are adjusted based on the updated feature importance.

[0044] In this embodiment, the network access device adjusts the bandwidth allocation for applications based on the updated feature importance. For example, if the updated feature importance indicates a higher priority for an online education application, the device can increase the bandwidth allocation for the online education application from 20% to 35%. This process comprehensively considers the total network bandwidth resources and the needs of other applications to ensure that the adjusted bandwidth allocation meets the needs of the application without unduly impacting the basic operation of other applications. For example, if the updated feature importance indicates a lower priority for a software update application, the device can reduce the bandwidth limit for the software update application from 2Mbps to 1Mbps to ensure that it does not affect the bandwidth of other critical applications.

[0045] By rationally adjusting the bandwidth allocation ratio and ensuring the bandwidth requirements of high-priority applications, network congestion can be effectively reduced, and application latency and lag can be decreased.

[0046] In some implementations, the bandwidth adjustment method according to embodiments of this disclosure may further include:

[0047] Create a mapping table between the various features and priority labels; and

[0048] Based on the priority labels in the mapping table, applications accessing network access devices are assigned corresponding priorities.

[0049] During the operation of the network access device, the steps of creating a mapping table between the various features and priority labels, and assigning corresponding priorities to applications accessing the network access device based on the priority labels in the mapping table, can be performed after obtaining the feature data of the various features.

[0050] In this embodiment, the network access device first collects and analyzes characteristic data related to bandwidth usage, such as application type (games, videos, office applications, etc.), usage time (weekday daytime, evening, weekends, etc.), user identity (home users, enterprise users, etc.), traffic volume, and usage frequency. Based on this characteristic data, the device creates an initial mapping table, in which a corresponding priority label is assigned to each characteristic or combination of characteristics. For example, office applications used by users during weekday daytime may be assigned a high-priority label, while non-critical update applications used by users late at night may be assigned a low-priority label.

[0051] After an application connects to the network access device, the device identifies the application's relevant characteristics and looks up the corresponding priority label based on a previously created mapping table, thereby assigning an initial priority to the application. Subsequently, as network usage changes, upon receiving adjustment requests and updating the feature importance of the target features, the device updates the priority labels in the mapping table again based on the updated feature importance, and re-sorts the applications' priorities and allocates bandwidth accordingly.

[0052] In one example, the device can define attributes and possible value ranges for each feature. For instance, the time feature could be different time periods of the day (e.g., 0-6 AM, 6-12 PM), the application feature could be social media, gaming, video, etc., the device feature could be whether it's a host user, a guest, or a specific type of device (e.g., smart TV, IoT device), the behavioral feature could be specific behaviors like a child taking online classes, and the scenario feature could be network conditions such as current network load and signal strength. The device creates an initial mapping table to associate these features with initial priority labels. This association can be based on historical data or preset rules.

[0053] For example, the initial mapping table is as follows:

[0054] Usage time Application type Device Identity Special behavior Network conditions Initial priority label 8 p.m. Video Host users Online classes High load 1 (Highest) 3 p.m. Games Visitors none Medium load 4 (Lower)

[0055] In some implementations, such as Figure 3 As shown, determining the feature importance of the various features in S102 may further include:

[0056] S102-1: Perform feature splitting on the various features to construct multiple decision trees with the splitting of the various features as the structure;

[0057] S102-2: Determine the importance coefficient of each feature in the multiple decision trees;

[0058] S102-3: Sum the importance coefficients of each feature across all decision trees; and

[0059] S102-4: The feature importance of each feature is determined by averaging the accumulated importance coefficients.

[0060] Here, multiple decision trees are constructed by splitting the various features to form an ensemble learning model, namely the random forest model. Each decision tree is trained based on a different subset of data or feature subset (i.e., a set of features). Splitting the various features refers to the process of selecting a feature at each node of the decision tree according to certain rules to divide the dataset of the current node into multiple subsets. By reasonably selecting the splitting features, the decision tree can classify and predict the data more accurately. The construction of each decision tree starts from the root node, and the model traverses all available feature nodes on each decision tree. When a feature node makes the split child nodes more "pure" in terms of category, that is, when the proportion of samples belonging to the same category is higher, it means that the information gain brought by the feature node is greater and the importance is higher. For example, in a dataset for judging whether a fruit is an apple or an orange, if the splitting is based on color features, most red samples are apples and most orange samples are oranges. Then this color feature can significantly improve the purity of the child nodes and bring greater information gain. The model selects the feature that maximizes prediction performance as the splitting criterion for the current node, dividing the dataset into different subsets. This process is repeated within each subset, continuously growing more branches and nodes until a stopping condition is met, such as reaching a predetermined tree depth, insufficient node samples, or all samples belonging to the same category. The purpose of constructing multiple decision trees structured around splits based on various features is to leverage the classification and feature analysis capabilities of decision trees to analyze and process feature data from different angles and levels. Models built using multiple decision trees can uncover the potential relationships between different features and network bandwidth requirements from large amounts of complex feature data, thus providing a more comprehensive understanding of the relationship between user needs and network bandwidth allocation.

[0061] This model can predict the degree of influence of features on network bandwidth allocation and calculate the weight of each feature's influence, i.e., the feature importance coefficient. When determining application priorities, the importance coefficients of various features are comprehensively considered. For example, if the feature importance coefficient of application type is high within a certain time period, then different types of applications will occupy a more important position in the priority ranking during that period; if the feature importance coefficient of user identity is high, then applications used by specific users (such as users performing important business) may receive higher priority. By quantifying the importance of different features, network access devices can intelligently identify factors affecting bandwidth allocation strategies and thus rationally set application priorities. As new data accumulates and user behavior changes, the feature importance coefficients are continuously updated. This allows network access devices to dynamically adjust application priorities based on the latest information, ensuring optimal utilization of bandwidth resources.

[0062] For example, in the scenario of determining the feature importance of various features related to an application in this embodiment, assume there are various features such as time features (e.g., weekday daytime, evening, weekend, etc.), application type features (games, videos, office, etc.), and user identity features (home users, enterprise users, etc.). When constructing a decision tree, starting from the root node, the model traverses all available features. Assume there are 100 sample data points at the current root node (representing 100 instances of application usage), covering combinations of different times, application types, and user identities. If we choose to split based on the application type feature, and there are three application types: games, videos, and office, then based on the distribution of application types in these 100 samples, the dataset may be divided into three subsets: a subset of game applications (assuming 30 samples), a subset of video applications (assuming 40 samples), and a subset of office applications (assuming 30 samples). The above process can be considered as a feature split.

[0063] In this embodiment, the splitting feature is selected based on the impact of various characteristics on bandwidth adjustment. For example, analysis reveals that under the current network environment and user habits, application type features have a high impact on distinguishing applications with different bandwidth requirements. In other words, using application type features for splitting results in more "pure" child nodes in terms of application type, meaning a higher proportion of samples belonging to the same application type. For instance, calculations show that application type features significantly reduce information gain or Gini impurity, indicating that they better distinguish applications with different bandwidth requirements. Therefore, application type features are chosen as the basis for splitting.

[0064] In practice, the feature splitting process is repeated continuously. For each child node, the remaining features are further split by selecting those that have a greater impact on bandwidth adjustment, until a stopping condition is met. The stopping condition may include reaching a predetermined tree depth (e.g., a decision tree reaching 5 levels), insufficient number of samples per node (e.g., fewer than 10 samples per node), or all samples belonging to the same feature type. Through continuous feature splitting, multiple decision trees are constructed based on the splitting of these various feature types, thus forming a model for subsequent bandwidth adjustment decisions.

[0065] When determining feature importance, the Random Forest algorithm typically uses metrics such as information gain and impurity. While other methods, such as correlation coefficients and latency effects, can also be used, the Random Forest algorithm offers unique advantages. It doesn't simply consider the correlation between features; instead, it comprehensively considers each feature to prioritize the application. A classification threshold (e.g., 0.8) can be set for the classification results. If the output value exceeds this threshold, the application is assigned to that class (e.g., class A).

[0066] Because it incorporates various features, the process of determining application priorities fully considers factors from different scenarios. For example, when two applications exist within the same time period, one with a higher usage frequency and the other with a higher traffic consumption, a judgment needs to be made based on the established priority labeling rules. The ability to determine labels is acquired through model training. This process is related to specific business needs and personalized user requirements. Therefore, different priority determination results will occur under different business scenarios and user habits, in order to allocate bandwidth resources more rationally.

[0067] Here, a random forest is an ensemble learning model composed of multiple decision trees. Each decision tree independently calculates the feature importance of a subset of features during its growth process. Since the training data for each decision tree is obtained through sampling, different trees may have different assessments of feature importance. To obtain more reliable and comprehensive results, the random forest aggregates the feature importance of each feature across all decision trees. By summing the importance of a feature across all trees, dividing by the total number of trees, and taking the average, we obtain the feature importance of that feature within the entire random forest model. The purpose of calculating, summing, and averaging the feature importance of each feature across multiple decision trees is to comprehensively evaluate the relative importance of each feature in the entire model. This avoids the biases inherent in feature importance assessments within a single decision tree, resulting in more reliable feature importance coefficients.

[0068] For example, for various features such as time features, application features, and user features, their importance coefficients have been determined through preliminary analysis and calculations. If, at a certain stage, the importance coefficient of application features is higher, then application features are more likely to be chosen for splitting when constructing the decision tree node. For instance, to differentiate the bandwidth requirements of different applications, application type (such as games, video, office, etc.) may be a key factor. If it is found that game applications have significantly different bandwidth requirements than other types of applications, then in the construction of the decision tree, the dataset will be divided into two subsets based on application type: game and non-game. This will be used as a node splitting method, forming a branch structure of the decision tree. The purpose of constructing multiple decision trees is to analyze the relationship between features and network bandwidth requirements from different perspectives and data subsets. Due to the randomness of the data and the diversity of feature combinations, different decision trees may have different assessments of feature importance.

[0069] For example, one decision tree might determine that time features play a crucial role in bandwidth allocation during a specific network environment and user behavior pattern; while another decision tree, based on different data samples, might discover that specific user groups within user features have a unique impact on bandwidth demand. When finalizing feature importance, the performance of each feature across all decision trees is summarized. The overall feature importance in the entire model is obtained by summing the importance of a feature across all trees, dividing by the total number of trees, and taking the average. In this way, through the synergistic effect of multiple decision trees, the potential relationships between different features and network bandwidth demand can be more comprehensively and accurately uncovered, providing a reliable basis for subsequent bandwidth adjustment decisions and achieving the goal of rationally allocating network resources according to the actual needs and importance of different applications.

[0070] In some implementations, determining the importance coefficient of each feature in the plurality of decision trees in step S102-2 includes:

[0071] Supervised learning algorithms are used to perform classification and fitting training on the feature data of the aforementioned types of features;

[0072] The model, trained by classification fitting, is used to calculate the information gain or reduction in Gini impurity for each feature at each node of the multiple decision trees; and

[0073] The importance coefficient of each feature is calculated based on its contribution to the reduction of information gain or Gini impurity at each node of the multiple decision trees.

[0074] In this embodiment, the network access device collects a large amount of feature data of various types, covering multiple information during application usage, such as application type, usage time, user behavior, usage scenario, and device identity. Then, a supervised learning algorithm (such as random forest) is used to classify and fit this feature data for training. During training, the model constructs multiple decision trees. For each node of each decision tree, the model calculates the information gain or reduction in Gini impurity brought by each feature. For example, when calculating the feature importance of time features, the model judges the change in the purity of information after splitting the dataset, i.e., the information gain. If time features can effectively distinguish applications of different priorities, then the information gain brought by time features is large, and the reduction in Gini impurity is also significant. Finally, based on the contribution of each feature to the information gain or reduction in Gini impurity at each node of multiple decision trees, the importance coefficient of each feature is calculated. For example, if a feature can significantly reduce Gini impurity at most key nodes of decision trees, then the importance coefficient of that feature will be high.

[0075] In this embodiment, when calculating the feature importance coefficient based on the contribution of each feature to the reduction in information gain or Gini impurity at each node of multiple decision trees, for each decision tree, starting from the root node, the model evaluates the impact of each feature on the information gain or Gini impurity reduction after the dataset is split at each node. For example, at a node, there may be time features, application type features, and user device features that can be split. When splitting by time features, the information gain or Gini impurity reduction of the resulting child nodes is calculated. The same operation is performed on all decision trees. In different decision trees, due to differences in data sampling and feature combinations, the information gain or Gini impurity reduction of the same feature may differ at different nodes. For example, in one decision tree, the application type feature may have a high information gain at a certain node, while in another decision tree, the information gain of this feature may be lower at other nodes. The model calculates the information gain or Gini impurity reduction of each feature at all nodes of all decision trees. Then, the model calculates the contribution of each feature to the reduction in information gain or Gini impurity at each node of the multiple decision trees to obtain the importance coefficient of that feature. In this way, the impact of each feature on decision-making can be precisely quantified, thereby identifying features that play a key role in application priority judgment and bandwidth adjustment.

[0076] In some implementations, such as Figure 4 As shown, the bandwidth adjustment method according to embodiments of this disclosure may further include:

[0077] S106: Perform feature splitting based on the updated feature importance and reconstruct multiple decision trees.

[0078] As time progresses and user habits change, new applications, new usage patterns, and varying network demands at different times will constantly emerge. Therefore, it's crucial to ensure the model can analyze and make decisions based on the latest feature data. For example, some previously less important features may become critical, and vice versa. Network access devices continuously monitor changes in the feature data of each feature and add the newly collected feature data to the feature dataset. Then, the model is retrained using the updated feature dataset. During training, following the previous random forest algorithm, the information gain, Gini impurity reduction, and contribution to the reduction for each feature are recalculated under the new data environment, and feature importance is adjusted based on the new contribution. When recalculating information gain or Gini impurity reduction, each node is analyzed again during the construction or reconstruction of the decision tree based on the adjusted feature importance. For example, if a significant increase in the frequency of video conferencing is detected within a certain time period, the network access device will promptly increase the bandwidth priority of that application.

[0079] In one example, when a user determines they will use a certain type of application (e.g., an educational application) during a specific time period (e.g., 8 PM), the priority of that application type needs to be adjusted. At this time, the network access device will increase the importance of features related to that time and application characteristics (i.e., the target feature) based on the adjustment needs. For example, if the feature importance for that time period is medium, the network access device will increase it to high. This allows the network access device to prioritize and process such features during subsequent bandwidth allocation, ensuring that the relevant application receives more network bandwidth resources. Users can also manually modify the feature importance coefficients according to their needs. For example, during the time a child is taking online classes, the importance coefficients for usage time and application type can be increased to 0.96 and 0.7, respectively. In a decision tree model, the feature importance coefficient determines the flow of data across different branches and nodes. For example, when the time feature coefficient is increased, application data within a specific time period will be more likely to be allocated more network resources.

[0080] For example, when a child exhibits the specific behavior of attending online classes and the importance coefficient or rank label of the relevant feature increases, a corresponding feature split is added to the decision tree. For instance, a new feature split is added to the decision tree: "Is it a child?" If this feature is true, the data flows into the high-priority child node, ensuring that educational applications have sufficient bandwidth resources. Subsequent data related to children attending online classes will then flow into this node. This allows for more refined classification and processing of feature data, enabling the model to better adapt to dynamic changes in adjustment needs.

[0081] Feature splits that are considered unimportant by users in practical applications and contribute minimally to reducing impurity can be removed. For example, if a feature related to a minor function of the application has numerous splits in the decision tree, but this feature has little impact on bandwidth allocation decisions, these feature splits can be removed to simplify the decision tree structure. This avoids interference with correct bandwidth allocation decisions due to excessive irrelevant or inefficient feature splits.

[0082] In this embodiment, after receiving the adjustment request and updating the feature importance of the target feature, the device first evaluates the existing random forest model and determines which features can be used as split nodes. This process may involve increasing the split of a feature (i.e., the feature importance of that feature rises above a predetermined threshold) or deleting the split of a feature (i.e., the feature importance of that feature decreases below a preset threshold). For each decision tree, the device reconstructs it based on the updated feature importance and the newly determined splitting strategy, ensuring that the selection of each node is based on the most relevant feature for optimal splitting.

[0083] Starting from the root node of each decision tree, the device considers all available features and selects the feature with the highest importance as the basis for splitting. After selecting the initial splitting feature, the device repeats this process on each newly generated child node, continuing to search for the next optimal splitting feature.

[0084] At each node, the device calculates the information gain or Gini impurity reduction of all candidate features and selects the feature that brings the greatest improvement as the splitting criterion. After selecting the splitting feature, the device directs the feature data to the corresponding child node according to the different importance values ​​of the feature. In this process, higher-priority applications or behaviors are identified earlier, and their feature data is directed to higher-priority leaf nodes.

[0085] In this way, the device can dynamically update feature importance and reconstruct the model based on the updated feature importance, thereby better adapting to constantly changing user needs and network environments, ensuring the effectiveness and flexibility of bandwidth management strategies.

[0086] In some implementations, receiving the adjustment request in S103 includes one of the following:

[0087] Receive instructions to modify features;

[0088] Receive instructions to add new features; and

[0089] Receive instructions to delete features.

[0090] In this embodiment, the network access device can respond to user-inputted adjustment requests or adjustments calculated by a model. For example, a user can request to change the priority label of a specific feature (such as a type of application, a specific time period, etc.) through the user interface. Alternatively, the model might calculate that a user may want to increase the priority of an online education application between 7 PM and 9 PM. Upon receiving this instruction, the device updates the priority label of the corresponding feature (e.g., the target feature) to give the application higher weight and better resource allocation in subsequent bandwidth allocation and other decision-making processes. The device can also receive instructions to add new features. For example, when the device detects a new type of application, it incorporates the features of this new application as new features into the system's analysis and decision-making framework. If the device detects that certain features no longer have a significant impact on bandwidth adjustment decisions, or if the analysis model needs to be simplified due to system performance optimization, it removes the feature from the relevant data structures and decision-making processes to avoid unnecessary interference with subsequent bandwidth adjustment calculations.

[0091] In this way, users can dynamically adjust bandwidth allocation strategies according to their needs, thereby obtaining better service quality and a more personalized experience.

[0092] In some implementations, such as Figure 5 As shown, S104 updates the feature importance of the target feature based on the adjustment requirements, including:

[0093] S104-1: Analyze the adjustment requirement to obtain all the features contained in the adjustment requirement;

[0094] S104-2: Based on the mapping table between the various features and priority labels, determine the target features related to the adjustment requirements; and

[0095] S104-3: Modify the priority label of the target feature.

[0096] In this embodiment, upon receiving an adjustment request, the network access device first parses the request and extracts all features contained within it. For example, if the adjustment request is "to increase the priority of online education applications during weekday evenings from 7 PM to 9 PM," the device parses and obtains the specific features "online education applications" and "weekday evenings from 7 PM to 9 PM." The device pre-constructs a mapping table that corresponds to various features and priority labels, recording the priority of different feature combinations in different scenarios. After obtaining the features contained in the adjustment request, the device searches the mapping table for records that match these features to determine the target feature. For example, the device searches the mapping table for records that correspond to both the features "online education applications" and "weekday evenings from 7 PM to 9 PM," thus determining the target feature in that scenario. After determining the target feature, the priority label of the target feature is modified according to the specific direction of the adjustment request. If the adjustment requirement is to increase priority, then according to the priority adjustment rules, the priority label corresponding to the target feature is changed from the original lower level (such as "medium priority") to a higher level (such as "high priority"); conversely, if the requirement is to decrease priority, then the priority label is adjusted down accordingly.

[0097] In one example, determining the target features related to the adjustment requirements based on the mapping table between the various features and priority labels may include: establishing a multi-dimensional mapping table, where the first dimension is application type, classifying different applications into video, games, social, office, and download categories, and pre-setting attribute mappings related to bandwidth requirements, real-time requirements, and traffic characteristics for each application category; the second dimension is time, divided into weekday daytime (9:00-18:00), weekday evening (18:00-24:00), weekend daytime, and weekend evening, configuring corresponding typical application usage preference mappings for each time period; the third dimension is user identity, setting independent network usage permissions and preference configuration files for different groups or group groups such as family members (parents and children) and visitors, recording commonly used application types and special requirement mappings. During operation, the current application type, time, and user identity are comprehensively identified, and target features are extracted based on the mapping table. For each application, the importance of multiple features (such as usage time, device type, application type, etc.) is comprehensively considered to determine the final priority ranking. For example, even if a game app usually has a high priority, its priority may be temporarily reduced during the time when a child is taking online classes.

[0098] In one example, upon receiving an adjustment request: "Increase the priority of online education applications during weekday evenings from 8 PM to 9 PM," the device resolves the key information "weekday evenings from 8 PM to 9 PM" and "children taking online classes." It then searches the mapping table for matching time periods, application types, and specific behaviors as target features, increasing the priority tags for "8 PM to 9 PM," "online education applications," and "online classes." In cases of network congestion, bandwidth resources for these applications are prioritized, while bandwidth allocation for other non-critical applications is appropriately reduced.

[0099] In one example, suppose a network access device detects the following network usage: a child is taking online classes between 8 PM and 9 PM; other family members are watching high-definition videos; and a visitor is downloading files. The device then parses the key information "8 PM to 9 PM" and "child taking online classes." It then searches a mapping table for matching time periods, application types, and specific behaviors as target features, prioritizing the entries for "8 PM to 9 PM," "online education applications," and "online classes." In case of network congestion, bandwidth resources are prioritized for online education applications. High-definition video streams from other family members are allocated a relatively high bandwidth, but slightly less than for online classes. Simultaneously, the speed of visitor file downloads is appropriately reduced to free up more bandwidth for the two high-priority applications. In this example, the combination of usage time, application type, and device identity leads to priority increases. If the system detects that 8 PM to 9 PM is the time period for a child's online classes, then the importance of the "online classes" behavior feature increases significantly during this period. All applications related to online classes (such as educational video applications and online conferencing applications) will have their priority increased.

[0100] In some implementations, such as Figure 6 As shown, S105 adjusts the preset bandwidth parameters based on the updated feature importance, including:

[0101] S105-1: Based on the updated feature importance, update the priority labels in the mapping table between the various features and priority labels;

[0102] S105-2: Based on the updated mapping table, sort the applications by priority; and

[0103] S105-3: Allocate bandwidth resources for the applications according to their priority order.

[0104] After a feature importance is updated, the network access device updates the priority labels in the mapping table between the various features and priority labels. This mapping table records the priority labels corresponding to different features or combinations of features. At this time, the device modifies the relevant records in the mapping table according to the new feature importance, ensuring that the latest feature importance and user needs are promptly reflected in the bandwidth management strategy.

[0105] Typically, devices assign an initial priority to each application based on an initial priority label in a mapping table. For example, video applications might be given a higher priority by default, while background download applications would receive a lower priority. After feature importance updates, the device can iterate through all active applications, using the updated mapping table to re-evaluate the priority of each application and sort them according to the new importance order. For each application, the importance of multiple features (such as usage time, device type, and application type) is considered to determine the final priority ranking. For example, even if a game application usually has a high priority, its priority might be temporarily lowered during the time a child is taking online classes.

[0106] Finally, the device dynamically allocates available bandwidth resources based on the application priority ranking results.

[0107] This method enables dynamic allocation of bandwidth resources, prioritizing the smooth operation of critical applications under limited bandwidth conditions. Especially when multiple users share the same network, it ensures that each user enjoys stable and high-quality network service.

[0108] Here, priority is used to characterize the order in which different applications are allocated network resources. High-priority applications will be allocated more network resources (such as higher bandwidth or lower latency) to ensure the best quality of service (QoS). In situations of network congestion or limited bandwidth, high-priority applications can obtain the bandwidth they need first, ensuring the application runs normally and performs well.

[0109] In some implementations, prior to S101, the bandwidth adjustment method according to embodiments of this disclosure further includes:

[0110] By identifying messages sent by a terminal device, the application running on the terminal device is determined, wherein the terminal device accesses the network through the network access device;

[0111] The application's messages are marked, and the marks are mapped to user space; and

[0112] The user state acquires feature data for various features.

[0113] In this embodiment, the network access device determines the application running on the terminal device by analyzing and identifying the packets sent by the terminal device in kernel mode. This process can be achieved using Deep Packet Inspection (DPI) technology, which can deeply parse the content and characteristics of data packets. Data packets in the network contain information such as source address, destination address, port number, and application layer protocol. By parsing specific fields in these packets, such as the characteristic identifier of the application layer protocol or the correspondence between specific port numbers and applications, and comparing them with the application feature database pre-stored by the device, the type of application running on the terminal device can be accurately identified. For example, if the application layer protocol in the packet is detected to conform to the specific protocol format of video streaming, and the port number is also related to common video applications, it can be determined that the terminal device is running a video application. This identification method provides crucial basic information for subsequent bandwidth management, because different types of applications typically have different bandwidth requirements and network performance requirements.

[0114] After identifying the application, the application packets are tagged. This tag contains application-related information, such as application type and priority. The tag can be embedded in an extended field of the packet header or attached to the packet through other mechanisms (such as queue identifiers, VLAN tags, etc.). This tag is then mapped from kernel space to user space. Here, kernel space refers to the layer that performs low-level network data processing and packet identification. In kernel space, the system can perform some critical operations with direct control and access permissions to hardware, such as memory management, device driver execution, and process scheduling. User space, on the other hand, refers to the layer where applications run and users interact. In user space, users typically can only access their allocated memory space and some limited interface resources provided by the system; they cannot directly operate hardware devices or perform critical system management operations. After mapping the tag to user space, the relevant processing modules in user space can obtain the tag information. For example, when the tag indicates that an application is a real-time video conferencing application, the bandwidth management module in user space can use this information to ensure smooth video conferencing.

[0115] In some implementations, determining the application running on the terminal device by identifying the messages sent by the terminal device includes:

[0116] Parse the message to identify characteristic fields in the message; and

[0117] The feature fields are compared with the feature library of the network access device to determine the application running on the terminal device.

[0118] Typically, the information contained in a message is encapsulated according to a specific protocol format. When parsing a message, it is disassembled according to the corresponding network protocol standard (such as the TCP / IP protocol stack) to extract key information, namely feature fields. These feature fields may include source IP address, destination IP address, port number, application layer protocol type (such as HTTP, FTP, UDP, etc.), and specific application identification information (some applications embed unique identifiers in the message). For example, for an HTTP protocol message, feature fields such as the requested URL address and HTTP method (GET, POST, etc.) may be extracted. These fields can be used to identify the behavior and type of the application. Network access devices can pre-store a feature database containing a large amount of feature information for known applications. The feature fields obtained from parsing the message are compared with the information in this feature database. If a record matching the extracted feature fields is found in the database, it can be determined that the corresponding application is running on the terminal device. For example, if the extracted feature fields indicate a specific port number and an application layer protocol of a certain video streaming protocol, and the feature database shows that this combination of features is associated with a video application, then it can be determined that the terminal device is running that video application. In this way, different applications can be accurately identified.

[0119] The bandwidth adjustment method of this disclosure can acquire feature data of various features, determine the feature importance of each feature, receive adjustment requests, and update the feature importance of a target feature (a feature related to the adjustment request) based on the adjustment requests. Furthermore, it adjusts preset bandwidth parameters based on the updated feature importance. In this way, network resources can be rationally allocated according to the actual needs and importance of different applications, avoiding wasted bandwidth resources and insufficient bandwidth for critical applications due to indiscriminate allocation. This solution can comprehensively consider the differences of multiple features and dynamically adjust bandwidth parameters, thereby providing personalized network services based on users' actual usage habits and behaviors, thus improving the user's network experience.

[0120] Secondly, embodiments of this disclosure provide a network access device, which includes a processor 601 and a memory 602. The memory 602 stores a computer program executable by the processor 601, and when executed by the processor, the computer program implements any bandwidth adjustment method of the embodiments of this disclosure. The network access device further includes an input / output (I / O) interface 603 and a bus 604. The processor 601 and the memory 602 are interconnected via the bus 604, and the I / O interface 603 is also connected to the bus 604.

[0121] Thirdly, embodiments of this disclosure provide a computer program product, including a computer program that, when executed by a processor, implements any of the bandwidth adjustment methods of embodiments of this disclosure.

[0122] Fourthly, embodiments of this disclosure provide a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to cause the computer to execute any of the bandwidth adjustment methods of embodiments of this disclosure.

[0123] Here, the processor is a device with data processing capabilities, including but not limited to the central processing unit (CPU); the memory is a device with data storage capabilities, including but not limited to random access memory (RAM, more specifically SDRAM, DDR, etc.), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), and flash memory (FLASH); the I / O interface (read-write interface) connects the processor and the memory, enabling information exchange between the memory and the processor, including but not limited to the data bus (Bus).

[0124] Those skilled in the art will understand that all or some of the steps, systems, and devices disclosed above, as functional modules / units, can be implemented as software, firmware, hardware, or suitable combinations thereof.

[0125] In hardware implementations, the division between functional modules / units mentioned in the above description does not necessarily correspond to the division of physical components; for example, a physical component may have multiple functions, or a function or step may be executed by several physical components working together.

[0126] Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit (CPU), digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit (ASIC). Such software may be distributed on a computer-readable medium, which may include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technique for storing information (such as computer-readable instructions, data structures, program modules, or other data). Computer storage media include, but are not limited to, random access memory (RAM, more specifically SDRAM, DDR, etc.), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory (FLASH) or other disk storage; read-only optical disc (CD-ROM), digital versatile disc (DVD) or other optical disc storage; magnetic cartridges, magnetic tapes, disk storage or other magnetic storage; and any other media that can be used to store desired information and can be accessed by a computer. Furthermore, as is known to those skilled in the art, communication media typically contain computer-readable instructions, data structures, program modules, or other data in modulated data signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.

[0127] This disclosure has disclosed exemplary embodiments, and although specific terminology has been used, it is for general illustrative purposes only and should not be construed as limiting. In some instances, it will be apparent to those skilled in the art that features, characteristics, and / or elements described in conjunction with particular embodiments may be used alone, or in combination with features, characteristics, and / or elements described in conjunction with other embodiments, unless otherwise expressly indicated. Therefore, those skilled in the art will understand that various changes in form and detail may be made without departing from the scope of this disclosure as set forth by the appended claims.

Claims

1. A bandwidth adjustment method, applied to a network access device, the method comprising: Obtain feature data for various features; Determine the feature importance of each type of feature; Receive adjustment requests and confirm the target features corresponding to the adjustment requests; Update the feature importance of the target feature based on the adjustment requirements; Adjust the preset bandwidth parameters based on the updated feature importance.

2. The method according to claim 1, further comprising: Create a mapping table between the various features and priority labels; as well as Based on the priority labels in the mapping table, applications accessing network access devices are assigned corresponding priorities.

3. The method according to claim 1, wherein, Determining the feature importance of each type of feature includes: The various features are split into multiple decision trees, each structured around the splitting of the various features. Determine the importance coefficient of each feature in the multiple decision trees; The importance coefficients of each feature across all decision trees are summed; and The feature importance of each feature is determined by averaging the accumulated importance coefficients.

4. The method according to claim 3, wherein, Determine the importance coefficient of each feature in the multiple decision trees, including: Supervised learning algorithms are used to perform classification and fitting training on the feature data of the aforementioned types of features; The model, trained by classification fitting, is used to calculate the information gain or reduction in Gini impurity for each feature at each node of the multiple decision trees; and The importance coefficient of each feature is calculated based on its contribution to the reduction of information gain or Gini impurity at each node of the multiple decision trees.

5. The method according to claim 3 or 4, further comprising: Based on the updated feature importance, feature splitting is performed, and multiple decision trees are reconstructed.

6. The method according to claim 1, wherein, Receiving the adjustment request includes one of the following: Receive instructions to modify features; Receive instructions to add new features; and Receive instructions to delete features.

7. The method according to claim 1, wherein, The feature importance of updating the target features based on the aforementioned adjustment requirements includes: Analyze the adjustment requirements to obtain all the features contained in the adjustment requirements; Based on the mapping table between the various features and priority labels, determine the target features related to the adjustment requirements; and Modify the priority label of the target feature.

8. The method according to claim 1, wherein, Adjust the preset bandwidth parameters based on the updated feature importance, including: Based on the updated feature importance, update the priority labels in the mapping table between the various features and priority labels; Based on the updated mapping table, the applications are prioritized; and The bandwidth resources of the applications are allocated according to their priority order.

9. The method according to claim 1, wherein, Before acquiring feature data for various features, the method further includes: By identifying messages sent by a terminal device, the application running on the terminal device is determined, wherein the terminal device accesses the network through the network access device; The application's messages are marked, and the marks are mapped to user space; and The user state acquires feature data for various features.

10. The method according to claim 1, wherein, The various features include at least one or more of the following: time features, behavioral features, device features, application features, or scenario features.

11. A network access device, comprising a memory and a processor; the memory storing a computer program executable by the processor, wherein the computer program, when executed by the processor, implements the bandwidth adjustment method according to any one of claims 1 to 10.

12. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-10.