Resource scheduling method and device based on deficit counter and dynamic weight adjustment
By using a deficit counter and a dynamic weight adjustment method, the problem of priority and fairness conflict in the scheduling of multi-source heterogeneous business resources is solved, and resource allocation balance and efficient utilization are achieved in a dynamic network environment.
Patent Information
- Application Number
- CN202511219150.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-28
- Publication Date
- 2025-12-12
AI Technical Summary
Existing technologies have problems in scheduling resources for multi-source heterogeneous services, such as conflicts between priority and fairness, and allocation strategies that do not meet the current service priority guarantee requirements. In particular, when network environment uncertainties increase, resource allocation schemes are difficult to adapt.
By employing a deficit counter and dynamic weight adjustment method, an independent deficit counter and deficit threshold are configured for each service. The resource acquisition status is monitored in real time, and the resource deficit is accumulated. When the threshold is reached, the service weight is dynamically adjusted. Combined with the channel occupancy status and service type, flexible resource allocation is achieved.
In a dynamically changing network environment, it achieves relative fairness and flexibility in resource allocation, avoids high-priority services from occupying too many resources when not needed, ensures that low-priority services receive sufficient support in sudden critical scenarios, and improves the efficiency and adaptability of resource scheduling.
Smart Images

Figure CN121125477A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of computer network technology, specifically relating to a resource scheduling method and apparatus based on a deficit counter and dynamic weight adjustment. Background Technology
[0002] When scheduling resources for multi-source heterogeneous services, the following methods are mainly adopted to address the problems of difficulty in resource coordination, diverse service requirements, and significant network differences in heterogeneous network convergence scenarios: Basic resource allocation is achieved through fixed rules or simple priority ranking, relying on pre-defined criteria to initially divide resources and quickly meet the basic communication needs of multi-source heterogeneous services. In fixed-rule allocation, a rigid allocation strategy is formulated based on service type and network protocol. For example, high-definition video services, requiring continuous high bandwidth, are allocated multiple consecutive resource blocks, while data services, requiring only low bandwidth, are allocated a few discrete resource blocks. Under the time-division multiple access framework, time slots of fixed duration are divided according to the time axis. While ensuring that periodic data transmission is not interfered with, other non-real-time services occupy the remaining time slots in a fixed order. This method requires no complex calculations and completes allocation directly through the correspondence between "service type" and "resource quota." Simple priority ranking allocates resources hierarchically according to service importance. The system pre-defines priority judgment criteria, using latency sensitivity and reliability requirements as core indicators. When resources are limited, high-priority services are allocated the necessary resources first, and the remaining resources are then allocated to lower-priority services in turn.
[0003] Furthermore, game theory is used to treat each business as an independent "player" in resource allocation. Each business aims to maximize its own resource gains, and the system sets a payoff function for each business, which is directly related to the resource allocation strategy. In the competition, each business continuously adjusts its resource demand strategy. When all businesses realize that if the strategies of other businesses remain unchanged, no matter how they adjust their strategies, they cannot increase their gains, a Nash equilibrium is reached. In this state, the resource allocation scheme remains unchanged, effectively balancing the differentiated needs of diverse and heterogeneous businesses to a certain extent.
[0004] However, existing methods still have the following problems: 1. Conflict between priority and fairness: In the existing scheduling mechanism, if priority is emphasized, high-priority queues will preempt all resources, causing low-priority queues to "starve" (completely unable to obtain bandwidth); if fairness is pursued, critical services (such as real-time voice and video) will fail due to being squeezed out by non-critical services (such as downloads).
[0005] 2. The allocation strategy does not meet the current business priority guarantee requirements: The resource requirements of multi-source heterogeneous services are sudden and dynamic, and the traditional payoff function based on game theory is difficult to adapt in real time; at the same time, the increase of uncertainties such as spectrum interference and node movement in the network environment leads to the frequent breaking of the game equilibrium state, and the time spent on re-convergence may exceed the business tolerance threshold. Summary of the Invention
[0006] To address the aforementioned problems in the prior art, this invention provides a resource scheduling method and apparatus based on a deficit counter and dynamic weight adjustment.
[0007] The technical problem to be solved by this invention is achieved through the following technical solution: A resource scheduling method based on a deficit counter and dynamic weight adjustment includes: Configure an independent deficit counter for each service and set a deficit threshold; wherein the deficit counter is used to record the resource deficit of the service; Set the weight of each business based on its business attributes; Allocate resources to businesses based on their weights; Monitor the resource acquisition status of the business in real time. When a business fails to obtain the resource quota that matches its current weight, add the resource deficit of that business to its corresponding deficit counter. When the deficit counter of a service reaches the deficit threshold, the weight of each service is dynamically adjusted to allocate resources to the service based on the adjusted weight. The dynamic adjustment of the weights of each service includes: dynamically adjusting the weights of each service based on the channel occupancy status, and enabling a dedicated weight adjustment mechanism for different services according to their service types.
[0008] Optionally, the dynamic adjustment of the weights of each service based on the channel occupancy status includes: statistically analyzing the channel occupancy duration and / or resource utilization of the service; when the channel occupancy duration or resource utilization of a service exceeds the corresponding threshold, reducing the weight of the service according to a step-by-step weight reduction algorithm, while compensating the weights of other superior services according to service priority.
[0009] Optionally, the dynamic adjustment of the weights of each service further includes: in response to a service releasing channel resources, starting a timing window and monitoring the transmission status of each service within the timing window; when a service transmits continuously for a preset duration and the current network load is below the load threshold, restoring the weights of services that were previously reduced according to a step-by-step algorithm.
[0010] Optionally, the step of enabling a dedicated weight adjustment mechanism for different services based on service type includes: When channel congestion in the control command service causes a response timeout, the weight of the control command service is increased, and preemptive scheduling is triggered. When the packet loss rate of a voice service exceeds the packet loss rate threshold or the latency jitter exceeds the jitter threshold, the weight of the voice service is increased in a stepwise manner. When the frame rate of the video service is lower than the frame rate threshold, the downweighting of the video service is suspended and the current weight is maintained. If an emergency message service fails to be transmitted within the specified time, the weight of the emergency message service will be increased. When the backlog of ordinary message services exceeds a preset threshold, the weight of the ordinary message services is increased to the same level as that of the emergency message services.
[0011] Optionally, the method further includes: periodically executing a reset mechanism; The reset mechanism is used to reset the weight of each service based on the real-time requirements, data transmission volume, and service quality level of the service.
[0012] Optionally, the deficit threshold is dynamically updated based on the number of business types.
[0013] The present invention also provides a resource scheduling device based on a deficit counter and dynamic weight adjustment, comprising: The counting module is used to configure an independent deficit counter for each service and set a deficit threshold; wherein, the deficit counter is used to record the resource deficit of the service; The weight setting module is used to set the weight of a business based on its business attributes. The resource allocation module is used to allocate resources to services based on their weights. The monitoring module is used to monitor the resource acquisition status of the business in real time. When a business fails to obtain the resource quota that matches its current weight, the resource deficit of the business is added to its corresponding deficit counter. The weight dynamic adjustment module is used to dynamically adjust the weight of each service when the deficit counter of a service reaches the deficit threshold, so as to allocate resources to the service based on the adjusted weight; wherein, the dynamic adjustment of the weight of each service includes: dynamically adjusting the weight of each service based on the channel occupancy status, and enabling a dedicated weight adjustment mechanism for different services according to the service type.
[0014] This invention provides a resource scheduling method based on a deficit counter and dynamic weight adjustment. The deficit counter dynamically records the resource deficit status of a service. When a service fails to obtain a preset quota due to insufficient resources, the counter accumulates the unmet resource amount. When the deficit reaches a threshold, a dynamic weight adjustment mechanism is immediately triggered to reallocate resources and make up for the deficit. This prevents services with sudden demand from being overwhelmed by resources for extended periods, maintaining relative fairness in allocation in dynamically changing scenarios and meeting the needs of scenarios with a large number of sudden business requests. Furthermore, by dynamically adjusting the differentiated weight values allocated to different services, it avoids high-priority services under fixed weights from occupying excessive resources unnecessarily, while ensuring that low-priority services receive sufficient support in sudden and critical scenarios. This improves the flexibility and adaptability of resource scheduling, achieving a highly efficient balance between fairness and efficiency in complex dynamic environments.
[0015] The present invention will now be described in further detail with reference to the accompanying drawings. Attached Figure Description
[0016] Figure 1 This is a flowchart of a resource scheduling method based on a deficit counter and dynamic weight adjustment provided by the present invention; Figure 2 An exemplary diagram illustrates resource scheduling implemented using the dynamic weight adjustment mechanism of the present invention; Figure 3 The implementation process of the dynamic weight adjustment mechanism of the present invention is illustrated by way of example; Figure 4 This is a structural block diagram of a resource scheduling device based on a deficit counter and dynamic weight adjustment provided by the present invention. Detailed Implementation
[0017] The present invention will be further described in detail below with reference to specific embodiments, but the implementation of the present invention is not limited thereto.
[0018] In the process of allocating resources among multiple heterogeneous services, there are significant differences in real-time requirements, data transmission volume, and service quality levels among these services. This makes it difficult for the resource scheduling mechanism to take into account multiple needs, resulting in poor resource allocation. Specifically, this manifests as: priority imbalance, where critical services cannot operate normally due to resources being squeezed out by lower-priority services; and lack of fairness, where some services are in a state of resource scarcity for extended periods, affecting the stability of the overall business system.
[0019] To address the aforementioned issues, this invention proposes a multi-source heterogeneous service resource scheduling mechanism based on a deficit counter and dynamic weight adjustment. This method comprehensively considers factors such as the real-time requirements, data transmission volume, and service quality level of each service, and dynamically adjusts the weights of services based on a dynamic weight adjustment mechanism. It unifies and adapts the scheduling logic to address the inherent differences in heterogeneous services, effectively resolving the resource demand compatibility issue. Furthermore, it tracks and adapts the resource demands of multi-source heterogeneous services in real time based on a dynamic weight adjustment strategy, thereby resolving problems such as service priority imbalance and lack of fairness.
[0020] The resource scheduling method based on deficit counters and dynamic weight adjustment provided by this invention will be described in detail below. See [link to relevant documentation]. Figure 1 As shown, the resource scheduling method based on deficit counters and dynamic weight adjustment provided by this invention includes the following steps: S10. Configure an independent deficit counter for each service and set a deficit threshold; wherein, the deficit counter is used to record the resource deficit of the service.
[0021] Specifically, each business is bound to an independent counter, with the initial value set to 0. Subsequently, when a business fails to obtain a quota matching its weight due to resource competition, the deficit counter will immediately accumulate the resource deficit, thereby accurately recording the resource gap of the business. The deficit threshold refers to the counting threshold of the deficit counter. This deficit threshold can be a fixed estimate or it can be dynamically updated based on the number of business types. Specifically, the more business types there are, the larger the counting threshold should be; however, the specific value is not limited in this invention.
[0022] S20. Set the weight of a business based on its business attributes.
[0023] Specifically, the rigid requirements of business operations for real-time performance and reliability are used as business attributes. Businesses are then prioritized based on these attributes, and their weights are assigned accordingly. In other words, the higher the priority of a business, the greater its weight. Alternatively, one could say that the weight of a business represents its priority.
[0024] For example, control commands and voice services can be classified as high priority, with base weights set to 6 and 4 respectively, meaning that control commands and voice services can obtain the advantage of base weights; services such as video that tolerate limited latency but need to be transmitted continuously, and services such as messages that contain ordinary data and emergency notifications are classified as low priority, with a base weight of 3 for video, 1 for ordinary messages, and 3 for emergency messages.
[0025] S30. Allocate resources to services based on their weights.
[0026] Understandably, different weights have corresponding resource quotas, and resources are allocated to businesses based on their weights, meaning that resources are appropriately allocated to businesses according to their weights. In this way, resources will be given priority to businesses with higher weights.
[0027] S40. Monitor the resource acquisition status of the business in real time. When a business fails to obtain a resource quota that matches its current weight, add the resource deficit of that business to its corresponding deficit counter.
[0028] There are several ways to monitor the resource acquisition status of services in real time. For example, one approach is to directly capture and analyze the actual service traffic (NetFlow, sFlow, IPFIX) passing through network devices (routers, switches, dedicated probes). Another approach is to proactively inject probe packets (such as Ping, Traceroute, and dedicated performance probe packets) into the network and infer the performance of the actual services by measuring the performance of these probe packets.
[0029] By monitoring the resource acquisition status of a business in real time, it can be determined whether the business can obtain a resource quota that matches its current weight. If a business fails to obtain a resource quota that matches its current weight, the resource deficit of that business can be accumulated into its corresponding deficit counter, thereby accurately recording the resource gap of the business using the deficit counter.
[0030] S50. When the deficit counter of a service reaches the deficit threshold, the weight of each service is dynamically adjusted to allocate resources to the service based on the adjusted weight. The dynamic adjustment of the weight of each service includes: dynamically adjusting the weight of each service based on the channel occupancy status, and enabling a dedicated weight adjustment mechanism for different services according to their service types.
[0031] Here, the present invention sets a linkage rule between the deficit counter and the dynamic weight. When the count value of the deficit counter of a service reaches the deficit threshold, a mechanism for dynamically adjusting the weight of each service is triggered, thereby dynamically adjusting the weight of each service based on the channel occupancy status. At the same time, a dedicated weight adjustment mechanism is enabled for different services according to their service types. Figure 2 An exemplary diagram illustrates resource scheduling implemented using the dynamic weight adjustment mechanism of this invention. From Figure 2 As can be seen, after the dynamic weight adjustment mechanism of this invention is enabled, services with resource deficits exceeding the threshold will be given priority in resource allocation, and services whose weights are adjusted to reach the highest service priority will also be given priority in resource allocation.
[0032] Additionally, when a business's resource shortfall is filled, its deficit counter can be cleared. For example, during the dynamic adjustment of the weights of various businesses, if a business's weight is increased and its priority is raised to 1 (the highest priority), resources will be allocated to that business first, which will trigger the clearing of its deficit counter.
[0033] In one implementation, the weights of each service are dynamically adjusted based on the channel occupancy status, including: statistically analyzing the channel occupancy duration and / or resource utilization of the service; when the channel occupancy duration or resource utilization of a service exceeds the corresponding threshold, the weight of that service is reduced according to a step-wise weight reduction algorithm, while the weights of other high-priority services are compensated according to the service priority.
[0034] Based on this implementation, in a specific example, the channel occupancy time of services can be statistically analyzed. If the channel occupancy time of any service exceeds the corresponding threshold (e.g., a 10-second timeout), its weight is reduced using a tiered weighting algorithm. When reducing the weight of services using the tiered weighting algorithm, the weight of video services can be reduced from 3 to 1.5, and that of ordinary messages can be reduced from 1 to 0.5. Simultaneously, the weights of other services are adjusted according to the principle of "high priority compensation": the weight of control commands remains unchanged at 6, the weight of voice services is slightly adjusted from 4 to 4.5 (here, in the dynamic adjustment, priority is given to preserving the resource allocation of control commands and voice services to ensure that they are not excessively crowded out by low-priority services in complex scenarios), and the weight of emergency messages is increased from 3 to 4, ensuring that channel resources are released to services that urgently need them. In this way, the weight of services that occupy the channel for a long time or have excessively high resource utilization is reduced, while the weight of services that have not received resource quotas matching their current weight for a long time is relatively increased, allowing them to be allocated resources with higher priority. This ensures the priority guarantee of core services and avoids channel resource monopoly through dynamic adjustment, achieving efficient collaboration among multiple services.
[0035] In another implementation, based on the aforementioned method of dynamically adjusting the weights of each service according to the channel occupancy status, the dynamic adjustment of the weights of each service may further include: in response to a service releasing channel resources, starting a timing window and monitoring the transmission status of each service within the timing window; when a service continuously transmits for a preset duration and the current network load is below the load threshold, restoring the weights of services that were previously reduced according to a step-by-step algorithm.
[0036] Here, after channel resources are released, this invention employs a closed-loop logic of "weight reduction-observation-rebound" to achieve elastic control. A timing window is initiated, monitoring the transmission status of each service within the window. When a service continuously transmits for a preset duration and the network load drops below a threshold, it indicates that there are still services requiring continuous resource usage, and the available resources are sufficient. Therefore, the service priority rebound mechanism is automatically triggered. The rebound process also uses a step-by-step algorithm, gradually restoring the weight by 50% of the original weight reduction (e.g., video services from 1.5 to 2.25, and ordinary packets from 0.5 to 0.75). If the same service does not trigger the weight reduction mechanism again after rebound, and resource demand remains stable, the rebound continues at the same duration until it returns to the baseline weight or a reasonable value that adapts to the current network load. If long-term channel occupancy recurs after rebound, the waiting time for the next rebound is extended to avoid frequent fluctuations. This design both suppresses resource monopoly through weight reduction and ensures the continuous demand of services through timely rebound, making priority adjustment more aligned with dynamically changing channel occupancy scenarios.
[0037] Figure 3 The implementation flow of the dynamic weight adjustment mechanism of the present invention is illustrated by way of example, based on Figure 3 It is understood that this invention fully activates idle resources through a closed-loop logic of de-priority release, compensation allocation, and temporary recovery. This avoids high-priority businesses wasting resources when they are not needed, and also prevents low-priority businesses from having idle resources due to long-term deficiencies. This achieves efficient resource utilization under multi-business collaboration and significantly improves resource utilization.
[0038] Furthermore, this invention designs a hierarchical response mechanism to address the differentiated characteristics of various services. Based on dynamic adjustment of priority (weight), it designs dedicated response logic for each type of service. Specifically, enabling a dedicated weight adjustment mechanism for different services according to their type can include: When channel congestion in the control command service causes a response timeout (e.g., exceeding 100ms), the weight of the control command service is increased (e.g., the weight is temporarily increased by 1, not exceeding 7). When the packet loss rate of the voice service exceeds the packet loss rate threshold or the latency jitter exceeds the jitter threshold (e.g., packet loss rate exceeds 5% or latency jitter exceeds 30ms), the weight of the voice service is increased in stages (e.g., the weight is increased from 4 stages to 5 stages, while limiting the single increase to no more than 20%). When the frame rate of a video service falls below the frame rate threshold (e.g., below 15fps), the downweighting of the video service is paused and the current weight is maintained until the network load eases. If an emergency message service is not transmitted within a specified time (e.g., 10 seconds), the weight of the emergency message service will be increased (e.g., the weight will be increased by 1, up to a maximum of 5). When the backlog of ordinary message services exceeds a preset threshold, the weight of ordinary message services is increased to the same level as that of emergency message services, thereby triggering batch scheduling of the backlog of message services.
[0039] Understandably, based on the aforementioned business-specific weight adjustment mechanism, the scheduling strategy can be deeply matched with the real-time needs of the business, reducing the adaptation deviation caused by a one-size-fits-all approach.
[0040] In summary, the resource scheduling method based on a deficit counter and dynamic weight adjustment provided by this invention dynamically records the resource deficit status of a service through a deficit counter. When a service fails to obtain a preset quota due to insufficient resources, the counter accumulates the amount of unmet resources. When the deficit accumulates to a threshold, a dynamic weight adjustment mechanism is immediately triggered to reallocate resources and make up for the deficit. This avoids the long-term resource occupation of services with sudden demand, maintaining relative fairness in allocation in dynamically changing scenarios and meeting the needs of scenarios with a large number of sudden business events. Furthermore, by dynamically adjusting the differentiated weight values allocated to different services, it avoids high-priority services under fixed weights from occupying too many resources unnecessarily, while ensuring that low-priority services receive sufficient support in sudden and critical scenarios. This improves the flexibility and adaptability of resource scheduling, achieving an efficient balance between fairness and efficiency in complex dynamic environments. This invention first sets the basic weights of services based on their core attributes, then dynamically optimizes the weights by combining them with channel occupancy time, and incorporates a service-specific weight adjustment mechanism to achieve a differentiated hierarchical response mechanism. Based on this differentiated hierarchical response mechanism, it solves problems such as difficulty in coordinating multiple service resources, diverse service requirements, and significant network differences, providing a fair allocation method for multi-service scheduling.
[0041] In one embodiment, the method of the present invention may further include: periodically executing a reset mechanism; here, the reset mechanism is used to reset the weight of each service according to the real-time requirements of the service, the amount of data transmission, and the quality of service level.
[0042] Understandably, to avoid long-term deficits in low-weight businesses, a periodic reset mechanism is designed to ensure that the counter can reflect the differences in actual resource demand and flexibly adapt to dynamic weight changes, thereby achieving fair and efficient scheduling of multi-source heterogeneous businesses.
[0043] The method provided in this invention can be applied to electronic devices. Specifically, the electronic device can be a desktop computer, a portable computer, a smart mobile terminal, a server, etc. No limitation is made herein; any electronic device that can implement this invention falls within the protection scope of this invention.
[0044] Based on the same inventive concept, embodiments of the present invention also provide a resource scheduling device based on a deficit counter and dynamic weight adjustment, see [link to relevant documentation]. Figure 4The device includes: The counting module 401 is used to configure an independent deficit counter for each service and set a deficit threshold; wherein, the deficit counter is used to record the resource deficit of the service; The weight setting module 402 is used to set the weight of a business based on its business attributes. Resource allocation module 403 is used to allocate resources to services based on their weights; The monitoring module 404 is used to monitor the resource acquisition status of the business in real time. When a business fails to obtain a resource quota that matches its current weight, the resource deficit of the business is accumulated to its corresponding deficit counter. The weight dynamic adjustment module 405 is used to dynamically adjust the weight of each service when the count value of the deficit counter of a service reaches the deficit threshold, so as to allocate resources to the service based on the adjusted weight; wherein, the dynamic adjustment of the weight of each service includes: dynamically adjusting the weight of each service based on the channel occupancy status, and enabling a dedicated weight adjustment mechanism for different services according to the service type.
[0045] Optionally, in the weight dynamic adjustment module 405, the weight of each service is dynamically adjusted based on the channel occupancy status, including: statistically analyzing the channel occupancy duration and / or resource utilization of the service; when the channel occupancy duration or resource utilization of a service exceeds the corresponding threshold, the weight of the service is reduced according to the step-down weighting algorithm, while the weight of other superior services is compensated according to the service priority.
[0046] Optionally, in the weight dynamic adjustment module 405, dynamically adjusting the weight of each service also includes: in response to a service releasing channel resources, starting a timing window and monitoring the transmission status of each service within the timing window; when a service continuously transmits for a preset duration and the current network load is below the load threshold, restoring the weight of the previously reduced service according to a step-by-step algorithm.
[0047] Optionally, in the dynamic weight adjustment module 405, a dedicated weight adjustment mechanism is enabled for different services based on their service types, including: When channel congestion in the control command service causes a response timeout, the weight of the control command service is increased, and preemptive scheduling is triggered. When the packet loss rate of a voice service exceeds the packet loss rate threshold or the latency jitter exceeds the jitter threshold, the weight of the voice service is increased in a stepwise manner. When the frame rate of the video service is lower than the frame rate threshold, the downweighting of the video service is suspended and the current weight is maintained. If an emergency message service fails to be transmitted within the specified time, the weight of the emergency message service will be increased. When the backlog of ordinary message services exceeds a preset threshold, the weight of the ordinary message services is increased to the same level as that of the emergency message services.
[0048] Optionally, the apparatus provided by the present invention may further include: a reset module; This reset module is used to execute a periodic reset mechanism; this reset mechanism is used to reset the weight of each service based on the real-time requirements of the service, the amount of data transmission, and the quality of service level.
[0049] Optionally, the deficit threshold is dynamically updated based on the number of business types.
[0050] It should be noted that, for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple. For relevant parts, please refer to the description of the method embodiment. Moreover, the device embodiment can obtain the same beneficial effects as the method embodiment.
[0051] It should be noted that the terms "first," "second," etc., are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the invention.
[0052] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Furthermore, those skilled in the art can combine and integrate the different embodiments or examples described in this specification.
[0053] Although the invention has been described herein in conjunction with various embodiments, those skilled in the art will understand and implement other variations of the disclosed embodiments by reviewing the accompanying drawings and the disclosure in carrying out the claimed invention. In the description of the invention, the word "comprising" does not exclude other components or steps, "a" or "an" does not exclude a plurality, and "a plurality" means two or more, unless otherwise explicitly specified. Furthermore, while different embodiments may describe certain measures, this does not mean that these measures cannot be combined to produce good results.
[0054] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, apparatus (devices), or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects, all of which are collectively referred to herein as "modules" or "systems." Furthermore, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code. The computer program may be stored / distributed in a suitable medium, provided with or as part of other hardware, or may take other distribution forms, such as via the Internet or other wired or wireless telecommunications systems.
[0055] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (devices), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0056] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0057] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0058] The above description, in conjunction with specific preferred embodiments, provides a further detailed explanation of the present invention. It should not be construed that the specific implementation of the present invention is limited to these descriptions. For those skilled in the art, various simple deductions or substitutions can be made without departing from the concept of the present invention, and all such modifications and substitutions should be considered within the scope of protection of the present invention.
Claims
1. A resource scheduling method based on a deficit counter and dynamic weight adjustment, characterized in that, include: Configure an independent deficit counter for each service and set a deficit threshold; wherein the deficit counter is used to record the resource deficit of the service; Set the weight of each business based on its business attributes; Allocate resources to businesses based on their weights; Monitor the resource acquisition status of the business in real time. When a business fails to obtain the resource quota that matches its current weight, add the resource deficit of that business to its corresponding deficit counter. When the deficit counter of a service reaches the deficit threshold, the weight of each service is dynamically adjusted to allocate resources to the service based on the adjusted weight. The dynamic adjustment of the weights of each service includes: dynamically adjusting the weights of each service based on the channel occupancy status, and enabling a dedicated weight adjustment mechanism for different services according to their service types.
2. The method according to claim 1, characterized in that, The method of dynamically adjusting the weights of each service based on channel occupancy status includes: statistically analyzing the channel occupancy duration and / or resource utilization of a service; when the channel occupancy duration or resource utilization of a service exceeds the corresponding threshold, reducing the weight of that service using a step-down weighting algorithm; and compensating the weights of other high-priority services according to their service priorities.
3. The method according to claim 1, characterized in that, The dynamic adjustment of the weights of each service also includes: in response to a service releasing channel resources, starting a timing window and monitoring the transmission status of each service within the timing window; when a service transmits continuously for a preset duration and the current network load is below the load threshold, restoring the weights of services that were previously reduced according to a step-by-step algorithm.
4. The method according to claim 1, characterized in that, The aforementioned mechanism for enabling dedicated weight adjustment for different services based on their business type includes: When channel congestion in the control command service causes a response timeout, the weight of the control command service is increased, and preemptive scheduling is triggered. When the packet loss rate of a voice service exceeds the packet loss rate threshold or the latency jitter exceeds the jitter threshold, the weight of the voice service is increased in a stepwise manner. When the frame rate of the video service is lower than the frame rate threshold, the downweighting of the video service is suspended and the current weight is maintained. If an emergency message service fails to be transmitted within the specified time, the weight of the emergency message service will be increased. When the backlog of ordinary message services exceeds a preset threshold, the weight of the ordinary message services is increased to the same level as that of the emergency message services.
5. The method according to claim 1, characterized in that, The method further includes: periodically executing a reset mechanism; The reset mechanism is used to reset the weight of each service based on the real-time requirements, data transmission volume, and service quality level of the service.
6. The method according to claim 1, characterized in that, The deficit threshold is dynamically updated based on the number of business types.
7. A resource scheduling device based on a deficit counter and dynamic weight adjustment, characterized in that, include: The counting module is used to configure an independent deficit counter for each service and set a deficit threshold; wherein, the deficit counter is used to record the resource deficit of the service; The weight setting module is used to set the weight of a business based on its business attributes. The resource allocation module is used to allocate resources to services based on their weights. The monitoring module is used to monitor the resource acquisition status of the business in real time. When a business fails to obtain the resource quota that matches its current weight, the resource deficit of the business is added to its corresponding deficit counter. The weight dynamic adjustment module is used to dynamically adjust the weight of each service when the deficit counter of a service reaches the deficit threshold, so as to allocate resources to the service based on the adjusted weight; wherein, the dynamic adjustment of the weight of each service includes: dynamically adjusting the weight of each service based on the channel occupancy status, and enabling a dedicated weight adjustment mechanism for different services according to the service type.
8. The apparatus according to claim 7, characterized in that, The method of dynamically adjusting the weights of each service based on channel occupancy status includes: statistically analyzing the channel occupancy duration and / or resource utilization of a service; when the channel occupancy duration or resource utilization of a service exceeds the corresponding threshold, reducing the weight of that service using a step-down weighting algorithm; and compensating the weights of other high-priority services according to their service priorities.
9. The apparatus according to claim 8, characterized in that, The dynamic adjustment of the weights of each service also includes: in response to a service releasing channel resources, starting a timing window and monitoring the transmission status of each service within the timing window; when a service transmits continuously for a preset duration and the current network load is below the load threshold, restoring the weights of services that were previously reduced according to a step-by-step algorithm.
10. The apparatus according to claim 7, characterized in that, The aforementioned mechanism for enabling dedicated weight adjustment for different services based on their business type includes: When channel congestion in the control command service causes a response timeout, the weight of the control command service is increased, and preemptive scheduling is triggered. When the packet loss rate of a voice service exceeds the packet loss rate threshold or the latency jitter exceeds the jitter threshold, the weight of the voice service is increased in a stepwise manner. When the frame rate of the video service is lower than the frame rate threshold, the downweighting of the video service is suspended and the current weight is maintained. If an emergency message service fails to be transmitted within the specified time, the weight of the emergency message service will be increased. When the backlog of ordinary message services exceeds a preset threshold, the weight of the ordinary message services is increased to the same level as that of the emergency message services.