Server network test method and system, storage medium and equipment

By integrating network card information detection, throughput testing, long-term stress testing and firmware/driver upgrade verification, the automated server network testing method solves the problems of low efficiency and insufficient automation in existing technologies, realizes efficient and accurate server network testing, has real-time monitoring and cross-platform adaptability, and generates detailed reports.

CN120658658APending Publication Date: 2025-09-16SHENZHEN TONGTAIYI INFORMATION TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202510949602.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-07-10
Publication Date
2025-09-16

AI Technical Summary

Technical Problem

Existing server network testing technology has problems such as low efficiency, insufficient automation, poor compatibility, and lack of anomaly detection, making it difficult to meet the needs of efficient, automated, and comprehensive testing in modern server environments.

Method used

Provides a server network testing method and system that integrates network card information detection, network throughput testing, long-term stress testing, firmware/driver upgrade verification and other functions. It has high automation, intelligent analysis, batch testing, exception monitoring and rollback capabilities, and uses automated scripts and scheduling systems to support one-click execution of the complete network testing process.

Benefits of technology

It achieves automation, accuracy and stability improvements in server network testing, can monitor and automatically alert abnormal situations in real time, supports long-term high-load testing, has cross-platform compatibility, generates detailed visual test reports, reduces manual intervention, and improves testing efficiency and reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120658658A_ABST
    Figure CN120658658A_ABST
Patent Text Reader

Abstract

The invention discloses a server network testing method and system, a storage medium and equipment. According to the method, network card information detection, network port state verification, throughput testing, pressure testing and firmware / driver compatibility verification are integrated in a unified mode, and multi-dimensional testing from a hardware layer to a driving layer to a network protocol layer is covered. Compared with a traditional scheme which only depends on a single tool, the server network performance can be comprehensively evaluated, and the integrity and accuracy of testing are ensured. The method not only supports short-time throughput testing, but also can execute long-time high-load pressure testing, in the testing process, the system monitors key indexes such as bandwidth, packet loss rate, time delay, CPU / memory occupation and the like in real time, and can automatically give an alarm when an abnormal condition occurs, so that the stability and the reliability of the testing are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of network testing, and relates to a server network testing method, system, storage medium and equipment. Background Art

[0002] With the rapid development of data centers, cloud computing, high-performance computing (HPC), and artificial intelligence training, server network performance and stability are crucial to overall system efficiency. The performance of server network cards, their drivers, and firmware directly impacts data transmission stability, throughput, latency, and packet loss. Therefore, network testing is a crucial step in pre-shipment server verification, system optimization, and troubleshooting. Currently, server network testing primarily relies on manually executing test commands or using open-source tools such as iperf3, netperf, and ping to evaluate performance, such as bandwidth, latency, and packet loss. However, these methods and tools have their limitations and struggle to meet the demands for efficient, automated, and comprehensive testing in modern server environments.

[0003] Traditional server network testing typically involves testing basic network card information, network port connection status, data throughput, network latency, packet loss rate, and stability. Testers typically manually log in to the server remotely via SSH and execute tools such as iperf3, netperf, and ping in a command-line environment to test different network parameters. For example, iperf3 is primarily used to measure TCP / UDP throughput, netperf is used for more detailed TCP / UDP network performance analysis, and ping is used to assess network connectivity and latency. However, these tools typically run independently and lack unified scheduling. Test data requires manual analysis and organization, which can easily lead to data inconsistencies, omissions, or misjudgments. Furthermore, manual testing processes are cumbersome and inefficient, especially when batch testing of multiple servers or long-term stress testing is required. Manual operation is difficult to meet requirements.

[0004] Currently, some server vendors offer customized network testing tools, such as Dell's iDRAC (Integrated Dell Remote Access Controller) and HPE's iLO (Integrated Lights-Out). These tools can monitor basic network card status and throughput capabilities through the server management interface and verify compatibility after firmware or driver upgrades. However, these vendor tools are typically designed only for specific server brands or models, lacking versatility and failing to meet the needs of large-scale heterogeneous server testing. Furthermore, these tools often have limited functionality, lack support for long-term, high-load stress testing, and are unable to accurately monitor network fluctuations, abnormal packet loss, and other issues.

[0005] For long-term stress testing, existing technologies typically use iperf3 or netperf for continuous data transmission to test network stability. However, running these tools for extended periods can lead to excessive system resource usage and even crash the test process. Existing tools also lack real-time monitoring capabilities, making it impossible to dynamically analyze data during the test. Overall test results are only available after the test is complete, making it difficult to promptly detect and locate network anomalies. For example, in some cases, running iperf3 for extended periods can cause bandwidth fluctuations, and existing methods struggle to achieve automatic alerts and real-time analysis. Furthermore, if anomalies occur during testing, such as a network card disconnection or a driver crash, test engineers must manually intervene, and the lack of an automated recovery mechanism compromises test efficiency and reliability.

[0006] Firmware and driver upgrades are crucial for server network testing. Typically, server network cards (NICs) require regular firmware and driver updates to fix vulnerabilities, optimize performance, or enhance compatibility. However, the existing firmware and driver upgrade testing process still relies heavily on manual operations, requiring engineers to manually download and install new firmware or driver versions and perform a series of tests to verify whether the upgrade impacts network performance. Due to the uncontrollable nature of manual operations, network anomalies (such as decreased bandwidth, increased latency, and compatibility issues) may occur after the upgrade, making it difficult for test engineers to detect these issues promptly or even quickly roll back to a stable version. Furthermore, the compatibility of drivers and firmware varies between different servers and network card models, making it difficult for existing technologies to provide automated compatibility testing solutions.

