CN116455906A - CDN edge computing network-based secondary scheduling method, system and medium - Google Patents

CDN edge computing network-based secondary scheduling method, system and medium Download PDF

Info

Publication number
CN116455906A
CN116455906A CN202310442383.7A CN202310442383A CN116455906A CN 116455906 A CN116455906 A CN 116455906A CN 202310442383 A CN202310442383 A CN 202310442383A CN 116455906 A CN116455906 A CN 116455906A
Authority
CN
China
Prior art keywords
node
cdn edge
user terminal
cdn
http request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310442383.7A
Other languages
Chinese (zh)
Inventor
陈连波
史憬烨
王声楚
吴剑林
吴成龙
蔡辉祥
余杰
赵晨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xiamen Anjie Cloud Network Co ltd
Original Assignee
Xiamen Anjie Cloud Network Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xiamen Anjie Cloud Network Co ltd filed Critical Xiamen Anjie Cloud Network Co ltd
Priority to CN202310442383.7A priority Critical patent/CN116455906A/en
Publication of CN116455906A publication Critical patent/CN116455906A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides a secondary scheduling method, a system and a medium based on a CDN edge computing network, wherein the method comprises the following steps: after receiving an HTTP request initiated by a user terminal, a CDN edge POP node distributed by a global load balancing system for the user terminal forwards the HTTP request to an edge dispatching center; the edge dispatching center responds to the HTTP request, obtains a preferred auxiliary node through decision, and returns the preferred auxiliary node IP to the CDN edge POP node; and the CDN edge POP node returns the preferred affiliated node IP to the user terminal. The invention is based on central dispatching, and utilizes CDN edge computing capability to carry out secondary dispatching, thereby realizing zero modification access of the user terminal, carrying out more flexible, rapid and efficient strategy adjustment, meeting the increasingly developed CDN requirements and having wider application range.

Description

