Server network card performance test method, server, storage medium and program product

By setting different static IP addresses for the two network ports of the network card on a server to perform data transmission testing, the problems of large material and time consumption in the existing technology are solved and the testing efficiency is improved.

CN120567732BActive Publication Date: 2025-10-10INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511055989.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-30
Publication Date
2025-10-10
Estimated Expiration
2045-07-30

AI Technical Summary

Technical Problem

In the prior art, server network card performance testing requires building two servers with the same network card configuration, resulting in a large consumption of materials and time.

Method used

On a server, set different static IP addresses for the two network ports of the network card to be tested, and generate performance test results through data transmission test.

Benefits of technology

It reduces the consumption of materials and construction time, improves testing efficiency, and realizes network card performance testing on a single server.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120567732B_ABST
    Figure CN120567732B_ABST
Patent Text Reader

Abstract

The application discloses a server network card performance test method, a server, a storage medium and a program product, relates to the technical field of testing, and achieves the performance test of the network card on only one server by setting two network ports of a network card to be tested on the server to be tested as different static IP addresses, and one of the network ports can communicate with an external network, so that data transmission test can be performed between the two network ports to be tested. Compared with the related art in which two servers with the same network card need to be manually built, the application reduces material consumption and construction time consumption, and improves test efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of testing technology, and in particular to a server network card performance testing method, a server, a storage medium, and a program product. Background Art

[0002] Server network card performance testing requires verifying whether the network card speed meets the manufacturer's specifications.

[0003] Related technologies involve building two servers with identical network cards and testing them through network interaction. This approach requires highly consistent network card configurations, and consumes a lot of materials and time. Summary of the Invention

[0004] The present application provides a server network card performance testing method, a server, a storage medium and a program product to at least solve the problem of large material and time consumption in related technologies.

[0005] This application provides a method for testing the performance of a server network card. A network card to be tested is configured on a server. The method includes:

[0006] In response to the test instruction, obtaining test configuration parameters; the test configuration parameters include test performance indicator data of the network card;

[0007] Set different static Internet Protocol IP addresses for the two network ports to be tested on the network card; one of the two network ports to be tested can communicate with the external network;

[0008] According to the test configuration parameters, the data transmission test is performed on the two network ports to be tested, and the performance test results of the network card are generated.

[0009] The present application also provides a server network card performance testing device. A network card to be tested is configured on a server. The server network card performance testing device is integrated into the server. The server network card performance testing device includes:

[0010] An acquisition module, configured to acquire test configuration parameters in response to a test instruction; the test configuration parameters include test performance index data of the network card;

[0011] A setting module is used to set different static Internet Protocol IP addresses for two network ports to be tested on the network card; one of the two network ports to be tested is capable of communicating with an external network;

[0012] The test module is used to perform data transmission test on the two network ports to be tested according to the test configuration parameters and generate performance test results of the network card.

[0013] The present application also provides a server, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned server network card performance testing methods when executing the computer program.

[0014] The present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned server network card performance testing methods are implemented.

[0015] The present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned server network card performance testing methods when executed by a processor.

[0016] This application sets the two network ports to be tested on the server to different static IP addresses, and one of the network ports can communicate with the external network, so that data transmission test can be performed between the two network ports to be tested, thereby realizing performance testing of the network card on only one server. Compared with the related technology that requires manual construction of two servers with the same network card configuration, this application reduces material consumption and construction time, and improves testing efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0018] Figure 1 A schematic diagram of a system architecture provided in an embodiment of the present application;

[0019] Figure 2 A flow chart of a server network card performance testing method provided in an embodiment of the present application;

[0020] Figure 3 A schematic diagram of an interconnected system provided in an embodiment of the present application;

[0021] Figure 4 A schematic diagram of an interface triggering process provided in an embodiment of the present application;

[0022] Figure 5 A flow chart of another server network card performance testing method provided in an embodiment of the present application;

[0023] Figure 6 A schematic diagram of a test result display process provided by this application;

[0024] Figure 7 A schematic diagram of a server network card testing process provided in this application;

[0025] Figure 8 A schematic diagram of the structure of a server network card performance testing device provided in an embodiment of the present application;

[0026] Figure 9 A schematic diagram of the structure of a server provided for this application. DETAILED DESCRIPTION

