CN109547286B - CDN node selection method, device and storage medium - Google Patents

CDN node selection method, device and storage medium Download PDF

Info

Publication number
CN109547286B
CN109547286B CN201811390953.8A CN201811390953A CN109547286B CN 109547286 B CN109547286 B CN 109547286B CN 201811390953 A CN201811390953 A CN 201811390953A CN 109547286 B CN109547286 B CN 109547286B
Authority
CN
China
Prior art keywords
cdn node
delay
service
target
mec server
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
CN201811390953.8A
Other languages
Chinese (zh)
Other versions
CN109547286A (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.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group 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 China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN201811390953.8A priority Critical patent/CN109547286B/en
Publication of CN109547286A publication Critical patent/CN109547286A/en
Application granted granted Critical
Publication of CN109547286B publication Critical patent/CN109547286B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • 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]

Abstract

The embodiment of the invention discloses a method and equipment for selecting CDN nodes, relates to the field of communication, and realizes selection of CDN nodes with stronger service capability from edge CDN nodes and external CDN nodes. The specific scheme is as follows: the method comprises the steps that an MEC server receives a DNS request sent by a terminal, sends the DNS request to a load balancer, receives an IP address and a first service time delay of a target external CDN node sent by the load balancer, determines the service time delay of each edge CDN node in at least one edge CDN node, determines the minimum service time delay as a second service time delay, determines a transmission time delay according to the IP address of the target external CDN node, determines the target CDN node according to the second service time delay and a comparison result of the sum of the first service time delay and the transmission time delay, and sends the IP address of the target CDN node to the terminal. The embodiment of the invention is used for the process of selecting the CDN node for the terminal.

Description

