CDN node origin scheduling system, method, server, and storage media

By setting up two backup domain name servers in the CDN node origin dispatch system and monitoring the CDN node status in real time, the problems of origin information delay and poor system reliability under abnormal conditions are solved, enabling rapid data acquisition that avoids abnormal nodes and improving system stability and efficiency.

CN115914398BActive Publication Date: 2026-04-03ALIBABA (CHINA) CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-22
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

The existing CDN node origin dispatching system delays the generation of origin information under abnormal circumstances, resulting in data acquisition failure or delay, and the failure of a single domain name server leads to poor system reliability.

Method used

Two backup domain name servers and a back-to-origin information generation system are used to monitor the CDN node status in real time, generate and store back-to-origin information, and promptly notify the domain name server to bypass the abnormal node when an anomaly is detected. The load balancing algorithm is used to allocate a non-abnormal upstream node to the CDN node.

Benefits of technology

It improves the reliability and response speed of the CDN node origin scheduling system, avoids data acquisition failures caused by abnormal nodes, and ensures the stability and efficiency of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115914398B_ABST
    Figure CN115914398B_ABST
Patent Text Reader

Abstract

This application provides a CDN node origin-pull scheduling system, method, server, and storage medium. The system includes: a first and a second domain name server, an origin-pull information generation system, and multiple CDN nodes. The origin-pull information generation system generates origin-pull information for multiple CDN nodes based on their status information and sends it to the two domain name servers respectively. If the first CDN node is determined to be abnormal, an abnormality notification message is sent to both domain name servers. The second CDN node sends an origin-pull query request to either the first or second domain name server. The first or second domain name server, based on the target origin-pull information corresponding to the second CDN node, if it determines from the abnormality notification message that the first CDN node exists in the target origin-pull information, then feeds back the IP address of the third CDN node in the target origin-pull information to the second CDN node. This scheme improves the reliability of the scheduling system and allows for timely avoidance of abnormal nodes during origin-pull operations.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of Internet technology, and in particular to a CDN node origin scheduling system, method, server, and storage medium. Background Technology

[0002] A Content Delivery Network (CDN) system relies on CDN nodes deployed in various locations to enable users to access the content they need from the nearest location through functional modules such as load balancing, content distribution, and scheduling, thereby reducing network congestion and improving user access response speed.

[0003] CDN nodes can be divided into two categories: edge nodes and relay nodes (excluding edge nodes). When an end user accesses an edge node and triggers a data request, if the edge node does not cache the corresponding data locally, it obtains origin information from the Domain Name System (DNS) server to determine the next-level relay node to which the request should be retrieved. The edge node then pulls the data from that relay node. If the relay node still does not cache the data, the process continues until the request reaches the origin server corresponding to the requested data (the source that provides the data).

[0004] To execute origin pull operations based on the aforementioned origin pull information, the scheduling system needs to pre-generate origin pull information for each node in the CDN system based on their status and store it in the DNS server. The process of generating origin pull information is essentially the allocation and scheduling of origin pull nodes for each CDN node, which is time-consuming. When some nodes in the CDN system experience abnormalities, the new origin pull information generated based on this abnormal status will have a significant delay before reaching the DNS server. Until then, the old origin pull information is used, which may result in data being unavailable when pulling back to the abnormal CDN node. Furthermore, if the DNS server malfunctions, the CDN nodes will be unable to function properly due to the inability to obtain origin pull information. Summary of the Invention

[0005] This invention provides a CDN node origin retrieval scheduling system, method, server, and storage medium, which enables rapid bypassing of abnormal CDN nodes when retrieving data from the origin, thereby improving the reliability of the scheduling system.

[0006] In a first aspect, embodiments of the present invention provide a CDN node origin-waiting scheduling system, the system comprising:

[0007] First domain name server, second domain name server, origin information generation system, multiple CDN nodes;

[0008] The origin information generation system is used to generate origin information corresponding to the multiple CDN nodes based on the status information of the multiple CDN nodes, and send the origin information corresponding to the multiple CDN nodes to the first domain name server and the second domain name server respectively; and if it is determined that the status information of the first CDN node meets the set abnormal conditions, an abnormal notification message corresponding to the first CDN node is sent to the first domain name server and the second domain name server.

[0009] The second CDN node among the plurality of CDN nodes is used to send a back-to-origin query request to the first domain name server or the second domain name server.

[0010] The first domain name server or the second domain name server is used to determine the target origin information corresponding to the second CDN node according to the origin query request, and if it is determined according to the abnormal notification message that the first CDN node exists in the target origin information, then the IP address of the third CDN node in the target origin information is fed back to the second CDN node.

[0011] Secondly, embodiments of the present invention provide a CDN node origin-fetching scheduling method, applied to an origin-fetching information generation server, the method comprising:

[0012] Obtain the status information of multiple CDN nodes;

[0013] Generate origin information corresponding to the multiple CDN nodes based on the status information of the multiple CDN nodes;

[0014] The origin information corresponding to the multiple CDN nodes is sent to the first domain name server and the second domain name server respectively.