[0027] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0028] It should be noted that, in the description of this application, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or apparatus comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or apparatus.

[0029] It should be noted that the term "plurality" used in this document refers to two or more. "And / or" describes a relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A alone, A and B together, or B alone. The character " / " generally indicates an "or" relationship between the associated objects.

[0030] When testing a server, the network card must also be tested to determine if its speed meets the theoretical values ​​specified in the manufacturer's specifications. If so, the performance is considered up to standard. Once the test passes, the network card is added to the server's complete system inventory for full system testing.

[0031] The performance test of the network card on the current server usually involves setting up two servers equipped with the same model and quantity of network cards, ensuring the same network card configuration. Then, the two network cards are connected to the network group to maintain the connectivity. The test is performed by detecting the network traffic interaction of the same model network cards on the two servers.

[0032] The above test method requires highly consistent network card configuration. When technicians build the server to be tested according to the configuration list, they need to ensure that the network card is consistent and the entire machine is available, which increases the consumption of materials and time.

[0033] This application sets the two network ports to be tested of the network card to be tested on the server to different static Internet Protocol (IP) addresses, and one of the network ports can communicate with the external network, so that data transmission test can be performed between the two network ports to be tested, thereby realizing performance testing of the network card on only one server. Compared with the related technology that requires manual construction of two servers with the same network card configuration, this application reduces material consumption and construction time, and improves testing efficiency.

[0034] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods.

[0035] In conjunction with the specific application environment architecture or specific hardware architecture on which the execution of the server network card performance testing method depends, the specific application environment architecture or specific hardware architecture is described here. Figure 1 A schematic diagram of a system architecture provided in an embodiment of the present application is shown as follows: Figure 1 As shown, the server 10 is configured with multiple network cards 20. The number of multiple network cards can be set according to actual test requirements and server specifications, and this application does not limit this. Figure 1 Only three network cards 20 are used as an example. The network cards 20 are the network cards to be tested for performance. Each network card 20 includes multiple network ports, such as 2 or 4 network ports.

[0036] The execution entity of the server network card performance testing method provided in this application is a server network card performance testing device, which can be integrated into the server 10.

[0037] Figure 2 A flow chart of a server network card performance testing method provided in an embodiment of the present application is shown as follows: Figure 2 As shown, the method includes:

[0038] S201: In response to a test instruction, obtain test configuration parameters; the test configuration parameters include test performance indicator data of the network card.

[0039] In one application scenario, the tester forms a test configuration plan based on the test requirements and standards within the test scope, builds a server according to the configuration list, and configures the network card to be tested on the server.

[0040] The test configuration scheme is used to express test-related requirements, and the test configuration scheme includes test-related test configuration parameters.

[0041] The test configuration parameters include the test performance index data of the network card.

[0042] In one possible implementation, the test configuration parameters include a network card identifier, a rate specification value, a preset ratio, and a test duration. The network card identifier is used to refer to the network card to be tested to distinguish different network cards. Each network card has a unique Media Access Control (MAC) address, and the network card identifier can be the MAC address of the network card. The rate specification value is the theoretical maximum transmission rate of the network card. The preset ratio is the minimum percentage of the rate specification value that the network card must reach in actual application. For example, if the rate specification value is 10 gigabits per second (Gbps), the preset ratio is 80% (i.e., 8Gbps is the qualified threshold). The test duration is the total duration of network port data transmission during the test.

[0043] The test instruction is used to instruct the network card to be tested to perform a performance test. The server network card performance test method provided in this application can be encapsulated into a software application, for example, the software application can be called an interconnection system, and the tester installs and deploys the interconnection system on the server before testing.

[0044] Testers can use the Application Programming Interface (API) to develop collaborative tools to call the API of the interconnected system, and then input test configuration parameters that the interconnected system can recognize through the user interface (UI) of the interconnected system, such as input in the form of attributes and values, and then trigger test instructions in the UI interface.

[0045] Figure 3 A schematic diagram of an interconnected system provided in an embodiment of the present application is shown in FIG. Figure 3 As shown, the interconnected system includes multiple functional modules: interface trigger module, test execution module, data collection and verification module and test result display module.

