Content delivery network (CDN) evaluation method and device, medium and equipment
By conducting multiple stress tests on the CDN, it obtains its performance data under multiple network traffic, and establishes a correspondence between traffic and performance, the problem of inaccurate CDN performance evaluation in the prior art is solved, and more accurate evaluation and optimization are achieved.
Patent Information
- Application Number
- CN202311120501.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-31
- Publication Date
- 2025-02-28
AI Technical Summary
The prior art is difficult to accurately evaluate the performance of content distribution networks (CDNs) under different network traffic, resulting in insufficient evaluation.
By conducting multiple stress tests on the CDN, its performance data under multiple network traffic is obtained, and the corresponding relationship between the CDN's network traffic and performance data is determined based on these data, and a more accurate evaluation is carried out.
It realizes that the performance evaluation of CDN under different network traffic is more accurate and reliable, helping to optimize the traffic access and performance management of CDN.
Smart Images

Figure CN119544542A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present disclosure relate to the field of computer technology, and in particular to a content delivery network (CDN) evaluation method, apparatus, medium and device. Background Art
[0002] The basic idea of the Content Delivery Network (CDN) is to avoid the bottlenecks and links on the Internet that may affect the speed and stability of data transmission as much as possible, so as to make the content transmission faster and more stable. By placing node servers in various places on the network to form a layer of intelligent virtual network on the existing Internet, the CDN system can redirect the user's request to the service node closest to the user in real time based on comprehensive information such as network traffic and the connection and load status of each node, as well as the distance to the user and response time. Its purpose is to enable users to obtain the required content nearby, solve the problem of Internet network congestion, and improve the response speed of users visiting websites.
[0003] After R&D personnel build a new CDN, they often need to evaluate the CDN in order to understand its performance and provide users with reliable and stable services. Summary of the invention
[0004] The embodiments of the present disclosure describe a content delivery network (CDN) evaluation method, apparatus, medium, and device, which can evaluate the performance of the CDN under different network traffic flows, thereby making the evaluation more accurate.
[0005] According to a first aspect, a content distribution network (CDN) evaluation method is provided, comprising: obtaining performance data of the CDN under multiple network flows by testing the CDN; determining, based on the performance data, a correspondence between the network flow of the CDN and its performance data; and evaluating the CDN according to the correspondence.
[0006] According to a second aspect, a content distribution network (CDN) evaluation device is provided, comprising: a testing unit configured to obtain performance data of the CDN under multiple network flows by testing the CDN; a determining unit configured to determine, based on the performance data, a correspondence between the network flow of the CDN and its performance data; and an evaluating unit configured to evaluate the CDN according to the correspondence.
[0007] According to a third aspect, a computer program product is provided, comprising a computer program, wherein when the computer program is executed by a processor, the method as described above in any one of the first aspect is implemented.
[0008] According to a fourth aspect, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed in a computer, the computer is caused to execute any one of the methods in the first aspect.
[0009] According to a fifth aspect, an electronic device is provided, comprising a memory and a processor, wherein the memory stores executable code, and when the processor executes the executable code, any one of the methods in the first aspect is implemented.
[0010] According to the content distribution network CDN evaluation method and device provided by the embodiment of the present disclosure, first, by testing the CDN, the performance data of the CDN under multiple network flows is obtained. Then, based on the performance data, the corresponding relationship between the network flow of the CDN and its performance data is determined, and the CDN is evaluated according to the corresponding relationship. Therefore, according to the corresponding relationship between the network flow and the performance data, the performance of the CDN under different network flows can be more accurately evaluated, so that the evaluation is more accurate. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1 A schematic diagram showing an application scenario in which the embodiment of the present disclosure can be applied;
[0012] Figure 2 A schematic diagram of a process of evaluating a content delivery network CDN according to an embodiment is shown;
[0013] Figure 3 A schematic diagram showing the plotting of multiple performance indicators in one image is shown;
[0014] Figure 4 A schematic diagram of a process of evaluating a content delivery network CDN according to another embodiment is shown;
[0015] Figure 5 A schematic block diagram of a content delivery network CDN evaluation device according to an embodiment is shown;
[0016] Figure 6 A schematic diagram of the structure of an electronic device suitable for implementing the embodiments of the present application is shown. DETAILED DESCRIPTION
[0017] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0018] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, application, server, or storage medium that performs the operation of the technical solution of the present disclosure according to the prompt message.
[0019] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0020] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet the relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0021] The technical solution provided by the present disclosure is further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the relevant inventions, rather than to limit the inventions. It should also be noted that, for ease of description, only the parts related to the relevant inventions are shown in the accompanying drawings. It should be noted that, in the absence of conflict, the embodiments of the present disclosure and the features in the embodiments can be combined with each other.
[0022] As mentioned above, after a new CDN is built, it needs to be evaluated. In some scenarios, a test node can be used to initiate a request to the new CDN to obtain various test indicators such as connectivity and connection time. However, relying solely on indicators such as connectivity and connection time cannot fully evaluate the performance of the CDN, and the traffic access selection made based on this is not reasonable. Because as the access network traffic increases, the degree of CDN performance degradation will vary. For example, a CDN performs well when the user traffic is small, but when the user traffic exceeds a certain value, the performance of the CDN will drop sharply.
[0023] To this end, an embodiment of the present disclosure provides a content delivery network (CDN) evaluation method, which can more accurately evaluate the performance of the CDN under different network traffic. Figure 1 FIG. 1 is a schematic diagram showing an application scenario in which the embodiment of the present disclosure can be applied. Figure 1As shown, first, multiple stress tests are performed on CDN101, wherein the network traffic used in the first stress test is N, and the network traffic n is increased for each subsequent stress test, that is, the network traffic used in the second stress test is (N+n), and the network traffic used in the third stress test is (N+2n), and so on, for multiple stress tests. The performance data of CDN101 under multiple network traffics is obtained. As an example, the performance data includes multiple indicators such as connectivity and connection time. Afterwards, based on the performance data of multiple stress tests, the correspondence between the network traffic of CDN and its performance data is determined. Finally, the CDN is evaluated based on the correspondence. Thus, based on the correspondence between network traffic and performance data, the performance of CDN under different network traffics can be more accurately evaluated.
[0024] Continue to see Figure 2 , Figure 2 The flowchart of a content distribution network CDN evaluation method according to an embodiment is shown. The method can be executed by any device, equipment, platform, or device cluster with computing and processing capabilities. Figure 2 As shown, the content distribution network CDN evaluation method may include the following steps:
[0025] Step 201, by testing the CDN, obtain the performance data of the CDN under multiple network flows.
[0026] In this embodiment, the CDN may be tested multiple times, for example, multiple stress tests may be performed, and the network traffic used for each stress test is different. Here, the network traffic may include QPS (Query Per Second), and QPS may refer to the number of access queries or access services per unit time. As an example, multiple network traffics may be pre-set based on actual experience, and the CDN may be stress tested using each network traffic, and the test data of each request may be collected. As an example, the test data of the request may include whether the request is successful, error code, return code, time consumption of each stage, etc. The test data of the request collected in each test may be statistically analyzed, for example, the mean, median, etc. may be calculated, and the performance data may be obtained, so that the performance data of the CDN under each network traffic may be obtained. Here, the performance data may include multiple performance indicators, for example, connectivity rate, time consumption of each stage, etc. Among them, the connectivity rate (or success rate) may refer to the proportion of requests successfully connected to the service, and the time consumption of each stage may include the connection time, the first byte time (Time To First Byte, TTFB), etc.
[0027] It is understandable that before testing the CDN, some parameters of the CDN can be pre-configured, for example, manually configured. For example, different parameters can be configured according to the CDN domain name type. For example, for dynamic CDN domain names, since the CDN side usually does not cache dynamic CDN domain names, but directly returns to the source, the pressure mainly comes from maintaining multiple long connections at the same time, and a high degree of concurrency, where concurrency is a conventional configuration, so the connection retention time parameter needs to be configured separately. For static CDN domain names, since the CDN side usually caches, the pressure mainly comes from the size of the resources, whether to cold start the return to the source, etc., where the resource size is a conventional configuration, and the resource expiration time parameter needs to be configured separately.
[0028] Step 202: Based on the performance data, determine the corresponding relationship between the network traffic of the CDN and its performance data.
[0029] In this embodiment, the corresponding relationship between the network traffic of the CDN and its performance data can be determined based on the obtained performance data of the CDN under multiple network traffics. The corresponding relationship can be used to characterize the corresponding relationship between the network traffic and the performance data.
[0030] In some implementations, a graph may be drawn based on multiple performance indicators under multiple network flows, and the graph may be displayed. For example, a graph may be drawn with network flow as the horizontal axis and various performance indicators as the vertical axis. In practice, a graph may be drawn for each performance indicator, or multiple performance indicators may be drawn in one graph. When drawing, a curve may be drawn for each performance indicator. For example, performance indicators include connectivity rate (or success rate), connection establishment time, and first byte time. Figure 3 Figure 2 shows a schematic diagram of plotting multiple performance indicators in one image. Figure 3 As shown in FIG. 1 , the horizontal axis of the graph is network traffic, and the vertical axis includes connectivity rate and time. Each performance indicator can correspond to a curve in the graph. Figure 3 The image shown includes a curve 301 corresponding to the connectivity rate, a curve 302 corresponding to the connection establishment time, and a curve 303 corresponding to the first byte time.
[0031] From the curve 301 corresponding to the connectivity rate, it can be seen that the connectivity rate will decrease as the network traffic increases, and there is no linear relationship between the connectivity rate and the network traffic, but there is a certain threshold. When the network traffic exceeds the threshold, the connectivity rate will drop sharply. At this time, the threshold network traffic is recorded as a mutation point, which can be used to measure the capacity of the CDN. Here, capacity can refer to the traffic carrying capacity.
[0032] Similarly, from curve 302 corresponding to the connection establishment time and curve 303 corresponding to the first byte time, it can be seen that the connection establishment time and the first byte time will increase with the increase of network traffic, and the relationship is not linear, but there is a certain threshold. When the network traffic is greater than the threshold, the connection establishment time and the first byte time will increase sharply. At this time, the threshold network traffic record is a mutation point, which can be used to measure the traffic carrying capacity of the CDN.
[0033] Through this implementation, the corresponding relationship between network traffic and various performance indicators can be clearly displayed in the form of images, so as to quickly analyze the traffic carrying capacity of the CDN.
[0034] Step 203: Evaluate the CDN according to the corresponding relationship.
[0035] In this embodiment, the CDN can be evaluated based on the correspondence between the network traffic of the CDN and its performance data. For example, when it is necessary to evaluate the performance of the CDN under a certain network traffic, the performance data corresponding to the network traffic can be fed back according to the above correspondence for evaluation by the evaluator. For another example, an evaluation function can be pre-established based on multiple performance indicators. For example, the evaluator establishes an evaluation function based on actual experience. The evaluation function can output an evaluation score based on multiple performance indicator values, and the CDN can be evaluated based on the evaluation score.
[0036] In some implementations, the above step 203 may specifically include the following contents:
[0037] 1) Obtain the network traffic to be input into the CDN. Here, the network traffic to be input into the CDN may be the network traffic pre-connected to the CDN, and an evaluation needs to be performed before access to ensure user experience.
[0038] 2) According to the correspondence between the network traffic of the CDN and its performance data, the performance data corresponding to the network traffic to be input into the CDN is obtained, and the CDN is evaluated according to the obtained performance data.
[0039] As an example, assume that the above correspondence includes performance data corresponding to network flows N1, N2, ... NN, and the network flow to be input into the CDN is M. Then compare network flow M with network flows N1, N2, ... NN, and determine that network flow Ni is closest to network flow M, and then use the performance data corresponding to network flow Ni as the performance data corresponding to network flow M. Afterwards, the CDN can be evaluated based on the performance data corresponding to network flow M. As another example, it can also be based on Figure 3 The multiple curves shown obtain the performance data corresponding to the network traffic to be input into the CDN, thereby evaluating the CDN.
[0040] In the above embodiments of the present disclosure, by testing the CDN, the performance data of the CDN under multiple network flows can be obtained. Then, based on the performance data, the corresponding relationship between the network flow of the CDN and its performance data is determined, and the CDN is evaluated according to the corresponding relationship. Thus, according to the corresponding relationship between the network flow and the performance data, the performance of the CDN under different network flows can be more accurately evaluated, thereby making the evaluation more accurate.
[0041] Further references Figure 4 , Figure 4 A flow chart of a content delivery network (CDN) evaluation method according to another embodiment is shown. The content delivery network (CDN) evaluation method may include the following steps:
[0042] Step 401: receiving a test task for a stress test of a content distribution network.
[0043] In this embodiment, the content distribution network may be the CDN to be evaluated. The test task may be sent by a tester, and the test task may include initial pressure, boosting step, test end condition, target test mode, test duration, etc. The test task may also include test data. For example, the test data may include request data, user information structure, return result assertion, etc. Here, the boosting step may refer to the network traffic increased each time a stress test is performed. The test end condition may be a condition set according to actual needs.
[0044] In some implementations, the test end condition may include at least one of the following: reaching a preset end pressure, a performance indicator in the performance data reaching a preset threshold, etc. In some CDN stress testing processes, the test pressure may be gradually increased according to the boost step length, and multiple stress tests may be performed. When the pressure reaches the preset end pressure, the stress test is terminated. Figure 3 As can be seen from the displayed content, when the pressure reaches a certain level, the service quality provided by the CDN will be lower than the acceptable level. At this time, the pressure test can be ended in advance to save test resource consumption. Specifically, the end thresholds corresponding to various performance indicators can be pre-set. When one or more performance indicators obtained during the pressure test reach the preset end threshold, the pressure test is ended.
[0045] In some implementations, the above-mentioned target test mode may include a distributed test mode, and / or a centralized test mode. Among them, the distributed test mode can send requests by controlling multiple test nodes. Here, the test node can be any device that can send requests to the CDN. Generally, the CDN may include multiple edge nodes distributed in multiple locations. In order to comprehensively evaluate the multiple edge nodes of the CDN network, the above-mentioned multiple test nodes may also be distributed in multiple locations. It can be understood that the access request sent by the distributed test mode is consistent with the real user access link, and the simulation is good. However, the cost is high, so the distributed test mode can support less pressure. The centralized test mode can send requests to the content distribution network through a device or a device cluster. It can be understood that the centralized test mode has a low cost and can support greater pressure, but the access request sent is inconsistent with the real user link and cannot fully simulate the situation where the real user sends a request. In practice, the test mode can be selected according to the actual situation. For example, you can choose to use only one test mode, or you can choose to use two test modes at the same time.
[0046] In some implementations, when the target test mode includes a distributed test mode and a centralized test mode, the test task may further include a proportion of each test mode.
[0047] Step 402, in response to determining that the current conditions do not meet the test end conditions and the preset boost conditions are met at the current moment, the pressure of the pressure test is increased according to the boost step length, and the pressure test is continued using the target test method.
[0048] In this embodiment, it can be determined whether the current conditions have reached the test end conditions. If the test end conditions have not been reached and the preset boost conditions are met at the current moment, the pressure of the stress test can be increased according to the boost step length, and the next round of stress testing can be continued. Each round of stress testing obtains performance data under the corresponding pressure. As an example, the boost condition can be that the test duration under the current pressure reaches the preset test duration. Here, the pressure of the stress test can correspond to the network traffic, and the greater the network traffic, the greater the pressure.
[0049] In some implementations, the content distribution network may include multiple edge nodes. In the case where the target test mode includes a centralized test mode, the above-mentioned continued stress test using the target test mode may specifically include the following contents:
[0050] S1, obtain the Internet IP addresses of multiple test nodes.
[0051] In this implementation, the Internet IP address of the test node may be obtained in a variety of ways. For example, the Internet IP address of the test node may be obtained by using the test node to access a designated third-party IP query website.
[0052] S2, query the IP of the target edge node corresponding to the IP of each test node.
[0053] In this implementation, the IP of each test node can be used to access a DNS (Domain Name System) server that supports EDNS, perform DNS resolution, and obtain the IP of the target edge node corresponding to the IP of each test node. Among them, EDNS (Extension Mechanisms for DNS) is a DNS extension protocol that provides intelligent domain name resolution services. In this example, EDNS will determine the source (for example, geographic location) of the test node based on the IP of the test node, and intelligently return the corresponding target edge node IP for the test node based on the source.
[0054] S3 sends a request to the IP of the target edge node for stress testing.
[0055] In this implementation, the IPs of multiple target edge nodes determined by the IPs of multiple test nodes can be used as the IPs of the test targets for testing. Specifically, a centralized request sending method can be used to send requests to the IPs of multiple target edge nodes to perform stress testing. Thus, a centralized testing method can be used to implement testing of multiple edge nodes of a CDN distributed in different locations.
[0056] In some implementations, when the target test mode includes a distributed test mode, the above-mentioned continuing to perform stress testing in the target test mode may specifically include the following: sending a first request and a test instruction to multiple test nodes to control the multiple test nodes to send a request to the content distribution network according to the first request. The first request is applicable to the first operating system.
[0057] In this implementation, the first request may be a request constructed according to test needs, for example, it may be an HTTP request. The first request may be applicable to the first operating system. When the operating system of the test node is also the first operating system, in response to receiving the test instruction, the test node may send a request to the content distribution network according to the first request. For example, the first request may be sent directly to the content distribution network. As an example, the first operating system may be the operating system of a device that executes the above-mentioned content distribution network CDN evaluation method. The above-mentioned device may control multiple test nodes to send requests, or it may send requests to the content distribution network centrally. When the operating system of the device is the same as the operating system of the test node, the test node may send the first request directly to the content distribution network.
[0058] In some other implementations, when the operating system of the test node is a second operating system and the second operating system is different from the first operating system, the test node can be used to convert the first request into a second request suitable for the second operating system and send the second request to the content distribution.
[0059] In this implementation, since the test nodes may involve different operating systems, such as Android operating system, iOS operating system, Linux operating system, Windows operating system, etc., the second operating system of some test nodes may be different from the first operating system. At this time, the first request may not be suitable for the test node to send. To this end, relevant conversion rules can be deployed in the test node in advance so that the test node can convert the first request into a request suitable for its own operating system.
[0060] Step 403, in response to determining that the current condition meets the test end condition, the test on the CDN is ended, and performance data of the CDN under multiple network flows is obtained.
[0061] In some implementations, the performance data may include at least one of the following indicators: success rate, first byte time, connection establishment time, etc. In the case where the test end condition includes reaching a preset end pressure and an indicator in the performance data reaches a preset threshold, the above determination that the current condition reaches the test end condition may specifically include the following:
[0062] a), if the current test pressure is greater than or equal to the preset end pressure, it is determined that the current condition meets the test end condition.
[0063] b), if the pressure of the current test is less than the preset end pressure, further determine whether the index of the performance data of the current round of test reaches the preset threshold value, and if so, determine that the current condition reaches the test end condition.
[0064] Step 404: Based on the performance data, determine the corresponding relationship between the network traffic of the CDN and its performance data.
[0065] In this embodiment, the specific implementation of step 404 is the same as Figure 2 The process is similar to step 202 in , and will not be described again here.
[0066] Step 405: Evaluate the CDN according to the corresponding relationship.
[0067] In this embodiment, the specific implementation of step 405 is the same as Figure 2 The process is similar to step 203 in the embodiment and will not be described again here.
[0068] Figure 4 In the embodiment shown, the CDN can be stress-tested by gradually increasing the pressure, obtaining the performance data of the CDN under multiple network flows, and determining the corresponding relationship between the network flow of the CDN and its performance data based on the performance data under multiple network flows. Thus, the performance of the CDN under different network flows can be more accurately evaluated based on the corresponding relationship between the network flow and the performance data.
[0069] According to another embodiment, a content delivery network CDN evaluation device is provided. The content delivery network CDN evaluation device can be deployed on any device, equipment, platform, equipment cluster, etc. with computing and processing capabilities.
[0070] Figure 5 A schematic block diagram of a content delivery network (CDN) evaluation device according to an embodiment is shown. Figure 5 The device shown is used to perform Figure 2 As shown in the method. Figure 5 As shown, the content distribution network CDN evaluation device 500 includes: a testing unit 501, configured to obtain performance data of the CDN under multiple network flows by testing the CDN; a determining unit 502, configured to determine the correspondence between the network flow of the CDN and its performance data based on the above performance data; an evaluating unit 503, configured to evaluate the CDN according to the above correspondence.
[0071] In some optional implementations of the present embodiment, the testing unit 501 includes: a receiving unit (not shown in the figure), configured to receive a test task for a stress test on a content distribution network, wherein the test task includes a boosting step, a test end condition, and a target test method; a boosting unit (not shown in the figure), configured to, in response to determining that the current conditions do not meet the test end conditions, and that the preset boosting conditions are met at the current moment, increase the pressure of the stress test according to the boosting step, and continue the stress test using the target test method, wherein the pressure corresponds to the network traffic; an ending unit (not shown in the figure), configured to, in response to determining that the current conditions meet the test end conditions, end the test of the CDN.
[0072] In some optional implementations of this embodiment, the above-mentioned target testing method includes a distributed testing method and / or a centralized testing method. The above-mentioned distributed testing method sends requests by controlling multiple test nodes, and the above-mentioned centralized testing method centrally sends requests to the above-mentioned content distribution network, wherein the above-mentioned multiple test nodes are distributed in multiple locations.
[0073] In some optional implementations of this embodiment, when the target test mode includes a distributed test mode and a centralized test mode, the test task also includes a proportion of each test mode.
[0074] In some optional implementations of this embodiment, the above-mentioned content distribution network includes multiple edge nodes. When the above-mentioned target testing method includes a centralized testing method, the above-mentioned target testing method is used to continue the stress test, including: obtaining the Internet address IPs of the above-mentioned multiple test nodes; querying the IP of the target edge node corresponding to the IP of each test node; and sending a request to the IP of the above-mentioned target edge node to perform a stress test.
[0075] In some optional implementations of the present embodiment, when the above-mentioned target testing method includes a distributed testing method, the above-mentioned use of the above-mentioned target testing method to continue the stress test includes: sending a first request and a test instruction to the above-mentioned multiple test nodes to control the above-mentioned multiple test nodes to send a request to the above-mentioned content distribution network according to the above-mentioned first request, wherein the above-mentioned first request is applicable to the first operating system.
[0076] In some optional implementations of this embodiment, when the operating system of the test node is a second operating system, and the second operating system is different from the first operating system, the test node is used to convert the first request into a second request suitable for the second operating system, and send the second request to the content distribution network.
[0077] In some optional implementations of this embodiment, the above-mentioned test end condition includes at least one of the following: reaching a preset end pressure, and a performance indicator in the performance data reaching a preset threshold.
[0078] In some optional implementations of this embodiment, the performance data includes at least one of the following indicators: success rate, first byte time, connection establishment time; the above-mentioned test end conditions include reaching a preset end pressure and an indicator in the performance data reaching a preset threshold; and determining that the current conditions meet the above-mentioned test end conditions, including: if the pressure of the current test is greater than or equal to the above-mentioned end pressure, determining that the current conditions meet the above-mentioned test end conditions; if the pressure of the current test is less than the above-mentioned end pressure, further judging whether the indicator of the performance data reaches a preset threshold, and if so, determining that the current conditions meet the above-mentioned test end conditions.
[0079] In some optional implementations of this embodiment, the above-mentioned performance data includes multiple performance indicators; and the above-mentioned device 500 also includes: a drawing unit (not shown in the figure), configured to draw an image based on the above-mentioned multiple performance indicators under multiple network flows, and display the above-mentioned image.
[0080] In some optional implementations of this embodiment, the evaluation unit 503 is further configured to: obtain network traffic to be input into the CDN; obtain performance data corresponding to the network traffic to be input into the CDN according to the above correspondence, and evaluate the CDN according to the obtained performance data.
[0081] The above device embodiments correspond to the method embodiments. For specific descriptions, please refer to the description of the method embodiments, which will not be repeated here. The device embodiments are obtained based on the corresponding method embodiments and have the same technical effects as the corresponding method embodiments. For specific descriptions, please refer to the corresponding method embodiments.
[0082] According to another embodiment, there is also provided a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to execute Figure 2 The method described.
[0083] According to another embodiment, there is also provided an electronic device, comprising a memory and a processor, wherein the memory stores an executable code, and when the processor executes the executable code, Figure 2 The method described.
[0084] The foregoing describes specific embodiments of the present disclosure, and other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims may be performed in an order different from that in the embodiments, and the desired results may still be achieved. In addition, the processes depicted in the accompanying drawings do not necessarily have to be performed in the specific order or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible, or may be advantageous.
[0085] Reference below Figure 6 , which shows a schematic structural diagram of an electronic device 600 suitable for implementing an embodiment of the present application. Figure 6 The electronic device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0086] like Figure 6 As shown, the electronic device 600 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage device 608 into a random access memory (RAM) 603. In the RAM 603, various programs and data required for the operation of the electronic device 600 are also stored. The processing device 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0087] Typically, the following devices may be connected to the I / O interface 605: an input device 606 including, for example, a touch screen, a touch pad, a keyboard, a mouse, etc.; an output device 607 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 608 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 609. The communication device 609 may allow the electronic device 600 to communicate with other devices wirelessly or by wire to exchange data. Figure 6 The electronic device 600 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead. Figure 6 Each block shown in the figure may represent one device, or may represent multiple devices as required.
[0088] In particular, according to an embodiment of the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device 609, or installed from the storage device 608, or installed from the ROM 602. When the computer program is executed by the processing device 601, the above-mentioned functions defined in the method of the embodiment of the present application are executed.
[0089] The embodiment of the present disclosure further provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed in a computer, the computer is caused to execute the method provided by the present disclosure.
[0090] It should be noted that the computer-readable medium described in the embodiments of the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the embodiments of the present disclosure, the computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, device or device. In the embodiments of the present disclosure, the computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.
[0091] The computer-readable medium may be included in the electronic device; or it may exist independently without being installed in the electronic device. The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device: obtains the performance data of the CDN under multiple network flows by testing the CDN; determines the corresponding relationship between the network flow of the CDN and its performance data based on the performance data; and evaluates the CDN according to the corresponding relationship.
[0092] Computer program code for performing the operations of the disclosed embodiments may be written in one or more programming languages or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or electronic device. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0093] Each embodiment in the present disclosure is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the storage medium and computing device embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments.
[0094] Those skilled in the art should be aware that in one or more of the above examples, the functions described in the embodiments of the present invention may be implemented using hardware, software, firmware, or any combination thereof. When implemented using software, these functions may be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium.
[0095] The specific implementation methods described above further describe the purpose, technical solutions and beneficial effects of the embodiments of the present invention in detail. It should be understood that the above description is only a specific implementation method of the embodiments of the present invention and is not intended to limit the scope of protection of the present invention. Any modification, equivalent replacement, improvement, etc. made on the basis of the technical solution of the present invention shall be included in the scope of protection of the present invention.
Claims
1. A content distribution network (CDN) evaluation method, comprising: By testing the CDN, we can obtain CDN performance data under multiple network traffic conditions. Based on the performance data, determining a correspondence between the network traffic of the CDN and its performance data; The CDN is evaluated according to the corresponding relationship.
2. The method according to claim 1, wherein: The testing of the CDN includes: Receiving a test task for a stress test of a content distribution network, wherein the test task includes a pressure boosting step length, a test end condition, and a target test mode; In response to determining that the current condition does not meet the test end condition and the preset boost condition is met at the current moment, the pressure of the stress test is increased according to the boost step length, and the stress test is continued using the target test mode, wherein the pressure corresponds to the network traffic; In response to determining that the current condition meets the test end condition, the test on the CDN is ended.
3. The method according to claim 2, wherein: The target testing mode includes a distributed testing mode and / or a centralized testing mode. The distributed testing mode sends requests by controlling multiple testing nodes. The centralized testing mode sends requests to the content distribution network in a centralized manner, wherein the multiple testing nodes are distributed in multiple locations.
4. The method according to claim 3, wherein: In the case where the target test mode includes a distributed test mode and a centralized test mode, the test task also includes a proportion of each test mode.
5. The method according to claim 3, wherein: The content distribution network includes a plurality of edge nodes. In a case where the target test mode includes a centralized test mode, the adopting the target test mode to continue the stress test includes: Obtaining the Internet IP addresses of the multiple test nodes; Query the IP of the target edge node corresponding to the IP of each test node; Send a request to the IP of the target edge node to perform a stress test.
6. The method according to claim 3, wherein: In the case where the target test mode includes a distributed test mode, the step of continuing to perform the stress test using the target test mode includes: A first request and a test instruction are sent to the multiple test nodes to control the multiple test nodes to send a request to the content distribution network according to the first request, wherein the first request is applicable to a first operating system.
7. The method according to claim 6, wherein: In the case that the operating system of the test node is a second operating system, and the second operating system is different from the first operating system, the test node is used to convert the first request into a second request suitable for the second operating system, and send the second request to the content distribution network.
8. The method according to claim 2, wherein: The test end condition includes at least one of the following: reaching a preset end pressure, and a performance indicator in the performance data reaching a preset threshold.
9. The method according to claim 2, wherein: The performance data includes at least one of the following indicators: success rate, first byte time, connection establishment time; the test end condition includes reaching a preset end pressure and an indicator in the performance data reaching a preset threshold; And, determining that the current condition meets the test end condition includes: If the current test pressure is greater than or equal to the end pressure, determining that the current condition meets the test end condition; If the current test pressure is less than the end pressure, it is further determined whether the performance data indicator reaches a preset threshold. If so, it is determined that the current condition meets the test end condition.
10. The method according to claim 1, wherein: The performance data includes a variety of performance indicators; And, the method further comprises: An image is drawn according to the multiple performance indicators under multiple network flows, and the image is displayed.
11. The method according to claim 1, wherein: The evaluating the CDN according to the corresponding relationship includes: Get the network traffic to be input into CDN; The performance data corresponding to the network traffic to be input into the CDN is obtained according to the corresponding relationship, and the CDN is evaluated according to the obtained performance data.
12. A content distribution network (CDN) evaluation device, comprising: The testing unit is configured to obtain performance data of the CDN under multiple network flows by testing the CDN; A determination unit configured to determine, based on the performance data, a correspondence between the network traffic of the CDN and its performance data; An evaluation unit is configured to evaluate the CDN according to the corresponding relationship.
13. A computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to execute the method according to any one of claims 1 to 11.
14. An electronic device comprising a memory and a processor, wherein the memory stores executable code, and when the processor executes the executable code, the method according to any one of claims 1 to 11 is implemented.