[0015] If the status information of the first CDN node is determined to meet the set abnormal conditions, an abnormal notification message corresponding to the first CDN node is sent to the first domain name server and the second domain name server, so that the second CDN node sends a back-to-origin query request to the first domain name server or the second domain name server. When the corresponding domain name server determines that the first CDN node exists in the target back-to-origin information corresponding to the second CDN node according to the abnormal notification message, it feeds back the IP address of the third CDN node in the target back-to-origin information to the second CDN node.

[0016] Thirdly, embodiments of the present invention provide a CDN node origin-following scheduling device, applied to an origin-following information generation server, the device comprising:

[0017] The acquisition module is used to obtain the status information of multiple CDN nodes;

[0018] The generation module is used to generate origin information corresponding to the multiple CDN nodes based on the status information of the multiple CDN nodes;

[0019] The sending module is used to send the origin information corresponding to the plurality of CDN nodes to the first domain name server and the second domain name server respectively; and, if it is determined that the status information of the first CDN node meets the set abnormal conditions, it sends an abnormal notification message corresponding to the first CDN node to the first domain name server and the second domain name server, so that the second CDN node sends an origin query request to the first domain name server or the second domain name server. When the corresponding domain name server determines that the first CDN node exists in the target origin information corresponding to the second CDN node according to the abnormal notification message, it feeds back the IP address of the third CDN node in the target origin information to the second CDN node.

[0020] Fourthly, embodiments of the present invention provide a server, including: a memory, a processor, and a communication interface; wherein, the memory stores executable code, and when the executable code is executed by the processor, the processor executes the CDN node origin scheduling method as described in the second aspect.

[0021] Fifthly, embodiments of the present invention provide a non-transitory machine-readable storage medium storing executable code, wherein when the executable code is executed by a processor of a server, the processor is able to at least implement the CDN node origin scheduling method as described in the second aspect.

[0022] In the CDN node origin scheduling scheme provided in this embodiment of the invention, two backup domain name servers are set up. For example, when the first domain name server fails, the second domain name server is used to overcome the poor reliability problem of the scheduling system caused by a single point of failure. The origin information generation system obtains the status information of multiple CDN nodes and generates origin information corresponding to multiple CDN nodes based on the status information of multiple CDN nodes, and sends the origin information corresponding to multiple CDN nodes to the two domain name servers respectively. Then, assuming that the origin information generation system determines that the first CDN node is abnormal based on the status information of multiple CDN nodes, it directly notifies the two domain name servers, so that the two domain name servers can be informed of the abnormal situation of the CDN node in a timely manner. When a second CDN node among multiple CDN nodes needs to retrieve data from its parent CDN node, it sends a retrieval query request to either the first or second DNS server. Upon receiving the request, the DNS server determines the target retrieval information for the second CDN node from the retrieval information stored for each of the multiple CDN nodes. If, based on received anomaly notification messages, it determines that an anomalous first CDN node exists within the target retrieval information, it only sends the IP address of the non-abnormal third CDN node in the target retrieval information to the second CDN node. This allows the second CDN node to retrieve the required data from the non-abnormal third CDN node, thus avoiding the anomalous first CDN node. Attached Figure Description

[0023] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0024] Figure 1 This is a schematic diagram of the composition of a CDN system provided in an embodiment of the present invention;

[0025] Figure 2 This is a schematic diagram of a CDN node origin scheduling system provided in an embodiment of the present invention;

[0026] Figure 3 This is a schematic diagram of another CDN node origin scheduling system provided in an embodiment of the present invention;

[0027] Figure 4 This is a schematic diagram of another CDN node origin scheduling system provided in an embodiment of the present invention;

[0028] Figure 5 This is a schematic diagram of a CDN node origin scheduling system provided in an embodiment of the present invention;

[0029] Figure 6 A flowchart of a CDN node origin-back scheduling method provided in an embodiment of the present invention;

[0030] Figure 7 This is a schematic diagram of the structure of a CDN node origin scheduling device provided in an embodiment of the present invention;

[0031] Figure 8 This is a schematic diagram of the structure of a server provided in this embodiment. Detailed Implementation

[0032] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0033] Furthermore, the timing of the steps in the following method embodiments is merely an example and not a strict limitation.

[0034] The CDN node origin scheduling scheme provided in this embodiment of the invention can allocate the upstream CDN node for origin scheduling to each node in the CDN system.

[0035] It should be noted that, in this article, "origin pull" refers to a situation where the user's required data is not cached on the current CDN node, and a request is made to the next higher-level CDN node (which can be called the origin pull CDN node) to retrieve the data. Through this step-by-step origin pull process, the data can eventually be obtained from a CDN node that caches the data or from the origin server that provides the data, and ultimately delivered to the user's terminal.

[0036] To facilitate understanding, let's take a CDN system as an example and first combine... Figure 1 This example illustrates the composition and working principle of a CDN system.

[0037] like Figure 1 As shown, a CDN system includes several edge nodes (such as CDN node L1a, CDN node L1b, ..., CDN node L1m) and several relay nodes (such as CDN node L2a, CDN node L2b, ..., CDN node Ln). These edge nodes and relay nodes are essentially data transmission and caching nodes. In addition, the CDN system also includes servers that provide content services (i.e., the origin server), such as... Figure 1 The content server 1 and content server 2 shown are examples of content servers for two different companies.