[0046] For example, a test start button is displayed in the UI interface, and the tester triggers the test start button to trigger the test instruction. Figure 4 A schematic diagram of an interface triggering process provided in an embodiment of the present application is shown as follows: Figure 4 As shown, the functions of the interface trigger module are as follows:

[0047] In response to the test instruction, the test configuration parameters entered by the tester are obtained: network card identification, rate specification value, preset ratio and test duration, the test configuration parameters are used as input parameters of the test interface, the interface input parameters are encapsulated, and the test interface is called.

[0048] The test execution phase is entered by calling the test interface. The test execution module implements its functions in the test execution phase, that is, to perform performance testing on the network card.

[0049] S202: Different static IP addresses are set for two network ports to be tested on the network card; one of the two network ports to be tested is capable of communicating with an external network.

[0050] There are multiple network ports on the network card. You do not need to perform performance tests on all of them. You can select any two of them as the ports to be tested.

[0051] Only after IP addresses are assigned can the two network ports be connected. In performance testing, the IP addresses of the two network ports will interact with each other, so the IP addresses must be connected to each other.

[0052] Before triggering the test command, when setting up the server, the tester connected one of the network interfaces on the network card to the switch group, allowing the server to connect to the local area network and communicate with the external network. The two network interfaces to be tested include the interface connected to the switch group.

[0053] S203: Perform a data transmission test on the two network ports to be tested according to the test configuration parameters, and generate a performance test result of the network card.

[0054] This application sets the two network ports to be tested on the server to different static IP addresses, and one of the network ports can communicate with the external network, so that data transmission testing can be performed between the two network ports to be tested, thereby realizing performance testing of the network card on only one server. Compared with the related technology that requires manual construction of two servers with the same network card configuration, this application reduces material consumption and construction time, and improves testing efficiency.

[0055] exist Figure 2 Based on the embodiment shown, Figure 5 A flow chart of another server network card performance testing method provided in an embodiment of the present application is shown as follows: Figure 5 As shown, the method includes:

[0056] S501: Responding to a test instruction, obtaining test configuration parameters.

[0057] In some embodiments, the implementation of this step is similar to that of S201 and will not be repeated here.

[0058] In one possible implementation, the test configuration parameter includes a network card identifier corresponding to the network card to be tested; accordingly, after S501, the method provided by the present application further includes S502-S504:

[0059] S502: Perform input integrity check on the test configuration parameters.

[0060] Input parameter integrity check can be achieved by verifying whether the parameters exist, whether the format is correct, and whether the range is reasonable.

[0061] If the verification fails, execute S503; if the verification passes, execute S504.

[0062] S503: If the verification fails, a prompt message is output; the prompt message is used to prompt the user to modify the test configuration parameters.

[0063] For example, the prompt information may be outputted in a UI interface of the interconnected system, thereby prompting the user to modify the test configuration parameters. After modifying the test configuration parameters, the user may re-trigger the test instruction.

[0064] S504: If the verification passes, the network card indicated by the network card identifier is identified from multiple network cards configured on the server, and the network port of the network card is identified.

[0065] Each network card has a unique MAC address, and the network card identifier can be the MAC address of the network card.

[0066] By performing input integrity check on the test configuration parameters, data correctness can be ensured.

[0067] After S504 , the following steps are continued.

[0068] S505: Setting different static IP addresses for the two network ports to be tested on the network card.

[0069] In a possible implementation, the specific implementation process of S505 includes the following two examples:

[0070] Example 1: Set a different static IP address for each network port within the same network segment. In this case, communication between the two network ports does not pass through a physical link. Instead, communication is handled directly by the operating system's kernel network protocol stack. That is, the operating system routes data between the source and destination network ports.

[0071] Example 2: Assign each network port to a different virtual local area network (VLAN) and set a static IP address in a different network segment for each VLAN. In this case, each VLAN is assigned a separate IP segment, forcing the network port traffic to be directed to the external network.

[0072] This application provides two ways to set a static IP address, which is more flexible.

[0073] After S505, a data transmission test is performed on the two network ports to be tested according to the test configuration parameters, and a performance test result of the network card is generated. In a possible implementation, the specific implementation process of this operation includes S506-S509.

[0074] S506: Trigger the two network ports to be tested to perform data transmission, so that the source network port sends a data stream to the target network port.

[0075] Before data transmission, set the maximum transmission unit (MTU) value of the source network port to limit the size of a single data packet in the data stream.

