Network performance evaluation method and device
By adding the feature data of the first data packet to the short sequence, the problem of dependency corruption after long sequence segmentation is solved, and the accuracy of network performance evaluation is improved.
Patent Information
- Application Number
- CN202310993587.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-07
- Publication Date
- 2025-02-14
AI Technical Summary
When evaluating the performance of the transmission network, directly slicing the long sequence will destroy the dependencies between data packets, resulting in the sequence model being unable to recognize long-range dependencies, which will lead to large errors in the network performance evaluation results.
By identifying the first data packet that affects a plurality of short sequences in each data packet and adding its corresponding feature data to the corresponding short sequence, a target short sequence that retains feature data that can indicate long-range dependencies is obtained.
Improve the accuracy of network performance evaluation, allowing the sequence model to identify long-range dependencies, thereby obtaining a more comprehensive target network transmission situation.
Smart Images

Figure CN119449667A_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of communication technology, and in particular, to a network performance evaluation method and device. Background Art
[0002] Among the diverse services on the Internet, different services, such as online shopping and live streaming, have different requirements for network performance such as bandwidth, latency, latency jitter, and packet loss rate. In response to this, operators usually use Quality of Service (QoS) technology to ensure the implementation of differentiated services for different services based on the service-level agreement (SLA) signed with service providers. Among them, QoS technology performs network management functions such as flow classification and marking, traffic supervision and shaping, congestion management, and congestion avoidance based on the performance requirements of different services, thereby realizing differentiated services for different business flows.
[0003] In the related art, the performance data of the transmission network of the business flow can be obtained through deep learning technology. For example, the characteristic data of the business flow is input into the pre-trained sequence model to obtain the performance data of the transmission network of the business flow. Among them, the sequence model can be a neural network model trained using the characteristic data of the historical business flow and the performance data labels of the transmission network of the historical business flow. The input of the sequence model is usually in the form of a sequence, and the length of the sequence is limited, and can only be a short sequence such as a sequence whose length is usually not more than 1000. In Internet-based services, the characteristic data of the business flow is often a long sequence that far exceeds the length of the short sequence, for example, a sequence of tens of thousands of lengths. In this regard, the long sequence is usually divided into multiple short sequences, and the sequence model can process multiple short sequences in parallel.
[0004] However, directly splitting long sequences will destroy the dependencies between different data packets in the long sequence, that is, long-term dependencies, causing the sequence model to be unable to identify long-term dependencies. In this way, the sequence model cannot accurately analyze the transmission of data by the transmission network, and cannot accurately evaluate the performance of the transmission network, resulting in large errors in the network performance evaluation results. Summary of the invention
[0005] In order to solve the above technical problems, the present application provides a network performance evaluation method and device. In the network performance evaluation method, by adding the characteristic data corresponding to the first data packet in each data packet that affects the transmission of the data packets corresponding to the multiple short sequences to the corresponding short sequences, a target short sequence that retains the characteristic data that can indicate the long-range dependency is obtained, thereby improving the accuracy of the network performance evaluation.
[0006] In a first aspect, an embodiment of the present application provides a network performance evaluation method, the method comprising: obtaining traffic information of a target network; wherein the traffic information is used to indicate the transmission properties of the target network for transmitting each data packet of a service flow; converting the traffic information into multiple short sequences; wherein each of the multiple short sequences includes feature data of multiple data packets; the length of each short sequence conforms to the length of an input sequence of a sequence model obtained by pre-training; for each short sequence, according to the traffic information, identifying the first data packet corresponding to the short sequence in each data packet, and adding the feature data of the first data packet to the short sequence to obtain a target short sequence; wherein the first data packet includes a data packet that is different from the second data packet and affects the transmission of the second data packet; the second data packet includes a data packet corresponding to the feature data in the short sequence; based on the sequence model, processing all the obtained target short sequences to obtain the performance data of the target network; wherein the sequence model is a neural network model trained using sample target short sequences and performance data labels of the sample target short sequences.
[0007] In the embodiment of the present application, a target short sequence that retains the characteristic data that can indicate long-range dependency is obtained by identifying the first data packet in each data packet that affects the transmission of data packets corresponding to each of the multiple short sequences, and adding the characteristic data corresponding to each of the first data packets to the corresponding short sequence. In this way, it is ensured that the sequence model can identify the long-range dependency when processing the target short sequence to obtain a more comprehensive target network transmission situation, thereby more accurately evaluating the performance of the target network and improving the accuracy of network performance evaluation.
[0008] According to the first aspect, traffic information includes the transmission time of each data packet by a network element in a target network; based on the traffic information, a first data packet corresponding to a short sequence in each data packet is identified, including: based on the transmission time, a data packet corresponding to characteristic data in a first short sequence of multiple short sequences, which leaves the network element after the arrival of the data packet corresponding to characteristic data in a second short sequence of multiple short sequences, is determined as the first data packet corresponding to the second short sequence; wherein the data packet corresponding to the characteristic data in the first short sequence arrives at the network element before the data packet corresponding to the characteristic data in the second short sequence; the characteristic data of the first data packet is added to the short sequence to obtain a target short sequence, including: adding the characteristic data of the first data packet to the header of the short sequence to obtain a target short sequence.
[0009] In the embodiment of the present application, based on the transmission time of each data packet, the first data packet in the previous short sequence that affects the transmission of the corresponding data packet in the next short sequence can be determined, which is more convenient and efficient. The characteristic data in the short sequence are arranged in the order of the time of arrival at the network element, and accordingly, the characteristic data of the first data packet is added to the header of the short sequence, for example Figure 4a 1 is an example diagram of the process of performance evaluation of a long sequence of service flows provided in an embodiment of the present application. Figure 4a As shown, the characteristic data B of the first data packet is added in front of the characteristic data i1 to obtain a target short sequence, which can ensure the accuracy of the dependency relationship reflected by the first data packet.
[0010] According to the first aspect, or any implementation method of the first aspect above, the transmission time includes the historical queuing time and arrival time of each data packet in the network element; according to the transmission time, a data packet corresponding to the characteristic data in the second short sequence of multiple short sequences, which leaves the network element after the data packet corresponding to the characteristic data in the first short sequence of multiple short sequences arrives, is determined as the first data packet corresponding to the second short sequence, including: determining a data packet whose arrival time in the data packet corresponding to the characteristic data of the first short sequence falls within a preset time window as the first data packet corresponding to the second short sequence; wherein the preset time window includes a time period determined based on the historical queuing time; or, the preset time window includes a time period determined based on the transmission priority of the data packet corresponding to the characteristic data of the first short sequence and the historical queuing time.
[0011] In the embodiment of the present application, dependency prediction is achieved by presetting a time window: dependent packets that will affect the packets in the sequence are predicted in advance, thereby avoiding the problem of high time overhead of the model in fully predicting a long sequence caused by serial prediction, and improving efficiency. In other words, the first data packet of multiple short sequences can be quickly identified, and the scenario where the departure time of the data packet cannot be accurately determined can be quickly identified by setting the time window through the historical queuing time.
[0012] According to the first aspect, or any implementation method of the first aspect above, the characteristic data of the first data packet is added to the header of the short sequence, including: updating the arrival time of the first data packet to the arrival time of the short sequence; wherein each characteristic data in the short sequence is arranged in chronological order according to the arrival time of the data packet corresponding to the characteristic data.
[0013] In the embodiment of the present application, the arrival time of the first data packet is adjusted to merge the characteristic data of the first data packet and the corresponding short sequence, thereby taking into account both merging to obtain a target short sequence and eliminating dependence on data packets that have left the router, thereby further improving accuracy.
[0014] According to the first aspect, or any implementation method of the first aspect above, the performance data of the target network includes the forwarding time of the network element of the target network for the data packet; based on the sequence model, all the target short sequences are processed to obtain the performance data of the target network, including: based on the sequence model obtained in advance, all the target short sequences are processed separately to obtain the predicted transmission delay of the data packet corresponding to each target short sequence in all the target short sequences transmitted by the target network; when the first data packet leaves the network element, if the first data packet is lost or leaves before the short sequence arrives at the network element, the predicted transmission delay of the first target short sequence is subtracted from the unit of the network element. Throughput duration; wherein, the first target short sequence includes a target short sequence of a corresponding data packet arriving at the network element after a data packet corresponding to the target short sequence including the first data packet; the unit throughput duration of the network element includes the throughput duration of the network element for a single data packet; in the case where a third data packet leaves the network element, if the third data packet leaves after the short sequence arrives at the network element, the predicted transmission delay of the second target short sequence is increased by the unit throughput duration; wherein, the third data packet includes a data packet arriving at the network element before the first data packet; the second target short sequence includes a target short sequence of a corresponding data packet arriving at the network element after a data packet corresponding to the target short sequence including the third data packet.
[0015] The embodiment of the present application implements error judgment based on the loss and departure timing of the first data packet, and the departure timing of the third data packet, and when it is determined that an error exists, it corrects the error through unit throughput time, thereby improving the accuracy of network performance data and further improving the accuracy of network performance evaluation.
[0016] According to the first aspect, or any implementation method of the first aspect above, the business flow comes from multiple users; based on the sequence model, all the target short sequences are processed to obtain the performance data of the target network, including: obtaining the configuration information of the network element in the target network; when the configuration information indicates that the network element supports quality of service (QoS), based on the sequence model obtained by pre-training, all the target short sequences are processed to obtain the performance data of the target network; when the configuration information indicates that the network element supports hierarchical quality of service (HQoS), the flow information of each user among the multiple users is determined according to the configuration information and the flow information of each data packet in each data packet; for each user, based on the sequence model obtained by pre-training, the target short sequence corresponding to the user's flow information is processed to obtain the performance data of the target network corresponding to the user.
[0017] The embodiment of the present application can support performance evaluation of different service quality scenarios through the configuration information of the network element, which has a wider application scope and is more convenient.
[0018] According to the first aspect, or any implementation method of the first aspect above, the flow information of each data packet includes the throughput time of the data packet by the network element; the configuration information includes the preset total export bandwidth and the priority of each data packet; based on the configuration information and the flow information of each data packet in each data packet, the flow information of each user among multiple users is determined, including: for each data packet, counting the number of data packets of the same level within the throughput time of the data packet; wherein the data packets of the same level include data packets with the same priority as the data packet in the data packets of other users different from the user of the data packet; determining the equivalent bandwidth of each data packet of the user based on the number of each data packet of each user and the preset total export bandwidth; determining the equivalent bandwidth of the user based on the equivalent bandwidth of all data packets of each user, and determining the flow information of the data packets with a size of the equivalent bandwidth of the user in all data packets of the user as the flow information of the user.
[0019] In the embodiment of the present application, by calculating the bandwidth actually obtained by each queue of the user under the scheduling model, the scale of data processed by the network element model can be reduced, thereby improving the speed of performance evaluation.
[0020] According to the first aspect, or any implementation method of the first aspect above, the target network transmits each data packet through a network element; the traffic information of the target network is obtained, including: collecting the transmission information of the transmission port of the network element for transmitting the service flow; determining the current performance data corresponding to the service flow based on the transmission information; when the current performance data does not meet the preset performance indicators, collecting the traffic information of the service flow received by the network element within a preset period to obtain the traffic information of the target network.
[0021] The embodiments of the present application collect transmission information of network element transmission service flows, and when the current performance data of the network element does not meet the preset performance indicators, continuously collect traffic information within a certain period of time, that is, within a preset period. This can be applied to online performance evaluation of network elements such as routers during the working process, and subsequent network element configuration optimization based on the results of the online performance evaluation, thereby timely optimizing network performance and expanding applicable scenarios.
[0022] According to the first aspect, or any implementation of the first aspect above, the performance data of the target network includes current performance data and candidate performance data; based on the sequence model, all target short sequences are processed to obtain the performance data of the target network, including: obtaining the current quality of service (QoS) configuration information of the network element and the candidate quality of service (QoS) configuration information pre-stored based on the preset performance indicator; based on the sequence model and the current quality of service (QoS) configuration information, all target short sequences are processed to obtain the current performance data; based on the sequence model and the candidate quality of service (QoS) configuration information, all target short sequences are processed to obtain the candidate performance data; after all target short sequences are processed based on the sequence model to obtain the performance data of the target network, the method also includes: when the current performance data does not meet the preset performance indicator and the candidate performance data meets the preset performance indicator, updating the configuration information of the network element according to the candidate quality of service (QoS) configuration information; when both the current performance data and the candidate performance data do not meet the preset performance indicator, adjusting the current quality of service (QoS) configuration information to the updated quality of service (QoS) configuration information that meets the preset performance indicator according to the current performance data, and updating the configuration information of the network element according to the updated quality of service (QoS) configuration information.
[0023] The embodiments of the present application can implement online tuning of network elements such as routers and switches based on performance evaluation results and pre-configured quality of service (QoS) configuration information: update the configuration information of the network elements to meet preset performance indicators such as the performance indicators recorded in the SLA, timely optimize network performance, and improve user experience.
[0024] According to the first aspect, or any implementation of the first aspect above, the target network includes a simulation platform or a data center network (DCN); obtaining traffic information of the target network includes: reading pre-configured traffic information of the target network.
[0025] The embodiments of the present application can be applied to network performance evaluation of a simulation platform or a data center network (DCN) by reading pre-configured traffic information of a target network.
[0026] According to the first aspect, or any implementation method of the first aspect above, a sequence model is used to determine the performance data of a network element in a target network; the target network includes multiple network elements; based on the sequence model, all target short sequences are processed to obtain the performance data of the target network, including: obtaining the network topology of the target network; wherein the network topology is at least used to indicate the connection relationship between multiple network elements in the target network; a sequence model is assigned to each network element in the multiple network elements, and the assigned sequence models are connected according to the network topology to obtain a full network model; wherein the full network model includes multiple levels divided according to the network topology, and each level contains at least one sequence model; according to the multiple levels and the full network model, all target short sequences are processed layer by layer to obtain the performance data of the target network.
[0027] In the embodiment of the present application, a whole network model is constructed through network topology, and then the performance data of the entire target network is evaluated in a more accurate and comprehensive manner according to the layer-by-layer iteration of the network element levels in the network topology.
[0028] In a second aspect, an embodiment of the present application provides a network performance evaluation device, which includes: a traffic information acquisition module, which is used to acquire traffic information of a target network; wherein the traffic information is used to indicate the transmission properties of the target network for transmitting each data packet of a service flow; a feature extraction module, which is used to convert the traffic information into multiple short sequences; wherein each of the multiple short sequences includes feature data of multiple data packets; the length of each short sequence conforms to the length of the input sequence of a pre-trained sequence model; a feature preprocessing module, which is used to identify, for each short sequence, the first data packet corresponding to the short sequence in each data packet according to the traffic information, and add the feature data of the first data packet to the short sequence to obtain a target short sequence; wherein the first data packet includes a data packet that is different from the second data packet and affects the transmission of the second data packet; the second data packet includes a data packet corresponding to the feature data in the short sequence; a performance evaluation module, which is used to process all the target short sequences obtained based on the sequence model to obtain the performance data of the target network; wherein the sequence model is a neural network model trained using sample target short sequences and performance data labels of sample target short sequences.
[0029] According to the second aspect, traffic information includes the transmission time of each data packet by the network element in the target network; a feature preprocessing module is specifically used to: determine, based on the transmission time, a data packet corresponding to the feature data in the first short sequence of multiple short sequences, which leaves the network element after the data packet corresponding to the feature data in the second short sequence of multiple short sequences arrives, as the first data packet corresponding to the second short sequence; wherein the data packet corresponding to the feature data in the first short sequence arrives at the network element before the data packet corresponding to the feature data in the second short sequence; and add the feature data of the first data packet to the header of the short sequence to obtain the target short sequence.
[0030] According to the second aspect, or any implementation method of the second aspect above, the transmission time includes the historical queuing time and arrival time of each data packet in the network element; the feature preprocessing module is specifically used to: determine the data packet whose arrival time in the data packet corresponding to the feature data of the first short sequence belongs to the preset time window as the first data packet corresponding to the second short sequence; wherein the preset time window includes a time period determined based on the historical queuing time; or, the preset time window includes a time period determined based on the transmission priority of the data packet corresponding to the feature data of the first short sequence and the historical queuing time.
[0031] According to the second aspect, or any implementation method of the second aspect above, the feature preprocessing module is specifically used to: update the arrival time of the first data packet to the arrival time of the short sequence; wherein each feature data in the short sequence is arranged in chronological order according to the arrival time of the data packet corresponding to the feature data.
[0032] According to the second aspect, or any implementation method of the second aspect above, the performance data of the target network includes the forwarding time of the network element of the target network for the data packet; the performance evaluation module is specifically used to: based on the sequence model obtained by pre-training, process all the target short sequences obtained respectively, and obtain the predicted transmission delay of each target short sequence corresponding to the data packet transmitted by the target network in all the target short sequences; in the case where the first data packet leaves the network element, if the first data packet is lost or leaves before the short sequence arrives at the network element, then the predicted transmission delay of the first target short sequence is subtracted from the unit throughput time of the network element; wherein, the first target short sequence includes the target short sequence of the corresponding data packet arriving at the network element after the data packet corresponding to the target short sequence containing the first data packet; the unit throughput time of the network element includes the throughput time of the network element for a single data packet; in the case where the third data packet leaves the network element, if the third data packet leaves after the short sequence arrives at the network element, then the predicted transmission delay of the second target short sequence is increased by the unit throughput time; wherein, the third data packet includes the data packet arriving at the network element before the first data packet; the second target short sequence includes the target short sequence of the corresponding data packet arriving at the network element after the data packet corresponding to the target short sequence containing the third data packet.
[0033] According to the second aspect, or any implementation method of the second aspect above, the business flow comes from multiple users; the performance evaluation module is specifically used to: obtain configuration information of a network element in a target network; when the configuration information indicates that the network element supports quality of service (QoS), based on a pre-trained sequence model, process all target short sequences to obtain performance data of the target network; when the configuration information indicates that the network element supports hierarchical quality of service (HQoS), determine the flow information of each user among multiple users based on the configuration information and the flow information of each data packet in each data packet; for each user, based on a pre-trained sequence model, process the target short sequence corresponding to the user's flow information to obtain the performance data of the target network corresponding to the user.
[0034] According to the second aspect, or any implementation method of the second aspect above, the flow information of each data packet includes the throughput time of the data packet by the network element; the configuration information includes each preset total export bandwidth and the priority of each data packet; the performance evaluation module is specifically used to: for each data packet, count the number of data packets of the same level within the throughput time of the data packet; wherein the data packets of the same level include data packets with the same priority as the data packet among the data packets of other users different from the user of the data packet; determine the equivalent bandwidth of each data packet of the user based on the number of each data packet of each user and the preset total export bandwidth; determine the equivalent bandwidth of the user based on the equivalent bandwidth of all data packets of each user, and determine the flow information of the data packets with a size of the equivalent bandwidth of the user among all data packets of the user as the flow information of the user.
[0035] According to the second aspect, or any implementation method of the second aspect above, the target network transmits each data packet through a network element; the traffic information acquisition module is specifically used to: collect transmission information of the network element's transmission port for transmitting the business flow; determine the current performance data corresponding to the business flow based on the transmission information; when the current performance data does not meet the preset performance indicators, collect the traffic information of the business flow received by the network element within a preset period to obtain the traffic information of the target network.
[0036] According to the second aspect, or any implementation method of the second aspect above, the performance data of the target network includes current performance data and candidate performance data; a performance evaluation module is specifically used to: obtain the current quality of service (QoS) configuration information of the network element and the candidate quality of service (QoS) configuration information pre-stored based on preset performance indicators; based on the sequence model and the current quality of service (QoS) configuration information, all the target short sequences obtained are processed to obtain the current performance data; based on the sequence model and the candidate quality of service (QoS) configuration information, all the target short sequences obtained are processed to obtain the candidate performance data; the device also includes an error correction module, which is used to: when the current performance data does not meet the preset performance indicators and the candidate performance data meets the preset performance indicators, update the configuration information of the network element according to the candidate quality of service (QoS) configuration information; when both the current performance data and the candidate performance data do not meet the preset performance indicators, adjust the current quality of service (QoS) configuration information to the updated quality of service (QoS) configuration information that meets the preset performance indicators according to the current performance data, and update the configuration information of the network element according to the updated quality of service (QoS) configuration information.
[0037] According to the second aspect, or any implementation of the second aspect above, the target network includes a simulation platform or a data center network (DCN); the traffic information acquisition module is specifically used to: read pre-configured traffic information of the target network.
[0038] According to the second aspect, or any implementation method of the second aspect above, the sequence model is used to determine the performance data of a network element in the target network; the target network includes multiple network elements; the performance evaluation module is specifically used to: obtain the network topology of the target network; wherein the network topology is at least used to indicate the connection relationship between multiple network elements in the target network; assign a sequence model to each network element in the multiple network elements, and obtain a full network model by connecting the assigned sequence models according to the network topology; wherein the full network model includes multiple levels divided according to the network topology, and each level contains at least one sequence model; according to the multiple levels and the full network model, all target short sequences obtained are processed layer by layer to obtain the performance data of the target network.
[0039] The second aspect and any implementation of the second aspect correspond to the first aspect and any implementation of the first aspect respectively. The technical effects corresponding to the second aspect and any implementation of the second aspect can refer to the technical effects corresponding to the above-mentioned first aspect and any implementation of the first aspect, which will not be repeated here.
[0040] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a processor and a memory; the processor and the memory are connected; the memory is used to store one or more programs; when the one or more programs are executed by one or more processors, the one or more processors implement a method such as the first aspect and any one of the implementation methods of the first aspect.
[0041] In a fourth aspect, an embodiment of the present application provides a computer-readable medium for storing a computer program, wherein the computer program includes instructions for executing the method in the first aspect or any possible implementation of the first aspect.
[0042] In a fifth aspect, an embodiment of the present application provides a computer program comprising instructions for executing the method in the first aspect or any possible implementation of the first aspect.
[0043] In a sixth aspect, an embodiment of the present application provides a chip, the chip comprising a processing circuit and a transceiver pin, wherein the transceiver pin and the processing circuit communicate with each other through an internal connection path, and the processing circuit executes the method in the first aspect or any possible implementation of the first aspect to control the receiving pin to receive a signal, and to control the sending pin to send a signal. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the description of the embodiments of the present application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0045] Figure 1a This is one of the structural block diagrams of a network performance evaluation system provided in an embodiment of the present application;
[0046] Figure 1b This is one of the structural block diagrams of a network performance evaluation system provided in an embodiment of the present application;
[0047] Figure 2 It is a structural block diagram of a router provided in an embodiment of the present application;
[0048] Figure 3 It is a flowchart of a network performance evaluation method provided by an embodiment of the present application;
[0049] Figure 4a This is an example diagram of a process for performance evaluation of a long sequence of service flows provided in an embodiment of the present application;
[0050] Figure 4bis a structural example diagram of a sequence model provided in an embodiment of the present application;
[0051] Figure 5 It is a schematic diagram of the process of network performance evaluation of a hierarchical quality of service (HQoS) scenario provided in an embodiment of the present application;
[0052] Figure 6 It is a schematic diagram of the processing process of the equivalent bandwidth allocation algorithm provided in the embodiment of the present application;
[0053] Figure 7 This is an example diagram of the processing process of a network performance evaluation method provided in an embodiment of the present application. DETAILED DESCRIPTION
[0054] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0055] The term "and / or" in this article is merely a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone.
[0056] The terms "first" and "second" in the description and claims of the embodiments of the present application are used to distinguish different objects rather than to describe a specific order of objects. For example, a first target object and a second target object are used to distinguish different target objects rather than to describe a specific order of target objects.
[0057] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0058] In the description of the embodiments of the present application, unless otherwise specified, the meaning of "multiple" refers to two or more than two. For example, multiple processing units refer to two or more processing units; multiple systems refer to two or more systems.
[0059] In order to facilitate understanding of this embodiment, some technical terms and background technologies involved in this embodiment are first introduced:
[0060] Hierarchical quality of service (HQoS): Hierarchical scheduling is implemented based on multi-level queues, which not only differentiates services but also users. It can provide refined service quality assurance and save overall network operation and maintenance costs.
[0061] Quality of service (HQoS): Traffic scheduling is based on interfaces. A single interface can only distinguish service priorities. Traffic of the same priority uses the same interface queue and competes for the same queue resources. Therefore, traditional QoS cannot differentiate services for multiple traffic of multiple users on an interface.
[0062] Long-term Dependency: In the field of machine learning, the dependency between elements in the input that are relatively far apart.
[0063] PCAP file: It is a commonly used data packet storage format. The overall structure of a PCAP file is in the form of file header-data packet header 1-data packet 1-data packet header 2-data packet 2, etc. There can be multiple data packet headers, and each data packet header is followed by a real data packet.
[0064] Traffic model: A model used to generate traffic, i.e., data packets. For example, a random model: A host sends a data packet to any other host in the network with equal probability. A probabilistic model: In the network, a host numbered m sends data packets to hosts numbered (m+i), (m+j), and (m+k) with probabilities Pt, Pa, and Pc, respectively.
[0065] The embodiment of the present application provides a network performance evaluation method to solve the above problem. The method identifies the first data packet in each data packet that affects the transmission of the data packets corresponding to each of the multiple short sequences, and adds the characteristic data corresponding to each of the first data packets to the corresponding short sequence, thereby obtaining a target short sequence that retains the characteristic data that can indicate the long-range dependency. In this way, it is ensured that the sequence model can identify the long-range dependency when processing the target short sequence to obtain a more comprehensive target network transmission situation, thereby more accurately evaluating the performance of the target network and improving the accuracy of network performance evaluation.
[0066] Before describing the technical solution of the embodiment of the present application, the operating platform of the network performance evaluation method of the embodiment of the present application is first described in conjunction with the accompanying drawings. The embodiment of the present application can be applied to electronic devices such as traffic simulation platforms or data center networks (DCNs) that can pre-configure traffic. In the specific implementation of the embodiment of the present application, the electronic device can be, for example, a computer, a server, a computing cluster composed of multiple servers, and other devices. For example, Figure 1a This is one of the structural block diagrams of a network performance evaluation system provided in the embodiment of the present application. Figure 1a As shown, the system may include: a flow information acquisition module 101, a feature extraction module 102, a feature preprocessing module 103 and a performance evaluation module 104;
[0067] The flow information acquisition module 101 is used to acquire the flow information of the target network; wherein the flow information is used to indicate the transmission properties of the target network for transmitting each data packet of the service flow;
[0068] The feature extraction module 102 is used to convert the traffic information into a plurality of short sequences; wherein each of the plurality of short sequences includes feature data of a plurality of data packets; and the length of each short sequence conforms to the length of the input sequence of the sequence model obtained by pre-training;
[0069] The feature preprocessing module 103 is used to identify, for each short sequence, the first data packet corresponding to the short sequence in each data packet according to the flow information, and add the feature data of the first data packet to the short sequence to obtain a target short sequence; wherein the first data packet includes a data packet that is different from the second data packet and affects the transmission of the second data packet; and the second data packet includes a data packet corresponding to the feature data in the short sequence;
[0070] The performance evaluation module 104 is used to process all the obtained target short sequences based on the sequence model to obtain the performance data of the target network; wherein the sequence model is a neural network model trained using sample target short sequences and performance data labels of the sample target short sequences.
[0071] In one example, Figure 1b This is one of the structural block diagrams of a network performance evaluation system provided in the embodiment of the present application. Figure 1b As shown, the system may include: an input module 201, a traffic processing module 203 and a network-wide performance evaluation module 104. The input module 201 is used to receive the service flow transmission configuration input by the user, which may at least be traffic information, and may also include network element device configuration information and network topology. The traffic information may be configured in the form of a PCAP file or a traffic model. The traffic processing module 203 is used to implement the above Figure 1aThe functions of the feature extraction module 102 and the feature preprocessing module 103 are shown. The whole network performance evaluation module is used to implement the above Figure 1a The functionality of the performance evaluation module 104 is shown.
[0072] In one example, Figure 1b The system shown may also include a networking module 202, which is used to select a network element model of a transmission network suitable for the service flow, that is, a network element in the target network, based on the network element configuration information in the input module 201, for example, to select a network performance evaluation model that matches the HQoS or QoS function supported by the network element from the HQoS network performance evaluation model and the QoS network performance evaluation model. The HQoS network performance evaluation model and the QoS network performance evaluation model are equivalent to Figure 1a In one example, the networking module 202 is used to convert the above-mentioned Figure 1a The sequence model is connected to form a full network model with the same topological structure as the network topology. The full network model can be used to evaluate the performance of the target network when the service flow is transmitted in the target network. Figure 3 And related embodiments are described in detail.
[0073] In one example, the traffic processing module 203 obtains a feature sequence at the data packet level, that is, in the form of a data packet. After the full network performance evaluation module 204 processes the feature sequence output by the traffic processing module 203, it can obtain packet-level performance such as the delay in transmitting one or more data packets, the number of packet losses, etc.
[0074] It should be understood that Figure 1a and Figure 1b The system shown is only one example of a network performance evaluation system, and the network performance evaluation system may have more or fewer components than shown in the figure, may combine two or more components, or may have a different component configuration. The various components shown in FIG. 1 may be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application specific integrated circuits.
[0075] Before describing the technical solution of the embodiment of the present application, the router of the embodiment of the present application is first described in conjunction with the accompanying drawings. Figure 2 is a structural block diagram of a router provided in an embodiment of the present application. Figure 2As shown, the router 200 includes a memory 201, a processor 202, an interface 203 (physical interface) and a power module 204. Among them, the interface 203 (physical interface) includes but is not limited to a local area network interface (LAN interface), a wide area network interface (WAN interface) and a router configuration interface. The router configuration interface may include a console port and an auxiliary port. The processor 202 is connected to the terminal through the interface 203. The number of the local area network interface, the wide area network interface and the router configuration interface is not limited to one. The types of the local area network interface (LAN interface) 3030 include standard network interfaces such as Ethernet, Fast Ethernet, Gigabit Ethernet, and 10 Gigabit Ethernet M. In each network, interfaces of different media standards can be supported, such as RJ45 interface, optical fiber interface, thick coaxial cable interface, etc. The router 200 can be connected to the terminal through the RJ45 interface to realize data communication with the terminal. The wide area network interface includes a synchronous serial interface and an asynchronous serial interface. The router 200 is connected to the wide area network through the WAN interface to realize a cross-regional wide area network data communication network. The console port is usually used to connect the interface to a terminal using a dedicated cable when performing basic configuration on the router 200. As a console port, it enables users or administrators to communicate with the router 200 using network access devices to complete the configuration of the router. As an auxiliary port, it also provides an EIA / TIA-232 asynchronous serial interface. The difference is that it is often used to connect a modem to achieve remote management of the router.
[0076] In some embodiments of the present application, the memory 201 may be a non-volatile memory, a random access memory, a flash memory, or a read-only memory.
[0077] The processor 202 may include one or more processing units, for example: the processor 202 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), a controller, a memory, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, and / or a neural-network processing unit (neural-network processing unit, NPU), etc. Among them, different processing units can be independent devices or integrated in one or more processors. The controller can be the nerve center and command center of the router 200. The controller can generate an operation control signal according to the instruction opcode and the timing signal to complete the control of fetching and executing instructions.
[0078] The power module 204 may include a power source, a power management component, etc. The power management component is used to manage the charging of the power source and the supply of power to other modules.
[0079] Optionally, for a wireless router, Figure 2 The router 200 shown also has a wireless communication module ( Figure 2 The wireless router can realize wireless communication among the smart phone, wireless speaker, portable computer and tablet computer as shown in FIG1. The wireless communication module can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) network), Bluetooth (BT), near field communication technology (NFC), infrared technology (IR) and the like applied on the terminal. The wireless communication module can be one or more devices integrating at least one communication processing module.
[0080] The wireless communication module can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the router 200. The wireless communication module can be one or more devices integrating at least one communication processing module.
[0081] It is understandable that the interface connection relationship between the modules illustrated in the embodiment of the present application is only a schematic illustration and does not constitute a structural limitation on the router 200. In other embodiments of the present application, the router 200 may also adopt different interface connection methods in the above embodiments, or a combination of multiple interface connection methods.
[0082] Combine the following Figures 3 to 7 The network performance evaluation method provided in the embodiment of the present application is described in detail.
[0083] Figure 3 FIG. 1 is a flow chart of a network performance evaluation method provided by an embodiment of the present application. Figure 3As shown, a network performance evaluation method provided in an embodiment of the present application may include the following steps:
[0084] S301, acquiring traffic information of a target network; wherein the traffic information is used to indicate a transmission property of the target network for transmitting each data packet of a service flow.
[0085] The target network is the transmission network of the service flow, that is, the network that needs to be evaluated for performance. The target network may include multiple network elements, such as routers, switches, etc. The flow information may include, for example, the data packet sequence representing the flow, i.e., the size of the data packet in the long sequence, the arrival interval of the data packet, i.e., the time interval for arriving at the network element in the target network, the flow user information such as the user ID, the flow category information such as the service type implemented by the flow (e.g., login, registration, search, etc.), etc.
[0086] In an optional implementation, the target network transmits each data packet through a network element;
[0087] Accordingly, obtaining the traffic information of the target network may include the following steps:
[0088] Collecting the transmission information of the transmission port of the network element for the transmission of the service flow;
[0089] Determine the current performance data corresponding to the service flow based on the transmission information;
[0090] When the current performance data does not meet the preset performance index, the flow information of the service flow received by the network element is collected within a preset period to obtain the flow information of the target network.
[0091] Exemplarily, the traffic performance measurement module of the router periodically issues traffic performance collection instructions. The traffic collection module of the router receives the collection instruction with performance measurement as the target, collects the transmission information of the transmission port of the network element for the transmission of the service flow: collects the information of the service flow arriving at the router and forwarding out of the router on the input side and output side of the router, and reports it to the control plane of the router. Among them, the service flow can be a user-specified flow, for example, it can be a data flow of live video. The traffic performance compliance module of the router analyzes and calculates the performance of different flows, including delay and packet loss, according to the measurement results reported by the traffic collection module, and compares them according to the target traffic requirements, that is, the preset performance indicators, such as the performance indicators recorded in the SLA. If the measurement results meet the requirements, they are fed back to the traffic performance measurement module to continue the detection; if the measured performance does not meet the target requirements, the traffic collection instruction is issued for performance optimization. Performance optimization is that the traffic collection module receives the collection instruction with performance tuning as the target, collects the traffic information of the future period, that is, the preset period (for example, 30s) on the input side of the router, such as the information of the traffic arriving at the router, and reports it to the control plane. In this way, the subsequent control plane can be tuned based on the received traffic information.
[0092] The embodiments of the present application collect transmission information of network element transmission service flows, and when the current performance data of the network element does not meet the preset performance indicators, continuously collect traffic information within a certain period of time, that is, within a preset period. This can be applied to online performance evaluation of network elements such as routers during the working process, and subsequent network element configuration optimization based on the results of the online performance evaluation, thereby timely optimizing network performance and expanding applicable scenarios.
[0093] In an optional embodiment, the target network includes a simulation platform or a data center network (DCN);
[0094] Obtaining traffic information of the target network may include the following steps:
[0095] Read the pre-configured traffic information for the target network.
[0096] For example, a user of the simulation platform or an administrator of a data center network can input traffic information of a target network. Traffic information is generated on a host. For each host, a user ID of the host can be specified. Each host can contain multiple flows. The flow presentation form is a packet-level flow time series, which can be generated in the form of a traffic model or a PCAP file.
[0097] The embodiments of the present application can be applied to network performance evaluation of a simulation platform or a data center network (DCN) by reading pre-configured traffic information of a target network.
[0098] S302, converting the traffic information into multiple short sequences; wherein each of the multiple short sequences includes characteristic data of multiple data packets; the length of each short sequence conforms to the length of the input sequence of the pre-trained sequence model, and the sequence model is a neural network model trained using sample target short sequences and performance data labels of the sample target short sequences.
[0099] For example, Figure 4a 1 is an example diagram of the process of performance evaluation of a long sequence of service flows provided in an embodiment of the present application. Figure 4a As shown, according to the input requirements of the short sequence model, the long sequence traffic is divided into shorter sequences. For example, the length of the input sequence of the pre-trained sequence model is n. The traffic information is m×n data packets in the form of a long sequence input. After segmentation, short sequence 1 includes data packets 1 to n, and short sequence 2 includes data packets n+1 to 2n. The data packets are arranged according to the time of arrival at the network element, and so on. The short sequence m includes the last data packet mn. The acquisition of feature data of multiple data packets in the above short sequence may include: extracting the size of the data packet in the traffic information, the arrival interval of the data packet, that is, the time interval to arrive at the network element in the target network, the flow user information such as user identification, flow category information and other information, and arranging them into tensors.
[0100] S303, for each short sequence, according to the traffic information, identify the first data packet corresponding to the short sequence in each data packet, and add the characteristic data of the first data packet to the short sequence to obtain the target short sequence; wherein the first data packet includes a data packet that is different from the second data packet and affects the transmission of the second data packet; the second data packet includes a data packet corresponding to the characteristic data in the short sequence.
[0101] For example, see Figure 4a , identifying the first data packet is dependent prediction. For each short sequence such as i1, i2…i n , all perform dependency prediction to obtain the first data packet corresponding to the short sequence, that is, the recorded data packet B. Then, the feature data of the first data packet is added to the short sequence to obtain the target short sequence, and the m target short sequences are input to the short sequence model, which is the sequence model obtained by the above pre-training.
[0102] In an optional embodiment, the traffic information includes the transmission time of each data packet by the network element in the target network;
[0103] Accordingly, relying on the prediction, that is, identifying the first data packet corresponding to the short sequence in each data packet according to the traffic information, may specifically include:
[0104] According to the transmission time, a data packet corresponding to the characteristic data in the first short sequence of the multiple short sequences, which leaves the network element after the data packet corresponding to the characteristic data in the second short sequence of the multiple short sequences arrives, is determined as the first data packet corresponding to the second short sequence; wherein the data packet corresponding to the characteristic data in the first short sequence arrives at the network element before the data packet corresponding to the characteristic data in the second short sequence;
[0105] Accordingly, adding the characteristic data of the first data packet to the short sequence to obtain the target short sequence may include the following steps:
[0106] The characteristic data of the first data packet is added to the header of the short sequence to obtain the target short sequence.
[0107] For example, if a long sequence is directly cut into several short sequences, and then the model predicts these short sequences separately, the accuracy of the final result must be very poor. The reason is that direct segmentation destroys the dependencies between the data packets in the original long sequence. Specifically, on the one hand, since this slicing cannot guarantee that the data packets in the previous sequence have completely left the router when predicting the subsequent sequence. These data packets remain in the buffer and affect the performance of the subsequent data packets. On the other hand, this fragment will cause high-priority data packets and low-priority data packets to be divided into different short sequences, then the priority constraint is broken. These dependencies between data packets can be described as the queuing order of the buffer. When a data packet leaves the router, the subsequent data packets will not depend on it. Therefore, the data packets that leave after the arrival time of the new sequence should be recorded. In an example, this embodiment can be a case where the performance results of the data packets corresponding to the previous sequence are known, and the state of the router buffer is obtained, that is, the first data packet is identified, which belongs to the display state recording mechanism. Among them, the buffer is used to record the first data packet.
[0108] In the embodiment of the present application, based on the transmission time of each data packet, the first data packet in the previous short sequence that affects the transmission of the corresponding data packet in the next short sequence can be determined, which is more convenient and efficient. The characteristic data in the short sequence are arranged in the order of the time of arrival at the network element, and accordingly, the characteristic data of the first data packet is added to the header of the short sequence, for example Figure 4a The characteristic data B of the first data packet is added in front of the characteristic data i1 to obtain a target short sequence, which can ensure the accuracy of the dependency relationship reflected by the first data packet.
[0109] In an optional embodiment, the transmission time includes the historical queuing time and arrival time of each data packet in the network element;
[0110] Accordingly, according to the transmission time, determining a data packet corresponding to characteristic data in a first short sequence of multiple short sequences, which leaves the network element after the data packet corresponding to characteristic data in a second short sequence of multiple short sequences arrives, as a first data packet corresponding to the second short sequence, may include the following steps:
[0111] Determine a data packet whose arrival time in the data packet corresponding to the characteristic data of the first short sequence is within the preset time window as the first data packet corresponding to the second short sequence;
[0112] The preset time window includes a time period determined based on the historical queuing time; or, the preset time window includes a time period determined based on the transmission priority of the data packet corresponding to the characteristic data of the first short sequence and the historical queuing time.
[0113] Exemplarily, the display state recording mechanism means that directly using the display state prediction will cause the model to only be able to predict serially, which will result in a large time overhead for the model to fully predict long sequences. Parallel prediction of different short sequences is the basis for data-driven model accelerated simulation. It is hoped that the advantages of parallel acceleration and state recording accuracy can be combined. Therefore, a mechanism that relies on prediction is adopted in this embodiment.
[0114] Dependency prediction means predicting the dependent packets that will affect the packets of the sequence before all sequence performance predictions, and these packets should be in the router buffer when the sequence arrives. The key to dependency prediction is to keep which packets in the buffer. Since there is no departure time of the previous packet, it cannot be accurately calculated. Considering that if a packet affects the arrival of subsequent packets, then this data packet must still be in the buffer when the subsequent data packet arrives. Therefore, the historical queuing time can be used to assist dependency prediction. Specifically, it is to keep the preset time window before the arrival of each short sequence corresponding to the data packet, such as the data packet in the Window, in the buffer. The size of the Window is the time period, that is, the duration. Then, for any short sequence, the data packet at the head of the short sequence is the first data packet arriving outside the Window. The arrival time of the first data packet minus the size of the Window, that is, the window time, can be used as the reference time for determining the first data packet. The data packet leaving the reference time later than the reference time and in the Window is determined as the first data packet. In other words, the data packet whose arrival time is in the time window from the reference time is the first data packet. The size of the window is determined by the historical queuing time, such as the average value of the historical queuing time, the tail delay, etc. Considering that the historical queuing times are different for flows with different priorities and weights, different windows can also be set according to the priority or weight of the data packet.
[0115] In the embodiment of the present application, dependency prediction is achieved by presetting a time window: dependent packets that will affect the packets in the sequence are predicted in advance, thereby avoiding the problem of high time overhead of the model in fully predicting a long sequence caused by serial prediction, and improving efficiency. In other words, the first data packet of multiple short sequences can be quickly identified, and the scenario where the departure time of the data packet cannot be accurately determined can be quickly identified by setting the time window through the historical queuing time.
[0116] In an optional implementation, adding the characteristic data of the first data packet to the header of the short sequence may include the following steps:
[0117] The arrival time of the first data packet is updated to the arrival time of the short sequence; wherein each feature data in the short sequence is arranged in chronological order according to the arrival time of the data packet corresponding to the feature data.
[0118] Exemplarily, after the data packets in the window are determined, the status of the data packets in the window may be updated, and their arrival times may be updated to the arrival times of the new sequence, ie, the second short sequence.
[0119] In the embodiment of the present application, the arrival time of the first data packet is adjusted to merge the characteristic data of the first data packet and the corresponding short sequence, thereby taking into account both merging to obtain a target short sequence and eliminating dependence on data packets that have left the router, thereby further improving accuracy.
[0120] After obtaining m target short sequences through dependency prediction, the m target short sequences can be input into the short sequence model, i.e., the sequence model obtained by pre-training. For example, Figure 4b is a diagram showing an example of the structure of a sequence model provided in an embodiment of the present application. Figure 4b As shown, the sequence model can be a Transformer model: first, the traffic features, that is, the feature data such as (packet arrival time, packet priority, data packet size) sequence is encoded packet by packet, that is, encoded into a vector, and then the dependency between the sequences is identified through the attention mechanism, and finally the performance data (delay, packet loss) is identified packet by packet through the decoder.
[0121] It can be understood that the above-mentioned feature data is in the form of a token in the sequence model, that is, the smallest data unit that can be recognized by the sequence model, and the start token and the end token are used to indicate the start position and the end position of the performance recognition of the sequence respectively.
[0122] The embodiment of the present application is equivalent to providing a long-sequence packet-level performance prediction model, in which the long-sequence traffic will be divided into several short-sequence models, and the dependency prediction mechanism records the impact of the previous sequence on the subsequent sequence as a buffer state, so that the short-sequence model can predict these short sequences in parallel while accurately learning the dependency between the previous and subsequent sequences.
[0123] S304, based on the sequence model, processing all the obtained target short sequences to obtain performance data of the target network.
[0124] In an optional implementation, the performance data of the target network includes a forwarding time of a data packet by a network element of the target network;
[0125] Accordingly, based on the sequence model, all the obtained target short sequences are processed to obtain the performance data of the target network, which may include the following steps:
[0126] Based on the sequence model, all the obtained target short sequences are processed respectively to obtain the predicted transmission delay of the data packet corresponding to each target short sequence in all the target short sequences transmitted by the target network;
[0127] In the case where the first data packet leaves the network element, if the first data packet is lost or leaves before the short sequence arrives at the network element, the predicted transmission delay of the first target short sequence is subtracted from the unit throughput time of the network element; wherein the first target short sequence includes a target short sequence of a corresponding data packet arriving at the network element after a data packet corresponding to the target short sequence including the first data packet; the unit throughput time of the network element includes the throughput time of the network element for a single data packet;
[0128] In the case where the third data packet leaves the network element, if the third data packet leaves the network element after the short sequence arrives at the network element, the predicted transmission delay of the second target short sequence is increased by the unit throughput time; wherein the third data packet includes the data packet that arrives at the network element before the first data packet; the second target short sequence includes the target short sequence whose corresponding data packet arrives at the network element after the corresponding data packet of the target short sequence containing the third data packet.
[0129] Still see Figure 4a, the error of the dependent prediction will cause errors in the final sequence prediction. The embodiment of the present application can improve the overall prediction accuracy through a simple and fast correction mechanism. It is challenging to quickly achieve accurate error correction. On the one hand, even if the source of the error is determined, it is still impossible to accurately calculate the impact of these error sources on all subsequent packets under the influence of the complex configuration of the router through a heuristic algorithm. On the other hand, the impact of the error may be very far-reaching. For each existing error, the time cost of accurate error correction is large. The source of the error. First, it is the deviation of the dependent packet prediction. A large or small window will cause errors. When the window is small, there are data packets outside the window that are not taken into account in the buffer, which leads to a small prediction of the length of the buffer, so the delay of the subsequent sequence prediction may be too small. When the window is large, there are data packets within the window that are mistakenly placed in the buffer. In fact, when the subsequent sequence arrives, it has left. This leads to a large prediction of the length of the buffer, so the delay of the subsequent sequence prediction may be too large. In addition to considering the deviation of the prediction in time, the prediction deviation of packet loss will also lead to the final prediction deviation.
[0130] Based on the above error analysis and the results of sequence prediction, the error correction mechanism is Figure 4a The error correction in is as follows: for the data packets within the prediction window window, if they are lost or leave earlier than the arrival time of the subsequent sequence, then the delay of all packets in the subsequent sequence is reduced by a throughput time; for the packets before the prediction window window, if there are data packets whose departure time is later than the arrival time of the subsequent sequence, then the delay of all packets in the subsequent sequence is increased by a throughput time, thus obtaining a cumulative time that needs to be increased or decreased. After error correction, multiple data packets in the form of a long sequence can be output. In this way, the embodiment of the present application realizes error judgment based on the loss and departure timing of the first data packet and the departure timing of the third data packet, and when it is determined that there is an error, the accuracy of the network performance data can be improved by correcting the error per unit throughput time, thereby further improving the accuracy of the network performance evaluation.
[0131] In the embodiment of the present application, a target short sequence that retains the characteristic data that can indicate long-range dependency is obtained by identifying the first data packet in each data packet that affects the transmission of data packets corresponding to each of the multiple short sequences, and adding the characteristic data corresponding to each of the first data packets to the corresponding short sequence. In this way, it is ensured that the sequence model can identify the long-range dependency when processing the target short sequence to obtain a more comprehensive target network transmission situation, thereby more accurately evaluating the performance of the target network and improving the accuracy of network performance evaluation.
[0132] In an optional implementation, the service flow originates from multiple users;
[0133] Accordingly, based on the sequence model, all the obtained target short sequences are processed to obtain the performance data of the target network, which may include the following steps:
[0134] Obtain configuration information of network elements in the target network;
[0135] When the configuration information indicates that the network element supports quality of service (QoS), all target short sequences are processed based on the sequence model obtained by pre-training to obtain performance data of the target network;
[0136] When the configuration information indicates that the network element supports hierarchical quality of service (HQoS), the flow information of each user among multiple users is determined according to the configuration information and the flow information of each data packet in each data packet; for each user, based on the pre-trained sequence model, the target short sequence corresponding to the user's flow information is processed to obtain the performance data of the target network corresponding to the user.
[0137] For example, when the configuration information indicates that the network element supports quality of service (QoS), the above Figure 4a The performance evaluation was carried out in the manner described in the embodiment.
[0138] For example, when the configuration information indicates that the network element supports hierarchical quality of service (HQoS), due to multiple users, there are too many configuration parameters to be evaluated directly using the sequence model. Therefore, equivalent bandwidth is allocated to the traffic of different users. Figure 5 Schematic diagram of the process of network performance evaluation in a hierarchical quality of service (HQoS) scenario provided in an embodiment of the present application. Figure 5 As shown, input packet-level traffic sequence and HQoS configuration information. The packet-level traffic sequence is a service flow in the form of a sequence of multiple data packets. Traffic splitting is to divide the traffic into traffic of different users according to the IP address of the traffic. The IP address of the traffic is the IP address carried by the data packet in the packet-level traffic sequence, for example, it can be the IP address of the terminal that sends the access request. For example, the traffic sequence of user i can be Pkts i. Equivalent bandwidth allocation: Calculate the equivalent bandwidth of each user according to the HQoS scheduling model and the traffic sequence. For example, the equivalent bandwidth of user i can be Bw i. The HQoS scheduling model is also the HQoS configuration information, which is used to indicate the bandwidth weight of each user and the priority of each data packet. Single-user multi-queue performance prediction: The actual bandwidth of the user calculated by the equivalent bandwidth allocation algorithm and the traffic of the user are used as input to evaluate the performance data corresponding to a single user, such as the forwarding time of the traffic.
[0139] The embodiment of the present application can support performance evaluation of different service quality scenarios through the configuration information of the network element, which has a wider application scope and is more convenient.
[0140] In one example, Figure 6 FIG. 1 is a schematic diagram of the processing process of the equivalent bandwidth allocation algorithm provided in the embodiment of the present application. Figure 6 As shown, the flow information of each data packet includes the throughput time of the network element for the data packet; the configuration information includes the preset total egress bandwidth and the priority of each data packet;
[0141] Accordingly, determining the flow information of each user among the multiple users according to the configuration information and the flow information of each data packet in each data packet, that is, the equivalent bandwidth allocation algorithm may include the following steps:
[0142] S601, for each data packet, the number of data packets of the same level within the throughput time of the data packet is counted; wherein the data packets of the same level include data packets of other users different from the user of the data packet, which have the same priority as the data packet;
[0143] For example, for each data packet Pi of user i, the number Ui of data packets Pk of other users, such as user k, arriving at the network element is counted within the throughput time of statistical data packet Pi, and the priority of data packet Pk is the same as that of data packet Pi. The priority of data packet is used to indicate the order in which the network element forwards data packets.
[0144] S602, determining the equivalent bandwidth of each data packet of each user according to the number of each data packet of each user and the preset total egress bandwidth;
[0145] For example, the total egress bandwidth preset in the configuration information is BW, then the equivalent bandwidth of data packet i of user i is BWpi=BW÷Ui.
[0146] S603, determining the equivalent bandwidth of each user based on the equivalent bandwidth of all data packets of each user, and determining the flow information of data packets with a size equal to the equivalent bandwidth of the user among all data packets of the user as the flow information of the user.
[0147] For example, for each user, the equivalent bandwidth of the user is the average value Avg(BWpi) of the equivalent bandwidth of the user's data packets, i.e., traffic packets. In one example, the configuration information may also include a bandwidth weight for each user. When multiple users compete for the export bandwidth at the same time, the export bandwidth may be allocated according to the scheduling weight, i.e., the bandwidth weight. The rest of the time, when one user uses the export bandwidth, if there is no competition among multiple users, the one user may reuse the entire group of bandwidth.
[0148] In the embodiment of the present application, by calculating the bandwidth actually obtained by each queue of the user under the scheduling model, the scale of data processed by the network element model can be reduced, thereby improving the speed of performance evaluation.
[0149] In an optional implementation, the performance data of the target network includes current performance data and candidate performance data;
[0150] Accordingly, based on the sequence model, all the obtained target short sequences are processed to obtain the performance data of the target network, which may include the following steps:
[0151] Acquire current quality of service (QoS) configuration information of the network element and candidate quality of service (QoS) configuration information pre-stored based on preset performance indicators;
[0152] Based on the sequence model and the current quality of service (QoS) configuration information, all the target short sequences are processed to obtain the current performance data;
[0153] Based on the sequence model and candidate quality of service (QoS) configuration information, all the obtained target short sequences are processed to obtain candidate performance data;
[0154] After all the target short sequences are processed based on the sequence model to obtain the performance data of the target network, the method further includes:
[0155] When the current performance data does not meet the preset performance index and the candidate performance data meets the preset performance index, updating the configuration information of the network element according to the candidate quality of service (QoS) configuration information;
[0156] When neither the current performance data nor the candidate performance data meets the preset performance indicators, the current quality of service (QoS) configuration information is adjusted to updated quality of service (QoS) configuration information that meets the preset performance indicators based on the current performance data, and the configuration information of the network element is updated based on the updated quality of service (QoS) configuration information.
[0157] For example, Figure 7 FIG. 1 is one of the processing example diagrams of a network performance evaluation method provided in an embodiment of the present application. Figure 7 As shown, the method can be applied to a router or a router online tuning system, which mainly includes 6 modules in the control plane and the data plane: a flow performance measurement module, a flow collection module, a flow performance compliance determination module, a flow feature extraction module, a flow performance tuning module and a router QoS configuration modification module. Among them, the flow performance tuning module is specifically composed of three components: a performance evaluation model, a QoS configuration searcher, and a flow performance compliance determination module. The processing process may include the following steps 1 to step 6.3:
[0158] Step 1: Issue performance measurement instructions: The flow performance measurement module periodically issues performance measurement instructions (i.e., flow performance collection instructions);
[0159] Step 2: Reporting of measurement results: The traffic collection module receives the performance collection instruction, collects the information of the specified flow arriving at the router and forwarding out of the router on the input and output sides of the router, and reports it to the control plane;
[0160] Step 3: Determine whether the traffic performance meets the standard: The traffic performance compliance module analyzes and calculates the performance of different flows, including delay and packet loss, based on the measurement results reported by the traffic collection module, and compares them according to the target traffic requirements. If the measurement results meet the requirements, execute step 3.1; if the measurement results do not meet the requirements, execute step 3.2;
[0161] Step 3.1: Performance meets the target, and continue to measure: The measured performance meets the target requirements, and feedback is given to the flow performance measurement module to continue testing;
[0162] Step 3.2: If the performance does not meet the target, a flow collection instruction is issued: If the measured performance does not meet the target requirements, a flow collection instruction is issued for performance optimization;
[0163] Step 4: Report traffic collection results: The traffic collection module receives a collection instruction for performance optimization, collects traffic arrival information for a period of time (for example, 30 seconds) in the future on the router input side, and reports it to the control plane;
[0164] Step 5, extracting traffic feature sequence: The traffic feature extraction module extracts the traffic feature information required by the performance evaluation model based on the traffic arrival information reported by the traffic collection module, including packet size, packet arrival interval, flow user information, flow category information, etc., and organizes it into tensor information and passes it to the traffic performance tuning module;
[0165] Step 6: The traffic performance tuning module searches for a QoS configuration that meets the traffic performance requirements for the current traffic. The tuning process includes the following four steps:
[0166] Step 6.1. Output the traffic performance under the current configuration: The performance evaluation model uses the extracted traffic information and the current or searcher output QoS configuration (QoS parameters, such as scheduling priority and weight, or corresponding queue buffer size, CIR, CIR, etc.) as input to predict the forwarding performance of the current traffic. The implementation of the performance evaluation model is based on the performance evaluation model in the first reference embodiment according to the QoS type supported by the router; wherein, CIR (committed information rate): the rate that can be passed per second, measured in Kbps (in bits). CIR (peak information rate): the maximum rate allowed for transmission or forwarding of messages; the unit is bit;
[0167] Step 6.2: The traffic performance compliance determination component compares the model prediction result with the target performance requirement. If the requirement is met, then execute step 6.2.2. If the requirement is not met, then execute step 6.2.1.
[0168] Step 6.2.1: If the performance does not meet the requirements, continue searching: If the QoS configuration found does not meet the performance requirements, input the historical QoS configuration and the corresponding performance into the searcher to continue searching. Then execute step 6.3;
[0169] Step 6.2.2: Performance meets the standard, and new QoS configuration modification instructions are issued: For the configuration that meets the traffic performance requirements, the data plane is issued and step 6 is ended; that is, the QoS configuration is modified;
[0170] Step 6.3: Input the searched new QoS configuration to the performance evaluation module: The QoS configuration searcher adjusts the QoS configuration of the router according to the performance results predicted by the model. There are many ways to implement the QoS configuration searcher, such as feedback adjustment based on the greedy algorithm, that is, to adjust the corresponding QoS parameters of the flow that does not meet the requirements, such as scheduling priority and weight, or corresponding queue buffer size, CIR, PIR, etc.
[0171] Among them, the greedy algorithm, also known as the greedy method, is a method for finding the optimal solution to the problem. This method generally divides the solution process into several steps, but each step applies the greedy principle, selects the best / optimal option (the most favorable option locally) under the current state, and hopes that the final stacked result is also the best / optimal solution.
[0172] The embodiments of the present application can implement online tuning of network elements such as routers and switches based on performance evaluation results and pre-configured quality of service (QoS) configuration information: update the configuration information of the network elements to meet preset performance indicators such as the performance indicators recorded in the SLA, timely optimize network performance, and improve user experience.
[0173] In an optional example, the sequence model is used to determine performance data of a network element in a target network; the target network includes a plurality of network elements;
[0174] Accordingly, the above-mentioned processing of all target short sequences obtained based on the sequence model to obtain the performance data of the target network may include the following steps:
[0175] Acquire a network topology of a target network; wherein the network topology is at least used to indicate a connection relationship between multiple network elements in the target network;
[0176] Assigning a sequence model to each of the multiple network elements, and connecting the assigned sequence models according to the network topology to obtain a full network model; wherein the full network model includes multiple levels divided according to the network topology, and each level includes at least one sequence model;
[0177] According to multiple levels and the whole network model, all target short sequences are processed layer by layer to obtain the performance data of the target network.
[0178] Exemplarily, the network topology may include the number of nodes in the network, such as network elements, the type of nodes, and the connection relationship between the nodes. The types of nodes may include routers and hosts. For routers with multiple ports, the user may input the interconnection relationship between the ports specified according to the routing information. Devices, i.e., single network elements, are cascaded with each other, and the sequence models corresponding to multiple network elements, i.e., the whole network model, may be evaluated in a certain order, such as hierarchical iteration. For example, according to the network topology, the devices may be divided into an edge layer, an aggregation layer, and a core layer. For upstream traffic, the inference is performed layer by layer in the order of edge->aggregation->core, wherein the sequence models corresponding to the network elements of the same layer are inferred in parallel, i.e., the performance evaluation is performed, and the evaluation result is input into the sequence model corresponding to the network element of the next layer, and the iteration is performed by analogy, and finally the performance data corresponding to the downstream traffic of all upstream traffic and the core router can be determined, that is, the performance data when the target network transmits the upstream traffic. For downstream traffic, the evaluation is performed in the order of core->aggregation->edge, and the iteration is performed by analogy, and finally the performance data corresponding to all downstream traffic can be determined, that is, the performance data when the target network transmits the downstream traffic. In this embodiment, the complexity of the performance evaluation depends on the maximum number of iterations, that is, the number of network elements included in the longest transmission path of the traffic in the target network.
[0179] In the embodiment of the present application, a whole network model is constructed through network topology, and then the performance data of the entire target network is evaluated in a more accurate and comprehensive manner according to the layer-by-layer iteration of the network element levels in the network topology.
[0180] It can be understood that uplink traffic refers to traffic sent to the target network by a user through a client such as a terminal that accesses the target network, for example, a video uploaded by a user to the target network. Downlink traffic refers to traffic requested from the target network by a user through a client that accesses the target network, for example, a video downloaded by a user from the target network.
[0181] In addition, this application Figure 1a and Figure 1b The network performance evaluation system shown, and Figure 2 In order to implement the functions of the network performance evaluation method in the above-mentioned embodiment of the present application, the router shown includes hardware and / or software modules corresponding to the execution of each function. In combination with the algorithm steps of each example described in the embodiment disclosed herein, the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is executed in the form of hardware or computer software driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application in combination with the embodiments, but such implementation should not be considered to be beyond the scope of the present application.
[0182] This embodiment also provides a computer storage medium, in which computer instructions are stored. When the computer instructions are executed on an electronic device, the electronic device executes the above-mentioned related method steps to implement the network performance evaluation method in the above-mentioned embodiment.
[0183] This embodiment also provides a computer program product. When the computer program product runs on a computer, it enables the computer to execute the above-mentioned related steps to implement the network performance evaluation method in the above-mentioned embodiment.
[0184] Among them, the electronic device, computer storage medium, computer program product or chip provided in this embodiment is used to execute the corresponding method provided above. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects in the corresponding method provided above and will not be repeated here.
[0185] Any content of each embodiment of the present application, as well as any content of the same embodiment, can be freely combined. Any combination of the above content is within the scope of the present application.
[0186] Those skilled in the art should be aware that in one or more of the above examples, the functions described in the embodiments of the present application can be implemented with hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium. Computer-readable media include computer storage media and communication media, wherein the communication media include any media that facilitates the transmission of a computer program from one place to another. The storage medium can be any available medium that a general or special-purpose computer can access.
[0187] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.
Claims
1. A network performance evaluation method, characterized in that: The method comprises: Acquire traffic information of the target network; wherein the traffic information is used to indicate the transmission properties of the target network for transmitting each data packet of the service flow; Convert the traffic information into a plurality of short sequences; wherein each of the plurality of short sequences includes characteristic data of a plurality of the data packets; and the length of each short sequence conforms to the length of the input sequence of the sequence model obtained by pre-training; For each of the short sequences, according to the traffic information, a first data packet corresponding to the short sequence in each data packet is identified, and characteristic data of the first data packet is added to the short sequence to obtain a target short sequence; wherein the first data packet includes a data packet that is different from the second data packet and affects the transmission of the second data packet; and the second data packet includes a data packet corresponding to the characteristic data in the short sequence; Based on the sequence model, all target short sequences are processed to obtain performance data of the target network; wherein the sequence model is a neural network model trained using sample target short sequences and performance data labels of the sample target short sequences.
2. The method according to claim 1, characterized in that The flow information includes the transmission time of each data packet by the network element in the target network; The step of identifying, according to the traffic information, a first data packet corresponding to the short sequence in each data packet comprises: According to the transmission time, a data packet corresponding to the characteristic data in the first short sequence of the multiple short sequences, which leaves the network element after the data packet corresponding to the characteristic data in the second short sequence of the multiple short sequences arrives, is determined as a first data packet corresponding to the second short sequence; wherein the data packet corresponding to the characteristic data in the first short sequence arrives at the network element before the data packet corresponding to the characteristic data in the second short sequence; The step of adding the characteristic data of the first data packet to the short sequence to obtain a target short sequence includes: The characteristic data of the first data packet is added to the header of the short sequence to obtain a target short sequence.
3. The method according to claim 2, characterized in that The transmission time includes the historical queuing time and arrival time of each data packet in the network element; The step of determining, according to the transmission time, a data packet corresponding to characteristic data in a first short sequence of the multiple short sequences and leaving the network element after the data packet corresponding to characteristic data in a second short sequence of the multiple short sequences arrives as a first data packet corresponding to the second short sequence, comprising: Determine a data packet whose arrival time in the data packet corresponding to the characteristic data of the first short sequence is within the preset time window as the first data packet corresponding to the second short sequence; The preset time window includes a time period determined based on the historical queuing time; or, the preset time window includes a time period determined based on the transmission priority of the data packet corresponding to the characteristic data of the first short sequence and the historical queuing time.
4. The method according to claim 2 or 3, characterized in that: The step of adding the characteristic data of the first data packet to the header of the short sequence comprises: The arrival time of the first data packet is updated to the arrival time of the short sequence; wherein each feature data in the short sequence is arranged in chronological order according to the arrival time of the data packet corresponding to the feature data.
5. The method according to any one of claims 1 to 4, characterized in that The performance data of the target network includes the forwarding time of the data packet by the network element of the target network; The step of processing all target short sequences obtained based on the sequence model to obtain performance data of the target network includes: Based on the sequence model obtained by pre-training, all the obtained target short sequences are processed respectively to obtain the predicted transmission delay of the target network transmitting the data packet corresponding to each target short sequence in all the target short sequences; In the case where the first data packet leaves the network element, if the first data packet is lost or leaves before the short sequence arrives at the network element, the predicted transmission delay of the first target short sequence is subtracted from the unit throughput duration of the network element; wherein the first target short sequence includes a target short sequence of a corresponding data packet arriving at the network element after a data packet corresponding to the target short sequence including the first data packet; the unit throughput duration of the network element includes the throughput duration of the network element for a single data packet; In the case where the third data packet leaves the network element, if the third data packet leaves after the short sequence arrives at the network element, the predicted transmission delay of the second target short sequence is increased by the unit throughput time; wherein the third data packet includes a data packet that arrives at the network element before the first data packet; and the second target short sequence includes a target short sequence whose corresponding data packet arrives at the network element after the corresponding data packet of the target short sequence containing the third data packet.
6. The method according to any one of claims 1 to 5, characterized in that The business flow originates from multiple users; The process of processing all target short sequences obtained based on the sequence model to obtain performance data of the target network includes: Obtaining configuration information of network elements in the target network; When the configuration information indicates that the network element supports quality of service (QoS), based on a pre-trained sequence model, all obtained target short sequences are processed to obtain performance data of the target network; When the configuration information indicates that the network element supports hierarchical quality of service (HQoS), the flow information of each user among the multiple users is determined according to the configuration information and the flow information of each data packet in the data packets; for each user, based on a pre-trained sequence model, a target short sequence corresponding to the flow information of the user is processed to obtain performance data of the target network corresponding to the user.
7. The method according to claim 6, characterized in that The flow information of each data packet includes the throughput time of the network element for the data packet; the configuration information includes each preset total egress bandwidth and the priority of each data packet; The determining, according to the configuration information and the flow information of each data packet in each data packet, the flow information of each user among the multiple users comprises: For each data packet, the number of data packets of the same level within the throughput time of the data packet is counted; wherein the data packets of the same level include data packets of other users different from the user of the data packet, which have the same priority as the data packet; Determine the equivalent bandwidth of each data packet of each user according to the number of each data packet of each user and the preset total egress bandwidth; The equivalent bandwidth of each user is determined based on the equivalent bandwidth of all data packets of each user, and the flow information of data packets with a size equal to the equivalent bandwidth of the user among all data packets of the user is determined as the flow information of the user.
8. The method according to any one of claims 1 to 7, characterized in that The target network transmits each of the data packets through a network element; The obtaining of traffic information of the target network includes: Collecting transmission information of the transmission port of the network element for transmitting the service flow; Determining current performance data corresponding to the service flow according to the transmission information; In the case that the current performance data does not meet the preset performance index, the flow information of the service flow received by the network element is collected within a preset period to obtain the flow information of the target network.
9. The method according to claim 8, characterized in that The performance data of the target network includes current performance data and candidate performance data; The step of processing all target short sequences obtained based on the sequence model to obtain performance data of the target network includes: Acquire current quality of service (QoS) configuration information of the network element and candidate quality of service (QoS) configuration information pre-stored based on the preset performance indicator; Based on the sequence model and the current quality of service (QoS) configuration information, all the obtained target short sequences are processed to obtain the current performance data; Based on the sequence model and the candidate quality of service (QoS) configuration information, all the obtained target short sequences are processed to obtain the candidate performance data; After all the target short sequences are processed based on the sequence model to obtain the performance data of the target network, the method further includes: When the current performance data does not meet the preset performance indicator and the candidate performance data meets the preset performance indicator, updating the configuration information of the network element according to the candidate quality of service (QoS) configuration information; When neither the current performance data nor the candidate performance data meets the preset performance indicator, the current quality of service (QoS) configuration information is adjusted to updated quality of service (QoS) configuration information that meets the preset performance indicator based on the current performance data, and the configuration information of the network element is updated based on the updated quality of service (QoS) configuration information.
10. The method according to any one of claims 1 to 7, characterized in that The target network includes a simulation platform or a data center network (DCN); The obtaining of traffic information of the target network includes: Read the pre-configured traffic information of the target network.
11. The method according to claim 10, characterized in that The sequence model is used to determine performance data of a network element in the target network; the target network includes a plurality of network elements; The step of processing all target short sequences obtained based on the sequence model to obtain performance data of the target network includes: Acquire a network topology of the target network; wherein the network topology is at least used to indicate a connection relationship between the multiple network elements in the target network; Allocate one of the sequence models to each of the multiple network elements, and connect the allocated sequence models according to the network topology to obtain a full network model; wherein the full network model includes multiple levels divided according to the network topology, and each level includes at least one sequence model; According to the multiple levels and the whole network model, all target short sequences are processed layer by layer to obtain performance data of the target network.
12. A network performance evaluation device, characterized in that: The device comprises: A flow information acquisition module, used to acquire flow information of a target network; wherein the flow information is used to indicate the transmission properties of the target network for transmitting each data packet of a service flow; A feature extraction module, used to convert the traffic information into a plurality of short sequences; wherein each of the plurality of short sequences includes feature data of a plurality of the data packets; and the length of each short sequence conforms to the length of the input sequence of the sequence model obtained by pre-training; a feature preprocessing module, for identifying, for each short sequence, a first data packet corresponding to the short sequence in each data packet according to the traffic information, and adding feature data of the first data packet to the short sequence to obtain a target short sequence; wherein the first data packet includes a data packet that is different from the second data packet and affects the transmission of the second data packet; and the second data packet includes a data packet corresponding to the feature data in the short sequence; A performance evaluation module is used to process all the target short sequences obtained based on the sequence model to obtain the performance data of the target network; wherein the sequence model is a neural network model trained using sample target short sequences and performance data labels of the sample target short sequences.
13. The device according to claim 12, characterized in that The flow information includes the transmission time of each data packet by the network element in the target network; The feature preprocessing module is specifically used for: According to the transmission time, a data packet corresponding to the characteristic data in the first short sequence of the multiple short sequences, which leaves the network element after the data packet corresponding to the characteristic data in the second short sequence of the multiple short sequences arrives, is determined as a first data packet corresponding to the second short sequence; wherein the data packet corresponding to the characteristic data in the first short sequence arrives at the network element before the data packet corresponding to the characteristic data in the second short sequence; The characteristic data of the first data packet is added to the header of the short sequence to obtain a target short sequence.
14. The device according to claim 13, characterized in that The transmission time includes the historical queuing time and arrival time of each data packet in the network element; The feature preprocessing module is specifically used for: Determine a data packet whose arrival time in the data packet corresponding to the characteristic data of the first short sequence is within the preset time window as the first data packet corresponding to the second short sequence; The preset time window includes a time period determined based on the historical queuing time; or, the preset time window includes a time period determined based on the transmission priority of the data packet corresponding to the characteristic data of the first short sequence and the historical queuing time.
15. The device according to claim 13 or 14, characterized in that The feature preprocessing module is specifically used for: The arrival time of the first data packet is updated to the arrival time of the short sequence; wherein each feature data in the short sequence is arranged in chronological order according to the arrival time of the data packet corresponding to the feature data.
16. The device according to any one of claims 12 to 15, characterized in that The performance data of the target network includes the forwarding time of the data packet by the network element of the target network; The performance evaluation module is specifically used for: Based on the sequence model obtained by pre-training, all the obtained target short sequences are processed respectively to obtain the predicted transmission delay of the target network transmitting the data packet corresponding to each target short sequence in all the target short sequences; In the case where the first data packet leaves the network element, if the first data packet is lost or leaves before the short sequence arrives at the network element, the predicted transmission delay of the first target short sequence is subtracted from the unit throughput duration of the network element; wherein the first target short sequence includes a target short sequence of a corresponding data packet arriving at the network element after a data packet corresponding to the target short sequence including the first data packet; the unit throughput duration of the network element includes the throughput duration of the network element for a single data packet; In the case where the third data packet leaves the network element, if the third data packet leaves after the short sequence arrives at the network element, the predicted transmission delay of the second target short sequence is increased by the unit throughput time; wherein the third data packet includes a data packet that arrives at the network element before the first data packet; and the second target short sequence includes a target short sequence whose corresponding data packet arrives at the network element after the corresponding data packet of the target short sequence containing the third data packet.
17. The device according to any one of claims 12 to 16, characterized in that The business flow originates from multiple users; The performance evaluation module is specifically used for: Obtaining configuration information of network elements in the target network; When the configuration information indicates that the network element supports quality of service (QoS), based on a pre-trained sequence model, all obtained target short sequences are processed to obtain performance data of the target network; In a case where the configuration information indicates that the network element supports hierarchical quality of service (HQoS), determining flow information of each user among the multiple users according to the configuration information and flow information of each data packet in the data packets; For each user, based on a pre-trained sequence model, a target short sequence corresponding to the traffic information of the user is processed to obtain performance data of the target network corresponding to the user.
18. The device according to claim 17, characterized in that The flow information of each data packet includes the throughput time of the network element for the data packet; the configuration information includes each preset total egress bandwidth and the priority of each data packet; The performance evaluation module is specifically used for: For each data packet, the number of data packets of the same level within the throughput time of the data packet is counted; wherein the data packets of the same level include data packets of other users different from the user of the data packet, which have the same priority as the data packet; Determine the equivalent bandwidth of each data packet of each user according to the number of each data packet of each user and the preset total egress bandwidth; The equivalent bandwidth of each user is determined based on the equivalent bandwidth of all data packets of each user, and the flow information of data packets with a size equal to the equivalent bandwidth of the user among all data packets of the user is determined as the flow information of the user.
19. The device according to any one of claims 12 to 18, characterized in that The target network transmits each of the data packets through a network element; The flow information acquisition module is specifically used for: Collecting transmission information of the transmission port of the network element for transmitting the service flow; Determining current performance data corresponding to the service flow according to the transmission information; In the case that the current performance data does not meet the preset performance index, the flow information of the service flow received by the network element is collected within a preset period to obtain the flow information of the target network.
20. The device according to claim 19, characterized in that The performance data of the target network includes current performance data and candidate performance data; The performance evaluation module is specifically used for: Acquire current quality of service (QoS) configuration information of the network element and candidate quality of service (QoS) configuration information pre-stored based on the preset performance indicator; Based on the sequence model and the current quality of service (QoS) configuration information, all the obtained target short sequences are processed to obtain the current performance data; Based on the sequence model and the candidate quality of service (QoS) configuration information, all the obtained target short sequences are processed to obtain the candidate performance data; The device also includes an error correction module, configured to: When the current performance data does not meet the preset performance indicator and the candidate performance data meets the preset performance indicator, updating the configuration information of the network element according to the candidate quality of service (QoS) configuration information; When neither the current performance data nor the candidate performance data meets the preset performance indicator, the current quality of service (QoS) configuration information is adjusted to updated quality of service (QoS) configuration information that meets the preset performance indicator based on the current performance data, and the configuration information of the network element is updated based on the updated quality of service (QoS) configuration information.
21. The device according to any one of claims 12 to 18, characterized in that The target network includes a simulation platform or a data center network (DCN); The flow information acquisition module is specifically used for: Read the pre-configured traffic information of the target network.
22. The device according to claim 21, characterized in that The sequence model is used to determine performance data of a network element in the target network; the target network includes a plurality of network elements; The performance evaluation module is specifically used for: Acquire a network topology of the target network; wherein the network topology is at least used to indicate a connection relationship between the multiple network elements in the target network; Allocate one of the sequence models to each of the multiple network elements, and connect the allocated sequence models according to the network topology to obtain a full network model; wherein the full network model includes multiple levels divided according to the network topology, and each level includes at least one sequence model; According to the multiple levels and the whole network model, all target short sequences are processed layer by layer to obtain performance data of the target network.
23. An electronic device, characterized in that: include: Processor and memory; The processor is connected to the memory; The memory is used to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 11.
24. A computer-readable storage medium, characterized in that: The method comprises a computer program, wherein when the computer program is run on an electronic device, the electronic device executes the method according to any one of claims 1 to 11.
25. A chip, characterized in that: It comprises one or more interface circuits and one or more processors; the interface circuit is used to receive a signal from a memory of an electronic device and send the signal to the processor, the signal comprising a computer instruction stored in the memory; when the processor executes the computer instruction, the electronic device executes the method described in any one of claims 1 to 11.
26. A computer program product, characterized in that The invention comprises a computer program, which, when executed by an electronic device, enables the electronic device to execute the method according to any one of claims 1 to 11.