[0038] Among them, edge nodes can form the access network, corresponding to the bandwidth of the terminal users served by the edge nodes; relay nodes form the core network, corresponding to the bandwidth of the edge nodes and relay nodes accessing the upper-level CDN nodes.

[0039] In practical applications, each edge node is known; that is, it is known which CDN nodes are configured to be used as edge nodes, and all other CDN nodes are used as relay nodes. Of course, in some embodiments, some edge nodes can also be used as relay nodes simultaneously.

[0040] In practical applications, edge nodes and relay nodes can be deployed in different geographical areas to achieve CDN system coverage in a wider range. For end users in a certain geographical area, they can access an edge node nearby to obtain video data, such as that provided by the content server 1 mentioned above, through the CDN system.

[0041] exist Figure 1 In this context, directed connections between different CDN nodes are used to illustrate the origin-pull relationship between CDN nodes. For example, if CDN node L1a is connected to CDN node L2a, it means that CDN node L2a is the parent CDN node of CDN node L1a. Similarly, if CDN node L1b is connected to both CDN nodes L2a and L2b, it means that both CDN nodes L2a and L2b are the parent CDN nodes of CDN node L1b.

[0042] Taking the origin-pull link of CDN nodes L1b, L2b, and Ln as shown in the diagram as an example, when a user terminal connects to CDN node L1b, assuming it triggers a data retrieval request to CDN node L1b for a certain video data (such as a live video or a movie) provided by content server 1, CDN node L1b, upon receiving the data retrieval request, first checks whether it has the video data cached locally. If it does, it directly sends the data back to the user terminal; otherwise, it retrieves the data from the origin of the next-level CDN node L2b to request the video data from CDN node L2b. Similarly, CDN node L2b first checks whether it has the video data cached locally. If it does, it directly sends the data back to CDN node L1b so that it can send the data back to the user terminal; otherwise, it continues to retrieve the data from the origin of the next-level CDN node Ln. Similarly, CDN node Ln first determines whether the video data is cached locally. If it is, it directly feeds back to CDN node L2b. Otherwise, it goes back to the origin content server 1, requests the video data from the content server 1, and then feeds it back to the user terminal level by level along the above-mentioned origin-back link.

[0043] Therefore, in order to complete the above data transmission process, it is necessary to pre-determine the corresponding origin CDN node for each CDN node, that is, to generate origin information corresponding to each CDN node, and to be able to know the corresponding origin CDN node when each CDN node needs to perform origin operation, that is, when there is no cached data requested by the end user locally, so as to send a data retrieval request to the origin CDN node.

[0044] In this embodiment of the invention, the system that provides the above-mentioned origin information generation and sending functions is referred to as the CDN node origin scheduling system. The following is in conjunction with... Figure 2 This example illustrates the composition and working principle of a CDN node origin scheduling system.

[0045] like Figure 2 As shown, the CDN node origin dispatch system includes: a DNS server, a stateful inspection subsystem, an origin information generation server, and multiple CDN nodes to be dispatched. These CDN nodes are, for example, Figure 1 The diagram illustrates several CDN nodes included in a CDN system.

[0046] The status detection subsystem periodically checks the status information of multiple CDN nodes and sends the detected status information to the origin information generation server in real time. The origin information generation server generates origin information for each CDN node based on the received status information and sends the generated origin information to the DNS server. Figure 2 Taking CDN node L1a as an example, when CDN node L1a receives a data retrieval request triggered by a user terminal for content server 1 (i.e., containing the service domain name x corresponding to content server 1), and finds that the corresponding data is not cached locally, it triggers a back-to-origin query request to the DNS server to query its corresponding back-to-origin CDN node. This back-to-origin query request includes the service domain name x and the identifier of CDN node L1a. Based on the service domain name x and the identifier of CDN node L1a, the DNS server determines the back-to-origin information corresponding to CDN node L1a in its stored back-to-origin information. Assuming that this back-to-origin information includes the IP address of CDN node L2a, the DNS server feeds back the IP address of CDN node L2a to CDN node L1a, so that L1a can send a data retrieval request to CDN node L2a based on that IP address. Here, CDN node L2a is the back-to-origin CDN node of CDN node L1a.

[0047] In practice, a CDN node can be used by more than one content provider, thus allowing different service domains from different content providers to be configured within that CDN node. Therefore, the scheduling system actually allocates origin CDN nodes to each CDN node based on the specific service domains within each CDN node. If a CDN node is configured with service domain A, then its origin CDN nodes are also configured with service domain A; that is, both CDN nodes are used by the same content provider. Simply put, the CDN system can identify the set of CDN nodes used by the same service domain, and within this set, each CDN node is assigned its parent-level origin CDN node. In this embodiment of the invention, for ease of understanding, the actual situation is simplified to all CDN nodes corresponding to the same content provider, i.e., the same content server.