CDN node selection method, device and storage medium
Technical Field
The embodiment of the invention relates to the field of communication, in particular to a method and equipment for selecting Content Delivery Network (CDN) nodes.
Background
With the development of Mobile internet services and network technologies, a Mobile Edge Computing (MEC) architecture is beginning to emerge. The mobile network Service can be provided by using the MEC architecture, wherein when the CDN Service is provided, a CDN node can be selected by using the MEC architecture so that the terminal can obtain the required content nearby, and the selection of the CDN node can be implemented by using a Domain Name Service (DNS) technology.
In the prior art, the selection process of the CDN nodes is as follows: after receiving a DNS request sent by a terminal, the MEC server may select a node closest to the terminal from among a plurality of connected edge CDN nodes, and return an Internet Protocol (IP) address of the edge CDN node to the terminal. Or, after receiving the DNS request, the MEC server may forward the DNS request to a corresponding load balancer through the core network, so that the load balancer selects a node closest to the terminal from a plurality of connected external CDN nodes, and returns an IP address of the external CDN node to the terminal through the core network and the MEC server.
The prior art at least has the following technical problems: because the edge CDN node and the external CDN node are isolated from each other, the selected CDN node is selected from the edge CDN node or the external CDN node, and selection of a CDN node with a strong service capability from all CDN nodes, that is, the edge CDN node and the external CDN node cannot be achieved.
Disclosure of Invention
The invention provides a CDN node selection method and equipment, which realize the selection of a CDN node with stronger service capability from an edge CDN node and an external CDN node.
In order to achieve the purpose, the invention adopts the following technical scheme:
in a first aspect, the present invention provides a CDN node selection method, where the method may include: the method comprises the steps that an MEC server receives a DNS request sent by a terminal; sending a DNS request to a load balancer corresponding to the DNS request; receiving an IP address and a first service delay of a target external CDN node sent by a load balancer, wherein the first service delay is the delay from the time when the target external CDN node receives a data request to the time when service data requested by a terminal is sent; determining the service time delay of each edge CDN node in at least one edge CDN node, and determining the minimum service time delay as a second service time delay, wherein the second service time delay is the time delay from the receiving of the data request to the sending of the service data requested by the terminal by a target edge CDN node corresponding to the minimum service time delay; determining a transmission delay according to the IP address of the target external CDN node, wherein the transmission delay is the delay of transmitting the service data sent by the target external CDN node from the target external CDN node to the MEC server; determining a target CDN node according to the second service time delay and a comparison result of the sum of the first service time delay and the transmission time delay; and sending the IP address of the target CDN node to the terminal.
In a second aspect, the present invention provides a CDN node selection method, where the method may include: a load balancer receives a DNS request sent by an MEC server; determining an external CDN node closest to the logic distance of the MEC server as a target external CDN node according to the DNS request; determining a first service delay of a target external CDN node, wherein the first service delay is a delay from the time when the target external CDN node receives a data request to the time when service data of a terminal request is sent out; and sending the IP address and the first service delay of the target external CDN node to the MEC server.
In a third aspect, the present invention provides an MEC server, which may include: the device comprises a receiving unit, a sending unit and a determining unit. The terminal comprises a receiving unit, a sending unit and a receiving unit, wherein the receiving unit is used for receiving a DNS request sent by the terminal; a sending unit, configured to send a DNS request to a load balancer corresponding to the DNS request; the receiving unit is further configured to receive an IP address of the target external CDN node and a first service delay sent by the load balancer, where the first service delay is a delay from when the target external CDN node receives the data request to when service data of the terminal request is sent; the determining unit is configured to determine a service delay of each edge CDN node in the at least one edge CDN node, and determine a minimum service delay as a second service delay, where the second service delay is a delay from receiving a data request to sending service data requested by a terminal by a target edge CDN node corresponding to the minimum service delay; determining a transmission delay according to the IP address of the target external CDN node, wherein the transmission delay is the delay of transmitting the service data sent by the target external CDN node from the target external CDN node to the MEC server; determining a target CDN node according to the second service time delay and a comparison result of the sum of the first service time delay and the transmission time delay; and the sending unit is also used for sending the IP address of the target CDN node to the terminal.
The specific implementation manner may refer to the behavior function of the MEC server in the CDN node selection method provided in the first aspect or a possible implementation manner of the first aspect.
In a fourth aspect, a load balancer is provided, the load balancer comprising: the device comprises a receiving unit, a determining unit and a sending unit. The receiving unit is used for receiving a DNS request sent by the MEC server; the determining unit is used for determining an external CDN node closest to the logic distance of the MEC server as a target external CDN node according to the DNS request; determining a first service delay of a target external CDN node, wherein the first service delay is a delay from the time when the target external CDN node receives a data request to the time when service data of a terminal request is sent out; and the sending unit is used for sending the IP address and the first service delay of the target external CDN node to the MEC server.
The specific implementation manner may refer to the second aspect or a behavior function of a load balancer in the CDN node selection method provided by a possible implementation manner of the second aspect.
In a fifth aspect, there is provided an MEC server comprising: at least one processor, a memory, a communication interface, and a communication bus. The processor is connected to the memory and the communication interface through a communication bus, the memory is used for storing computer execution instructions, and when the MEC server runs, the processor executes the computer execution instructions stored in the memory, so that the MEC server executes the CDN node selection method according to the first aspect or any one of possible implementation manners of the first aspect.
In a sixth aspect, a load balancer is provided, which includes: at least one processor, a memory, a communication interface, and a communication bus. The processor is connected to the memory and the communication interface through a communication bus, the memory is used for storing computer execution instructions, and when the load balancer runs, the processor executes the computer execution instructions stored in the memory, so that the load balancer executes the CDN node selection method according to the second aspect or any one of possible implementation manners of the second aspect.
A seventh aspect provides a computer storage medium having stored thereon computer-executable instructions, which, when executed on an MEC server, cause the MEC server to perform the method for selecting a CDN node as described in the first aspect or any one of the possible implementations of the first aspect.
In an eighth aspect, a load balancer is provided, on which computer executable instructions are stored, which, when run on the load balancer, cause the load balancer to perform the method for selecting a CDN node as described in the second aspect or any one of its possible implementations.
According to the CDN node selection method provided by the invention, the time delay of serving the terminal by the external CDN node is compared with the time delay of serving the terminal by the edge CDN node, so that the external CDN node or the edge CDN node is selected to be used. The time delay of the external CDN node is the service time delay of the external CDN node, the transmission time delay from the external CDN node to the MEC server and the transmission time delay from the MEC server to the terminal; and the time delay of the edge CDN node is the service time delay of the edge CDN node, the transmission time delay from the edge CDN node to the MEC server and the transmission time delay from the MEC server to the terminal. Comparing the two formulas, the time delay from the MEC server to the terminal can be offset, because the MEC server is directly connected with the edge CDN node, the logic distance is short, and the MEC server belongs to a physical machine room, the transmission time delay from the edge CDN node to the MEC server is approximate to zero, therefore, only comparison is needed: the target CDN node with stronger service capability can be selected according to the service delay of the external CDN node (the first service delay) + the transmission delay from the external CDN node to the MEC server (the transmission delay) and the service delay of the edge CDN node (the second service delay), so that the selection of the CDN node with stronger service capability from the edge CDN node and the external CDN node is achieved.
Drawings
Fig. 1 is a simplified schematic diagram of a system architecture to which an embodiment of the present invention may be applied;
fig. 2 is a schematic composition diagram of an MEC server according to an embodiment of the present invention;
fig. 3 is a schematic diagram illustrating a load balancer according to an embodiment of the present invention;
fig. 4 is a flowchart of a CDN node selection method according to an embodiment of the present invention;
fig. 5 is a schematic composition diagram of another MEC server according to an embodiment of the present invention;
fig. 6 is a schematic composition diagram of another MEC server according to an embodiment of the present invention;
FIG. 7 is a schematic diagram of another load balancer according to an embodiment of the present invention;
fig. 8 is a schematic diagram illustrating a configuration of another load balancer according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 is a simplified schematic diagram of a system architecture to which an embodiment of the present invention may be applied, as shown in fig. 1, the system architecture may include: a terminal 11, an MEC server 12, a load balancer 13, at least one edge CDN node 14, at least one external CDN node 15, and a base station 16.
The terminal 11 sends a DNS request to the MEC server 12 via the base station 16, the MEC server 12 sends the DNS request to the load balancer 13, and the load balancer 13 determines a target external CDN node closest to the MEC server 12 from at least one external CDN node 15 according to the DNS request, determines a first service delay of the target external CDN node, and sends an IP address and the first service delay of the target external CDN node to the MEC server 12. The MEC server 12 determines a second service delay of the target edge CDN node according to the service delay of the at least one edge CDN node 14, determines a transmission delay according to the IP address of the target external CDN node, determines the target CDN node according to the second service delay and a comparison result of the first service delay and the sum of the transmission delays, and sends the IP address of the target CDN node to the terminal.
The terminal 11 may be a mobile terminal in a specific implementation, such as a mobile phone and a computer with a mobile terminal, or a portable, pocket, handheld, computer-embedded or vehicle-mounted mobile device, for example, a Personal Communication Service (PCS) phone, a cordless phone, a mobile phone, or the like.
The MEC server 12 may provide rich mobile network services, and in the CDN service, the MEC server 12 may implement a simpler CDN service topology. The MEC server 12 is directly connected to each edge CDN node of the at least one edge CDN node 14, is located at a short logical distance, and may belong to a physical room.
The load balancer 13 grasps information of at least one external CDN node 15 and corresponds to the DNS transmitted by the terminal 11. The load balancer 13 may be a global load balancer or a local load balancer.
At least one edge CDN node 14 is an operator's own CDN node, and is isolated from at least one external CDN node 15.
At least one external CDN node 15 is a CDN node belonging to an external CDN service provider.
Fig. 2 is a schematic composition diagram of an MEC server according to an embodiment of the present invention, and as shown in fig. 2, the MEC server may include: at least one processor 21, a memory 22, a communication interface 23, and a communication bus 24.
The following describes each component of the MEC server in detail with reference to fig. 2:
the processor 21 is a control center of the MEC server, and may be a single processor or a collective term for a plurality of processing elements. For example, the processor 21 is a CPU, and may be an Application Specific Integrated Circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention, such as: one or more Digital Signal Processors (DSPs), or one or more Field Programmable Gate Arrays (FPGAs).
In particular implementations, processor 21 may include one or more CPUs such as CPU0 and CPU1 shown in fig. 2 as one example. Also, as an embodiment, the MEC server may include a plurality of processors, such as the processor 21 and the processor 25 shown in fig. 2. Each of these processors may be a Single-core processor (Single-CPU) or a Multi-core processor (Multi-CPU). A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
The Memory 22 may be a Read-Only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an electrically erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical Disc storage, optical Disc storage (including Compact Disc, laser Disc, optical Disc, digital versatile Disc, blu-ray Disc, etc.), a magnetic Disc storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such. The memory 22 may be self-contained and coupled to the processor 21 via a communication bus 24. The memory 22 may also be integrated with the processor 21.
In a particular implementation, the memory 22 is used for storing data in the present invention and software programs for implementing the present invention. The processor 21 may perform various functions of the MEC server by running or executing software programs stored in the memory 22 and calling up data stored in the memory 22.
The communication interface 23 is a device such as any transceiver, and is used for communicating with other devices or communication Networks, such as a Radio Access Network (RAN), a Wireless Local Area Network (WLAN), a load balancer, and the like. The communication interface 23 may include a receiving unit implementing a receiving function and a transmitting unit implementing a transmitting function.
The communication bus 24 may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended ISA (enhanced Industry Standard Architecture) bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 2, but it is not intended that there be only one bus or one type of bus.
Fig. 3 is a schematic diagram of a load balancer according to an embodiment of the present invention, and as shown in fig. 3, the load balancer may include at least one processor 31, a memory 32, a communication interface 33, and a communication bus 34.
The following describes each component of the load balancer in detail with reference to fig. 3:
the processor 31 is a control center of the load balancer, and may be a single processor or a collective term for multiple processing elements. For example, the processor 21 is a CPU, may be an ASIC, or may be one or more integrated circuits configured to implement embodiments of the present invention, such as: one or more DSPs, or one or more FPGAs.
In particular implementations, processor 31 may include one or more CPUs such as CPU0 and CPU1 shown in fig. 3 as one example. Also, as an embodiment, the load balancer may include a plurality of processors, such as the processor 31 and the processor 35 shown in fig. 3. Each of these processors may be a single core processor or a multi-core processor. A processor herein may refer to one or more devices, circuits, and/or processing cores for processing data (e.g., computer program instructions).
Memory 32 may be, but is not limited to, ROM or other type of static storage device that can store static information and instructions, RAM or other type of dynamic storage device that can store information and instructions, EEPROM, CD-ROM or other optical disk storage, optical disk storage (including compact disk, laser disk, optical disk, digital versatile disk, blu-ray disk, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. The memory 32 may be self-contained and coupled to the processor 31 via a communication bus 34. The memory 32 may also be integrated with the processor 31.
In a particular implementation, the memory 32 is used for storing data and software programs for implementing the present invention. Processor 31 may perform various functions of the load balancer by running or executing software programs stored in memory 32, as well as invoking data stored in memory 32.
The communication interface 33, using any transceiver or like device, is used for communication with other equipment or communication networks, such as RAN, WLAN, MEC server, etc. The communication interface 33 may include a receiving unit implementing a receiving function and a transmitting unit implementing a transmitting function.
The communication bus 34 may be an ISA bus, a PCI bus, an EISA bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 3, but this does not mean only one bus or one type of bus.
In order to realize selection of a CDN node with a stronger service capability from an edge CDN node and an external CDN node, an embodiment of the present invention provides a CDN node selection method, where as shown in fig. 4, the method may include:
401. the terminal sends a DNS request to the MEC server.
When a user needs to obtain data through the terminal, input operation can be performed on the terminal, so that the terminal can send a DNS request to the MEC server through the base station according to the input of the user.
402. The MEC server receives a DNS request sent by the terminal.
403. And the MEC server sends the DNS request to a load balancer corresponding to the DNS request.
404. The load balancer receives a DNS request sent by the MEC server.
405. And the load balancer determines an external CDN node closest to the logic distance of the MEC server as a target external CDN node according to the DNS request, and determines a first service time delay of the target external CDN node.
The first service delay is a delay from the receiving of the data request to the sending of the service data requested by the terminal by the target external CDN node. The load balancer can identify a DNS request after receiving the DNS request sent by the MEC server, determine that the DNS request is sent by the MEC server, so as to obtain an IP address of the MEC server, and determine an external CDN node closest to the MEC server in logical distance as a target external CDN node according to the IP address of the MEC server and the IP address of each external CDN node connected with the MEC server. And the load balancer may determine the first service delay of the target external CDN node, as the estimated actual service delay, specifically may determine the first service delay in the following two ways:
in the mode 1, the load balancer determines the first service delay according to the load condition of the target external CDN node and a preset algorithm.
For example, assume that the preset algorithm is: t is t0+ a x, where t0 is a fixed value basic service delay, x is a load condition of the external CDN node, and a is a conversion coefficient for converting the load of the external CDN node to the delay, so that the load balancer can determine the load condition of the target external CDN node and substitute the load condition into a preset algorithm to calculate the first service delay t.
In the mode 2, the load balancer may determine, according to past service data of the target external CDN node, an average value of service delays for the target external CDN node to serve all terminals within a preset time period as the first service delay, or may determine, as the first service delay, a service delay for the target external CDN node to serve the terminal last time.
406. And the load balancer sends the IP address and the first service delay of the target external CDN node to the MEC server.
407. And the MEC server receives the IP address and the first service delay of the target external CDN node sent by the load balancer.
408. And the MEC server determines the service delay of each edge CDN node in at least one edge CDN node, and determines the minimum service delay as a second service delay.
And the second service delay is the delay from the data receiving request to the service data sending the terminal request by the target edge CDN node corresponding to the minimum service delay. The MEC server may determine a second service delay for the target edge CDN node after receiving the IP address of the target external CDN node and the first service delay. Specifically, if there is only one edge CDN node connected to the MEC server, the MEC server may determine the service delay of the edge CDN node as the second service delay. If there are multiple edge CDN nodes connected to the MEC server, the MEC server may determine the service delay of each edge CDN node, and determine, as the second service delay, the minimum service delay among the service delays.
It should be noted that, a method for determining the service delay of the edge CDN node by the MEC server is similar to a method for determining the service delay of the external CDN node by the load balancer, and for specific description of determining the service delay of the edge CDN node by the MEC server, reference may be made to related description of determining the service delay of the external CDN node by the load balancer in step 405, which is not described herein again in the embodiments of the present invention.
409. And the MEC server determines the transmission delay according to the IP address of the target external CDN node.
The transmission delay is the time delay of transmitting the service data sent by the target external CDN node from the target external CDN node to the MEC server. After receiving the IP address of the target external CDN node, the MEC server may determine the transmission delay according to the IP address.
Specifically, in a possible implementation manner, the MEC server may search a pre-stored correspondence between an IP address of the external CDN node and the transmission delay, and obtain the transmission delay corresponding to the IP address of the target external CDN node. In another possible implementation manner, the MEC server may send a test message to a node corresponding to the IP address of the target external CDN node, record time for sending the test message, receive a response message sent by the target external CDN node within a preset time, and record time for receiving the response message, where the transmission delay is (time of receiving the response message-time of sending the test message)/2. For example, the MEC server may initiate a PING operation to a target external CDN node to obtain the transmission latency.
410. And the MEC server determines a target CDN node according to the second service delay and a comparison result of the sum of the first service delay and the transmission delay.
After receiving the first service delay and determining the second service delay and the transmission delay, the MEC server may compare the second service delay with a sum of the first service delay and the transmission delay. If the second service delay is smaller than the sum of the first service delay and the transmission delay, the MEC server may determine the target edge CDN node as a target CDN node; if the second service delay is greater than or equal to the sum of the first service delay and the transmission delay, the MEC server may determine the target external CDN node as the target CDN node.
411. And the MEC server sends the IP address of the target CDN node to the terminal.
412. And the terminal receives the IP address of the target CDN node sent by the MEC server.
According to the CDN node selection method provided by the invention, the time delay of serving the terminal by the external CDN node is compared with the time delay of serving the terminal by the edge CDN node, so that the external CDN node or the edge CDN node is selected to be used. The time delay of the external CDN node is the service time delay of the external CDN node, the transmission time delay from the external CDN node to the MEC server and the transmission time delay from the MEC server to the terminal; and the time delay of the edge CDN node is the service time delay of the edge CDN node, the transmission time delay from the edge CDN node to the MEC server and the transmission time delay from the MEC server to the terminal. Comparing the two formulas, the time delay from the MEC server to the terminal can be offset, because the MEC server is directly connected with the edge CDN node, the logic distance is short, and the MEC server belongs to a physical machine room, the transmission time delay from the edge CDN node to the MEC server is approximate to zero, therefore, only comparison is needed: the target CDN node with stronger service capability can be selected according to the service delay of the external CDN node (the first service delay) + the transmission delay from the external CDN node to the MEC server (the transmission delay) and the service delay of the edge CDN node (the second service delay), so that the selection of the CDN node with stronger service capability from the edge CDN node and the external CDN node is achieved.
The above description mainly introduces the scheme provided by the embodiment of the present invention from the perspective of interaction of various devices. It is understood that each device, such as MEC server, load balancer, for implementing the above functions, includes corresponding hardware structures and/or software modules for performing each function. Those of skill in the art will readily appreciate that the present invention can be implemented in hardware or a combination of hardware and computer software, in conjunction with the exemplary algorithm steps described in connection with the embodiments disclosed herein. Whether a function is performed as hardware or computer software drives hardware depends upon the particular application and design constraints imposed on the solution. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.
In the embodiment of the present invention, functional modules of the MEC server and the load balancer may be divided according to the above method, for example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. It should be noted that, the division of the modules in the embodiment of the present invention is schematic, and is only a logic function division, and there may be another division manner in actual implementation.
In the case of dividing each functional module by corresponding functions, fig. 5 shows another possible composition diagram of the MEC server involved in the foregoing embodiment, as shown in fig. 5, the MEC server may include: a receiving unit 51, a transmitting unit 52 and a determining unit 53.
The receiving unit 51 is configured to support the MEC server to execute step 402 and step 407 in the CDN node selection method shown in fig. 4.
A sending unit 52, configured to support the MEC server to execute step 403 and step 411 in the CDN node selection method shown in fig. 4.
The determining unit 53 is configured to support the MEC server to perform steps 408, 409, and 410 in the CDN node selection method shown in fig. 4.
It should be noted that all relevant contents of each step related to the above method embodiment may be referred to the functional description of the corresponding functional module, and are not described herein again.
The MEC server provided by the embodiment of the invention is used for executing the selection method of the CDN node, so that the same effect as the selection method of the CDN node can be achieved.
In case of an integrated unit, fig. 6 shows another possible composition diagram of the MEC server involved in the above embodiments. As shown in fig. 6, the MEC server includes: a processing module 61, a communication module 62 and a storage module 63.
The processing module 61 is used to control and manage the actions of the MEC server, for example, the processing module 61 is used to support the MEC server to perform step 408, step 409, step 410 in fig. 4, and/or other processes for the techniques described herein. The communication module 62 is used to support the communication of the MEC server with other network entities, such as a load balancer. For example, the communication module 62 is configured to support the MEC server to perform step 402, step 403, step 407, and step 411 in fig. 4. And the storage module 63 is used for storing the program codes and data of the MEC server.
The processing module 61 may be the processor in fig. 2. Which may implement or perform the various illustrative logical blocks, modules, and circuits described in connection with the disclosure. A processor may also be a combination of computing functions, e.g., comprising one or more microprocessors, a DSP and a microprocessor, or the like. The communication module 62 may be the communication interface in fig. 2. The storage module 63 may be the memory of fig. 2.
In the case of dividing each functional module by corresponding functions, fig. 7 shows another possible composition diagram of the load balancer involved in the above embodiment, as shown in fig. 7, the load balancer may include: a receiving unit 71, a determining unit 72 and a transmitting unit 73.
The receiving unit 71 is configured to support the load balancer to execute step 404 in the CDN node selection method shown in fig. 4.
The determining unit 72 is configured to support the load balancer to execute step 405 in the CDN node selection method shown in fig. 4.
The sending unit 73 is configured to support the load balancer to execute step 406 in the CDN node selection method shown in fig. 4.
It should be noted that all relevant contents of each step related to the above method embodiment may be referred to the functional description of the corresponding functional module, and are not described herein again.
The load balancer provided by the embodiment of the invention is used for executing the selection method of the CDN node, so that the effect same as that of the selection method of the CDN node can be achieved.
In case of an integrated unit, fig. 8 shows another possible composition diagram of the load balancer involved in the above embodiment. As shown in fig. 8, the load balancer includes: a processing module 81, a communication module 82 and a storage module 83.
Processing module 81 is used to control and manage the actions of the load balancer, e.g., processing module 81 is used to support the load balancer in performing step 405 in fig. 4, and/or other processes for the techniques described herein. The communication module 82 is used to support communication of the load balancer with other network entities, such as MEC servers. E.g., the communication module 82, is configured to support the load balancer to perform steps 404 and 406 in fig. 4. A storage module 83 for storing program codes and data of the load balancer.
The processing module 81 may be the processor in fig. 3. Which may implement or perform the various illustrative logical blocks, modules, and circuits described in connection with the disclosure. A processor may also be a combination of computing functions, e.g., comprising one or more microprocessors, a DSP and a microprocessor, or the like. The communication module 82 may be the communication interface of fig. 3. The storage module 83 may be the memory of fig. 3.
Through the above description of the embodiments, it is clear to those skilled in the art that, for convenience and simplicity of description, the foregoing division of the functional modules is merely used as an example, and in practical applications, the above function distribution may be completed by different functional modules according to needs, that is, the internal structure of the device may be divided into different functional modules to complete all or part of the above described functions.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described device embodiments are merely illustrative, and for example, the division of the modules or units is only one logical functional division, and there may be other divisions when actually implemented, for example, a plurality of units or components may be combined or may be integrated into another device, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may be one physical unit or a plurality of physical units, that is, may be located in one place, or may be distributed in a plurality of different places. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a readable storage medium. Based on such understanding, the technical solution of the embodiments of the present invention may be essentially or partially contributed to by the prior art, or all or part of the technical solution may be embodied in the form of a software product, where the software product is stored in a storage medium and includes several instructions to enable a device (which may be a single chip, a chip, or the like) or a processor (processor) to execute all or part of the steps of the method according to the embodiments of the present invention. And the aforementioned storage medium includes: various media capable of storing program codes, such as a U disk, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.
The above description is only an embodiment of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions within the technical scope of the present invention are intended to be covered by the scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the appended claims.

Claims (14)

1. A method for selecting CDN nodes of a content delivery network is characterized by comprising the following steps:
a mobile edge computing MEC server receives a domain name service DNS request sent by a terminal;
the MEC server sends the DNS request to a load balancer corresponding to the DNS request;
the MEC server receives an Internet Protocol (IP) address and a first service delay of a target external CDN node sent by the load balancer, wherein the first service delay is the delay from the time when the target external CDN node receives a data request to the time when service data of the data request are sent out;
the MEC server determines the service time delay of each edge CDN node in at least one edge CDN node, and determines the minimum service time delay as a second service time delay, wherein the second service time delay is the time delay from the receiving of the data request to the sending of the service data of the terminal request by a target edge CDN node corresponding to the minimum service time delay;
the MEC server determines a transmission delay according to the IP address of the target external CDN node, wherein the transmission delay is the delay of transmitting the service data sent by the target external CDN node from the target external CDN node to the MEC server;
the MEC server determines a target CDN node according to the second service delay and a comparison result of the sum of the first service delay and the transmission delay;
and the MEC server sends the IP address of the target CDN node to the terminal.
2. The method for selecting a CDN node as recited in claim 1, wherein the determining, by the MEC server, a target CDN node according to the second service delay and a comparison result of the sum of the first service delay and the transmission delay includes:
if the second service delay is smaller than the sum of the first service delay and the transmission delay, determining the target edge CDN node as the target CDN node;
and if the second service delay is greater than or equal to the sum of the first service delay and the transmission delay, determining the target external CDN node as the target CDN node.
3. The CDN node selection method of claim 1 or 2, wherein the determining, by the MEC server, a transmission delay according to the IP address of the target external CDN node includes:
the MEC server acquires the transmission delay corresponding to the IP address of the target external CDN node according to a corresponding relation, wherein the corresponding relation comprises the IP address of the external CDN node and the transmission delay;
or, the MEC server determines the transmission delay according to the IP address of the target external CDN node, the time for sending the test message to the target external CDN node, and the time for receiving the response message sent by the target external CDN node.
4. A method for selecting CDN nodes of a content delivery network is characterized by comprising the following steps:
a load balancer receives a Domain Name Service (DNS) request sent by a Mobile Edge Computing (MEC) server;
the load balancer determines an external CDN node closest to the logic distance of the MEC server as a target external CDN node according to the DNS request;
the load balancer determines a first service delay of the target external CDN node, wherein the first service delay is a delay from receiving a data request to sending service data of the data request by the target external CDN node;
and the load balancer sends the Internet protocol IP address of the target external CDN node and the first service delay to the MEC server.
5. The CDN node selection method of claim 4 wherein the load balancer determines a first service delay for the target external CDN node comprising:
the load balancer determines the first service delay according to the load condition of the target external CDN node and a preset algorithm;
or, the load balancer determines the first service delay according to an average value of service delays in a preset time period.
6. A mobile edge computing, MEC, server, the MEC server comprising: a receiving unit, a transmitting unit and a determining unit;
the receiving unit is used for receiving a Domain Name Service (DNS) request sent by a terminal;
the sending unit is configured to send the DNS request to a load balancer corresponding to the DNS request;
the receiving unit is further configured to receive an internet protocol IP address of a target external content delivery network CDN node and a first service delay sent by the load balancer, where the first service delay is a delay from when the target external CDN node receives a data request to when service data of the data request is sent;
the determining unit is configured to determine a service delay of each edge CDN node in the at least one edge CDN node, and determine a minimum service delay as a second service delay, where the second service delay is a delay from receiving a data request to sending service data of the terminal request by a target edge CDN node corresponding to the minimum service delay; determining a transmission delay according to the IP address of the target external CDN node, wherein the transmission delay is the delay of transmitting the service data sent by the target external CDN node from the target external CDN node to the MEC server; determining a target CDN node according to the second service delay and a comparison result of the sum of the first service delay and the transmission delay;
the sending unit is further configured to send the IP address of the target CDN node to the terminal.
7. The MEC server of claim 6, wherein the determining unit is specifically configured to:
if the second service delay is smaller than the sum of the first service delay and the transmission delay, determining the target edge CDN node as the target CDN node;
and if the second service delay is greater than or equal to the sum of the first service delay and the transmission delay, determining the target external CDN node as the target CDN node.
8. The MEC server of claim 6 or 7, wherein the determining unit is specifically configured to:
acquiring the transmission delay corresponding to the IP address of the target external CDN node according to a corresponding relation, wherein the corresponding relation comprises the IP address of the external CDN node and the transmission delay;
or determining the transmission delay according to the IP address of the target external CDN node, the time for sending the test message to the target external CDN node, and the time for receiving the response message sent by the target external CDN node.
9. A load balancer, wherein the load balancer comprises: a receiving unit, a determining unit and a transmitting unit;
the receiving unit is used for receiving a Domain Name Service (DNS) request sent by a Mobile Edge Computing (MEC) server;
the determining unit is configured to determine, according to the DNS request, an external content delivery network CDN node closest to the MEC server logical distance as a target external CDN node; determining a first service delay of the target external CDN node, wherein the first service delay is a delay from receiving a data request to sending service data of the data request by the target external CDN node;
the sending unit is configured to send the internet protocol IP address of the target external CDN node and the first service delay to the MEC server.
10. The load balancer of claim 9, wherein the determining unit is specifically configured to:
determining the first service delay according to the load condition of the target external CDN node and a preset algorithm;
or, determining the first service delay according to an average value of service delays in a preset time period.
11. A mobile edge computing, MEC, server, the MEC server comprising: a processor, a memory, a communication interface, and a communication bus;
the processor is connected to the memory and the communication interface through the communication bus, the memory is used for storing computer execution instructions, and when the MEC server runs, the processor executes the computer execution instructions stored in the memory, so that the MEC server executes the CDN node selection method according to any one of claims 1 to 3.
12. A load balancer, wherein the load balancer comprises: a processor, a memory, a communication interface, and a communication bus;
the processor is connected to the memory and the communication interface through the communication bus, the memory is used for storing computer-executable instructions, and when the load balancer runs, the processor executes the computer-executable instructions stored in the memory, so that the load balancer executes the selection method of the CDN node according to claim 4 or 5.
13. A computer storage medium comprising computer executable instructions that, when run on a mobile edge computing, MEC, server, cause the MEC server to perform the CDN node selection method of any one of claims 1-3.
14. A computer storage medium comprising computer-executable instructions that, when executed on a load balancer, cause the load balancer to perform the CDN node selection method of claim 4 or 5.
CN201811390953.8A 2018-11-21 2018-11-21 CDN node selection method, device and storage medium Active CN109547286B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811390953.8A CN109547286B (en) 2018-11-21 2018-11-21 CDN node selection method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811390953.8A CN109547286B (en) 2018-11-21 2018-11-21 CDN node selection method, device and storage medium

Publications (2)

Publication Number Publication Date
CN109547286A CN109547286A (en) 2019-03-29
CN109547286B true CN109547286B (en) 2020-06-19

Family

ID=65849156

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811390953.8A Active CN109547286B (en) 2018-11-21 2018-11-21 CDN node selection method, device and storage medium

Country Status (1)

Country Link
CN (1) CN109547286B (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112087312B (en) * 2019-06-15 2023-02-03 华为云计算技术有限公司 Method, device and equipment for providing edge service
CN112104680B (en) * 2019-06-17 2023-03-31 中国移动通信有限公司研究院 Method, device and equipment for determining edge application and storage medium
CN110493313A (en) * 2019-07-19 2019-11-22 北京邮电大学 A kind of method and system of the dispatch service use-case in based on mobile edge calculations network
CN110417676B (en) * 2019-08-06 2022-10-04 腾讯科技(深圳)有限公司 Scheduling method, device and scheduling network
CN112449382B (en) * 2019-08-28 2022-11-22 中国联合网络通信集团有限公司 Data transmission method and server
CN112449381B (en) * 2019-08-28 2022-09-16 中国联合网络通信集团有限公司 Data transmission method and UE
CN110769039B (en) * 2019-10-09 2021-12-10 腾讯科技(深圳)有限公司 Resource scheduling method and device, electronic equipment and computer readable storage medium
CN110995826B (en) * 2019-11-29 2022-05-03 腾讯科技(深圳)有限公司 Communication processing method and device, computer readable medium and electronic equipment
CN112689153A (en) * 2020-12-16 2021-04-20 创盛视联数码科技(北京)有限公司 CDN node recommendation method and device, electronic equipment and storage medium
CN114244888A (en) * 2021-12-10 2022-03-25 珠海格力电器股份有限公司 Method and device for connecting equipment and server and connecting system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9781197B2 (en) * 2009-11-30 2017-10-03 Samsung Electronics Co., Ltd. Methods and apparatus for selection of content delivery network (CDN) based on user location
CN102148752B (en) * 2010-12-22 2014-03-12 华为技术有限公司 Routing implementing method based on content distribution network and related equipment and system
EP2754272B1 (en) * 2011-09-09 2018-03-21 Nokia Solutions and Networks Oy Method, device and system for providing and selecting candidate nodes for live streaming services

Also Published As

Publication number Publication date
CN109547286A (en) 2019-03-29

Similar Documents

Publication Publication Date Title
CN109547286B (en) CDN node selection method, device and storage medium
CN109561141B (en) CDN node selection method and equipment
CN109451002B (en) CDN node selection method and equipment
CN107798108B (en) Asynchronous task query method and device
WO2017114206A1 (en) Method and device for processing short link, and short link server
EP3664372A1 (en) Network management method and related device
US20170180470A1 (en) Method and electronic device for sending CDN address
CN110381131B (en) Method for realizing MEC node identification, mobile terminal, server and storage medium
CN111163130B (en) Network service system and data transmission method thereof
CN111212134A (en) Request message processing method and device, edge computing system and electronic equipment
CN109586969A (en) Content distributing network disaster recovery method, device, computer equipment and storage medium
CN105430711B (en) Transmission method, device and the equipment of information
EP3531749B1 (en) Management method, management unit and system for network function
CN107800814B (en) Virtual machine deployment method and device
CN110740162A (en) Communication link establishing method, device, electronic equipment and medium
CN111586716B (en) Network slice deployment method and device
CN111741512B (en) Private network access method and device
CN109379426B (en) X-CDN scheduling method, device and system based on X-DNS
US8180857B2 (en) Method for downloading file in parallel
CN109862134B (en) Lease time configuration method and system of IP address and DHCP client
CN113423120A (en) Data distribution processing method and device based on private network terminal and electronic equipment
CN110708293B (en) Method and device for distributing multimedia service
CN110995881A (en) Domain name storage method and device
CN112104680A (en) Method, device and equipment for determining edge application and storage medium
CN115021831A (en) Weak network testing method, device, system, equipment and 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