CN110401731B - Method and apparatus for distributing content distribution nodes - Google Patents

Method and apparatus for distributing content distribution nodes Download PDF

Info

Publication number
CN110401731B
CN110401731B CN201910675723.4A CN201910675723A CN110401731B CN 110401731 B CN110401731 B CN 110401731B CN 201910675723 A CN201910675723 A CN 201910675723A CN 110401731 B CN110401731 B CN 110401731B
Authority
CN
China
Prior art keywords
content distribution
node
traffic
target
terminal
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.)
Active
Application number
CN201910675723.4A
Other languages
Chinese (zh)
Other versions
CN110401731A (en
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910675723.4A priority Critical patent/CN110401731B/en
Publication of CN110401731A publication Critical patent/CN110401731A/en
Application granted granted Critical
Publication of CN110401731B publication Critical patent/CN110401731B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Embodiments of the present disclosure disclose a method and apparatus for distributing content distribution nodes, which may be applied to the field of cloud computing. One embodiment of the method comprises the following steps: receiving a content distribution request sent by a terminal; for a content distribution node in a content distribution node group, determining the content distribution node as a candidate execution node in response to a traffic redundancy value of the content distribution node being greater than a preset redundancy threshold; and determining the target execution node from the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node and the node address of each candidate execution node. According to the embodiment, the content distribution nodes with large traffic redundancy values and relatively closer addresses to the terminal addresses can be distributed to the users in real time, so that the response speed of the users for accessing the website is improved while the full utilization of node traffic resources is ensured.

Description

Method and apparatus for distributing content distribution nodes
Technical Field
Embodiments of the present disclosure relate to the field of communications technologies, and in particular, to a method and an apparatus for distributing content distribution nodes.
Background
The content delivery network (Content Delivery Network, CDN) typically has a plurality of content delivery nodes. When a user requests a resource, a content distribution node which is closer to the user is generally distributed, so that the user can obtain the required resource content nearby, and the response speed of the user for accessing the website is improved.
In the related art, a user source is generally determined based on a Local Domain name server (Local Domain NAME SERVER, LDNS) of the user, and a nearby content distribution node is allocated to the user. In addition, after the content distribution node is distributed to the user, the address of the content distribution node is usually cached in the LDNS of the user, and when the user accesses the same domain name later, the address of the content distribution node cached in the LDNS is directly fed back to the user, so that the same content distribution node is distributed to the user. Thus, when a content distribution node that is first assigned to a user is farther, the user will always be assigned the farther content distribution node later, resulting in a reduced response speed of the user to access the website.
Disclosure of Invention
Embodiments of the present disclosure propose methods and apparatus for distributing content distribution nodes.
In a first aspect, embodiments of the present disclosure provide a method for distributing content distribution nodes, the method comprising: receiving a content distribution request sent by a terminal, wherein the content distribution request comprises a web address of a webpage where the requested content is located and a terminal address; for a content distribution node in a content distribution node group, determining the content distribution node as a candidate execution node in response to a traffic redundancy value of the content distribution node being greater than a preset redundancy threshold, wherein the traffic redundancy value of the content distribution node is a difference between the current traffic consumption of the content distribution node and an upper traffic limit; and determining a target execution node from the candidate execution nodes based on the terminal address, the node quality parameters of the candidate execution nodes and the node address of the candidate execution nodes, wherein the target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website.
In some embodiments, the upper traffic limit of the content distribution nodes in the content distribution node group is determined by an acquisition step comprising: in the current computing period, according to a preset flow obtaining interval, obtaining flow consumption of a target user corresponding to the content distribution node, storing the obtained flow consumption into a flow consumption set corresponding to the current computing period, and determining the maximum value in the flow consumption set as the upper flow limit of the content distribution node.
In some embodiments, after determining the maximum value in the set of traffic consumption as the upper traffic limit for the content distribution node, the obtaining step further comprises: and deleting the minimum value in the flow consumption set in response to the number of flow consumption in the flow consumption set being greater than the preset number.
In some embodiments, the method further comprises: determining a required traffic for requesting content and updating the current traffic consumption of the target execution node based on the required traffic.
In a second aspect, embodiments of the present disclosure provide an apparatus for distributing content distribution nodes, comprising: the request receiving unit is configured to receive a content distribution request sent by the terminal, wherein the content distribution request comprises a web address of a webpage where the requested content is located and a terminal address; a candidate determining unit configured to determine, for a content distribution node in the content distribution node group, the content distribution node as a candidate execution node in response to a traffic redundancy value of the content distribution node being greater than a preset redundancy threshold, wherein the traffic redundancy value of the content distribution node is a difference between a current traffic consumption of the content distribution node and an upper traffic limit; and the target determining unit is configured to determine a target executing node from the candidate executing nodes based on the terminal address, the node quality parameters of the candidate executing nodes and the node address of the candidate executing nodes, wherein the target executing node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website.
In some embodiments, in the candidate determining unit, an upper limit of traffic of the content distribution node in the content distribution node group is determined by an acquiring step including: in the current computing period, according to a preset flow obtaining interval, obtaining flow consumption of a target user corresponding to the content distribution node, storing the obtained flow consumption into a flow consumption set corresponding to the current computing period, and determining the maximum value in the flow consumption set as the upper flow limit of the content distribution node.
In some embodiments, after determining the maximum value in the set of traffic consumption as the upper traffic limit for the content distribution node, the obtaining step further comprises: and deleting the minimum value in the flow consumption set in response to the number of flow consumption in the flow consumption set being greater than the preset number.
In some embodiments, the apparatus further comprises a traffic update unit configured to: determining a required traffic for requesting content and updating the current traffic consumption of the target execution node based on the required traffic.
In a third aspect, embodiments of the present disclosure provide a system for distributing content distribution nodes, including a redirect server group, a content distribution node group, where the redirect server group includes a target redirect server, where the target redirect server is configured to perform a method as described in any implementation manner of the first aspect to determine a target execution node from the content distribution node group; the target execution node is used for: responding to a content distribution request sent by the terminal, and feeding back the request content to the terminal based on the website in the content distribution request.
In some embodiments, the system further comprises a domain name server for: receiving an access request comprising an access domain name sent by a terminal; according to the access domain name and the address of the local domain name server corresponding to the terminal, determining a redirection server from the redirection server group as a target redirection server; and sending the address of the target redirection server to the terminal so that the terminal sends a content distribution request to the target redirection server based on the address of the target redirection server.
In a fourth aspect, embodiments of the present disclosure provide an electronic device comprising: one or more processors; a storage device having one or more programs stored thereon; the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the method as described in any of the implementations of the first aspect.
In a fifth aspect, embodiments of the present disclosure provide a computer readable medium having stored thereon a computer program which, when executed by a processor, implements a method as described in any of the implementations of the first aspect.
The method and the device for distributing the content distribution node provided by the embodiment of the disclosure can receive the content distribution request sent by the terminal, wherein the content distribution request comprises the web address of the webpage where the requested content is located and the terminal address. Then, for a content distribution node in the content distribution node group, the content distribution node is determined as a candidate execution node in response to the traffic redundancy value of the content distribution node being greater than a preset redundancy threshold. The traffic redundancy value of the content distribution node is the difference between the current traffic consumption of the content distribution node and the traffic upper limit. And finally, determining the target execution node from the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node and the node address of each candidate execution node. The target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website. Compared with the method and device for always distributing the same content distribution node once the LDNS of the user caches the first distributed content distribution node address in the related art, the method and device provided by the embodiment of the invention are not limited by the first distributed content distribution node address, and can distribute the content distribution node with large traffic redundancy value and relatively closer address to the terminal address to the user in real time, thereby realizing the purpose of ensuring the full utilization of node traffic resources and improving the response speed of the user for accessing websites.
Drawings
Other features, objects and advantages of the present disclosure will become more apparent upon reading of the detailed description of non-limiting embodiments, made with reference to the following drawings:
FIG. 1 is an exemplary system architecture diagram in which an embodiment of the present disclosure may be applied;
FIG. 2 is a flow chart of one embodiment of a method for distributing content distribution nodes according to the present disclosure;
FIG. 3 is a schematic illustration of one application scenario of a method for distributing content distribution nodes according to an embodiment of the present disclosure;
FIG. 4 is a schematic structural diagram of one embodiment of an apparatus for distributing content distribution nodes according to the present disclosure;
FIG. 5 is a schematic structural diagram of one embodiment of a system for distributing content distribution nodes according to the present disclosure;
fig. 6 is a schematic structural diagram of an electronic device suitable for use in implementing embodiments of the present disclosure.
Detailed Description
The present disclosure is described in further detail below with reference to the drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention. It should be noted that, for convenience of description, only the portions related to the present invention are shown in the drawings.
It should be noted that, without conflict, the embodiments of the present disclosure and features of the embodiments may be combined with each other. The present disclosure will be described in detail below with reference to the accompanying drawings in conjunction with embodiments.
Fig. 1 illustrates an exemplary system architecture 100 of a method for or an apparatus for distributing content distribution nodes to which embodiments of the present disclosure may be applied.
As shown in fig. 1, the system architecture 100 may include terminals 101, 102, 103, networks 104, 105, a target redirect server 106, and content distribution nodes 107, 108, 109. The networks 104, 105 are media to provide communication links between the terminals 101, 102, 103, the target redirect server 106 and the content distribution nodes 107, 108, 109. The networks 104, 105 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
The terminals 101, 102, 103 may interact with the target redirect server 106 through the network 104 to receive or send messages or the like. The terminals 101, 102, 103 may have various applications installed thereon, such as a search class application, a video play class application, a reading class application, and the like.
The terminals 101, 102, 103 may be hardware or software. When the terminals 101, 102, 103 are hardware, they may be various electronic devices supporting the input of content distribution requests, including but not limited to smartphones, tablets, laptop and desktop computers, and the like. When the terminals 101, 102, 103 are software, they can be installed in the above-listed electronic devices. Which may be implemented as multiple software or software modules (e.g., multiple software or software modules for providing distributed services) or as a single software or software module. The present invention is not particularly limited herein.
The target redirect server 106 may be a server providing various services, such as a server determining a content distribution node for responding to the content distribution request sent by the terminals 101, 102, 103. The target redirect server 106 may receive a content distribution request sent by the terminal 101, 102, 103, the content distribution request including a web address and a terminal address of a web page where the requested content is located. Then, for a content distribution node in the content distribution node group (content distribution nodes 107, 108, 109), the content distribution node is determined as a candidate execution node in response to the traffic redundancy value of the content distribution node being greater than a preset redundancy threshold. The traffic redundancy value of the content distribution node is the difference between the current traffic consumption of the content distribution node and the traffic upper limit. And finally, determining the target execution node from the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node and the node address of each candidate execution node. The target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website.
The server may be hardware or software. When the server is hardware, the server may be implemented as a distributed server cluster formed by a plurality of servers, or may be implemented as a single server. When the server is software, it may be implemented as a plurality of software or software modules (e.g., a plurality of software or software modules for providing distributed services), or as a single software or software module. The present invention is not particularly limited herein.
It should be noted that, the method for distributing content distribution nodes provided by the embodiments of the present disclosure is generally performed by the target redirect server 106, and accordingly, the apparatus for distributing content distribution nodes is generally disposed in the target redirect server 106.
It should be understood that the number of terminals, networks, target redirect servers and content distribution nodes in fig. 1 is merely illustrative. There may be any number of terminals, networks, target redirect servers, and content distribution nodes, as desired for implementation.
With continued reference to fig. 2, a flow 200 of one embodiment of a method for distributing content distribution nodes according to the present disclosure is shown. The method for distributing content distribution nodes comprises the following steps:
Step 201, a content distribution request sent by a terminal is received.
The content distribution request includes the web address and the terminal address of the web page where the requested content is located.
In this embodiment, an execution body of the method for distributing content distribution nodes (e.g., the target redirect server 106 shown in fig. 1) may receive a content distribution request sent by a terminal through a wired connection or a wireless connection.
The content distribution request comprises a web address and a terminal address of a webpage where the requested content is located. The requested content may include, but is not limited to, text, pictures, audio, video, and the like. The terminal address generally refers to an internet protocol (Internet Protocol, IP) address of the terminal.
It should be noted that the target redirect server is typically a redirect server determined from a group of redirect servers for reassigning the content distribution node to the terminal. Here, the manner in which the target redirect server is determined from the redirect server group may include, but is not limited to, the following. Mode one: randomly selecting a redirect server as a target redirect server. Mode two: the domain name server finds out a redirection server with the address closest to the address of the local domain name server corresponding to the terminal from the redirection server group based on an access request comprising the access domain name sent by the terminal, and the redirection server is used as a target redirection server.
Step 202, for a content distribution node in the content distribution node group, determining the content distribution node as a candidate execution node in response to the traffic redundancy value of the content distribution node being greater than a preset redundancy threshold.
The traffic redundancy value of the content distribution node is the difference between the current traffic consumption of the content distribution node and the traffic upper limit. The current traffic consumption generally refers to a value of traffic consumed by the content distribution node at the current time. The upper traffic limit generally refers to the value of the available traffic of the content distribution node. As an example, for a content distribution node, the upper traffic limit may be 100G and the current traffic consumption may be 80G. At this time, the traffic redundancy value of the content distribution node is 20G. Where G is the flow unit.
In the present embodiment, after receiving the content distribution request, the execution body may determine a candidate execution node from the content distribution node group. Specifically, for any content distribution node in the content distribution node group, the execution body may compare the traffic redundancy value of the content distribution node with a preset redundancy threshold, and if the traffic redundancy value is greater than the preset redundancy threshold, determine the content distribution node as a candidate execution node. Otherwise, if not, the content distribution node is not determined to be a candidate execution node. The preset redundancy threshold may be a preset value.
And 203, determining a target execution node from the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node and the node address of each candidate execution node.
The target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website.
The node quality parameter is typically a parameter describing the quality of the node. The node quality parameters may include, but are not limited to, node delay and node availability. Node latency is typically the latency between the area where the terminal address is located and the content distribution node. Node availability generally refers to the amount of capacity a node can provide services. For any content distribution node, the greater the node availability, the greater the capability of the content distribution node to provide services.
In this embodiment, the execution body may acquire the quality parameter and the node address of each candidate execution node. And searching candidate execution nodes with node addresses belonging to the same area as the terminal address from the candidate execution nodes, and if so, continuing to select the candidate execution node with the optimal node quality parameter (for example, the minimum node delay and/or the maximum node availability) from the candidate execution nodes belonging to the same area as the target execution node. If no candidate execution node belonging to the same area is found, the candidate execution node with the optimal node quality parameter (for example, the minimum node delay and/or the maximum node availability) is selected from the candidate execution nodes as the target execution node.
In this embodiment, the execution body may allocate, to the user, the content distribution node having a large traffic redundancy value and a relatively closer address to the terminal address in real time, so as to improve the response speed of the user to access the website while ensuring full utilization of the node traffic resource.
In some optional implementations of this embodiment, the upper traffic limit of the content distribution nodes in the content distribution node group may be determined by an acquiring step, and the acquiring step may include:
In the current computing period, according to a preset flow obtaining interval, obtaining flow consumption of a target user corresponding to the content distribution node, storing the obtained flow consumption into a flow consumption set corresponding to the current computing period, and determining the maximum value in the flow consumption set as the upper flow limit of the content distribution node.
Wherein the calculation period is typically one month and the start point of the calculation period is typically the beginning of one month, e.g. 0 point on day 7 month 1, and the end point of the calculation period is typically the end of the month, e.g. 24 points on day 31 month 7. The flow rate acquisition interval may be a predetermined time interval. As an example, the flow acquisition interval may be 5 minutes.
The target user may be a user who consumes a large amount of traffic of the content distribution node. Or may be a user having a long-term binding relationship with the content distribution node. For a certain content distribution node, the number of corresponding target users can be one or a plurality of. In addition, it should be noted that the above-described flow consumption set is an empty set by default.
In this implementation manner, for each content distribution node, the execution body may acquire, at a predetermined flow acquisition interval, flow consumption of a target user corresponding to the content distribution node. And then, the acquired flow consumption is stored into a flow consumption set corresponding to the current calculation period. Finally, the maximum value in the traffic consumption set is determined as the traffic upper limit of the content distribution node. Here, since one flow consumption is obtained per one flow acquisition interval, the flow consumption set is also newly increased by one element. If the value of the added element is less than or equal to the maximum value in the traffic consumption set before the element is added, the traffic upper limit of the content distribution node is not changed. If the value of the added element is greater than the maximum value in the traffic consumption set before the element is added, the traffic upper limit of the content distribution node is changed to the value of the newly added element. That is, in the present implementation, the upper traffic limit of the content distribution node may be a value that dynamically changes over time.
In the implementation manner, the maximum flow consumption consumed by the content distribution node in the calculation period is always determined as the upper flow limit, so that the demand of a target user on flow resources can be ensured on one hand. On the other hand, the remained flow resources after meeting the demands of the target users can be distributed to other users, so that the effective utilization of the flow resources of the content distribution nodes is realized, and the resource utilization rate is further improved.
In the above implementation, after determining the maximum value in the traffic consumption set as the traffic upper limit of the content distribution node, the obtaining step may further include:
And deleting the minimum value in the flow consumption set in response to the number of flow consumption in the flow consumption set being greater than the preset number.
The predetermined number may be a predetermined data value. As an example, the preset number may be 10, 100, or 432.
In this implementation, only a preset number of traffic consumptions with a larger corresponding value may need to be reserved in the traffic consumption set. The surplus number of traffic consumers with a corresponding small value can therefore be eliminated. This saves storage space.
In some optional implementations of this embodiment, the method for distributing content distribution nodes described above may further include the steps of: determining a required traffic for requesting content and updating the current traffic consumption of the target execution node based on the required traffic.
In this implementation manner, after determining the target execution node for responding to the content distribution request, the execution body may determine the flow required for requesting the content, and then take the sum of the current flow consumption and the required flow as the new current flow consumption of the target execution node. It should be noted that, since the size of the requested content is generally fixed, the required traffic is also fixed, and the required traffic can be obtained directly according to the size of the requested content.
In the implementation manner, the current flow consumption of the target execution node is updated in time, so that accurate distribution of the content distribution node is facilitated, and the response speed of a user for accessing a website is improved while the full utilization of the node flow resource is further ensured.
With continued reference to fig. 3, fig. 3 is a schematic diagram of an application scenario 300 of the method for distributing content distribution nodes according to the present embodiment. In the application scenario of fig. 3, a terminal 301 sends a content distribution request to a target redirect server 302. The content distribution request may include a web address M of a web page where the requested content X is located and a terminal address N of the terminal 301.
The target redirect server 302 may, upon receiving the content distribution request, perform the steps of:
First, candidate execution nodes are selected from the content distribution node group { A, B, C, D, E }. Here, for each content distribution node in the content distribution node group { a, B, C, D, E }, the content distribution node is determined as a candidate execution node in response to the traffic redundancy value of the content distribution node being greater than the preset redundancy threshold T. The traffic redundancy value is the difference between the current traffic consumption of the content distribution node and the traffic upper limit. At this time, if the traffic redundancy value of the content distribution node a is 3, the traffic redundancy value of the content distribution node B is 3.5, the traffic redundancy value of the content distribution node C is 1, the traffic redundancy value of the content distribution node D is 2, the traffic redundancy value of the content distribution node E is 0.5, and the preset redundancy threshold T is 2.5. At this time, candidate execution nodes may be screened as follows: a and B.
Then, a target execution node is determined from among the candidate execution nodes a and B. Here, if the distance between the terminal address N and the node address of a is 200 km, the node delay between the area where the terminal address N is located and a is 30 ms and the node availability is 99%. The distance between the terminal address N and the node address of B is 300 km, the node delay between the area where the terminal address N is located and B is 30 ms and the node availability is 96%. At this time, the node address of the candidate execution node a is nearest to the area where the terminal address N is located, and the node quality parameter of a is optimal. The target execution node is a. At this time, the obtained target execution node a may respond to the content distribution request and feed back the request content X to the terminal based on the web address M.
The method for distributing content distribution nodes provided in the foregoing embodiments of the present disclosure may receive a content distribution request sent by a terminal, where the content distribution request includes a web address of a web page where a requested content is located and a terminal address. Then, for a content distribution node in the content distribution node group, the content distribution node is determined as a candidate execution node in response to the traffic redundancy value of the content distribution node being greater than a preset redundancy threshold. The traffic redundancy value of the content distribution node is the difference between the current traffic consumption of the content distribution node and the traffic upper limit. And finally, determining the target execution node from the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node and the node address of each candidate execution node. The target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website. The method of the embodiment is not limited by the address of the content distribution node which is allocated for the first time, and can allocate the content distribution node which has large traffic redundancy value and relatively nearer address to the terminal address to the user in real time, thereby improving the response speed of the user for accessing the website while ensuring the full utilization of the node traffic resource.
With further reference to fig. 4, as an implementation of the method shown in the above figures, the present disclosure provides an embodiment of an apparatus for distributing content distribution nodes, which corresponds to the method embodiment shown in fig. 2, and which is particularly applicable in various electronic devices.
As shown in fig. 4, the apparatus 400 for distributing content distribution nodes of the present embodiment includes: a request receiving unit 401 configured to receive a content distribution request sent by a terminal, where the content distribution request includes a web address of a web page where the requested content is located and a terminal address; a candidate determining unit 402 configured to determine, for a content distribution node in the content distribution node group, the content distribution node as a candidate execution node in response to a traffic redundancy value of the content distribution node being greater than a preset redundancy threshold, wherein the traffic redundancy value of the content distribution node is a difference between a current traffic consumption of the content distribution node and an upper traffic limit; and a target determining unit 403 configured to determine a target execution node from the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node, and the node address of each candidate execution node, wherein the target execution node is configured to respond to the content distribution request and feed back the requested content to the terminal based on the web address.
In some optional implementations of the present embodiment, in the candidate determining unit 402, the upper traffic limit of the content distribution node in the content distribution node group may be determined by an acquiring step, and the acquiring step may include: in the current computing period, according to a preset flow obtaining interval, obtaining flow consumption of a target user corresponding to the content distribution node, storing the obtained flow consumption into a flow consumption set corresponding to the current computing period, and determining the maximum value in the flow consumption set as the upper flow limit of the content distribution node.
In some optional implementations of this embodiment, after determining the maximum value in the set of traffic consumption as the upper traffic limit of the content distribution node, the obtaining step may further include: and deleting the minimum value in the flow consumption set in response to the number of flow consumption in the flow consumption set being greater than the preset number.
In some alternative implementations of the present embodiment, the apparatus may further include a traffic update unit (not shown in the figure). The traffic update unit may be configured to: determining a required traffic for requesting content and updating the current traffic consumption of the target execution node based on the required traffic.
In the apparatus provided in the foregoing embodiment of the present disclosure, the request receiving unit 401 receives a content distribution request sent by a terminal, where the content distribution request includes a web address of a web page where the requested content is located and a terminal address. Then, the candidate determination unit 402 determines, for a content distribution node in the content distribution node group, the content distribution node as a candidate execution node in response to the traffic redundancy value of the content distribution node being greater than a preset redundancy threshold. The traffic redundancy value of the content distribution node is the difference between the current traffic consumption of the content distribution node and the traffic upper limit. Finally, the target determination unit 403 determines the target execution node from among the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node, and the node address of each candidate execution node. The target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website. The device of the embodiment is not limited by the address of the content distribution node allocated for the first time, and can allocate the content distribution node with large traffic redundancy value and relatively closer address to the terminal address to the user in real time, thereby improving the response speed of the user for accessing the website while ensuring the full utilization of the node traffic resource.
With continued reference to fig. 5, there is shown a schematic structural diagram of one embodiment of a system for distributing content distribution nodes according to the present disclosure, comprising: the redirection server group 501 and the content distribution node group 502 include a target redirection server 5011 in the redirection server group 501.
Wherein the target redirect server 5011 is configured to perform the method shown in fig. 2 to determine a target execution node 5021 from the content distribution node group 502.
The target execution node 5021 is configured to: responding to a content distribution request sent by the terminal, and feeding back the request content to the terminal based on the website in the content distribution request.
The system for distributing the content distribution nodes, which is provided by the embodiment of the invention, is not limited by the address of the content distribution node which is distributed for the first time, and can distribute the content distribution node with large traffic redundancy value and relatively closer address to the terminal address to the user in real time, thereby realizing the purpose of ensuring the full utilization of the traffic resource of the node and improving the response speed of the user for accessing the website.
In some alternative implementations of the present embodiment, the system for assigning content distribution nodes may further include a domain name server. Wherein the domain name server is used for executing the following steps:
first, an access request including an access domain name is received from a terminal.
Here, the domain name server may receive an access request transmitted from the terminal through the network. Wherein, the access request includes an access domain name.
And secondly, determining a redirection server from the redirection server group as a target redirection server according to the access domain name and the address of the local domain name server corresponding to the terminal.
Here, if the local domain name server corresponding to the terminal has the address of the redirect server corresponding to the access domain name cached therein, the domain name server may directly determine the redirect server corresponding to the cached address of the redirect server as the target redirect server. In addition, if the address of the redirect server corresponding to the access domain name is not cached in the local domain name server corresponding to the terminal, the domain name server may parse the access domain name, and determine, from the redirect server group, a redirect server close to the address of the local domain name server corresponding to the terminal as the target redirect server. And correspondingly caching the obtained address of the target redirection server and the access domain name.
And thirdly, sending the address of the target redirection server to the terminal so that the terminal sends a content distribution request to the target redirection server based on the address of the target redirection server.
Here, the domain name server may transmit the obtained address of the target redirect server to the terminal through the network. In this way, the terminal can send a content distribution request to the target redirect server through the address of the target redirect server.
In the implementation manner, the domain name server determines the redirection server from the redirection server group as the target redirection server, so that the target redirection server belonging to the same area as the terminal can be obtained, and the target redirection server can process the content distribution request sent by the terminal more quickly, thereby further improving the response speed of the user for accessing the website.
Referring now to fig. 6, a schematic diagram of an architecture of an electronic device (e.g., the target redirect server in fig. 1) 600 suitable for use in implementing embodiments of the present disclosure is shown. The electronic device shown in fig. 6 is merely an example and should not impose any limitations on the functionality and scope of use of embodiments of the present disclosure.
As shown in fig. 6, the electronic device 600 may include a processing means (e.g., a Central Processing Unit (CPU), a graphics processor, etc.) 601, which may perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 602 or a program loaded from a storage means 608 into a Random Access Memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic apparatus 600 are also stored. The processing device 601, the ROM 602, and the RAM 603 are connected to each other through a bus 604. An input/output (I/O) interface 605 is also connected to bus 604.
In general, the following devices may be connected to the I/O interface 605: input devices 606 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, and the like; an output device 607 including, for example, a Liquid Crystal Display (LCD), a speaker, a vibrator, and the like; storage 608 including, for example, magnetic tape, hard disk, etc.; and a communication device 609. The communication means 609 may allow the electronic device 600 to communicate with other devices wirelessly or by wire to exchange data. While fig. 6 shows an electronic device 600 having various means, it is to be understood that not all of the illustrated means are required to be implemented or provided. More or fewer devices may be implemented or provided instead. Each block shown in fig. 6 may represent one device or a plurality of devices as needed.
In particular, according to embodiments of the present disclosure, the processes described above with reference to flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method shown in the flowcharts. In such an embodiment, the computer program may be downloaded and installed from a network via communication means 609, or from storage means 608, or from ROM 602. The above-described functions defined in the methods of the embodiments of the present disclosure are performed when the computer program is executed by the processing means 601. It should be noted that the computer readable medium of the embodiments of the present disclosure may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In an embodiment of the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. Whereas in embodiments of the present disclosure, the computer-readable signal medium may comprise a data signal propagated in baseband or as part of a carrier wave, with computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, fiber optic cables, RF (radio frequency), and the like, or any suitable combination of the foregoing.
The computer readable medium may be contained in the electronic device; or may exist alone without being incorporated into the electronic device. The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: receiving a content distribution request sent by a terminal, wherein the content distribution request comprises a web address of a webpage where the requested content is located and a terminal address; for a content distribution node in a content distribution node group, determining the content distribution node as a candidate execution node in response to a traffic redundancy value of the content distribution node being greater than a preset redundancy threshold, wherein the traffic redundancy value of the content distribution node is a difference between the current traffic consumption of the content distribution node and an upper traffic limit; and determining a target execution node from the candidate execution nodes based on the terminal address, the node quality parameters of the candidate execution nodes and the node address of the candidate execution nodes, wherein the target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website.
Computer program code for carrying out operations of embodiments of the present disclosure may be written in one or more programming languages, including an object oriented programming language such as Java, smalltalk, C ++ and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units involved in the embodiments described in the present disclosure may be implemented by means of software, or may be implemented by means of hardware. The described units may also be provided in a processor, for example, described as: a processor includes a request receiving unit, a candidate determining unit, and a target determining unit. The names of these units do not constitute a limitation on the unit itself in some cases, and for example, the request receiving unit may also be described as "a unit that receives a content distribution request transmitted by a terminal".
The foregoing description is only of the preferred embodiments of the present disclosure and description of the principles of the technology being employed. It will be appreciated by those skilled in the art that the scope of the invention referred to in this disclosure is not limited to the specific combination of features described above, but encompasses other embodiments in which features described above or their equivalents may be combined in any way without departing from the spirit of the invention. Such as those described above, are mutually substituted with the technical features having similar functions disclosed in the present disclosure (but not limited thereto).

Claims (10)

1. A method for distributing content distribution nodes, comprising:
Receiving a content distribution request sent by a terminal, wherein the content distribution request comprises a web address and a terminal address of a webpage where a requested content is located;
For a content distribution node in a content distribution node group, determining the content distribution node as a candidate execution node in response to a traffic redundancy value of the content distribution node being greater than a preset redundancy threshold, wherein the traffic redundancy value of the content distribution node is a difference between a current traffic consumption of the content distribution node and an upper traffic limit, the upper traffic limit of the content distribution node in the content distribution node group being determined by an acquiring step, the acquiring step comprising: in the current computing period, according to a preset flow acquisition interval, acquiring flow consumption of a target user corresponding to the content distribution node, storing the acquired flow consumption into a flow consumption set corresponding to the current computing period, and determining the maximum value in the flow consumption set as the upper flow limit of the content distribution node;
Determining a target execution node from the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node and the node address of each candidate execution node, including: searching candidate execution nodes with node addresses belonging to the same area as the terminal address from the candidate execution nodes, and selecting the candidate execution node with the optimal node quality parameter from the candidate execution nodes belonging to the same area as a target execution node, wherein the target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website.
2. The method of claim 1, wherein after said determining the maximum value in the set of traffic consumption as the upper traffic limit for the content distribution node, said obtaining step further comprises:
and deleting the minimum value in the flow consumption set in response to the number of flow consumption in the flow consumption set being greater than a preset number.
3. The method of claim 1, wherein the method further comprises: determining a required traffic for the requested content and updating a current traffic consumption of the target execution node based on the required traffic.
4. An apparatus for distributing content distribution nodes, comprising:
A request receiving unit configured to receive a content distribution request sent by a terminal, where the content distribution request includes a web address and a terminal address of a web page where a requested content is located;
A candidate determining unit configured to determine, for a content distribution node in the content distribution node group, the content distribution node as a candidate execution node in response to a traffic redundancy value of the content distribution node being greater than a preset redundancy threshold, wherein the traffic redundancy value of the content distribution node is a difference between a current traffic consumption of the content distribution node and an upper traffic limit;
A target determining unit configured to determine a target execution node from among the candidate execution nodes based on the terminal address, the node quality parameter of each candidate execution node, and the node address of each candidate execution node, including: searching candidate execution nodes with node addresses belonging to the same area as the terminal address from the candidate execution nodes, and selecting the candidate execution node with the optimal node quality parameter from the candidate execution nodes belonging to the same area as a target execution node, wherein the target execution node is used for responding to the content distribution request and feeding back the request content to the terminal based on the website;
Wherein, in the candidate determining unit, an upper limit of a flow rate of a content distribution node in the content distribution node group is determined by an acquiring step including: in the current computing period, according to a preset flow obtaining interval, obtaining flow consumption of a target user corresponding to the content distribution node, storing the obtained flow consumption into a flow consumption set corresponding to the current computing period, and determining the maximum value in the flow consumption set as the upper flow limit of the content distribution node.
5. The apparatus of claim 4, wherein after said determining a maximum value in the set of traffic consumption as an upper traffic limit for the content distribution node, said obtaining step further comprises:
and deleting the minimum value in the flow consumption set in response to the number of flow consumption in the flow consumption set being greater than a preset number.
6. The apparatus of claim 4, wherein the apparatus further comprises a traffic update unit configured to:
determining a required traffic for the requested content and updating a current traffic consumption of the target execution node based on the required traffic.
7. A system for distributing content distribution nodes, comprising a redirection server farm, a content distribution node farm, the redirection server farm comprising a target redirection server, wherein,
The target redirection server being configured to perform the method of any one of claims 1-3 to determine a target execution node from the content distribution node group;
the target execution node is configured to: responding to a content distribution request sent by a terminal, and feeding back request content to the terminal based on a website in the content distribution request.
8. The system of claim 7, wherein the system further comprises a domain name server for:
Receiving an access request comprising an access domain name sent by the terminal;
According to the access domain name and the address of the local domain name server corresponding to the terminal, determining a redirection server from the redirection server group as a target redirection server;
And sending the address of the target redirection server to the terminal so that the terminal sends a content distribution request to the target redirection server based on the address of the target redirection server.
9. An electronic device, comprising:
One or more processors;
A storage device having one or more programs stored thereon,
When executed by the one or more processors, causes the one or more processors to implement the method of any of claims 1-3.
10. A computer readable medium having stored thereon a computer program, wherein the program when executed by a processor implements the method of any of claims 1-3.
CN201910675723.4A 2019-07-25 2019-07-25 Method and apparatus for distributing content distribution nodes Active CN110401731B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910675723.4A CN110401731B (en) 2019-07-25 2019-07-25 Method and apparatus for distributing content distribution nodes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910675723.4A CN110401731B (en) 2019-07-25 2019-07-25 Method and apparatus for distributing content distribution nodes

Publications (2)

Publication Number Publication Date
CN110401731A CN110401731A (en) 2019-11-01
CN110401731B true CN110401731B (en) 2024-05-07

Family

ID=68325949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910675723.4A Active CN110401731B (en) 2019-07-25 2019-07-25 Method and apparatus for distributing content distribution nodes

Country Status (1)

Country Link
CN (1) CN110401731B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113094580A (en) * 2021-03-24 2021-07-09 远光软件股份有限公司 Carbon quota calculation method and device, storage medium and terminal equipment
CN114268631B (en) * 2021-12-13 2024-05-10 湖北云务通网络科技有限公司 Low-delay network system, communication connection method thereof and readable storage medium
CN115277566B (en) * 2022-05-20 2024-03-22 鸬鹚科技(深圳)有限公司 Load balancing method and device for data access, computer equipment and medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143237A (en) * 2011-05-09 2011-08-03 宋健 Grid-based Internet content delivery method and system
US8775564B1 (en) * 2013-12-31 2014-07-08 Limelight Networks, Inc. Time based CDN traffic allocation
CN105656992A (en) * 2015-12-25 2016-06-08 厦门大学 Content distribution device orienting to secondary movement content distribution system and method thereof
CN106034330A (en) * 2015-03-17 2016-10-19 网宿科技股份有限公司 Mobile terminal flow processing method based on content distribution network, apparatus and system thereof
CN107147696A (en) * 2017-04-07 2017-09-08 北京信息科技大学 The method and apparatus that caching server is distributed in complex network
CN109565501A (en) * 2016-08-18 2019-04-02 瑞典爱立信有限公司 For selecting the technology of content distributing network entity

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104363313B (en) * 2014-12-02 2018-09-18 网宿科技股份有限公司 Use the resource utilization support method and system of the website of content distributing network

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102143237A (en) * 2011-05-09 2011-08-03 宋健 Grid-based Internet content delivery method and system
US8775564B1 (en) * 2013-12-31 2014-07-08 Limelight Networks, Inc. Time based CDN traffic allocation
CN106034330A (en) * 2015-03-17 2016-10-19 网宿科技股份有限公司 Mobile terminal flow processing method based on content distribution network, apparatus and system thereof
CN105656992A (en) * 2015-12-25 2016-06-08 厦门大学 Content distribution device orienting to secondary movement content distribution system and method thereof
CN109565501A (en) * 2016-08-18 2019-04-02 瑞典爱立信有限公司 For selecting the technology of content distributing network entity
CN107147696A (en) * 2017-04-07 2017-09-08 北京信息科技大学 The method and apparatus that caching server is distributed in complex network

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于内容分发的信息分发管理系统;陈洁;;计算机工程;20080923(S1);全文 *
基于复杂网络的绿色CDN社团结构划分;李昕冉;周金和;;计算机工程;20180315(03);全文 *

Also Published As

Publication number Publication date
CN110401731A (en) 2019-11-01

Similar Documents

Publication Publication Date Title
US11146502B2 (en) Method and apparatus for allocating resource
JP7252356B2 (en) MOBILE EDGE COMPUTING NODE SELECTION METHOD, APPARATUS AND SYSTEM AND COMPUTER PROGRAM
US10637947B2 (en) Scalable, real-time messaging system
US10630785B2 (en) Scalable, real-time messaging system
CN111581563B (en) Page response method and device, storage medium and electronic equipment
CN110401731B (en) Method and apparatus for distributing content distribution nodes
CN110545246A (en) Token bucket-based current limiting method and device
US9712612B2 (en) Method for improving mobile network performance via ad-hoc peer-to-peer request partitioning
US8935377B2 (en) Dynamic registration of listener resources for cloud services
CN111246228B (en) Method, device, medium and electronic equipment for updating gift resources of live broadcast room
CN110430142B (en) Method and device for controlling flow
CN114466018A (en) Scheduling method and device for content distribution network, storage medium and electronic equipment
CN116737080A (en) Distributed storage system data block management method, system, equipment and storage medium
US9736082B2 (en) Intelligent high-volume cloud application programming interface request caching
CN109471713B (en) Method and device for inquiring information
US20200153749A1 (en) Biased selection of dedicated physical connections to provider network
CN112839071B (en) Training system, training data access method and device, electronic equipment and medium
CN116861397A (en) Request processing method, device, electronic equipment and computer readable medium
CN110677484B (en) Bypass distribution preheating method and device and electronic equipment
KR20150011087A (en) Distributed caching management method for contents delivery network service and apparatus therefor
US10819775B2 (en) Systems and methods for server failover and load balancing
CN114125067A (en) Front-end and back-end separated gray scale publishing method, front-end server and configuration server
CN112163176A (en) Data storage method and device, electronic equipment and computer readable medium
US8301775B2 (en) Affiliate bandwidth management
CN113301074A (en) Data request load scheduling method and device, electronic equipment and readable storage medium

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
GR01 Patent grant
GR01 Patent grant