[0007] In summary, the current server network testing technology has the following shortcomings:

[0008] First, manual testing is inefficient, error-prone, and difficult to conduct large-scale parallel testing.

[0009] Most server network tests rely on engineers manually executing commands such as iperf3, netperf, and ping to test bandwidth, latency, and packet loss rate. This has the following problems:

[0010] The steps are cumbersome and the execution efficiency is low: different tests need to be performed separately, which makes it difficult to batch and automate the operations.

[0011] Manual data analysis is error-prone: Test results are usually output in the form of text logs, which engineers need to manually parse, making it easy for missed judgments and misjudgments to occur.

[0012] Second, consistency cannot be guaranteed: different engineers may use different testing methods, resulting in inconsistent test data and difficulty reproducing the problem.

[0013] Existing open source testing tools (such as iperf3, netperf, and ping) have limitations in different aspects and cannot meet the comprehensive testing needs of server networks alone:

[0014] tool Main functions shortcoming iperf3 TCP / UDP throughput test It is impossible to conduct long-term stress testing, making it difficult to detect traffic fluctuations and jitter. netperf Detailed TCP / UDP network performance testing Complex configuration, difficult to integrate, and does not support automated task scheduling ping Network connectivity test Can only detect basic connectivity and cannot simulate a high-traffic environment

[0015] Disadvantages: These tools can only perform single-dimensional network testing and cannot achieve automation, long-term stability verification, and firmware / driver compatibility testing.

[0016] Third, existing open-source tools (iperf3, netperf, and ping) have limited functionality and lack unified scheduling, making comprehensive and systematic testing difficult. Long-term stress testing lacks stability guarantees, and it's impossible to monitor network anomalies in real time and automatically generate alerts. Customized vendor tools are highly limited, working only in specific hardware environments and lacking versatility.

[0017] Server networks need to be tested under long periods of high load to verify their stability. However, existing tools and methods have the following problems:

[0018] Unstable test process: When iperf3 and netperf run for a long time, resource leaks and process crashes may occur, resulting in test interruption.

[0019] Lack of real-time monitoring mechanism: Data cannot be analyzed in real time during the test (such as bandwidth fluctuations and sudden packet loss). It can only be checked manually after the test is completed, which may miss key anomalies.

[0020] Insufficient anomaly detection: Long-term testing may result in increased packet loss, abnormal latency, network fluctuations, etc., but existing tools cannot automatically detect and generate reports.

[0021] Fourth, the degree of automation in firmware / driver upgrade testing is low, rollback after upgrade is difficult, and stability verification is complex.

[0022] Server network card firmware and drivers require regular upgrades to improve performance or fix vulnerabilities, but existing testing solutions have the following problems:

[0023] The upgrade process is manual and cumbersome: Engineers need to manually download and install firmware / drivers, making the upgrade process time-consuming and error-prone.

[0024] Lack of automated rollback mechanism: After upgrading, if network disconnection, bandwidth degradation, or driver compatibility issues occur, manual rollback is required, and it is difficult to restore to a stable version.

[0025] Insufficient stability verification after the upgrade: The network card status, throughput, and packet loss rate after the upgrade cannot be automatically checked, which may result in potential problems not being discovered in time.

[0026] 6. Unable to automate the complete server network testing process

[0027] The existing test solution cannot execute all test items with one click. Engineers need to run multiple tools separately and record data manually, which leads to the following problems:

[0028] Lack of centralized management: Tools such as iperf3, netperf, and ping are independent of each other and lack a unified scheduling system, making batch execution difficult on different servers.

[0029] Inconsistent testing processes: Different engineers may use different testing methods, resulting in inconsistent data and difficulty in comparing test results.

[0030] Unable to automatically generate reports: Test results are usually text logs that engineers need to manually organize, lacking automated analysis and visual presentation.

[0031] Given the limitations of existing technologies, there is an urgent need to develop an efficient, automated, and scalable server network testing tool. This tool should integrate functions such as network card information detection, network throughput testing, stress testing, and firmware / driver compatibility verification. It should also support batch testing and have anomaly detection and automatic rollback capabilities to improve the efficiency and reliability of server network testing. Summary of the Invention

[0032] The purpose of the present invention is to solve the problems of low testing efficiency, insufficient automation, poor compatibility and lack of anomaly detection in the prior art, and to provide a server network testing method, system, storage medium and equipment, which integrate network card information detection, network port status testing, throughput evaluation, long-term stress testing, firmware / driver upgrade verification and other functions, and have high automation, intelligent analysis, batch testing, anomaly monitoring and rollback capabilities.

[0033] In order to achieve the above object, the present invention adopts the following technical solutions:

[0034] A server network testing method comprises the following steps:

[0035] Obtaining test items to be executed, where the test items to be executed include network throughput and long-time pressure;

[0036] Test network throughput and long-term stress. During the test, monitor changes in memory usage, network card traffic, and packet loss rate in real time to see if there are any abnormalities. If so, terminate the test and record the abnormality. If not, continue the test until the test is completed and generate a test report.

[0037] Obtaining test items to be executed also includes upgrading the system's firmware or drivers, testing the network throughput and long-term stress of the upgraded system, and generating a test report;

[0038] Compare the test reports before and after the upgrade. If the performance of the test report after the upgrade is lower than that of the test report before the upgrade, roll back to the system before the upgrade.

[0039] The test report includes throughput curve, packet loss rate trend and abnormal alarm record.

[0040] During the test, the memory usage, network card traffic, and packet loss rate are monitored in real time to see if there are any abnormalities, including:

[0041] During testing, the packet loss rate and bandwidth fluctuations are monitored in real time;

[0042] When performing stress testing on the network port, if the network port bandwidth usage is ≥10% within the set time, the current network port bandwidth fluctuation is considered abnormal;

[0043] When performing a network port stress test, use the ifconfig network port detection function or the ethtool network port detection function to detect in real time whether there is packet loss or error packets.

[0044] The network throughput test includes:

[0045] Use iperf2, iperf3, or netperf to test network throughput. Select the test tool based on the Max Speed ​​information of the current test network port.

[0046] During the test, the network port occupancy rate is continuously monitored. If the network port occupancy rate is continuously lower than 97%, the test tool is switched. If the network port occupancy rate is continuously above 98%, test data collection begins.

[0047] Obtain the test results of iperf2, iperf3, or netperf. Calculate the average network port bandwidth based on the test results. Calculate the ratio of the average network port bandwidth to the MaxSpeed. If the ratio is greater than 95%, the test passes. Otherwise, the test fails.

[0048] The long-term pressure test includes:

[0049] During the test, the packet loss and error packet data before and after the test are recorded;

[0050] During the test, record the CPU core data and network port bandwidth data during the network test;

[0051] After the test is completed, obtain the test report, which includes whether TCP packet loss occurs, whether the UDP packet loss rate exceeds 1%, whether the Rety field exists, and whether the network port bandwidth usage is abnormal.

[0052] Use the iperf2 or netperf tool to test long-term stress.

[0053] A server network testing system, comprising:

[0054] A test task acquisition module is used to acquire test items to be executed, wherein the test items to be executed include network throughput and long-time pressure;

[0055] The test module is used to test network throughput and long-term stress. During the test, it monitors the changes in memory usage, network card traffic and packet loss rate in real time to see if there are any abnormalities. If so, the test is terminated and the abnormality is recorded. If not, the test is continued until the test is completed and a test report is generated.

[0056] A terminal device comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any one of the methods of the present invention when executing the computer program.

[0057] A computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of any method described in the present invention.

[0058] Compared with the prior art, the present invention has the following beneficial effects:

[0059] The present invention discloses a server network testing method, which integrates network card information detection, network port status verification, throughput testing, stress testing, and firmware / driver compatibility verification, covering multi-dimensional testing from the hardware layer, driver layer to the network protocol layer. Compared with traditional solutions that only rely on a single tool, the present invention can comprehensively evaluate server network performance and ensure the integrity and accuracy of the test. It not only supports short-term throughput testing, but also can perform long-term high-load stress testing. During the test process, the system monitors key indicators such as bandwidth, packet loss rate, latency, CPU / memory usage in real time, and can automatically alarm when an abnormal situation occurs, thereby improving the stability and reliability of the test.

[0060] This system uses automated scripts and a scheduling system to execute a complete network testing process with one click, eliminating the need for manual, step-by-step operation with tools like iperf3, netperf, and ping. It supports batch testing of multiple servers, significantly improving testing efficiency and reducing errors and data omissions caused by manual intervention.

[0061] When an abnormality is detected, the system automatically generates a test report and provides detailed diagnostic suggestions, reducing manual analysis time and improving problem location efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0062] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. It should be understood that the following drawings only illustrate certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without paying any creative work.

[0063] Figure 1 It is a system framework diagram of the present invention;

[0064] Figure 2 This is a test flow chart of the present invention. DETAILED DESCRIPTION

[0065] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions of the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings herein can be arranged and designed in various different configurations.

[0066] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention as claimed, but rather merely represents selected embodiments of the present invention. All other embodiments derived by persons of ordinary skill in the art based on the embodiments of the present invention without creative effort are intended to fall within the scope of protection of the present invention.

[0067] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, it does not need to be further defined or explained in subsequent drawings.

[0068] The present invention is described in further detail below with reference to the accompanying drawings:

[0069] See also Figures 1 to 2 The embodiments of the present invention disclose a server network testing method, system, storage medium and device, which integrate functions such as network card information detection, network port status testing, throughput evaluation, stress testing, and firmware / driver upgrade verification. It can automatically perform tests, monitor network status in real time, analyze test data and provide abnormal alarms, thereby improving the efficiency and accuracy of server network testing.

[0070] The system framework of this system includes:

[0071] Test management module: provides unified test task management and supports batch testing of server network performance.

[0072] Specifically include:

[0073] The test management module adopts the CS distributed architecture design, where C stands for Client, S stands for Server, CS mode represents client or server mode, Server is a public server, and Client represents the client of the installation tool.

[0074] When the server wants to conduct network performance tests on multiple devices at the same time, it only needs to enter the IP address of the client on the server to establish a connection. After multiple devices are connected, the test model parameters are configured on the server and the json data is transmitted to each client via tcp. Each client then performs a network performance test based on the received json data.

[0075] When the client completes the test, it will actively inform the server of the test completion flag and return the data and test results to the server for data display. When all client tests are completed, the server marks the current test as completed and summarizes the results of all clients for display and printing.

[0076] Furthermore, in this module, the connection is established in the following way:

[0077] After the client-side tool is successfully installed, a TCP6324 port number will be automatically opened for real-time monitoring. When the server accesses this port through IP:Port, communication is established.

[0078] Network card detection module: collects basic information of the server network card, including network card model, driver version, firmware version, MAC address, etc.

[0079] Network connectivity test module: The network connectivity test module is mainly used to detect the connectivity of two pairs of network ports before, during and after the test. There are ping test methods and arping test methods.

