A recording video cloud uploading flow regulation method based on authorized signal feedback control

CN122741440APending Publication Date: 2026-09-11JIANGSU HONGXIN SYST INTEGRATION
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611020191.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-07-09
Publication Date
2026-09-11

AI Technical Summary

Technical Problem

[0008]本发明的一个目的在于提出一种基于授权信号反馈控制的录像上云流量调控方法,针对现有技术中录像服务器按时间片生成文件后集中触发上传而导致集群周期性突发高并发与流量峰值、峰值期间网络与云存储接口易拥塞并引发超时重传从而降低上传成功率与系统稳定性、以及静态限速或固定并发缺乏全局协同导致带宽利用率低且个别服务器缓存积压难以消解的问题,提出了由中心调度服务与部署在各录像服务器的上云传输组件协同的技术方案:中心调度服务初始化授权资源池并设置全局上传流量速率上限与全局并发授权上限,以并发授权信号量对并发资源进行占用与回收;采集各上云传输组件的实际上传速率以获得全局已用速率;上云传输组件在检测到待上传录像文件时携带服务器标识、实际并发、平均实际速率及缓存积压率等信息发起授权请求,中心调度服务依据全局可用速率与可用并发并结合单机上限计算授予的并发数及单任务速率上限,并设置授权有效期与到期回收机制,对高积压且资源不足的请求写入预分配队列并在资源释放或到期回收时优先再分配;上传完成后组件反馈实际速率并释放授权

Benefits of technology

[0056] 1. By centrally scheduling services, the global upload traffic rate limit and global concurrent authorization limit are maintained in a unified manner. Concurrent authorization semaphores are used to occupy and reclaim concurrent resources, so that the upload concurrency and rate of each recording server are controlled and coordinated at the cluster scale. This can significantly smooth out peaks and valleys, reduce sudden high concurrency and traffic peaks caused by centralized triggering of uploads, reduce network egress and cloud storage interface congestion, packet loss and timeout retransmission, and improve upload success rate and system stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122741440A_ABST
    Figure CN122741440A_ABST
Patent Text Reader

Abstract

This invention discloses a video recording upload traffic control method based on authorization signal feedback control, belonging to the field of video surveillance cloud platform video recording upload and network traffic control. To solve the problem of periodic sudden high concurrency and traffic peaks caused by centralized uploads from video servers, leading to congestion, packet loss, and cache backlog, this invention initializes the authorization resource pool through a central scheduling service and manages global concurrency with concurrent authorization semaphores. It collects the global used rate, receives authorization requests from cloud transmission components and issues the concurrency limit and single-task rate limit, and combines a pre-allocated queue, authorization expiration recovery and priority reallocation, and updates authorization based on release feedback. This achieves the technical effects of peak shaving and valley filling, improving upload success rate and system stability, and improving bandwidth utilization.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of network traffic control, and in particular to a method for regulating video upload traffic to the cloud based on authorization signal feedback control. Background Technology

[0002] As video surveillance systems evolve towards centralized storage and intelligent analysis on cloud platforms, video recording servers receive, transcode, or multiplex real-time video streams from front-end cameras, encapsulate them into recording files according to preset time slices, and then upload these recording files to cloud storage or object storage interfaces via network egress. This has become a common method for uploading video to the cloud. To reduce cloud write pressure and facilitate index management, existing solutions typically employ mechanisms such as segmented file uploads, breakpoint resumption, and retransmission on failure. They also configure bandwidth limiting, fixed concurrent upload counts, and token bucket-based transmission control on the server or network side to prevent a single server from consuming excessive bandwidth resources. Other solutions use a simple centralized configuration distribution method to set uniform or grouped upload bandwidth and concurrency parameters for each server.

[0003] However, in cluster scenarios where video files are generated in time slices and uploaded centrally, existing technologies still have the following shortcomings:

[0004] 1. Each recording server operates independently with static rate limiting or fixed concurrency, lacking global coordination and unified scheduling capabilities for the cluster. This can easily lead to sudden high concurrency and traffic peaks when a large number of servers upload simultaneously after file generation is complete. This can cause congestion at network egress points, firewalls, switches, or cloud storage interfaces, resulting in packet loss, timeouts, and failed retransmissions, thereby reducing upload success rate and system stability.

[0005] 2. The existing control method does not make sufficient use of real-time link status and actual transmission rate feedback. It is difficult to dynamically adjust the authorized concurrency and rate based on the global used rate and the cache backlog of each server. This results in idle bandwidth during upload periods and resource contention during peak periods, leading to low overall bandwidth utilization and the possibility of continuous cache backlog on individual servers.

[0006] 3. In the event of node anomalies, process exits, or network jitter, existing concurrency control and quota mechanisms often lack effective strategies for authorization expiration and priority redistribution, which may lead to long-term resource occupation or uneven allocation, further affecting the peak-shaving ability of high-backlog servers and system fairness.

[0007] Therefore, a method for controlling video recording traffic in the cloud is needed to address the shortcomings of existing technologies. Summary of the Invention

[0008] One objective of this invention is to propose a video recording cloud upload traffic control method based on authorization signal feedback control. This addresses the problems in existing technologies, such as the concentrated uploading of files generated by video servers according to time slices, leading to periodic bursts of high concurrency and traffic peaks in the cluster; network and cloud storage interfaces being prone to congestion during peak periods, causing timeouts and retransmissions, thus reducing upload success rate and system stability; and the lack of global coordination in static rate limiting or fixed concurrency resulting in low bandwidth utilization and difficulty in resolving cache backlogs on individual servers. The proposed solution involves a technical solution of collaboration between a central scheduling service and cloud upload transmission components deployed on each video server: the central scheduling service initializes the authorization resource pool and sets a global upload traffic rate cap. The invention employs a global concurrent authorization limit, using concurrent authorization semaphores to manage and reclaim concurrent resources. It collects the actual upload speed of each cloud transmission component to obtain the global used speed. When a cloud transmission component detects a recording file to be uploaded, it initiates an authorization request carrying information such as server identifier, actual concurrency, average actual speed, and cache backlog rate. The central scheduling service calculates the granted concurrency and single-task speed limit based on the global available speed and available concurrency, combined with the single-machine limit. It also sets an authorization validity period and expiration / reclaim mechanism, writing high-backlog and resource-insufficient requests into a pre-allocation queue and prioritizing reallocation during resource release or expiration / reclaim. After upload completion, the component reports the actual speed and releases the authorization. Through this scheme, the invention achieves the technical effects of peak shaving and valley filling of cluster recording cloud traffic, improving bandwidth utilization and upload success rate, reducing congestion and retransmission risks, and alleviating cache backlog.

[0009] This invention provides a method for regulating video upload traffic to the cloud based on authorization signal feedback control, comprising:

[0010] S1. The central scheduling service initializes the authorized resource pool, sets the global upload traffic rate limit and the global concurrent authorization limit, and maintains a concurrent authorization semaphore to represent the number of currently available concurrent authorizations;

[0011] S2. The central scheduling service obtains the actual upload traffic rate of each cloud transmission component through the data collector and determines the global upload traffic rate used.

[0012] S3. When the cloud transmission component on any recording server detects that there is a recording file to be uploaded in the local cache, it generates and sends an authorization request message to the central scheduling service. The authorization request message includes the server identifier and the number of concurrent authorization requests.

[0013] S4. After receiving the authorization request message, the central scheduling service determines the number of concurrent authorizations granted and the upper limit of the upload task's traffic rate based on the global used upload traffic rate, the global upload traffic rate limit, and the concurrent authorization semaphore. It updates the concurrent authorization semaphore and sends an authorization response message to the corresponding cloud transmission component. The authorization response message includes the number of concurrent authorizations granted and the upper limit of the traffic rate.

[0014] S5. After receiving the authorization response message, the cloud transmission component starts the upload task, ensuring that the number of upload tasks in the execution state at the same time does not exceed the granted concurrent authorization number, and performs rate limiting control on the upload task to ensure that the transmission rate does not exceed the traffic rate limit. When the upload task is completed, an authorization release message is generated and sent to the central scheduling service. The authorization release message includes the server identifier, the number of concurrent authorizations released, and the actual transmission rate.

[0015] S6. After receiving the authorization release message, the central scheduling service reclaims the released concurrent authorization count to update the concurrent authorization semaphore and uses the actual transmission rate for subsequent authorization calculations.

[0016] Optionally, S1 includes:

[0017] The central scheduling service writes the global traffic rate limit and the global concurrent authorization limit into the authorized resource pool, sets the initial value of the concurrent authorization semaphore to the global concurrent authorization limit, and uses the concurrent authorization semaphore to represent the number of currently available concurrent authorizations;

[0018] The concurrent grant semaphore supports occupancy and reclamation operations. The occupancy operation is a P operation, which decrements the current value of the concurrent grant semaphore by the number of concurrent grants occupied when occupying concurrent grant resources. The reclamation operation is a V operation, which increments the current value of the concurrent grant semaphore by the number of concurrent grants reclaimed when reclamating concurrent grant resources.

[0019] Optionally, S2 includes:

[0020] The central scheduling service obtains the actual upload traffic rate of the corresponding video server from each cloud transmission component through the data collector at a preset sampling period, and sums up the actual upload traffic rates obtained in the same sampling period to obtain the total global rate used.

[0021] The central scheduling service uses the total global rate already used and the current value of the concurrent authorized semaphore to determine the global state information.

[0022] Optionally, S3 includes:

[0023] The cloud transmission component monitors the local cache of the recording server. When it detects that there are recording files to be uploaded in the local cache, it counts the number of upload tasks currently in execution to obtain the actual number of concurrent tasks.

[0024] The amount of data transmitted by the upload task within a preset statistical period is counted and divided by the duration of the preset statistical period to obtain the average actual transmission rate of the task currently being transmitted.

[0025] Obtain the occupied cache capacity and the total cache capacity of the local cache, and determine the cache backlog rate of the current server by the ratio of the occupied cache capacity to the total cache capacity;

[0026] The new concurrent authorization requirement is determined based on the number of video files to be uploaded;

[0027] The authorization request message is generated by encapsulating the server identifier, the actual number of concurrent tasks, the average actual transmission rate of the tasks being transmitted, the current cache backlog rate of the server, and the amount of new concurrent authorization required, and then the authorization request message is sent to the central scheduling service.

[0028] Furthermore, the authorization request message also includes the total amount of data to be uploaded in the video files to be uploaded, the earliest generation time of the video files to be uploaded, and the request sequence number; the total amount of data to be uploaded is the sum of the data amounts of the video files to be uploaded in the local cache, and the earliest generation time is the minimum value of the generation times of the video files to be uploaded in the local cache.

[0029] Optionally, S4 includes:

[0030] The central scheduling service calculates the globally available transmission rate based on the total global rate used and the global traffic rate limit, and obtains the globally available concurrent authorization number based on the current value of the concurrent authorization semaphore;

[0031] When the number of globally available concurrent authorizations is less than the configurable concurrency threshold and the cache backlog rate of the current server is greater than the configurable high backlog threshold, the server identifier and the amount of new concurrent authorization required are written into the pre-allocated queue, and the queuing response message is sent to the corresponding cloud transmission component.

[0032] When the conditions for writing to the pre-allocated queue are not met, read the single-machine traffic rate limit and single-machine concurrent authorization limit corresponding to the server identifier, determine the granted concurrent authorization number and the single-task traffic rate limit based on the globally available concurrent authorization number, the globally available transmission rate, the single-machine traffic rate limit and the single-machine concurrent authorization limit, and perform the occupancy operation on the concurrent authorization semaphore corresponding to the granted concurrent authorization number;

[0033] The upper limit of the traffic rate of a single task is not greater than the upper limit of the traffic rate of a single machine, and when the number of concurrent authorizations granted is greater than zero, the upper limit of the traffic rate of a single task is not greater than the ratio of the globally available transmission rate to the number of concurrent authorizations granted.

[0034] After determining the number of concurrent authorizations granted, the central scheduling service sets a preset authorization validity period and generates the authorization expiration time and the authorization identifier, establishes the authorization record associated with the server identifier, and sends the authorization response message containing the number of concurrent authorizations granted, the maximum traffic rate of the single task, the authorization expiration time, and the authorization identifier to the corresponding cloud transmission component.

[0035] Optionally, S5 includes:

[0036] After receiving the authorization response message, the cloud transmission component selects a corresponding number of video files to be uploaded from the local cache according to the granted concurrent authorization number and creates upload tasks for each file, so that the number of upload tasks in the execution state at the same time does not exceed the granted concurrent authorization number.

[0037] During the execution of the upload task, a rate limiting control is implemented on the sending rate of each upload task to ensure that the sending rate of the upload task does not exceed the upper limit of the traffic rate of the single task.

[0038] When any of the upload tasks is completed, the number of concurrent authorizations released corresponding to the upload task is determined to be one, and the actual average transmission rate of the single task is calculated. The server identifier, the authorization identifier, the number of concurrent authorizations released, and the actual average transmission rate of the single task are encapsulated to generate the authorization release message and sent to the central scheduling service.

[0039] When the authorization expiration time is reached and there are incomplete upload tasks corresponding to the authorization identifier, the cloud transmission component re-acquires the server identifier, the actual number of concurrent tasks, the average actual transmission rate of the currently transmitting tasks, and the cache backlog rate of the current server to determine the renewal concurrent authorization requirement corresponding to the incomplete upload task.