[0076] During the test, the two network ports under test send and receive data with each other. The port sending data is called the source port, and the port receiving data is called the destination port. Data transmission can be either unidirectional or bidirectional. For example, unidirectional data transmission involves port 1 sending data and port 2 receiving data; bidirectional data transmission involves port 1 sending data and port 2 receiving data, or port 2 sending data and port 1 receiving data.

[0077] S507: During the data transmission process, rate verification is performed according to the throughput data, rate specification value and preset ratio of each network port to obtain a rate verification result, and the transmission rate and / or thread number are adjusted according to the rate verification result.

[0078] Throughput data refers to the amount of effective data that can be processed within a unit of time (such as per second or per minute), usually measured in bits per second (bps) or bytes per second (Bps).

[0079] The rate verification result can be regarded as a preliminary test result. Based on the preliminary test result, the transmission rate and / or number of threads can be adjusted and tested to ensure that the adjusted configuration achieves the best performance.

[0080] In a possible implementation, the specific implementation process of S507 includes:

[0081] During data transmission, monitor the traffic data of each network port;

[0082] Determine the throughput data of each network port based on the traffic data and data transmission duration of each network port;

[0083] Determine whether the throughput data is greater than or equal to the product of the rate specification value and the preset ratio;

[0084] If the throughput data is less than the product of the rate specification value and the preset ratio, it means that the throughput does not meet the set performance index, and the rate check result is determined to be that the actual rate does not meet expectations;

[0085] If the rate check result is that the actual rate does not meet the expectation, the data transmission process is adjusted in terms of increasing the rate and / or increasing the number of threads.

[0086] The traffic data refers to the total amount of data packets transmitted by the network interface within the data transmission duration.

[0087] In a possible implementation, the specific implementation process of monitoring the traffic data of each network interface includes:

[0088] The sending traffic data of the source network interface is monitored.

[0089] If the two network interfaces to be tested belong to the same network segment, the receiving traffic data of the target network interface is monitored through the network protocol stack of the operating system; or if the two network interfaces to be tested belong to different network segments, the receiving traffic data of the target network interface is monitored through the traffic monitoring tool.

[0090] For example, after the test is started, the data monitoring and collection process is started by default, the sending traffic data of the source network interface is monitored as the reference of the original data throughput, and the receiving traffic data of the target network interface is monitored through the traffic monitoring tool of the routing table or gateway.

[0091] From the moment when the two network interfaces are triggered to transmit data, the two network interfaces continuously transmit and receive data streams, and the continuous duration is based on the test duration in the test configuration parameters. When the traffic data of the network interfaces is monitored, the traffic data of each network interface can be obtained periodically, that is, the traffic data of each network interface is obtained every certain monitoring interval. The monitoring interval can be set as needed, which is not limited in the present application, for example, 2 seconds, 4 seconds, 10 seconds, etc.

[0092] The traffic data of the source network interface and the target network interface is monitored to provide a basis for determining the throughput data.

[0093] The data transmission duration refers to the duration required for transmitting or receiving data streams by the network interface, and the data transmission duration can be the monitoring interval used when the traffic data of the network is monitored.

[0094] The throughput data of the network interface is the ratio of the traffic data to the data transmission duration. For example, the throughput data of the source network interface is the ratio of the sending traffic data to the data transmission duration, and the throughput data of the target network interface is the ratio of the receiving traffic data to the data transmission duration.

[0095] If the throughput data is greater than or equal to the product of the rate specification value and the preset ratio, it is determined that the rate check result is that the actual rate meets the expectation. If the rate check result is that the actual rate meets the expectation, the data transmission process can also be adjusted in terms of increasing the rate and / or increasing the number of threads, or the data transmission process can also be adjusted in terms of decreasing the rate.

[0096] Speeding up refers to increasing the data transmission rate. For example, during testing, the data transmission rate can start at 100Mbps and gradually approach the theoretical bandwidth of the network card (such as 10Gbps), which is the rate specification value.

[0097] For example, you can start with 1 concurrent thread and increase it to the number of CPU cores (e.g., 4 threads). By adjusting the number of threads, you can also test the concurrent performance of the network port.