[0080] Specifically include:

[0081] The Ping module test method is as follows:

[0082] The Ping command is a commonly used diagnostic tool in computer networks, primarily used to test network connectivity with a target host. By sending ICMP echo request messages, the Ping command can detect network connectivity status, helping us quickly locate and resolve network issues.

[0083] Before the test: Automatically configure the IP addresses of the network ports at both ends before the test. After configuring the IP addresses, perform a ping test to check whether packet loss or error occurs.

[0084] During testing: Because the network port is undergoing a network load stress test, reduce the ping packet size when performing a ping test to improve connectivity accuracy.

[0085] After the test: First, a ping test will be performed for a period of time to check whether there are any problems after the test is completed. Then, the ping packet loss rate and error packet information of the network port during the stress process will be checked to judge the results of this network stress test.

[0086] The arping module test method is:

[0087] arping is used to send ARP request instructions to other hosts in the LAN. It can be used to test whether a certain IP in the LAN is already in use.

[0088] Before the test: Automatically configure the IP addresses of the network ports on both ends before the test. After configuring the IP addresses, use the arping command to test whether the MAC address returned by the tool is consistent with the interface MAC address, and check whether packet loss or high latency occurs.

[0089] During the test: During the network port stress test, use arping to continuously test the peer interface IP.

[0090] After the test: First, an arping test will be performed for a period of time to check whether there are any problems after the test is completed. Then, the arping packet loss rate and the error packet information of the network port during the stress process will be checked to judge the results of this network stress test.

[0091] Throughput test module: The throughput test module is based on the test results of iperf2 / iperf3 / netperf tools and the bandwidth value fed back to perform throughput checks.

[0092] Specifically include:

[0093] When users conduct throughput tests, they first choose test tools including iperf2 / iperf3 / netperf.

[0094] After starting the throughput test, the tool will use ethtool to check the Max Speed ​​information of the current test network port, and then select different test models for testing based on different Max Speeds.

[0095] After the tool selects the optimal test model, it begins issuing a network port throughput test process. During the test, the tool uses the sar command to continuously monitor network port utilization. If the network port utilization remains below 97% for a prolonged period, the tool determines that the current test model is underperforming and automatically interrupts the test to switch to the next test model. Once the sar network port utilization consistently remains above 98% for 30 seconds, normal test data collection begins. If all models fail to meet the network port utilization requirement, the tool performs a core binding operation based on the node where the network card is located, using taskset to bind the process core to improve network port utilization.

[0096] After the test is completed, the three different tools will return the average network port bandwidth of the current test, and the automated testing tool will calculate based on the result and MaxSpeed.

[0097] Furthermore, the specific calculation method of this module is:

[0098] Result / MaxSpeed*100, check whether the throughput is greater than 95%. If it is greater than 95%, the test conclusion is Pass, otherwise Fail.

[0099] Use iperf3 and netperf to test TCP / UDP network bandwidth and evaluate maximum throughput.

[0100] Long-term stress testing module: supports continuous operation of iperf3 and netperf to monitor the stability under long-term network load.

[0101] Specifically include:

[0102] Monitor stability under long-term network load:

[0103] iperf3 is a cross-platform network performance testing tool used to test the maximum bandwidth of a network interface.

[0104] iperf2 is a cross-platform network performance testing tool used to test the maximum bandwidth of a network interface. It is the previous generation version of iperf3.

[0105] Netperf is a network performance measurement tool developed by HP, mainly for TCP or UDP-based transmission.

[0106] The tool provides users with three long-term network load test modules: one is a long-term stress test module based on the iperf3 tool, one is a long-term stress test module based on the iperf2 tool, and one is a long-term stress test module based on the netperf tool.

[0107] Furthermore, the testing process of the long-term stress test module of the iperf3 tool includes the following steps:

[0108] The iperf3 long-term stress test module mainly uses the iperf3 tool to perform long-term stress testing on the network port. The tool provides users with the option of testing the network port, selecting the packet type of UDP / TCP, selecting the size of the sent data packet, and customizing the long-term stress test time, the number of packet sending threads, and the receiving end IP / Port.

[0109] After the user sets the long-term stress test model time and selects "Confirm to Start the Test," the tool automatically sends a start test command to the peer server. The peer server starts running the iperf3 -s -p command to start the receiving process, waits for 3 seconds, and sends the start test flag to the sending end. The sending end then starts running the iperf3 -c command to start the network bandwidth test.

[0110] Furthermore, the testing process of the long-term stress test module of the iperf2 tool includes the following steps:

[0111] The iperf2 long-term stress test module mainly uses the iperf2 tool to perform long-term stress testing on the network port. The tool provides users with the option of testing the network port, selecting the packet type of UDP / TCP, selecting the size of the sent data packet, and customizing the long-term stress test time, the number of packet sending threads, and the receiving end IP / Port.

[0112] After the user sets the long-term stress test model time and selects "Confirm to Start the Test," the tool automatically sends a start test command to the peer server. The peer server starts running the iperf2 -s -p command to start the receiving process, waits for 3 seconds, and sends the start test flag to the sending end. The sending end then starts running the iperf2 -c command to start the network bandwidth test.

[0113] Furthermore, the testing process of the long-term stress test module of the netperf tool includes the following steps:

[0114] The netperf long-term stress test module mainly uses the netperf / netserver tool to perform long-term stress testing on the network port. The tool provides users with the option of testing the network port, selecting the packet type of UDP / TCP, selecting the size of the sent data packet, and customizing the long-term stress test time, the number of packet sending threads, and the receiving end IP / Port.