[0048] In practical applications, the status detection subsystem can be configured to detect CDN node status information at a relatively short interval to promptly understand the node's status, typically at the second level. However, the origin information generation server needs to combine the status information of all CDN nodes and use a pre-defined scheduling algorithm to generate corresponding origin information for each CDN node—that is, to assign each CDN node its corresponding parent origin CDN node. This calculation process is time-consuming, often taking several minutes (e.g., 3 or 5 minutes). Therefore, for example, when CDN node L2a is abnormal, based on the above process, the generation time of new origin information based on this abnormality will be relatively late. Consequently, the DNS server will receive this new origin information relatively late. During this period, CDN node L1a, which sends an origin query request to the DNS server, will still receive the previous origin information (the old origin information). This means that if CDN node L1a's origin CDN node L2a is abnormal, then CDN node L1a may not be able to obtain the corresponding data from its origin CDN node L2a. Abnormal situations of CDN nodes include excessive packet loss rate and system crashes.

[0049] To make it easier to understand, let's illustrate the above delay scenario with an example:

[0050] Assuming the detection cycle is 10 seconds, and the source information generation server takes 5 minutes to complete each source information calculation and processing cycle, the source information generation cycle is assumed to be 5 minutes.

[0051] Assume that at time T0, the origin information generation server has generated origin information for multiple CDN nodes and sent it to the DNS server. For ease of description, this will be referred to as the first set of origin information.

[0052] Suppose that at time T1, the state detection subsystem detects the state information of multiple servers and sends it to the source information generation server, but assume that the source information generation server has not yet reached the next source information generation time.

[0053] Assume that at time T2, 10 seconds after time T1, the status detection subsystem detects the status information of multiple servers again and sends it to the origin information generation server. Also assume that the origin information generation server has reached its next origin information generation time. Based on the status information of the multiple servers at time T2, the origin information generation server generates the corresponding origin information for each server, called the second set of origin information. Assume this process takes 5 minutes. Additionally, assume that at time T2, the CDN node L2a is found to be abnormal.

[0054] Suppose that a few seconds after time T2, at time T3, CDN node L1a triggers a back-to-origin query request to the DNS server. Since the DNS server stores the first set of back-to-origin information at this time (the second set of back-to-origin information has not yet been generated), it determines the corresponding back-to-origin CDN node L2a based on the first set of back-to-origin information and sends the IP address of CDN node L2a back to CDN node L1a. CDN node L1a sends a data retrieval request to CDN node L2a based on this IP address. However, since CDN node L2a is actually abnormal at this time, CDN node L2a may not be able to receive the data retrieval request, or even if it receives it, it may not be able to retrieve the corresponding data, or the network quality of CDN node L2a may be poor, causing data transmission to be slow, resulting in CDN node L1a being unable to obtain the corresponding data or unable to obtain the corresponding data smoothly. Ultimately, this results in the end user who triggered the above data retrieval request not being able to obtain the corresponding data.

[0055] Assume that at time T4, after time T3, the second set of origin lookup information has been generated and updated in the DNS server. Since the generation of this second set of origin lookup information already considered the possibility of anomalies in CDN node L2a, using the same example of CDN node L1a, its origin lookup information will no longer contain the IP address of CDN node L2a. Instead, the new origin lookup information will contain the IP address of CDN node L2c. Therefore, if CDN node L1a sends another origin lookup query request to the DNS server after time T4, the response will be the IP address of CDN node L2c, thus avoiding the possibility of an abnormal CDN node L2a.

[0056] Based on the above examples, it can be seen that if the DNS server malfunctions, the CDN nodes will be unable to retrieve origin information from the DNS server, thus failing to obtain data normally. Furthermore, CDN nodes cannot promptly avoid their malfunctioning upstream origin CDN nodes, leading to data retrieval failure.

[0057] Therefore, embodiments of the present invention provide another CDN node origin scheduling system, such as... Figure 3 As shown, the CDN node origin scheduling system includes: a first domain name server, a second domain name server, an origin information generation system, and multiple CDN nodes.

[0058] The primary domain name server could be an HttpDNS server, and the secondary domain name server could be a standard DNS server. These two servers serve as backups for each other; if one fails, the other can be used. Since HttpDNS servers are based on the TCP protocol, their reliability is superior to DNS servers based on the UDP protocol. Therefore, optionally, the HttpDNS server can be configured to be used preferentially.

[0059] It should be noted that the information stored in these two name servers is identical, meaning the same origin-fetching information is stored twice. Furthermore, the number of name servers mentioned above is merely an example; in practice, three or more servers could be used. In practical applications, the scheduling system described above can deploy multiple (e.g., two) identical name servers, or multiple different name servers.

[0060] Optionally, these two domain name servers can be of different types, such as domain name servers using different protocols, one using the HTTP protocol and the other using the DNS protocol. This way, if one protocol malfunctions, a domain name server using the other protocol can be used, avoiding the simultaneous failure of two domain name servers using the same protocol.

[0061] In practical applications, the order in which the two name servers are used can be configured: for example, if the first name server is functioning correctly, it is used; otherwise, the second name server is used. Here, it is assumed that the reliability of the first name server is superior to that of the second name server; for example, the reliability of an HttpDNS server is superior to that of a DNS server. Furthermore, the "use" mentioned here refers to sending origin query requests to the name server.