[0098] This application conducts dynamic scenario testing on the data transmission process, enriches the test scenarios of the network card and improves the test accuracy through rate adjustment testing and thread number adjustment testing.

[0099] During the test, there are adjustments to the transmission rate or number of threads. It is necessary to calculate and verify the throughput data under each scenario, that is, the data transmission rate, to determine whether the test requirements in the test configuration plan can be met. Specifically, it is the product of the rate specification value and the preset ratio.

[0100] It should be noted that the network layer latency and performance of network ports in the same network segment and different VLANs are different and need to be distinguished based on data communication routing.

[0101] S508: In response to the time duration from the triggering of the test to the current moment reaching the test duration, the source network port is stopped from sending the data stream to the target network port.

[0102] This application stops testing when the test duration is reached.

[0103] Exemplarily, the test execution module in the interconnection system performs a performance test on the network card, and then the data collection and verification module collects various data during the test to verify the performance indicators of the network card.

[0104] S509: Generate a performance test result of the network card according to the throughput data in each scenario collected during the data transmission process.

[0105] In a possible implementation, the performance test result is generated in the form of a test report. The specific implementation process of S509 includes:

[0106] Determine the rate verification result for each scenario based on the throughput data, rate specification value, and preset ratio collected in each scenario during the data transmission process;

[0107] Output a test report based on the network card's hardware parameters, software parameters, network parameters, test configuration parameters, and rate verification results in various scenarios.

[0108] For example, hardware parameters include network card type and interface type; software parameters include operating system type and kernel version; and network parameters include transmission protocol.

[0109] In addition to the NIC's hardware, software, and network parameters, this information can also include the number, model, and manufacturer of components used with the NIC, as well as the measured ratio of network ports. The measured ratio = measured throughput / rate specification × 100%. For example, if the measured throughput is 8.5 Gbps and the rate specification is 10 Gbps, the measured ratio is 85%.

[0110] In one possible implementation, the test report also includes NIC-related project information and a server configuration list. This project information can be used to describe the test objectives of the NIC performance test, helping testers fully understand the NIC's performance. For example, the test objective might be to verify the maximum throughput of a 10G NIC in full-duplex mode.

[0111] By outputting the test report, it is convenient for testers to view the test results.

[0112] In some embodiments, the consistency of the data transmission rate of the network port is also one of the performance indicators of the network port. After determining the throughput data of each network port, it is also possible to determine whether the data transmission rates of different network ports are consistent based on the throughput data of the source network port and the throughput data of the target network port. If the throughput data of the source network port and the throughput data of the target network port are the same or the difference between the two is less than or equal to a preset threshold, it can be considered that the data transmission rates of the network ports are consistent; conversely, if the difference between the throughput data of the source network port and the throughput data of the target network port is greater than the preset threshold, it can be considered that the data transmission rates of the network ports are inconsistent.

[0113] For example, Figure 6 A schematic diagram of a test result display process provided by this application, such as Figure 6 As shown, the test result display module of the interconnected system is used to display the project information of each test project, the server configuration list, the performance test results of each network card and the network card type, and form a summary report for reference and reference in subsequent tests.

[0114] For example, Figure 7 A schematic diagram of a server network card testing process provided for this application, such as Figure 7 As shown, data is transmitted and received between the source and target network ports. The source network port sends data, and the target network port receives data. The source and target network ports are monitored separately. Based on the traffic data and data transmission duration of each network port, the throughput data is determined to determine whether it meets expectations. The judgment result is obtained and a test report is output. The data transmission process includes test scenarios such as initial data transmission, speed increase / deceleration, and thread number adjustment.

[0115] Different from related technologies, this application provides a method and system for testing the interconnection of network cards on a single server, which can complete the interconnection test of network cards on a single server. According to the configuration list requirements, only one server is built with the network card to be tested. At least two network ports on the network card are set to different IP addresses. One of the network ports is connected to the switch group to ensure that the server is connected to the local area network and can communicate with the external network. Communication is established between different network ports on the same network card.

[0116] Build a network card interconnection system (software application) and deploy it to the server to be tested. By triggering the interconnection system execution interface and setting test parameters, the interconnection test of the network cards on the server is started. At the same time, the transmission data on the network ports of both communicating parties is collected to verify whether the network port speed can meet the standard value.