[0115] Furthermore, after the user sets the long-term stress test model time and selects to confirm the start of the test, the tool automatically sends the start test command to the peer server. The peer server starts running the netserver -s -p command to start the receiving process, waits for 3 seconds, and sends the start test flag to the sending end. The sending end starts running the netperf -c command to start the network bandwidth test.

[0116] Furthermore, after the stress test begins, the tool automatically collects ifconfig / ethtool / mpstat / sar information, records information such as packet loss and error packets before the ifconfig / ethtool test, and records detailed information about the CPU core and network port bandwidth during the network test.

[0117] After the test is complete, ifconfig / ethtool output is recorded again and compared with the pre-test output to check for packet loss or errors. The tool also checks the final test results printed by iperf3 / iperf2 / netperf to check for TCP packet loss, whether the UDP packet loss rate exceeds 1%, whether the Rety field exists, and whether the SAR command network port bandwidth utilization is abnormal (abnormal cases include a sudden drop to 20% after maintaining 99%).

[0118] Finally, the final long-term stress test report is generated based on the results of the above automatic inspection, and the test results of the long-term stress test of the current network port are fed back.

[0119] Anomaly detection module: monitors bandwidth fluctuations, packet loss rate, and latency changes:

[0120] Bandwidth fluctuation abnormality detection: Bandwidth fluctuation is mainly reflected in the network port stress test. Check the network port bandwidth utilization rate returned by the sar command. If the network port bandwidth utilization rate fluctuates by more than 10% within a certain period of time, it is determined that the current network port bandwidth fluctuation is abnormal.

[0121] Packet loss rate anomaly detection:

[0122] When performing a network port stress test, users can enable the ifconfig / ethtool network port detection function. After enabling it, the background will continuously send ifconfig / ethtool commands to check whether there is packet loss or error packets.

[0123] Detect network anomalies in real time and send alerts.

[0124] Firmware / Driver Upgrade Module: This module is designed and developed based on the Mellanox MST upgrade method. The automated testing tool comes with a set of Mellanox firmware and driver files. When the user chooses to upgrade the firmware or driver, it automatically checks whether the firmware and driver versions of the current server network card are lower than the built-in driver and firmware files. If the versions are lower than the built-in versions, the local update method is triggered, initiating the MST firmware driver update method. If the versions are higher than the built-in versions, the online update method is triggered. Based on the preset URLs for the latest firmware drivers for different network cards, the module requests the latest version. After downloading the latest version locally, the local update method is used to perform the update.

[0125] Furthermore, the firmware driver upgrade module supports firmware driver upgrade and downgrade testing. When two versions of the driver or firmware exist locally, the user can select the upgrade and downgrade times and versions to perform firmware driver upgrade and downgrade testing on the network card.

[0126] Furthermore, it automatically executes network card firmware and driver upgrades, performs compatibility verification, and supports automatic rollback in abnormal situations.

[0127] Logging and analysis module: automatically records all test data and provides visual analysis and test reports.

[0128] The embodiment of the present invention further discloses a server network testing method, comprising the following steps:

[0129] Step 1: Test initialization

[0130] Read server information (network card model, driver version, firmware version);

[0131] Select the test items to be executed (you can select manually or execute all tests automatically).

[0132] Step 2: Network connectivity test

[0133] Use ping and arping to check the connectivity between the network card and external devices to ensure that the test environment is normal;

[0134] Record the network port status, such as whether the connection is disconnected or whether there is packet loss.

[0135] Step 3: Throughput Test

[0136] Start iperf3 to perform TCP / UDP throughput test and measure the maximum bandwidth;

[0137] Start netperf to perform detailed tests such as network delay, jitter, and packet loss rate;

[0138] Record test results and generate throughput trend charts.

[0139] Step 4: Long-term stress testing

[0140] Run iperf3 and netperf for continuous load testing for more than 24 hours;

[0141] Monitor key indicators such as CPU / memory usage, network card traffic, and packet loss rate;

[0142] When an anomaly is detected (such as decreased throughput or increased packet loss rate), the test will be automatically stopped and an alarm will be issued.

[0143] Step 5: Firmware / Driver Upgrade Test

[0144] Read the current driver and firmware versions;

[0145] Automatically perform driver or firmware upgrades;

[0146] After the upgrade is complete, re-run the throughput test and stress test to compare the performance differences;

[0147] If performance degradation or abnormality is found, it will automatically roll back to the original version.

[0148] Step 6: Abnormal analysis and test report generation records test data and automatically analyzes indicators such as throughput, packet loss rate, and latency. A test report is generated, including: throughput curve, packet loss rate trend, abnormal alarm records, etc. A web interface or API is provided for testers to view test results.

[0149] This method can realize automated task scheduling: it realizes task automation based on Python / Go language and supports batch execution of test tasks for multiple servers.

[0150] This method can achieve real-time data collection:

[0151] Use iperf3, netperf and Prometheus / Grafana for data monitoring and visualization.

[0152] This method can achieve anomaly detection and intelligent analysis: based on data pattern matching and AI algorithms, it can automatically identify problems such as throughput decline and abnormal packet loss rate, and trigger alarms.

[0153] This method can realize automatic driver / firmware upgrade and rollback: realize automated driver / firmware upgrade testing and rollback, and improve server stability.

[0154] This method can realize visual test reports: automatically generate throughput trend charts, packet loss rate change charts, and exception analysis reports, and support viewing test results on the Web interface.

