Commercial CDN edge node scheduling method, system, device, equipment and product

By introducing target indicators of caching capacity and back-to-origin cost in commercial CDN edge nodes and optimizing scheduling strategies, the problems of resource occupation and bandwidth costs for hot and cold files are solved, the efficiency of hot file services is improved, and the overall bandwidth cost of the system is reduced.

CN120639863APending Publication Date: 2025-09-12BEIJING QIYI CENTURY SCI & TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510635096.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-16
Publication Date
2025-09-12

AI Technical Summary

Technical Problem

Traditional commercial CDN edge node scheduling strategies fail to effectively distinguish between hot and cold files, resulting in a large amount of storage resources being occupied by cold files, affecting the service efficiency of hot files and increasing the overall bandwidth cost of the system.

Method used

By obtaining the target indicators of the caching capacity and back-to-origin cost of commercial CDN edge nodes, we determine the scheduling priority and prioritize cold file access services for clients scheduling nodes with higher caching capacity and lower back-to-origin cost, thereby reducing the elimination of cold files and the frequency of back-to-origin.

Benefits of technology

It improves the service efficiency of hot files, reduces the overall bandwidth cost of the system, and reduces the storage resource occupation and return frequency of cold files.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120639863A_ABST
    Figure CN120639863A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides a business CDN edge node scheduling method, system, device, equipment and product, and aims to improve the service efficiency of hot files and reduce the overall bandwidth cost of the system. The method comprises the steps that target indexes of a plurality of predetermined commercial CDN edge nodes are obtained, the target indexes and the cache capacity of the commercial CDN edge nodes meet the negative correlation relation, and the target indexes and the source returning cost of the commercial CDN edge nodes meet the positive correlation relation; the method comprises the following steps: determining target indexes of a plurality of commercial CDN edge nodes, determining scheduling priorities according to the respective target indexes of the plurality of commercial CDN edge nodes, and scheduling the plurality of commercial CDN edge nodes to provide access services for each first client for each first file according to the scheduling priorities,
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a method, system, device, equipment, and product for scheduling commercial CDN edge nodes. Background Art

[0002] In a Content Delivery Network (CDN) system, a scheduler typically schedules different commercial CDN edge nodes for each client based on the number of requests or file types to provide access services for different files.

[0003] However, in actual scenarios, files are divided into hot and cold files. Traditional scheduling strategies based on the number of requests or file types will cause a large amount of storage resources of each commercial CDN edge node to be occupied by cold files, thereby affecting the service efficiency of hot files. In addition, the frequent elimination and return of cold files in the CDN system will also increase the overall bandwidth cost of the system. Summary of the Invention

[0004] In view of the above problems, embodiments of the present application provide a method, system, apparatus, device and product for scheduling commercial CDN edge nodes to overcome the above problems or at least partially solve the above problems.

[0005] In a first aspect of an embodiment of the present application, a method for scheduling a commercial CDN edge node is provided, the method comprising:

[0006] Obtaining target indicators for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicators are negatively correlated with the caching capacity of the commercial CDN edge nodes, and positively correlated with the back-to-origin cost of the commercial CDN edge nodes, where the back-to-origin cost represents the bandwidth cost required by the commercial CDN edge nodes to obtain files from the origin server;

[0007] Determining, based on respective target indicators of the plurality of commercial CDN edge nodes, respective scheduling priorities of the plurality of commercial CDN edge nodes, wherein the scheduling priority of each commercial CDN edge node is negatively correlated with the target indicator;

[0008] According to the respective scheduling priorities of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to provide access services for each first client to each first file, where the first file is: a file with an access frequency in the source station lower than a preset frequency threshold.

[0009] A second aspect of an embodiment of the present application provides a scheduling system for a commercial CDN edge node, the system comprising a plurality of commercial content delivery network CDN edge nodes, a scheduler, and a cost control center, wherein:

[0010] The cost control center is configured to obtain target indicators for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicators are negatively correlated with the cache capacity of the commercial CDN edge nodes, and positively correlated with the back-to-origin cost of the commercial CDN edge nodes, wherein the back-to-origin cost represents the bandwidth cost required by the commercial CDN edge nodes to obtain files from the origin server;

[0011] The cost control center is further configured to determine a scheduling priority for each of the plurality of commercial CDN edge nodes based on their respective target indicators, and transmit the determined scheduling priority to the scheduler, wherein the scheduling priority of each commercial CDN edge node is negatively correlated with the target indicator;

[0012] The scheduler is configured to schedule the plurality of commercial CDN edge nodes to provide access services for respective first files to respective first clients according to respective scheduling priorities of the plurality of commercial CDN edge nodes, where the first files are files in the source station whose access frequency is lower than a preset frequency threshold.

[0013] According to a third aspect of the present application, a scheduling device for a commercial CDN edge node is provided, the device comprising:

[0014] a communication module configured to obtain a target indicator for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicator is negatively correlated with the caching capacity of the CDN edge node, and positively correlated with the back-to-origin cost of the commercial CDN edge node, wherein the back-to-origin cost represents the bandwidth cost required by the CDN edge node to obtain files from the origin server;

[0015] A first processing module is configured to determine a scheduling priority of each of the plurality of commercial CDN edge nodes based on their respective target indicators, wherein the scheduling priority of each of the commercial CDN edge nodes is negatively correlated with the target indicator;

[0016] The second processing module is used to schedule the multiple commercial CDN edge nodes to provide access services for each first file to each first client according to the respective scheduling priorities of the multiple commercial CDN edge nodes, where the first file is: a file with an access frequency in the source station lower than a preset frequency threshold.

[0017] In a fourth aspect of an embodiment of the present application, an electronic device is provided, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other through the communication bus; the memory is used to store computer programs; and the processor is used to implement the scheduling method of the commercial CDN edge node as described in the first aspect of the embodiment of the present application when executing the program stored in the memory.

[0018] In a fifth aspect of the embodiments of the present application, a computer-readable storage medium is provided, on which a computer program / instruction is stored. When the computer program / instruction is executed by a processor, the scheduling method of the commercial CDN edge node as described in the first aspect of the embodiments disclosed in the present application is implemented.

[0019] In a sixth aspect of the embodiments of the present application, a computer program product is provided, including a computer program / instruction, which, when executed by a processor, implements the scheduling method for commercial CDN edge nodes as described in the first aspect of the embodiments disclosed in the present application.

[0020] The scheduling method for commercial CDN edge nodes provided in the embodiment of the present application introduces a target indicator to comprehensively consider the caching capacity and return-to-source cost of the commercial CDN edge nodes, and determines the scheduling priority based on the target indicator, so as to give priority to scheduling each of the commercial CDN edge nodes with a smaller target indicator for each first client, thereby providing access services for each of the first files (i.e., cold files). As a result, cold files only occupy the storage resources of a part of the commercial CDN edge nodes with a smaller target indicator in the CDN system, which can reduce the situation in which multiple commercial CDN edge nodes in the CDN system eliminate hot files due to the need to cache cold files, thereby improving the service efficiency of hot files. Moreover, a smaller target indicator means that this part of the commercial CDN edge nodes has a higher caching capacity and a lower return-to-source cost. Therefore, this part of the commercial CDN edge nodes is scheduled first for each first client to provide access services for cold files, which can reduce the frequency of elimination and return-to-source of cold files and the return-to-source cost generated by obtaining cold files from the source station, thereby helping to reduce the overall bandwidth cost of the system. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments of the present application. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0022] Figure 1 This is a flowchart of the steps of a scheduling method for a commercial CDN edge node in an embodiment of the present application;

[0023] Figure 2 This is a schematic diagram of the structure of a scheduling system for a commercial CDN edge node in an embodiment of the present application;

[0024] Figure 3 This is a schematic diagram of the structure of a scheduling device for a commercial CDN edge node in an embodiment of the present application;

[0025] Figure 4 It is a schematic diagram of an electronic device in an embodiment of the present application. DETAILED DESCRIPTION

[0026] To facilitate understanding of the technical solutions provided by this application, the main technical concepts involved in the embodiments of this application are briefly described below.

[0027] Video CDN: refers to a CDN system that can provide video services, generally including storage system, synchronization system, back-source system, scheduler, video file parsing server and other parts.

[0028] The Least Recently Used (LRU) strategy is a file elimination algorithm whose basic idea is to select files that have not been used recently for elimination. That is, when a file is accessed, its usage timestamp is updated. When a file needs to be eliminated, the file with the oldest timestamp is selected for elimination.

[0029] In a CDN system, CDN nodes (such as CDN edge nodes and their upstream nodes) can be deployed either self-built or leased. Commercial CDN nodes (such as commercial CDN edge nodes) are those deployed through leasing (for example, through leasing CDN services provided by CDN vendors). For cost considerations, CDN systems typically use commercial CDN nodes to provide file access services to users.

[0030] In a CDN system, a scheduler usually schedules different commercial CDN edge nodes for each client based on the number of requests or file type to provide access services for different files.

[0031] However, traditional scheduling strategies will cause a large amount of storage resources at each commercial CDN edge node to be occupied by cold files, thereby affecting the service efficiency of hot files. In addition, the frequent elimination and return of cold files in the CDN system will also increase the overall bandwidth cost of the system.

[0032] Taking video CDN as an example, when a video user watches a video through a client, they access (i.e. download) the video stream file in the following way:

[0033] After the client initiates a viewing request for a video program, it first obtains a parsing list of video files associated with the video program from the video file parsing server of the video CDN, and then downloads the video files in the parsing list in sequence.

[0034] When the client downloads each video file in the parsed list, it needs to send a user request for the video file to the scheduler of the video CDN, so that the scheduler can schedule the commercial CDN edge node to process the user request (i.e., send the video file to the client) according to the pre-configured scheduling strategy.

[0035] Before returning the video file, the commercial CDN edge node first checks whether it has the corresponding video file cached; if the commercial CDN edge node has the corresponding video file cached, it directly sends the video file to the client; if the commercial CDN edge node does not have the corresponding video file cached, it needs to send a download request for the video file to the upstream node, and after receiving the video file returned by the upstream node, it sends it to the client and caches the video file locally. Therefore, the next time a user request for the same video file is processed, the video file can be directly returned to the client without requesting the video file from the upstream node again; if the commercial CDN edge node is not configured with an upstream node, or the upstream node of the commercial CDN edge node (and the upstream nodes of the upstream node, etc., which are upstream nodes at all levels configured between the commercial CDN edge node and the source station) does not cache the video file, it needs to send a download request to the source station to obtain the video file. It can be understood that this method of a commercial CDN edge node downloading files from the source station or a commercial CDN edge node downloading files from the source station through upstream nodes at all levels is called back-to-source.

[0036] The commercial CDN nodes associated with each CDN vendor have their own storage and back-to-origin strategies. For example, when a commercial CDN edge node associated with a CDN vendor processes a user request for a video file, if the video file is cached, it will return it directly. If the video file is not cached, it will return to the origin server directly according to the preset back-to-origin strategy, provide access services to the client based on the video file returned by the origin server, and cache the video file returned by the origin server. If the cache space of the commercial CDN edge node is full at this time, it is necessary to first eliminate the old file according to the preset storage strategy, such as deleting the previously cached video file according to the LRU strategy, and then cache the video file returned by the current origin server.

[0037] In related technologies, multiple commercial CDN edge nodes (i.e., CDN nodes that directly communicate with clients) are typically allocated to provide file access services for users associated with different regions and operators according to a preset allocation strategy. For multiple commercial CDN edge nodes serving users associated with a particular region and operator, a scheduler will schedule these commercial CDN edge nodes to provide file access services for users associated with that region and operator according to the preset scheduling strategy.

[0038] Traditional scheduling strategies are mainly based on two dimensions: the number of requests or the type of file. Specifically, when adopting a scheduling strategy based on the number of requests, the scheduler determines how many user requests each commercial CDN edge node needs to process based on the number of user requests received; when adopting a scheduling strategy based on the type of file, the scheduler determines which user requests each commercial CDN edge node needs to process based on which types of files (such as video files, compressed files, etc.) each commercial CDN edge node supports to provide access services.

[0039] However, in actual scenarios, files are divided into hot and cold files. The total number of hot files is small, but the access frequency of a single file is high, that is, a large number of user requests for the same hot file may be generated in a short period of time. The total number of cold files (also called long-tail files) is large, but the user access frequency of a single file is low, that is, a large number of user requests for different cold files may be generated in a short period of time.

[0040] Traditional scheduling strategies are mainly based on the number of requests or the type of files, without considering the difference between hot and cold files. As a result, the ratio of user requests for cold files and hot files processed by different commercial CDN edge nodes is roughly the same, and multiple user requests for the same cold file or hot file may be processed by different commercial CDN edge nodes. This means that each commercial CDN edge node may waste a lot of resources on the storage and elimination of cold files, thereby affecting the service efficiency of hot files (for example, eliminating hot files to cache cold files, resulting in increased service response time for hot files). In addition, the frequent elimination and return to the source of cold files will greatly increase the overall bandwidth cost of the system, which is also the main factor restricting the development of CDN systems.

[0041] Based on the above analysis, in response to the problems of low service efficiency of hot files and high overall bandwidth cost of the system in related technologies, the embodiments of the present application provide a scheduling method, system, device, equipment and product for commercial CDN edge nodes, which can reduce the frequency of elimination and return to the source of cold files and the return to the source cost generated by obtaining cold files from the source station, thereby improving the service efficiency of hot files and reducing the overall bandwidth cost of the system.

[0042] Reference Figure 1 FIG. 1 is a flowchart showing a method for scheduling a commercial CDN edge node in an embodiment of the present application, the method comprising the following steps:

[0043] Step S11: Obtain target indicators for each of a plurality of predetermined commercial content delivery network CDN edge nodes, wherein the target indicators are negatively correlated with the caching capacity of the commercial CDN edge nodes, and the target indicators are positively correlated with the back-to-source cost of the commercial CDN edge nodes, and the back-to-source cost is used to represent the bandwidth cost required for the commercial CDN edge nodes to obtain files from the source station.

[0044] During specific implementation, the cache capacity and back-to-source cost of each commercial CDN edge node in the CDN system are obtained in advance. Among them, the cache capacity (i.e., the cache capacity of the commercial CDN edge node for files in the source station) can be determined based on storage performance-related indicators such as the storage space capacity of the commercial CDN edge node. In actual application, the cache capacity can be described by the probability of cache miss (miss rate). The back-to-source cost (i.e., the bandwidth cost required for the commercial CDN edge node to obtain files in the source station) can be determined based on the communication connection method between the commercial CDN edge node and the source station (i.e., the back-to-source computer room) (such as public network connection, dedicated line connection, etc.), the region where the back-to-source computer room is located, and the operator. In actual application, the back-to-source cost can be described by traffic charges (the corresponding billing unit can be RMB per Gb / s).

[0045] By weighting and / or inversely multiplying the cache capacity and back-to-source cost of each commercial CDN edge node, the target indicators of each commercial CDN edge node are obtained and stored; subsequently, after receiving multiple user requests from each first client (i.e., a client that needs to access one or more cold files), the multiple commercial CDN edge nodes that can be used to serve each first client can be determined based on a preset allocation strategy, such as the region and operator to which the each first client belongs, and then the target indicators of each of the predetermined multiple commercial CDN edge nodes can be obtained from the pre-stored target indicators of each commercial CDN edge node in the CDN system.

[0046] Step S12: determining the scheduling priorities of the plurality of commercial CDN edge nodes according to their respective target indicators, wherein the scheduling priority of each commercial CDN edge node is negatively correlated with the target indicator.

[0047] During specific implementation, descending scheduling priorities may be determined for multiple commercial CDN edge nodes according to the target indicators in ascending order.

[0048] Alternatively, different numerical intervals and the scheduling priorities corresponding to the numerical intervals may be preset, thereby determining the scheduling priority of the commercial CDN edge node based on the numerical interval to which the target indicator belongs. Taking the preset numerical intervals 1 and 2 as an example, any value included in numerical interval 1 is less than any value included in numerical interval 2. By setting the scheduling priority corresponding to numerical interval 1 higher than the scheduling priority corresponding to numerical interval 2, the scheduling priority of the commercial CDN edge node subsequently determined can be negatively correlated with the target indicator.

[0049] Step S13: According to the respective scheduling priorities of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to provide access services for each first client to each first file, where the first file is: a file with an access frequency in the source station lower than a preset frequency threshold.

[0050] In specific implementation, based on the order of the scheduling priority from high to low, the commercial CDN edge nodes that are ranked higher and meet the set number can be selected in turn to provide access services for the first files (i.e., cold files) for the first clients (i.e., clients that need to access one or more cold files). In this way, the commercial CDN edge nodes with smaller target indicators are preferentially scheduled for the first clients, while the commercial CDN edge nodes with larger target indicators can be used to provide access services for hot files (i.e., files in the source station whose user access frequency is not lower than the preset frequency threshold).

[0051] It should be noted that this application takes into account that the communication connection methods between different commercial CDN edge nodes (such as commercial CDN nodes of different CDN manufacturers) and source stations are usually different. For example, some commercial CDN edge nodes and source stations are connected through the public network, while some commercial CDN edge nodes and source stations are directly connected through pre-built dedicated lines. The public network connection can be deployed by different operators in different regions. Therefore, the back-to-source costs of different commercial CDN edge nodes are usually different.

[0052] If a commercial CDN edge node with a high cost of scheduling back to the source provides access services for many cold files, and the caching capability of the commercial CDN edge node is weak (for example, the storage space capacity is small), the commercial CDN edge node will need to frequently go back to the source to obtain relevant cold files, resulting in a significant increase in the overall bandwidth cost of the system. In addition, too many cold files may eliminate hot files, thereby affecting the service efficiency of hot files.

[0053] Therefore, the present application introduces target indicators to comprehensively consider the caching capacity and return-to-source cost of commercial CDN edge nodes, and selects to prioritize scheduling each of the commercial CDN edge nodes with smaller target indicators for each first client, that is, to prioritize scheduling commercial CDN edge nodes with lower return-to-source cost and higher caching capacity to provide access services for cold files, so that operations such as return-to-source, storage and access services related to cold files can be concentratedly executed by these commercial CDN edge nodes with lower return-to-source cost and higher caching capacity. In this way, the return-to-source frequency and return-to-source cost related to cold files can be effectively reduced, thereby reducing the overall bandwidth cost of the system. Moreover, since cold files only occupy the storage resources of a part of the commercial CDN edge nodes with smaller target indicators in the CDN system, the situation where commercial CDN edge nodes eliminate hot files due to the need to cache cold files can be reduced overall, thereby reducing the return-to-source frequency related to hot files, thereby improving the service efficiency of hot files.

[0054] As a possible implementation method, the number of requests or the type of file can be introduced as auxiliary information in the above-mentioned node selection process to determine at least how many top-ranked commercial CDN edge nodes need to be selected or at least which top-ranked commercial CDN edge nodes need to be selected to provide access services for each first file respectively.

[0055] As a possible implementation method, a minimum selection number is set in the above-mentioned node selection process (i.e., limiting the minimum number of commercial CDN edge nodes used to provide cold file access services) to avoid the situation where only a single commercial CDN edge node provides cold file access services, thereby reducing the impact of single point failures on the service quality of cold files.

[0056] The technical solution of the embodiment of the present application is adopted, by introducing target indicators to comprehensively consider the caching capacity and return cost of commercial CDN edge nodes, and determining the scheduling priority based on the target indicators, so as to give priority to scheduling each of the commercial CDN edge nodes with smaller target indicators for each first client, thereby providing access services for each of the first files (i.e., cold files). As a result, cold files only occupy the storage resources of a part of the commercial CDN edge nodes with smaller target indicators in the CDN system, which can reduce the situation in which multiple commercial CDN edge nodes in the CDN system eliminate hot files due to the need to cache cold files, thereby improving the service efficiency of hot files. Moreover, a smaller target indicator means that this part of the commercial CDN edge nodes has a higher caching capacity and a lower return cost. Therefore, this part of the commercial CDN edge nodes is scheduled first for each first client to provide access services for cold files, which can reduce the elimination and return frequency of cold files and the return cost generated by obtaining cold files from the source station, thereby helping to reduce the overall bandwidth cost of the system.

[0057] As a possible implementation, the target indicator of the commercial CDN edge node involved in step S11 is determined by the following formula:

[0058] F=C*M

[0059] Wherein, F represents the target indicator of the commercial CDN edge node; C represents the back-to-source cost of the commercial CDN edge node; parameter M = back-to-source inbound bandwidth / service user outbound bandwidth, and parameter M is negatively correlated with the caching capacity of the commercial CDN edge node.

[0060] Optionally, the target indicator is negatively correlated with the service quality of the commercial CDN edge node to improve the service quality of the commercial CDN edge node. For example, the above formula can be adjusted to: F = C*M + W / Q, or F = C*M*(W / Q), where Q represents the quality of service (e.g., data transmission rate), and the parameter W is greater than 0 and less than 1, and is used to reduce the impact of Q on F.

[0061] As a possible implementation method, periodically detect (for example, every 5 minutes) whether there are changes in the various indicators associated with the target indicators of multiple commercial CDN edge nodes (such as back-to-source cost, caching capacity or service quality, etc.), and update the target indicators with changes in the associated indicators to ensure the timeliness of the target indicators.

[0062] As a possible implementation method, the number of user accesses to each file in the source station is counted in advance, and based on this, it is determined whether each file in the source station is a cold file (i.e., the first file), and the files in the source station that are determined to be cold files are identified; subsequently, after receiving (for example, through a scheduler) multiple user requests from various clients, based on whether the file requested to be accessed by the user request is pre-identified as a cold file, it is identified whether the user request is a first access request, and the client that sent at least one first access request is identified as the first client.

[0063] As a possible implementation, step S13 includes:

[0064] Step S131: The plurality of commercial CDN edge nodes are selected according to the scheduling priority, and a first bandwidth is divided from the committed maximum outbound bandwidth of each selected commercial CDN edge node, where the first bandwidth is the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for the first files.

[0065] In specific implementations, a set number of commercial CDN edge nodes may be selected in descending order of scheduling priority; alternatively, commercial CDN edge nodes with a scheduling priority higher than the set priority may be selected. For each selected commercial CDN edge node, the entire committed maximum outbound bandwidth of the commercial CDN edge node may be allocated as the first bandwidth; alternatively, a portion of the committed maximum outbound bandwidth of the commercial CDN edge node may be allocated as the first bandwidth according to a set allocation ratio (e.g., 70%).

[0066] Step S132: Determine the first bandwidth of each unselected commercial CDN edge node as zero.

[0067] In specific implementation, this application introduces a first bandwidth to control the cold file access service provided by the commercial CDN edge node. When the first bandwidth of the commercial CDN edge node is determined to be zero, the commercial CDN edge node will not have the bandwidth for transmitting the first file, that is, the commercial CDN edge node will not be able to provide access services for the first file. This can effectively prevent the commercial CDN edge node with a larger target indicator from providing access services for cold files to the first client, thereby further ensuring the elimination of files related to cold files and the frequency of back-to-source, as well as the reduction of back-to-source costs.

[0068] Step S133: According to the respective first bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple first access requests from the respective first clients, where the first access requests are used to request access services for the first files, and the number of first access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the first bandwidth of each of the commercial CDN edge nodes.

[0069] In a specific implementation, a commercial CDN edge node uses the first bandwidth to transmit the first file targeted by the relevant first access request to one or more first clients (i.e., processes each first access request from one or more first clients). Therefore, the larger the first bandwidth of the commercial CDN edge node, the greater the number of first access requests that the commercial CDN edge node can support and process in a short period of time. Therefore, this application uses the first bandwidth as a basis to determine the number of first access requests that each commercial CDN edge node needs to process, thereby ensuring full utilization of the first bandwidth.

[0070] For example, during the scheduling process, the number of first access requests that each commercial CDN edge node needs to process can be determined based on the bandwidth ratio between the first bandwidths of each commercial CDN edge node. For example, if the bandwidth ratio between the first bandwidths of three commercial CDN edge nodes is 1:2:3, then the first access requests that each CDN edge node needs to process can be randomly selected from all currently received first access requests, and during the selection process, the ratio of the number of first access requests that each of the three commercial CDN edge nodes needs to process must meet the 1:2:3 ratio. This ensures that the number of first access requests that each commercial CDN edge node needs to process is positively correlated with the first bandwidth of each commercial CDN edge node.

[0071] For another example, during the scheduling process, a roulette wheel strategy can be adopted. For example, the preset value interval is divided according to the bandwidth ratio between the respective first bandwidths of each commercial CDN edge node to obtain the value sub-interval associated with each commercial CDN edge node; then a random number is determined for each first access request, and based on the value sub-interval in which the random number is located, it is determined which commercial CDN edge node is responsible for processing the first access request. It can be understood that the larger the first bandwidth of the commercial CDN edge node, the larger the value sub-interval associated with the commercial CDN edge node, and the greater the probability that the random number falls within the value sub-interval. Therefore, the more first access requests that the commercial CDN edge node is determined to be responsible for processing, thereby ensuring that the number of first access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the first bandwidth of each of the commercial CDN edge nodes.

[0072] In this embodiment, the present application determines the first bandwidth of the commercial CDN edge node to be zero or non-zero based on the scheduling priority, which can effectively prevent the commercial CDN edge node scheduled to have a larger target indicator (i.e., a higher return cost and a lower caching capacity) from providing access services for cold files, thereby further ensuring the elimination of files related to cold files and the frequency of return to the source, as well as the reduction of return to the source cost; and dividing the first bandwidth from the committed maximum outbound bandwidth can effectively avoid service quality issues such as transmission delay caused by the bandwidth required for the commercial CDN edge node to transmit cold files exceeding its own committed maximum outbound bandwidth, thereby ensuring user experience; and based on the first bandwidth, determining the number of first access requests that each commercial CDN edge node needs to process can ensure the utilization rate of the first bandwidth, thereby avoiding waste of bandwidth resources.

[0073] Optionally, step S131 includes:

[0074] Step S1311: selecting the plurality of commercial CDN edge nodes in sequence according to the scheduling priority from high to low.

[0075] In specific implementation, for each commercial CDN edge node with the same scheduling priority, the commercial CDN edge nodes can be selected in random order, or the commercial CDN edge nodes can be selected in sequence based on the ranking of preset reference indicators such as service quality.

[0076] Step S1312: For the currently selected commercial CDN edge node, a first bandwidth is divided from the committed maximum outbound bandwidth of the commercial CDN edge node.

[0077] In a specific implementation, for the currently selected commercial CDN edge node, the entire committed maximum outbound bandwidth of the commercial CDN edge node can be allocated as the first bandwidth; or, part of the committed maximum outbound bandwidth of the commercial CDN edge node can be allocated as the first bandwidth according to a set allocation ratio (such as 70%).

[0078] Step S1313: In response to detecting that the sum of the first bandwidths of all selected commercial CDN edge nodes is not less than a first total bandwidth, node selection ends, where the first total bandwidth is the estimated total bandwidth required to transmit the first files.

[0079] In specific implementation, the total bandwidth required for each commercial CDN edge node to transmit each first file to each first client can be estimated based on the number of first access requests currently received and the size of the first file targeted by each first access request, thereby obtaining the first total bandwidth.

[0080] In this embodiment, the commercial CDN edge node for processing the first access request is selected based on the first total bandwidth, which can effectively avoid the problem of difficulty in completing the processing of all received first access requests in a short time due to the first bandwidth of each selected commercial CDN edge node being less than the first total bandwidth (such as congestion caused by insufficient bandwidth), thereby ensuring user experience.

[0081] Optionally, step S1312 includes:

[0082] Step A-1: ​​When the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is not greater than the first total bandwidth, all the committed maximum outbound bandwidths of the currently selected commercial CDN edge nodes are divided into the first bandwidth.

[0083] In a specific implementation, when the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is less than or equal to the first total bandwidth, the committed maximum outbound bandwidths of the currently selected commercial CDN edge nodes are all divided into the first bandwidth, which can achieve rapid division of the first bandwidth, and the committed maximum outbound bandwidth of the commercial CDN edge node is all used to provide access services for cold files, thereby avoiding resource preemption of access services for other files (such as hot files), thereby ensuring the quality of cold file access services.

[0084] Step A-2: When the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is greater than the first total bandwidth, a portion of the committed maximum outbound bandwidth of the currently selected commercial CDN edge node that corresponds to the target difference is divided into the first bandwidth. The target difference is: the difference between the sum of the committed maximum outbound bandwidths of each previously selected commercial CDN edge node and the first total bandwidth.

[0085] In specific implementation, if the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is greater than the first total bandwidth, it means that the currently selected commercial CDN edge node is the last commercial CDN edge node selected before the end of node selection. At this time, the first bandwidth is divided from the committed maximum outbound bandwidth of the currently selected commercial CDN edge node based on the target difference, so that the sum of the first bandwidths of all selected commercial CDN edge nodes can be equal to the first total bandwidth, thereby avoiding the waste of bandwidth resources due to excessive division of the first bandwidth.

[0086] Optionally, after step S132, the method further includes steps S134 and S135:

[0087] Step S134: For each commercial CDN edge node, a second bandwidth is divided from the target remaining bandwidth of the commercial CDN edge node, where the target remaining bandwidth is the remaining bandwidth of the committed maximum outbound bandwidth of the commercial CDN edge node, excluding the first bandwidth; the second bandwidth is the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for each second file; the second file is a file in the origin site whose access frequency is not less than the preset frequency threshold.

[0088] In specific implementation, the present application introduces a second bandwidth to control the hot file access service provided by the commercial CDN edge node. When the second bandwidth of the commercial CDN edge node is zero (for example, the second bandwidth allocated is zero because the target remaining bandwidth is zero), the commercial CDN edge node will not have the bandwidth for transmitting the second file (i.e., hot file), that is, the commercial CDN edge node will not be able to provide access services for hot files, thereby allowing the commercial CDN edge node to be dedicated to providing access services for cold files, thereby avoiding resource preemption (such as preemption of storage resources) between cold file access services and hot file access services. When the second bandwidth of the commercial CDN edge node is not zero, the commercial CDN edge node will have the bandwidth for transmitting hot files, that is, the commercial CDN edge node can provide access services for hot files, thereby ensuring that each second client can access the hot files normally.

[0089] Step S135: According to the respective second bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple second access requests from the respective second clients, where the second access requests are used to request access services for the second files, and the number of second access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the second bandwidth of each of the commercial CDN edge nodes.

[0090] In specific implementation, the number of user accesses to each file in the source station can be counted in advance to obtain the user access frequency of each file, and accordingly identify the cold files and hot files (i.e., second files) in the source station; subsequently, after receiving (for example, through a scheduler) multiple user requests from various clients, it can be determined whether each user request is a first access request or a second access request based on whether the file targeted by each user request is a cold file or a hot file, and then identify each first client (i.e., a client that has sent at least one first access request) and each second client (i.e., a client that has sent at least one second access request) from each client.

[0091] During the scheduling process, the number of second access requests that each commercial CDN edge node needs to process can be determined based on the bandwidth ratio between the respective second bandwidths of each commercial CDN edge node; alternatively, a roulette wheel strategy can be used to determine the number of second access requests that each commercial CDN edge node needs to process. The specific implementation method for scheduling each commercial CDN edge node to process second access requests based on the second bandwidth can refer to the specific implementation method for scheduling each commercial CDN edge node to process first access requests based on the first bandwidth, and is not further described here.

[0092] In this embodiment, by determining the first bandwidth and the second bandwidth for each of the commercial CDN edge nodes respectively, separate scheduling of access requests related to cold files and hot files can be implemented for each commercial CDN edge node. That is, first, for cold files, the first bandwidth is divided from the maximum committed bandwidth of the commercial CDN edge node, so that the commercial CDN edge node with a smaller target index can be mainly responsible for providing access services for cold files, thereby reducing the bandwidth cost related to cold files and achieving a significant reduction in the overall bandwidth cost of the system; and then, for hot files, the second bandwidth is divided from the target remaining bandwidth of the commercial CDN edge node, so that the commercial CDN edge node with a larger target index can be mainly responsible for providing access services for hot files, thereby reducing the resource preemption of cold files and hot files on the same commercial CDN edge node, thereby improving the service efficiency of hot files.

[0093] Optionally, step S134 includes:

[0094] Step S1341: Select the multiple commercial CDN edge nodes in sequence according to the scheduling priority from high to low (ie, the target index from small to large).

[0095] During specific implementation, the plurality of commercial CDN edge nodes may be selected in sequence according to the target indicators from small to large, so as to allocate the second bandwidth to each selected commercial CDN edge node.

[0096] Alternatively, during the selection process, each commercial CDN edge node whose target remaining bandwidth is zero may be skipped, and the second bandwidth of these skipped commercial CDN edge nodes may be directly determined to be zero. Then, each commercial CDN edge node whose target remaining bandwidth is not zero may be selected in descending order of the target index, so as to divide the second bandwidth for each selected commercial CDN edge node, thereby improving the selection efficiency.

[0097] Step S1342: For the currently selected commercial CDN edge node, a second bandwidth is divided from the target remaining bandwidth of the commercial CDN edge node.

[0098] In a specific implementation, the entire target remaining bandwidth of the commercial CDN edge node can be allocated as the second bandwidth; alternatively, a portion of the target remaining bandwidth of the commercial CDN edge node can be allocated as the second bandwidth according to a preset allocation ratio. The specific implementation method for allocating the second bandwidth from the target remaining bandwidth can refer to the specific implementation method for allocating the first bandwidth from the committed maximum outbound bandwidth described above, and is not further described here.

[0099] Step S1343: In response to detecting that the sum of the second bandwidths of all selected commercial CDN edge nodes is not less than the second total bandwidth, node selection is ended, and the second bandwidth of each unselected commercial CDN edge node is determined to be zero, where the second total bandwidth is: the estimated total bandwidth required to transmit each second file.

[0100] In specific implementation, the total bandwidth required for each commercial CDN edge node to transmit each second file to each second client can be estimated based on the number of second access requests currently received and the size of the second file targeted by each second access request to obtain the second total bandwidth.

[0101] In this embodiment, a commercial CDN edge node is selected based on the second total bandwidth and the target indicator, and the second bandwidth is divided from the target remaining bandwidth of the selected commercial CDN edge node, thereby enabling a commercial CDN edge node with a smaller target indicator and a larger target remaining bandwidth to be used to provide access services for more hot files, thereby helping to reduce the bandwidth cost associated with hot files and ensuring the rational use of bandwidth resources of the commercial CDN edge node.

[0102] Optionally, the first total bandwidth and / or the second total bandwidth are periodically updated; wherein the current first total bandwidth and / or the current second total bandwidth are determined by the following formula:

[0103] BW=B*R / (Vcold+Vhot)

[0104] Among them, BW represents the current first total bandwidth or the current second total bandwidth. When BW represents the current first total bandwidth ColdB, R=Vcold, that is, ColdB=B*Vcold / (Vcold+Vhot); when BW represents the current second total bandwidth HotB, R=Vhot, that is, HotB=B*Vhot / (Vcold+Vhot); B represents the current total service bandwidth of each of the commercial CDN edge nodes; Vcold represents the currently counted number of times each of the first files is accessed, and Vhot represents the currently counted number of times each of the second files is accessed.

[0105] In a specific implementation, at fixed intervals (e.g., 5 minutes), data such as the number of times each first file and each second file has been accessed in a recent period (e.g., the last 5 minutes) and the current total service bandwidth of each commercial CDN edge node (e.g., the sum of the promised maximum outbound bandwidth) are obtained from the scheduler, and the current first total bandwidth and / or the current second total bandwidth are determined based on this data to achieve periodic updates of the first total bandwidth and / or the second total bandwidth.

[0106] Optionally, after step S134, the method further includes the following steps S31 to S33:

[0107] Step S31: for each of the commercial CDN edge nodes, if the first bandwidth of the commercial CDN edge node is greater than the second bandwidth and the difference between the first bandwidth and the second bandwidth is greater than a first set value, classify the commercial CDN edge node as a first node.

[0108] In a specific implementation, a commercial CDN edge node whose first bandwidth is greater than the second bandwidth and the difference between the two is large is classified as a first node, that is, a commercial CDN edge node mainly responsible for providing cold file access services is classified as a first node.

[0109] Step S32: For each of the commercial CDN edge nodes, if the second bandwidth of the commercial CDN edge node is greater than the first bandwidth and the difference between the second bandwidth and the first bandwidth is greater than a second set value, the commercial CDN edge node is classified as a second node.

[0110] In specific implementation, the commercial CDN edge node whose second bandwidth is greater than the first bandwidth and the difference between the two is large is classified as the second node, that is, the commercial CDN edge node mainly responsible for providing hot file access service is classified as the second node.

[0111] Step S33: A communication connection is directly established between each of the first nodes and the source station, and an intermediate cache is configured between each of the second nodes and the source station, so that each of the second nodes can communicate with the source station through the intermediate cache. The intermediate cache includes at least: an upstream node of each of the second nodes, and the intermediate cache is used to store the second file obtained by the second node from the source station when returning to the source.

[0112] In this embodiment, considering that the single-file access frequency of hot files is relatively high, an intermediate cache is configured between each of the second nodes and the source station, so that the intermediate cache can also store the hot file when the second node returns to the source, that is, when the second node requests the hot file from the source station to provide access service for the hot file to the relevant second client; thus, after the second node deletes the hot file from its own storage space, it can also obtain the hot file from the intermediate cache (such as the upstream node of the second node or the upstream node of the upstream node and other upstream nodes at all levels), thereby reducing the frequency of each of the second nodes obtaining hot files from the source station, thereby further reducing the overall bandwidth cost of the system; and considering that the single-file access frequency of cold files is relatively low, a communication connection is directly established between each of the first nodes and the source station, that is, no intermediate cache is configured between each of the first nodes and the source station, thereby simplifying the system structure and reducing the system implementation cost.

