User mode multi-protocol network dial testing method, device, equipment and medium
Through the user-state multi-protocol network dialing method, a protocol simulation network dialing packet supporting multi-type protocols is generated based on the user-state protocol stack, which solves the problems of low data processing efficiency, few protocol support types, and incomplete evaluation data in the existing technology, and realizes multi-protocol simulation network dialing and service system mutual dialing measurement, improving data processing efficiency and comprehensive evaluation.
Patent Information
- Application Number
- CN202411844577.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-13
- Publication Date
- 2025-03-04
AI Technical Summary
In the network dialing test, the existing technology has problems such as low data processing efficiency, few protocol support types, and incomplete evaluation data. It cannot meet the diversified and universal business needs, and it is impossible to realize the mutual dialing test of the dialing test system and the business system.
The user-state multi-protocol network dialing method is adopted. By obtaining dialing configuration files and determining configuration parameters, a protocol simulation network dialing data packet supporting multiple types of protocols is generated based on the user-state protocol stack, so as to realize multi-protocol simulation network dialing between the dialing system and the service system.
It improves the diversity and universality of protocol support types, scenarios and business needs, improves data processing efficiency, realizes mutual dialing and testing between dialing systems and business systems, and can comprehensively evaluate the overall performance of the network where the business system is located.
Smart Images

Figure CN119561864A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of network communication technology, and in particular to a user-mode multi-protocol network dialing method, device, equipment and medium. Background Art
[0002] With the rapid development of information technology and the widespread popularity of the Internet, more and more business systems and user terminals are communicating and interacting through the network, and the requirements of business systems and user terminals for network performance are getting higher and higher. At present, the constructed network dial-up test data packets are mostly based on the Linux kernel when sending and receiving, which may cause frequent CPU (Central Processing Unit) interrupts and memory copy operations, resulting in low data processing efficiency, and only supports a small number of common network protocol simulations, unable to support more scenarios and business needs, and lack of universality. In addition, only the dial-up test system can test the business system, which cannot fully evaluate the overall quality of the network where the business system is located. There are problems such as low data processing efficiency, few protocol support types, and incomplete evaluation data.
[0003] As can be seen from the above, how to improve the diversity and universality of protocol support types, scenarios and business requirements, improve data processing efficiency, realize mutual dialing between the dialing system and the business system, and comprehensively evaluate the overall performance of the network where the business system is located are issues to be solved in this field. Summary of the invention
[0004] In view of this, the purpose of the present invention is to provide a user-mode multi-protocol network dialing method, device, equipment and medium, which can improve the diversity and universality of protocol support types, scenarios and business requirements, improve data processing efficiency, realize mutual dialing between the dialing system and the business system, and comprehensively evaluate the overall performance of the network where the business system is located. The specific scheme is as follows:
[0005] In a first aspect, the present application discloses a user-mode multi-protocol network dialing method, which is applied to a dialing initiator, comprising:
[0006] Obtaining a dial test configuration file, and determining configuration parameters according to the dial test configuration file;
[0007] Generate a protocol emulation network dial test data packet supporting multiple types of protocols based on the user state protocol stack and the configuration parameters, generate a network dial test task using the configuration parameters and the protocol emulation network dial test data packet, and when a call request initiated by a task timer is obtained, transmit the network dial test task and the protocol emulation network dial test data packet to the task timer, so that the task timer sends the protocol emulation network dial test data packet to the dial test target end according to the network dial test task;
[0008] The dial test target end that obtains feedback from the task timer generates a response message based on the protocol simulation network dial test data packet, and closes the execution program of the network dial test task according to the response message to complete the multi-protocol simulation network dial test with the dial test target end.
[0009] Optionally, before obtaining the dial test configuration file, the method further includes:
[0010] Deploy a configuration management system, a dialing test system, and a business system at designated network area locations, respectively, and set the configuration management system, the dialing test system, and the business system to normal operating states;
[0011] Filtering a dial test initiator from the dial test system and the business system, and filtering a dial test target from the dial test system and the business system;
[0012] The configuration management system is used to generate a dial test configuration file, and the dial test configuration file is sent to a shared directory of the dial test initiator and the dial test target.
[0013] Optionally, the multiple types of protocols supported by the protocol emulation network dial-up data packet include Internet Protocol, Transmission Control Protocol, User Datagram Protocol, Hypertext Transfer Protocol, Hypertext Transfer Protocol Security, Simple Mail Transfer Protocol, Post Office Protocol version 3, Internet Information Access Protocol, File Transfer Protocol, Simple File Transfer Protocol, Secure Copy Protocol, Domain Name System Protocol, Secure Shell Protocol, TELNET Protocol, SOCKS4 Protocol and SOCKS5 Protocol.
[0014] Optionally, determining the configuration parameters according to the dial test configuration file includes:
[0015] Obtain the configuration parameters filled in by the client in the visualization interface according to the dial test configuration file; the configuration parameters include service type, Internet Protocol address of the dial test initiator, source port of the dial test initiator, Internet Protocol address of the dial test target, destination port of the dial test target, protocol type, frame length, frame rate, domain name system server address, domain name parameters to be resolved, hypertext transfer protocol malicious code parameters or file transfer protocol malicious code parameters or simple mail transfer protocol malicious code parameters or transmission control protocol malicious code parameters, data query parameters, and data transmission format.
[0016] Optionally, the generating of a protocol simulation network dial test data packet supporting multiple types of protocols based on the user state protocol stack and the configuration parameters includes:
[0017] A user-mode protocol stack is constructed based on the seven-layer structure of the open system interconnection network model and the five-layer structure of the transmission control protocol / Internet protocol stack; the user-mode protocol stack includes the routing switching and dual-stack operation protocols in the fourth version of the Internet Communication Protocol or the sixth version of the Internet Communication Protocol, and the session processing protocol in the transmission control protocol or the user datagram protocol;
[0018] The configuration parameters are fully processed on the data plane development kit message processing framework of the user mode protocol stack to generate a protocol simulation network dial test data packet supporting multiple types of protocols.
[0019] Optionally, the protocol simulation network dial test data packet includes data packet header information and data packet load information; the data packet header information includes the Internet Protocol address of the dial test initiator, the source port of the dial test initiator, the Internet Protocol address of the dial test target, the destination port of the dial test target, the protocol type, the data packet length, and the timestamp; the data packet load information includes protocol data, protocol request / response header, and protocol request / response body.
[0020] Optionally, the user-mode multi-protocol network dialing method further includes:
[0021] Record the execution time of the network dialing task, monitor whether a response message generated by the dialing target end based on the protocol simulation network dialing data packet and fed back by the task timer is obtained within the execution time; if a response message generated by the dialing target end based on the protocol simulation network dialing data packet and fed back by the task timer is not obtained within the execution time, directly close the execution program of the network dialing task.
[0022] In a second aspect, the present application discloses a user-mode multi-protocol network dial-up test device, which is applied to a dial-up test initiator, comprising:
[0023] A file and parameter determination module, used to obtain a dial test configuration file and determine configuration parameters according to the dial test configuration file;
[0024] A data packet and task generation module, used to generate a protocol simulation network dial test data packet supporting multiple types of protocols based on a user-mode protocol stack and the configuration parameters, generate a network dial test task using the configuration parameters and the protocol simulation network dial test data packet, and upon obtaining a call request initiated by a task timer, transmit the network dial test task and the protocol simulation network dial test data packet to the task timer, so that the task timer sends the protocol simulation network dial test data packet to the dial test target end according to the network dial test task;
[0025] The simulated network dialing module is used to obtain the response message generated by the dialing target end based on the protocol simulated network dialing data packet fed back by the task timer, and close the execution program of the network dialing task according to the response message to complete the multi-protocol simulated network dialing with the dialing target end.
[0026] In a third aspect, the present application discloses an electronic device, comprising:
[0027] Memory, used to store computer programs;
[0028] The processor is used to execute the computer program to implement the aforementioned user-mode multi-protocol network dialing method.
[0029] In a fourth aspect, the present application discloses a computer storage medium for storing a computer program; wherein, when the computer program is executed by a processor, the steps of the aforementioned user-mode multi-protocol network dialing method are implemented.
[0030] It can be seen that the present application provides a user-mode multi-protocol network dialing method, including obtaining a dialing configuration file and determining configuration parameters based on the dialing configuration file; generating a protocol simulation network dialing data packet supporting multiple types of protocols based on the user-mode protocol stack and the configuration parameters, generating a network dialing task using the configuration parameters and the protocol simulation network dialing data packet, and upon obtaining a call request initiated by a task timer, transmitting the network dialing task and the protocol simulation network dialing data packet to the task timer, so that the task timer sends the protocol simulation network dialing data packet to the dialing target end according to the network dialing task; obtaining a response message generated by the dialing target end based on the protocol simulation network dialing data packet fed back by the task timer, and closing the execution program of the network dialing task according to the response message to complete the multi-protocol simulation network dialing with the dialing target end. The present application is applied to a dial test initiator, and generates a protocol simulation network dial test data packet supporting multiple types of protocols based on a user-mode protocol stack and configuration parameters, thereby improving the diversity and universality of protocol support types, scenarios, and business requirements, and generating a network dial test task. When the dial test target end that obtains feedback from a task timer generates a response message based on the protocol simulation network dial test data packet, the execution program of the network dial test task is closed, and the multi-protocol simulation network dial test between the dial test target end is completed without the need to maintain and manage related nodes, thereby effectively reducing system complexity, meeting the requirements of different business scenarios, improving data processing efficiency, and realizing mutual dial test between the dial test initiator and the dial test target end, thereby effectively avoiding delay problems caused by frequent central processing unit interrupts and memory copy operations, improving data processing performance and throughput, and being able to comprehensively evaluate the overall performance of the network where the business system is located. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying creative work.
[0032] Figure 1 A flow chart of a user-mode multi-protocol network dialing method disclosed in this application;
[0033] Figure 2 A schematic diagram of the process of user-mode multi-protocol network dialing test disclosed in this application;
[0034] Figure 3 A configuration system state flow chart disclosed in this application;
[0035] Figure 4 This is a schematic diagram of the one-to-one dial test mode disclosed in this application;
[0036] Figure 5 This is a schematic diagram of the one-to-many dialing test mode disclosed in this application;
[0037] Figure 6 This is a schematic diagram of the many-to-one dial test mode disclosed in this application;
[0038] Figure 7 This is a schematic diagram of the many-to-many dialing test mode disclosed in this application;
[0039] Figure 8 This is a schematic diagram of the fully meshed dial-up test mode disclosed in this application;
[0040] Fig. 9 A specific flow chart of generating a network dial test task disclosed in this application;
[0041] Fig.10 A flowchart of an execution procedure for executing a network dialing test task and closing a network dialing test task disclosed in the present application;
[0042] Fig.11 A network communication relationship diagram between key components disclosed in this application;
[0043] Fig.12 A schematic diagram of the structure of a user-mode multi-protocol network dialing device disclosed in this application;
[0044] Fig.13 A structural diagram of an electronic device provided for this application. DETAILED DESCRIPTION
[0045] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in 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. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0046] With the rapid development of information technology and the widespread popularization of the Internet, more and more business systems and user terminals are communicating and interacting through the network, and business systems and user terminals have higher and higher requirements for network performance. At present, the constructed network dial-up test data packets are mostly based on the Linux kernel when sending and receiving, and frequent CPU interrupts and memory copy operations may occur, resulting in low data processing efficiency, and only a small number of common network protocol simulations are supported, which cannot support more scenarios and business needs and lack universality. In addition, only the dial-up test system can test the business system, which cannot comprehensively evaluate the overall quality of the network where the business system is located. There are problems such as low data processing efficiency, few protocol support types, and incomplete evaluation data. As can be seen from the above, how to improve the diversity and universality of protocol support types, scenarios and business needs, improve data processing efficiency, realize mutual dial-up test between the dial-up test system and the business system, and comprehensively evaluate the overall performance of the network where the business system is located are problems to be solved in this field.
[0047] See also Figure 1 As shown, the embodiment of the present invention discloses a user-mode multi-protocol network dialing method, which is applied to a dialing initiator and may specifically include:
[0048] Step S11: Acquire a dial test configuration file, and determine configuration parameters according to the dial test configuration file.
[0049] In this embodiment, before obtaining the dialing test configuration file, it also includes: deploying a configuration management system, a dialing test system and a business system respectively in a specified network area location, and setting the configuration management system, the dialing test system and the business system to a normal operating state; screening a dialing test initiator from the dialing test system and the business system, and screening a dialing test target from the dialing test system and the business system; generating a dialing test configuration file using the configuration management system, and sending the dialing test configuration file to a shared directory of the dialing test initiator and the dialing test target.
[0050] This application implements the entire multi-protocol simulation network dial test, which requires the deployment of a configuration management system, several dial test systems, and business systems. The specific user-mode multi-protocol network dial test process diagram is as follows: Figure 2As shown, the overall process of user-mode multi-protocol network dialing test includes three stages: configuring system module status, generating network dialing test tasks, and executing network dialing test tasks. The dialing test system and business system regularly obtain the dialing test configuration file from the configuration management system through a periodic polling strategy. The dialing test initiator generates a network dialing test task based on the dialing test configuration, and then triggers the network dialing test task at a specific time point, sends a protocol simulation network dialing test data packet to the specified dialing test target, and receives a successful response message fed back by the dialing test target, thus forming a complete network dialing test process. Among them, periodic polling provides a mechanism for the dialing test system and business system to query and obtain the dialing test configuration file in the shared directory of the configuration management system. The period can be set to days, hours, minutes, etc. according to actual needs.
[0051] In this embodiment, the configuration management system, the dial test system and the business system are deployed separately, and the specific process of setting the configuration management system, the dial test system and the business system to a normal operating state is as follows: Figure 3 As shown, the steps are as follows: Step 1: deploy a configuration management system at a specified network area location, and ensure that the dial test configuration file generation module on the configuration management system can operate normally; Step 2: deploy a dial test system at specified different network area locations, and ensure that the dial test configuration file reading module, protocol simulation dial test data packet generation module, network dial test task generation module, network dial test task execution module, and network dial test data packet receiving and monitoring module on the dial test system can operate normally; Step 3: deploy a dial test configuration file reading module, a protocol simulation dial test data packet generation module, a network dial test task generation module, a network dial test task execution module, and a network dial test data packet receiving and monitoring module in each business system, and ensure that each module can operate normally.
[0052] Among them, the dial test configuration file generation module is responsible for automatically generating a network dial test configuration file according to the dial test configuration parameters; the dial test configuration file reading module is responsible for pulling its own network dial test configuration file from the configuration management system; the protocol simulation dial test data packet generation module is responsible for generating a network dial test data packet of a specified protocol type according to the configuration; the network dial test task generation module is responsible for generating a network dial test task to be executed according to the dial test configuration and the network dial test data packet; the network dial test task execution module is responsible for calling the network dial test task to send a network dial test data packet to the specified target, and listen to and receive a successful response message fed back from the specified target; the network dial test data packet receiving and monitoring module is responsible for receiving the protocol simulation network dial test data packet sent by the dial test initiator, and at the same time generates a dial test success response message, and sends a dial test success response message to the dial test initiator.
[0053] This application is applied to the dial test initiator, and the dial test initiator is screened from the dial test system and the business system, which means that the dial test initiator can be the dial test system or the business system. Similarly, the dial test target end can be the dial test system or the business system. When the dial test initiator is the dial test system and the dial test target end is the business system, the dial test data generated by this mode can support the quality evaluation of the communication network between the dial test system and the business system; when the dial test initiator and the dial test target end are different dial test systems or different business systems, the dial test data generated by this mode can fully support the quality evaluation of the business system communication network.
[0054] In addition, the network dial test proposed in this application supports different modes such as one-to-one, one-to-many, many-to-one, many-to-many, and fully meshed, which can generate different network dial test traffic topologies to meet the dial test requirements of different scenarios. Figure 4 As shown in the figure, this mode will generate a network dial test traffic topology with a dial test initiator to a dial test target. The dial test initiator and the dial test target can be the dial test system or the business system. Figure 5 As shown in the figure, this mode will generate a network dial test traffic topology with one dial test initiator to multiple dial test targets. The dial test initiator and the dial test target can be the dial test system or the business system. Figure 6 As shown in Figure 1, this mode will generate a network dial test traffic topology with multiple dial test initiators to one dial test target. The dial test initiator and the dial test target can be the dial test system or the business system. Figure 7 As shown in Figure 1, this mode will generate a network dial test traffic topology with multiple dial test initiators and multiple dial test targets. The dial test initiators and dial test targets can be dial test systems or business systems. Figure 8 As shown, this mode will produce a completely meshed network dial test traffic topology, and the dial test initiator and the dial test target can be the dial test system or the business system.
[0055] In this embodiment, a dial test configuration file is obtained, and configuration parameters filled in by the client in the visual interface according to the dial test configuration file are obtained; the configuration parameters include business type, Internet Protocol address of the dial test initiator, source port of the dial test initiator, IP (Internet Protocol) address of the dial test target, destination port of the dial test target, protocol type, frame length, frame rate, DNS (Domain Name System) server address, domain name parameter to be resolved, HTTP (Hypertext Transfer Protocol) malicious code parameter or FTP (File Transfer Protocol) malicious code parameter or SMTP (Simple Mail Transfer Protocol) malicious code parameter or TCP (Transmission Control Protocol) malicious code parameter, data query parameter, data transmission format. That is, the configuration parameters are filled in manually through the visual interface, the parameters and quantities of different business types are different, and the parameters are supportive of extensibility.
[0056] Step S12: Generate a protocol simulation network dial test data packet supporting multiple types of protocols based on the user-mode protocol stack and the configuration parameters, generate a network dial test task using the configuration parameters and the protocol simulation network dial test data packet, and upon obtaining a call request initiated by a task timer, transmit the network dial test task and the protocol simulation network dial test data packet to the task timer, so that the task timer sends the protocol simulation network dial test data packet to the dial test target end according to the network dial test task.
[0057] In this embodiment, a user-mode protocol stack is constructed based on the seven-layer structure of the OSI (Open System Interconnect) network model and the five-layer structure of the transmission control protocol / Internet protocol stack; the user-mode protocol stack includes routing switching and dual-stack operation protocols in IPv4 / IPv6 (Internet Communication Protocol Version 4 / Internet Communication Protocol Version 6), and session processing protocols in TCP / UDP (Transmission Control Protocol / User Datagram Protocol), such as TCP layer confirmation response, timeout retransmission, congestion control, connection maintenance, etc., which can ensure the correctness and integrity of the protocol, make the test data real and valid, and greatly improve network performance and reliability; the configuration parameters are fully processed on the data plane development kit message processing framework of the user-mode protocol stack to generate a protocol simulation network dial test data packet that supports multiple types of protocols.
[0058] Among them, the multiple types of protocols supported by the protocol emulation network dial-up data packet include IP (Internet connection) protocol, TCP (transmission control) protocol, UDP (user datagram) protocol, HTTP (hypertext transfer) protocol, HTTPS (Hypertext Transfer Protocol Secure) protocol, SMTP (simple mail transfer) protocol, POP3 (PostOffice Protocol - Version 3, Post Office Protocol version 3), IMAP (Internet message access) protocol, FTP (file transfer) protocol, TFTP (trivial file transfer) protocol, SCP (Secure Copy Protocol, secure copy) protocol, DNS (domain name system) protocol, SSH (Secure Shell, secure shell) protocol, TELNET protocol, SOCKS4 protocol and SOCKS5 protocol.
[0059] In addition, the protocol simulation network dial test data packet includes data packet header information and data packet load information; the data packet header information includes the Internet Protocol address of the dial test initiator, the source port of the dial test initiator, the Internet Protocol address of the dial test target, the destination port of the dial test target, the protocol type, the data packet length, and the timestamp; the data packet load information includes protocol data, protocol request / response header, and protocol request / response body.
[0060] In this embodiment, the specific process of generating a network dial test task is as follows: Fig. 9 As shown, the steps are as follows: step 1: the dial test configuration file generation module of the configuration management system generates a dial test configuration file according to the configuration parameters, and places it in a shared directory that the dial test system and the business system have the right to access; step 2: the dial test configuration file reading modules of the dial test system and the business system periodically poll the shared directory of the configuration management system to obtain the latest dial test configuration file belonging to themselves; step 3: the protocol simulation dial test data packet generation module of the dial test system generates a specified type of protocol simulation network dial test data packet through the user state protocol stack according to the dial test configuration file configuration parameters; step 4: the network dial test task generation module of the dial test system generates a network dial test task to be executed according to the dial test configuration file configuration parameters and the protocol simulation network dial test data packet; step 5: the protocol simulation dial test data packet generation module of the business system generates a specified type of protocol simulation network dial test data packet through the user state protocol stack according to the dial test configuration file configuration parameters; step 6: the network dial test task generation module of the business system generates a network dial test task to be executed according to the dial test configuration file configuration parameters and the protocol simulation network dial test data packet.
[0061] Step S13: obtaining a response message generated by the dial test target end based on the protocol simulation network dial test data packet fed back by the task timer, and closing the execution program of the network dial test task according to the response message to complete the multi-protocol simulation network dial test with the dial test target end.
[0062] The specific process of executing the network dial test task and closing the execution program of the network dial test task is as follows: Fig.10 As shown, the steps are as follows: Step 1: The task timer calls the network dial test task execution module of the dial test initiator, and sends a protocol simulation network dial test data packet to the target end by using the user-mode protocol stack technology based on the data plane development kit, and enters the monitoring state to wait for the successful response message fed back by the target end; Step 2: After the network dial test data packet receiving monitoring module of the target end listens to the protocol simulation network dial test data packet sent by the dial test initiator, the data packet is stored locally, and a dial test success response message is generated and fed back to the dial test initiator; Step 3: After receiving the dial test success response message fed back by the target end, the network dial test task execution module of the dial test initiator stores the message in the local database and closes the network dial test task execution program.
[0063] In this embodiment, it also includes: recording the execution time of the network dial test task, monitoring whether the response message generated by the dial test target end based on the protocol emulation network dial test data packet fed back by the task timer is obtained within the execution time, and if the response message generated by the dial test target end based on the protocol emulation network dial test data packet fed back by the task timer is not obtained within the execution time, the execution program of the network dial test task is directly closed. In other words, the execution of a single network dial test task has a time limit, and when the target end is not received after the timeout, the execution program of this network dial test task will be automatically closed, thereby reducing the problem of excessive system resource occupation and excessive load caused by multi-task execution.
[0064] In addition, by using the user-state protocol stack technology based on the data plane development kit, the network dial-up task executor and the dial-up data packet receiving monitoring program both run in the user state, each process is bound to an independent network card queue and CPU, and each process uses an independent memory pool to ensure that there are no CPU interruptions, no shared data locks, no memory copies, etc. during data sending and receiving, effectively solving the problem of data packet sending and receiving delays.
[0065] The system constructed by the above-mentioned user-mode multi-protocol network dial-up test method is mainly composed of key components such as configuration management system, dial-up test system, and business system. The network communication relationship between these key components is as follows: Fig.11 The specific instructions are as follows:
[0066] Configuration management system: deployed in a designated area that can communicate with the dial test system and business system, and consists of a dial test configuration file generation module, a configuration file sharing directory, etc. It is responsible for generating network dial test configuration files based on configuration parameters and providing them to the dial test system and business system for use.
[0067] Dial test system: deployed in different areas that can communicate with the configuration management system and business system, and consists of a dial test configuration file reading module, a protocol simulation dial test data packet generation module, a network dial test task generation module, a network dial test task execution module, a dial test data packet receiving and monitoring module, etc. It is responsible for regularly pulling network dial test configuration files from the configuration management system, and using the user-mode protocol stack to generate multi-protocol simulation network dial test data packets based on the dial test configuration. It can initiate network dial test tasks to other dial test systems and business systems, and can receive dial test success response messages fed back by other systems and business systems.
[0068] Business system: Deployed in different areas that can communicate with the configuration management system and the dial test system. In addition to the functional modules of the business system itself, the dial test configuration file reading module, protocol simulation dial test data packet generation module, network dial test task generation module, network dial test task execution module, dial test data packet receiving and monitoring module, etc. can be installed as needed. Responsible for regularly pulling network dial test configuration files from the configuration management system, using the user-mode protocol stack to generate multi-protocol simulation network dial test data packets based on the dial test configuration, and can initiate network dial test tasks to the dial test system and other business systems, and can receive dial test success response messages fed back by the dial test system and other business systems.
[0069] The innovations of this application are: (1) This application proposes a method based on a data plane development kit to directly send, receive and process network dial-up test packets in user mode without going through the kernel; (2) Periodically polling to obtain a dial-up test configuration file and using a user-mode protocol stack to construct different network protocol simulation dial-up test packets; (3) Different network dial-up test modes are used to support quality assessment of the business system communication network.
[0070] By using the data plane development kit technology, the present application can realize the processing of network dial-up test data packets without passing through the kernel and directly sending and receiving them in the user state, effectively avoiding the delay problem caused by frequent CPU interrupts and memory copy operations, and greatly improving the data processing performance and throughput; by adopting a polling strategy in which the dial-up test system and the business system actively pull the dial-up test configuration file, the configuration management system does not need to maintain and manage related nodes, effectively reducing the complexity of the system; by using the user state protocol stack to construct the network dial-up test data packet, and realizing one-to-one, one-to-many, many-to-one, many-to-many, and fully meshed network dial-up test modes, it can meet the needs of different business scenarios and provide more comprehensive data support for evaluating the overall quality of the network where the business system is located.
[0071] In this embodiment, a dialing test configuration file is obtained, and configuration parameters are determined according to the dialing test configuration file; a protocol simulation network dialing test data packet supporting multiple types of protocols is generated based on a user-mode protocol stack and the configuration parameters, a network dialing test task is generated using the configuration parameters and the protocol simulation network dialing test data packet, and when a call request initiated by a task timer is obtained, the network dialing test task and the protocol simulation network dialing test data packet are transmitted to the task timer, so that the task timer sends the protocol simulation network dialing test data packet to the dialing test target end according to the network dialing test task; a response message generated by the dialing test target end based on the protocol simulation network dialing test data packet fed back by the task timer is obtained, and the execution program of the network dialing test task is closed according to the response message to complete the multi-protocol simulation network dialing test with the dialing test target end. The present application is applied to a dial test initiator, and generates a protocol simulation network dial test data packet supporting multiple types of protocols based on a user-mode protocol stack and configuration parameters, thereby improving the diversity and universality of protocol support types, scenarios, and business requirements, and generating a network dial test task. When the dial test target end that obtains feedback from a task timer generates a response message based on the protocol simulation network dial test data packet, the execution program of the network dial test task is closed, and the multi-protocol simulation network dial test between the dial test target end is completed without the need to maintain and manage related nodes, thereby effectively reducing system complexity, meeting the requirements of different business scenarios, improving data processing efficiency, and realizing mutual dial test between the dial test initiator and the dial test target end, thereby effectively avoiding delay problems caused by frequent central processing unit interrupts and memory copy operations, improving data processing performance and throughput, and being able to comprehensively evaluate the overall performance of the network where the business system is located.
[0072] See also Fig.12 As shown, the embodiment of the present invention discloses a user-mode multi-protocol network dialing device, which is applied to a dialing initiator, and may specifically include:
[0073] A file and parameter determination module 11 is used to obtain a dial test configuration file and determine configuration parameters according to the dial test configuration file;
[0074] The data packet and task generation module 12 is used to generate a protocol simulation network dial test data packet supporting multiple types of protocols based on the user state protocol stack and the configuration parameters, generate a network dial test task using the configuration parameters and the protocol simulation network dial test data packet, and when a call request initiated by a task timer is obtained, transmit the network dial test task and the protocol simulation network dial test data packet to the task timer, so that the task timer sends the protocol simulation network dial test data packet to the dial test target end according to the network dial test task;
[0075] The simulated network dialing module 13 is used to obtain the response message generated by the dialing target end based on the protocol simulated network dialing data packet fed back by the task timer, and close the execution program of the network dialing task according to the response message to complete the multi-protocol simulated network dialing with the dialing target end.
[0076] In this embodiment, a dialing test configuration file is obtained, and configuration parameters are determined according to the dialing test configuration file; a protocol simulation network dialing test data packet supporting multiple types of protocols is generated based on a user-mode protocol stack and the configuration parameters, a network dialing test task is generated using the configuration parameters and the protocol simulation network dialing test data packet, and when a call request initiated by a task timer is obtained, the network dialing test task and the protocol simulation network dialing test data packet are transmitted to the task timer, so that the task timer sends the protocol simulation network dialing test data packet to the dialing test target end according to the network dialing test task; a response message generated by the dialing test target end based on the protocol simulation network dialing test data packet fed back by the task timer is obtained, and the execution program of the network dialing test task is closed according to the response message to complete the multi-protocol simulation network dialing test with the dialing test target end. The present application is applied to a dial test initiator, and generates a protocol simulation network dial test data packet supporting multiple types of protocols based on a user-mode protocol stack and configuration parameters, thereby improving the diversity and universality of protocol support types, scenarios, and business requirements, and generating a network dial test task. When the dial test target end that obtains feedback from a task timer generates a response message based on the protocol simulation network dial test data packet, the execution program of the network dial test task is closed, and the multi-protocol simulation network dial test between the dial test target end is completed without the need to maintain and manage related nodes, thereby effectively reducing system complexity, meeting the requirements of different business scenarios, improving data processing efficiency, and realizing mutual dial test between the dial test initiator and the dial test target end, thereby effectively avoiding delay problems caused by frequent central processing unit interrupts and memory copy operations, improving data processing performance and throughput, and being able to comprehensively evaluate the overall performance of the network where the business system is located.
[0077] In some specific embodiments, the file and parameter determination module 11 may specifically include:
[0078] A system configuration module, used to deploy a configuration management system, a dialing test system and a business system at a designated network area, and set the configuration management system, the dialing test system and the business system to a normal operating state;
[0079] A screening module, used for screening a dial test initiator from the dial test system and the business system, and screening a dial test target from the dial test system and the business system;
[0080] The file sending module is used to generate a dial test configuration file by using the configuration management system, and send the dial test configuration file to the shared directory of the dial test initiator and the dial test target.
[0081] In some specific embodiments, the multiple types of protocols supported by the protocol emulation network dial-up data packet include Internet Protocol, Transmission Control Protocol, User Datagram Protocol, Hypertext Transfer Protocol, Hypertext Transfer Protocol Secure, Simple Mail Transfer Protocol, Post Office Protocol version 3, Internet Information Access Protocol, File Transfer Protocol, Simple File Transfer Protocol, Secure Copy Protocol, Domain Name System Protocol, Secure Shell Protocol, TELNET Protocol, SOCKS4 Protocol and SOCKS5 Protocol.
[0082] In some specific embodiments, the file and parameter determination module 11 may specifically include:
[0083] A parameter filling module is used to obtain the configuration parameters filled in by the client in the visual interface according to the dial test configuration file; the configuration parameters include service type, Internet Protocol address of the dial test initiator, source port of the dial test initiator, Internet Protocol address of the dial test target, destination port of the dial test target, protocol type, frame length, frame rate, domain name system server address, domain name parameters to be resolved, hypertext transfer protocol malicious code parameters or file transfer protocol malicious code parameters or simple mail transfer protocol malicious code parameters or transmission control protocol malicious code parameters, data query parameters, and data transmission format.
[0084] In some specific embodiments, the data packet and task generating module 12 may specifically include:
[0085] A user-mode protocol stack construction module is used to construct a user-mode protocol stack based on the seven-layer structure of the open system interconnection network model and the five-layer structure of the transmission control protocol / Internet protocol stack; the user-mode protocol stack includes the routing switching and dual-stack operation protocols in the fourth version of the Internet Communication Protocol or the sixth version of the Internet Communication Protocol, and the session processing protocol in the transmission control protocol or the user datagram protocol;
[0086] The full-stack processing module is used to perform full-stack processing on the configuration parameters on the data plane development kit message processing framework of the user-mode protocol stack to generate a protocol simulation network dial-up test data packet supporting multiple types of protocols.
[0087] In some specific embodiments, the protocol simulation network dial test data packet includes data packet header information and data packet load information; the data packet header information includes the Internet Protocol address of the dial test initiator, the source port of the dial test initiator, the Internet Protocol address of the dial test target, the destination port of the dial test target, the protocol type, the data packet length, and the timestamp; the data packet load information includes protocol data, protocol request / response header, and protocol request / response body.
[0088] In some specific embodiments, the user-mode multi-protocol network dialing device may further include:
[0089] The execution program directly closes the module, which is used to record the execution time of the network dialing test task, and monitor whether the response message generated by the dialing test target end based on the protocol simulation network dialing test data packet fed back by the task timer is obtained within the execution time; if the response message generated by the dialing test target end based on the protocol simulation network dialing test data packet fed back by the task timer is not obtained within the execution time, the execution program of the network dialing test task is directly closed.
[0090] Fig.13 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. The electronic device 20 may specifically include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 is used to store a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the user-mode multi-protocol network dialing method performed by the electronic device disclosed in any of the aforementioned embodiments.
[0091] In this embodiment, the power supply 23 is used to provide working voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and the external device, and the communication protocol it follows is any communication protocol that can be applied to the technical solution of the present application, and is not specifically limited here; the input and output interface 25 is used to obtain external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs and is not specifically limited here.
[0092] In addition, the memory 22, as a carrier for storing resources, can be a read-only memory, a random access memory, a disk or an optical disk, etc. The resources stored thereon include an operating system 221, a computer program 222 and data 223, etc. The storage method can be temporary storage or permanent storage.
[0093] Among them, the operating system 221 is used to manage and control the hardware devices and computer programs 222 on the electronic device 20, so as to realize the operation and processing of the data 223 in the memory 22 by the processor 21, which can be Windows, Unix, Linux, etc. In addition to including a computer program that can be used to complete the user-mode multi-protocol network dialing method performed by the electronic device 20 disclosed in any of the aforementioned embodiments, the computer program 222 can further include a computer program that can be used to complete other specific tasks. In addition to including data transmitted from an external device received by the user-mode multi-protocol network dialing device, the data 223 can also include data collected by its own input and output interface 25, etc.
[0094] The steps of the method or algorithm described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), a memory, a read-only memory (ROM), an electrically programmable ROM, an electrically erasable programmable ROM, a register, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
[0095] Furthermore, an embodiment of the present application also discloses a computer-readable storage medium, in which a computer program is stored. When the computer program is loaded and executed by a processor, the steps of the user-mode multi-protocol network dialing method disclosed in any of the aforementioned embodiments are implemented.
[0096] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including 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 device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.
[0097] The above is a detailed introduction to a user-mode multi-protocol network dialing method, device, equipment and storage medium provided by the present invention. Specific examples are used in this article to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only used to help understand the method of the present invention and its core idea; at the same time, for general technical personnel in this field, according to the idea of the present invention, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present invention.
Claims
1. A user-mode multi-protocol network dialing method, characterized in that: Applicable to the dial test initiator, including: Obtaining a dial test configuration file, and determining configuration parameters according to the dial test configuration file; Generate a protocol emulation network dial test data packet supporting multiple types of protocols based on the user state protocol stack and the configuration parameters, generate a network dial test task using the configuration parameters and the protocol emulation network dial test data packet, and when a call request initiated by a task timer is obtained, transmit the network dial test task and the protocol emulation network dial test data packet to the task timer, so that the task timer sends the protocol emulation network dial test data packet to the dial test target end according to the network dial test task; The dial test target end that obtains feedback from the task timer generates a response message based on the protocol simulation network dial test data packet, and closes the execution program of the network dial test task according to the response message to complete the multi-protocol simulation network dial test with the dial test target end.
2. The user-mode multi-protocol network dialing method according to claim 1, characterized in that: Before obtaining the dial test configuration file, the method further includes: Deploy a configuration management system, a dialing test system, and a business system at designated network area locations, respectively, and set the configuration management system, the dialing test system, and the business system to normal operating states; Filtering a dial test initiator from the dial test system and the business system, and filtering a dial test target from the dial test system and the business system; The configuration management system is used to generate a dial test configuration file, and the dial test configuration file is sent to a shared directory of the dial test initiator and the dial test target.
3. The user-mode multi-protocol network dialing method according to claim 1, characterized in that: The protocol emulation network dial-up data packet supports multiple types of protocols including Internet Protocol, Transmission Control Protocol, User Datagram Protocol, Hypertext Transfer Protocol, Hypertext Transfer Security Protocol, Simple Mail Transfer Protocol, Post Office Protocol version 3, Internet Information Access Protocol, File Transfer Protocol, Simple File Transfer Protocol, Secure Copy Protocol, Domain Name System Protocol, Secure Shell Protocol, TELNET Protocol, SOCKS4 Protocol and SOCKS5 Protocol.
4. The user-mode multi-protocol network dialing method according to claim 1, characterized in that: The determining of configuration parameters according to the dial test configuration file includes: Obtain the configuration parameters filled in by the client in the visualization interface according to the dial test configuration file; the configuration parameters include service type, Internet Protocol address of the dial test initiator, source port of the dial test initiator, Internet Protocol address of the dial test target, destination port of the dial test target, protocol type, frame length, frame rate, domain name system server address, domain name parameters to be resolved, hypertext transfer protocol malicious code parameters or file transfer protocol malicious code parameters or simple mail transfer protocol malicious code parameters or transmission control protocol malicious code parameters, data query parameters, and data transmission format.
5. The user-mode multi-protocol network dialing method according to claim 1, characterized in that: The method of generating a protocol simulation network dial test data packet supporting multiple types of protocols based on the user state protocol stack and the configuration parameters includes: A user-mode protocol stack is constructed based on the seven-layer structure of the open system interconnection network model and the five-layer structure of the transmission control protocol / Internet protocol stack; the user-mode protocol stack includes the routing switching and dual-stack operation protocols in the fourth version of the Internet Communication Protocol or the sixth version of the Internet Communication Protocol, and the session processing protocol in the transmission control protocol or the user datagram protocol; The configuration parameters are fully processed on the data plane development kit message processing framework of the user mode protocol stack to generate a protocol simulation network dial test data packet supporting multiple types of protocols.
6. The user-mode multi-protocol network dialing method according to claim 1, characterized in that: The protocol simulation network dial test data packet includes data packet header information and data packet load information; the data packet header information includes the Internet Protocol address of the dial test initiator, the source port of the dial test initiator, the Internet Protocol address of the dial test target, the destination port of the dial test target, the protocol type, the data packet length, and the timestamp; the data packet load information includes protocol data, protocol request / response header, and protocol request / response body.
7. The user-mode multi-protocol network dialing method according to any one of claims 1 to 6, characterized in that: Also includes: Record the execution time of the network dialing task, monitor whether a response message generated by the dialing target end based on the protocol simulation network dialing data packet and fed back by the task timer is obtained within the execution time; if a response message generated by the dialing target end based on the protocol simulation network dialing data packet and fed back by the task timer is not obtained within the execution time, directly close the execution program of the network dialing task.
8. A user-mode multi-protocol network dialing device, characterized in that: Applicable to the dial test initiator, including: A file and parameter determination module, used to obtain a dial test configuration file and determine configuration parameters according to the dial test configuration file; A data packet and task generation module, used to generate a protocol simulation network dial test data packet supporting multiple types of protocols based on a user-mode protocol stack and the configuration parameters, generate a network dial test task using the configuration parameters and the protocol simulation network dial test data packet, and upon obtaining a call request initiated by a task timer, transmit the network dial test task and the protocol simulation network dial test data packet to the task timer, so that the task timer sends the protocol simulation network dial test data packet to the dial test target end according to the network dial test task; The simulated network dialing module is used to obtain the response message generated by the dialing target end based on the protocol simulated network dialing data packet fed back by the task timer, and close the execution program of the network dialing task according to the response message to complete the multi-protocol simulated network dialing with the dialing target end.
9. An electronic device, characterized in that: include: Memory, used to store computer programs; A processor, configured to execute the computer program to implement the user-mode multi-protocol network dialing method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: Used to store computer programs; wherein, when the computer program is executed by a processor, the user-mode multi-protocol network dialing method according to any one of claims 1 to 7 is implemented.