CN109547286B - CDN node selection method, device and storage medium - Google Patents
CDN node selection method, device and storage medium Download PDFInfo
- 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
Links
- 238000010187 selection method Methods 0.000 title claims description 29
- 230000005540 biological transmission Effects 0.000 claims abstract description 54
- 238000004891 communication Methods 0.000 claims abstract description 48
- 238000000034 method Methods 0.000 claims abstract description 25
- 230000001934 delay Effects 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 238000012360 testing method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 20
- 238000012545 processing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 230000003287 optical effect Effects 0.000 description 7
- 230000003068 static effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network 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
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).
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.
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)
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)
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 |
-
2018
- 2018-11-21 CN CN201811390953.8A patent/CN109547286B/en active Active
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 |