[0113] Optionally, a commercial CDN edge node with a greater difference between the first bandwidth and the second bandwidth is configured with an intermediate cache with a more complex structure (for example, more cache servers used as upstream nodes) to ensure a reduction in the number of back-to-source times related to hot files.

[0114] Optionally, the method further includes:

[0115] Periodically detecting whether the data transmission rate of the plurality of commercial CDN edge nodes is lower than a preset rate threshold;

[0116] For a commercial CDN edge node whose currently detected data transmission rate is lower than a preset rate threshold, the committed maximum outbound bandwidth of the commercial CDN edge node is reduced.

[0117] In a specific implementation, the data transmission rate of the plurality of commercial CDN edge nodes is detected once every fixed period of time (for example, 5 minutes) to see whether it is lower than a preset rate threshold. If the data transmission rate of a commercial CDN edge node is detected to be lower than the preset rate threshold, the committed maximum outbound bandwidth of the commercial CDN edge node is reduced, and the bandwidth division step (for example, the first bandwidth division and the second bandwidth division) is re-executed based on the current committed maximum outbound bandwidth of each commercial CDN edge node to reduce the number of files required to be transmitted by the commercial CDN edge node, thereby ensuring the service quality of the commercial CDN edge node as a whole. It is understandable that if the data transmission rate of a commercial CDN edge node is detected to be lower than the preset rate threshold multiple times, then after several iterations, the committed maximum outbound bandwidth of the commercial CDN edge node can be reduced to a smaller value (for example, 0). At this time, an alarm message can be generated to prompt the technician to repair the commercial CDN edge node, and the committed maximum outbound bandwidth of the commercial CDN edge node can be restored after the repair is completed.

[0118] For example, suppose there are n commercial CDN edge nodes, and the bandwidth costs of these nodes back to the source station (i.e., back-to-source costs) are C1, C2…C n (For ease of understanding, the billing unit is: RMB per Gb / s). It should be noted that the back-to-source cost is related to the region and operator where the back-to-source data center is located. If the commercial CDN edge node and the source station have a dedicated line connection, the back-to-source cost is usually lower.

[0119] Determine the cache miss probability (miss rate) of each commercial CDN edge node, and obtain the miss rates of n commercial CDN edge nodes as M1, M2…M n . It should be noted that the miss rate can be used to measure the caching capacity of commercial CDN edge nodes. This indicator is relatively stable and its daily changes are relatively regular. For example, it is usually lower during the evening peak and higher at other times. Therefore, the data update cycle can be set according to its changing pattern. Optionally, miss rate = back-to-source inbound bandwidth / service user outbound bandwidth. The lower the miss rate, the higher its caching capacity. Affected by the caching capacity, the frequency of back-to-source of the corresponding commercial CDN edge node will also be less, that is, the total bandwidth cost of the node due to multiple back-to-source will also be lower.

[0120] The promised maximum outbound bandwidth for each commercial CDN edge node serving users is also different. Assume that the promised maximum outbound bandwidth of these nodes is B1, B2…B n (Unit: Gb / s) It should be noted that the committed maximum outbound bandwidth is usually a pre-set parameter and does not change frequently. Therefore, a lower data update frequency can be set for the committed maximum outbound bandwidth.

[0121] To ensure the service rate of n commercial CDN edge nodes for users, the average rate of these nodes is obtained, and the average rate of the n commercial CDN edge nodes is: S1, S2…S n ; Then, the commercial CDN edge nodes with an average rate lower than the preset rate threshold Sh are determined to have service quality problems, and the committed maximum outbound bandwidth of the relevant nodes with service quality problems is reduced.

[0122] Assume that the total bandwidth of the estimated cold file access service (i.e., the first total bandwidth) is ColdB, and the total bandwidth of the estimated hot file access service (i.e., the second total bandwidth) is HotB. Then, the scheduling process of the commercial CDN edge nodes is as follows:

[0123] 1. First, calculate the cost factor (i.e., the target metric) of each commercial CDN edge node: F1 = C1 * M1, F2 = C2 * M2…F n = C n * M n [

[0124] 2. Sort the cost factors in ascending order to get: F i 、F j …

[0125] 3. Take the cost factor as the scheduling priority, and schedule the commercial CDN edge node CDNi with the highest scheduling priority (i.e., the smallest cost factor) to provide access services for cold files, that is: If B i >= ColdB, then the remaining B i - ColdB bandwidth in this commercial CDN edge node CDNi will be used to transmit hot files. That is, for CDNi, the first bandwidth CB i = ColdB of this node can be determined, and the second bandwidth HB i = B i - ColdB; If Bi < ColdB, then determine that the first bandwidth CBi = B i , the second bandwidth HBi = zero of this node, and then update ColdB to ColdB - Bi. According to the foregoing bandwidth division method, continue to divide the first bandwidth and the second bandwidth from the committed maximum outbound bandwidth of the commercial CDN edge node with the second highest scheduling priority (i.e., the second smallest cost factor); and so on. If when reaching the kth commercial CDN edge node, the updated ColdB is not greater than the maximum committed outbound bandwidth of this node, then for the commercial CDN edge nodes behind this node, such as CDNl, it can be directly determined that the first bandwidth CB l = zero of CDNl, and the second bandwidth HB l = B l ;

[0126] 4. Obtain the first bandwidth CB1, CB2...CB of each commercial CDN edge node n Afterwards, the scheduler determines the number of first access requests that each commercial CDN edge node needs to process according to the first bandwidth.

[0127] 5. Obtain the second bandwidth HB1, HB2…HB of each commercial CDN edge node n , HB1, HB2…, HB n Afterwards, the scheduler determines the number of second access requests that each commercial CDN edge node needs to process according to the second bandwidth.

[0128] 6. Check whether there are any changes in the indicators of each commercial CDN edge node at fixed intervals (such as 5 minutes), update the miss rate based on the changed indicators, and return to step 1.

[0129] Optionally, the changes in the back-to-source cost are monitored in real time. If the back-to-source cost of a commercial CDN edge node that prioritizes cold file access services increases, you can consider reducing the number of first access requests that the commercial CDN edge node needs to process (such as reducing the first bandwidth of the node), and allowing the commercial CDN edge node with the second lowest back-to-source cost to process more first access requests accordingly.

[0130] Optionally, the data transmission rate of the n commercial CDN edge nodes is periodically detected to see if it is lower than a preset rate threshold. If the data transmission rate of a commercial CDN edge node CDN k is lower than the preset rate threshold, the committed maximum outbound bandwidth B of the node is increased. k Lowered to B k / 2 and return to step 1.

[0131] It should be noted that the relevant indicators used to determine ColdB and HotB in the above text can be obtained from the scheduler, and the scheduler can count the number of times each file is accessed per unit time (i.e., user access frequency), and identify files with user access frequency lower than a certain threshold as cold files (for example, a label is set for the file to represent cold files), and identify files with user access frequency higher than a certain threshold as hot files. The cold and hot file identifications obtained in the current time period can also be used to guide how to determine whether a file is a cold file or a hot file in the next time period.

[0132] As a possible implementation, the first file involved in step S13 is determined by the following steps:

[0133] Obtaining target features associated with each video file in the source station, the target features including at least one of: user access frequency of the video file and historical information of a video program (such as a TV series or movie) to which the video file belongs;

[0134] Identifying a target video file from each video file in the source station according to each target feature, wherein the target video file is a video file whose user access frequency is lower than the preset frequency threshold;

[0135] The identified target video file is determined as the first file.

[0136] In specific implementation, based on historical information such as the user access frequency of the video file itself, or the user access frequency of the video program to which the video file belongs, the channel to which it belongs, the online time (for example, whether it is a newly launched video program), or the popularity of the video (for example, whether it is a popular TV series or movie), the video file in the source station is dynamically identified as a cold file (or hot file). It can be understood that compared to pre-identifying video files as cold files or hot files (for example, when generating a Uniform Resource Identifier (URI) path), the method provided by this application for dynamically identifying cold and hot files based on target features to support the distinction between cold and hot files is more flexible and timely.

[0137] It should be noted that the scheduling method for commercial CDN edge nodes provided in the present application can be executed by the scheduler in the CDN system; alternatively, a cost control center can be deployed that is in communication with relevant modules in the CDN system (such as the scheduler and each commercial CDN edge node in the system) so that the scheduler and the cost control center can work in a collaborative manner to implement the scheduling method for commercial CDN edge nodes provided in the present application. The collaborative working method between the scheduler and the cost control center can refer to the scheduling system embodiment of the commercial CDN edge node provided in the present application, which will not be elaborated here.

[0138] Reference Figure 2 The structural diagram of the scheduling system of the commercial CDN edge node shown is taken as an example of the scheduling method of the CDN edge node executed by the scheduling system of the commercial CDN edge node to illustrate the above method embodiment.

[0139] like Figure 2As shown, commercial CDN nodes from three different manufacturers are used as CDN edge nodes. Commercial CDN node 1 and commercial CDN node 2 return to the origin (i.e., object storage) via public networks 1 and 2, while commercial CDN node 3 returns to the origin via dedicated line 2 or public network 6. Assuming that the return cost of dedicated line 2 or public network 6 is lower, then given the same cache capacity, the scheduling system of the commercial CDN edge nodes will prioritize commercial CDN node 3 for providing access services for cold files, and prioritize commercial CDN nodes 1 and 2 for providing access services for hot files. It will also configure an intermediate cache for commercial CDN nodes 1 and 2, which includes multiple cache servers used as upstream nodes.

[0140] Specifically, the cost control center in the scheduling system of the commercial CDN edge node will monitor the service rate (such as data transmission rate) and other indicators of each commercial CDN edge node in real time, and will also record its overall service bandwidth (such as the sum of the promised maximum outgoing bandwidth); at the same time, the cost control center will determine the scheduling priority based on the target indicators of each commercial CDN edge node, and transmit the scheduling priority to the scheduler, so that the scheduler can schedule each commercial CDN edge node to process user requests based on the scheduling priority. For example, the scheduler can calculate the relevant bandwidth of cold files and hot files (i.e., the first bandwidth and the second bandwidth) based on indicators such as scheduling priority, promised maximum outgoing bandwidth, first total bandwidth and second total bandwidth, and schedule each commercial CDN edge node to process user requests (i.e., the first access request and the second access request) based on the calculated relevant bandwidth. Alternatively, the cost control center can be configured to iteratively perform the relevant bandwidth calculation of cold files and hot files (i.e., bandwidth optimization), and transmit the calculated relevant bandwidth to the scheduler, so that the scheduler can configure the bandwidth of each commercial CDN edge node (such as setting or updating the first bandwidth and the second bandwidth).

[0141] Among them, the scheduler can also be responsible for counting which user requests are for hot files and which user requests are for cold files, and reporting the number (or ratio) of user requests for cold files and hot files to the cost control center so that the cost control center can determine the first total bandwidth and the second total bandwidth; at the same time, the scheduler can also schedule commercial CDN edge nodes to process user requests based on the first bandwidth and the second bandwidth, thereby realizing separate scheduling of cold files and hot files for commercial CDN edge nodes, thereby reducing the overall bandwidth cost of the system and reducing the miss rate of commercial CDN edge nodes that provide hot file access services, thereby improving user experience.

[0142] It is understandable that the above scheduling process can be automatically completed by the scheduling system of the commercial CDN edge node, and the scheduling system of the commercial CDN edge node can dynamically optimize the above scheduling process based on various indicators obtained in real time.

[0143] It should be noted that for the method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present application are not limited by the order of the actions described, because according to the embodiments of the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present application.

[0144] Figure 2 This is a schematic diagram of the structure of a scheduling system for a commercial CDN edge node according to an embodiment of the present application. The system includes multiple commercial content delivery network CDN edge nodes, a scheduler, and a cost control center, wherein:

[0145] The cost control center is configured to obtain target indicators for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicators are negatively correlated with the cache capacity of the commercial CDN edge nodes, and positively correlated with the back-to-origin cost of the commercial CDN edge nodes, wherein the back-to-origin cost represents the bandwidth cost required by the commercial CDN edge nodes to obtain files from the origin server;

[0146] The cost control center is further configured to determine a scheduling priority for each of the plurality of commercial CDN edge nodes based on their respective target indicators, and transmit the determined scheduling priority to the scheduler, wherein the scheduling priority of each commercial CDN edge node is negatively correlated with the target indicator;

[0147] The scheduler is configured to schedule the plurality of commercial CDN edge nodes to provide access services to respective first clients for respective first files based on their respective scheduling priorities, where the first files are files whose access frequency in the origin server is lower than a preset frequency threshold. Optionally, the scheduler is further configured to perform the following steps:

[0148] Selecting the plurality of commercial CDN edge nodes according to the scheduling priority, and allocating a first bandwidth from the committed maximum outbound bandwidth of each selected commercial CDN edge node, where the first bandwidth is: the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for each first file;

[0149] Determine the first bandwidth of each unselected commercial CDN edge node as zero;

[0150] According to the respective first bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple first access requests from the respective first clients, where the first access requests are used to request access services for the first files, and the number of first access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the first bandwidth of each of the commercial CDN edge nodes.

[0151] Optionally, the scheduler is further configured to perform the following steps:

[0152] Selecting the plurality of commercial CDN edge nodes in sequence according to the scheduling priority from high to low;

[0153] For the currently selected commercial CDN edge node, divide the first bandwidth from the committed maximum outbound bandwidth of the commercial CDN edge node;

[0154] In response to detecting that the sum of the first bandwidths of all selected commercial CDN edge nodes is not less than a first total bandwidth, node selection is ended, where the first total bandwidth is: an estimated total bandwidth required to transmit the first files.

[0155] Optionally, the scheduler is further configured to perform the following steps:

[0156] If the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is not greater than the first total bandwidth, allocating the committed maximum outbound bandwidths of the currently selected commercial CDN edge nodes to the first bandwidth;

[0157] When the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is greater than the first total bandwidth, a portion of the committed maximum outbound bandwidth of the currently selected commercial CDN edge node that corresponds to the target difference is divided as the first bandwidth. The target difference is the difference between the sum of the committed maximum outbound bandwidths of the previously selected commercial CDN edge nodes and the first total bandwidth.

[0158] Optionally, the scheduler is further configured to, after determining the first bandwidth of each unselected commercial CDN edge node to be zero, perform the following steps:

[0159] For each commercial CDN edge node, a second bandwidth is divided from the target remaining bandwidth of the commercial CDN edge node, where the target remaining bandwidth is the remaining bandwidth of the commercial CDN edge node's committed maximum outbound bandwidth, excluding the first bandwidth. The second bandwidth is the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for each second file. The second file is a file in the origin site whose access frequency is not less than the preset frequency threshold.

[0160] According to the respective second bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple second access requests from each second client, where the second access requests are used to request access services for the second file, and the number of second access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the second bandwidth of each of the commercial CDN edge nodes.

[0161] Optionally, the scheduler is further configured to perform the following steps:

[0162] Selecting the plurality of commercial CDN edge nodes in sequence according to the scheduling priority from high to low;

[0163] For the currently selected commercial CDN edge node, dividing a second bandwidth from the target remaining bandwidth of the commercial CDN edge node;

[0164] In response to detecting that the sum of the second bandwidths of all selected commercial CDN edge nodes is not less than the second total bandwidth, node selection is ended, and the second bandwidth of each unselected commercial CDN edge node is determined to be zero, where the second total bandwidth is: the estimated total bandwidth required to transmit each second file.

[0165] Optionally, the scheduler is further configured to periodically update the first total bandwidth and / or the second total bandwidth;

[0166] The current first total bandwidth and / or the current second total bandwidth are determined by the following formula:

[0167] BW=B*R / (Vcold+Vhot)

[0168] Among them, BW represents the current first total bandwidth or the current second total bandwidth. When BW represents the current first total bandwidth, R=Vcold; when BW represents the current second total bandwidth, R=Vhot; B represents the current sum of the service bandwidths of each of the commercial CDN edge nodes; Vcold represents the currently counted number of times each of the first files is accessed, and Vhot represents the currently counted number of times each of the second files is accessed.

[0169] Optionally, the scheduler is further configured to perform the following steps:

[0170] For each of the commercial CDN edge nodes, if the first bandwidth of the commercial CDN edge node is greater than the second bandwidth, and the difference between the first bandwidth and the second bandwidth is greater than a first set value, classifying the commercial CDN edge node as a first node;

[0171] For each of the commercial CDN edge nodes, if the second bandwidth of the commercial CDN edge node is greater than the first bandwidth, and the difference between the second bandwidth and the first bandwidth is greater than a second set value, classifying the commercial CDN edge node as a second node;

[0172] A communication connection is directly established between each first node and the source station, and an intermediate cache is configured between each second node and the source station, so that each second node can communicate with the source station through the intermediate cache. The intermediate cache includes at least: an upstream node of each second node, and the intermediate cache is used to store the second file obtained by the second node from the source station when returning to the source.

[0173] Optionally, the cost control center is further configured to perform the following steps:

[0174] Periodically detecting whether the data transmission rate of the plurality of commercial CDN edge nodes is lower than a preset rate threshold;

[0175] For a commercial CDN edge node whose currently detected data transmission rate is lower than a preset rate threshold, the committed maximum outbound bandwidth of the commercial CDN edge node is reduced.

[0176] Optionally, the target indicator of the commercial CDN edge node is determined by the following formula:

[0177] F=C*M

[0178] Wherein, F represents the target indicator of the commercial CDN edge node; C represents the back-to-source cost of the commercial CDN edge node; parameter M = back-to-source inbound bandwidth / service user outbound bandwidth, and parameter M is negatively correlated with the caching capacity of the commercial CDN edge node.

[0179] Optionally, when the target indicator is negatively correlated with the service quality of the CDN edge node, the target indicator of the commercial CDN edge node is determined by any one of the following formulas:

[0180] F=C*M+W / Q

[0181] F=C*M*(W / Q)

[0182] Where Q represents the quality of service; parameter W is greater than 0 and less than 1, and parameter W is used to reduce the impact of Q on F; F represents the target indicator of the commercial CDN edge node; C represents the back-to-source cost of the commercial CDN edge node; parameter M = back-to-source inbound bandwidth / service user outbound bandwidth, and parameter M has a negative correlation with the caching capacity of the commercial CDN edge node.

[0183] Optionally, the cost control center is further configured to perform the following steps:

[0184] Periodically detect whether there are changes in various indicators associated with the target indicators of the plurality of commercial CDN edge nodes, and update the target indicators of the associated indicators that have changed.

[0185] Optionally, the scheduler is further configured to perform the following steps:

[0186] Obtaining target features associated with each video file in the source station, the target features including at least one of: user access frequency of the video file and historical information of the video program to which the video file belongs;

[0187] Identifying a target video file from each video file in the source station according to each target feature, wherein the target video file is a video file whose user access frequency is lower than the preset frequency threshold;

[0188] The identified target video file is determined as the first file.

[0189] It should be noted that the system embodiment is similar to the method embodiment, so the description is relatively simple. For relevant details, please refer to the method embodiment.

[0190] Figure 3 This is a schematic diagram of the structure of a scheduling device for a CDN edge node according to an embodiment of the present application. The device is applied to a scheduler in a CDN system. The device includes:

[0191] a communication module configured to obtain a target indicator for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicator is negatively correlated with the caching capacity of the CDN edge node, and positively correlated with the back-to-origin cost of the commercial CDN edge node, wherein the back-to-origin cost represents the bandwidth cost required by the CDN edge node to obtain files from the origin server;

[0192] A first processing module is configured to determine a scheduling priority of each of the plurality of commercial CDN edge nodes based on their respective target indicators, wherein the scheduling priority of each of the commercial CDN edge nodes is negatively correlated with the target indicator;

[0193] The second processing module is used to schedule the multiple commercial CDN edge nodes to provide access services for each first file to each first client according to the respective scheduling priorities of the multiple commercial CDN edge nodes, where the first file is: a file with an access frequency in the source station lower than a preset frequency threshold.

[0194] Optionally, the second processing module is further configured to perform the following steps:

[0195] Selecting the plurality of commercial CDN edge nodes according to the scheduling priority, and allocating a first bandwidth from the committed maximum outbound bandwidth of each selected commercial CDN edge node, where the first bandwidth is: the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for each first file;

[0196] Determine the first bandwidth of each unselected commercial CDN edge node as zero;

[0197] According to the respective first bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple first access requests from the respective first clients, where the first access requests are used to request access services for the first files, and the number of first access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the first bandwidth of each of the commercial CDN edge nodes.

[0198] Optionally, the second processing module is further configured to perform the following steps:

[0199] Selecting the plurality of commercial CDN edge nodes in sequence according to the scheduling priority from high to low;

[0200] For the currently selected commercial CDN edge node, divide the first bandwidth from the committed maximum outbound bandwidth of the commercial CDN edge node;

[0201] In response to detecting that the sum of the first bandwidths of all selected commercial CDN edge nodes is not less than a first total bandwidth, node selection is ended, where the first total bandwidth is: an estimated total bandwidth required to transmit the first files.

[0202] Optionally, the second processing module is further configured to perform the following steps:

[0203] If the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is not greater than the first total bandwidth, allocating the committed maximum outbound bandwidths of the currently selected commercial CDN edge nodes to the first bandwidth;

[0204] When the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is greater than the first total bandwidth, a portion of the committed maximum outbound bandwidth of the currently selected commercial CDN edge node that corresponds to the target difference is divided as the first bandwidth. The target difference is the difference between the sum of the committed maximum outbound bandwidths of the previously selected commercial CDN edge nodes and the first total bandwidth.

[0205] Optionally, the second processing module is further configured to, after determining the first bandwidth of each unselected commercial CDN edge node to be zero, perform the following steps:

[0206] For each commercial CDN edge node, a second bandwidth is divided from the target remaining bandwidth of the commercial CDN edge node, where the target remaining bandwidth is the remaining bandwidth of the commercial CDN edge node's committed maximum outbound bandwidth, excluding the first bandwidth. The second bandwidth is the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for each second file. The second file is a file in the origin site whose access frequency is not less than the preset frequency threshold.

[0207] According to the respective second bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple second access requests from each second client, where the second access requests are used to request access services for the second file, and the number of second access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the second bandwidth of each of the commercial CDN edge nodes.

[0208] Optionally, the second processing module is further configured to perform the following steps:

[0209] Selecting the plurality of commercial CDN edge nodes in sequence according to the scheduling priority from high to low;

[0210] For the currently selected commercial CDN edge node, dividing a second bandwidth from the target remaining bandwidth of the commercial CDN edge node;

[0211] In response to detecting that the sum of the second bandwidths of all selected commercial CDN edge nodes is not less than the second total bandwidth, node selection is ended, and the second bandwidth of each unselected commercial CDN edge node is determined to be zero, where the second total bandwidth is: the estimated total bandwidth required to transmit each second file.

[0212] Optionally, the device further comprises:

[0213] a bandwidth updating module, configured to periodically update the first total bandwidth and / or the second total bandwidth;

[0214] The current first total bandwidth and / or the current second total bandwidth are determined by the following formula:

[0215] BW=B*R / (Vcold+Vhot)

[0216] Among them, BW represents the current first total bandwidth or the current second total bandwidth. When BW represents the current first total bandwidth, R=Vcold; when BW represents the current second total bandwidth, R=Vhot; B represents the current sum of the service bandwidths of each of the commercial CDN edge nodes; Vcold represents the currently counted number of times each of the first files is accessed, and Vhot represents the currently counted number of times each of the second files is accessed.

[0217] Optionally, the second processing module is further configured to, after allocating the second bandwidth from the target remaining bandwidth of each commercial CDN edge node, perform the following steps:

[0218] For each of the commercial CDN edge nodes, if the first bandwidth of the commercial CDN edge node is greater than the second bandwidth, and the difference between the first bandwidth and the second bandwidth is greater than a first set value, classifying the commercial CDN edge node as a first node;

[0219] For each of the commercial CDN edge nodes, if the second bandwidth of the commercial CDN edge node is greater than the first bandwidth, and the difference between the second bandwidth and the first bandwidth is greater than a second set value, classifying the commercial CDN edge node as a second node;

[0220] A communication connection is directly established between each first node and the source station, and an intermediate cache is configured between each second node and the source station, so that each second node can communicate with the source station through the intermediate cache. The intermediate cache includes at least: an upstream node of each second node, and the intermediate cache is used to store the second file obtained by the second node from the source station when returning to the source.

[0221] Optionally, the device further comprises:

[0222] A rate detection module, configured to periodically detect whether the data transmission rate of the plurality of commercial CDN edge nodes is lower than a preset rate threshold;

[0223] The bandwidth adjustment module is configured to reduce the committed maximum outbound bandwidth of a commercial CDN edge node whose currently detected data transmission rate is lower than a preset rate threshold.

[0224] Optionally, the target indicator of the commercial CDN edge node is determined by the following formula:

[0225] F=C*M

[0226] Wherein, F represents the target indicator of the commercial CDN edge node; C represents the back-to-source cost of the commercial CDN edge node; parameter M = back-to-source inbound bandwidth / service user outbound bandwidth, and parameter M is negatively correlated with the caching capacity of the commercial CDN edge node.

[0227] Optionally, when the target indicator is negatively correlated with the service quality of the CDN edge node, the target indicator of the commercial CDN edge node is determined by any one of the following formulas:

[0228] F=C*M+W / Q

[0229] F=C*M*(W / Q)

[0230] Where Q represents the quality of service; parameter W is greater than 0 and less than 1, and parameter W is used to reduce the impact of Q on F; F represents the target indicator of the commercial CDN edge node; C represents the back-to-source cost of the commercial CDN edge node; parameter M = back-to-source inbound bandwidth / service user outbound bandwidth, and parameter M has a negative correlation with the caching capacity of the commercial CDN edge node.

[0231] Optionally, the device further comprises:

[0232] The indicator adjustment module is used to periodically detect whether there are changes in various indicators associated with the target indicators of the plurality of commercial CDN edge nodes, and update the target indicators of the associated indicators that have changed.

[0233] Optionally, the device further includes a file identification module, configured to perform the following steps:

[0234] Obtaining target features associated with each video file in the source station, the target features including at least one of: user access frequency of the video file and historical information of the video program to which the video file belongs;

[0235] Identifying a target video file from each video file in the source station according to each target feature, wherein the target video file is a video file whose user access frequency is lower than the preset frequency threshold;

[0236] The identified target video file is determined as the first file.

[0237] It should be noted that the device embodiment is similar to the method embodiment, so the description is relatively simple, and the relevant parts can be referred to the method embodiment.

[0238] The present application also provides an electronic device, such as Figure 4 As shown, it includes a processor 401, a communication interface 402, a memory 403 and a communication bus 404, wherein the processor 401, the communication interface 402, and the memory 403 communicate with each other through the communication bus 404.

[0239] Memory 403, used for storing computer programs;

[0240] The processor 401 is configured to execute the program stored in the memory 403 , and perform the steps of the commercial CDN edge node scheduling method disclosed in the embodiment of the present application.

[0241] The communication bus mentioned in the above terminal can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 4 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0242] The communication interface is used for communication between the above terminal and other devices.

