Resource scheduling method and device, equipment, storage medium and program product
By introducing a domain name re-registration mechanism and scheduling model into the CDN network, the resource scheduling conflict caused by domain name conflicts in a CDN network shared by multiple service providers is resolved, thereby improving network efficiency and user experience.
Patent Information
- Application Number
- CN202511792276.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-01
- Publication Date
- 2026-02-10
AI Technical Summary
In existing technologies, when multiple service providers share a CDN network, domain name conflicts can lead to resource scheduling conflicts, affecting the efficiency of the content distribution network and user experience.
A domain name re-registration mechanism is introduced to generate a service provider scheduling model, including service provider identification, scheduling domain name and scheduling region. Based on service provider information and edge node information, a node resource scheduling strategy is generated, and resource scheduling conflicts are resolved through weight calculation and resource pool management.
This enables the differentiation of services between different service providers, avoids domain name conflicts, improves the efficiency of the content delivery network, and optimizes the user experience.
Smart Images

Figure CN121509441A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a resource scheduling method, apparatus, device, storage medium, and program product. Background Technology
[0002] A CDN (Content Delivery Network) is a distributed network that includes multiple edge nodes. A CDN scheduling system comprehensively considers factors such as the client's requested domain name, location region, and resource usage of each edge node to determine the allocation rules between the client's domain name and edge nodes. It then forwards the client's domain name request to the optimal edge node in the CDN, thereby completing the node resource scheduling for the client's domain name.
[0003] In real-world business scenarios, a single CDN may simultaneously support the services of multiple domain name acceleration service providers. This means multiple providers share a single CDN, allocating node resources for client domains through the same CDN. If, within the same service area, the same client requests the same client domain through different service providers, or different clients request the same client domain through different service providers, a domain name conflict will occur because these requests carry the same client domain. These conflicting client domains are the conflicting client domains in the CDN. In this business conflict scenario, the CDN scheduling system treats these domain requests carrying conflicting client domains as identical requests and assigns them the same edge node. However, edge nodes typically provide different personalized services depending on the service provider. If all requests carrying conflicting client domains are assigned to the same edge node, the edge node may be unable to provide the appropriate node resource allocation based on the service provider and client, leading to resource conflicts between different client requests.
[0004] However, there is currently a lack of node resource scheduling methods for conflicting customer domain names, which makes it difficult to resolve resource scheduling conflicts between multiple service providers, easily affecting the efficiency of the content delivery network and reducing user experience. Summary of the Invention
[0005] This application provides a resource scheduling method, apparatus, device, storage medium, and program product to address the current lack of a node resource scheduling method for conflicting customer domain names, the difficulty in resolving resource scheduling conflicts between multiple service providers, and the resulting impact on the efficiency of content delivery networks and reduced user experience.
[0006] In a first aspect, embodiments of this application provide a resource scheduling method, comprising: if it is detected that a domain name request received by a service provider uses a conflicting customer domain name, then re-registering the scheduling domain name for the service provider and generating a scheduling model for the service provider; the scheduling model includes a service provider identifier, a scheduling domain name, and a scheduling region, wherein the scheduling domain name is a domain name generated based on the conflicting customer domain name and the service provider identifier; determining the service provider information and the edge node information of the CDN network; and generating a node resource scheduling strategy for the scheduling domain name based on the service provider information, the edge node information, and the scheduling model.
[0007] In one embodiment, if a domain name request received by the service provider is detected to use a conflicting customer domain name, then the service provider's scheduling domain name is re-registered, and a scheduling model for the service provider is generated. This includes: determining the service provider's business quadruple based on the domain name request received by the service provider; the business quadruple includes the service provider identifier, the client identifier, the customer domain name, and the service region; performing conflict detection on the business quadruple according to conflict business rules; if a conflicting customer domain name is detected, then the service provider's scheduling domain name is re-registered based on the service provider identifier and the conflicting customer domain name, and a conflicting business quadruple for the service provider is generated; the conflicting business quadruple includes the service provider identifier, the client identifier, the scheduling domain name, and the scheduling region; and generating a scheduling model corresponding to the service provider based on the conflicting business quadruple.
[0008] In one embodiment, the CDN network includes multiple edge nodes, at least two service providers, and at least two scheduling domains. Based on service provider information, edge node information, and a scheduling model, a node resource scheduling strategy is generated for the scheduling domains. This includes: generating an information list based on service provider information, edge node information, and the scheduling model of each service provider; the information list includes each scheduling region, each service provider, each scheduling domain, and the node name of each edge node; if different scheduling domains correspond to the same scheduling region, the weight of each service provider's scheduling domain is calculated to generate a scheduling domain weight for each service provider; determining a resource pool based on the information list and a four-level tagging system; the four-level tagging system includes each service provider, each scheduling region, the node name of each edge node, and the resource address of each edge node, and the resource pool includes the resource address of each edge node; and allocating resource addresses from the resource pool to each scheduling domain based on the scheduling domain weight of each service provider to generate a node resource scheduling strategy corresponding to each scheduling domain.
[0009] In one embodiment, the scheduling domain name weight of a service provider is determined based on the following steps: determining the service provider's service provider billing price and service provider level; and performing a weighted aggregation operation based on the service provider billing price and the first weight corresponding to the service provider billing price, the service provider level and the second weight corresponding to the service provider level to generate the scheduling domain name weight.
[0010] In one embodiment, after allocating resource addresses from the resource pool to each scheduling domain name based on the scheduling domain name weight of each service provider and generating the node resource scheduling policy corresponding to each scheduling domain name, the method further includes: determining the domain name to be distributed; the domain name to be distributed is a domain name different from the customer domain name; if the scheduling domain name is to be distributed to the domain name to be distributed, the domain name transmission path is determined based on the four-level tag system; and the scheduling domain name is distributed to the domain name to be distributed based on the domain name transmission path.
[0011] In one embodiment, after allocating resource addresses from the resource pool to each scheduled domain name based on the scheduling domain name weight of each service provider and generating the node resource scheduling policy corresponding to each scheduled domain name, the method further includes: performing dial-up testing and resolution on each scheduled domain name according to a preset period to obtain the resource address allocation result of each scheduled domain name; performing resource matching detection based on the scheduling model of each service provider and the resource address allocation result of each domain name to obtain the resource matching result; and performing disaster recovery processing on the CDN network based on the resource matching result and updating the node resource scheduling policy for any abnormal nodes.
[0012] Secondly, embodiments of this application provide a resource scheduling device, comprising: a conflict domain name management module, configured to re-register the scheduling domain name for the service provider and generate a scheduling model for the service provider if it is detected that a domain name request received by the service provider uses a conflicting customer domain name; the scheduling model includes a service provider identifier, a scheduling domain name, and a scheduling region, wherein the scheduling domain name is a domain name generated based on the conflicting customer domain name and the service provider identifier; a determination module, configured to determine the service provider information of the service provider and the edge node information of the CDN network; and a resource scheduling module, configured to generate a node resource scheduling strategy for the scheduling domain name based on the service provider information, the edge node information, and the scheduling model.
[0013] Thirdly, embodiments of this application provide an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements any of the resource scheduling methods described above.
[0014] Fourthly, embodiments of this application provide a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements any of the resource scheduling methods described above.
[0015] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements any of the resource scheduling methods described above.
[0016] The resource scheduling method, apparatus, device, storage medium, and program product provided in this application introduce a domain name re-registration mechanism for business scenarios with domain name conflicts. If a service provider receives a domain name request that uses a conflicting customer domain name, the scheduling domain name is re-registered for the service provider, generating a scheduling model for the service provider. The scheduling model includes a service provider identifier, a scheduling domain name, and a scheduling region. The scheduling domain name is generated based on the conflicting customer domain name and the service provider identifier. Since the service provider identifier can uniquely identify a specific service provider, a new scheduling domain name, distinct from the conflicting customer domain name, can be generated for the service provider based on the service provider identifier and the conflicting customer domain name. This ensures that the generated scheduling domain name uniquely corresponds to a service provider. Furthermore, based on the service provider information, edge node information, and the scheduling model, a node resource scheduling strategy is generated for the service provider's scheduling domain name. Because different service providers have different scheduling domain names, the domain name conflict problem caused by different service providers using the same customer domain name can be avoided. This achieves business differentiation between different service providers, solves the resource scheduling conflict problem between multiple service providers, and helps improve the efficiency of the content delivery network and optimize the user experience. Attached Figure Description
[0017] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is one of the flowcharts illustrating the resource scheduling method provided in the embodiments of this application.
[0019] Figure 2 This is the second flowchart of the resource scheduling method provided in the embodiments of this application.
[0020] Figure 3 This is a schematic diagram of the scheduling resource management system provided in the embodiments of this application.
[0021] Figure 4 This is a schematic diagram of the scheduling domain name provided in the embodiments of this application.
[0022] Figure 5 This is the third flowchart illustrating the resource scheduling method provided in the embodiments of this application.
[0023] Figure 6 This is a schematic diagram of the four-level labeling system provided in the embodiments of this application.
[0024] Figure 7 This is a schematic diagram of multi-level path transmission of resources provided in the embodiments of this application.
[0025] Figure 8 This is a schematic diagram of the resource scheduling device provided in the embodiments of this application.
[0026] Figure 9 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0027] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0028] Please see Figures 1 to 7 , Figure 1 This is one of the flowcharts illustrating the resource scheduling method provided in the embodiments of this application. Figure 2 This is the second flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 3 This is a schematic diagram of the structure of the scheduling resource management system provided in the embodiments of this application. Figure 4 This is a schematic diagram of the scheduling domain name provided in an embodiment of this application. Figure 5 This is the third flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 6 This is a schematic diagram of the four-level labeling system provided in an embodiment of this application. Figure 7 This is a schematic diagram of multi-level path transmission of resources provided in the embodiments of this application.
[0029] In this embodiment, the resource scheduling method is applied to a resource scheduling management system for conflict-oriented business scenarios. For example... Figure 3 As shown, in terms of overall architecture, the scheduling resource management system for conflict business scenarios adopts a three-layer architecture, namely the business management layer, the resource management layer, and the business disaster recovery layer; in terms of module division, the scheduling resource management system includes a conflict business connection module, a conflict domain name management module, a conflict resource management module, a distribution management module, and a conflict business monitoring module.
[0030] The scheduling resource management system adopts a standardized API (Application Programming Interface) interface interaction mode, defines a business tuple model, and designs a conflict domain name weight allocation algorithm.
[0031] like Figure 1As shown in the embodiment of this application, the resource scheduling method is applied to a scheduling resource management system for conflict-oriented business scenarios. The resource scheduling method includes steps S110 to S130, and the specific steps are as follows: S110: If it is detected that the domain name request received by the service provider uses a conflicting customer domain name, then the service provider will be re-registered with the scheduled domain name and a scheduling model for the service provider will be generated.
[0032] The scheduling model includes service provider identifier, scheduling domain name, and scheduling zone. The scheduling domain name is a domain name generated based on conflicting customer domain names and service provider identifiers.
[0033] There must be at least two service providers.
[0034] Specifically, such as Figure 2 As shown, during the conflict business introduction phase, the scheduling resource management system can use API interfaces to connect with multiple service providers and use the conflict business rules (i.e., domain name conflict rules) defined in the conflict pre-detection engine to perform business verification on all service providers and determine whether the current scenario is a business conflict scenario.
[0035] If it is identified that a service provider's domain name request uses a conflicting client domain name, the scheduling resource management system can proactively re-register the scheduling domain name for the service provider using the conflicting client domain name, identify and analyze the distribution region corresponding to these service providers' domain name requests, and generate a scheduling model for each service provider. .
[0036] in, Indicates the first The scheduling model corresponding to each service provider. It is a positive integer.
[0037] For each service provider, the scheduling model includes the service provider's identifier (i.e., service provider ID), scheduling domain name, and scheduling region.
[0038] S120: Determine the service provider information and the edge node information of the CDN network.
[0039] Specifically, during the scheduling strategy analysis phase, the scheduling resource management system can connect to the CDN business operation system to obtain service provider information for each service provider and edge node information of the CDN network.
[0040] Optionally, the service provider information includes the service provider's service provider billing price and service provider tier information.
[0041] Preferably, the service provider level information is the service provider's SLA (Service Level Agreement) level.
[0042] Optionally, the edge node information is edge node adaptation information, which includes the node name of the edge node and domain name caching information (such as a list of cached customer domain names).
[0043] S130: Based on service provider information, edge node information, and scheduling model, generate node resource scheduling strategies for scheduling domain names.
[0044] Specifically, based on the scheduling model corresponding to each service provider, the scheduling regions involved in all conflicting customer domain names are determined, denoted as... ,in, Indicates the scheduling domain name Corresponding scheduling area .
[0045] Furthermore, based on the service provider information and edge node information of each service provider, the resource pool managed within the scheduling area involving all conflicting customer domain names is determined, namely the VIP resource pool. VIP resource pool It includes all VIP resource addresses of each edge node, and one VIP resource address can correspond to one type of resource.
[0046] Furthermore, a weight allocation algorithm is defined to assign different scheduling domain name weights to each service provider's scheduling domain name within the same scheduling region. Then, based on the scheduling domain name weight corresponding to each service provider, VIP resource addresses from the VIP resource pool are allocated to each scheduling domain name, generating a node resource scheduling strategy corresponding to each scheduling domain name. And then, strategies were distributed.
[0047] in, Indicates the scheduling domain name The corresponding node resource scheduling strategy.
[0048] The resource scheduling method provided in this application introduces a domain name re-registration mechanism for business scenarios with domain name conflicts. If a service provider receives a domain name request that uses a conflicting customer domain name, the scheduling domain name is re-registered for the service provider, generating a scheduling model for the service provider. The scheduling model includes a service provider identifier, a scheduling domain name, and a scheduling region. The scheduling domain name is generated based on the conflicting customer domain name and the service provider identifier. Since the service provider identifier can uniquely identify a specific service provider, a new scheduling domain name, distinct from the conflicting customer domain name, can be generated for the service provider based on the service provider identifier and the conflicting customer domain name. This ensures that the generated scheduling domain name uniquely corresponds to a service provider. Furthermore, based on the service provider information, edge node information, and the scheduling model, a node resource scheduling strategy is generated for the service provider's scheduling domain name. Because different service providers have different scheduling domain names, the domain name conflict problem caused by different service providers using the same customer domain name can be avoided. This achieves business differentiation between different service providers, solves the resource scheduling conflict problem between multiple service providers, and helps improve the efficiency of the content delivery network and optimize the user experience.
[0049] In some embodiments, if a domain name request received by the service provider is detected to use a conflicting client domain name, a scheduling domain name re-registration is performed for the service provider, generating a scheduling model for the service provider. This includes: determining the service provider's business quadruple based on the domain name request received by the service provider; the business quadruple includes the service provider identifier, client identifier, client domain name, and service region; performing conflict detection on the business quadruple according to conflict business rules; if a conflicting client domain name is detected, a scheduling domain name re-registration is performed for the service provider based on the service provider identifier and the conflicting client domain name, generating a conflicting business quadruple for the service provider; the conflicting business quadruple includes the service provider identifier, client identifier, scheduling domain name, and scheduling region; and generating a scheduling model corresponding to the service provider based on the conflicting business quadruple.
[0050] During the conflict service introduction and scheduling strategy analysis phases, the conflict service integration module needs to use four sub-modules: conflict pre-detection engine, scheduling domain name registration, service distribution identification, and scheduling model mapping.
[0051] Specifically, during the conflict service introduction phase, API interface parameters are used to introduce services from different service providers. Based on the domain name requests received by each service provider, a service four-tuple is determined for each service provider. The service four-tuple includes the service provider identifier. Client identifier (i.e., customer ID) Customer domain name Service Area .
[0052] For example, suppose two service providers are currently using the same customer domain name, i.e., conflicting customer domain names. The business four-tuples for the two service providers can be denoted as follows: and .
[0053] Furthermore, in accordance with the conflict business rules, conflict detection is performed on the business quadruple for each service provider.
[0054] Specifically, the conflict pre-detection engine defines conflict business rules, which can perform conflict detection on the business quadruple for each service provider according to these rules. For ease of understanding, we will still use the business quadruple of the two service providers mentioned above. and For example, the expression for the conflicting business rule is as follows: .
[0055] If different service providers meet the conflict business rules, that is, if customer domains of different service providers are detected to be conflicting customer domains, then based on the service provider identifier and the conflicting customer domain, the scheduling domain is re-registered for the service provider to meet the prerequisite for subsequent domain distribution. A conflict business quadruple is generated for each service provider. The conflict business quadruple includes the service provider identifier, client identifier, scheduling domain, and scheduling region.
[0056] like Figure 4 As shown, for each service provider that uses a conflicting customer domain name, its scheduling domain name is generated based on the conflicting customer domain name and the service provider identifier (i.e., service provider ID), and its scheduling region is the service region. For example, assuming the conflicting customer domain name is example.com, and the service provider IDs of the two service providers are service provider ID=1 and service provider ID=2 respectively, then the scheduling domain names after the two service providers are re-registered are example1.com and example2.com respectively.
[0057] Furthermore, based on all conflicting business quadruples, a scheduling model corresponding to each service provider is generated.
[0058] Specifically, for the conflicting business quadruple sets of all service providers, the scheduling regions are integrated, and a scheduling model differentiated by scheduling region is generated for each service provider. Scheduling model This includes the service provider's identifier (i.e., service provider ID). , scheduling domain name and scheduling area.
[0059] Furthermore, the scheduling model corresponding to each service provider... The request is forwarded to the conflict domain name management module.
[0060] In some embodiments, the CDN network includes multiple edge nodes, at least two service providers, and at least two scheduling domains. Based on service provider information, edge node information, and a scheduling model, a node resource scheduling strategy is generated for the scheduling domains. This includes: generating an information list based on service provider information, edge node information, and the scheduling model of each service provider; the information list includes each scheduling region, each service provider, each scheduling domain, and the node name of each edge node; if different scheduling domains correspond to the same scheduling region, weight calculations are performed on the scheduling domains of each service provider to generate a scheduling domain weight for each service provider; determining a resource pool based on the information list and a four-level tagging system; the four-level tagging system includes each service provider, each scheduling region, the node name of each edge node, and the resource address of each edge node, and the resource pool includes the resource address of each edge node; and allocating resource addresses from the resource pool to each scheduling domain based on the scheduling domain weight of each service provider to generate a node resource scheduling strategy corresponding to each scheduling domain.
[0061] Specifically, the scheduling resource management system can connect to the CDN business operation system. The CDN business operation system can send the pre-stored service provider information of each service provider and the edge node information of the CDN network to the service provider information maintenance module of the scheduling resource management system.
[0062] Furthermore, the scheduling resource management system can manage the service provider information for each service provider, the edge node information of the CDN network, and the scheduling model for each service provider. The system performs integrated judgments and generates an information list in the form of "scheduling region-service provider-scheduling domain name-node name" from the perspective of scheduling region. That is, the information list includes the node name of each scheduling region, each service provider, each scheduling domain name, and each edge node.
[0063] Furthermore, a scheduling domain name weighting algorithm is defined. If different scheduling domain names correspond to the same scheduling region, meaning different scheduling domain names need to be distributed within the same scheduling region, then the weight of each service provider's scheduling domain name is calculated separately to generate a scheduling domain name weight for each service provider. .
[0064] For ease of understanding, it is assumed here that service provider 1, service provider 2, and service provider 3 all serve the client side. The domain name request, the conflicting client domain name carried in the domain name request is After the domain name re-registration, the domain names of service providers 1, 2, and 3 are respectively... , , .
[0065] like , , If the domains need to be distributed within the same scheduling region, then a scheduling domain weight algorithm will be used to assign scheduling domains to the three service providers respectively. , , Perform weight calculations to generate scheduling domain name weights for the three service providers. , , .
[0066] Furthermore, based on the information list and the four-level tagging system, the resource pool is determined. The four-level tagging system includes the node name of each service provider, each scheduling region, each edge node, and the resource address of each edge node. The resource pool includes the resource address of each edge node.
[0067] Specifically, such as Figure 6 As shown, the CDN network includes multiple edge nodes, and each edge node includes multiple VIP resource addresses. One VIP resource address can correspond to one type of resource. Therefore, for all edge nodes corresponding to conflicting customer domain names, a four-level tagging system of "service provider-scheduling region-node name-VIP list" can be predefined. When it is necessary to allocate node resources for a scheduled domain name within a certain scheduling region, the resource pool managed within the scheduling region involving the conflicting customer domain name can be determined based on the information list and the four-level tagging system, i.e., the VIP resource pool. VIP resource pool This includes the VIP resource address of each edge node managed within the scheduling region, assuming a VIP resource pool. The internal party includes One VIP resource address.
[0068] Furthermore, based on the scheduling domain name weight of each service provider, resource addresses in the resource pool are allocated to each scheduling domain name, and a node resource scheduling strategy corresponding to each scheduling domain name is generated.
[0069] Specifically, based on the scheduling domain weight of each service provider, the number of VIP resource addresses that can be allocated from the resource pool for each scheduling domain is determined, and a node resource scheduling strategy corresponding to each scheduling domain is generated according to the number of VIP resource addresses that can be allocated from the resource pool for each scheduling domain.
[0070] For ease of understanding, we will still refer to Service Provider 1, Service Provider 2, and Service Provider 3 as the service providers for the client. Domain name request (the conflicting client domain name carried in the domain name request is) For example, after obtaining the scheduling domain weights of 3 service providers... , , Then, the number of VIP resource addresses that can be allocated from the resource pool for each scheduling domain name can be calculated using the following formula: ; in, That is, here , , These are the scheduling domain names. , , Corresponding scheduling domain weight , , ; For VIP resource pool The total number of VIP resource addresses.
[0071] After determining the number of VIP resource addresses that can be allocated from the resource pool for each scheduling domain name, the node resource scheduling strategy corresponding to each scheduling domain name can be generated.
[0072] Understandably, this applies to the scheduling domains of service providers 1, 2, and 3. , , ,like , , If the corresponding scheduling regions are different, that is, different scheduling domain names are distributed in different scheduling regions, then there is no need to calculate the scheduling domain name weight. In this case, for each scheduling domain name, the VIP resource address in the VIP resource pool managed by the corresponding scheduling region can be directly assigned to the scheduling domain name.
[0073] Furthermore, after obtaining the node resource scheduling policy corresponding to each scheduling domain name, these node resource scheduling policies are issued and executed.
[0074] In some embodiments, the scheduling domain weight of a service provider is determined based on the following steps: determining the service provider's service provider billing price and service provider level; and performing a weighted aggregation operation based on the service provider billing price and the first weight corresponding to the service provider billing price, the service provider level and the second weight corresponding to the service provider level to generate the scheduling domain weight.
[0075] Optionally, the service provider level is the service provider SLA level.
[0076] Optionally, schedule domain name weight The expression is as follows: ; in, This is the sequence number of the domain name to be scheduled; For scheduling domain names The corresponding scheduling domain name weight; It is the first weight; It is the second weight.
[0077] In some embodiments, after allocating resource addresses from the resource pool to each scheduled domain name based on the scheduling domain name weight of each service provider and generating the node resource scheduling policy corresponding to each scheduled domain name, the method further includes: determining the domain name to be distributed; the domain name to be distributed is a domain name different from the customer domain name; if the scheduled domain name is to be distributed to the domain name to be distributed, the domain name transmission path is determined based on the four-level tag system; and the scheduled domain name is distributed to the domain name to be distributed based on the domain name transmission path.
[0078] like Figure 7 As shown, in a CDN network's CNAME (Canonical Name Record) resolution scenario, it may be necessary to send conflicting client domain names to a different domain name. In this case, the different domain name can be regarded as the domain name to be distributed (i.e., Figure 7 (The CNAME domain name in the domain name).
[0079] Furthermore, for a specific scheduling domain corresponding to a conflicting customer domain, if the scheduling domain needs to be distributed to the domain to be distributed in the node resource scheduling strategy of that scheduling domain, the domain name transmission path can be determined according to the four-level tag system of "service provider-scheduling region-node name-VIP list" to ensure the uniformity of resources during path transmission, ensure synchronous mapping of resources, and avoid resource conflict issues in multi-level resolution paths.
[0080] Furthermore, based on the domain name transmission path, the scheduled domain name is distributed to the domain name to be distributed.
[0081] In some embodiments, after allocating resource addresses from the resource pool to each scheduled domain name based on the scheduling domain name weight of each service provider and generating a node resource scheduling policy corresponding to each scheduled domain name, the method further includes: performing dial-up testing and resolution on each scheduled domain name according to a preset period to obtain the resource address allocation result of each scheduled domain name; performing resource matching detection based on the scheduling model of each service provider and the resource address allocation result of each domain name to obtain the resource matching result; and performing disaster recovery processing on the CDN network based on the resource matching result and updating the node resource scheduling policy for nodes with anomalies.
[0082] In this embodiment, for business conflict scenarios, the scheduling resource management system can utilize a multi-dimensional detection module to perform real-time analysis and testing according to scheduling regions, and compare it with the actual scheduling model. Perform matching analysis to enable monitoring and disaster recovery of conflicting business processes.
[0083] Specifically, probe nodes are deployed throughout the entire coverage area of the CDN network. These probe nodes can detect each scheduled domain name corresponding to a conflicting customer domain name according to a preset period (e.g., once per minute). Perform dial-up analysis to obtain each scheduling domain name. The corresponding VIP resource address allocation results.
[0084] Furthermore, based on the scheduling model of each service provider Based on the allocation results of each VIP resource address, resource matching and detection are performed according to the scheduling region to obtain resource matching results. Based on the resource matching results, disaster recovery processing is carried out on the CDN network, and the resource scheduling strategy of nodes with abnormalities is updated.
[0085] For example, regarding the scheduling domain name If its corresponding scheduling model If the VIP resource address allocation result matches abnormally for 5 consecutive times (i.e., 5 minutes), it can be considered that there is a resource conflict or abnormal resource situation in the CDN network within the scheduling area, and the CDN network needs to be switched for disaster recovery. At the same time, for the abnormal node resource scheduling policy in the abnormal scheduling area, the abnormal node resource scheduling policy needs to be switched to the upper-level content center of the CDN network to ensure stable service.
[0086] This application provides a method for handling domain name conflicts in a CDN network. It proposes an API interface tuple-based interface specification suitable for CDN networks, designs a three-layer architecture model and five processing sub-modules, and addresses resource conflict issues in multi-service provider scenarios from aspects such as business integration management, resource and domain name management, and business disaster recovery. Furthermore, in terms of scheduling resource management, this application proposes a four-level resource tagging system for business conflict scenarios, defines a weighted allocation algorithm considering service provider SLA levels, and enables flexible on-demand resource allocation across multiple service providers. It also considers CNAME scenarios and proposes a unified resource mechanism under multi-level paths, which helps improve the efficiency of the content delivery network and optimize user experience.
[0087] This application also provides a resource scheduling device. Please refer to [link / reference]. Figure 8 , Figure 8 This is a schematic diagram of the resource scheduling device provided in an embodiment of this application. In this embodiment, the resource scheduling device includes a conflict domain name management module 810, a determination module 820, and a resource scheduling module 830.
[0088] The conflict domain name management module 810 is used to re-register the domain name for the service provider and generate the service provider's scheduling model if it detects that the domain name request received by the service provider uses a conflicting customer domain name.
[0089] The scheduling model includes service provider identifier, scheduling domain name, and scheduling zone. The scheduling domain name is a domain name generated based on conflicting customer domain names and service provider identifiers.
[0090] The determination module 820 is used to determine the service provider information of the service provider and the edge node information of the CDN network.
[0091] The resource scheduling module 830 is used to generate node resource scheduling strategies for the scheduling domain name based on service provider information, edge node information, and scheduling model.
[0092] In some embodiments, if a domain name request received by the service provider is detected to use a conflicting client domain name, a scheduling domain name re-registration is performed for the service provider, generating a scheduling model for the service provider. This includes: determining the service provider's business quadruple based on the domain name request received by the service provider; the business quadruple includes the service provider identifier, client identifier, client domain name, and service region; performing conflict detection on the business quadruple according to conflict business rules; if a conflicting client domain name is detected, a scheduling domain name re-registration is performed for the service provider based on the service provider identifier and the conflicting client domain name, generating a conflicting business quadruple for the service provider; the conflicting business quadruple includes the service provider identifier, client identifier, scheduling domain name, and scheduling region; and generating a scheduling model corresponding to the service provider based on the conflicting business quadruple.
[0093] In some embodiments, the CDN network includes multiple edge nodes, at least two service providers, and at least two scheduling domains. Based on service provider information, edge node information, and a scheduling model, a node resource scheduling strategy is generated for the scheduling domains. This includes: generating an information list based on service provider information, edge node information, and the scheduling model of each service provider; the information list includes each scheduling region, each service provider, each scheduling domain, and the node name of each edge node; if different scheduling domains correspond to the same scheduling region, weight calculations are performed on the scheduling domains of each service provider to generate a scheduling domain weight for each service provider; determining a resource pool based on the information list and a four-level tagging system; the four-level tagging system includes each service provider, each scheduling region, the node name of each edge node, and the resource address of each edge node, and the resource pool includes the resource address of each edge node; and allocating resource addresses from the resource pool to each scheduling domain based on the scheduling domain weight of each service provider to generate a node resource scheduling strategy corresponding to each scheduling domain.
[0094] In some embodiments, the scheduling domain weight of a service provider is determined based on the following steps: determining the service provider's service provider billing price and service provider level; and performing a weighted aggregation operation based on the service provider billing price and the first weight corresponding to the service provider billing price, the service provider level and the second weight corresponding to the service provider level to generate the scheduling domain weight.
[0095] In some embodiments, after allocating resource addresses from the resource pool to each scheduled domain name based on the scheduling domain name weight of each service provider and generating the node resource scheduling policy corresponding to each scheduled domain name, the method further includes: determining the domain name to be distributed; the domain name to be distributed is a domain name different from the customer domain name; if the scheduled domain name is to be distributed to the domain name to be distributed, the domain name transmission path is determined based on the four-level tag system; and the scheduled domain name is distributed to the domain name to be distributed based on the domain name transmission path.
[0096] In some embodiments, after allocating resource addresses from the resource pool to each scheduled domain name based on the scheduling domain name weight of each service provider and generating a node resource scheduling policy corresponding to each scheduled domain name, the method further includes: performing dial-up testing and resolution on each scheduled domain name according to a preset period to obtain the resource address allocation result of each scheduled domain name; performing resource matching detection based on the scheduling model of each service provider and the resource address allocation result of each domain name to obtain the resource matching result; and performing disaster recovery processing on the CDN network based on the resource matching result and updating the node resource scheduling policy for nodes with anomalies.
[0097] This application also provides an electronic device. Figure 9 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application, such as... Figure 9 As shown, the electronic device may include a processor 910, a communications interface 920, a memory 930, and a communication bus 940, wherein the processor 910, the communications interface 920, and the memory 930 communicate with each other through the communication bus 940. The processor 910 can call logical instructions in the memory 930 to execute resource scheduling methods.
[0098] Furthermore, the logical instructions in the aforementioned memory 930 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0099] This application also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the resource scheduling methods provided by the above methods.
[0100] This application also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the resource scheduling methods provided by the above methods.
[0101] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0102] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.
[0103] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A resource scheduling method, characterized in that, include: If it is detected that the domain name request received by the service provider uses a conflicting customer domain name, then the scheduling domain name is re-registered for the service provider, and the scheduling model of the service provider is generated. The scheduling model includes a service provider identifier, a scheduling domain name, and a scheduling region. The scheduling domain name is a domain name generated based on the conflicting customer domain name and the service provider identifier. Determine the service provider information and the edge node information of the CDN network; Based on the service provider information, the edge node information, and the scheduling model, a node resource scheduling strategy is generated for the scheduling domain name.
2. The resource scheduling method according to claim 1, characterized in that, If it is detected that a domain name request received by the service provider uses a conflicting client domain name, then the service provider is re-registered with a scheduled domain name, and a scheduling model for the service provider is generated, including: Based on the domain name request received by the service provider, the service provider's business quadruple is determined; the business quadruple includes the service provider identifier, client identifier, client domain name, and service region; According to the conflict business rules, conflict detection is performed on the business quadruple; If the customer domain name is detected to be the conflicting customer domain name, then based on the service provider identifier and the conflicting customer domain name, the service provider's scheduling domain name is re-registered to generate a conflicting service quadruple for the service provider; the conflicting service quadruple includes the service provider identifier, the client identifier, the scheduling domain name, and the scheduling region; Based on the conflicting service quadruple, the scheduling model corresponding to the service provider is generated.
3. The resource scheduling method according to claim 1, characterized in that, The CDN network includes multiple edge nodes, the number of service providers is at least two, and the number of scheduling domain names is at least two; The step of generating a node resource scheduling strategy for the scheduling domain name based on the service provider information, the edge node information, and the scheduling model includes: Based on the service provider information, the edge node information, and the scheduling model of each service provider, an information list is generated; the information list includes each scheduling region, each service provider, each scheduling domain name, and the node name of each edge node; If different scheduling domain names correspond to the same scheduling region, then the weight of each service provider's scheduling domain name is calculated to generate the scheduling domain name weight of each service provider. Based on the information list and the four-level tagging system, a resource pool is determined; the four-level tagging system includes the node name of each service provider, each scheduling region, each edge node, and the resource address of each edge node; the resource pool includes the resource address of each edge node. Based on the scheduling domain name weight of each service provider, resource addresses in the resource pool are allocated to each scheduling domain name, and a node resource scheduling strategy corresponding to each scheduling domain name is generated.
4. The resource scheduling method according to claim 3, characterized in that, The scheduling domain weight of one of the service providers is determined based on the following steps: Determine the service provider's service provider pricing and service provider tier; The scheduling domain name weight is generated by performing a weighted aggregation operation based on the service provider's billing price and the first weight corresponding to the service provider's billing price, the service provider's level and the second weight corresponding to the service provider's level.
5. The resource scheduling method according to claim 3, characterized in that, After allocating resource addresses from the resource pool to each scheduled domain name based on the weight of the scheduled domain name of each service provider, and generating a node resource scheduling policy corresponding to each scheduled domain name, the method further includes: Determine the domain name to be distributed; the domain name to be distributed is a domain name different from the customer's domain name. If the scheduled domain name is to be distributed to the domain name to be distributed, the domain name transmission path is determined based on the four-level tag system; Based on the domain name transmission path, the scheduling domain name is distributed to the domain name to be distributed.
6. The resource scheduling method according to claim 3, characterized in that, After allocating resource addresses from the resource pool to each scheduled domain name based on the weight of the scheduled domain name of each service provider, and generating a node resource scheduling policy corresponding to each scheduled domain name, the method further includes: According to a preset period, each of the scheduled domain names is dialed and resolved to obtain the resource address allocation result of each of the scheduled domain names; Based on the scheduling model of each service provider and the resource address allocation result of each, resource matching detection is performed to obtain resource matching results; Based on the resource matching results, disaster recovery processing is performed on the CDN network, and the resource scheduling strategy for nodes with anomalies is updated.
7. A resource scheduling device, characterized in that, include: The conflict domain name management module is used to re-register the scheduled domain name for the service provider and generate the service provider's scheduling model if it is detected that the domain name request received by the service provider uses a conflicting customer domain name. The scheduling model includes a service provider identifier, a scheduling domain name, and a scheduling region. The scheduling domain name is a domain name generated based on the conflicting customer domain name and the service provider identifier. The determination module is used to determine the service provider information of the service provider and the edge node information of the CDN network; The resource scheduling module is used to generate a node resource scheduling strategy for the scheduling domain name based on the service provider information, the edge node information, and the scheduling model.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that, When the processor executes the computer program, it implements the resource scheduling method as described in any one of claims 1 to 6.
9. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the resource scheduling method as described in any one of claims 1 to 6.
10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by the processor, it implements the resource scheduling method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Resource scheduling method, device and equipment based on fused CDN (Content Delivery Network)
CN114448990A
Domain name conflict-oriented cdn service management method and system, equipment and storage medium
CN119172356A
CDN acceleration method, device and system, medium, computer equipment and program product
CN119363828A