Data flow scheduling method and device based on service quality, medium and product
By dynamically adjusting the priority score and weight factor of the logical channel, the problem of static setting of the logical channel priority calculation weight in the 5G communication system is solved, and resource guarantee and system performance optimization of high-priority services are achieved.
Patent Information
- Application Number
- CN202510827924.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-20
- Publication Date
- 2025-07-22
- Estimated Expiration
- 2045-06-20
AI Technical Summary
In existing 5G communication systems, the logical channel priority calculation weight is usually set statically and cannot be dynamically adjusted according to different service needs, resulting in the inability to effectively ensure resource allocation of high-priority services.
By combining the 5QI value, data quantity, scheduling period and other factors of the logical channel, the priority score and weight factors of the logical channel are dynamically adjusted, and dynamic priority adjustments are made according to the changes in performance parameters to ensure resource allocation for high-priority services.
It realizes personalized weight configuration according to business needs, prioritizes high-priority services, improves resource acquisition rate, optimizes resource usage efficiency, and improves overall system performance.
Smart Images

Figure CN120358619A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of data flow scheduling, and particularly to a data flow scheduling method, device, medium, and product based on quality of service. Background Art
[0002] The priority calculation weights in the prior art usually involve the following factors: 5QI (Quality of Service Data Flow Indicator), MCS (Modulation and Coding Scheme), qload (queue load), and PDB (Packet Delay Budget). These weight values are usually set uniformly at the cell level, and a polling scheduling method is used for resource allocation. In traditional 5G communication systems, the weights for logical channel (LC) priority calculation are usually based on static settings, and this method cannot dynamically adjust priorities according to different service requirements. Summary of the Invention
[0003] The purpose of this application is to provide a data flow scheduling method, device, medium, and product based on quality of service, which can dynamically adjust the priority of each logical channel after the end of the scheduling period.
[0004] To achieve the above object, this application provides the following solutions: In the first aspect, this application provides a data flow scheduling method based on quality of service, including: Combining the 5QI value, data volume, and scheduling period of the logical channel to determine the scheduling priority score of the logical channel; the scheduling priority score includes: the priority score of the logical channel on the modulation and coding scheme index, the priority score on the service level index, the priority score on the delay urgency index, the priority score on the queue load index, and the priority score on the token fairness factor index; Determining the scheduling priority weight factor of the logical channel according to the quality of service requirements and network characteristics; the scheduling priority weight factor includes: the priority weight factor of the logical channel on the modulation and coding scheme index, the priority weight factor on the service level index, the priority weight factor on the delay urgency index, the priority weight factor on the queue load index, and the priority weight factor on the token fairness factor index; Calculating the comprehensive priority score of each logical channel according to the scheduling priority score and the scheduling priority weight factor; Determining the resource scheduling order of each logical channel according to the comprehensive priority score; At the end of each scheduling period, obtaining the performance parameters of the logical channel; the performance parameters include: average head packet delay, maximum head packet delay, average modulation and coding index, scheduling success rate, token consumption, and queue load; Update the scheduling priority weight factor of the corresponding logical channel according to the change of the performance parameter after each scheduling period; Calculate the comprehensive priority score of each logical channel according to the scheduling priority score and the updated scheduling priority weight factor, and obtain the updated comprehensive priority score; Update the resource scheduling order of each of the logical channels according to the updated comprehensive priority score.
[0005] In a second aspect, the present application provides a computer device, including: a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor executes the computer program to implement the service quality-based data flow scheduling method described in any one of the above.
[0006] In a third aspect, the present application provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, it implements the service quality-based data flow scheduling method described in any one of the above.
[0007] In a fourth aspect, the present application provides a computer program product, including a computer program, and when the computer program is executed by a processor, it implements the service quality-based data flow scheduling method described in any one of the above.
[0008] According to the specific embodiments provided by the present application, the following technical effects are disclosed in the present application: The present application provides a data flow scheduling method, device, medium and product based on quality of service. The method includes: determining a scheduling priority score of the logical channel by combining the 5QI value, data volume and scheduling period of the logical channel; the scheduling priority score includes: the priority score of the logical channel in terms of the modulation and coding scheme index, the priority score in terms of the service level index, the priority score in terms of the delay urgency index, the priority score in terms of the queue load index, and the priority score in terms of the token fairness factor index; determining a scheduling priority weight factor of the logical channel according to the quality of service requirements and network characteristics; the scheduling priority weight factor includes: the priority weight factor of the logical channel in terms of the modulation and coding scheme index, the priority weight factor in terms of the service level index, the priority weight factor in terms of the delay urgency index, the priority weight factor in terms of the queue load index, and the priority weight factor in terms of the token fairness factor index; calculating a comprehensive priority score of each logical channel according to the scheduling priority score and the scheduling priority weight factor; determining the resource scheduling order of each logical channel according to the comprehensive priority score; at the end of each scheduling period, obtaining the performance parameters of the logical channel; the performance parameters include: average head packet delay, maximum head packet delay, average modulation and coding index, scheduling success rate, token consumption, and queue load; updating the scheduling priority weight factor of the corresponding logical channel according to the change of the performance parameters after each scheduling period; calculating a comprehensive priority score of each logical channel according to the scheduling priority score and the updated scheduling priority weight factor to obtain an updated comprehensive priority score; updating the resource scheduling order of each logical channel according to the updated comprehensive priority score. In the present application, at the end of each scheduling period, the performance parameters of the logical channel are obtained, and then the priorities of each logical channel are dynamically adjusted according to these performance parameters, thereby solving the technical problem that in the traditional 5G communication system, the weights for calculating the logical channel priorities are usually based on static settings. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0010] Figure 1 FIG. is a schematic flowchart of a data flow scheduling method based on quality of service provided by an embodiment of the present application.
[0011] Figure 2 FIG. is a schematic structural diagram of a computer device provided by an embodiment of the present application. Detailed implementation manners
[0012] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Apparently, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present application without creative efforts shall fall within the protection scope of the present application.
[0013] The present application relates to a scheduling method capable of dynamically adjusting the weight of the logical channel (LC) priority calculation according to service requirements, which is used to solve the problem of inflexible priority calculation in the prior art. Especially when ensuring the scheduling of high-priority services, it can perform customized resource allocation according to the requirements of different services.
[0014] In a traditional 5G communication system, the weight of the logical channel (LC) priority calculation is usually based on static settings, and this method cannot dynamically adjust the priority according to different service requirements. The priority calculation weights in the prior art usually involve the following factors: 5QI (Quality of Service Data Flow Indicator), MCS (Modulation and Coding Scheme), qload (queue load), and PDB (Packet Delay Budget). These weight values are usually set uniformly at the cell level and resource allocation is performed in a round-robin scheduling manner. The traditional round-robin scheduling scheme usually causes the following problems: 1. The round-robin scheduling equally distributes to all user terminals (UEs) and cannot give priority to high-priority services; 2. The priority calculation does not meet the actual requirements. For example, a UE set to 5QI1 requires the highest priority, but its channel conditions (such as MCS) and data volume (such as qload) are small; while a UE set to 5QI4 should have a lower priority, but its channel conditions and data volume are large, resulting in a priority calculation result higher than expected. Therefore, the traditional scheduling scheme cannot reasonably allocate network resources according to specific service requirements and cannot meet the guarantee requirements of high-priority services.
[0015] The present application provides a data flow scheduling method based on QoS (Quality of Service), which can dynamically adjust the weight of the logical channel (LC) priority calculation according to specific service requirements and provide priority guarantee for high-priority services. This method solves the limitations of the traditional scheduling scheme in priority calculation by performing personalized weight configuration for different service requirements.
[0016] Each logical channel includes the following 5 types of priorities:
[0017] Among them, Weight is the priority weight factor of each parameter, with a value range of 0 to 10; Priority is the specific value of the priority score of each parameter, with a value range of 0 to 100.
[0018] The core technical solutions are as follows: 1. Dynamic priority configuration: Dynamically adjust the calculation weights according to factors such as 5QI, MCS, qload, and PDB of each service, and determine the priority of the UE based on the combined influence of these factors; 2. Customized weight configuration: Different 5QI types of services can set different weight configurations to ensure that high-priority services are scheduled first; 3. Comprehensive consideration of multiple factors: The priority calculation needs to consider the combined influence of factors such as MCS, qload, and PDB; 4. Flexible parameter adjustment: When there is no clear priority requirement, the weights can be uniformly configured to enhance the flexibility of scheduling.
[0019] Special note: The value range of the above W weight factor is usually 0 - 10, which is used to adjust the relative importance of each priority score factor (P1~P5) in the total weight calculation. The weight value can be set based on preset static configuration or dynamically fine-tuned according to system statistical indicators. The system also supports a dynamic adjustment mechanism based on feedback, and periodically updates the values of W1~W5 according to parameters such as scheduling success rate, HoL delay, MCS distribution, and Token consumption, so as to optimize the resource allocation effect.
[0020] Compared with the traditional scheduling scheme, the technical effects of this application are as follows: 1. Prioritize high-priority services and improve the resource acquisition rate of key services; 2. Meet the differentiated scheduling requirements of different types of services through parameterized configuration; 3. Optimize resource utilization efficiency and improve the overall performance of the system; 4. Have good scalability and environmental adaptability.
[0021] To make the above objects, features, and advantages of this application more obvious and understandable, the following further details this application in conjunction with the accompanying drawings and specific embodiments.
[0022] In an exemplary embodiment, as Figure 1 shown, a data flow scheduling method based on quality of service is provided. This method is executed by a computer device, which can be specifically executed by a computer device such as a terminal or a server alone, or jointly executed by a terminal and a server. In the embodiments of this application, this method is described by taking it as an example applied to a server, and includes the following steps S1 to S8. Among them: S1. Determine the scheduling priority score of the logical channel by combining the 5QI value, data volume, and scheduling period of the logical channel; the scheduling priority score includes: the priority score of the logical channel in terms of the modulation and coding scheme index, the priority score in terms of the service level index, the priority score in terms of the delay urgency index, the priority score in terms of the queue load index, and the priority score in terms of the token fairness factor index.
[0023] Specifically: S11. Obtain the priority score of the logical channel in terms of the modulation and coding scheme index.
[0024] Obtain the modulation and coding scheme level value used by the logical channel; according to the preset predefined level table, map the modulation and coding scheme level value to the corresponding priority score of the logical channel in terms of the modulation and coding scheme index.
[0025] In this embodiment, for the parameter P1 (the priority score of the logical channel in terms of the modulation and coding scheme index), obtain the MCS (modulation and coding scheme) level value used by the current logical channel. The higher the value, the better the link quality; map the MCS level value to the predefined level table. For example, MCS = 0 corresponds to P1 = 20, MCS = 28 corresponds to P1 = 100. Specifically, the linear interval assignment method is adopted. The priority configurations corresponding to different MCS levels are as follows: MCS = 0 corresponds to P1 = 20, MCS = 1 corresponds to P1 = 22, MCS = 2 corresponds to P1 = 24, MCS = 3 corresponds to P1 = 26, MCS = 4 corresponds to P1 = 28, MCS = 5 corresponds to P1 = 30, MCS = 6 corresponds to P1 = 32, MCS = 7 corresponds to P1 = 34, MCS = 8 corresponds to P1 = 36, MCS = 9 corresponds to P1 = 38, MCS = 10 corresponds to P1 = 40, MCS = 11 corresponds to P1 = 42, MCS = 12 corresponds to P1 = 44, MCS = 13 corresponds to P1 = 46, MCS = 14 corresponds to P1 = 48, MCS = 15 corresponds to P1 = 50, MCS = 16 corresponds to P1 = 52, MCS = 17 corresponds to P1 = 54, MCS = 18 corresponds to P1 = 56, MCS = 19 corresponds to P1 = 58, MCS = 20 corresponds to P1 = 60, MCS = 21 corresponds to P1 = 65, MCS = 22 corresponds to P1 = 70, MCS = 23 corresponds to P1 = 75, MCS = 24 corresponds to P1 = 80, MCS = 25 corresponds to P1 = 85, MCS = 26 corresponds to P1 = 90, MCS = 27 corresponds to P1 = 95, MCS = 28 corresponds to P1 = 100.
[0026] S12. Determine the priority score of the logical channel in terms of the service level index according to the 5QI value of the logical channel.
[0027] The parameter P2 in this embodiment (the priority score of the logical channel in terms of the service level indicator), the priority score of the logical channel in terms of the service level indicator is preset according to the service type corresponding to each logical channel, that is, the 5QI value, and is usually statically determined during the system design phase. Different 5QI values represent different service types, and the requirements for quality of service (QoS) of each service type are different, so the corresponding priority scores (P2 scores) are also different.
[0028] The following is a typical mapping method from specific 5QI values to P2 scores, as shown in Table 1: Table 1 Typical Mapping Method Table from 5QI Values to P2 Scores
[0029] Therefore, when determining the initial P2 score for the service carried by the logical channel, directly obtain the corresponding score value by referring to the preset basic priority table according to the 5QI type of the service. This can ensure that the basic service quality requirements of the service type are fully reflected in the overall scheduling priority calculation.
[0030] S13. Determine the priority score of the logical channel in terms of the delay urgency indicator by querying a preset relationship table according to the packet delay budget and link delay of the logical channel.
[0031] The parameter P3 in this embodiment (the priority score of the logical channel in terms of the delay urgency indicator), first, determine the packet delay budget of the logical channel according to the 5QI value of the logical channel.
[0032] In this embodiment, different 5QI (QoS Identifier) levels are distinguished according to services, and different PDB (packet delay budget) delays are configured for different 5QI services. Delay (DELAY) is a key indicator for measuring system performance in a 5G communication system.
[0033] Then, calculate the link delay of the logical channel. The calculation formula is: DELAY = current_tick – tick_bo_received, where current_tick represents the currently recorded time, tick_bo_received represents the time when data is received, and DELAY represents the link delay.
[0034] In this embodiment, calculate the current Head-of-Line Delay (HoL delay, link delay) of this logical channel.
[0035] Finally, according to the packet delay budget of the logical channel and the link delay, the priority score of the logical channel in terms of the delay urgency index is determined by querying a preset relationship table; wherein, the preset relationship table is a priority score query table of the logical channel in terms of the delay urgency index preset according to the comparison relationship between the link delay and the packet delay budget.
[0036] In this embodiment, the priority is set according to the comparison between the DELAY value and the PDB (packet delay budget). The priority scores corresponding to each DELAY interval are set as shown in Table 2 below: Table 2 Priority Score Table Corresponding to Each DELAY Interval
[0037] Different PDB values are set for different 5QI services. For the service with 5QI = 1, the PDB is set to 80 ms; for 5QI = 2, the PDB is set to 110 ms; for 5QI = 3, the PDB is set to 120 ms; for 5QI = 4, the PDB is set to 150 ms. Then, the DELAY value is obtained through the formula for calculating the link delay, and the priority score is determined by looking up the table respectively.
[0038] For example, for the service with 5QI = 1 and the PDB set to 80 ms, the corresponding priority is as shown in Table 3 below. Then, through the delay value calculated above, the priority value is determined by looking up the table.
[0039] Table 3 Priority Score Table Corresponding to Each DELAY Interval after the PDB is Set to 80 ms
[0040] S14. Determine the priority score of the logical channel in terms of the queue load index according to the data volume size of the queue load of the logical channel.
[0041] In this embodiment, the parameter P4 (the priority score of the logical channel in terms of the queue load index) is an important index reflecting the current data load degree of the logical channel. Its specific value is generally set by statistically counting the number of bits (bit number) or the number of data packets of the data to be scheduled in the buffer queue of the logical channel, and setting different levels of priority scores according to the data volume size. In this embodiment, the queue load priority score (P4) is generally set by using the method of segmented mapping. The example is as shown in Table 4 below: Table 4 Priority Score Table of the Logical Channel in Terms of the Queue Load Index
[0042] The above bit number intervals are only examples and can be adjusted according to the specific network environment and service requirements.
[0043] S15. Determine the priority score of the logical channel in terms of the token fairness factor according to the scheduling period.
[0044] Parameter P5 (priority score of the logical channel in terms of the token fairness factor) in this embodiment: Parameter P5 is used to evaluate the scheduling situation of each logical channel under the fair scheduling mechanism to ensure that each logical channel can obtain scheduling resources reasonably and fairly. At the beginning of each scheduling period, a fixed number of initial tokens (such as 10) are allocated to each logical channel. Each token represents one scheduling opportunity, that is, if a logical channel successfully obtains one scheduling resource, one token is correspondingly deducted.
[0045] S2. Determine the scheduling priority weight factor of the logical channel according to the quality of service requirements and network characteristics; the scheduling priority weight factor includes: the priority weight factor W1 of the logical channel in terms of the modulation and coding scheme index, the priority weight factor W2 in terms of the service level index, the priority weight factor W3 in terms of the delay urgency index, the priority weight factor W4 in terms of the queue load index, and the priority weight factor W5 in terms of the token fairness factor.
[0046] In this embodiment, the initial values of W1 to W5 are determined first: The determination methods of the initial values of the weight factors W1 to W5 can be specifically clarified as follows: The initial values of each weight factor W are generally statically preset based on the QoS requirements and network characteristics of different service types (for example: URLLC, eMBB, BE, etc.) so that the initial scheduling strategy can effectively reflect the typical QoS requirements of the services. Specifically, the initial settings of W1 to W5 are usually as shown in Table 5 below:
[0047] Typical W value examples for each service scenario are as shown in Table 6 below: Table 6 Typical W value example table for each service scenario
[0048] S3. Calculate the comprehensive priority score of each logical channel according to the scheduling priority score and the scheduling priority weight factor.
[0049] The QoS data flow scheduling method of this application mainly determines the allocation order of scheduling resources through the comprehensive priority score of the logical channel. The comprehensive priority score of each logical channel is calculated by the following formula: LC_WEIGHT = W1 × P1 + W2 × P2 + W3 × P3 + W4 × P4 + W5 × P5; Wherein, LC_WEIGHT represents the comprehensive priority score of the logical channel, W1 represents the priority weight factor of the logical channel in terms of the modulation and coding scheme index, P1 represents the priority score of the logical channel in terms of the modulation and coding scheme index, W2 represents the priority weight factor of the logical channel in terms of the service level index, P2 represents the priority score of the logical channel in terms of the service level index, W3 represents the priority weight factor of the logical channel in terms of the delay urgency index, P3 represents the priority score of the logical channel in terms of the delay urgency index, W4 represents the priority weight factor of the logical channel in terms of the queue load index, P4 represents the priority score of the logical channel in terms of the queue load index, W5 represents the priority weight factor of the logical channel in terms of the token fairness factor index, and P5 represents the priority score of the logical channel in terms of the token fairness factor index.
[0050] S4. Determine the resource scheduling order of each of the logical channels according to the comprehensive priority score.
[0051] S5. At the end of each scheduling period, obtain the performance parameters of the logical channel; the performance parameters include: average head packet delay, maximum head packet delay, average modulation and coding index, scheduling success rate, token consumption, and queue load.
[0052] Statistical scheduling metrics. At the end of each scheduling period, the scheduler collects the key performance indicators of each logical channel for evaluating the effect of the current scheduling strategy, including but not limited to: Parameter 1: Average head packet delay HOL_Delay[i]: Meaning: The average queuing delay of the first packet in the queue of the i-th logical channel, reflecting the current delay guarantee status of this service.
[0053] Detailed acquisition method: During each statistical period (such as 100 ms to 500 ms), calculate the delay of the head packets in each logical channel queue. Specifically: ; Where: current_tick is the current count value or timestamp of the system; tick_bo_received is the count value or timestamp when the head packet enters the queue (first enters the buffer).
[0054] At the end of the statistical period, calculate the arithmetic mean of all head packet delay values to obtain: ; Where N is the number of samples of the head packets of this logical channel during the statistical period.
[0055] Parameter 2: Maximum head packet delay HOL_Delay_max[i]: Meaning: The maximum queuing delay of the first packet in the i-th logical channel queue, which is used to capture the potential burst delay risk of this service.
[0056] Detailed acquisition method: During the statistical period, the calculation method of the head packet delay for each sampling is the same as described above: ; After each sampling, compare it with the recorded maximum value. If it is larger, update it: HOL_Delay_max[i]=max(HOL_Delay_max[i],DELAY), which is the maximum delay value within the final recording period.
[0057] Parameter 3: Average MCS level MCS_Used[i] (average modulation and coding index): Meaning: The average modulation and coding index actually used during the scheduling process, which is used to evaluate the link quality and whether the scheduling overly favors users with high channel quality.
[0058] Detailed acquisition method: After each scheduling is completed, record the MCS value used by this logical channel. For M schedulings within the period, calculate the average: ; where MCS_j is the MCS level used in the j-th scheduling.
[0059] Parameter 4: Scheduling success rate Sched_Success_Rate[i]: Meaning: The ratio of the number of successful scheduling times obtained by the i-th logical channel to the total number of attempted scheduling times, which measures the fairness of the scheduling resource allocation among channels (a lower success rate indicates that this channel may not have received sufficient resources for a long time).
[0060] Detailed acquisition method: During each attempted scheduling, if the logical channel is successfully allocated resources, record the number of successful times; if not, record the failure. The calculation formula is: Sched_Success_Rate[i]=Number of successful scheduling times / Total number of attempted scheduling times; For example, if there are 10 attempted schedulings in a period and 7 are successful, the success rate is 70%.
[0061] Parameter 5: Token consumption Token_Consumption[i]: Meaning: The number of tokens consumed by the i-th logical channel within the current period, which reflects the triggering and usage of the token bucket fair scheduling mechanism (a too low value indicates that the tokens of this channel have not been used for a long time).
[0062] Detailed acquisition method: Each logical channel is assigned a token bucket mechanism. At the beginning of each period, a certain number of tokens are initially allocated. Each time a scheduling is successful, the corresponding number of tokens is deducted (for example, one token is deducted for each successful scheduling). At the end of the period, the total token consumption of the logical channel is counted: Token_Consumption[i] = Initial number of tokens in the period - Remaining number of tokens at the end of the period; If no tokens are consumed during the period, it means that the logical channel has not obtained a scheduling opportunity or has obtained few opportunities.
[0063] Parameter 6: Queue load Qload[i]: Meaning: The amount of data in the current buffer of the i-th logical channel (for example, the number of bits, which can take the average or maximum value within the period), used to measure the congestion degree and queuing demand size of the channel.
[0064] Detailed acquisition method: During the statistical period, the amount of data in the logical channel buffer queue is sampled and recorded multiple times (for example, the number of bits in the queue is recorded every 1 ms or 5 ms), and the total number of samplings is L. After the statistical period ends, the following can be calculated: Average load: ; Qload k is the number of bits of data to be transmitted in the queue at the k-th sampling, L is the total number of samplings.
[0065] S6. According to the changes of the performance parameters after each scheduling period, update the scheduling priority weight factor of the corresponding logical channel.
[0066] In this embodiment, the performance parameters obtained are first subjected to index normalization processing. For the convenience of subsequent decision-making, the original data collected is normalized and the trend is extracted. Specifically, each performance parameter is converted into a relative value: Average head packet delay ratio Di = HOL_Delay_avg[i] / PDB[i].
[0067] Maximum head packet delay ratio .
[0068] Average MCS ratio , MCS_max = 28, which is the maximum coding level currently supported by the gNB.
[0069] Scheduling success rate = Number of successful schedulings / Number of attempted schedulings.
[0070] Token consumption rate , Token_init is the total number of tokens allocated to this LC in this period, which is 10.
[0071] Average queue occupancy ratio ; Qload_th can be set to the buffer upper limit or the "congestion threshold" set by the operator (e.g., 500 KB).
[0072] Specifically as shown in Table 7 below: Table 7 Example Table of Performance Parameter Normalization
[0073] Trigger condition determination and weight fine-tuning: In this embodiment, the scheduler takes 100 ms as the statistical period, and continuously collects and normalizes six indicators for each logical channel in two consecutive periods (i.e., 200 ms): average head packet delay ratio , maximum head packet delay ratio , average MCS ratio , scheduling success rate , token consumption rate and average queue occupancy ratio . If ≥0.80 and ≥0.90 (continuous high delay), ≤0.70 (insufficient scheduling success rate), ≤0.20 or 5QI≥4 and =0 (token / low-priority service starvation), ≥0.75 (long-term queue congestion), or ≥0.80 and ≥0.90 (high MCS monopoly) and any one of these conditions holds continuously, then enter the weight adjustment process; in addition, if any sampling shows ≥0.95 instantaneous explosion, immediately trigger an emergency adjustment.
[0074] Among them, according to the changes of the performance parameters after each scheduling period, the specific steps to update the scheduling priority weight factor of the corresponding logical channel are as follows: S61. When the average head packet delay of the logical channel is greater than the first preset threshold and the maximum head packet delay is greater than the second preset threshold after two consecutive scheduling periods, then increase the priority weight factor in the delay urgency index by the first preset value, and at the same time decrease the priority weight factor in the modulation and coding scheme index by the second preset value.
[0075] When this embodiment is specifically implemented using the normalized performance parameters: Continuous high latency: If the average first-packet latency ratio Di ≥ 0.80 and the maximum first-packet latency ratio Di_max ≥ 0.90, and this holds for two consecutive periods, then increase the latency weight (priority weight factor in the latency urgency metric) W3 by Δ, and at the same time decrease the channel quality weight (priority weight factor in the modulation and coding scheme metric) W1 by Δ / 2. Purpose: To prioritize latency-sensitive services and gently reduce the preference for high-MCS users.
[0076] S62. When the average first-packet latency of the logical channel is greater than the third preset threshold after the scheduling period ends, increase the priority weight factor in the latency urgency metric by the third preset value.
[0077] When this embodiment is specifically implemented using the normalized performance parameters: Instantaneous latency off the charts: If any single sampling shows ≥ 0.95, immediately increase W3 by 2Δ. Purpose: To quickly suppress extreme latency and prevent it from going off the charts again.
[0078] S63. When the scheduling success rate is less than the fourth preset threshold for two consecutive scheduling periods, increase the priority weight factor in the token fairness factor metric by the fourth preset value, and at the same time decrease the priority weight factor in the modulation and coding scheme metric by the fifth preset value.
[0079] When this embodiment is specifically implemented using the normalized performance parameters: If the scheduling success rate Si ≤ 0.70 for two consecutive periods, increase the fairness weight W5 by Δ and decrease W1 by Δ / 2. Purpose: To give "weak" logical channels more opportunities and at the same time suppress excessive bias towards good channels.
[0080] S64. When the token consumption is less than the fifth preset threshold for two consecutive scheduling periods, increase the priority weight factor in the token fairness factor metric by the fifth preset value.
[0081] When this embodiment is specifically implemented using the normalized performance parameters: If the token consumption rate Ti ≤ 0.20 for two consecutive periods, increase W5 by Δ. Purpose: To ensure that the token scheduling mechanism truly plays a fair role.
[0082] S65. When the queue load is greater than the sixth preset threshold for two consecutive scheduling periods, increase the priority weight factor in the queue load metric by the sixth preset value, and at the same time decrease the priority weight factor in the modulation and coding scheme metric by the seventh preset value.
[0083] When this embodiment is specifically implemented using the normalized performance parameters: Congestion-related: If the average queue occupancy ratio Qi ≥ 0.75 for two consecutive periods, then increase the queue load weight W4 by Δ and decrease W1 by Δ / 2. Purpose: Prioritize the dredging of severely congested queues and at the same time curb the scheduling strategy of "only selecting good channels".
[0084] S66. When the average modulation and coding index is greater than the seventh preset threshold and the scheduling success rate is greater than the eighth preset threshold after two consecutive scheduling periods, then decrease the priority weight factor for the modulation and coding scheme index by the eighth preset value, and at the same time increase the priority weight factor for the service level index or the priority weight factor for the queue load index by the ninth preset value.
[0085] When this embodiment is specifically implemented using the normalized performance parameters: If the average MCS ratio Mi ≥ 0.80 and the scheduling success rate Si ≥ 0.90 for two consecutive periods, then decrease W1 by Δ and increase W2 or W4 by Δ / 2.
[0086] In addition, if 5QI ≥ 4 and Si = 0 for two consecutive periods, then increase W5 by Δ and decrease W2 by Δ / 2. Purpose: Ensure that all services obtain at least basic resources and avoid extreme unfairness.
[0087] Among them, Δ is default set to 5% (i.e., 1.05 × the current Wk). At most two weight factor dimensions can be changed in a single period, and after adjustment, it is forced to satisfy 0 ≤ Wk ≤ 10. The weight is immediately written into the operation table after being updated, takes effect in the next TTI, and is synchronously recorded in the O&M log (Operations & Maintenance Log), which is an operation record automatically generated by the communication device for facilitating daily operation and maintenance, fault troubleshooting, and auditing. For KPI backtracking. If multiple conditions are triggered in the same period, they are executed according to the priority: instantaneous explosion > continuous high latency > congestion-related; the remaining conditions are postponed to the next period to avoid multiple action conflicts.
[0088] S7. According to the scheduling priority score and the updated scheduling priority weight factor, calculate the comprehensive priority score of each logical channel to obtain the updated comprehensive priority score.
[0089] In this embodiment, after completing the above weight adjustment decision, the scheduling module updates the weight factors W1 to W5 in the priority calculation formula for each logical channel (LC). The specific implementation method is as follows: Replace the weight factors used in the previous scheduling period with the new values (W1~W5) of the adjusted weight factors determined above. These new weight factors will take effect in the calculation process of the next scheduling period and are used to recalculate the comprehensive priority score (LC_WEIGHT) of each logical channel.
[0090] At the beginning of a new scheduling cycle, the scheduler recalculates the comprehensive priority scores of all logical channels through a formula using the updated weight factors (W1 - W5).
[0091] S8. Update the resource scheduling order of each of the logical channels according to the updated comprehensive priority scores.
[0092] In this embodiment, the logical channels are reordered with the updated comprehensive priority scores, thereby determining the resource scheduling order of each logical channel in the new cycle.
[0093] The closed-loop feedback mechanism adopted in this embodiment is as follows: through the above closed-loop process, namely "measurement → normalization processing → trigger condition determination → weight fine-tuning → weight update and application", the weight factors W1 - W5 can continuously be dynamically optimized according to the real-time network state and service requirements changes, gradually approaching the optimal configuration, realizing that the scheduling system adaptively optimizes the resource allocation strategy, and ensuring a flexible response to the service QoS requirements.
[0094] By continuously executing this closed-loop feedback and dynamic optimization mechanism in this embodiment, the scheduling strategy can always effectively respond to the changes in the actual network load and user service requirements, significantly improving the network resource utilization efficiency and the user experience quality.
[0095] In an exemplary embodiment, a computer device is provided. The computer device can be a server or a terminal, and its internal structure diagram can be as Figure 2 shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O), and a communication interface. Among them, the processor, the memory, and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used for exchanging information between the processor and external devices. The communication interface of the computer device is used for communicating with external terminals through a network connection. When the computer program is executed by the processor, it implements a data flow scheduling method based on quality of service.
[0096] Those skilled in the art can understand that Figure 2 the structure shown in is only a block diagram of some structures related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.
[0097] In an exemplary embodiment, a computer device is further provided, including a memory and a processor. A computer program is stored in the memory, and when the processor executes the computer program, the steps in the above method embodiments are implemented.
[0098] In an exemplary embodiment, a computer-readable storage medium is provided, storing a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.
[0099] In an exemplary embodiment, a computer program product is provided, including a computer program, and when the computer program is executed by a processor, the steps in the above method embodiments are implemented.
[0100] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use, and processing of relevant data need to comply with relevant regulations.
[0101] Those of ordinary skill in the art can understand that all or part of the processes of implementing the above method embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the above method embodiments. Among them, any reference to a memory, database, or other medium used in the various embodiments provided in this application can include at least one of non-volatile and volatile memories. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc.
[0102] In each of the embodiments provided in this application, the databases involved may include at least one of a relational database and a non-relational database. The non-relational database may include a distributed database based on blockchain, etc., without limitation. The processors involved in each of the embodiments provided in this application may be a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., without limitation.
[0103] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.
[0104] Specific examples are used in this article to elaborate on the principles and implementation manners of this application. The description of the above embodiments is only used to help understand the method and its core idea of this application; at the same time, for those of ordinary skill in the art, according to the idea of this application, there will be changes in the specific implementation manners and application scopes. In summary, the content of this specification should not be construed as a limitation to this application.
Claims
1. A data flow scheduling method based on quality of service, characterized in that Including: Combining the 5QI value, data volume, and scheduling period of a logical channel to determine the scheduling priority score of the logical channel; The scheduling priority score includes: the priority score of the logical channel in terms of the modulation and coding scheme metric, the priority score in terms of the service level metric, the priority score in terms of the delay urgency metric, the priority score in terms of the queue load metric, and the priority score in terms of the token fairness factor metric; Determining the scheduling priority weight factor of the logical channel according to the quality of service requirements and network characteristics; the scheduling priority weight factor includes: the priority weight factor of the logical channel in terms of the modulation and coding scheme metric, the priority weight factor in terms of the service level metric, the priority weight factor in terms of the delay urgency metric, the priority weight factor in terms of the queue load metric, and the priority weight factor in terms of the token fairness factor metric; Calculating the comprehensive priority score of each logical channel according to the scheduling priority score and the scheduling priority weight factor; Determining the resource scheduling order of each logical channel according to the comprehensive priority score; At the end of each scheduling period, obtaining the performance parameters of the logical channel; the performance parameters include: average head packet delay, maximum head packet delay, average modulation and coding index, scheduling success rate, token consumption, and queue load; Updating the scheduling priority weight factor of the corresponding logical channel according to the change of the performance parameters after each scheduling period; Calculating the comprehensive priority score of each logical channel according to the scheduling priority score and the updated scheduling priority weight factor to obtain the updated comprehensive priority score; Updating the resource scheduling order of each logical channel according to the updated comprehensive priority score.
2. The method for scheduling data streams based on quality of service according to claim 1, characterized in that, The step of combining the 5QI value, data volume, and scheduling period of the logical channel to determine the scheduling priority score of the logical channel specifically includes: Obtaining the priority score of the logical channel in terms of the modulation and coding scheme metric; Determining the priority score of the logical channel in terms of the service level metric according to the 5QI value of the logical channel; Determining the priority score of the logical channel in terms of the delay urgency metric by querying a preset relationship table according to the packet delay budget and link delay of the logical channel; Determining the priority score of the logical channel in terms of the queue load metric according to the data volume size of the queue load of the logical channel; Determining the priority score of the logical channel in terms of the token fairness factor metric according to the scheduling period.
3. The method for scheduling data streams based on quality of service according to claim 2, wherein The step of obtaining the score of the logical channel in terms of the modulation and coding scheme metric specifically includes: Obtaining the modulation and coding scheme level value used by the logical channel; Mapping the modulation and coding scheme level value to the corresponding priority score of the logical channel in terms of the modulation and coding scheme metric according to a preset predefined level table.
4. The method for scheduling data streams based on quality of service according to claim 2, wherein, Determining the priority score of the logical channel in terms of the delay urgency metric by querying a preset relationship table according to the packet delay budget and link delay of the logical channel specifically includes: Determining the packet delay budget of the logical channel according to the 5QI value of the logical channel; Calculate the link delay of the logical channel. The calculation formula is: DELAY = current_tick – tick_bo_received, where current_tick represents the currently recorded time, tick_bo_received represents the time when data is received, and DELAY represents the link delay; Determine the priority score of the logical channel in terms of the delay urgency metric based on the packet delay budget and link delay of the logical channel by querying a preset relationship table; where the preset relationship table is a query table for the priority scores of logical channels in terms of the delay urgency metric preset according to the comparison relationship between the link delay and the packet delay budget.
5. The method for scheduling data flow based on quality of service according to claim 1, wherein Updating the scheduling priority weight factor corresponding to the logical channel according to the change of the performance parameter after each scheduling period specifically includes: When the average head packet delay of the logical channel is greater than the first preset threshold and the maximum head packet delay is greater than the second preset threshold after two consecutive scheduling periods, increase the priority weight factor in terms of the delay urgency metric by the first preset value, and at the same time decrease the priority weight factor in terms of the modulation and coding scheme metric by the second preset value; When the average head packet delay of the logical channel is greater than the third preset threshold after a scheduling period, increase the priority weight factor in terms of the delay urgency metric by the third preset value; When the scheduling success rate is less than the fourth preset threshold after two consecutive scheduling periods, increase the priority weight factor in terms of the token fairness factor metric by the fourth preset value, and at the same time decrease the priority weight factor in terms of the modulation and coding scheme metric by the fifth preset value; When the token consumption is less than the fifth preset threshold after two consecutive scheduling periods, increase the priority weight factor in terms of the token fairness factor metric by the fifth preset value; When the queue load is greater than the sixth preset threshold after two consecutive scheduling periods, increase the priority weight factor in terms of the queue load metric by the sixth preset value, and at the same time decrease the priority weight factor in terms of the modulation and coding scheme metric by the seventh preset value; When the average modulation and coding index is greater than the seventh preset threshold and the scheduling success rate is greater than the eighth preset threshold after two consecutive scheduling periods, decrease the priority weight factor in terms of the modulation and coding scheme metric by the eighth preset value, and at the same time increase the priority weight factor in terms of the service level metric or the priority weight factor in terms of the queue load metric by the ninth preset value.
6. The method for scheduling data streams based on quality of service according to claim 5, characterized in that When multiple situations are triggered within the same period, process them in the preset order sequentially, and only change two weight factors within each period.
7. The method for scheduling data streams based on quality of service according to claim 1, wherein The calculation formula for calculating the comprehensive priority score of each logical channel according to the scheduling priority score and the scheduling priority weight factor is: LC_WEIGHT = W1×P1 + W2×P2 + W3×P3 + W4×P4 + W5×P5; Among them, LC_WEIGHT represents the comprehensive priority score of the logical channel, W1 represents the priority weight factor of the logical channel in terms of the modulation and coding scheme index, P1 represents the priority score of the logical channel in terms of the modulation and coding scheme index, W2 represents the priority weight factor of the logical channel in terms of the service level index, P2 represents the priority score of the logical channel in terms of the service level index, W3 represents the priority weight factor of the logical channel in terms of the delay urgency index, P3 represents the priority score of the logical channel in terms of the delay urgency index, W4 represents the priority weight factor of the logical channel in terms of the queue load index, P4 represents the priority score of the logical channel in terms of the queue load index, and W5 represents the priority weight factor of the logical channel in terms of the token fairness factor index, and P5 represents the priority score of the logical channel in terms of the token fairness factor index.
8. A computer device, comprising: A memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor executes the computer program to implement the quality of service-based data flow scheduling method according to any one of claims 1-7.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the quality of service-based data flow scheduling method according to any one of claims 1-7.
10. A computer program product comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the quality of service-based data flow scheduling method according to any one of claims 1-7.
Citation Information
Patent Citations
Method for determining user priority order in long term evolution (LTE) scheduling
CN102186256A
Method for determining queuing priority, communication equipment, device and storage medium
CN114698008A
Multi-user downlink scheduling method and device, equipment and storage medium
CN117545085A
Quality of service scheduling method, device, equipment, medium and product
CN119729643A
Methods and systems for uplink scheduling using weighted QOS parameters
US20100177709A1