[0040] The server identifier, the authorization identifier, the actual number of concurrent tasks, the average actual transmission rate of the tasks currently being transmitted, the current server's cache backlog rate, and the renewal concurrent authorization demand are encapsulated to generate the authorization request message and sent to the central scheduling service.

[0041] Furthermore, the rate limiting control for the sending rate of each upload task includes: generating a token based on the upper limit of the traffic rate of the single task and writing it into a token bucket; performing token deduction before the upload task sends data; blocking the sending of the upload task when there are insufficient tokens, so that the average sending rate of the upload task does not exceed the upper limit of the traffic rate of the single task; the capacity of the token bucket is constrained by a configurable smoothing duration.

[0042] Optionally, S6 includes:

[0043] After receiving the authorization release message, the central scheduling service retrieves the corresponding authorization record based on the authorization identifier, and deducts the number of concurrent authorizations released from the number of concurrent authorizations granted recorded in the authorization record to obtain the remaining number of concurrent authorizations not released;

[0044] The central scheduling service determines the number of concurrent authorizations released as the number of reassignable concurrent authorizations;

[0045] When there are waiting records in the pre-allocation queue, the server identifier and waiting concurrent authorization requirement corresponding to the waiting record are read in the order of the waiting records. Under the constraint of the number of reallocable concurrent authorizations, the number of reallocated concurrent authorizations is determined, the waiting concurrent authorization requirement of the waiting record is updated, a new authorization identifier and a new authorization expiration time are generated, a new authorization record is established associated with the server identifier corresponding to the waiting record, and an authorization response message carrying the number of reallocated concurrent authorizations, the traffic rate limit of a single task, the new authorization expiration time and the new authorization identifier is sent to the cloud transmission component corresponding to the waiting record that has been reallocated.

[0046] When there are no waiting records in the pre-allocated queue or there are still remaining concurrent authorizations that can be reassigned, the recycling operation is performed on the concurrent authorization semaphore corresponding to the unreassigned concurrent authorizations;

[0047] The central scheduling service periodically checks the authorization expiration time in the authorization record. When the authorization expiration time is reached, the remaining unreleased concurrent authorization number is determined as the expired and reclaimed concurrent authorization number. The expired and reclaimed concurrent authorization number is treated as the redistributable concurrent authorization number and processed in the same way as the authorization release message.

[0048] On the other hand, the present invention also provides a video recording cloud traffic control system based on authorized signal feedback control, comprising:

[0049] The initialization module is used by the central scheduling service to initialize the authorized resource pool, set the global upload traffic rate limit and the global concurrent authorization limit, and maintain the concurrent authorization semaphore;

[0050] The data acquisition module is used by the central scheduling service to obtain the actual upload traffic rate of each cloud transmission component through the data collector, and to determine the global upload traffic rate.

[0051] The request module is used to send an authorization request message, including the server identifier and the required number of concurrent authorizations, to the central scheduling service when the cloud transmission component detects a video file to be uploaded.

[0052] The authorization module is used by the central scheduling service to determine the number of concurrent authorizations and the upper limit of the traffic rate based on the global used upload traffic rate, the global upload traffic rate limit, and the concurrent authorization semaphore, update the concurrent authorization semaphore, and send out authorization response messages.

[0053] The upload module is used by the cloud transmission component to start the upload task and limit the rate according to the authorization response message. When the task is completed, it sends an authorization release message including the server identifier, the number of concurrent authorizations released and the actual transmission rate.

[0054] The recycling module is used by the central scheduling service to recycle concurrent authorizations and update concurrent authorization semaphores after receiving authorization release messages, and to record the actual transmission rate for subsequent authorizations.

[0055] The beneficial effects of this invention are:

[0056] 1. By centrally scheduling services, the global upload traffic rate limit and global concurrent authorization limit are maintained in a unified manner. Concurrent authorization semaphores are used to occupy and reclaim concurrent resources, so that the upload concurrency and rate of each recording server are controlled and coordinated at the cluster scale. This can significantly smooth out peaks and valleys, reduce sudden high concurrency and traffic peaks caused by centralized triggering of uploads, reduce network egress and cloud storage interface congestion, packet loss and timeout retransmission, and improve upload success rate and system stability.

[0057] 2. The cloud transmission component carries feedback information such as the actual number of concurrent tasks, average actual transmission rate, and cache backlog rate in the authorization request and release. The central scheduling service dynamically calculates the granted number of concurrent tasks and the upper limit of the single task rate based on the global used rate and single machine constraints, so as to realize the closed-loop adjustment of the transmission rate, so as to make full use of bandwidth resources during off-peak periods and smooth the rate limiting during peak periods, improve the overall bandwidth utilization and suppress the continuous cache backlog of individual servers.

[0058] 3. Introducing a mechanism for authorization validity period, automatic authorization expiration and priority relocation linked with pre-allocated queues, even in the event of component abnormalities, network jitter or authorization not being released in time, concurrent authorization resources can be reclaimed and reallocated in a timely manner, and priority is given to ensuring the upload needs of servers with high backlog, avoiding uneven allocation caused by long-term resource occupation, and further improving the robustness and fairness of the system. Attached Figure Description

[0059] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings:

[0060] Figure 1 This is a flowchart of a video recording cloud traffic control method based on authorized signal feedback control;

[0061] Figure 2 This is a flowchart of step S4, the authorization allocation decision, of the present invention. Detailed Implementation

[0062] The present invention will now be described in further detail with reference to the accompanying drawings. These drawings are simplified schematic diagrams, illustrating only the basic structure of the invention, and therefore only show the components relevant to the invention.

[0063] refer to Figure 1 A method for regulating video recording upload traffic to the cloud based on authorization signal feedback control, comprising:

[0064] S1. The central scheduling service initializes the authorized resource pool, sets the global upload traffic rate limit and the global concurrent authorization limit, and maintains a concurrent authorization semaphore to represent the number of currently available concurrent authorizations;

[0065] S2. The central scheduling service obtains the actual upload traffic rate of each cloud transmission component through the data collector and determines the global upload traffic rate used.

[0066] S3. When the cloud transmission component on any recording server detects that there is a recording file to be uploaded in the local cache, it generates and sends an authorization request message to the central scheduling service. The authorization request message includes the server identifier and the number of concurrent authorization requests.

[0067] S4. After receiving the authorization request message, the central scheduling service determines the number of concurrent authorizations granted and the upper limit of the upload task's traffic rate based on the global used upload traffic rate, the global upload traffic rate limit, and the concurrent authorization semaphore. It updates the concurrent authorization semaphore and sends an authorization response message to the corresponding cloud transmission component. The authorization response message includes the number of concurrent authorizations granted and the upper limit of the traffic rate.