[0243] The memory may include random access memory (RAM) or non-volatile memory (non-volatile memory), such as at least one disk storage. Alternatively, the memory may be at least one storage device located away from the processor.

[0244] The above-mentioned processor can be a general-purpose processor, including a central processing unit, a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, and discrete hardware components.

[0245] An embodiment of the present application further provides a computer-readable storage medium having a computer program / instruction stored thereon. When the computer program / instruction is executed by a processor, the scheduling method for commercial CDN edge nodes as disclosed in the embodiment of the present application is implemented.

[0246] An embodiment of the present application further provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the scheduling method for commercial CDN edge nodes disclosed in the embodiment of the present application.

[0247] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)).

[0248] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply the existence of any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or device comprising the element.

[0249] Each embodiment in this specification is described in a related manner. Similar parts between the various embodiments can be referred to in conjunction with each other. Each embodiment focuses on the differences between the other embodiments. In particular, the system embodiment is generally similar to the method embodiment, so the description is relatively simple. For related parts, refer to the description of the method embodiment.

[0250] The above description is only a preferred embodiment of the present application and is not intended to limit the scope of protection of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application are included in the scope of protection of the present application.

Claims

1. A method for scheduling commercial CDN edge nodes, characterized in that: The method comprises: Obtaining target indicators for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicators are negatively correlated with the caching capacity of the commercial CDN edge nodes, and positively correlated with the back-to-origin cost of the commercial CDN edge nodes, where the back-to-origin cost represents the bandwidth cost required by the commercial CDN edge nodes to obtain files from the origin server; Determining, based on respective target indicators of the plurality of commercial CDN edge nodes, respective scheduling priorities of the plurality of commercial CDN edge nodes, wherein the scheduling priority of each commercial CDN edge node is negatively correlated with the target indicator; According to the respective scheduling priorities of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to provide access services for each first client to each first file, where the first file is: a file with an access frequency in the source station lower than a preset frequency threshold.

