METHOD AND SYSTEM FOR GUARANTEEING RESOURCE UTILIZATION RATE OF WEBSITE USING CONTENT DISTRIBUTION NETWORK
20170331667 · 2017-11-16
Inventors
Cpc classification
H04L67/02
ELECTRICITY
H04L67/025
ELECTRICITY
H04L67/1029
ELECTRICITY
H04L67/568
ELECTRICITY
H04L67/1008
ELECTRICITY
H04L41/0253
ELECTRICITY
International classification
Abstract
The present disclosure relates to a method and system for guaranteeing website resource utilization rate using a content delivery network. The method includes following steps: receiving a domain name resolution request sent by a local domain name server; monitoring a resource load of a website source site corresponding to the domain name resolution request; utilizing monitoring data and according to a predetermined strategy to determine whether a result of the domain name resolution request is an address of the website source site or a content delivery network system; and sending a domain name resolution result to the local domain name server.
Claims
1. A method for guaranteeing website resource utilization rate using a content delivery network, comprising following steps: receiving a domain name resolution request sent by a local domain name server; monitoring a resource load of a website source site corresponding to the domain name resolution request; utilizing monitoring data and according to a predetermined strategy, determining whether a result of the domain name resolution request is an address of the website source site or a content delivery network system; and sending a domain name resolution result to the local domain name server.
2. The method according to claim 1, wherein the method is executed outside of the content delivery network system, and the resolution result is a domain name of the content delivery network system.
3. The method according to claim 1, wherein the method is executed inside the content delivery network system, and the resolution result is an address of an edge server of the content delivery network system.
4. The method according to claim 1, wherein a step of utilizing the monitoring data and according to the predetermined strategy to determine the result of the domain name resolution request is the address of the website source site or the content delivery network system further includes: selecting a scheduling strategy, wherein parameters of the scheduling strategy include a preset upper limit and a preset lower limit of the resource load, and the address of the website source site; and making a decision according to the resource load and a selected scheduling strategy, comprising: resolving the domain name resolution request into the address of the website source site at an initial moment; when the resource load of the website source site is within the preset upper limit and the preset lower limit, remaining a resolution ratio to be unchanged; when the resource load of the website source site exceeds the preset upper limit, increasing the resolution ratio; and when the resource load of the website source site is lower than the preset lower limit, reducing the resolution ratio, wherein the resolution ratio is a ratio of the domain name resolution request being resolved into the content delivery network system.
5. The method according to claim 4, wherein the variation of the resolution ratio is pre-determined.
6. The method according to claim 4, wherein the variation of the resolution ratio ΔR is calculated using a following method: when the resource load of the website source site exceeds the preset upper limit, and the resolution ratio is increased,
ΔR=|F.sub.now−F.sub.upper|/F.sub.upper, and when the resource load of the website source site is lower than the preset lower limit, and the resolution ratio is reduced,
ΔR=|F.sub.now−F.sub.lower|/F.sub.upper, wherein F.sub.now is the resource load of the website source site at a current moment, F.sub.lower is the preset lower limit of the resource load of the website source site, and F.sub.upper is the preset upper limit of the resource load of the website source site.
7. The method according to claim 1, wherein the website source site includes a single address, and the address of the website source site is the single address when utilizing the monitoring data and according to the predetermined strategy to determine the result of the domain name resolution request.
8. The method according to claim 1, wherein the website source site includes a plurality of addresses, and the method further comprising: acquiring an address of the local domain name server according to the domain name resolution request; recognizing a geographic location and a service provider of the local domain name server according to the address of the local domain name server; wherein when utilizing the monitoring data and according to the predetermined strategy to determine the result of the domain name resolution request, the address of the website source site is one or more of the plurality of addresses.
9. The method according to claim 8, further comprising: selecting a corresponding scheduling strategy according to the geographic location and the service provider of the local domain name server, wherein parameters of the scheduling strategy include lines of the service provider, a territory, the domain name or a domain name group, and the address of the website source site.
10. A system for guaranteeing website resource utilization rate using a content delivery network, comprising: a domain name system module to receive a domain name resolution request; a monitor module to monitor a resource load of a website source site corresponding to the domain name resolution request; and a scheduling module to utilize monitoring data and according to a predetermined strategy to determine a result of the domain name resolution request is an address of the website source site or a content delivery network system.
11. The system according to claim 10, wherein the system is independent of the content delivery network system, and a resolution result is a domain name of the content delivery network system.
12. The system according to claim 10, wherein the system is configured inside the content delivery network system, and the resolution result is an address of one of edge servers of the content delivery network system.
13. The system according to claim 10, wherein the scheduling module is configured to execute following steps: configuring a scheduling strategy, wherein parameters of the scheduling strategy include a preset upper limit and a preset lower limit of the resource load, and the address of the website source site; and making a decision according to the resource load and the selected scheduling strategy, comprising: resolving the domain name resolution request into the address of the website source site at an initial moment; when the resource load of the website source site is within the preset upper limit and the preset lower limit, remaining a resolution ratio to be unchanged; when the resource load of the website source site exceeds the preset upper limit, increasing the resolution ratio; and when the resource load of the website source site is lower than the preset lower limit, reducing the resolution ratio, wherein the resolution ratio is a ratio of the domain name resolution request being resolved into the content delivery network system.
14. The system according to claim 13, wherein a variation of the resolution ratio is pre-determined.
15. The system according to claim 13, wherein the variation of the resolution ratio ΔR is calculated using a following method: when the resource load of the website source site exceeds the preset upper limit, and the resolution ratio is increased,
ΔR=|F.sub.now−F.sub.upper|/F.sub.upper, and when the resource load of the website source site is lower than the preset lower limit, and the resolution ratio is reduced,
ΔR=|F.sub.now−F.sub.lower|/F.sub.upper, wherein F.sub.now is the resource load of the website source site at a current moment, F.sub.lower is the preset lower limit of the resource load of the website source site, and F.sub.upper is the preset upper limit of the resource load of the website source site.
16. The system according to claim 10, wherein the website source site includes a plurality of addresses, and the system further comprising: an acquisition module, acquiring an address of a local domain name server according to the domain name resolution request; a recognition module, recognizing a geographic location and a service provider of the local domain name server according to the address of the local domain name server; and when the scheduling module determines the result of the domain name resolution request, the address of the website source site is one or more of the plurality of addresses.
17. The system according to claim 16, wherein the scheduling module is configured to select a corresponding scheduling strategy according to the geographic location and the service provider of the local domain name server, wherein parameters of the scheduling strategy include lines of the service provider, a territory, and the domain name or a domain name group.
18. The system according to claim 10, further comprising a resource module configured to manage resources of the website source site, set a monitoring mode, and save related monitoring configuration information.
19. A system for guaranteeing website resource utilization rate using a content delivery network, comprising: a module configured to receive a domain name resolution request; a module configured to monitor a resource load of a website source site corresponding to the domain name resolution request; and a module configured to utilize monitoring data and according to a predetermined strategy to determine whether a result of the domain name resolution request is an address of the website source site or the content delivery network system.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0027] To make the above-described objects, features and advantages of the present disclosure clearer and easier to understand, specific embodiments of the present disclosure will be made in detail with reference to the accompanying drawings, in which:
[0028]
[0029]
[0030]
[0031]
[0032]
[0033]
[0034]
DETAILED DESCRIPTION
[0035] Website resource utilization rate is mainly reflected in various indicators such as visit traffic and bandwidth usage, and guaranteeing the website resource utilization rate within a reasonable range is a goal pursued by website providers. If the website resource utilization rate is too low, basic IT resources may not be effectively allocated, thereby increasing the operation cost of the website. If the website resource utilization rate is too high, a service response may be slow, thereby harming the user experience and resulting in customer loss.
[0036] Though a CDN may speed up the visit rate to a website and improve the user experience, the website resource utilization rate is not taken into account by the CDN. Accordingly, using the CDN may lower the website resource utilization rate, and most traffic may be carried by the CDN network.
[0037] Embodiments of the present disclosure provide a method for guaranteeing the resource utilization rate of a website using the CDN, which may monitor and adjust the resource utilization rate of the website.
[0038]
[0039] Specifically, an appropriate traffic range may be configured for the website source site 101, representing a resource load. The appropriate traffic range may be defined by a preset upper traffic limit and a preset lower traffic limit. The website source utilization rate guaranteeing system 104 may acquire traffic data of the website source site 101, and make a decision according to the traffic data and a selected scheduling strategy. When the traffic of the website source site 101 is lower than the preset upper traffic limit, the resource utilization rate of the website source site 101 may be within an allowable range, and the domain name resolution request sent by the local DNS server 102 may be resolved into an address of the website source site 101. When the traffic of the website source site 101 is not lower than (equal to or greater than) the preset upper traffic limit, the resource utilization rate of the website source site 101 may be too high, and the resolution ratio may be increased. The resolution ratio refers to a ratio of the domain name resolution request being resolved into the CDN system 105. When the traffic of the website source site 101 falls back to be lower than the preset lower traffic limit, the resource utilization rate of the website source site 101 may be too low, and the ratio of the domain name resolution request being resolved into the CDN system 105 may be lowered. If the traffic of the website source site 101 does not fall back to be lower than the preset lower traffic limit, the resolution ratio may remain unchanged. That is, the website resource utilization rate guaranteeing system 104 may preferentially guide the traffic to the website source site 101, unless the resource utilization rate of the website source site 101 is too high.
[0040]
[0041] That is, the website resource utilization guaranteeing system 604 may, when the domain name is resolved into the CDN system 605, further determine which edge server or cluster the domain name should be resolved into. Specifically,
[0042] The present embodiment may have the same strategy as aforementioned embodiment regarding the traffic redirection, which is described hereinafter.
[0043]
[0044] Step 201, receiving the domain name resolution request sent by the local DNS server 102.
[0045] The domain name resolution request of the local DNS server 102 may be acquired by the sub-domain name provided by the authoritative DNS server 103.
[0046] Step 202, according to the domain name resolution request, obtaining an IP address of the local DNS server 102.
[0047] Step 203, utilizing the IP address to identify a geographic location and internet service provider (ISP) information of the local DNS server 102.
[0048] Step 204, monitoring the resource load of the website source site 101.
[0049] For example, monitoring may include but not limit to monitoring a performance load and a traffic condition of a website server or cluster. More specifically, the website server program resource utilization rate, the CPU load condition, the memory utilization condition, the website request number, and the website connection number, etc. may be monitored.
[0050] Step 205, receiving monitoring data, and selecting an appropriate resolution result according to a predetermined strategy. The resolution result may be an IP address of a website source site or a CDN system.
[0051] For the embodiment illustrated in
[0052] For the embodiment illustrated in
[0053] Step 206, sending the resolution result to the local DNS server 102.
[0054] It should be noted that, Steps 202 and 203 may be implemented only under the condition that the website source site 101 includes a plurality of addresses. In this case, in Step 205, one address may be selected from the plurality of addresses to be the IP address of the website source site according to the predetermined strategy. If the website source site 101 includes only one address, Steps 202 and 203 may be omitted. In Step 205, the address may be directly used as the IP address of the website source site.
[0055]
[0056] Step 301, configuring a traffic scheduling strategy.
[0057] Parameters of the scheduling strategy may include but not limited to A record (IP of a source site), an upper limit of a preset resource load, and a lower limit of the preset resource load.
[0058] Step 302, regularly acquiring the resource load monitoring data of the website source site 101. Here, the resource load may use various different measurement indicators, including but not limited to the resource percentage, the traffic value, etc.
[0059] Step 303, determining whether or not the resource load exceeds the preset upper limit value, if the preset upper limit value is exceeded, Step 304 may be used to increase the resolution ratio into the CDN system, and the next step is Step 310; if the resource load does not exceed the preset upper limit value, Step 305 may be the next step.
[0060] Step 305, determining whether or not the resolution ratio into the CDN system is 0, if the ratio resolved into the CDN system is 0 (namely, not using acceleration service), Step 306 may be the next step, which resolves the domain name into an IP address of the website source site, otherwise, Step 306 may be the next step.
[0061] Step 307, if the resource load is lower than the preset lower limit value, the resolution ratio into the CDN system may be reduced in Step 308, and Step 310 may be the next step, otherwise, the resource load may be between the preset upper limit value and the preset lower limit value, and the resolution ratio of a current domain name may remain the same in Step 309.
[0062] Step 310, selecting a resolution result according to the resolution ratio of the domain name.
[0063] An initial resolution ratio may be set as 0. That is, all domain name resolution requests may be resolved into an address of the website source site. Then the resolution ratio may be re-determined according to traffic variation.
[0064] In one embodiment, a method to determine the resolution ratio may be as follows:
R.sub.cdn=R′.sub.cdn±ΔR (equation 1)
[0065] Where R.sub.cdn is a ratio currently resolved into the CDN system, R′.sub.cdn is a ratio previously resolved into the CDN system, and ΔR represents a variation of the ratio resolved into the CDN system.
[0066] A plurality of methods may be applied to determine ΔR, for example, it may be determined by a user, or may be a preset value of the system.
[0067] ΔR may also be calculated via the resource load (e.g., traffic) of the source site:
[0068] when the source site traffic exceeds the preset upper traffic limit and the resolution ratio needs to be increased:
ΔR=|F.sub.now−F.sub.upper|/F.sub.upper (equation 2)
[0069] when the source site traffic is lower than the preset lower traffic limit and the resolution ratio needs to be decreased:
ΔR=|F.sub.now−F.sub.lower|/F.sub.upper (equation 3)
[0070] Where F.sub.now is the traffic of the website source site at a current moment, F.sub.lower is the preset lower traffic limit of the website source site, and F.sub.upper is the preset upper traffic limit of the website source site.
[0071] In a preferred embodiment, Step 301 may allocate a traffic scheduling strategy for requests with different ISP lines and different geographic locations. Accordingly, the parameters of traffic scheduling strategy may also include ISP lines, a territory, and a domain names (or a domain name group). In this case, different ISP lines may be allowed to share the same strategy.
[0072]
[0073] In embodiments of the present disclosure, the website resource utilization rate guaranteeing system 104 may be implemented by software, hardware, or a combination of software and hardware. For hardware implementation, embodiments described herein may be practiced in one or a plurality of application specific integrated circuits (ASIC), digital signal processors (DSP), digital signal processing devices (DSPD), programmable logic devices (PLD), field programmable gate arrays (FPGA), processors, controllers, micro-controllers, micro-processor, other electronic devices executing the aforementioned functions, or any combination of above-described devices. Under partial conditions, this type of embodiments may be practiced via the controller. For software implementation, the website resource utilization rate guaranteeing system 104 may include each above-described software module stored in a storage of a server and loaded into a memory for implementation by a processor. Or, each software module may also be dispersedly stored in storages of a plurality of servers, and may be loaded into memories of each server for implementation by the processor. Via network coordination, the servers may simultaneously realize functions of the website resource utilization rate guaranteeing system 104.
[0074] In one embodiment, the scheduling module 406 may be responsible for coordinating a plurality of modules. Specifically, the scheduling module 406 may issue monitoring tasks to the monitoring module 404. The scheduling module 406 itself may collect the operational data of the server of the website source site 101, and determine domain name resolution rules according to the scheduling strategy. The domain name resolution rules may include resolution results of domain names and corresponding resolution distribution ratios. The scheduling module 406 may issue the domain name resolution rules to the DNS module 401.
[0075] For example, the monitoring mode set by the resource module 405 may be a simple network management protocol (SNMP) mode, or an embedded monitoring agent program mode.
[0076]
[0077] Hereinafter, an example is given to illustrate a specific implementation process of the above-described method assume that the resource utilization rate and access quality of a domain name ‘www.a.com’ need to be guaranteed. The DNS module 401 of the website resource utilization rate guaranteeing system 104 may be an authoritative DNS server of the domain name ‘www.a.com’, and the domain name ‘www.a.com’ may have an alias ‘www.a.1xdns.com’ in the DNS module 401. The website ‘www.a.com’ may have registered a content service at the CDN service provider, and the CDN service provider may allocate a service domain name ‘www.a.cdn.com’ to the website for use. The allocation of strategies and monitoring information may be fulfilled via website providers assume that a scheduling strategy allocated to ‘www.a.com’ is shown in Table 1 as follows:
TABLE-US-00001 TABLE 1 Preset Preset Domain name IP of a Geo- Scheduling upper lower of the CDN website graphic domain traffic traffic service re- ISP location name limit limit provider source China Fujian www.a.com 6 4 www.a.cdn.com 1.1.1.1; Unicorn Gbps Gbps 1.1.1.2 China Fujian www.a.com 8 6 www.a.cdn.com 2.2.2.1; Telecom Gbps Gbps 2.2.2.2
[0078] When a user types in the website ‘www.a.com’ in his or her internet browser, the browser may request the local DNS server 102 to resolve ‘www.a.com’, and the local DNS server 102 may send the request to the authoritative DNS server 103. The authoritative DNS server 103 may return the alias ‘www.a.1xdns.com’ of the website ‘www.a.com’ to the local DNS server 102. The local DNS server 102 may acquire an IP address of ‘www.a.1xdns.com’ from the DNS module 401 of the website resource utilization rate guaranteeing system 104. The DNS module 401 may first acquire an IP address of the local DNS server 102, and inquire a corresponding geographic location and ISP information according to the IP address. Assume the geographic location of the local DNS server 102 is Fujian, and ISP is China Telecom.
[0079] According to the scheduling strategy table, the scheduling module 406 may automatically issue the monitoring task that performs the resource monitoring of ‘2.2.2.1.’ and ‘2.2.2.2’ to the monitoring module 404, inquire the monitoring result, and make the following conclusions according to the strategy:
[0080] when the traffic of the website source site exceeds the preset upper traffic limit (8 Gbps), assume the current website source site traffic is 9 Gbps and ‘www.a.1xdns.com’ is resolved into the source site, the following result may be obtained according to equation 1 and equation 2:
R.sub.cdn=0+|9 Gbps−8 Gbps|/8 Gbps*100%=12.5%.
[0081] By then, ‘www.a.1xdns.com’ may be resolved into ‘www.a.cdn.com’ by a ratio of 12.5%, and resolved into IP addresses of ‘2.2.2.1’ and ‘2.2.2.2’ by a ratio of 87.5%;
[0082] When the traffic of the website source site is lower than the preset lower traffic limit (6 Gbps), assume the current website source site traffic is 4 Gbps and ‘www.a.1xdns.com’ is resolved into ‘www.a.cdn.com’ by a ratio of 60%, the following result may be obtained according to equation 1 and equation 3:
R.sub.cdn=½−|4 Gbps−6 Gbps|/6 Gbps*100%=16.7%.
[0083] By then, ‘www.a.1xdns.com’ may be resolved into ‘www.a.cdn.com’ by a ratio of 16.7%, and resolved into IP addresses of ‘2.2.2.1’ and ‘2.2.2.2’ by a ratio of 83.3%.
[0084] Accordingly, the disclosed embodiment may redirect the traffic by controlling the domain name resolution, such that the traffic may preferentially flow to the resources of the website source site 101. When the resource of the website source site 101 fails to satisfy the requirement, the traffic may be timely guided to CDN acceleration service, thus alleviating the load, of the website source site 101.
[0085] From above-described embodiments of the present disclosure, the method and system for guaranteeing website resource utilization rate may integrate the CDN service website and the resources of the website provider via intelligent scheduling, prioritize utilization of the website resource, and monitor the usage condition of the website resources in real-time. When the website resource utilization rate exceeds a preset value, the DNS resolution ratio may be modified to gradually guide the traffic to the CDN service network, thus alleviating the load pressure of the source site. When the website traffic is lower than the preset lower limit, the DNS solution ratio may be modified to gradually guide the traffic back to the website, thus increasing the website resource utilization rate. By using the disclosed method and system, the website resource utilization rate may be intelligently controlled within a reasonable range without reducing the access quality.
[0086] Although the present disclosure has been described as above with reference to the preferred embodiments, these embodiments are not construed as limiting the present disclosure. Various modifications and variations may be made by anyone skilled in the art without departing from the spirit and scope of the present disclosure, and the protection scope of the present disclosure is defined by the appended claims.