[0155] The present invention provides a server network automated testing tool, the core goal of which is to improve the efficiency, stability and accuracy of server network testing through automated testing, intelligent analysis, anomaly detection, and firmware / driver compatibility verification.

[0156] This embodiment has the following advantages:

[0157] First, automated server network testing process

[0158] Integrates network card information detection, network port status testing, throughput assessment, stress testing, and firmware / driver upgrade verification to achieve one-click automated testing, eliminating manual intervention and improving testing efficiency.

[0159] It uses a task scheduling system to support batch testing of multiple servers to meet the needs of large-scale server environments.

[0160] Second, long-term stress testing and real-time monitoring

[0161] Run iperf3 and netperf for long-term high-load stress testing, supporting network stability verification for more than 24 hours.

[0162] Monitor CPU / memory usage, packet loss rate, bandwidth fluctuation, and latency, and automatically issue alarms when anomalies occur to improve test reliability.

[0163] Third, anomaly detection and intelligent analysis

[0164] The built-in data analysis module analyzes key indicators such as throughput changes, packet loss rate anomalies, and network port status changes in real time, and automatically identifies network anomalies.

[0165] Combined with AI models or data pattern matching algorithms, it provides intelligent fault location and improves abnormality diagnosis capabilities.

[0166] Fourth, firmware / driver upgrade and compatibility testing

[0167] Automatically perform driver and firmware upgrades and re-run network tests after the upgrade to assess the impact of the new version on network performance.

[0168] It has an automatic rollback mechanism. When the upgrade causes network performance degradation or abnormality, it can quickly restore to a stable version to ensure the normal operation of the server.

[0169] Fifth, cross-platform compatibility and versatility

[0170] It supports multiple server brands (Dell, HPE, Huawei, Inspur, etc.), and is compatible with different operating systems (Linux, Windows, BSD) and network card models (Intel, Mellanox, Broadcom, etc.). Compared with vendor tools, it has a wider range of applicability.

[0171] The extensible architecture allows for the addition of new test items, such as custom script execution and support for more protocols (HTTP, QUIC), to meet different testing needs.

[0172] Sixth, visual test report and analysis, generate detailed test reports, including:

[0173] (1) Throughput trend chart (real-time monitoring of iperf3 data);

[0174] (2) Packet loss rate / delay change curve;

[0175] (3) Firmware / driver compatibility analysis results;

[0176] (4) Abnormal detection and alarm recording.

[0177] Supports Web interface / API data interface to facilitate testers to view and analyze test results.

[0178] The automated integration method of the test tool disclosed in this embodiment includes a complete process of test task scheduling, network card information detection, throughput testing, stress testing, and anomaly monitoring.

[0179] The testing method disclosed in this embodiment can perform throughput testing and stability verification of multiple servers in parallel, thereby improving testing efficiency.

[0180] The test method disclosed in this embodiment can implement long-term stress testing and real-time monitoring mechanisms. Through the long-term stress testing method of iperf3 and netperf, it supports high-load operation for more than 24 hours and monitors packet loss rate, latency, and network card status changes.

[0181] The test method disclosed in this embodiment implements a data monitoring and abnormal alarm method. When a throughput drop, an abnormal packet loss rate, a network port disconnection, etc. are detected, the system can automatically send an alarm message.

[0182] The test method disclosed in this embodiment implements firmware / driver upgrade testing and an automatic rollback mechanism, supports automatic downloading and installation of new versions, and performs compatibility testing. It can also detect the performance of the firmware / driver after the upgrade, and is used to compare the changes in throughput, latency, and packet loss rate before and after the upgrade to determine whether the upgrade affects the server network performance. It can also implement firmware / driver abnormal rollback. When the upgrade causes network abnormalities, the system can automatically restore to the last stable version to avoid server downtime or network performance degradation.

[0183] The testing method disclosed in this embodiment implements intelligent data analysis and anomaly detection algorithms. The anomaly detection method is used to identify bandwidth fluctuations, abnormal packet loss rates, network congestion, and other issues, and provide intelligent alerts. The AI-trained network performance analysis algorithm can predict throughput trends and intelligently analyze server network bottlenecks.

[0184] The testing method disclosed in this embodiment achieves cross-platform compatibility and scalability, making it a network testing framework suitable for multi-brand servers and multiple operating systems. It is compatible with different network card models, driver versions, and operating systems, making it more versatile than vendor-provided tools. The scalable automated testing tool architecture allows for the addition of new test protocols (HTTP, QUIC) and custom test scripts to meet diverse application scenarios.

[0185] The test method disclosed in this embodiment implements visual test reporting and a web-based remote management system, automatically generating throughput trend charts, packet loss analysis charts, and anomaly detection reports, making it easier for test engineers to analyze test results. The web-based server network test management system supports remote viewing of test progress, anomaly alerts, and test result analysis, improving the user experience.

[0186] To address the problems of low testing efficiency, insufficient automation, poor compatibility, and lack of anomaly detection in existing server network testing solutions, this paper proposes a server network automated testing tool that integrates network card information detection, network port status testing, throughput assessment, long-term stress testing, and firmware / driver upgrade verification. It features high automation, intelligent analysis, batch testing, anomaly monitoring, and rollback capabilities, offering the following advantages:

[0187] 1. Automated testing to reduce manual intervention

[0188] This system uses automated scripts and a scheduling system to execute a complete network testing process with a single click, eliminating the need for manual, step-by-step operation with tools like iperf3, netperf, and ping. It supports batch testing of multiple servers, significantly improving testing efficiency and reducing errors and data omissions caused by manual intervention.

[0189] 2. Integrated integration to improve test coverage