[0117] This test solution saves the time and materials of setting up double servers. By placing multiple types of network cards on one device, multiple types of network cards can be tested concurrently, further improving test efficiency.

[0118] This application implements a single-server network card interconnection test. By deploying a test system (such as an interconnection system) on the server and monitoring the communication between different network ports on the same network card, the network card interconnection test can be completed. The technical effects are as follows:

[0119] (1) Improve test efficiency: The test configuration plan is directly converted into the interface input of the interconnected system and immediately verified, which improves the test quality and accuracy;

[0120] (2) Enhanced test flexibility: The server to be tested can support the assembly of multiple types of network cards and test multiple network cards in parallel. At the same time, it can support one-way / two-way communication and single-thread / multi-thread communication between different network ports of a single type of network card to meet different test requirements;

[0121] (3) Test consistency assurance: The key point of the interconnection test is that the two interconnected network cards must meet the same type. In this solution, different network ports of the same network card serve as the two communicating parties, ensuring complete consistency with themselves and meeting the test conditions and requirements.

[0122] This application is not only suitable for network card performance testing, but can also be extended to higher-speed interface devices for interconnection testing; when interconnecting servers with diverse configurations, it can further verify the performance between cross-server devices.

[0123] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.

[0124] Figure 8 A schematic diagram of the structure of a server network card performance test device provided in an embodiment of the present application. A network card to be tested is configured on the server, and the server network card performance test device 80 is integrated in the server, such as Figure 8 As shown, the server network card performance testing device 80 includes:

[0125] The acquisition module 801 is used to obtain test configuration parameters in response to the test instruction; the test configuration parameters include test performance index data of the network card;

[0126] The setting module 802 is used to set different static IP addresses for the two network ports to be tested on the network card; one of the two network ports to be tested can communicate with the external network;

[0127] The testing module 803 is used to perform a data transmission test on the two network ports to be tested according to the test configuration parameters, and generate a performance test result of the network card.

[0128] In a possible implementation, the setting module 802 is specifically configured to:

[0129] Set different static IP addresses belonging to the same network segment for each network port; or,

[0130] Assign each network port to a different VLAN and set a static IP address of a different network segment for each VLAN.

[0131] In one possible implementation, the test configuration parameters include a rate specification value, a preset ratio, and a test duration; and the test module 803 includes:

[0132] The test unit is used to trigger the two network ports to be tested to perform data transmission, so that the source network port sends a data stream to the target network port;

[0133] An adjustment unit is configured to perform rate verification according to the throughput data, rate specification value, and preset ratio of each network port during data transmission to obtain a rate verification result, and adjust the transmission rate and / or the number of threads according to the rate verification result;

[0134] a termination unit, configured to terminate the transmission of the data stream from the source network port to the target network port in response to the time duration from the triggering of the test to the current moment reaching the test duration;

[0135] The generating unit is used to generate a performance test result of the network card according to the throughput data in each scenario collected during the data transmission process.

[0136] In a possible implementation, the adjustment unit is specifically configured to:

[0137] During data transmission, monitor the traffic data of each network port;

[0138] Determine the throughput data of each network port based on the traffic data and data transmission duration of each network port;

[0139] If the throughput data is less than the product of the rate specification value and the preset ratio, the rate check result is determined to be that the actual rate does not meet expectations;

[0140] If the rate check result shows that the actual rate does not meet expectations, the data transmission process is adjusted to increase the speed and / or increase the number of threads.

[0141] In a possible implementation, the adjustment unit is specifically configured to:

[0142] Monitor the sending traffic data of the source network port;

[0143] If the two network ports to be tested belong to the same network segment, the receiving traffic data of the target network port is monitored through the operating system network protocol stack; or if the two networks to be tested belong to different network segments, the receiving traffic data of the target network port is monitored through the traffic monitoring tool.

[0144] In a possible implementation, the performance test result is in the form of a test report; the generating unit is specifically configured to:

[0145] Determine the rate verification result for each scenario based on the throughput data, rate specification value, and preset ratio collected in each scenario during the data transmission process;

[0146] Output a test report based on the network card's hardware parameters, software parameters, network parameters, test configuration parameters, and rate verification results in various scenarios.

[0147] In a possible implementation, the test configuration parameters include a network card identifier corresponding to the network card to be tested; after obtaining the test configuration parameters in response to the test instruction, the acquisition module 801 is further configured to:

[0148] Perform input integrity check on test configuration parameters;

[0149] If the verification passes, the network card indicated by the network card identifier is identified from multiple network cards configured on the server, and the network port of the network card is identified;

[0150] If the verification fails, a prompt message is output; the prompt message is used to prompt the user to modify the test configuration parameters.

[0151] For the description of the features in the embodiment corresponding to the server network card performance testing device 80, reference can be made to the relevant description of the embodiment corresponding to the server network card performance testing method, which will not be repeated here.

[0152] Figure 9 This is a schematic diagram of the structure of a server provided by this application. Figure 5 As shown, the server 10 provided in this embodiment includes: a processor 101 and a memory 102. In a possible implementation, the server 10 further includes a communication component 103. The processor 101, the memory 102, and the communication component 103 are connected via a bus.

[0153] In a specific implementation process, the processor 101 executes the computer program stored in the memory 102, so that the processor 101 executes the above-mentioned server network card performance testing method.

[0154] The specific implementation process of the processor 101 can be found in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.

[0155] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the application may be directly executed by a hardware processor or by a combination of hardware and software modules within the processor.

[0156] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage.

[0157] A bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be divided into address buses, data buses, and control buses.

[0158] An embodiment of the present application further provides a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps of any of the above-mentioned server network card performance testing method embodiments when running.

[0159] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.

[0160] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of any of the above-mentioned server network card performance testing method embodiments are implemented.

[0161] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the steps in any of the above-mentioned server network card performance testing method embodiments.

[0162] It should be noted that for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in this specification are all optional embodiments, and the actions and modules involved are not necessarily required by this application.

[0163] It should be further noted that, although the various steps in the flowchart are shown in sequence as indicated by the arrows, these steps are not necessarily performed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps may be performed in other orders. Moreover, at least a portion of the steps in the flowchart may include multiple sub-steps or multiple stages, and these sub-steps or stages are not necessarily performed at the same time, but may be performed at different times. The execution order of these sub-steps or stages is not necessarily to be performed in sequence, but may be performed in turn or alternately with other steps or at least a portion of the sub-steps or stages of other steps.

[0164] It should be understood that the above-described device embodiments are merely illustrative, and the device of the present application may also be implemented in other ways. For example, the division of units / modules in the above-described embodiments is merely a logical functional division, and actual implementations may employ other division methods. For example, multiple units, modules, or components may be combined or integrated into another system, or some features may be omitted or not implemented.

[0165] In addition, each functional unit / module in each of the embodiments of the present application can be integrated in one unit / module, or each unit / module can exist physically, or two or more units / modules can be integrated together. The integrated unit / module can be realized in the form of hardware or in the form of a software program module.

[0166] If the integrated unit / module is implemented in hardware, the hardware may be digital circuits, analog circuits, etc. The physical implementation of the hardware structure includes, but is not limited to, transistors, memristors, etc. Unless otherwise specified, the processor may be any appropriate hardware processor, such as a central processing unit (CPU), a graphics processing unit (GPU), an application-specific integrated circuit (ASIC), a digital signal processor (DSP), a programmable logic device (PLD), a field programmable gate array (FPGA), a controller, a microcontroller, a microprocessor, or other electronic components. Unless otherwise specified, memory can be implemented by any type of volatile or non-volatile memory device, or a combination of them, such as a USB flash drive, random-access memory (RAM), static random-access memory (SRAM), dynamic random-access memory (DRAM), enhanced dynamic random-access memory (EDRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), high-bandwidth memory (HBM), hybrid memory cube (HMC), or other media that can store program code.

[0167] If the integrated unit / module is implemented in the form of a software program module and sold or used as an independent product, it can be stored in a computer-readable memory. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a memory and includes a number of instructions for causing a server to execute all or part of the steps of the various embodiments of the present application.

[0168] In the above embodiments, the description of each embodiment has its own emphasis. For parts not described in detail in a particular embodiment, please refer to the relevant description of other embodiments. The technical features of the above embodiments can be combined in any way. To keep the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0169] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0170] The above describes in detail a server network card performance testing method, server, storage medium, and program product provided by this application. Specific examples are used herein to illustrate the principles and implementation methods of this application. The description of the above embodiments is only intended to help understand the method and core ideas of this application. It should be noted that, for those skilled in the art, without departing from the principles of this application, several improvements and modifications may be made to this application, and these improvements and modifications also fall within the scope of protection of the claims of this application.

Claims

1. A server network card performance testing method, characterized in that: The server is configured with a network card to be tested, and the method includes: In response to the test instruction, obtaining test configuration parameters; the test configuration parameters include test performance indicator data of the network card; Setting different static Internet Protocol (IP) addresses for the two network ports to be tested on the network card; one of the two network ports to be tested is connected to a switch group, so that the server can connect to the local area network and communicate with the external network; Performing a data transmission test between the two network ports to be tested according to the test configuration parameters, and generating a performance test result of the network card; The step of setting different static Internet Protocol (IP) addresses for the two network ports to be tested on the network card comprises: Setting different static IP addresses belonging to the same network segment for each of the network ports so that the two network ports to be tested can communicate through the kernel network protocol stack of the operating system; or, Divide each of the network ports into a different virtual local area network (VLAN), and set a static IP address of a different network segment for each of the VLANs, so that the two network ports to be tested can communicate through an external network; The test configuration parameters include a rate specification value, a preset ratio, and a test duration; performing a data transmission test between the two network ports to be tested according to the test configuration parameters and generating a performance test result of the network card include: Triggering the two network ports to be tested to perform data transmission, so that the source network port sends a data stream to the target network port; During data transmission, a rate check is performed based on the throughput data of each network port, the rate specification value, and the preset ratio to obtain a rate check result, and the transmission rate and / or the number of threads are adjusted based on the rate check result; In response to the time duration from triggering the test to the current moment reaching the test duration, terminating the source network port from sending the data stream to the target network port; The performance test results of the network card are generated based on the throughput data in each scenario collected during the data transmission process.

2. The server network card performance testing method according to claim 1, wherein: During the data transmission process, performing rate verification according to the throughput data of each network port, the rate specification value, and the preset ratio to obtain a rate verification result, and adjusting the transmission rate and / or the number of threads according to the rate verification result, including: During the data transmission process, monitoring the flow data of each network port; Determine the throughput data of each network port according to the flow data and data transmission duration of each network port; If the throughput data is less than the product of the rate specification value and the preset ratio, determining that the rate check result is that the actual rate does not meet expectations; If the rate check result shows that the actual rate does not meet expectations, the data transmission process is adjusted by increasing the speed and / or increasing the number of threads.

3. The server network card performance testing method according to claim 2, wherein: The monitoring of the traffic data of each network port includes: Monitoring the sending traffic data of the source network port; If the two network ports to be tested belong to the same network segment, the received traffic data of the target network port is monitored through the operating system network protocol stack; or, if the two networks to be tested belong to different network segments, the received traffic data of the target network port is monitored through the traffic monitoring tool.

4. The server network card performance testing method according to claim 1, wherein: The performance test results are in the form of a test report; Generating the performance test results of the network card according to the throughput data collected in each scenario during the data transmission process includes: Determine the rate verification result for each scenario according to the throughput data for each scenario collected during the data transmission process, the rate specification value, and the preset ratio; A test report is output based on the hardware parameters, software parameters, network parameters of the network card, the test configuration parameters and the rate verification results in each of the scenarios.

5. The server network card performance testing method according to any one of claims 1 to 4, characterized in that: The test configuration parameters include a network card identifier corresponding to the network card to be tested; After obtaining the test configuration parameters in response to the test instruction, the method further includes: Performing input integrity check on the test configuration parameters; If the verification passes, identifying the network card indicated by the network card identifier from multiple network cards configured on the server, and identifying the network port of the network card; If the verification fails, a prompt message is output; the prompt message is used to prompt the user to modify the test configuration parameters.

6. A server, characterized in that: include: memory for storing computer programs; A processor, configured to implement the steps of the server network card performance testing method according to any one of claims 1 to 5 when executing the computer program.

7. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, the steps of the server network card performance testing method according to any one of claims 1 to 5 are implemented.

8. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the server network card performance testing method according to any one of claims 1 to 5 are implemented.

Citation Information

Patent Citations

  • Network card test method and system, terminal and storage medium

    CN115102880A

  • Server network card testing method, system and device and medium

    CN120301808A