2. The method according to claim 1, characterized in that Scheduling the plurality of commercial CDN edge nodes to provide access services for the first files to the first clients according to the respective scheduling priorities of the plurality of commercial CDN edge nodes includes: Selecting the plurality of commercial CDN edge nodes according to the scheduling priority, and allocating a first bandwidth from the committed maximum outbound bandwidth of each selected commercial CDN edge node, where the first bandwidth is: the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for each first file; Determine the first bandwidth of each unselected commercial CDN edge node as zero; According to the respective first bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple first access requests from the respective first clients, where the first access requests are used to request access services for the first files, and the number of first access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the first bandwidth of each of the commercial CDN edge nodes.

3. The method according to claim 2, characterized in that The selecting the plurality of commercial CDN edge nodes according to the scheduling priority and allocating a first bandwidth from the respective committed maximum outbound bandwidths of the selected commercial CDN edge nodes includes: Selecting the plurality of commercial CDN edge nodes in sequence according to the scheduling priority from high to low; For the currently selected commercial CDN edge node, divide the first bandwidth from the committed maximum outbound bandwidth of the commercial CDN edge node; In response to detecting that the sum of the first bandwidths of all selected commercial CDN edge nodes is not less than a first total bandwidth, node selection is ended, where the first total bandwidth is: an estimated total bandwidth required to transmit the first files.

4. The method according to claim 3, characterized in that The step of allocating a first bandwidth from the committed maximum outbound bandwidth of the currently selected commercial CDN edge node includes: If the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is not greater than the first total bandwidth, allocating the committed maximum outbound bandwidths of the currently selected commercial CDN edge nodes to the first bandwidth; When the sum of the committed maximum outbound bandwidths of all selected commercial CDN edge nodes is greater than the first total bandwidth, a portion of the committed maximum outbound bandwidth of the currently selected commercial CDN edge node that corresponds to the target difference is divided as the first bandwidth. The target difference is the difference between the sum of the committed maximum outbound bandwidths of the previously selected commercial CDN edge nodes and the first total bandwidth.

5. The method according to claim 2, characterized in that After determining the first bandwidth of each unselected commercial CDN edge node to be zero, the method further includes: For each commercial CDN edge node, a second bandwidth is divided from the target remaining bandwidth of the commercial CDN edge node, where the target remaining bandwidth is the remaining bandwidth of the commercial CDN edge node's committed maximum outbound bandwidth, excluding the first bandwidth. The second bandwidth is the maximum outbound bandwidth allowed for the commercial CDN edge node to provide access services for each second file. The second file is a file in the origin site whose access frequency is not less than the preset frequency threshold. According to the respective second bandwidths of the multiple commercial CDN edge nodes, the multiple commercial CDN edge nodes are scheduled to process multiple second access requests from each second client, where the second access requests are used to request access services for the second file, and the number of second access requests that each of the commercial CDN edge nodes needs to process is positively correlated with the second bandwidth of each of the commercial CDN edge nodes.

6. The method according to claim 5, characterized in that For each commercial CDN edge node, dividing the second bandwidth from the target remaining bandwidth of the commercial CDN edge node includes: Selecting the plurality of commercial CDN edge nodes in sequence according to the scheduling priority from high to low; For the currently selected commercial CDN edge node, dividing a second bandwidth from the target remaining bandwidth of the commercial CDN edge node; In response to detecting that the sum of the second bandwidths of all selected commercial CDN edge nodes is not less than the second total bandwidth, node selection is ended, and the second bandwidth of each unselected commercial CDN edge node is determined to be zero, where the second total bandwidth is: the estimated total bandwidth required to transmit each second file.

7. The method according to claim 6, characterized in that The method further comprises: periodically updating the first total bandwidth and / or the second total bandwidth; The current first total bandwidth and / or the current second total bandwidth are determined by the following formula: BW=B*R / (Vcold+Vhot) Among them, BW represents the current first total bandwidth or the current second total bandwidth. When BW represents the current first total bandwidth, R=Vcold; when BW represents the current second total bandwidth, R=Vhot; B represents the current sum of the service bandwidths of each of the commercial CDN edge nodes; Vcold represents the currently counted number of times each of the first files is accessed, and Vhot represents the currently counted number of times each of the second files is accessed.

8. The method according to claim 5, characterized in that After allocating the second bandwidth from the target remaining bandwidth of each commercial CDN edge node, the method further includes: For each of the commercial CDN edge nodes, if the first bandwidth of the commercial CDN edge node is greater than the second bandwidth, and the difference between the first bandwidth and the second bandwidth is greater than a first set value, classifying the commercial CDN edge node as a first node; For each of the commercial CDN edge nodes, if the second bandwidth of the commercial CDN edge node is greater than the first bandwidth, and the difference between the second bandwidth and the first bandwidth is greater than a second set value, classifying the commercial CDN edge node as a second node; A communication connection is directly established between each first node and the source station, and an intermediate cache is configured between each second node and the source station, so that each second node can communicate with the source station through the intermediate cache. The intermediate cache includes at least: an upstream node of each second node, and the intermediate cache is used to store the second file obtained by the second node from the source station when returning to the source.

9. The method according to any one of claims 2 to 8, characterized in that: The method further comprises: Periodically detecting whether the data transmission rate of the plurality of commercial CDN edge nodes is lower than a preset rate threshold; For a commercial CDN edge node whose currently detected data transmission rate is lower than a preset rate threshold, the committed maximum outbound bandwidth of the commercial CDN edge node is reduced.

10. The method according to any one of claims 1 to 8, characterized in that: The target index of the commercial CDN edge node is determined by the following formula: F=C*M Wherein, F represents the target indicator of the commercial CDN edge node; C represents the back-to-source cost of the commercial CDN edge node; parameter M = back-to-source inbound bandwidth / service user outbound bandwidth, and parameter M is negatively correlated with the caching capacity of the commercial CDN edge node.

11. The method according to claim 10, characterized in that In the case where the target indicator is negatively correlated with the service quality of the CDN edge node, the target indicator of the commercial CDN edge node is determined by any one of the following formulas: F=C*M+W / Q F=C*M*(W / Q) Where Q represents the quality of service; parameter W is greater than 0 and less than 1, and parameter W is used to reduce the impact of Q on F; F represents the target indicator of the commercial CDN edge node; C represents the back-to-source cost of the commercial CDN edge node; parameter M = back-to-source inbound bandwidth / service user outbound bandwidth, and parameter M has a negative correlation with the caching capacity of the commercial CDN edge node.

12. The method according to any one of claims 1 to 8, characterized in that: The method further comprises: Periodically detect whether there are changes in various indicators associated with the target indicators of the plurality of commercial CDN edge nodes, and update the target indicators of the associated indicators that have changed.

13. The method according to any one of claims 1 to 8, characterized in that: The first file is determined by the following steps: Obtaining target features associated with each video file in the source station, the target features including at least one of: user access frequency of the video file and historical information of the video program to which the video file belongs; Identifying a target video file from each video file in the source station according to each target feature, wherein the target video file is a video file whose user access frequency is lower than the preset frequency threshold; The identified target video file is determined as the first file.

14. A commercial CDN edge node scheduling system, characterized in that: The system includes multiple commercial content delivery network (CDN) edge nodes, a scheduler, and a cost control center, wherein: The cost control center is configured to obtain target indicators for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicators are negatively correlated with the cache capacity of the commercial CDN edge nodes, and positively correlated with the back-to-origin cost of the commercial CDN edge nodes, wherein the back-to-origin cost represents the bandwidth cost required by the commercial CDN edge nodes to obtain files from the origin server; The cost control center is further configured to determine a scheduling priority for each of the plurality of commercial CDN edge nodes based on their respective target indicators, and transmit the determined scheduling priority to the scheduler, wherein the scheduling priority of each commercial CDN edge node is negatively correlated with the target indicator; The scheduler is configured to schedule the plurality of commercial CDN edge nodes to provide access services for respective first files to respective first clients according to respective scheduling priorities of the plurality of commercial CDN edge nodes, where the first files are files in the source station whose access frequency is lower than a preset frequency threshold.

15. A scheduling device for a commercial CDN edge node, characterized in that: The device comprises: a communication module configured to obtain a target indicator for each of a plurality of predetermined commercial content delivery network (CDN) edge nodes, wherein the target indicator is negatively correlated with the caching capacity of the CDN edge node, and positively correlated with the back-to-origin cost of the commercial CDN edge node, wherein the back-to-origin cost represents the bandwidth cost required by the CDN edge node to obtain files from the origin server; A first processing module is configured to determine a scheduling priority of each of the plurality of commercial CDN edge nodes based on their respective target indicators, wherein the scheduling priority of each of the commercial CDN edge nodes is negatively correlated with the target indicator; The second processing module is used to schedule the multiple commercial CDN edge nodes to provide access services for each first file to each first client according to the respective scheduling priorities of the multiple commercial CDN edge nodes, where the first file is: a file with an access frequency in the source station lower than a preset frequency threshold.

16. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; Memory for storing computer programs; The processor is configured to implement the commercial CDN edge node scheduling method according to any one of claims 1 to 13 when executing the program stored in the memory.

17. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by a processor, the scheduling method for a commercial CDN edge node according to any one of claims 1 to 13 is implemented.