[0062] and Figure 2Similar to the illustrated embodiment, in this embodiment, the origin information generation system may include a status detection subsystem and an origin information generation server. It is used to detect the status information of multiple CDN nodes and generate origin information corresponding to each CDN node based on the detected status information, and then sends the generated origin information to the two aforementioned domain name servers.

[0063] In addition, in this embodiment, the origin information generation system is also used to send an anomaly notification message corresponding to the first CDN node to the first domain name server and the second domain name server if it is determined that the status information of the first CDN node meets the set anomaly conditions. The first CDN node is any one of multiple CDN nodes, and the anomaly condition is, for example, any one of the following: downtime, packet loss rate exceeding a set threshold, etc.

[0064] In practical applications, the status information of CDN nodes may include, for example, CPU level, memory level, CDN node bandwidth, packet loss rate, network connection quality between CDN nodes, and so on.

[0065] When a second CDN node (such as CDN node L1b in the diagram) needs to send an origin query request to a domain name server, it sends the request to either the first or second domain name server. Optionally, if the first domain name server is functioning normally, the request is sent to it; if the first domain name server is malfunctioning, the request is sent to the second domain name server. The second CDN node (such as CDN node L1b) can determine that the first domain name server is malfunctioning if it detects a connection failure to the first domain name server or if it does not receive a response within a set time after sending the origin query request.

[0066] Therefore, it can be inferred that the origin query request sent by the second CDN node (e.g., CDN node L1b) is received by either the first or second domain name server. The first or second domain name server determines the target origin information corresponding to the second CDN node based on the received origin query request. Assume that the target origin information includes the IP address of the first CDN node (e.g., CDN node L2a) and the IP address of the third CDN node (e.g., CDN node L2b). Then, after the first or second domain name server finds the target origin information corresponding to the second CDN node (e.g., CDN node L1b), based on the received anomaly notification message, it determines that the first CDN node (e.g., CDN node L2a) exists in the target origin information. At this point, only the IP address of the non-abnormal third CDN node (e.g., CDN node L2b) in the target origin information is fed back to the second CDN node (e.g., CDN node L1b); the IP address of the abnormal first CDN node (e.g., CDN node L2a) is not fed back to the second CDN node (e.g., CDN node L1b). In this way, based on the above abnormal node notification, when the first or second domain name server receives the origin query request from the second CDN node (such as CDN node L1b), it can promptly control the second CDN node (such as CDN node L1b) to bypass its abnormal origin CDN node (such as CDN node L2a), ensuring that the second CDN node (such as CDN node L1b) can complete the data acquisition through other normal origin CDN nodes.

[0067] The origin-pull information generation system obtains the CDN node status information, which can be broadly categorized into the following dimensions: one reflecting load status, such as CPU level, memory level, and bandwidth; another reflecting network quality, such as network connection quality between CDN nodes and packet loss rate of CDN nodes; and a third reflecting cost, such as bandwidth pricing information for each CDN node. Using this status information as input, the origin-pull information generation system employs a pre-defined scheduling algorithm to generate corresponding origin-pull information for each CDN node, thus determining its origin CDN node. This scheduling algorithm can be a load balancing algorithm. The process of generating origin-pull information based on this scheduling algorithm can be implemented using existing related technologies, and will not be elaborated upon here.

[0068] In the solution provided in the above embodiments, by setting up multiple domain name servers as backups for each other, the risks caused by the failure of a single domain name server can be avoided. Furthermore, when a CDN node failure is detected, each domain name server is promptly notified, enabling each domain name server to adjust the origin CDN node information fed back to the CDN node sending the origin query request based on the failure notification message, thus mitigating the risks posed by the abnormal CDN node.

[0069] As described above, the origin information generation system may include an origin information generation server and a status detection subsystem. In one optional embodiment, the status detection subsystem may include a status detection center server, which periodically sends status query requests to each CDN node at a set detection period. Each CDN node reports its own status information, and the status detection center server aggregates the status information of each CDN node and sends it to the origin information generation server. Alternatively, in one optional embodiment, the status detection subsystem may include a status detection component (which may be a plugin, application, etc.) located within each CDN node. Each CDN node periodically detects its own status information through its internal status detection component at a set detection period and sends it to the origin information generation server.

[0070] Alternatively, in an alternative embodiment, such as Figure 4 As shown, the origin information generation system includes: a status detection component located in multiple CDN nodes, a status detection center server, and an origin information generation server.

[0071] Multiple CDN node status detection components detect the status information of corresponding CDN nodes based on a preset detection period and upload it to the status detection center server. The status detection center server sends the status information of multiple CDN nodes corresponding to each detection period to the origin information generation server. That is, whenever the status detection center server receives the status information of each server within a detection period, it promptly sends the status information to the origin information generation server. The origin information generation server generates origin information for multiple CDN nodes based on a preset generation period and the status information of multiple CDN nodes corresponding to the current generation period. Among them, the detection time corresponding to the status information of multiple CDN nodes corresponding to the current generation period is closest to the current generation time, that is, the detection period closest to the current generation time. The generation period is longer than the detection period.