[0190] This tool integrates network card information detection, network port status verification, throughput testing, stress testing, and firmware / driver compatibility verification, covering multi-dimensional testing from the hardware layer to the driver layer and the network protocol layer. Compared to traditional solutions that rely on a single tool, this invention can comprehensively evaluate server network performance, ensuring the integrity and accuracy of the test.

[0191] 3. Support long-term stress testing and monitor network stability

[0192] This invention not only supports short-term throughput tests, but also enables long-term, high-load stress tests (e.g., iperf3 and netperf running for hours to days). During the test, the system monitors key metrics such as bandwidth, packet loss rate, latency, and CPU / memory usage in real time. It automatically generates alerts for abnormalities (e.g., bandwidth fluctuations, network card disconnections), improving test stability and reliability.

[0193] 4. Automatic abnormal analysis and fault diagnosis

[0194] This tool has a built-in intelligent data analysis module that can automatically detect abnormal patterns in test data, such as:

[0195] Sudden degradation of network performance (large fluctuations in bandwidth or increased packet loss);

[0196] Server network port status changes (network port disconnected, link unstable);

[0197] Compatibility issues after firmware / driver upgrades (such as reduced throughput and increased latency).

[0198] When an abnormality is detected, the system automatically generates a test report and provides detailed diagnostic suggestions, reducing manual analysis time and improving problem location efficiency.

[0199] 5. Support firmware / driver upgrade and rollback to improve system stability

[0200] This invention supports automated firmware and driver upgrades and rollbacks, enabling batch testing of the impact of new firmware / driver versions on network performance. If anomalies are detected after an upgrade (such as decreased throughput or increased packet loss), the system can automatically roll back to a stable version, preventing server network failures caused by improper upgrades.

[0201] 6. Strong compatibility, suitable for different hardware and systems

[0202] This invention supports a variety of server brands (such as Dell, HPE, Huawei, and Inspur), operating systems (Linux, Windows, and BSD), and network interface cards (such as Intel, Broadcom, and Mellanox). Compared to manufacturer-customized tools that only support specific hardware, this invention operates across platforms and offers greater adaptability.

[0203] 7. Detailed test report for easy result analysis The system can automatically generate a visual test report, including: network throughput trend chart (real-time monitoring of iperf3 data); packet loss rate / latency change curve; firmware / driver compatibility test results; anomaly detection and alarm records.

[0204] Test engineers can quickly view test results through the web interface or log files without having to manually parse data, improving data analysis efficiency.

[0205] Network card information detection: refers to detecting the hardware information, driver version, firmware version, MAC address, etc. of the network adapter (network card) in the server to obtain its current status and configuration to ensure that the network interface is working properly.

[0206] Network port status test: refers to testing the connection status of the network interface card, including determining whether it is online, whether the connection is normal, whether there are any disconnections, link instability and other issues.

[0207] Throughput Test: A test that uses a network bandwidth measurement tool (such as iperf3 or netperf) to measure the maximum throughput of a network interface. This test measures the amount of data that can be transmitted over a specific period of time. Throughput is an important indicator for evaluating network performance.

[0208] Stress Test: Simulates the server's network performance through continuous or high-load network traffic to verify its stability and reliability under long-term operation and its performance when handling high traffic.

[0209] Firmware / Driver Upgrade: This refers to upgrading the network adapter's firmware or driver to achieve higher performance, better compatibility, or fix known issues. Firmware is software embedded in the hardware, while the driver is the intermediary software between the network adapter and the operating system.

[0210] Iperf3: A commonly used open source network performance testing tool used to measure network throughput, latency, packet loss, and other metrics. It can perform bandwidth tests for protocols such as TCP and UDP between clients and servers.

[0211] Netperf: A network performance testing tool similar to iperf that supports a wider range of protocols and performance measurement types and is suitable for various network testing scenarios, such as throughput, latency, and connection stability.

[0212] Ping test: A method of testing network connectivity by sending ICMP packets to a target server and calculating the return time. Ping tests are commonly used to check whether network connections between devices are working properly and can be used to measure latency.

[0213] Long-term stress testing: refers to continuous testing of network equipment for more than several hours or even days. The purpose is to verify the performance and stability of network equipment under long-term high load conditions and ensure the reliable operation of the system.

[0214] Packet loss rate: A metric in network testing that indicates the ratio of lost data packets to the total number of packets sent during data transmission. A high packet loss rate often indicates a network bottleneck or instability.

[0215] Latency: This refers to the time it takes for data to travel from the sender to the receiver. High latency can affect the quality of real-time applications such as voice calls and video conferencing.

[0216] Alarms: During network testing, when system anomalies or performance degradation are detected, the system automatically triggers an alarm mechanism, notifying relevant personnel for action. Alarms typically include issues such as decreased throughput, increased latency, and excessive packet loss.

[0217] Rollback: When performing a system or software upgrade, if the new version encounters issues or causes performance degradation, the system can automatically revert to a previous stable version. Rollback is a crucial fault-tolerance mechanism for firmware / driver upgrades.

[0218] Cross-platform compatibility: refers to the ability of the network testing tool of the present invention to run normally on different operating systems and hardware platforms, including operating systems such as Windows, Linux, and BSD, as well as servers and network card devices from various manufacturers.

[0219] Intelligent data analysis: Automatically analyzes test data using machine learning algorithms or data pattern matching techniques to identify potential network performance issues (such as decreased throughput and increased latency) and provide optimization recommendations.

[0220] Web interface / API: To facilitate user management and viewing of test results, the present invention provides a web-based user interface and API interface. Users can view test progress and test results through the web interface, or integrate with other systems through the API interface.