CDN edge computing network-based secondary scheduling method, system and medium
Technical Field
The invention relates to the technical field of computer networks, in particular to a secondary scheduling method, a system and a medium based on a CDN edge computing network.
Background
The conventional CDN scheduling mode is mainly based on a DNS resolution GLSB implementation mechanism and based on an HTTP302 and GLSB central scheduling implementation mechanism, and is central scheduling.
Fig. 1 is a schematic diagram of information interaction based on HTTP302 and GLSB centric scheduling implementation mechanisms in the prior art. Referring to fig. 1, 302 scheduling is a scheduling manner based on HTTP requests, which means that a user initiates an HTTP request to a global load scheduling center, after receiving the user request, the global load scheduling center queries a local IP library, and notifies a client to initiate a request to a CDN edge POP node in a manner of HTTP302 response according to information such as an area where the user IP is located and an operator, which is generally used in a user scenario with APP.
Fig. 2 is a schematic diagram of information interaction based on a DNS resolution GLSB implementation mechanism in the prior art. Referring to fig. 2, DNS scheduling refers to a scheduling manner based on the DNS principle, in which a user initiates a DNS request to a global load scheduling center, after receiving the DNS request of the user, the global load scheduling center queries a local IP library, responds to the POP node IP information of the CDN edge through DNS according to the information such as the area where the user IP is located and the operator, and after acquiring the final POP node IP of the CDN edge, the client initiates an HTTP request to the IP of the edge of the target CDN to acquire final content.
The existing scheduling techniques are all central scheduling. The central scheduling refers to that the scheduling policy is processed and executed in one or more unified data centers, and the response is returned to the edge POP node IP of the user client, that is, the final destination IP address of the HTTP request initiated by the end user client. The central scheduling has hysteresis on the perception of the quality, load and the like of the edge nodes, and the traffic of a certain node is increased rapidly within a period of time, so that the service quality is reduced, but the service quality cannot be found and switched in time.
Moreover, because the DNS protocol itself has a defect, the existing central scheduling cannot rapidly schedule handover, for example, for reasons such as operator DNS hijacking, DNS caching mechanism, etc., it may occur that some IPs in non-coverage services are allocated to user clients, resulting in an affected quality of service;
and the existing central scheduling belongs to one-time scheduling, once the scheduling is completed, the quality condition of the edge is perceived to be finished, and the quality, load, state and other changes in the service process cannot be switched and adjusted in time. Due to development of CDN technology, types of CDN nodes are also more and more complex, such as emerging edge POP node resources (e.g., PCDN nodes) of mining machines, home routing, IDC-like nodes, user mobile devices, etc., and conventional central scheduling cannot sense changes in load, quality, status, service ports, etc. of such nodes in real time.
In addition, since the access mode of the user client cannot be determined by the central scheduling, the consistency of services provided by all edge POP nodes is required, such as a request protocol, a port and the like, otherwise, the user client can have a request error, but the emerging edge POP nodes (e.g., PCDN nodes) are complex in variety, for example, service ports of different edge POP nodes are different, secondary scheduling is required by utilizing the edge computing capability, and the access mode of the user client is adjusted in real time.
Disclosure of Invention
The present invention aims to solve at least to some extent one of the technical problems in the above-described technology. Therefore, the invention aims to provide a secondary scheduling method, a system and a medium based on CDN edge computing network, which can realize zero transformation access of a user terminal, perform more flexible, rapid and efficient policy adjustment, meet the increasingly developed CDN requirements and have wider application range.
In order to achieve the above objective, an embodiment of a first aspect of the present invention provides a secondary scheduling method based on a CDN edge computing network, including:
after receiving an HTTP request initiated by a user terminal, a CDN edge POP node distributed by a global load balancing system for the user terminal forwards the HTTP request to an edge dispatching center;
the edge dispatching center responds to the HTTP request, obtains a preferred auxiliary node through decision, and returns the preferred auxiliary node IP to the CDN edge POP node;
and the CDN edge POP node returns the preferred affiliated node IP to the user terminal.
According to the secondary scheduling method based on the CDN edge computing network, which is disclosed by the embodiment of the invention, the secondary scheduling is performed by utilizing the CDN edge computing capability on the basis of central scheduling, so that zero transformation access of the user terminal can be realized, and meanwhile, richer node resources are utilized and better quality perception is realized.
In addition, the secondary scheduling method based on the CDN edge computing network according to the above embodiment of the present invention may further have the following additional technical features:
optionally, the deciding comprises:
the edge dispatching center obtains decision factors corresponding to all the auxiliary nodes, makes a decision by utilizing the edge joint capacity and adopting a mathematical modeling mode to obtain an IP of the optimal auxiliary node; wherein the decision factors include service status, cost of use, load condition and network quality.
Optionally, the making of the decision by means of mathematical modeling includes:
and making a decision by a mathematical modeling mode based on a load priority principle, a cost priority principle, a quality priority principle, a state change scheduling principle or a comprehensive scheduling principle.
Optionally, the forwarding the HTTP request to an edge dispatch center includes:
the front-end system component of the CDN edge POP node carries out legal authentication on the HTTP request;
if the authentication is passed and the HTTP request meets the secondary scheduling condition, forwarding the HTTP request to an edge scheduling center.
Optionally, the CDN edge POP node forwards the HTTP request to an edge dispatch center corresponding to the preferred CDN edge POP node according to a load condition of the CDN edge POP node group.
Optionally, the CDN edge POP node returns the preferred attachment node IP to the user terminal, including:
the CDN edge POP node returns a 302 state code carrying the IP of the preferred auxiliary node to a user terminal;
and the user terminal analyzes the 302 status code, acquires the IP of the preferred auxiliary node and initiates an HTTP request to the IP.
Optionally, before the CDN edge POP node allocated by the global load balancing system to the user terminal receives the HTTP request initiated by the user terminal, the method includes:
the global load balancing system responds to a DNS analysis request initiated by a user terminal, and distributes a CDN edge POP node for the DNS analysis request;
and the user terminal initiates an HTTP request to the CDN edge POP node.
Optionally, the allocating a CDN edge POP node to the node includes:
the global load balancing system makes a decision according to IP information of the user terminal and monitoring information of the CDN edge POP node group, and distributes one or more CDN edge POP nodes for the user terminal; the monitoring information comprises service states, load conditions and network quality of the CDN edge POP nodes;
if more than two CDN edge POP nodes are allocated to the user terminal, the user terminal initiates an HTTP request to the CDN edge POP nodes, including:
the user terminal selects one CDN edge POP node from more than two CDN edge POP nodes according to a preset decision, and initiates an HTTP request to the selected CDN edge POP node.
To achieve the above objective, an embodiment of a second aspect of the present invention provides a secondary scheduling system based on a CDN edge computing network, including:
the global load balancing system distributes CDN edge POP nodes for the user terminals and is used for forwarding HTTP requests to an edge dispatching center after receiving the HTTP requests initiated by the user terminals; and for returning said preferred attachment node IP to said user terminal;
and the edge dispatching center is used for responding to the HTTP request, obtaining a preferred auxiliary node through decision, and returning the preferred auxiliary node IP to the CDN edge POP node.
To achieve the above object, an embodiment of a third aspect of the present invention provides a computer readable storage medium having stored thereon a computer program, where the computer program is distributed to one or more processors and executed to implement the above-mentioned method for secondary scheduling based on CDN edge computing network.
Drawings
Fig. 1 is a schematic diagram of information interaction based on HTTP302 and GLSB centric scheduling implementation mechanisms in the prior art;
fig. 2 is a schematic diagram of information interaction based on a DNS resolution GLSB implementation mechanism in the prior art;
fig. 3 is a schematic flow chart of a secondary scheduling method based on a CDN edge computing network according to an embodiment of the present invention;
fig. 4 is an interactive flow diagram of a secondary scheduling method based on a CDN edge computing network according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of an implementation architecture of secondary edge scheduling according to an embodiment of the present invention;
fig. 6 is a second flow chart of a secondary scheduling method based on a CDN edge computing network according to an embodiment of the present invention;
fig. 7 is a schematic diagram of HTTP302 response according to an embodiment of the present invention.
Detailed Description
Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to like or similar elements or elements having like or similar functions throughout. The embodiments described below by referring to the drawings are illustrative and intended to explain the present invention and should not be construed as limiting the invention.
The CDN scheduling modes in the prior art are all central scheduling, and are mainly divided into two types, wherein one type is based on a DNS resolution GLSB implementation mechanism (shown in figure 1); the other is based on HTTP302 and GLSB centric scheduling implementation mechanisms (as shown in fig. 2). The conventional central scheduling mode cannot sense the quality, state, load and other information of the CDN edge POP nodes in real time, so that the connection cannot be switched and adjusted in time, and the service quality of users is influenced; in addition, the emerging edge node network cannot be utilized, so that the applicable scene is limited.
The invention is based on central dispatching, utilizes CDN edge computing capability to carry out secondary dispatching, can carry out more flexible, rapid and efficient strategy dispatching on the premise of zero modification of the user terminal, meets the increasingly developed CDN requirements, and has wider application range.
In this context, a CDN is composed of machine room nodes distributed throughout regions of the world and each communications carrier network, and a CDN service provider deploys related software and hardware based on these machine room nodes, and forms a star network by networking, where the machine room nodes that make up the network are generally referred to as CDN edge POP nodes, and a set of all CDN edge POP nodes in the network is referred to as a CDN edge POP node group.
In order that the above-described aspects may be better understood, exemplary embodiments of the present invention will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of the present invention are shown in the drawings, it should be understood that the present invention may be embodied in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.
In order to better understand the above technical solutions, the following detailed description will refer to the accompanying drawings and specific embodiments.
Fig. 3 is a flowchart illustrating a secondary scheduling method based on a CDN edge computing network according to an embodiment of the present invention. As shown in fig. 3, an embodiment of the present invention provides a secondary scheduling method based on a CDN edge computing network, which at least includes the following steps S100 to S300.
In the step S100, after receiving an HTTP request initiated by the user terminal, a CDN edge POP node allocated to the user terminal by the global load balancing system forwards the HTTP request to an edge dispatch center.
That is, on the basis of the existing central scheduling manner, after the CDN edge POP node receives the HTTP request initiated by the user terminal, the HTTP request is not directly executed, but the secondary scheduling is needed to be executed, and the secondary scheduling is performed by utilizing the capability of CDN edge calculation. It can be seen that the node allocated by the global load balancing system GLSB to the user terminal is not the final destination IP address.
The central scheduling manner, that is, the process development of the global load balancing system for distributing CDN edge POP nodes to the user terminal, will not be described in detail herein, see the background art.
In the step S200, the edge dispatch center responds to the HTTP request to obtain a preferred attachment node through decision, and returns the preferred attachment node IP to the CDN edge POP node.
The decision is to utilize the computing capability of the CDN edge to perform scheduling decision classification, modeling, calculation, request processing and the like in the CDN edge POP node group so as to obtain the preferred auxiliary node.
In some embodiments, the decision making process may be: the edge dispatching center obtains decision factors corresponding to all the auxiliary nodes, then makes a decision by utilizing the edge joint capacity and through a mathematical modeling mode, and obtains the IP of the optimal auxiliary node; the decision factors include, but are not limited to, service status, use cost, load condition, network quality, bandwidth limitation, speed limit, current limitation and other node information. Alternatively, the decision may be made by way of mathematical modeling based on load priority, cost priority, quality priority, state change scheduling, or comprehensive scheduling principles.
It should be noted that, through the preferred auxiliary node determined by using the CDN edge computing capability, a set of node systems is generally formed with the CDN edge POP node in the same operator network or the same region boundary, and is used as an auxiliary node of the CDN edge POP node allocated to the user terminal by the global load balancing system, so that flexibility in CDN edge POP node distribution can be fully utilized, information such as quality, load, state and the like of the PCDN node can be better perceived, comprehensive computation is performed, and quality perception is more sensitive.
In the step S300, the CDN edge POP node returns the preferred attachment node IP to the user terminal.
That is, the preferred attachment node IP will be the final destination IP address for the user terminal originating the HTTP request. Based on the existing scheduling technology, the user terminal initiates an HTTP request to the preferred auxiliary node IP to acquire the final content. Optionally, one possible way for the CDN edge POP node to return the preferred attachment node IP to the user terminal is: the CDN edge POP node returns a 302 state code carrying the preferred attachment node IP and a request address to a user terminal; and the user terminal analyzes the 302 status code, acquires the preferred auxiliary node IP and the request address, and initiates an HTTP request to the preferred auxiliary node IP according to the request address. I.e. by responding to the 302 status code carrying the preferred attachment node IP to the user terminal for the purpose of informing the user terminal of the new target address. Of course, any other possible notification manner may be used for this purpose, for example, adding a preset field in the actual HTTP response header, and accordingly, the user terminal needs to be coordinated for processing.
It will be appreciated that the preferred attachment node acts as an attachment node to a CDN edge POP node, which typically forms a set of node system networks with the CDN edge POP node within the same operator network or same regional boundary; the CDN node has relatively complete CDN content distribution function, and has the capability of better sensing information such as quality, load, state and the like of the CDN node, namely, the CDN node has better quality sensing capability and decision making capability. And the preferred auxiliary node performs content distribution processing after receiving the HTTP request initiated by the client and responds to the user client.
As can be seen from the above, the ue in this embodiment is a ue modified access in the existing scheduling technology. The scheduling method of the embodiment is based on the existing scheduling technology and protocol, and keeps the access mode of the original CNAME system unchanged, so that the user terminal can utilize the emerging PCDN node without development and transformation, the user experience is improved, the compatibility of the user terminal is improved, and the access cost of the user terminal is reduced.
Therefore, the embodiment not only can better sense the quality, but also can realize zero modification access of the user terminal; therefore, policy scheduling can be realized more flexibly, rapidly and efficiently, and the user experience can be greatly improved while the increasingly developed CDN requirements are met.
Another embodiment of the present invention is further extended based on the embodiment shown in fig. 3, and specifically refines the step S100 in fig. 3, which may include the following steps S101 to S103.
In step S101, the global load balancing system allocates a CDN edge POP node to the DNS resolution request initiated by the user terminal.
Alternatively, this step may be specifically implemented by steps (1) to (6) in the HTTP302 and GLSB based central scheduling implementation mechanism shown in fig. 1; or steps (1) to (6) in the DNS resolution-based GLSB implementation mechanism shown in fig. 2.
In some embodiments, the specific process of the global load balancing system for allocating a CDN edge POP node to a user terminal may be implemented by the following sub-steps:
the global load balancing system makes a decision according to IP information (such as an area to which a user IP belongs, an operator and the like) of a user terminal and monitoring information of a CDN edge POP node group, and distributes one or more CDN edge POP nodes for the user terminal; the monitoring information comprises service states, load conditions and network quality of the CDN edge POP nodes;
in step S102, the user terminal initiates an HTTP request to the CDN edge POP node for which the global load balancing system distributes.
In this embodiment, if the global load balancing system allocates more than two CDN edge POP nodes to the user terminal, after the user terminal receives the allocated CDN edge POP nodes, the user terminal selects one CDN edge POP node from the multiple CDN edge POP nodes according to a preset decision, and initiates an HTTP request to the selected CDN edge POP node.
In step S103, after receiving the HTTP request initiated by the user terminal, the CDN edge POP node forwards the HTTP request to the edge dispatch center.
In some embodiments, before forwarding the HTTP request to the edge dispatch center, the front-end system component of the CDN edge POP node will legitimately authenticate the HTTP request; if the authentication is passed, continuing to judge whether the HTTP request meets the secondary scheduling condition; and if yes, forwarding the HTTP request to an edge dispatching center. The judging whether the secondary scheduling condition is met can be comprehensively judged from the conditions of the type of the request file, the domain name of the client of the request and the like. Here, by requesting a validity authentication check, it is possible to ensure that the request is legal and secure, so as to improve system security.
In still other embodiments, the CDN edge POP node will forward the HTTP request to the edge dispatch center to which the preferred CDN edge POP node corresponds, depending on the load conditions of the CDN edge POP node group. The preferred CDN edge POP node is the least loaded node in the current CDN edge POP node group. Here, through load balancing request distribution, the request processing efficiency can be improved, and meanwhile, load balancing in the CDN edge POP node group is achieved.
Fig. 4 is an interactive flow diagram of a secondary scheduling method based on a CDN edge computing network according to an embodiment of the present invention;
fig. 5 is a schematic diagram of an implementation architecture of secondary edge scheduling according to an embodiment of the present invention.
As shown in fig. 4, a further embodiment of the present invention further extends to the embodiment shown in fig. 3, and provides a secondary scheduling method based on a CDN edge computing network, which at least includes the following steps (1) to (7).
In step (1), a user client initiates a DNS resolution request to a global load balancing system GLSB
In step (2), the global load balancing system GLSB responds and returns the CDN edge POP node IP to the user client;
in step (3), a user client initiates an HTTP request to the CDN edge POP node. Illustratively, the request example is referred to in step (1) of fig. 5.
In step (4), the front end component nmginx of the PCDN edge POP node forwards the HTTP request to the edge dispatch center.
In step (5), the edge dispatch center responds by returning the PCDN POP node IP to the nginnx component at the CDN edge POP node front end. Here, the PCDN POP node IP, i.e., the preferred attachment node that the edge dispatch center derives through decision-making based on its edge computing capability; each node in the PCDN POP node group in the graph corresponds to each node in the CDN edge POP node group one-to-one as an adjunct thereto.
In step (6), the nginnx component response at the CDN edge POP node front returns 302 a status code informing the user of the PCDN node IP. Illustratively, the response is actually referring to step (2) of FIG. 5.
In step (7), user client 302 jumps, initiates an HTTP request to the PCDN POP node, and obtains the final content. Illustratively, the request example is referred to in step (3) of fig. 5.
Fig. 6 is a second flow chart of a secondary scheduling method based on a CDN edge computing network according to an embodiment of the present invention; fig. 7 is a diagram showing an HTTP302 response example according to an embodiment of the present invention. As shown in fig. 6, an embodiment of the present invention provides an exemplary method of a secondary scheduling method based on a CDN edge computing network, where a new target edge POP node IP, i.e., a preferred attachment node IP, is notified to a user terminal by 302 scheduling.
Specifically, an exemplary flow of the secondary scheduling method according to the present embodiment includes the following steps:
1. the website or APP service content provider directs the authority DNS of the service domain name to the CNAME address appointed by the CDN content delivery network service provider, namely the GLSB global load balancing system address by modifying the domain name CNAME record. The user client initiates a DNS analysis request to a GLSB global load balancing system provided by a CDN service provider based on the DNS analysis principle so as to acquire the optimal CDN edge POP node IP. For example: test.
2. The global load balancing system GLSB receives a DNS analysis request initiated by a user client, carries out IP information matching by inquiring an IP library, carries out decision making according to IP information of an area, an operator and the like to which the user IP belongs and in combination with monitoring information of CDN edge POP nodes such as bandwidth, load, state and the like of the node by the current CDN system, and returns one or more CDN edge POP node IP to the user client in response;
3. the user client obtains one or more CDN edge POP node IPs returned from the GLSB response in a DNS analysis mode, then selects one of the edge POP node IPs as a service node according to the decision of the user client, and initiates an HTTP request to the edge POP node IP. Multiple CDN edge POP nodes IP, e.g
http://test.com/test.mp4,http://test.com/test.php。
4. The CDN edge POP node receives the HTTP request initiated by the user terminal, and typically, the CDN edge POP node is formed by a set of complete CDN content delivery service systems including, but not limited to, a plurality of hardware servers and software system components with different functions: load balancing equipment, a load balancing software system, a content caching system, a configuration management system, a log acquisition system and the like; the software system component (for example, nginnx) located at the front end of the CDN edge POP node accepts the HTTP request initiated by the user terminal and operates according to a preset rule, where the rule includes, but is not limited to:
(1) A validity authentication check is requested. Carrying out authentication checking on the validity of the request of the user terminal, and entering a later link if the authentication is passed; if the authentication is not passed, the content response or rejection is directly performed by means of HTTP response, for example, the user request IP, the source of the user request link, the timeliness of the user request link, etc. can be used as the authentication rule.
(2) Load balancing request allocation. And carrying out request scheduling according to the load condition of the servers in the nodes, and forwarding the execution of the user terminal request to a proper server for processing, for example, selecting POP A from the CDN edge POP node group shown in figure 4.
(3) And checking secondary scheduling conditions. If the conditional decisions such as the type of the request file, the domain name of the requested client and the like are not suitable for secondary scheduling, directly entering an internal cache system to acquire CDN content and respond to the user terminal; and if the conditional decisions such as the file type of the request, the domain name of the client of the request and the like accord with the secondary scheduling, forwarding the request to an edge scheduling center positioned inside the CDN edge node.
(4) Request preprocessing. Including but not limited to request forwarding, request rewriting, content response, response content rewriting, etc., such as adding an identification to the HTTP request header for requests that require secondary scheduling.
5. The CDN edge dispatching center is located in the CDN edge POP node, and obtains decision factors including but not limited to use cost, bandwidth limitation, speed limit and current limit, node service state and the like of the auxiliary node (taking PCDN node as an example) from the strategy center by means of edge computing capacity of the CDN edge POP node, and makes a decision by means of mathematical modeling by utilizing the edge choosing capacity of the CDN edge POP node in combination with the currently collected decision factors including load condition, network quality, service availability and the like of the auxiliary node (taking PCDN node as an example), and returns one or more preferable auxiliary node IP (taking PCDN node as an example) to a front-end system component (taking Ngxin as an example) located inside the CDN edge POP node.
Optionally, the scheduling center performs mathematical modeling, and each decision factor may follow one of the following principles in the decision making process:
(1) Load priority principle: by presetting a maximum load value of an auxiliary node (taking a PCDN node as an example), under the condition that the state of the PCDN node is available, acquiring the real-time bandwidth, the device CPU, the device memory, the device IO and other device load conditions of the PCDN node in real time, and preferentially distributing a user request to the PCDN node until the PCDN node load is close to the preset load maximum value;
(2) Cost priority principle: by building a PCDN node cost usage model, for example, PCDN node cost of usage=pcdn node bandwidth x bandwidth unit price, user requests are preferentially scheduled to PCDN nodes with lower bandwidth unit price until the load of the PCDN node reaches a preset value. For example, if the PCDN node has a guaranteed-bottom consumption protocol, the use bandwidth of the PCDN node is preferentially guaranteed to reach a guaranteed-bottom value;
(3) Quality priority principle: the method comprises the steps of preferentially distributing user requests to PCDN nodes with better PCDN node quality by acquiring network quality, user response time, user response error status codes and other PCDN node quality factors of the PCDN nodes in real time;
(4) State change scheduling principle: the method comprises the steps that information such as the state and the speed limit of a PCDN node is obtained in real time through a policy center, and policy adjustment is carried out in real time, for example, a certain PCDN node is cut off, and then a user is forbidden to request to dispatch to the PCDN node during the network cutting off; for example, if the service IP address or port of a certain PCDN node is changed, the service IP address or port information of the PCDN node needs to be changed in the scheduling process, and the user client is notified of the change of the service IP address or port, so that the user client initiates an HTTP request to the new service IP address or port;
(5) And (3) comprehensive scheduling principle: complex scheduling systems are generally not limited to a certain scheduling principle, and one or more of the above scheduling principles, such as the cost-first principle, are typically combined, while more scheduling principles are combined in combination with a state table.
6. The front-end system component (for example, ngxin) located inside the CDN edge POP node receives the preferred attachment node IP (for example, PCDN node) returned by the edge dispatch center response, returns 302 a status code to the user client response according to the address requested by the user terminal, and tells the user terminal a new request address in the response, the response content and the manner are shown in the HTTP302 response schematic diagram in fig. 7. The response handling of the two request modes of HTTP and HTTPS will be different due to HTTPS encryption issues.
(1) HTTP request, return HTTP address:
original request:
http://tes.com/test.mp4
302 jump:
http://21.52.242.195:8090/xdispatch/test.com/test.mp4
(2) 0HTTPS request: then return HTTPS address:
original request:
https://tes.com/test.mp4
302 jump:
https://ab123.x.ajcdn.cn:10443/xdispatch/test.com/test.mp4
7. the user terminal acquires an HTTP302 response returned by the CDN edge POP node, analyzes the Location field to acquire a new request address, and initiates an HTTP request to the new request address to acquire final content. Requests and responds to the new target IP address and accesses as shown in step (3) of fig. 5.
The above-described embodiments have at least the following advantages:
1. richer node resource utilization: with edge scheduling, the emerging PCDN node network can be better utilized.
2. Better quality perception: in order to achieve a network with PCDN nodes nearby, the CDN edge nodes and the CDN edge nodes form a set of node system, the flexibility of the CDN edge nodes is utilized to better perceive the information such as the quality, the load, the state and the like of the PCDN nodes, comprehensive scheduling is carried out, and quality perception is more sensitive.
3. And (3) the user terminal is transformed and accessed: the access mode of the original CNAME system is unchanged, terminal development and transformation are not needed, and the emerging PCDN node can be utilized, so that the user experience is improved.
The embodiment of the invention further provides a secondary scheduling system based on a CDN edge computing network, which at least comprises:
the global load balancing system distributes CDN edge POP nodes for the user terminals and is used for forwarding HTTP requests to an edge dispatching center after receiving the HTTP requests initiated by the user terminals; and for returning said preferred attachment node IP to said user terminal;
and the edge dispatching center is used for responding to the HTTP request, obtaining a preferred auxiliary node through decision, and returning the preferred auxiliary node IP to the CDN edge POP node.
In some embodiments, the edge scheduling center is further configured to obtain decision factors corresponding to each auxiliary node, and make a decision by using edge node selection capability and through a mathematical modeling manner, to obtain an IP of the preferred auxiliary node; wherein the decision factors include service status, cost of use, load condition and network quality.
In some embodiments, the edge dispatching center is further configured to make a decision by means of mathematical modeling based on a load priority principle, a cost priority principle, a quality priority principle, a state change dispatching principle or a comprehensive dispatching principle.
In some embodiments, the CDN edge POP node is further configured to perform validity authentication on the HTTP request by a front-end system component of the CDN edge POP node; if the authentication is passed and the HTTP request meets the secondary scheduling condition, forwarding the HTTP request to an edge scheduling center.
In some embodiments, the CDN edge POP node is further configured to forward the HTTP request to an edge dispatch center corresponding to the preferred CDN edge POP node according to a load condition of the CDN edge POP node group.
In some embodiments, the CDN edge POP node is further configured to return a 302 state code carrying the preferred attachment node IP to the user terminal;
in some embodiments, the system further comprises: and the user terminal is used for analyzing the 302 state code, acquiring the IP of the preferred auxiliary node and initiating an HTTP request to the IP.
In some embodiments, the system further comprises: the global load balancing system is used for making a decision according to the IP information of the user terminal and the monitoring information of the CDN edge POP node group, and distributing one or more CDN edge POP nodes for the user terminal; the monitoring information comprises service states, load conditions and network quality of the CDN edge POP nodes;
and the user terminal is further used for selecting one CDN edge POP node from the two CDN edge POP nodes according to a preset decision and initiating an HTTP request to the selected CDN edge POP node if the user terminal receives the two or more CDN edge POP nodes.
The embodiment of the present invention is based on any one of the foregoing embodiments, and further provides a computer readable storage medium, where a computer program is stored, where the computer program is configured to implement the secondary scheduling method based on the CDN edge computing network according to any one of the foregoing embodiments after being executed by one or more processors. The steps involved in the method are not repeated here, and reference is made to the description of the above embodiments for details.
It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It should be noted that in the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware. The use of the words first, second, third, etc. do not denote any order. These words may be interpreted as names.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. It is therefore intended that the following claims be interpreted as including the preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various modifications and variations can be made to the present invention without departing from the spirit or scope of the invention. Thus, it is intended that the present invention also include such modifications and alterations insofar as they come within the scope of the appended claims or the equivalents thereof.
In the description of the present invention, it should be understood that the terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or number of technical features indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more such feature. In the description of the present invention, the meaning of "a plurality" is two or more, unless explicitly defined otherwise.
In the present invention, unless explicitly specified and limited otherwise, the terms "mounted," "connected," "secured," and the like are to be construed broadly, and may be, for example, fixedly connected, detachably connected, or integrally formed; can be mechanically or electrically connected; can be directly connected or indirectly connected through an intermediate medium, and can be communicated with the inside of two elements or the interaction relationship of the two elements. The specific meaning of the above terms in the present invention can be understood by those of ordinary skill in the art according to the specific circumstances.
In the present invention, unless expressly stated or limited otherwise, a first feature "up" or "down" a second feature may be the first and second features in direct contact, or the first and second features in indirect contact via an intervening medium. Moreover, a first feature being "above," "over" and "on" a second feature may be a first feature being directly above or obliquely above the second feature, or simply indicating that the first feature is level higher than the second feature. The first feature being "under", "below" and "beneath" the second feature may be the first feature being directly under or obliquely below the second feature, or simply indicating that the first feature is less level than the second feature.
In the description of the present specification, a description referring to terms "one embodiment," "some embodiments," "examples," "specific examples," or "some examples," etc., means that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the present invention. In this specification, schematic representations of the above terms should not be understood as necessarily being directed to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, the different embodiments or examples described in this specification and the features of the different embodiments or examples may be combined and combined by those skilled in the art without contradiction.
While embodiments of the present invention have been shown and described above, it will be understood that the above embodiments are illustrative and not to be construed as limiting the invention, and that variations, modifications, alternatives and variations may be made to the above embodiments by one of ordinary skill in the art within the scope of the invention.