[0072] like Figure 4 As shown in the diagram, under the aforementioned architecture of the origin information generation system, when the status detection center server determines that a CDN node is in an abnormal state based on the status information of a CDN node, it directly sends the corresponding abnormal notification message to each domain name server through the direct connection between the server and each domain name server.

[0073] Figure 5 This is a schematic diagram of a CDN node origin scheduling system provided in an embodiment of the present invention, as shown below. Figure 5As shown, the CDN node origin dispatch system includes: a first domain name server, a second domain name server, an origin information generation system, and multiple CDN nodes illustrated in the diagram. Optionally, the origin information generation system includes: a status detection component located within the multiple CDN nodes, a status detection center server, and an origin information generation server.

[0074] As mentioned above, the status detection component is used to periodically detect the status information of the CDN node and upload it to the status detection center server. The status detection center server summarizes the status information of each server and sends it to the origin information generation server.

[0075] The origin server, upon determining the need for origin information generation based on a set generation cycle, or after the previous generation of origin information has been completed and the need for the next generation, generates first origin information for multiple CDN nodes based on their first status information, and generates second origin information for multiple CDN nodes based on their second status information. Then, it sends the first and second origin information for each CDN node to the first and second domain name servers, respectively.

[0076] In fact, the first origin information mentioned above is the regular origin information, which is the origin information generated according to the scheduling algorithm in the aforementioned embodiment and combined with the status information of each CDN node. The second origin information mentioned above can actually be called abnormal escape origin information, which is the origin information used only when there are unusable abnormal CDN nodes in the regular origin information.

[0077] The main difference between the generation processes of the first and second source tracing information lies in the different state information used, i.e., the different focuses. In summary, the first state information used to generate the first source tracing information corresponds to multiple state indicators, while the second state information used to generate the second source tracing information corresponds to some of these multiple state indicators. For example, if the multiple state indicators include indicators reflecting load status, network quality, and cost, then the generation process of the first source tracing information comprehensively considers all three types of indicators. However, the generation process of the second source tracing information may only consider indicators reflecting load status and network quality, without considering cost. Simply put, the generation process of the first source tracing information focuses more on the goal of global optimization, that is, comprehensively considering more state information, while the generation process of the second source tracing information focuses more on local optimization, that is, considering some key state information to meet the minimum requirement of "being able to work normally".

[0078] For example, for a CDN node 'a', suppose its origin CDN node is determined to be CDN node 'b' based on the first state information of each CDN node, and its origin CDN node is determined to be CDN node 'c' based on the second state information of each CDN node. In reality, the network connection quality between CDN node 'b' and CDN node 'a' is good, CDN node 'b's load is not high, and the cost of using CDN node 'b' is lower. However, the network connection quality between CDN node 'c' and CDN node 'a' is still good, CDN node 'c's load is not high, and using CDN node 'c' might incur higher costs. Because less state information is considered in generating the second origin information, the computational cost of the second origin information is lower than that of the first origin information.

[0079] Based on the above examples, it can be simply assumed that when generating the first origin-following information, cost is prioritized while ensuring basic network connection quality and a moderate load. Conversely, when generating the second origin-following information, the load on the CDN nodes is prioritized while ensuring basic network connection quality. Therefore, the priority of the same status indicator differs between the first and second status information.

[0080] For the same CDN node, since its corresponding second origin information is only used when an abnormal CDN node exists in the first origin information, there are no duplicate CDN nodes in the first and second origin information for the same CDN node. The origin information generation server marks the second origin information corresponding to the same CDN node as being used when an abnormal CDN node exists in the corresponding first origin information, and sends the marked second origin information along with the corresponding first origin information to two name servers so that the name servers can distinguish between the two origin information.

[0081] In addition, if the origin information generation system (such as the status detection center server) detects that the first CDN node (such as CDN node L2a shown in the figure) is abnormal, it will promptly send an abnormality notification message to the two domain name servers.

[0082] Suppose a second CDN node (e.g., CDN node L1b) sends a back-to-origin query request to a first domain name server. The first domain name server determines the target first back-to-origin information and the target second back-to-origin information corresponding to the second CDN node (e.g., CDN node L1b). Figure 5 As shown in the figure, it is assumed that the target first back-to-origin information includes the IP addresses of CDN node L2a and CDN node L2b, and the target second back-to-origin information includes the IP address of CDN node L2c.

[0083] After receiving the target first origin information and the target second origin information, the first domain name server determines, based on the received anomaly notification message, the first CDN node (CDN node L2a) in the target first origin information that has an anomaly and will be used preferentially. Then, it determines the IP address of the third CDN node from the remaining CDN nodes in the target first origin information and the CDN nodes included in the target second origin information, such as the IP addresses of CDN nodes L2b and L2c, and sends the determined IP addresses of these two origin CDN nodes to CDN node L1b.

[0084] Understandably, if the first CDN node (such as CDN node L2a) is not abnormal, then when the first domain name server determines that there are no abnormal CDN nodes in the target first origin information, it will only use the target first origin information and not the target second origin information. That is, it will only send the IP addresses of each CDN node contained in the target first origin information to the second CDN node (such as CDN node L1b).

[0085] In practical applications, each CDN node is often assigned more than one origin-pull CDN node, and the number of origin-pull CDN nodes returned to a CDN node after it triggers an origin-pull query request is often not one (e.g., set to two) to meet robustness requirements. Based on this, for the aforementioned CDN node L1b, assuming that at least one of the two CDN nodes in the target's first origin-pull information is abnormal, then two CDN nodes are determined from the remaining non-abnormal CDN nodes; if there are fewer than two, they are supplemented from the target's second origin-pull information.

[0086] Suppose CDN node L1b receives the IP addresses of CDN nodes L2b and L2c. CDN node L1b can randomly select one of them to send a back-to-origin query request, or it can select one according to other set selection strategies, such as the consistent hash selection strategy. Under this strategy, different CDN nodes that need to obtain the same data can back-to-origin to the same target CDN node, which may already have the data cached.

[0087] In the above embodiments, the scheduling system has higher reliability through the mutual backup of two domain name servers and the mutual backup mechanism of two origin information generation methods. Furthermore, through the rapid abnormal node detection and escape mechanism (bypassing abnormal CDN nodes), the CDN node that triggers the origin query request can avoid its abnormal origin CDN node more quickly.

[0088] Figure 6 This is a flowchart of a CDN node origin-pull scheduling method provided in an embodiment of the present invention. The method is executed by the origin-pull information generation server in the above embodiment. Figure 6 As shown, the method includes the following steps:

[0089] 601. Obtain the status information of multiple CDN nodes.

[0090] 602. Generate origin information corresponding to multiple CDN nodes based on the status information of multiple CDN nodes.

[0091] 603. Send the origin information corresponding to multiple CDN nodes to the first domain name server and the second domain name server respectively.

[0092] 604. If it is determined that the status information of the first CDN node meets the set abnormal conditions, an abnormal notification message corresponding to the first CDN node is sent to the first domain name server and the second domain name server, so that the second CDN node sends a back-to-origin query request to the first domain name server or the second domain name server. When the corresponding domain name server determines that the first CDN node exists in the target back-to-origin information corresponding to the second CDN node according to the abnormal notification message, it feeds back the IP address of the third CDN node in the target back-to-origin information to the second CDN node.

[0093] In this embodiment, the processing procedure of the source information generation server can be referred to the relevant descriptions in the other embodiments mentioned above, and will not be repeated here.

[0094] The following will describe in detail one or more embodiments of the CDN node origin scheduling apparatus of the present invention. Those skilled in the art will understand that these apparatuses can be configured using commercially available hardware components through the steps taught in this solution.

[0095] Figure 7 This is a schematic diagram of a CDN node origin-fetching scheduling device provided in an embodiment of the present invention. The device is located on the origin-fetching information generation server, such as... Figure 7 As shown, the device includes: an acquisition module 11, a generation module 12, and a transmission module 13.

[0096] The acquisition module 11 is used to acquire the status information of multiple CDN nodes.

[0097] The generation module 12 is used to generate origin information corresponding to the multiple CDN nodes based on the status information of the multiple CDN nodes.

[0098] The sending module 13 is used to send the origin information corresponding to the plurality of CDN nodes to the first domain name server and the second domain name server respectively; and, if it is determined that the status information of the first CDN node meets the set abnormal conditions, it sends an abnormal notification message corresponding to the first CDN node to the first domain name server and the second domain name server, so that the second CDN node sends an origin query request to the first domain name server or the second domain name server. When the corresponding domain name server determines that the first CDN node exists in the target origin information corresponding to the second CDN node according to the abnormal notification message, it feeds back the IP address of the third CDN node in the target origin information to the second CDN node.

[0099] Optionally, the status information includes first status information and second status information. The generation module 12 is specifically used to: generate first origin information corresponding to the plurality of CDN nodes based on the first status information of the plurality of CDN nodes; and generate second origin information corresponding to the plurality of CDN nodes based on the second status information of the plurality of CDN nodes. Specifically, there are no duplicate CDN nodes in the first origin information and second origin information corresponding to the same CDN node, and the second origin information corresponding to the same CDN node is used when an abnormal CDN node exists in the corresponding first origin information.

[0100] Optionally, the first state information corresponds to multiple state indicators, and the second state information corresponds to a portion of the multiple state indicators.

[0101] Figure 7 The device shown can perform the steps in the foregoing embodiments. For detailed execution process and technical effects, please refer to the description in the foregoing embodiments, which will not be repeated here.

[0102] In one possible design, the above Figure 7 The structure of the CDN node origin scheduling device shown can be implemented as a server. For example... Figure 8 As shown, the server may include: a processor 21, a memory 22, and a communication interface 23. The memory 22 stores executable code, which, when executed by the processor 21, enables the processor 21 to at least implement the CDN node origin scheduling method provided in the foregoing embodiments.

[0103] In addition, embodiments of the present invention provide a non-transitory machine-readable storage medium storing executable code, which, when executed by a processor of an electronic device, enables the processor to at least implement the CDN node origin scheduling method provided in the foregoing embodiments.

[0104] The device embodiments described above are merely illustrative, and the units described as separate components may or may not be physically separate. 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.

[0105] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of a necessary general-purpose hardware platform, or by a combination of hardware and software. 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 computer product. The present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0106] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention 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; and these 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 the present invention.

Claims

1. A CDN node origin-fetching scheduling system, characterized in that, include: The system consists of a first domain name server, a second domain name server, a origin information generation system, and multiple CDN nodes. The first domain name server and the second domain name server are domain name servers of different types. The origin information generation system is used to generate first origin information corresponding to the plurality of CDN nodes based on first status information of the plurality of CDN nodes, and to generate second origin information corresponding to the plurality of CDN nodes based on second status information of the plurality of CDN nodes. Specifically, there are no duplicate CDN nodes in the first and second origin information corresponding to the same CDN node. The second origin information corresponding to the same CDN node is used when an abnormal CDN node exists in the corresponding first origin information. The first status information corresponds to multiple status indicators, and the second status information corresponds to a portion of the multiple status indicators. The system sends the origin information corresponding to the plurality of CDN nodes to the first domain name server and the second domain name server respectively. Furthermore, if it is determined that the status information of the first CDN node meets the set abnormal conditions, an abnormal notification message corresponding to the first CDN node is sent to the first domain name server and the second domain name server. The second CDN node among the plurality of CDN nodes is used to send a back-to-origin query request to the first domain name server or the second domain name server. The first domain name server or the second domain name server is used to determine the target origin information corresponding to the second CDN node according to the origin query request, and if it is determined according to the abnormal notification message that the first CDN node exists in the target origin information, then the IP address of the third CDN node in the target origin information is fed back to the second CDN node.

2. The system according to claim 1, characterized in that, The first domain name server or the second domain name server is configured to determine the target first origin information and the target second origin information corresponding to the second CDN node according to the origin query request, and if the first CDN node is determined to exist in the target first origin information according to the anomaly notification message, then the third CDN node is determined from the remaining CDN nodes in the target first origin information and the CDN nodes included in the target second origin information.

3. The system according to claim 2, characterized in that, The first domain name server or the second domain name server is further configured to, if it is determined from the abnormal notification message that the first CDN node does not exist in the target first origin information, determine the CDN node contained in the target first origin information as the third CDN node.

4. The system according to any one of claims 1 to 3, characterized in that, The reliability of the first domain name server is better than that of the second domain name server; if the first domain name server is normal, the origin query request is sent to the first domain name server, and if the first domain name server is abnormal, the origin query request is sent to the second domain name server.

5. The system according to any one of claims 1 to 3, characterized in that, The origin information generation system includes: a status detection component located within the plurality of CDN nodes, a status detection center server, and an origin information generation server; The status detection components within the multiple CDN nodes are used to detect the status information of the corresponding CDN nodes based on a preset detection period and upload it to the status detection center server. The status detection center server is used to send the status information of the multiple CDN nodes corresponding to each detection period to the origin information generation server. The origin information generation server is used to generate origin information corresponding to the multiple CDN nodes based on a preset generation period and the status information of multiple CDN nodes corresponding to the current generation period. The detection time corresponding to the status information of the multiple CDN nodes corresponding to the current generation period is close to the current generation time, and the generation period is longer than the detection period.

6. A CDN node origin-waiting scheduling method, characterized in that, Applied to a source information generation server, the method includes: Obtain status information of multiple CDN nodes, the status information including first status information and second status information, the first status information corresponding to multiple status indicators, and the second status information corresponding to a portion of the multiple status indicators; Generate the first origin information corresponding to the multiple CDN nodes based on the first status information of the multiple CDN nodes; The second origin information corresponding to the multiple CDN nodes is generated based on the second status information of the multiple CDN nodes. There are no duplicate CDN nodes in the first origin information and the second origin information corresponding to the same CDN node. The second origin information corresponding to the same CDN node is used when there are abnormal CDN nodes in the corresponding first origin information. The origin information corresponding to the multiple CDN nodes is sent to the first domain name server and the second domain name server respectively, wherein the first domain name server and the second domain name server are domain name servers of different types; If the status information of the first CDN node is determined to meet the set abnormal conditions, an abnormal notification message corresponding to the first CDN node is sent to the first domain name server and the second domain name server, so that the second CDN node sends a back-to-origin query request to the first domain name server or the second domain name server. When the corresponding domain name server determines that the first CDN node exists in the target back-to-origin information corresponding to the second CDN node according to the abnormal notification message, it feeds back the IP address of the third CDN node in the target back-to-origin information to the second CDN node.

7. A server, characterized in that, include: The system includes a memory, a processor, and a communication interface; wherein the memory stores executable code, and when the executable code is executed by the processor, the processor performs the CDN node origin scheduling method as described in claim 6.

8. A non-transitory machine-readable storage medium, characterized in that, The non-transitory machine-readable storage medium stores executable code, which, when executed by the server's processor, causes the processor to perform the CDN node origin scheduling method as described in claim 6.

Citation Information

Patent Citations

  • A method and a terminal for improving the availability of a DNS

    CN109922120A

  • Content access processing method and device, computer equipment and storage medium

    CN110336851A

  • Access request processing method and device and electronic equipment

    CN112153160A

  • Path planning method, CDN (Content Delivery Network) connection establishment method, equipment and storage medium

    CN113301098A