[0221] Network performance bottlenecks: These are factors that limit network performance, such as bandwidth limitations, packet loss, and excessive latency. These factors can lead to low network transmission efficiency and negatively impact user experience.

[0222] Data Center / Cloud Computing Platform: A data center is a physical facility used to centrally store, manage, and distribute data. A cloud computing platform is an infrastructure that provides virtualized resources and services, typically used to provide computing, storage, and network services.

[0223] Network card model and driver version: The network card model refers to the model of the network adapter hardware, and the driver version refers to the driver version in the operating system that communicates with the network card. Different network card models and drivers may have different effects on network performance.

[0224] Prometheus / Grafana: Prometheus is an open-source monitoring system and time-series database, commonly used to collect and query performance data. Grafana is an open-source visualization tool for creating real-time charts and dashboards, often used with Prometheus to display performance data.

[0225] A schematic diagram of a terminal device provided in one embodiment of the present invention. The terminal device in this embodiment includes: a processor, a memory, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the steps of each of the aforementioned method embodiments are implemented. Alternatively, when the processor executes the computer program, the functions of each module / unit in each of the aforementioned device embodiments are implemented.

[0226] The computer program may be divided into one or more modules / units, which are stored in the memory and executed by the processor to accomplish the present invention.

[0227] The terminal device may be a computing device such as a desktop computer, a notebook computer, a PDA, a cloud server, etc. The terminal device may include, but is not limited to, a processor and a memory.

[0228] The processor can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.

[0229] The memory may be used to store the computer programs and / or modules, and the processor implements various functions of the terminal device by running or executing the computer programs and / or modules stored in the memory and calling the data stored in the memory.

[0230] If the module / unit integrated into the terminal device is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present invention can implement all or part of the process steps in the above-mentioned method embodiments by using a computer program to instruct the relevant hardware. The computer program can be stored in a computer-readable storage medium. When executed by a processor, the computer program can implement the steps of each of the above-mentioned method embodiments. The computer program includes computer program code, which can be in source code form, object code form, executable file, or some intermediate form. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording medium, USB flash drive, mobile hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal, and software distribution medium. It should be noted that the content of the computer-readable medium can be appropriately increased or decreased based on the requirements of legislation and patent practice in a jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media does not include electric carrier signals and telecommunication signals.

[0231] The above are merely preferred embodiments of the present invention and are not intended to limit the present invention. Those skilled in the art will readily appreciate that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention.

Claims

1. A server network testing method, characterized in that: The following steps are involved: Obtaining test items to be executed, where the test items to be executed include network throughput and long-time pressure; Test network throughput and long-term stress. During the test, monitor changes in memory usage, network card traffic, and packet loss rate in real time to see if there are any abnormalities. If so, terminate the test and record the abnormality. If not, continue the test until the test is completed and generate a test report.

2. A server network testing method according to claim 1, characterized in that: Obtaining test items to be executed also includes upgrading the system's firmware or drivers, testing the network throughput and long-term stress of the upgraded system, and generating a test report; Compare the test reports before and after the upgrade. If the performance of the test report after the upgrade is lower than that of the test report before the upgrade, roll back to the system before the upgrade.

3. A server network testing method according to claim 1, characterized in that: The test report includes throughput curve, packet loss rate trend and abnormal alarm record.

4. A server network testing method according to claim 1, characterized in that: During the test, the memory usage, network card traffic, and packet loss rate are monitored in real time to see if there are any abnormalities, including: During testing, the packet loss rate and bandwidth fluctuations are monitored in real time; When performing stress testing on the network port, if the network port bandwidth usage is ≥10% within the set time, the current network port bandwidth fluctuation is considered abnormal; When performing a network port stress test, use the ifconfig network port detection function or the ethtool network port detection function to detect in real time whether there is packet loss or error packets.

5. A server network testing method according to claim 1, characterized in that: The network throughput test includes: Use iperf2, iperf3, or netperf to test network throughput. Select the test tool based on the Max Speed ​​information of the current test network port. During the test, the network port occupancy rate is continuously monitored. If the network port occupancy rate is continuously lower than 97%, the test tool is switched. If the network port occupancy rate is continuously above 98%, test data collection begins. Obtain the test results of iperf2, iperf3, or netperf. Calculate the average network port bandwidth based on the test results. Calculate the ratio of the average network port bandwidth to the MaxSpeed. If the ratio is greater than 95%, the test passes. Otherwise, the test fails.

6. A server network testing method according to claim 1, characterized in that: The long-term pressure test includes: During the test, the packet loss and error packet data before and after the test are recorded; During the test, record the CPU core data and network port bandwidth data during the network test; After the test is completed, obtain the test report, which includes whether TCP packet loss occurs, whether the UDP packet loss rate exceeds 1%, whether the Rety field exists, and whether the network port bandwidth usage is abnormal.

7. A server network testing method according to claim 6, characterized in that: Use the iperf2 or netperf tool to test long-term stress.

8. A server network testing system, characterized in that: include: A test task acquisition module is used to acquire test items to be executed, wherein the test items to be executed include network throughput and long-time pressure; The test module is used to test network throughput and long-term stress. During the test, it monitors the changes in memory usage, network card traffic and packet loss rate in real time to see if there are any abnormalities. If so, the test is terminated and the abnormality is recorded. If not, the test is continued until the test is completed and a test report is generated.

9. A terminal device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.

Citation Information

Cited By

  • Standardized gigabit Ethernet exception debugging method, device and equipment

    CN121441794A