Claims (10)

1. The secondary scheduling method based on the CDN edge computing network is characterized by comprising the following steps of:
after receiving an HTTP request initiated by a user terminal, a CDN edge POP node distributed by a global load balancing system for the user terminal forwards the HTTP request to an edge dispatching center;
the edge dispatching center responds to the HTTP request, obtains a preferred auxiliary node through decision, and returns the preferred auxiliary node IP to the CDN edge POP node;
and the CDN edge POP node returns the preferred affiliated node IP to the user terminal.
2. The secondary scheduling method based on the CDN edge computing network as recited in claim 1, wherein the deciding includes:
the edge dispatching center obtains decision factors corresponding to all the auxiliary nodes, makes a decision by utilizing the edge joint capacity and adopting a mathematical modeling mode to obtain an IP of the optimal auxiliary node; wherein the decision factors include service status, cost of use, load condition and network quality.
3. The secondary scheduling method based on the CDN edge computing network as recited in claim 2, wherein the making of the decision by way of mathematical modeling includes:
and making a decision by a mathematical modeling mode based on a load priority principle, a cost priority principle, a quality priority principle, a state change scheduling principle or a comprehensive scheduling principle.
4. The secondary scheduling method based on CDN edge computing network of claim 1, wherein forwarding the HTTP request to an edge scheduling center comprises:
the front-end system component of the CDN edge POP node carries out legal authentication on the HTTP request;
if the authentication is passed and the HTTP request meets the secondary scheduling condition, forwarding the HTTP request to an edge scheduling center.
5. The secondary scheduling method based on the CDN edge computing network as recited in claim 1 or 4, wherein the CDN edge POP node forwards the HTTP request to an edge scheduling center corresponding to a preferred CDN edge POP node according to a load condition of a CDN edge POP node group.
6. The secondary scheduling method based on CDN edge computing network of claim 1, wherein the CDN edge POP node returns the preferred attachment node IP to the user terminal, comprising:
the CDN edge POP node returns a 302 state code carrying the IP of the preferred auxiliary node to a user terminal;
and the user terminal analyzes the 302 status code, acquires the preferred auxiliary node IP and the request address thereof, and initiates an HTTP request to the preferred auxiliary node IP according to the request address.
7. The secondary scheduling method based on the CDN edge computing network of claim 1, wherein before the CDN edge POP node allocated by the global load balancing system to the user terminal receives the HTTP request initiated by the user terminal, the method comprises:
the global load balancing system responds to a DNS analysis request initiated by a user terminal, and distributes a CDN edge POP node for the DNS analysis request;
and the user terminal initiates an HTTP request to the CDN edge POP node.
8. The secondary scheduling method based on the CDN edge computing network as recited in claim 7, wherein the allocating a CDN edge POP node thereto comprises:
the global load balancing system makes a decision according to IP information of the user terminal and monitoring information of the CDN edge POP node group, and distributes one or more CDN edge POP nodes for the user terminal; the monitoring information comprises service states, load conditions and network quality of the CDN edge POP nodes;
if more than two CDN edge POP nodes are allocated to the user terminal, the user terminal initiates an HTTP request to the CDN edge POP nodes, including:
the user terminal selects one CDN edge POP node from more than two CDN edge POP nodes according to a preset decision, and initiates an HTTP request to the selected CDN edge POP node.
9. A secondary dispatch system based on a CDN edge computing network, comprising:
the global load balancing system distributes CDN edge POP nodes for the user terminals and is used for forwarding HTTP requests to an edge dispatching center after receiving the HTTP requests initiated by the user terminals; and is also configured to return a preferred attachment node IP to the user terminal;
and the edge dispatching center is used for responding to the HTTP request, obtaining a preferred auxiliary node through decision, and returning the preferred auxiliary node IP to the CDN edge POP node.
10. A computer readable storage medium having stored thereon a computer program, wherein the computer program, when distributed to one or more processors, is capable of implementing a CDN edge computing network based secondary scheduling method as claimed in any one of claims 1 to 8.
CN202310442383.7A 2023-04-23 2023-04-23 CDN edge computing network-based secondary scheduling method, system and medium Pending CN116455906A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310442383.7A CN116455906A (en) 2023-04-23 2023-04-23 CDN edge computing network-based secondary scheduling method, system and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310442383.7A CN116455906A (en) 2023-04-23 2023-04-23 CDN edge computing network-based secondary scheduling method, system and medium