[0068] S5. After receiving the authorization response message, the cloud transmission component starts the upload task, ensuring that the number of upload tasks in the execution state at the same time does not exceed the granted concurrent authorization number, and performs rate limiting control on the upload task to ensure that the transmission rate does not exceed the traffic rate limit. When the upload task is completed, an authorization release message is generated and sent to the central scheduling service. The authorization release message includes the server identifier, the number of concurrent authorizations released, and the actual transmission rate.

[0069] S6. After receiving the authorization release message, the central scheduling service reclaims the released concurrent authorization count to update the concurrent authorization semaphore and uses the actual transmission rate for subsequent authorization calculations.

[0070] In this specific embodiment, S1 includes:

[0071] After startup, the central scheduling service first creates a global authorization parameter record in the shared authorized resource pool and completes a one-time initialization;

[0072] The authorized resource pool is deployed as a shared storage that supports atomic read-modify-write operations. The shared storage provides the same read-write view to all instances of the central scheduling service, and atomic transaction commits are used for writes to the same key to avoid authorization count errors caused by concurrency competition.

[0073] The central scheduling service writes the global upload traffic rate limit into the authorized resource pool. Global Concurrency Limit ,in This indicates the maximum upload rate allowed for video recording to the cloud within the same statistical period, and its unit is... This indicates the total number of concurrent upload tasks that the cluster is allowed to execute at the same time, and its unit is "tasks";

[0074] The central scheduling service also maintains concurrent authorized semaphores. The concurrent authorization semaphore is used to characterize the number of currently available concurrent authorizations. With the global concurrency authorization limit They are stored in the same authorized parameter record and their atomic consistency is guaranteed by shared storage;

[0075] Concurrently grant semaphores during initialization Set to initial value And satisfy the formula ,in This represents the initial value of the concurrent grant semaphore at the initialization time, where the subscript 0 indicates the time index of the initialization time. The subscript g in the text indicates the global scope and Indicates the global concurrency limit;

[0076] During the concurrent grant allocation phase, the central scheduling service manages the concurrent grant semaphores. Perform an occupancy operation With recycling operations Among them, the occupancy operation To occupy concurrent authorization number The input is processed atomically within shared storage, involving both "verification and deduction" steps: first verifying the current input... Then Updated to Do not modify if verification fails. It returns an acquisition failure to prevent over-granting of concurrent authorizations and reclaims the operation. To reclaim concurrent authorization numbers For input and atomically within shared memory Updated to To ensure that after recycling No more than ,in This indicates the number of concurrent authorizations acquired or reclaimed in a single instance, and the unit is "units". The central scheduling service will... and This serves as the sole data source for subsequent authorization calculations, thereby ensuring that the total number of concurrent authorizations across the cluster remains controlled and consistent throughout its entire lifecycle.

[0077] In this specific embodiment, S2 includes:

[0078] The central dispatch service uses data collectors at fixed sampling periods. The actual upload traffic rate of each cloud transmission component is collected and summarized to obtain the total global rate used;

[0079] The data acquisition device operates in a timed task mode and the sampling period is... Set to 1 second, a rate acquisition request is initiated at the beginning of each sampling period to all registered cloud transmission components, and another rate acquisition request is initiated at the end of the sampling period. The rate acquisition request returns "cumulative amount of data sent" and "component local timestamp" through the measurement interface exposed by the component. The cumulative amount of data sent is in bits and is the cumulative value of the amount of data actually successfully written to the network transmission buffer in the cloud since the component process started.

[0080] The data acquisition unit subtracts the cumulative amount of data sent by the same component at two adjacent sampling times and divides it by the time difference between the two sampling times to obtain the actual transmission rate of the component within that sampling period, and records it as . subscript This represents the component index, and its value ranges from 1 to... This indicates the number of cloud transmission components participating in the data collection during the sampling period, and is determined by the component registry of the central scheduling service. The unit is ;

[0081] If a cloud transmission component fails to return a collection result within the 200ms timeout period of the sampling request, the data collector will record the actual upload traffic rate of that component during that sampling period. Recorded as And record the component as missing to avoid aggregation blocking caused by missing data;

[0082] The central scheduling service sums the actual upload traffic rates of each cloud transmission component obtained within the same sampling period to obtain the total global rate used. The calculation formula is as follows:

[0083] ;

[0084] in This represents the total global rate used by the cluster within the same sampling period, expressed in bits. , Indicates index From 1 to Summation operation;

[0085] The central scheduling service will allocate the used global total rate at the end of each sampling period. Write the data to the authorized resource pool along with a timestamp indicating the end of the sampling period to create a traceable global rate record, and simultaneously read concurrent authorized semaphores from the authorized resource pool. The current value and With the concurrent authorization semaphore The current values ​​are collectively determined as global state information.

[0086] In this specific embodiment, S3 includes:

[0087] The cloud transmission component starts a cache monitoring thread on the local recording server and reads the local cache list database with a polling period of 200ms to detect whether the recording file to be uploaded exists.

[0088] The local cache consists of a cache directory and the manifest database. The manifest database records the file identifier, file size, generation time and upload status of each video file. The upload status includes three types: "pending upload", "uploading", and "uploaded". The cloud transmission component sets the corresponding record to "uploading" when creating the upload task and sets it to "uploaded" after the task is successfully completed.

[0089] When the cache monitoring thread detects that the number of records with an upload status of "pending upload" is greater than zero in any polling cycle, the cloud transmission component enters the authorization request construction process and determines the server identifier. The server identifier This is a globally unique string that is written to the native configuration file when the component is installed and remains unchanged during component runtime;

[0090] The cloud transmission component iterates through records with an upload status of "uploading" and counts the number of corresponding upload task entries to obtain the actual number of concurrent tasks. The upload task table entry is a task control block maintained in memory by the component and includes the task start time, the cumulative amount of data transmitted, and the authorization identifier to which the task belongs.

[0091] Cloud transmission components during preset statistical periods The total amount of data transmitted within the statistical period is obtained by sampling the cumulative amount of data transmitted for all "uploading" tasks twice and calculating the difference. Then, the total amount of data transmitted within the statistical period is calculated. The average actual transmission rate of the ongoing transmission task is obtained by dividing the duration by the total amount of data already transmitted. The preset statistical period The value is set to 1 second. The cumulative amount of data transmitted is accumulated by adding the number of payload bits written to the upload connection send buffer, and the unit is bits. The average actual transmission rate is... The unit is bit / s, and when When Set as To avoid division by zero;

[0092] The cloud transmission component reads the total cache capacity of the local cache. With occupied cache capacity And based on this, calculate the current server's cache backlog rate. The calculation formula is as follows:

[0093] ;

[0094] in Indicates the cache backlog rate and its value range is This indicates the occupied cache capacity in bits, obtained by summing the sizes of video files in the manifest database that are "pending upload" and "uploading". This represents the total cache capacity in bits and is written by the local cache configuration item and remains unchanged during component runtime.

[0095] The cloud transmission component counts the records with an upload status of "pending upload" to obtain the number of video files to be uploaded, and determines the additional concurrent authorization requirements based on this number. The newly added concurrent authorization demand The calculation follows the rule of "one concurrent authorization request for every four video files to be uploaded, rounded up, and with a maximum of 8", and is executed when the number of video files to be uploaded is zero. Set to zero;

[0096] The cloud transmission component simultaneously adds the file size to the records with an upload status of "pending upload" in the manifest database to obtain the total amount of data to be uploaded. The earliest generation time is obtained by taking the minimum value of the generation time of the record. The total amount of data to be uploaded The unit is bit, and the earliest generation time is... Represented by a timestamp in milliseconds, calculated from Coordinated Universal Time;

[0097] The cloud transmission component generates a request sequence number for each authorization request. The requested serial number It is a locally persisted 64-bit unsigned integer, incremented by one before each authorization request message is sent to ensure monotonically increasing within the same server;

[0098] The cloud transmission component will identify the server. Actual number of concurrent tasks Average actual transmission rate of the task currently being transmitted Cache backlog New concurrent authorization requirements Total amount of data to be uploaded Earliest generation time and request serial number The authorization request message is encapsulated and sent through the remote procedure call interface agreed upon with the central scheduling service. On the sending side, a 500ms request timeout and a request sequence number-based timeout are set for the authorization request message. An idempotent retry mechanism is used to ensure that authorization requests are not counted repeatedly during network jitter.

[0099] In this specific embodiment, S4 includes:

[0100] The central dispatch service receives the server identifier After receiving the authorization request message, firstly based on the request sequence number Perform idempotency verification, which is done by reading the authorized resource pool. The corresponding most recently processed request sequence number and its sequence number. Comparison implementation, when detected When the sequence number is less than or equal to the most recently processed request sequence number, the central scheduling service directly returns the historical authorization response message or queued response message associated with that processed request sequence number and terminates the current authorization calculation, thereby avoiding duplicate occupation of concurrent authorization semaphores due to network retries. ;

[0101] After the idempotency check passes, the central scheduling service reads the global upload traffic rate limit from the authorized resource pool. The latest global total rate of use and concurrent grant semaphores The current value, where The unit is It also indicates the maximum global upload rate allowed by the cluster for recording to the cloud. The unit is bit And it represents the total global rate used by the cluster within the same sampling period of S2 writing. The unit is "number" and represents the number of currently available concurrent authorizations;

[0102] The central scheduling service will allocate the globally available transmission rate Determined as and The difference and when the difference is negative Set as At the same time, the number of globally available concurrent licenses is determined as the concurrent license semaphore. The current value;

[0103] The central scheduling service will set a concurrency threshold. Fixed at 2 and set high backlog threshold Set to a fixed value of 0.8, and adjust based on the cache backlog rate carried in the authorization request message. With the increase in concurrent authorization demand Perform queuing determination, when the conditions are met. and At that time, the central dispatch service will include Total amount of data to be uploaded Earliest generation time and The waiting records are written to a pre-allocated queue, with the write time used as the sorting key to ensure a first-in, first-out order. The pre-allocated queue is stored in an authorized resource pool, and the write operation uses atomic append to avoid order disorder caused by multiple concurrent write requests. The central scheduling service then sends a queuing response message to the corresponding cloud transmission component. The queuing response message includes at least the server identifier. Request serial number With queue signs and Updated to the sequence number of the most recently processed request;

[0104] When the conditions for writing to the pre-allocated queue are not met, the central scheduling service reads the resource from the authorized resource pool. The corresponding single-machine flow rate limit Concurrent authorization limit for single machine ,in The unit is It also indicates the maximum total upload rate allowed by the recording server for uploading recordings to the cloud. The unit is "number" and represents the maximum number of concurrent authorizations for upload tasks that the recording server is allowed to be running at the same time;

[0105] The central scheduling service further reads the actual number of concurrent tasks from the authorization request message. and will grant the number of concurrent authorizations. It is determined to be within the limit of the newly added concurrent authorization requirements. No more than the globally available concurrent authorization number And not exceeding the remaining available amount of the single-machine concurrent authorization limit. The maximum non-negative integer that can be granted under the constraints, and in determining Later on and Corresponding concurrent grant semaphore Perform an occupancy operation The number of available concurrent authorizations is deducted atomically;

[0106] After completing the concurrent authorization and allocation, the central scheduling service bases its services on the globally available transmission rate. Single-machine flow rate limit With the number of concurrent licenses granted Calculate the maximum flow rate for a single task. ,in The unit is And it represents the upper limit of the upload speed issued to the cloud transmission component for a single upload task, and the calculation satisfies the formula:

[0107] ;

[0108] in This operator represents the smaller of the two values, and only applies when... This calculation is performed at that time and in When Set as To avoid division by zero and generating an "ungranted concurrency" authorization response;

[0109] The central dispatch service will be authorized for a certain period of time. The time is fixed at 30 seconds, and is incremented by the current central scheduling service timestamp. Authorization expiration time At the same time, an authorization identifier is generated. And the authorization identifier A 128-bit random identifier generated according to UUIDv4 rules and transmitted as a string;

[0110] The central scheduling service establishes a server identifier in the authorized resource pool. The associated authorization record, which at least contains an authorization identifier. Number of concurrent authorizations granted Maximum traffic rate per task Authorization expiration time With the requested serial number After the authorization record is successfully written, an authorization response message is sent to the corresponding cloud transmission component, and the authorization response message includes at least an authorization identifier. Number of concurrent authorizations granted Maximum traffic rate per task With the expiration date of the authorization At the same time, Updated to the sequence number of the most recently processed request.

[0111] In this specific embodiment, S5 includes:

[0112] After receiving the authorization response message from the central scheduling service, the cloud transmission component parses the authorization identifier from the authorization response message. Number of concurrent authorizations granted Maximum traffic rate per task and the expiration date of the authorization And write it into an authorization table entry carried by a memory-state authorization context, the authorization table entry being... Primary key and server identifier Binding prevents reuse across servers;

[0113] The cloud transmission component is in At that time, the "pending upload" records in the locally cached list database are retrieved and sorted by generation time from earliest to latest, and the first few records are selected. For each video file to be uploaded, an upload task is created. Upon creation, the upload status recorded in the corresponding manifest database is updated from "Pending Upload" to "Uploading," and the associated data is recorded in the upload task control block. With the task start time;

[0114] To ensure that the number of upload tasks in the execution state at the same time does not exceed the granted concurrent authorization limit. The cloud transmission component is designed for each Create a local concurrent control semaphore And set its initial value to Each upload task performs a pre-emptive operation before entering the actual upload and sending phase to allow it to... Decrease and block waiting on failure to acquire, thus enabling the same The number of associated upload tasks in the execution state at any given time shall not exceed ;

[0115] During the execution of each upload task, the cloud transmission component enables a token bucket rate limiter for that upload task, with the token bucket rate limiter setting a maximum traffic rate for a single task. As the token generation rate and measured in bits, token writing is driven by a timer with a timer period. Set to 10ms, incrementing the bucket in each cycle. Each bit token is truncated when the bucket capacity is exceeded;

[0116] The capacity of the bucket Smoothing duration Constraint and It was set to 2s and will Set as and The product of these allows for controlled bursts without disrupting the long-term average rate;

[0117] Upload tasks with fixed send block size Perform block sending and Set to 262144 bytes, before each transmission, the block to be sent is converted into bits and the corresponding number of tokens are deducted from the token bucket. If tokens are insufficient, the upload task blocks on the condition variable until sufficient tokens are available, thus ensuring that the average transmission rate of this upload task does not exceed [a certain value]. ;

[0118] Once any upload task is completed and the cloud confirms successful writing, the cloud transmission component updates the upload status of the corresponding video file from "Uploading" to "Uploaded," sets the released concurrent authorization count to 1, and calculates the actual average transmission rate of the upload task. The calculation formula is as follows:

[0119] ;

[0120] in This represents the actual average transfer rate per task for this upload task, expressed in bits. This indicates the total amount of data successfully sent from the start of the upload task until the completion confirmation, expressed in bits. This indicates the duration of the upload task from the start time to the completion confirmation time, expressed in seconds.

[0121] The cloud transmission component will identify the server. Authorization mark The number of concurrent grants released is 1, and the actual average transmission rate per task is 1. The authorization release message is encapsulated and sent to the central scheduling service, while the local concurrent control semaphore is also processed. Perform a recycling operation to release a concurrent slot;

[0122] The cloud transmission component starts an expiration detection timer when creating an authorization entry and compares the current time with the authorization expiration time at 100ms intervals. When arriving And it exists with When there are incomplete upload tasks associated with the cloud, the cloud transmission component recounts the number of upload tasks currently in execution to obtain the actual number of concurrent tasks. and during the preset statistical period The system performs differential statistics on the cumulative data transferred by all ongoing upload tasks to obtain the average actual transfer rate of the tasks currently in operation. At the same time, based on the occupied cache capacity of the local cache With total cache capacity Calculate cache backlog ratio and will be with The number of associated incomplete upload tasks is determined as the renewal concurrent authorization requirement. Then the server identifier Authorization mark Actual number of concurrent tasks Average actual transmission rate of the task currently being transmitted Cache backlog and the demand for renewal concurrent licenses The authorization request message is encapsulated and sent to the central scheduling service.

[0123] In this specific embodiment, S6 includes:

[0124] After receiving the authorization release message from the cloud transmission component, the central scheduling service parses the server identifier from the authorization release message. Authorization mark Released concurrent authorization number and the actual average transmission rate per task ,in The unit is "piece" and is always in this embodiment. The unit is bit And it is used to characterize the actual transmission effect of the upload task corresponding to the release;

[0125] Central dispatch service with To retrieve the corresponding authorization record from the authorization resource pool and perform an atomic transaction update for the key, the authorization record must at least contain a server identifier. Authorization mark Authorization expiration time and the number of concurrent authorizations not currently released ,in The unit is "units" and represents the number of concurrent licenses that are still in a state of being occupied under this license identifier before this release is processed;

[0126] Upon retrieving the authorization record, the central scheduling service will release the remaining unreleased concurrent authorizations. According to the formula:

[0127] ;

[0128] in The unit is "units" and represents the number of unreleased concurrent authorizations remaining under this authorization identifier after this release process is completed. The unit is "units" and represents the number of concurrent authorizations that were not released before release. The unit is "units" and represents the number of concurrent authorizations released in this authorization release message declaration;

[0129] Central dispatch service will Write back to the authorized record to complete the deduction, when At that time, mark the authorization record as closed and remove it from the active authorization index of the authorization resource pool to avoid duplicate expiration and reclamation. Append write and The associated rate feedback log is used for subsequent authorized calculations to read the server's recent actual transmission rate characteristics;

[0130] The central scheduling service will release the number of concurrent authorizations this time. Determined as the number of reassignable concurrent authorizations ,in The unit is "units" and represents the number of concurrent authorizations available for allocation in the reallocation process triggered by this release;

[0131] When there are waiting records in the pre-allocated queue, the central scheduling service retrieves the waiting record at the head of the queue in the order it was written and reads its server identifier. With waiting concurrent authorization demand ,in The unit is "pieces" and represents the number of concurrent authorizations still needed for the waiting record. The central scheduling service is under constraint. The number of concurrent grants to be redistributed is determined below. And Set to no greater than and not greater than The largest integer, where The unit is "units", and the waiting concurrent authorization demand will be updated to... And when the updated value is 0, the waiting record is removed from the pre-allocated queue;

[0132] The central dispatch service completes A new authorization identifier is generated after the determination. With the new authorization expiration date ,in A 128-bit random identifier generated according to UUIDv4 rules and stored and transmitted as a string. By fixing the license validity period The timestamp is obtained by adding it to the current central dispatch service timestamp. The central dispatch service will... , Concurrent authorization number for redistribution Maximum traffic rate per task as well as A new authorization record is created by writing it into the authorization resource pool, where The unit is And according to the maximum flow rate limit for a single task in S4 The calculation rules, the globally available transmission rate read at the release trigger moment, and the... The corresponding maximum flow rate for a single machine is calculated.

[0133] The central scheduling service sends an authorization response message to the cloud transmission component corresponding to the waiting record that has been reassigned. The authorization response message carries... and and will Deduction Then continue processing the next waiting record until... Or the pre-allocated queue is empty;

[0134] When the pre-allocation queue has no waiting records or there are still unallocated records after processing, At that time, the central dispatch service will match the remaining Corresponding concurrent grant semaphore Perform a recycling operation and in an atomic manner Increase And not exceeding the global concurrent authorization limit. This process reclaims unallocated concurrent authorization resources into the globally available concurrent authorization pool; simultaneously, the central scheduling service starts a scheduled task to reclaim expired authorizations and scans the active authorization index in the authorization resource pool every 1 second, reading the authorization expiration time of each authorization record. And compare it with the current timestamp; when the current timestamp is detected to be not less than... The number of currently unreleased concurrent authorizations recorded in the authorization record will be used. The number of concurrent authorizations to be reclaimed upon expiration has been determined. ,in The unit is "piece", and Assign to the number of reassignable concurrent licenses The same process as handling authorized release messages is followed: "prioritized reallocation of the pre-allocated queue and reclamation of remaining allocations to concurrent authorized semaphores". The process also marks the expired license record as closed and removes it from the active license index to avoid duplicate reclamation.

[0135] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.

[0136] This invention addresses the issue of sudden peak loads in cloud video recording caused by the "centralized upload upon file completion" mechanism. It abstracts upload resources into measurable and reclaimable concurrent authorizations, with a central scheduling service maintaining the global upload traffic rate limit and the global concurrent authorization limit. The use of concurrent authorization semaphores controls the occupation and reclamation of these resources. Simultaneously, the central scheduling service periodically collects the actual upload rate of each video server to form the global used rate. When requesting and releasing authorizations, the cloud transmission component provides feedback on status information such as actual concurrency, average actual transmission rate, and cache backlog rate. Based on the aforementioned global and single-machine states, the central scheduling service calculates the granted concurrency and single-task rate limits under global and single-machine constraints. The cloud transmission component then initiates upload tasks according to the authorized concurrency and limits the rate according to the rate limit. This transforms the impact of "a large number of servers uploading at full speed simultaneously in the same time slice" into "smooth uploads that are gradually increased according to authorization and constrained by the rate limit." This reduces congestion, packet loss, and timeout retransmission probability at network egress and cloud storage interfaces, suppresses traffic spikes during peak periods, improves bandwidth utilization during off-peak periods, and alleviates continuous cache accumulation through feedback adjustment of high-backlog nodes.

[0137] To address the scenario characteristics of this invention, where "centralized triggering leads to sudden outbreaks and the inability to release authorizations in a timely manner," this invention further introduces an authorization lease mechanism and sets authorization validity periods in its algorithm structure. The central scheduling service detects the expiration of authorization records and automatically reclaims them upon expiration, preventing global control failure due to long-term occupation of concurrent authorizations caused by component anomalies or link jitter. Simultaneously, a pre-allocated priority queue is set up. When global available concurrency is insufficient and the cache backlog rate is high, requests are queued to wait and are prioritized for reallocation after resource release or expiration. This ensures that limited concurrent resources are used to alleviate the backlog of files waiting to be uploaded on servers with high backlogs, reducing secondary peaks caused by long-tail backlogs and uneven uploads. These improvements enable the control system to possess both global peak-shaving and valley-filling capabilities and anomaly robustness, better meeting the actual needs of the suddenness and cache sensitivity of video recordings uploaded to the cloud.

Claims

1. A method for regulating video recording upload traffic to the cloud based on authorized signal feedback control, characterized in that, include: S1. The central scheduling service initializes the authorized resource pool, sets the global upload traffic rate limit and the global concurrent authorization limit, and maintains a concurrent authorization semaphore to represent the number of currently available concurrent authorizations; S2. The central scheduling service obtains the actual upload traffic rate of each cloud transmission component through the data collector and determines the global upload traffic rate used. S3. When the cloud transmission component on any recording server detects that there is a recording file to be uploaded in the local cache, it generates and sends an authorization request message to the central scheduling service. The authorization request message includes the server identifier and the number of concurrent authorization requests. S4. After receiving the authorization request message, the central scheduling service determines the number of concurrent authorizations granted and the upper limit of the upload task's traffic rate based on the global used upload traffic rate, the global upload traffic rate limit, and the concurrent authorization semaphore. It updates the concurrent authorization semaphore and sends an authorization response message to the corresponding cloud transmission component. The authorization response message includes the number of concurrent authorizations granted and the upper limit of the traffic rate. S5. After receiving the authorization response message, the cloud transmission component starts the upload task, ensuring that the number of upload tasks in the execution state at the same time does not exceed the granted concurrent authorization number, and performs rate limiting control on the upload task to ensure that the transmission rate does not exceed the traffic rate limit. When the upload task is completed, an authorization release message is generated and sent to the central scheduling service. The authorization release message includes the server identifier, the number of concurrent authorizations released, and the actual transmission rate. S6. After receiving the authorization release message, the central scheduling service reclaims the released concurrent authorization count to update the concurrent authorization semaphore and uses the actual transmission rate for subsequent authorization calculations.

2. The video recording cloud traffic control method based on authorized signal feedback control according to claim 1, characterized in that, S1 includes: The central scheduling service writes the global traffic rate limit and the global concurrent authorization limit into the authorized resource pool, sets the initial value of the concurrent authorization semaphore to the global concurrent authorization limit, and uses the concurrent authorization semaphore to represent the number of currently available concurrent authorizations; The concurrent grant semaphore supports occupancy and reclamation operations. The occupancy operation is a P operation, which decrements the current value of the concurrent grant semaphore by the number of concurrent grants occupied when occupying concurrent grant resources. The reclamation operation is a V operation, which increments the current value of the concurrent grant semaphore by the number of concurrent grants reclaimed when reclamating concurrent grant resources.

3. The video recording cloud traffic control method based on authorized signal feedback control according to claim 1, characterized in that, S2 include: The central scheduling service obtains the actual upload traffic rate of the corresponding video server from each cloud transmission component through the data collector at a preset sampling period, and sums up the actual upload traffic rates obtained in the same sampling period to obtain the total global rate used. The central scheduling service uses the total global rate already used and the current value of the concurrent authorized semaphore to determine the global state information.

4. The video recording cloud traffic control method based on authorized signal feedback control according to claim 1, characterized in that, S3 includes: The cloud transmission component monitors the local cache of the recording server. When it detects that there are recording files to be uploaded in the local cache, it counts the number of upload tasks currently in execution to obtain the actual number of concurrent tasks. The amount of data transmitted by the upload task within a preset statistical period is counted and divided by the duration of the preset statistical period to obtain the average actual transmission rate of the task currently being transmitted. Obtain the occupied cache capacity and the total cache capacity of the local cache, and determine the cache backlog rate of the current server by the ratio of the occupied cache capacity to the total cache capacity; The new concurrent authorization requirement is determined based on the number of video files to be uploaded; The authorization request message is generated by encapsulating the server identifier, the actual number of concurrent tasks, the average actual transmission rate of the tasks currently being transmitted, the current cache backlog rate of the server, and the amount of new concurrent authorization required, and then the authorization request message is sent to the central scheduling service.

5. The video recording cloud traffic control method based on authorized signal feedback control according to claim 1, characterized in that, S4 includes: The central scheduling service calculates the globally available transmission rate based on the total global rate used and the global traffic rate limit, and obtains the globally available concurrent authorization number based on the current value of the concurrent authorization semaphore; When the number of globally available concurrent authorizations is less than the configurable concurrency threshold and the cache backlog rate of the current server is greater than the configurable high backlog threshold, the server identifier and the amount of new concurrent authorization required are written into the pre-allocated queue, and the queuing response message is sent to the corresponding cloud transmission component. When the conditions for writing to the pre-allocated queue are not met, read the single-machine traffic rate limit and single-machine concurrent authorization limit corresponding to the server identifier, determine the granted concurrent authorization number and the single-task traffic rate limit based on the globally available concurrent authorization number, the globally available transmission rate, the single-machine traffic rate limit and the single-machine concurrent authorization limit, and perform the occupancy operation on the concurrent authorization semaphore corresponding to the granted concurrent authorization number; The upper limit of the traffic rate of a single task is not greater than the upper limit of the traffic rate of a single machine, and when the number of concurrent authorizations granted is greater than zero, the upper limit of the traffic rate of a single task is not greater than the ratio of the globally available transmission rate to the number of concurrent authorizations granted. After determining the number of concurrent authorizations granted, the central scheduling service sets a preset authorization validity period and generates the authorization expiration time and the authorization identifier, establishes the authorization record associated with the server identifier, and sends the authorization response message containing the number of concurrent authorizations granted, the maximum traffic rate of the single task, the authorization expiration time, and the authorization identifier to the corresponding cloud transmission component.

6. The video recording cloud traffic control method based on authorized signal feedback control according to claim 1, characterized in that, S5 include: After receiving the authorization response message, the cloud transmission component selects a corresponding number of video files to be uploaded from the local cache according to the granted concurrent authorization number and creates upload tasks for each file, so that the number of upload tasks in the execution state at the same time does not exceed the granted concurrent authorization number. During the execution of the upload task, a rate limiting control is implemented on the sending rate of each upload task to ensure that the sending rate of the upload task does not exceed the upper limit of the traffic rate of the single task. When any of the upload tasks is completed, the number of concurrent authorizations released corresponding to the upload task is determined to be one, and the actual average transmission rate of the single task is calculated. The server identifier, the authorization identifier, the number of concurrent authorizations released, and the actual average transmission rate of the single task are encapsulated to generate the authorization release message and sent to the central scheduling service. When the authorization expiration time is reached and there are incomplete upload tasks corresponding to the authorization identifier, the cloud transmission component re-acquires the server identifier, the actual number of concurrent tasks, the average actual transmission rate of the currently transmitting tasks, and the cache backlog rate of the current server to determine the renewal concurrent authorization requirement corresponding to the incomplete upload task. The server identifier, the authorization identifier, the actual number of concurrent tasks, the average actual transmission rate of the tasks currently being transmitted, the current server's cache backlog rate, and the renewal concurrent authorization demand are encapsulated to generate the authorization request message and sent to the central scheduling service.

7. The video recording cloud traffic control method based on authorized signal feedback control according to claim 1, characterized in that, S6 include: After receiving the authorization release message, the central scheduling service retrieves the corresponding authorization record based on the authorization identifier, and deducts the number of concurrent authorizations released from the number of concurrent authorizations granted recorded in the authorization record to obtain the remaining number of concurrent authorizations not released; The central scheduling service determines the number of concurrent authorizations released as the number of reassignable concurrent authorizations; When there are waiting records in the pre-allocation queue, the server identifier and waiting concurrent authorization requirement corresponding to the waiting record are read in the order of the waiting records. Under the constraint of the number of reallocable concurrent authorizations, the number of reallocated concurrent authorizations is determined, the waiting concurrent authorization requirement of the waiting record is updated, a new authorization identifier and a new authorization expiration time are generated, a new authorization record is established associated with the server identifier corresponding to the waiting record, and an authorization response message carrying the number of reallocated concurrent authorizations, the traffic rate limit of a single task, the new authorization expiration time and the new authorization identifier is sent to the cloud transmission component corresponding to the waiting record that has been reallocated. When there are no waiting records in the pre-allocated queue or there are still remaining concurrent authorizations that can be reassigned, the recycling operation is performed on the concurrent authorization semaphore corresponding to the unreassigned concurrent authorizations; The central scheduling service periodically checks the authorization expiration time in the authorization record. When the authorization expiration time is reached, the remaining unreleased concurrent authorization number is determined as the expired and reclaimed concurrent authorization number. The expired and reclaimed concurrent authorization number is treated as the redistributable concurrent authorization number and processed in the same way as the authorization release message.

8. The video recording cloud traffic control method based on authorized signal feedback control according to claim 4, characterized in that, The authorization request message also includes the total amount of data to be uploaded in the video files to be uploaded, the earliest generation time of the video files to be uploaded, and the request sequence number; the total amount of data to be uploaded is the sum of the data of the video files to be uploaded in the local cache, and the earliest generation time is the minimum generation time of the video files to be uploaded in the local cache.

9. The video recording cloud traffic control method based on authorized signal feedback control according to claim 6, characterized in that, The rate limiting control for the sending rate of each upload task includes: generating a token based on the upper limit of the traffic rate of the single task and writing it into a token bucket; deducting tokens before the upload task sends data; blocking the sending of the upload task when there are insufficient tokens, so that the average sending rate of the upload task does not exceed the upper limit of the traffic rate of the single task; the capacity of the token bucket is constrained by a configurable smoothing duration.

10. A video recording cloud upload traffic control system based on license signal feedback control, used to execute the video recording cloud upload traffic control method based on license signal feedback control as described in any one of claims 1 to 9, characterized in that, include: The initialization module is used by the central scheduling service to initialize the authorized resource pool, set the global upload traffic rate limit and the global concurrent authorization limit, and maintain the concurrent authorization semaphore; The data acquisition module is used by the central scheduling service to obtain the actual upload traffic rate of each cloud transmission component through the data collector, and to determine the global upload traffic rate. The request module is used to send an authorization request message, including the server identifier and the required number of concurrent authorizations, to the central scheduling service when the cloud transmission component detects a video file to be uploaded. The authorization module is used by the central scheduling service to determine the number of concurrent authorizations and the upper limit of the traffic rate based on the global used upload traffic rate, the global upload traffic rate limit, and the concurrent authorization semaphore, update the concurrent authorization semaphore, and send out authorization response messages. The upload module is used by the cloud transmission component to start the upload task and limit the rate according to the authorization response message. When the task is completed, it sends an authorization release message including the server identifier, the number of concurrent authorizations released and the actual transmission rate. The recycling module is used by the central scheduling service to recycle concurrent authorizations and update concurrent authorization semaphores after receiving authorization release messages, and to record the actual transmission rate for subsequent authorizations.