A resource scheduling method and device, system, processing equipment, storage medium and program product
By generating encrypted domain names and verifying their trustworthiness in the PCDN system, a resource scheduling method was developed that solved the problem of the PCDN system being unable to serve HTTPS requests, achieving more flexible resource scheduling and cost savings.
Patent Information
- Application Number
- CN202410484442.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-22
- Publication Date
- 2025-11-21
- Estimated Expiration
- 2044-04-22
AI Technical Summary
The existing PCDN system cannot serve HTTPS requests, which makes it impossible to effectively reduce CDN bandwidth pressure and expansion costs. At the same time, the performance and security of the terminal nodes are inferior to CDN equipment, and client-side modifications are required.
The client sends a request message carrying the first domain name to the PCDN scheduling system, receives and generates or obtains a second domain name based on the first domain name and the IP address of the distribution node, and uses the second domain name to obtain the IP address of the distribution node to make resource requests. This achieves encrypted domain name resolution and certificate trustworthiness verification, avoiding client modification.
This enables the PCDN system to support HTTPS requests without modifying the client, reducing back-to-origin bandwidth, saving costs, and improving the security and performance of terminal nodes.
Smart Images

Figure CN118827791B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the fields of cloud computing, big data, edge computing and terminals, and in particular to a resource scheduling method and apparatus, system, processing equipment, storage medium and program product. Background Technology
[0002] Bandwidth costs currently constitute a significant portion of expenses for internet companies, especially video-based ones. To save bandwidth and reduce investment, some internet companies have begun using Peer-to-Peer Content Delivery Networks (PCDNs) for service distribution. The core working mode of a PCDN system involves embedding software on the home terminal, transforming it into a content distribution node that provides content distribution services, achieving peer-to-peer content distribution. When the terminal node does not have the requested content, it then requests playback from the Content Delivery Network (CDN).
[0003] However, during communication between the client and server, the PCDN system needs to return the server's Internet Protocol (IP) address to the client via redirection. Therefore, the PCDN system cannot serve Hypertext Transfer Protocol over Secure Socket Layer (HTTPS), which requires domain name verification. Thus, an effective resource scheduling method is urgently needed to solve this problem. Summary of the Invention
[0004] To address the aforementioned technical problems, embodiments of the present invention provide a resource scheduling method and apparatus, system, processing device, computer storage medium, and computer program product.
[0005] Firstly, the resource scheduling method provided in the embodiments of this application, applied to a client, includes:
[0006] Send a first request message to the PCDN scheduling system. The first request message is used to request a first resource and carries a first domain name.
[0007] The system receives a first response message sent by the PCDN scheduling system, the first response message carrying a second domain name; wherein the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node;
[0008] The IP address of the first distribution node is obtained based on the second domain name, and a second request message is sent to the first distribution node based on the IP address of the first distribution node. The second request message is used to request the first resource and carries the second domain name.
[0009] Receive the first resource sent by the first distribution node.
[0010] Secondly, the resource scheduling method provided in this application embodiment is applied to the PDCN scheduling system, including:
[0011] Receive a first request message sent by the client, the first request message is used to request a first resource, and the first request message carries a first domain name;
[0012] The distribution node where the first resource is located is identified as the first distribution node.
[0013] A first response message is sent to the client, the first response message carrying a second domain name; wherein, the second domain name is generated based on the first domain name and the IP address of the first distribution node, or, the second domain name is the domain name of the first distribution node; the second domain name is used by the client to obtain the IP address of the first distribution node, and to request the first resource from the first distribution node based on the IP address of the first distribution node.
[0014] Thirdly, the resource scheduling device provided in this application embodiment is applied to a client and includes:
[0015] The sending unit is used to send a first request message to the PCDN scheduling system. The first request message is used to request a first resource and carries a first domain name.
[0016] The receiving unit is configured to receive a first response message sent by the PCDN scheduling system, wherein the first response message carries a second domain name; wherein the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node;
[0017] The acquisition unit is used to acquire the IP address of the first distribution node based on the second domain name;
[0018] The sending unit is further configured to send a second request message to the first distribution node based on the IP address of the first distribution node, the second request message being used to request the first resource, and the second request message carrying the second domain name;
[0019] The receiving unit is further configured to receive the first resource sent by the first distribution node.
[0020] Fourthly, the resource scheduling apparatus provided in this application embodiment is applied to the PDCN scheduling system, including:
[0021] The receiving unit is configured to receive a first request message sent by the client, the first request message being used to request a first resource, and the first request message carrying a first domain name;
[0022] The query unit is used to query whether the distribution node where the first resource is located is the first distribution node;
[0023] The sending unit is configured to send a first response message to the client, the first response message carrying a second domain name; wherein the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node; the second domain name is used by the client to obtain the IP address of the first distribution node, and to request the first resource from the first distribution node based on the IP address of the first distribution node.
[0024] Fifthly, the PCDN system provided in this application includes a PCDN scheduling system, a PCDN domain name resolution system, and one or more distribution nodes; wherein,
[0025] The PCDN scheduling system is used to execute the resource scheduling method in the second aspect above;
[0026] The PCDN domain name resolution system is used to receive a third domain name resolution request recursively from the client's local DNS, the third domain name resolution request being used to request the resolution of the second domain name; and to return the IP address of the first distribution node to the local DNS; the IP address of the first distribution node is used by the client to request the first distribution node to obtain the first resource.
[0027] Sixthly, the processing device provided in the embodiments of this application includes: a processor and a memory, the memory being used to store a computer program, and the processor being used to call and run the computer program stored in the memory to execute any of the above-described resource scheduling methods.
[0028] In a seventh aspect, the computer-readable storage medium provided in the embodiments of this application is used to store a computer program that causes a computer to perform any of the methods described above.
[0029] Eighthly, the computer program product provided in the embodiments of this application includes computer program instructions that cause a computer to perform any of the methods described above.
[0030] In the technical solution of this application embodiment, a client sends a first request message to the PCDN scheduling system to request a first resource and carry a first domain name, and receives a first response message from the PCDN scheduling system carrying a second domain name. The second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node. The IP address of the first distribution node is obtained based on the second domain name, and a second request message is sent to the first distribution node based on the IP address of the first distribution node to request the first resource and carry the second domain name. The client then receives the first resource from the first distribution node. Thus, a PCDN system that supports client resource requests is realized. This system not only supports the allocation and management of domain names for PCDN distribution nodes and internal domain name resolution within the PCDN system, but also supports adding domain name service functions to the PCDN scheduling system. It can generate encrypted new domain names based on the business domain name requested by the client and the IP address of the PCDN distribution node. The resource scheduling process does not involve modifications to the ICP client side or the user's client, making it more convenient and flexible to implement. It can better serve Internet customers and effectively reduce the origin bandwidth from the PCDN system to the CDN system, saving costs and helping operators and Internet customers reduce costs and increase efficiency. Attached Figure Description
[0031] Figure 1 This is an architecture diagram of a resource scheduling system according to an embodiment of this application;
[0032] Figure 2 This is a flowchart illustrating a resource scheduling method provided in an embodiment of this application. Figure 1 ;
[0033] Figure 3 This is a flowchart illustrating a resource scheduling method provided in an embodiment of this application. Figure 2 ;
[0034] Figure 4 This is a flowchart illustrating a resource scheduling method provided in an embodiment of this application. Figure 3 ;
[0035] Figure 5 This is a flowchart illustrating a resource scheduling method provided in an embodiment of this application. Figure 4 ;
[0036] Figure 6 This is a flowchart illustrating a resource scheduling method provided in an embodiment of this application. Figure 5 ;
[0037] Figure 7 This is a flowchart illustrating a resource scheduling method provided in an embodiment of this application. Figure 6 ;
[0038] Figure 8This is a schematic diagram of a PCDN system provided in an embodiment of this application;
[0039] Figure 9 This is a schematic diagram of the structural composition of the resource scheduling device provided in the embodiments of this application. Figure 1 ;
[0040] Figure 10 This is a schematic diagram of the structural composition of the resource scheduling device provided in the embodiments of this application. Figure 2 ;
[0041] Figure 11 This is a schematic structural diagram of a processing device provided in an embodiment of this application. Detailed Implementation
[0042] To facilitate understanding of the technical solutions of the embodiments of this application, the relevant technologies of the embodiments of this application are described below. The following relevant technologies are optional solutions and can be combined with the technical solutions of the embodiments of this application in any way, and they all fall within the protection scope of the embodiments of this application.
[0043] Bandwidth costs constitute a significant portion of expenses for internet companies, especially video-based ones. To save bandwidth and reduce investment, some internet companies have begun using PCDN for service distribution. PCDN is a network content distribution solution that combines peer-to-peer (P2P) technology with CDN technology. It primarily utilizes the idle bandwidth and storage resources of numerous users in the network to build a distributed, collaborative content distribution network. Specifically, software is embedded on the home terminal side, transforming it into a content distribution node, i.e., a PCDN distribution node, providing content distribution services to clients, achieving peer-to-peer content distribution. When a PCDN distribution node does not have the content requested by the client, it then requests playback from the CDN. Specifically, PCDN distribution nodes are deployed on the user's home side, including terminals such as home routers, set-top boxes, and home gateways. During communication between the client and the PCDN distribution node, the PCDN scheduling system needs to return the IP address of the PCDN distribution node to the client via a 302 redirect.
[0044] To ensure the security of transmitted content, most content from internet companies currently uses the HTTPS protocol. HTTPS is a Hypertext Transfer Protocol (HTTP) that uses Secure Sockets Layer (SSL) and / or Transport Layer Security (TLS) for encryption. It provides authentication, encryption / decryption, and data integrity guarantees, thereby establishing a secure connection between the client and server, protecting user data privacy and transmission security. HTTPS requests require domain name verification. However, existing PCDN systems require the PCDN scheduling system to return the IP address of the PCDN distribution node to the client via a 302 redirect. Therefore, existing PCDN systems cannot serve HTTPS requests, and since HTTPS services are mostly provided through origin CDN, there is a problem of not effectively reducing the bandwidth pressure on large-scale CDN networks and reducing expansion costs. In addition, the performance and security of PCDN nodes deployed on home terminals are inferior to CDN equipment deployed in data centers. Therefore, even if PCDN vendors provide a 302 domain name return solution, customers are unwilling to deploy certificates on the terminal side, and the terminal performance is limited, making it unable to load certificates for a large number of distribution services. In summary, the following technical solution is proposed in this application.
[0045] To facilitate understanding of the technical solutions of the embodiments of this application, the technical solutions of this application are described in detail below through specific embodiments. The above-mentioned related technologies are optional solutions and can be arbitrarily combined with the technical solutions of the embodiments of this application, all of which fall within the protection scope of the embodiments of this application. The embodiments of this application include at least some of the following contents.
[0046] Figure 1 This is an architecture diagram of the resource scheduling system provided in the embodiments of this application, such as... Figure 1As shown, the resource scheduling system provided in this application embodiment includes a CDN system and a PCDN system. The CDN system includes a CDN converged scheduling system and edge nodes. The CDN converged scheduling system is used to determine whether the client's content distribution service is provided by CDN or PCDN based on the request content sent by the client. If it is distributed by CDN, the CDN converged scheduling system returns the service IP address of the CDN edge node to the client; if it is determined that the service is provided by the PCDN system, it returns the canonical name (CNAME) of the PCDN scheduling system to the client. The PCDN system includes a PCDN scheduling system, a PCDN domain name resolution system, and PCDN distribution nodes. The PCDN scheduling system is used to receive client requests and return the PCDN distribution node address to the client. The PCDN domain name resolution system is used to handle related domain name resolution within the PCDN. The PCDN distribution nodes are used to provide the required content to the client. Specifically, refer to... Figure 2 , Figure 2 This is a flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 1 ,like Figure 2 As shown, the resource scheduling method is applied to the client and specifically includes the following steps:
[0047] Step 201: Send a first request message to the PCDN scheduling system. The first request message is used to request the first resource and carries the first domain name.
[0048] In some implementations, the first request message can be an HTTPS request. This first request message requests a first resource and carries a first domain name. Specifically, the first request message carries a Uniform Resource Locator (URL), which is the web address of the HTTPS resource request. For example, in https: / / A.com / demo.ts, the first domain name could be A.com.
[0049] In some implementations, the PCDN scheduling system is a crucial component of the PCDN system. By acquiring information from the client and the distribution node, it matches resources to the client based on the client's requested resource information. After receiving a first request message carrying a first domain name from the client, the PCDN scheduling system queries the PCDN distribution node where the first resource is located, designates this PCDN distribution node as the first distribution node, and determines the domain name of the first distribution node.
[0050] In some implementations, a PCDN distribution node is a node in the PCDN system used to provide content distribution services to clients, enabling peer-to-peer content distribution. It should be noted that a PCDN distribution node can be a user device or terminal. During normal use, a PCDN distribution node can act as a node in the PCDN network, participating in content distribution and sharing. When the bandwidth and storage resources of a PCDN distribution node are not saturated, it can download and cache content, while simultaneously providing upload services to clients (other users who need the content). When the PCDN scheduling system queries the PCDN distribution node where the first resource resides, it designates this PCDN distribution node as the first distribution node and determines its domain name.
[0051] Step 202: Receive the first response message sent by the PCDN scheduling system. The first response message carries the second domain name. The second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node.
[0052] Here, the client receives the first response message sent by the PCDN scheduling system. This first response message carries a URL, which contains the second domain name.
[0053] In some implementations, the second domain name is generated based on the first domain name and the IP address of the first distribution node. Specifically, after receiving a first request message carrying the first domain name from the client, the PCDN scheduling system queries the distribution node where the first resource is located, selects this distribution node as the first distribution node, determines the IP address of the first distribution node, and uses the first domain name and the IP address of the first distribution node as encrypted input parameters to form an encrypted second domain name. The PCDN scheduling system then sends the encrypted second domain name to the client in the form of a URL; that is, the PCDN scheduling system returns the second domain name to the client via HTTP 302. For example, the URL is: https: / / hash0.pcdn.com / A.com / demo.ts, where the second domain name contained in the URL is hash0.pcdn.com.
[0054] In other implementations, the second domain name is the domain name of the first distribution node. Specifically, the PCDN domain name resolution system assigns a domain name to each distribution node of PCDN, manages the domain names of all distribution nodes uniformly, and synchronizes the domain name information to the PCDN scheduling system. The client sends a first request to the PCDN scheduling system. After receiving the first request message carrying the first domain name sent by the client, the PCDN scheduling system queries the domain name information of the specific first distribution node according to the first resource, and uses this domain name information of the first distribution node as the second domain name. The PCDN scheduling system sends the second domain name to the client in the form of a URL, that is, the PCDN scheduling system returns the second domain name to the client via HTTP 302. For example, the URL is: https: / / node0.pcdn1.com / A.com / demo.ts, and the second domain name contained in this URL is node0.pcdn1.com.
[0055] In some implementations, the PCDN domain name resolution system can assign domain names to one or more distribution nodes and send domain name information to the PCDN scheduling system. This domain name information includes the domain names of one or more distribution nodes. Specifically, the PCDN domain name resolution system is a crucial component of the PCDN system, responsible for resolving related domain names within PCDN. The PCDN domain name resolution system assigns a domain name to each PCDN distribution node, manages the domain names of all distribution nodes uniformly, and synchronizes the domain name information to the PCDN scheduling system.
[0056] Step 203: Obtain the IP address of the first distribution node based on the second domain name, and send a second request message to the first distribution node based on the IP address of the first distribution node. The second request message is used to request the first resource and carries the second domain name.
[0057] Here, after receiving the first response message carrying a new URL, the client obtains the IP address of the first distribution node based on the second domain name contained in the new URL, and sends a second request message to the first distribution node based on the IP address of the first distribution node. The second request message can be an HTTPS request, used to request the first resource and carry the second domain name. Specifically, the second request message carries a URL including the second domain name, which is the web address of the HTTPS resource request, for example: https: / / hash0.pcdn.com / A.com / demo.ts or https: / / node0.pcdn1.com / A.com / demo.ts, then the second domain name can be hash0.pcdn.com or node0.pcdn1.com.
[0058] In some implementations, after receiving the second domain name, the client needs to send the URL containing the second domain name to the Domain Name System (DNS) for domain name resolution to obtain the IP address of the first distribution node after domain name resolution. For example, the client sends the second domain name hash0.pcdn.com or node0.pcdn1.com to the local DNS, requesting domain name resolution for the second domain name. The local DNS recursively forwards the second domain name to the PDCN domain name resolution system, which resolves the second domain name and returns the specific IP address of the first distribution node (2.2.2.2) to the client. After receiving the specific IP address of the first distribution node, the client sends a second request message carrying the second domain name to the first distribution node based on the IP address. The second request message is used to request the first resource from the first distribution node.
[0059] Step 204: Receive the first resource sent by the first distribution node.
[0060] Here, after receiving the IP address of the first distribution node, the client sends a second request message to the first distribution node. In some implementations, the second request message can be an HTTPS request. After receiving the second request message, the first distribution node authenticates with the client, performs encryption / decryption, and ensures data integrity before sending the first resource to the client. The client then receives the first resource sent by the first distribution node.
[0061] As can be seen from the above, the resource scheduling method provided in this application embodiment involves a client sending a first request message to the PCDN scheduling system to request a first resource and carrying a first domain name, and receiving a first response message from the PCDN scheduling system carrying a second domain name. The second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node. The IP address of the first distribution node is obtained based on the second domain name, and a second request message is sent to the first distribution node based on the IP address of the first distribution node to request the first resource and carrying the second domain name, and the first resource is received from the first distribution node. Thus, a PCDN system that supports client resource requests is realized. This system not only supports the allocation and management of domain names for PCDN distribution nodes and internal domain name resolution within the PCDN system, but also supports adding domain name service functions to the PCDN scheduling system. It can generate encrypted new domain names based on the business domain name requested by the client and the IP address of the PCDN distribution node. The resource scheduling process does not involve modifications to the ICP client side or the user's client, making it more convenient and flexible to implement. It can better serve Internet customers and effectively reduce the origin bandwidth from the PCDN system to the CDN system, saving costs and helping operators and Internet customers reduce costs and increase efficiency.
[0062] In some implementations, before receiving the first resource sent by the first distribution node, the method further includes: performing a certificate trust verification with the first distribution node.
[0063] Here, the first distribution node loads a CA certificate containing its own wildcard domain name. This wildcard domain name can be *.pcdn.com. In the PDCN converged scheduling system, the wildcard domain name CA certificate for the terminal domain name needs to be loaded on the distribution node side. The CA is the certificate issuing authority, responsible for issuing, authenticating, and managing issued certificates. The content of a CA certificate includes, but is not limited to, CA information, CA signature, public key, wildcard domain name, and validity period. When the client sends a second request message to the first distribution node, it needs to verify the CA certificate's trustworthiness with the first distribution node. Specifically, the client initiates an HTTPS request to the first distribution node. The first distribution node responds to the client by loading the CA certificate for that wildcard domain name. This mainly includes the public key and the first distribution node's identity information. The client parses the CA certificate to check its validity. If the CA certificate is valid, it generates a random value, encrypts it using the certificate's public key, and sends it to the first distribution node. The first distribution node uses its private key to decrypt the data sent by the client and obtains the random value. In this way, the certificate trustworthiness verification between the client and the first distribution node is completed, and the first resource is transmitted in encrypted form based on the random value that both the client and the first distribution node have.
[0064] As can be seen from the above, the resource scheduling method provided in this application requires a certificate trustworthiness verification with the first distribution node before the client receives the first resource sent by the first distribution node. In this way, compared with the existing technology where the CA certificate needs to be loaded on the terminal side when requesting CDN service resources, which leads to security and terminal performance bottlenecks and copyright issues, by loading only a small number of CA certificates on the PCDN distribution node side, it is not necessary to occupy too many terminal resources.
[0065] Figure 3 This is a flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 2 ,like Figure 3 As shown, before sending the first request message to the PCDN scheduling system, the following steps are also included:
[0066] Step 301: Send a first domain name resolution request to the local DNS. The first domain name resolution request is used to request the resolution of the first domain name. The first domain name resolution request is recursively resolved by the local DNS to the CDN converged scheduling system and returns the canonical name of the PCDN scheduling system.
[0067] Here, the client wants to request the primary resource, so it sends a primary domain name resolution request to the local DNS. For example, if the client wants to request the resource https: / / A.com / demo.ts, it initiates a DNS resolution request for the primary domain name A.com to the local DNS. The local DNS then recursively forwards the primary domain name resolution request to the CDN converged scheduling system.
[0068] In some implementations, the CDN converged scheduling system determines whether the first domain name has joined the PCDN scheduling system. Specifically, the CDN converged scheduling system determines whether the client's content distribution service is provided by the CDN system or the PCDN system based on the client's request content. If it is distributed by the CDN system, the CDN converged scheduling system returns the service IP address of the CDN edge node to the client through the local DNS. If it is distributed by the PCDN system, the CDN converged scheduling system returns the canonical name of the PCDN scheduling system to the local DNS.
[0069] In some implementations, the standard name of the PCDN scheduling system can be called the CNAME domain name of the PDCN scheduling system, which can be represented as CNAME: htc.A.com.
[0070] Step 302: Receive the first resolution result sent by the local DNS. The first resolution result includes the specification name of the PCDN scheduling system.
[0071] Here, the client receives the first resolution result sent by the local DNS. Specifically, if the content is distributed by a CDN system, the first resolution result received by the client is the service IP address of the CDN edge node. If the content distribution service is provided by a PCDN system, the CDN converged scheduling system returns the canonical name of the PCDN scheduling system to the local DNS.
[0072] Step 303: Send a second domain name resolution request to the local DNS. The second domain name resolution request is used to request the resolution of the canonical name of the PCDN scheduling system.
[0073] Here, after receiving the canonical name of the PCDN scheduling system returned by the local DNS, the client initiates a secondary domain name resolution request to the local DNS to resolve the canonical name of the PCDN scheduling system. For example, the client sends a secondary domain name resolution request to the local DNS to resolve the CNAME: htc.A.com.
[0074] Step 304: Receive the second resolution result sent by the local DNS, the second resolution result including the IP address of the PCDN scheduling system.
[0075] Here, the client receives the resolution result of the local DNS for the canonical name of the PCDN scheduling system. For example, the client sends a second domain name resolution request to the local DNS to resolve the CNAME: htc.A.com. The local DNS performs domain name resolution on htc.A.com, obtains the IP address of the PCDN scheduling system as 1.1.1.1, and sends the IP address of the PCDN scheduling system to the client through an A record A: 1.1.1.1.
[0076] In some implementations, sending a first request message to the PCDN scheduling system includes: sending a first request message to the PCDN scheduling system based on the PCDN scheduling system's IP address.
[0077] Here, after receiving the IP address of the PCDN scheduling system from the local DNS, such as A:1.1.1.1, the client sends a first request message to the PCDN scheduling system based on that IP address. The first request message can be an HTTPS request, and it is used by the client to request the first resource and carry the first domain name.
[0078] As can be seen from the above, the resource scheduling method provided in this application involves a client sending a first domain name resolution request to the local DNS to request the resolution of a first domain name, and receiving a first resolution result from the local DNS including the canonical name of the PCDN scheduling system; sending a second domain name resolution request to the local DNS to request the resolution of the canonical name of the PCDN scheduling system, and receiving a second resolution result from the local DNS including the IP address of the PCDN scheduling system; and sending a first request message to the PCDN scheduling system based on the IP address of the PCDN scheduling system. Thus, compared with the prior art, which relies on building a large number of CDNs to provide services through origin CDNs for resource scheduling requests, this method effectively reduces the origin bandwidth from the PCDN system to the CDN system, saves costs, and helps operators and internet customers reduce costs and increase efficiency.
[0079] Figure 4 This is a flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 3 ,like Figure 4 As shown, in step 203, obtaining the IP address of the first distribution node based on the second domain name further includes the following steps:
[0080] Step 401: Send a third domain name resolution request to the local DNS. The third domain name resolution request is used to request the resolution of the second domain name. The third domain name resolution request is recursively resolved by the local DNS to the PCDN domain name resolution system and returns the IP address of the first distribution node.
[0081] Here, after receiving the second domain name, the client needs to send a request to the local DNS to resolve the third domain name of the second domain name, thereby obtaining the IP address corresponding to the resolved second domain name, which is the IP address of the first distribution node. Upon receiving the third domain name resolution request, the local DNS, since content distribution is done through the PCDN system, recursively forwards the request to the PCDN domain name resolution system. The PCDN system resolves the second domain name, obtains the corresponding IP address, and recursively forwards this IP address to the local DNS, which then sends the IP address to the client. For example, if the client sends the second domain name hash0.pcdn.com or node0.pcdn1.com to the local DNS, requesting domain name resolution, the local DNS recursively forwards the request to the PDCN domain name resolution system. The PDCN system resolves the second domain name and sends the resolved IP address of the first distribution node, such as A:2.2.2.2, to the local DNS, which then returns the result to the client.
[0082] Step 402: Receive the third resolution result sent by the local DNS. The third resolution result includes the IP address of the first distribution node.
[0083] Here, the client receives the third resolution result sent by the local DNS, that is, the specific IP address of the first distribution node, such as A:2.2.2.2. Based on the IP address, it sends a second request message carrying the second domain name to the first distribution node. The second request message is used to request the first resource from the first distribution node.
[0084] As can be seen from the above, the resource scheduling method provided in this application embodiment involves a client sending a third domain name resolution request to the local DNS for resolving a second domain name. The third domain name resolution request is recursively resolved by the local DNS to the PCDN domain name resolution system and returns the IP address of the first distribution node. The system receives the third resolution result sent by the local DNS, which includes the IP address of the first distribution node. In this way, a PCDN system that supports client resource requests is realized. It not only supports the allocation and management of domain names to PCDN distribution nodes and the internal domain name resolution of the PCDN system, but also supports adding domain name service functions to the PCDN scheduling system. It can generate encrypted new domain names based on the business domain name requested by the client and the IP address of the PCDN distribution node. The resource scheduling process does not involve the modification of the ICP client side or the user's client, making it more convenient and flexible to implement. It can better serve Internet customers and effectively reduce the origin bandwidth of the PCDN system to the CDN system, saving costs and helping operators and Internet customers reduce costs and increase efficiency.
[0085] Figure 5This is a flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 4 ,like Figure 5 As shown, the resource scheduling method is applied to the PCDN scheduling system and specifically includes the following steps:
[0086] Step 501: Receive the first request message sent by the client. The first request message is used to request the first resource and carries the first domain name.
[0087] Here, the PCDN scheduling system is a crucial component of the PCDN system. It matches resources to clients based on their requested resource information by acquiring information from both the client and the distribution node. Specifically, the PCDN scheduling system receives a first request message from the client requesting a first resource and carrying the first domain name. This first request message can be an HTTPS request, and it carries a Uniform Resource Locator (URL), i.e., a webpage address. This URL is the webpage address for the HTTPS resource request, for example: https: / / A.com / demo.ts, where the first domain name could be A.com.
[0088] Step 502: Query the distribution node where the first resource is located to find the first distribution node.
[0089] Here, after receiving the first request message carrying the first domain name sent by the client, the PCDN scheduling system queries the PCDN distribution node where the first resource is located, takes this PCDN distribution node as the first distribution node, and determines the domain name of the first distribution node.
[0090] In some implementations, a PCDN distribution node is a node in the PCDN system used to provide content distribution services to clients, enabling peer-to-peer content distribution. It should be noted that a PCDN distribution node can be a user device or terminal. During normal use, a PCDN distribution node can act as a node in the PCDN network, participating in content distribution and sharing. When the bandwidth and storage resources of a PCDN distribution node are not saturated, it can download and cache content, while simultaneously providing upload services to clients (other users who need the content). When the PCDN scheduling system queries the PCDN distribution node where the first resource resides, it designates this PCDN distribution node as the first distribution node and determines its domain name.
[0091] Step 503: Send a first response message to the client. The first response message carries a second domain name. The second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node. The second domain name is used by the client to obtain the IP address of the first distribution node and to request the first resource from the first distribution node based on the IP address of the first distribution node.
[0092] Here, the PCDN scheduling system sends a first response message to the client, which carries a URL containing a second domain name.
[0093] In some implementations, before sending the first response message to the client, an encryption operation is performed based on the first domain name and the IP address of the first distribution node to obtain an encrypted second domain name. Specifically, after receiving the first request message carrying the first domain name from the client, the PCDN scheduling system queries the distribution node where the first resource is located, selects this distribution node as the first distribution node, determines the IP address of the first distribution node, and uses the first domain name and the IP address of the first distribution node as encryption input parameters to form the encrypted second domain name. The PCDN scheduling system sends the encrypted second domain name to the client in the form of a URL, that is, the PCDN scheduling system returns the second domain name to the client via HTTP 302. For example, the URL is: https: / / hash0.pcdn.com / A.com / demo.ts, and the second domain name contained in this URL is hash0.pcdn.com.
[0094] In some implementations, before sending the first response message to the client, the CA certificate for the wildcard domain corresponding to the second domain is loaded into the first distribution node. Here, the CA certificate for the wildcard domain of the first distribution node is loaded. The wildcard domain can be *.pcdn.com. In the PDCN converged scheduling system, the wildcard domain CA certificate for the terminal domain needs to be loaded on the distribution node side. The CA is the certificate issuing authority, responsible for issuing certificates, authenticating certificates, and managing issued certificates. The content of the CA certificate includes, but is not limited to, CA information, CA signature, public key, wildcard domain, and validity period. When the client sends the second request message to the first distribution node, it needs to complete the CA certificate trustworthiness verification with the first distribution node. Specifically, the client initiates an HTTPS request to the first distribution node. The first distribution node responds to the client by loading the CA certificate for the wildcard domain. This mainly includes the public key and the identity information of the first distribution node. The client parses whether the CA certificate is valid. If the CA certificate is valid, it generates a random value, encrypts the random value using the certificate's public key, and transmits it to the first distribution node. The first distribution node uses its private key to decrypt the data sent by the client to obtain the random value. In this way, the certificate trustworthiness verification between the client and the first distribution node is completed, and the first resource is transmitted in encrypted form based on the random value that both the client and the first distribution node have.
[0095] In other implementations, before sending the second response message to the client, domain name information sent by the PCDN domain name resolution system is received. This domain name information includes the domain names of one or more distribution nodes, which are assigned by the PCDN domain name resolution system. Specifically, the PCDN domain name resolution system assigns a domain name to each PCDN distribution node, manages all distribution node domain names uniformly, and synchronizes the domain name information to the PCDN scheduling system. The client sends a first request to the PCDN scheduling system. After receiving the first request message carrying the first domain name from the client, the PCDN scheduling system queries the domain name information of the specific first distribution node based on the first resource and uses this first distribution node's domain name information as the second domain name. The PCDN scheduling system sends the second domain name to the client in the form of a URL; that is, the PCDN scheduling system returns the second domain name to the client via HTTP 302. For example, the URL is: https: / / node0.pcdn1.com / A.com / demo.ts, where the second domain name included in the URL is node0.pcdn1.com.
[0096] In some implementations, the PCDN domain name resolution system can assign domain names to one or more distribution nodes and send domain name information to the PCDN scheduling system. This domain name information includes the domain names of one or more distribution nodes. Specifically, the PCDN domain name resolution system is a crucial component of the PCDN system, responsible for resolving related domain names within PCDN. The PCDN domain name resolution system assigns a domain name to each PCDN distribution node, manages the domain names of all distribution nodes uniformly, and synchronizes the domain name information to the PCDN scheduling system.
[0097] As can be seen from the above, the resource scheduling method provided in this application embodiment receives a first request message sent by a client requesting a first resource and carrying a first domain name through a PCDN scheduling system, queries the distribution node where the first resource is located to find the first distribution node, and sends a first response message carrying a second domain name; wherein, the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node; thus, a PCDN system that supports client resource requests is realized, which not only supports the allocation and management of domain names for PCDN distribution nodes and the internal domain name resolution of the PCDN system, but also supports adding domain name service functions to the PCDN scheduling system, and can generate encrypted new domain names based on the business domain name requested by the client and the IP of the PCDN distribution node. The resource scheduling process does not involve the modification of the ICP client side or the user's client, which is more convenient and flexible to implement, can better serve Internet customers, and effectively reduce the origin bandwidth of the PCDN system to the CDN system, save costs, and help operators and Internet customers reduce costs and increase efficiency.
[0098] Example 1
[0099] Figure 6 This is a flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 5 ,like Figure 6 As shown, after receiving an HTTPS request from the client, the PCDN scheduling system queries the IP address information of the specific PCDN distribution node based on the requested resource. It then uses the domain name requested by the client and the IP address of the PCDN distribution node as encrypted input parameters to form a new encrypted domain name, which is returned to the client via HTTP 302. The PCDN domain name resolution system, acting as the authorized DNS server for the encrypted new domain name, decrypts it and returns the IP address of the actual PCDN node providing the service to the client. Upon receiving the IP address of the PCDN distribution node, the client initiates an HTTPS resolution request. The PCDN distribution node loads the wildcard CA certificate for the encrypted new domain name. After both parties complete the certificate trust verification, the PCDN distribution node provides the requested content to the client. The specific steps are as follows:
[0100] Step 601: The client initiates a first domain name resolution request to the local DNS. After receiving the first domain name resolution request, the local DNS recursively submits the first domain name to the CDN converged scheduling system for resolution.
[0101] Here, the client wants to request a resource (https: / / A.com / demo.ts), which initiates a DNS resolution request for the business domain name (A.com), and the local DNS recursively calls the CDN converged scheduling system for resolution.
[0102] Step 602: The CDN converged scheduling system determines whether the first domain name has been added to the PCDN system.
[0103] Here, the CDN converged scheduling system determines whether the business domain name (A.com) has been added to the PCDN network.
[0104] Step 603: If added, the CDN converged scheduling system sends the PCDN scheduling system specification name to the local DNS, and the local DNS returns the first resolution result to the client.
[0105] Here, if added, the CDN converged scheduling system returns the PCDN scheduling system CNAME (htc.A.com) to the local DNS; the local DNS returns the PCDN scheduling system CNAME (htc.A.com) to the client.
[0106] Step 604: The client initiates a second domain name resolution request to the local DNS.
[0107] Here, the client initiates a PCDN scheduling system CNAME (htc.A.com) domain name resolution request to the Local DNS.
[0108] Step 605: The local DNS returns the second resolution result to the client.
[0109] Here, the local DNS returns a second resolution result to the client, returning the IP address of the PCDN scheduling system to the client via an A record (1.1.1.1).
[0110] Step 606: The client sends a first request message to the PCDN scheduling system. The first request message is used to request the first resource and carries the first domain name.
[0111] Here, the client sends an HTTPS request to the PCDN scheduling system, specifically to https: / / A.com / demo.ts.
[0112] Step 607: The PCDN scheduling system queries the distribution node where the first resource is located and identifies it as the first distribution node. Based on the first domain name and the IP address of the first distribution node, it generates the second domain name.
[0113] Here, the PCDN scheduling system queries the IP address of the PCDN distribution node where the first resource requested by the client is located, and uses the first domain name sent by the client and the IP address of the first distribution node as encrypted input parameters to form the encrypted second domain name (hash0.pcdn.com). At the same time, the CA certificate of this wildcard domain name (*.pcdn.com) needs to be loaded in the first distribution node.
[0114] Step 608: The PCDN scheduling system sends a first response message to the client, which carries the second domain name.
[0115] Here, the PCDN scheduling system returns the encrypted URL of the second domain name (https: / / hash0.pcdn.com / A.com / demo.ts) to the client via HTTP 302.
[0116] Step 609: The client receives the first response message sent by the PCDN scheduling system. The first response message carries the second domain name and initiates a third domain name resolution request to the local DNS based on the second domain name.
[0117] Here, the client receives the first response message sent by the PDCN system. The first response message carries the URL containing the second domain name. Then, it sends a resolution request for the second domain name (hash0.pcdn.com) to the local DNS. The local DNS then recursively forwards the resolution request for the third domain name to the PCDN domain name resolution system.
[0118] Step 610: The PCDN domain name resolution system resolves the second domain name to obtain the IP address of the first distribution node.
[0119] Here, the PCDN domain name resolution system resolves the new domain name (hash0.pcdn.com) to the specific IP address of the PCDN distribution node (2.2.2.2).
[0120] Step 611: The PCDN domain name resolution system returns the IP address of the first distribution node.
[0121] Here, the PCDN domain name resolution system returns the IP of the first distribution node after resolution to the local DNS, which then returns it to the client.
[0122] Step 612: The client sends a second request message to the first distribution node based on the IP address of the first distribution node. The second request message is used to request the first resource and carries the second domain name.
[0123] Here, the client sends a second request message to the first distribution node. The second request message carries a URL that includes the second domain name, https: / / hash0.pcdn.com / A.com / demo.ts.
[0124] Step 613: After receiving the HTTPS service request, the first distribution node verifies the certificate trustworthiness with the client and then provides the requested content to the client.
[0125] Example 2
[0126] Figure 7 This is a flowchart illustrating the resource scheduling method provided in the embodiments of this application. Figure 6 ,like Figure 7 As shown, the PCDN domain name resolution system assigns a domain name to each PCDN distribution node, manages all distribution node domain names uniformly, and synchronizes the domain name information to the PCDN scheduling system. After receiving a user's HTTPS request, the PCDN scheduling system queries the specific PCDN distribution node's domain name information based on the client's requested resource and returns it to the client via HTTP 302. Upon receiving the PCDN distribution node's domain name, the client first resolves it to the PCDN domain name resolution system to obtain the PCDN distribution node's specific IP address, and then initiates an HTTPS resolution request to the node. The PCDN distribution node loads the wildcard CA certificate for the terminal domain name. After both parties complete the certificate trust verification, the PCDN distribution node provides the requested content to the client. The specific steps are as follows:
[0127] Step 701: The client initiates a first domain name resolution request to the local DNS. After receiving the first domain name resolution request, the local DNS recursively submits the first domain name to the CDN converged scheduling system for resolution.
[0128] Here, the client wants to request a resource (https: / / A.com / demo.ts), which initiates a DNS resolution request for the business domain name (A.com), and the local DNS recursively calls the CDN converged scheduling system for resolution.
[0129] Step 702: The CDN converged scheduling system determines whether the first domain name has been added to the PCDN system.
[0130] Here, the CDN converged scheduling system determines whether the business domain name (A.com) has been added to the PCDN network.
[0131] Step 703: If added, the CDN converged scheduling system sends the PCDN scheduling system specification name to the local DNS, and the local DNS returns the first resolution result to the client.
[0132] Here, if added, the CDN converged scheduling system returns the PCDN scheduling system CNAME (htc.A.com) to the local DNS; the local DNS returns the PCDN scheduling system CNAME (htc.A.com) to the client.
[0133] Step 704: The client initiates a second domain name resolution request to the local DNS.
[0134] Here, the client initiates a PCDN scheduling system CNAME (htc.A.com) domain name resolution request to the Local DNS.
[0135] Step 705: The local DNS returns the second resolution result to the client.
[0136] Here, the local DNS returns a second resolution result to the client, returning the IP address of the PCDN scheduling system to the client via an A record (1.1.1.1).
[0137] Step 706: The client sends a first request message to the PCDN scheduling system. The first request message is used to request the first resource and carries the first domain name.
[0138] Here, the client sends an HTTPS request to the PCDN scheduling system, specifically to https: / / A.com / demo.ts.
[0139] Step 707: The PCDN scheduling system queries the distribution node where the first resource is located and finds it to be the first distribution node, thus obtaining the second domain name.
[0140] Here, the PCDN scheduling system queries the IP address of the PCDN distribution node where the first resource requested by the client is located, and obtains the second domain name (node0.pcdn1.com).
[0141] Step 708: The PCDN scheduling system sends a first response message to the client, which carries the second domain name.
[0142] Here, the PCDN scheduling system returns the URL (https: / / node0.pcdn1.com / A.com / demo.ts) containing the second domain name to the client via HTTP 302.
[0143] Step 709: The client receives the first response message sent by the PCDN scheduling system. The first response message carries the second domain name and initiates a third domain name resolution request to the local DNS based on the second domain name.
[0144] Here, the client receives the first response message sent by the PDCN system. The first response message carries the URL containing the second domain name. Then, it sends a resolution request for the second domain name (node0.pcdn1.com) to the local DNS. The local DNS then recursively forwards the resolution request for the third domain name to the PCDN domain name resolution system.
[0145] Step 710: The PCDN domain name resolution system resolves the second domain name to obtain the IP address of the first distribution node.
[0146] Here, the PCDN domain name resolution system resolves the new domain name (node0.pcdn1.com) to the specific IP address of the PCDN distribution node (2.2.2.2).
[0147] Step 711: The PCDN domain name resolution system returns the IP address of the first distribution node.
[0148] Here, the PCDN domain name resolution system returns the IP of the first distribution node after resolution to the local DNS, which then returns it to the client.
[0149] Step 712: The client sends a second request message to the first distribution node based on the IP address of the first distribution node. The second request message is used to request the first resource and carries the second domain name.
[0150] Here, the client sends a second request message to the first distribution node. The second request message carries a URL that includes the second domain name, https: / / node0.pcdn1.com / A.com / demo.ts.
[0151] Step 713: After receiving the HTTPS service request, the first distribution node verifies the certificate trustworthiness with the client and then provides the requested content to the client.
[0152] Figure 8 This is a schematic diagram of a PCDN system provided in an embodiment of this application, such as... Figure 8 As shown, the PCDN system 800 includes a PCDN scheduling system 801, a PCDN domain name resolution system 802, and one or more distribution nodes 803.
[0153] The PCDN scheduling system 801 is used to perform the steps described above.
[0154] The PCDN domain name resolution system 802 is used to receive a third domain name resolution request recursively from the client's local DNS, the third domain name resolution request being used to request the resolution of the second domain name; and to return the IP address of the first distribution node to the local DNS; the IP address of the first distribution node is used by the client to request the first distribution node to obtain the first resource.
[0155] In some implementations, the PCDN domain name resolution system 802 is also used to assign domain names to one or more distribution nodes and send domain name information to the PCDN scheduling system, the domain name information including the domain names of one or more distribution nodes.
[0156] Figure 9 This is a schematic diagram of the structural composition of the resource scheduling device provided in the embodiments of this application. Figure 1 Applied to the client side, such as Figure 9 As shown, the resource scheduling device 900 includes:
[0157] The sending unit 901 is used to send a first request message to the PCDN scheduling system. The first request message is used to request a first resource and carries a first domain name.
[0158] The receiving unit 902 is used to receive a first response message sent by the PCDN scheduling system, the first response message carrying a second domain name; wherein, the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node.
[0159] The acquisition unit 903 is used to obtain the IP address of the first distribution node based on the second domain name.
[0160] The sending unit 901 is further configured to send a second request message to the first distribution node based on the IP address of the first distribution node. The second request message is used to request the first resource and carries a second domain name.
[0161] The receiving unit 902 is also used to receive the first resource sent by the first distribution node.
[0162] In some implementations, before sending the first request message to the PCDN scheduling system, the sending unit 901 is further configured to send a first domain name resolution request to the local DNS. The first domain name resolution request is used to request the resolution of a first domain name. The first domain name resolution request is recursively resolved by the local DNS to the CDN converged scheduling system and returns the canonical name of the PCDN scheduling system.
[0163] In some embodiments, the receiving unit 902 is further configured to receive a first resolution result sent by the local DNS, the first resolution result including the specification name of the PCDN scheduling system.
[0164] In some implementations, the sending unit 901 is further configured to send a second domain name resolution request to the local DNS, the second domain name resolution request being used to request the resolution of the canonical name of the PCDN scheduling system.
[0165] In some embodiments, the receiving unit 902 is further configured to receive a second resolution result sent by the local DNS, the second resolution result including the IP address of the PCDN scheduling system.
[0166] In some implementations, the sending unit 901 is further configured to send a first request message to the PCDN scheduling system based on the IP address of the PCDN scheduling system.
[0167] In some implementations, the sending unit 901 is further configured to send a third domain name resolution request to the local DNS, the third domain name resolution request being used to request the resolution of the second domain name; the third domain name resolution request is recursively resolved by the local DNS to the PCDN domain name resolution system and returns the IP address of the first distribution node.
[0168] In some embodiments, the receiving unit 902 is further configured to receive a third resolution result sent by the local DNS, the third resolution result including the IP address of the first distribution node.
[0169] In some embodiments, the resource scheduling device further includes a processing unit 904, which is used to perform certificate trust verification with the first distribution node before receiving the first resource sent by the first distribution node.
[0170] Those skilled in the art should understand that Figure 9 The functions of each unit in the resource scheduling device shown can be understood by referring to the relevant descriptions of the aforementioned method. Figure 9The functions of each unit in the resource scheduling device shown can be implemented by a program running on a processor or by specific logic circuits.
[0171] Figure 10 This is a schematic diagram of the structural composition of the resource scheduling device provided in the embodiments of this application. Figure 2 It is applied to the PCDN scheduling system, such as Figure 10 As shown, the resource scheduling device 1000 includes:
[0172] The receiving unit 1001 is used to receive a first request message sent by the client. The first request message is used to request a first resource and carries a first domain name.
[0173] The query unit 1002 is used to query whether the distribution node where the first resource is located is the first distribution node.
[0174] The sending unit 1003 is used to send a first response message to the client, the first response message carrying a second domain name; wherein, the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node; the second domain name is used by the client to obtain the IP address of the first distribution node, and to request the first resource from the first distribution node based on the IP address of the first distribution node.
[0175] In some embodiments, the resource scheduling device 1000 further includes a processing unit 1004, which is used to perform encryption operations based on the first domain name and the IP address of the first distribution node to obtain the encrypted second domain name; and to load the CA certificate of the wildcard domain name corresponding to the second domain name into the first distribution node.
[0176] In some embodiments, the receiving unit 1001 is further configured to receive domain name information sent by the PCDN domain name resolution system before sending a second response message to the client. The domain name information includes the domain names of one or more distribution nodes, and the domain names of one or more distribution nodes are assigned by the PCDN domain name resolution system.
[0177] Those skilled in the art should understand that Figure 10 The functions of each unit in the resource scheduling device shown can be understood by referring to the relevant descriptions of the aforementioned method. Figure 10 The functions of each unit in the resource scheduling device shown can be implemented by a program running on a processor or by specific logic circuits.
[0178] Figure 11 This is a schematic structural diagram of a processing device 1100 provided in an embodiment of this application. The processing device can be a terminal device or a network device. Figure 11The processing device 1100 shown includes a processor 1110, which can call and run computer programs from memory to implement the methods in the embodiments of this application.
[0179] Optionally, such as Figure 11 As shown, the processing device 1100 may further include a memory 1120. The processor 1110 can retrieve and run computer programs from the memory 1120 to implement the methods described in the embodiments of this application.
[0180] The memory 1120 can be a separate device independent of the processor 1110, or it can be integrated into the processor 1110.
[0181] Optionally, such as Figure 11 As shown, the processing device 1100 may also include a transceiver 1130, which the processor 1110 can control to communicate with other devices. Specifically, it can send information or data to other devices or receive information or data sent by other devices.
[0182] The transceiver 1130 may include a transmitter and a receiver. The transceiver 1130 may further include an antenna, and the number of antennas may be one or more.
[0183] Optionally, the processing device 1100 may specifically be a mobile terminal / terminal device in the embodiments of this application, and the processing device 1100 may implement the corresponding processes implemented by the mobile terminal / terminal device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0184] It should be understood that the processor in the embodiments of this application may be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the above method embodiments can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor described above can be a general-purpose processor, 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, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.
[0185] It is understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DR RAM). It should be noted that the memory used in the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0186] It should be understood that the above-described memory is exemplary and not a limiting description. For example, the memory in the embodiments of this application may also be static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DR RAM), etc. That is to say, the memory in the embodiments of this application is intended to include, but is not limited to, these and any other suitable types of memory.
[0187] This application also provides a computer-readable storage medium for storing computer programs.
[0188] Optionally, the computer-readable storage medium can be applied to the network device in the embodiments of this application, and the computer program causes the computer to execute the corresponding processes implemented by the network device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0189] Optionally, the computer-readable storage medium can be applied to the mobile terminal / terminal device in the embodiments of this application, and the computer program causes the computer to execute the corresponding processes implemented by the mobile terminal / terminal device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0190] This application also provides a computer program product, including computer program instructions.
[0191] Optionally, the computer program product can be applied to the network device in the embodiments of this application, and the computer program instructions cause the computer to execute the corresponding processes implemented by the network device in the various methods of the embodiments of this application. For the sake of brevity, they will not be described in detail here.
[0192] Optionally, the computer program product can be applied to the mobile terminal / terminal device in the embodiments of this application, and the computer program instructions cause the computer to execute the corresponding processes implemented by the mobile terminal / terminal device in the various methods of the embodiments of this application. For the sake of brevity, they will not be described in detail here.
[0193] This application also provides a computer program.
[0194] Optionally, the computer program can be applied to the network device in the embodiments of this application. When the computer program is run on the computer, it causes the computer to execute the corresponding processes implemented by the network device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0195] Optionally, the computer program can be applied to the mobile terminal / terminal device in the embodiments of this application. When the computer program is run on a computer, it causes the computer to execute the corresponding processes implemented by the mobile terminal / terminal device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.
[0196] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0197] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0198] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0199] 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 units can be selected to achieve the purpose of this embodiment according to actual needs.
[0200] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0201] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they 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 portion 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.
[0202] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A resource scheduling method, characterized in that, Applied to a client, the method includes: Send a first request message to the PCDN scheduling system. The first request message is used to request a first resource and carries a first domain name. The system receives a first response message sent by the PCDN scheduling system, the first response message carrying a second domain name; wherein the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node; The IP address of the first distribution node is obtained based on the second domain name, and a second request message is sent to the first distribution node based on the IP address of the first distribution node. The second request message is used to request the first resource and carries the second domain name. Receive the first resource sent by the first distribution node.
2. The method according to claim 1, characterized in that, Before sending the first request message to the PCDN scheduling system, the method further includes: A first domain name resolution request is sent to the local DNS, the first domain name resolution request being used to request the resolution of the first domain name; the first domain name resolution request is recursively resolved by the local DNS to the CDN converged scheduling system and returns the canonical name of the PCDN scheduling system; Receive the first resolution result sent by the local DNS, wherein the first resolution result includes the canonical name of the PCDN scheduling system; Send a second domain name resolution request to the local DNS, the second domain name resolution request being used to request the resolution of the canonical name of the PCDN scheduling system; Receive the second resolution result sent by the local DNS, the second resolution result including the IP address of the PCDN scheduling system; Sending the first request message to the PCDN scheduling system includes: The first request message is sent to the PCDN scheduling system based on the IP address of the PCDN scheduling system.
3. The method according to claim 1, characterized in that, The step of obtaining the IP address of the first distribution node based on the second domain name includes: A third-domain name resolution request is sent to the local DNS, the third-domain name resolution request being used to request the resolution of the second domain name; the third-domain name resolution request is recursively resolved by the local DNS to the PCDN domain name resolution system and returns the IP address of the first distribution node; Receive the third resolution result sent by the local DNS, the third resolution result including the IP address of the first distribution node.
4. The method according to any one of claims 1 to 3, characterized in that, Before receiving the first resource sent by the first distribution node, the method further includes: Perform certificate trustworthiness verification with the first distribution node.
5. A resource scheduling method, characterized in that, The method, applied to the PCDN scheduling system, includes: Receive a first request message sent by the client, the first request message is used to request a first resource, and the first request message carries a first domain name; The distribution node where the first resource is located is identified as the first distribution node. A first response message is sent to the client, the first response message carrying a second domain name; wherein, the second domain name is generated based on the first domain name and the IP address of the first distribution node, or, the second domain name is the domain name of the first distribution node; the second domain name is used by the client to obtain the IP address of the first distribution node, and to request the first resource from the first distribution node based on the IP address of the first distribution node.
6. The method according to claim 5, characterized in that, Before sending the first response message to the client, the method further includes: An encryption operation is performed based on the first domain name and the IP address of the first distribution node to obtain the encrypted second domain name; Load the CA certificate for the wildcard domain corresponding to the second domain name in the first distribution node.
7. The method according to claim 5, characterized in that, Before sending the second response message to the client, the method further includes: The system receives domain name information sent by the PCDN domain name resolution system. The domain name information includes the domain names of one or more distribution nodes, and the domain names of the one or more distribution nodes are assigned by the PCDN domain name resolution system.
8. A resource scheduling device, characterized in that, Applied to a client, the device includes: The sending unit is used to send a first request message to the PCDN scheduling system. The first request message is used to request a first resource and carries a first domain name. The receiving unit is configured to receive a first response message sent by the PCDN scheduling system, wherein the first response message carries a second domain name; wherein the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node; The acquisition unit is used to acquire the IP address of the first distribution node based on the second domain name; The sending unit is further configured to send a second request message to the first distribution node based on the IP address of the first distribution node, the second request message being used to request the first resource, and the second request message carrying the second domain name; The receiving unit is further configured to receive the first resource sent by the first distribution node.
9. A resource scheduling device, characterized in that, The device, applied to the PCDN scheduling system, includes: The receiving unit is configured to receive a first request message sent by the client, the first request message being used to request a first resource, and the first request message carrying a first domain name; The query unit is used to query whether the distribution node where the first resource is located is the first distribution node; The sending unit is configured to send a first response message to the client, the first response message carrying a second domain name; wherein the second domain name is generated based on the first domain name and the IP address of the first distribution node, or the second domain name is the domain name of the first distribution node; the second domain name is used by the client to obtain the IP address of the first distribution node, and to request the first resource from the first distribution node based on the IP address of the first distribution node.
10. A PCDN system, characterized in that, The PCDN system includes a PCDN scheduling system, a PCDN domain name resolution system, and one or more distribution nodes; wherein... The PCDN scheduling system is used to execute the steps in the method according to any one of claims 5 to 7; The PCDN domain name resolution system is used to receive a third domain name resolution request recursively from the client's local DNS, the third domain name resolution request being used to request the resolution of the second domain name; and to return the IP address of the first distribution node to the local DNS; the IP address of the first distribution node is used by the client to request the first distribution node to obtain the first resource.
11. The system according to claim 10, characterized in that, The PCDN domain name resolution system is also used to assign domain names to the one or more distribution nodes and send domain name information to the PCDN scheduling system, wherein the domain name information includes the domain names of the one or more distribution nodes.
12. A processing apparatus, characterized in that, include: A processor and a memory for storing a computer program, the processor for calling and running the computer program stored in the memory to perform the method as described in any one of claims 1 to 4, or the method as described in any one of claims 5 to 7.
13. A computer-readable storage medium, characterized in that, Used to store a computer program that causes a computer to perform the method as described in any one of claims 1 to 4, or the method as described in any one of claims 5 to 7.
14. A computer program product, characterized in that, It includes computer program instructions that cause a computer to perform the method as described in any one of claims 1 to 4, or the method as described in any one of claims 5 to 7.
Citation Information
Patent Citations
Domain name resolution method, device and system
CN104243627A
Resource scheduling method and system
CN114222168A