Publications (1)

Publication Number Publication Date
CN116455906A true CN116455906A (en) 2023-07-18

Family

ID=87125367

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310442383.7A Pending CN116455906A (en) 2023-04-23 2023-04-23 CDN edge computing network-based secondary scheduling method, system and medium

Country Status (1)

Country Link
CN (1) CN116455906A (en)

Similar Documents

Publication Publication Date Title
US9262730B2 (en) System and method for configuring dynamic service network based on netstore
AU2018240192A1 (en) Network slicing serving function
CN110830564B (en) CDN scheduling method, device, system and computer readable storage medium
CN113596863B (en) Method, equipment and medium for determining user plane function and providing information
US20230007457A1 (en) Systems, devices and methods for edge node computing
CN113726843A (en) Edge cloud system, data transmission method, device and storage medium
US11902108B2 (en) Dynamic adaptive network
CN114302429B (en) NWDAF network element determination method, device, equipment and storage medium
US11695855B2 (en) User generated pluggable content delivery network (CDN) system and method
CN113301079B (en) Data acquisition method, system, computing device and storage medium
CN112543212B (en) System for providing request response exact communication delay guarantee for distributed service
Pirmagomedov et al. Augmented computing at the edge using named data networking
US11902352B2 (en) HttpDNS scheduling method, apparatus, medium and device
US20220278944A1 (en) Method for allocating resources of a network infrastructure
CN116455906A (en) CDN edge computing network-based secondary scheduling method, system and medium
CN115665262A (en) Request processing method and device, electronic equipment and storage medium
CN113596105B (en) Content acquisition method, edge node and computer readable storage medium
CN115514981A (en) Video stream scheduling system and related product
Passas et al. Pricing based MEC resource allocation for 5G heterogeneous network access
CN112104566A (en) Load balancing processing method and device
CN115426413B (en) Edge node scheduling method, device, medium and equipment based on 5G
WO2013004268A1 (en) Caching content
US11677859B2 (en) Federated service registries for access providers
Liang et al. Survey of Computing Power Network Industry Standards
CN114079581A (en) Service processing method, system, computing device and storage medium based on PCC

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination