Network transmission quality detection method and device, equipment and storage medium

By finding the transmission information of the data packet corresponding to the confirmation message in the stored transmission information, the network transmission quality of the data packet is directly determined, and the high cost and high bandwidth occupation problems caused by the additional sending of detection messages in the prior art are solved. , realizes efficient and low-cost network transmission quality detection.

CN119449640APending Publication Date: 2025-02-14HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310962139.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-31
Publication Date
2025-02-14

AI Technical Summary

Technical Problem

When detecting network transmission quality, the prior art requires additional detection packets to be sent, resulting in high network bandwidth usage and high detection costs.

Method used

By searching the transmission information of the data packet corresponding to the confirmation message in the stored transmission information, and using the stored data packet transmission information and the confirmation message message message information, the network transmission quality of the data packet is directly determined.

Benefits of technology

It realizes network transmission quality detection without additional packets, reduces detection cost and network bandwidth usage, and the detection process is simple and efficient.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119449640A_ABST
    Figure CN119449640A_ABST
Patent Text Reader

Abstract

The invention discloses a network transmission quality detection method and device, equipment and a storage medium, and belongs to the technical field of communication. The method comprises the steps that transmission information of a data message corresponding to a confirmation message is searched in at least one piece of stored transmission information, the confirmation message is a received message indicating successful transmission of the data message, the at least one piece of transmission information is stored in the process of sending the at least one data message, and retransmission does not exist in the at least one data message; and determining a detection result of the network transmission quality corresponding to the data message according to the searched transmission information of the data message and the message information of the confirmation message. The network transmission quality can be detected according to the stored transmission information and the message information of the confirmation message, the detection process is simple, and the efficiency is high. Moreover, the data message and the confirmation message involved in the detection process are messages in the data transmission process, additional message sending is not needed, the network bandwidth is not occupied additionally, and the cost is low.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a method, device, equipment and storage medium for detecting network transmission quality. Background Art

[0002] With the development of communication technology, more and more application scenarios involve the use of networks. In the process of using the network, it is also necessary to detect the network, such as detecting the network transmission quality of the network, so as to provide a stable and reliable network according to the detection results.

[0003] In the related technology, a probe message is sent from a network service provider point (POP) to an Internet Protocol (IP) address in an Internet Protocol version 4 (IPv4) address space, thereby obtaining the network transmission quality from the POP point to the IP address based on the transmission status of the probe message, thereby realizing the detection of network transmission quality.

[0004] In the above method, sending additional detection messages will occupy additional network bandwidth and increase the detection cost. Summary of the invention

[0005] The present application provides a method, apparatus, device and storage medium for detecting network transmission quality to reduce the detection cost of network transmission quality. The technical solution is as follows:

[0006] In a first aspect, a method for detecting network transmission quality is provided, the method comprising: searching for transmission information of a data packet corresponding to a confirmation message in at least one stored transmission information, wherein the confirmation message is a received message indicating successful transmission of the data packet, at least one transmission information is stored in the process of sending at least one data packet, and at least one data packet does not have retransmission; determining a detection result of the network transmission quality corresponding to the data packet based on the transmission information of the data packet obtained by searching and the message information of the confirmation message.

[0007] In the process of sending data messages, the transmission information of the data messages will be stored. According to the stored transmission information and the message information of the confirmation message, the network transmission quality can be detected. The detection process is simple and efficient. In addition, the data messages and confirmation messages involved in the detection process are messages in the data transmission process. There is no need to send additional messages, which will not occupy additional network bandwidth and is low in cost.

[0008] In a possible implementation, before searching for the transmission information of the data message corresponding to the confirmation message in the at least one stored transmission information, the method further includes: compactly representing the transmission information of the data message, and storing the compactly represented transmission information through mapping, wherein the compact representation is used to reduce the data size of the transmission information. Through the compact representation and mapping, the data size of the transmission information is reduced during the storage of the transmission information, so as to increase the amount of transmission information that can be stored.

[0009] In a possible implementation, before compactly representing the transmission information of a data message and storing the compactly represented transmission information through mapping, the method further includes: obtaining a retransmission information set, the retransmission information set including a message identifier of the retransmitted data message; when the retransmission information set does not include the message identifier of the data message, determining that the operation of compactly representing the transmission information of the data message and storing the compactly represented transmission information through mapping is allowed. Since there is a retransmission ambiguity problem between the retransmitted data message and the corresponding confirmation message, it is difficult to correctly match the data message and the confirmation message, and the accuracy of the network transmission quality determined based on the incorrectly matched data message and confirmation message is low. Therefore, the retransmission information set is used to first filter the retransmitted data message to ensure that the stored transmission information is the transmission information of the non-existent data message, which not only controls the amount of transmission information that needs to be stored, but also ensures the accuracy of the network transmission quality detection result.

[0010] In a possible implementation, the detection result of the network transmission quality corresponding to the data message is determined according to the transmission information of the data message and the message information of the confirmation message, including: determining the transmission delay of the data message according to the transmission information of the data message and the message information of the confirmation message; determining the detection result of the network transmission quality according to the transmission delay of the data message. By determining the transmission delay, the detection result of the network transmission quality of the network transmitting the data message is determined according to the transmission delay of the data message, and the detection process is simple and efficient.

[0011] In a possible implementation, the detection result of network transmission quality is determined according to the transmission delay of the data message, including: performing aggregate analysis on the transmission delay of multiple data messages transmitted in the network to obtain the deviation of the network transmission delay, the deviation indicating the distribution of the network transmission delay; when the deviation of the transmission delay exceeds the reference threshold, determining that the detection result of the network transmission quality is an increase in the transmission delay. By aggregate analysis of the transmission delay of multiple data messages, the distribution of the transmission delay is obtained, so that when the transmission delay increases, the abnormality of the network transmission quality can be detected in time, with high timeliness.

[0012] In a possible implementation, the transmission information of the data message is compactly represented, and after the compactly represented transmission information is stored through mapping, it also includes: when the transmission information to be stored is the same as the transmission information of the data message, determining that the data message has been retransmitted; storing the transmission information of the data message in a packet loss record, and when the number of transmission information included in the packet loss record is greater than a quantity threshold, determining that the detection result is that there is a packet loss anomaly in the network. By comparing the size relationship between the number of transmission information included in the packet loss record and the quantity threshold, it is possible to detect whether there is a packet loss anomaly in the network, and the detection process is simple and efficient. In addition, when there is no retransmission of the data message, the transmission delay detection can be performed based on the transmission delay of the data message, and when there is retransmission of the data message, the packet loss analysis can be performed based on the transmission information of the data message. Regardless of the situation of the data message, there is a corresponding network transmission quality detection method, which is applicable to a wide range of scenarios and has high versatility.

[0013] In a possible implementation, after determining that a data message has been retransmitted, the method further includes: storing a message identifier of the data message in a retransmission information set, and the retransmission information set is used to detect whether the acquired data message has been retransmitted. The message identifier of the data message is stored in the retransmission information set to update the retransmission information set, and the message identifier included in the updated retransmission information set is more comprehensive, and the accuracy of detecting whether the data message has been retransmitted based on the more comprehensive retransmission information set is higher.

[0014] In a possible implementation, after searching for the transmission information of the data message corresponding to the confirmation message in at least one stored transmission information, the method further includes: if the storage duration of any stored transmission information is not less than the reference duration and any transmission information fails to match successfully during the storage period, deleting any transmission information. The stored transmission information is deleted in a timely manner, and the storage space occupied by the transmission information is recovered, so that new transmission information is stored based on the recovered storage space, and the utilization rate of the storage space is high.

[0015] In a possible implementation, the method for detecting network transmission quality is performed by a switch that transmits data packets. Since the throughput of a switch is higher than that of a server and the cost is low, detecting network transmission quality by using a switch effectively reduces the equipment deployment and operation and maintenance costs of network transmission quality.

[0016] In a second aspect, a device for detecting network transmission quality is provided, which includes: a search module, used to search for transmission information of a data packet corresponding to a confirmation message in at least one stored transmission information, the confirmation message is a received message indicating that the data packet is successfully transmitted, at least one transmission information is stored in the process of sending at least one data packet, and there is no retransmission of at least one data packet; a determination module, used to determine the detection result of the network transmission quality corresponding to the data packet based on the transmission information of the data packet obtained by the search and the message information of the confirmation message.

[0017] In a possible implementation, the device further includes: a storage module, configured to compactly represent transmission information of the data message, and store the compactly represented transmission information through mapping, wherein the compact representation is used to reduce the data size of the transmission information.

[0018] In one possible implementation, the determination module is also used to obtain a retransmission information set, which includes a message identifier of a retransmitted data message; when the retransmission information set does not include the message identifier of the data message, it is determined that an operation of compactly representing the transmission information of the data message and storing the compactly represented transmission information through mapping is allowed.

[0019] In a possible implementation, the determination module is used to determine the transmission delay of the data message according to the transmission information of the data message and the message information of the confirmation message; and determine the detection result of the network transmission quality according to the transmission delay of the data message.

[0020] In one possible implementation, a determination module is used to perform an aggregate analysis on the transmission delays of multiple data packets transmitted in a network to obtain a deviation of the network's transmission delay, where the deviation indicates the distribution of the network's transmission delay; when the deviation of the transmission delay exceeds a reference threshold, the detection result of the network transmission quality is determined to be an increase in the transmission delay.

[0021] In one possible implementation, the determination module is also used to determine that a data packet has been retransmitted when the transmission information to be stored is the same as the transmission information of the data packet; the transmission information of the data packet is stored in a packet loss record, and when the number of transmission information included in the packet loss record is greater than a quantity threshold, the detection result is determined to be that a packet loss anomaly exists in the network.

[0022] In a possible implementation, the storage module is further used to store the message identifier of the data message in a retransmission information set, and the retransmission information set is used to detect whether the acquired data message has been retransmitted.

[0023] In a possible implementation, the device further includes: a deleting module, configured to delete any transmission information if the storage duration of any transmission information stored is not less than a reference duration and any transmission information fails to be matched successfully during the storage period.

[0024] In a possible implementation manner, the device for detecting network transmission quality is applied to a switch that transmits data packets.

[0025] In a third aspect, a device for detecting network transmission quality is provided, the device comprising a processor, the processor being used to load and execute at least one instruction so that the device for detecting network transmission quality performs the method in the first aspect or any possible implementation manner of the first aspect.

[0026] In a possible implementation, the device includes a memory, which is coupled to a processor, and the memory stores at least one instruction.

[0027] In a fourth aspect, a computer-readable storage medium is provided, in which at least one instruction is stored, and the instruction is loaded and executed by a processor to implement the method for detecting network transmission quality in the first aspect or any possible implementation manner of the first aspect.

[0028] In a fifth aspect, a computer program (product) is provided, which includes a computer program / instructions, and the computer program / instructions are executed by a processor to enable a computer to implement the method for detecting network transmission quality in the first aspect or any possible implementation of the first aspect.

[0029] In a sixth aspect, a communication device is provided, the device comprising: a transceiver, a memory, and a processor. The transceiver, the memory, and the processor communicate with each other through an internal connection path, the memory is used to store instructions, the processor is used to execute the instructions stored in the memory to control the transceiver to receive signals and control the transceiver to send signals, and when the processor executes the instructions stored in the memory, the processor executes the method in the first aspect or any possible implementation of the first aspect.

[0030] Optionally, there are one or more processors and one or more memories.

[0031] Optionally, the memory may be integrated with the processor, or the memory may be provided separately from the processor.

[0032] In the specific implementation process, the memory can be a non-transitory memory, such as a read-only memory (ROM), which can be integrated with the processor on the same chip or can be set on different chips. This application does not limit the type of memory and the setting method of the memory and the processor.

[0033] In a seventh aspect, a chip is provided, comprising a processor for calling and executing program instructions or codes stored in a memory, so that a communication device equipped with the chip executes the methods in the above aspects.

[0034] In an eighth aspect, another chip is provided, comprising: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute the methods in the above aspects.

[0035] It should be understood that the beneficial effects achieved by the technical solutions of the second to eighth aspects of the present application and the corresponding possible implementation methods can be referred to the above-mentioned technical effects of the first aspect and its corresponding possible implementation methods, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] Figure 1 A schematic diagram of an implementation environment provided for an embodiment of the present application;

[0037] Figure 2 A flowchart of a method for detecting network transmission quality provided in an embodiment of the present application;

[0038] Figure 3 A handshake flow chart of a network device provided in an embodiment of the present application;

[0039] Figure 4 An interactive schematic diagram of detecting network transmission quality provided in an embodiment of the present application;

[0040] Figure 5 A schematic diagram of a data message transmission provided in an embodiment of the present application;

[0041] Figure 6 A schematic diagram of the structure of a mapping table provided in an embodiment of the present application;

[0042] Figure 7 A storage flow chart of transmission information provided in an embodiment of the present application;

[0043] Figure 8 A schematic diagram of another data message transmission provided in an embodiment of the present application;

[0044] Fig. 9 A flowchart for obtaining a test result provided in an embodiment of the present application;

[0045] Fig.10 A schematic diagram of interaction between a switch and a controller provided in an embodiment of the present application;

[0046] Fig.11 A schematic diagram of another data message transmission provided in an embodiment of the present application;

[0047] Fig.12 A schematic diagram of the structure of a device for detecting network transmission quality provided in an embodiment of the present application;

[0048] Fig.13 A schematic diagram of the structure of a network device provided in an embodiment of the present application;

[0049] Fig.14 A schematic diagram of the structure of another network device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0050] The terms used in the implementation method of this application are only used to explain the specific embodiments of this application, and are not intended to limit this application. In order to make the purpose, technical solution and advantages of this application clearer, the implementation method of this application will be further described in detail below with reference to the accompanying drawings.

[0051] In the field of communication technology, detecting network transmission quality can provide basic information for application scenarios such as network operation, capacity planning, network account billing, congestion control, network scheduling or traffic anomaly detection, and thus provide stable and reliable network services for the services running in the network. Therefore, a method for detecting network transmission quality is needed.

[0052] In the related technology 1, active measurement technology is deployed at the pop point, and a probe message is actively sent at the pop point to an IP address in the IPv4 address space or the Internet protocol version 6 (IPv6) address space to obtain the network transmission quality from the pop point to the IP address according to the transmission status of the probe message. However, in the related technology 1, it is necessary to send a probe message separately, which will occupy additional transmission bandwidth, the detection cost is high, and the actively sent probe message is easily limited and blocked during the transmission process. In this case, the reliability of the measured network transmission quality is low.

[0053] In the related technology 2, the server detects the round trip time (RTT) of each service flow by tracking the handshake message of the transmission control protocol (TCP) flow, thereby realizing the detection of network transmission quality according to the RTT. The above-mentioned method of detecting RTT is difficult to be performed in a wide area network because the server can track a small amount of messages and the message volume at the wide area network boundary is large, and the generality is low.

[0054] In the third related technology, through a passive measurement method such as mirroring or a network monitoring function (netflow), the traffic is sampled and measured near the pop point to obtain the detection result of the network transmission quality. The matching success rate of the data message and the confirmation (acknowledge, ACK) message obtained by the mirror sampling is low, so the RTT cannot be accurately measured, and the data message and ACK message involved need to be stored and transmitted during the sampling process. The amount of information stored and transmitted is high, and the cost of storage and transmission is high. However, through netflow flow sampling, only flow-level data can be sampled, and only flow-level network transmission quality can be detected. The granularity of the detected network transmission quality is low and the flexibility is poor.

[0055] This application embodiment provides a method for detecting network transmission quality. Figure 1 , which shows a schematic diagram of the implementation environment of the method for detecting network transmission quality provided in an embodiment of the present application. The implementation environment includes a transmission device 01 and a transmission device 02, and the transmission device 01 and the transmission device 02 can be connected to each other in a wired or wireless network. Among them, the transmission device 01 is used to send a data message to the transmission device 02, and the transmission device 02 is used to send an acknowledgment (ACK) message to the transmission device 01 when the data message is successfully received. When the transmission device 01 receives the ACK message, the network transmission quality detection method provided in the embodiment of the present application is adopted to detect the network transmission quality according to the received ACK message.

[0056] Exemplarily, transmission device 01 and transmission device 02 can be any network device with data transmission capability, and the network device can be a switch, such as a programmable switch, and the network device can also be a router (RT) and a gateway (GW). Transmission device 01 and transmission device 02 can be applied to a public cloud scenario of a high-level language for packet processing and flow programming (programming protocol-independent packet processors, P4), and can also be applied to any scenario that needs to detect the transmission quality of service flows of external networks, including but not limited to campus network exits and autonomous network exits.

[0057] The flowchart of the method for detecting network transmission quality provided in the embodiment of the present application is as follows: Figure 2 As shown, including S201-S202.

[0058] S201, searching for transmission information of a data message corresponding to a confirmation message in at least one stored transmission information, where the confirmation message is a received message indicating successful transmission of the data message, at least one transmission information is stored in the process of sending at least one data message, and at least one data message does not have retransmission.

[0059] The embodiment of the present application does not limit the transmission protocol used by the data message and the confirmation message during the transmission process, which can be the TCP protocol or other transmission protocols. According to business statistics, more than 90% of the data messages in the public cloud wide area network use the TCP protocol. Next, the network transmission quality detection process is introduced using the TCP protocol as an example.

[0060] In one possible case, the TCP protocol establishes a transmission relationship through handshake. The establishment process can be represented by a finite state machine (FSM) containing multiple states, such as Figure 3 As shown, it shows the handshake process of establishing a connection between network devices in the TCP protocol. Figure 3 The figure shows the 11 states that a network device goes through during the handshake process, which are: closed: closed state, indicating that there is no connection activity or in progress; listen: listening state, indicating that the network device is waiting for a connection to come in; synchronization received (SYNRecvd): a connection request has been received, but has not yet been confirmed; synchronization sent (SYN Sent): a connection request has been sent, waiting for confirmation; established: connection established, data transmission state; finish wait-1 (FIN Wait-1): active close, send a connection close request, and wait for confirmation; finish wait-2 (FIN Wait-2): active close, receive the other party's close confirmation, and wait for the other party's close request; time wait: complete all closures, and wait for all packets to disappear; close (closing): both parties try to close and wait for the other party to confirm; wait for close (closewait): passive close, the other party's close request has been received and confirmed; last ACK: passive close, waiting for the last close confirmation, and waiting for all packets to disappear. Network devices can be as follows Figure 3 By receiving and sending messages, such as Figure 3The ACK message, fin message and syn message are sent to realize the handshake and complete the establishment of the transmission relationship.

[0061] However, the FSM of each data message is tracked in the network to restore the state of the network device side, and the method of calculating the network transmission quality such as the RTT of the data message needs to be adapted to different TCP versions, which will have problems such as high measurement cost and is difficult to implement in network devices. Therefore, the embodiment of the present application simplifies the TCP state model into a data message-confirmation message model (ping-pong model), and realizes the detection of network transmission quality based on data messages and confirmation messages.

[0062] In one possible scenario, Figure 2 The network transmission quality detection method shown can be executed by a switch, and the switch can be configured at a pop point or at other network locations. The process of the switch transmitting a data message includes: the switch sends a data message to the next-hop transmission device, and the next-hop transmission device returns a confirmation message after receiving the data message. After receiving the confirmation message, the switch determines that the sent data message is successfully transmitted, and the sent data message is the data message corresponding to the confirmation message. Among them, the data message can be a message generated by any business operation, including but not limited to game business messages, conference business messages, and video business messages, etc. The next-hop transmission device of the switch is determined according to the routing information of the data message.

[0063] In a possible implementation, the switch stores the transmission information of the data message during the process of sending the data message to track the data message. For example, the switch receives the traffic message through any port, and adds a direction label to the received traffic message. When the direction label is inward, it is determined that the traffic message belongs to the confirmation message sent from the next-hop transmission device to the switch and needs to be transmitted inside the switch. When the direction label is outward, it is determined that the traffic message belongs to the data message that needs to be sent to the next-hop transmission device, that is, the data message transmitted outside the switch. Among them, the transmission information of the data message is used to describe the transmission of the data message, and the transmission information includes but is not limited to the five-tuple of the data message, the sending time leaving the switch, and the ACK number of the data message. The five-tuple includes the source Internet protocol (IP) address, source port, destination IP address, destination port and transport layer protocol.

[0064] After the switch identifies the data message through the direction label, it needs to determine whether the data message has been retransmitted to determine whether to store the transmission information of the data message. In one possible implementation, the switch obtains a retransmission information set, and the retransmission information set includes a message identifier of the retransmitted data message; when the retransmission information set does not include the message identifier of the obtained data message, it is determined to start the operation of storing the transmission information of the data message. Among them, the message identifier can be a five-tuple of the data message, an ACK number, or other information that can be used to identify the data message. For the process of writing the message identifier into the retransmission information set, please refer to the relevant description of determining whether the data message has been retransmitted in the following embodiment, which will not be repeated here.

[0065] For example, the retransmission information set may be stored in the storage space of other devices that establish a communication connection with the switch. In this case, the switch reads the storage space of other devices to obtain the retransmission information set. Alternatively, the retransmission information set may be stored in the storage space of the switch. Figure 4 As shown, the switch as a single device includes four parts (Part), PartA is a lightweight flow state tracking module, PartB is a compact data structure and line-speed access module, PartC is a batch processing module, and PartD is an aggregation analysis module. Among them, PartA, PartB and PartC are modules included in the data plane of the switch, and PartD is a module included in the control plane of the switch. PartA stores a retransmission information set, and it can be determined whether the data message is retransmitted based on the retransmission information set.

[0066] Regardless of the method used by the switch to obtain the retransmission information set, the switch can match the message identifier of the data message with the message identifier included in the retransmission information set. If the match fails, it means that the retransmission information set does not include the message identifier of the data message, and the data message does not have retransmission. The transmission information of the data message can be stored to track the data message. Figure 4 In step 1, after PartA determines that there is no retransmission of the data message, it sends the transmission information of the data message to PartB for storage of the transmission information.

[0067] If the match succeeds, it means that the retransmission information set includes the message identifier of the data message, and the data message is retransmitted. The switch does not track the data message, and the way to cancel the tracking can be to cancel the storage of the data message transmission information. Figure 4After PartA determines that the data message has been retransmitted, it stores the transmission information of the data message in PartA to avoid sending the transmission information of the data message to PartB, thereby canceling the storage of the transmission information of the data message. In a possible implementation, the switch may use a filter method, and the message identifier included in the retransmission information set matches the message identifier of the data message. The filter method is, for example, a bloom filter.

[0068] The above is a process of determining whether to track a data message by judging whether the data message is a retransmission. Next, the reason for canceling the tracking of a retransmitted data message is explained in conjunction with the accompanying drawings. When a data message is retransmitted, the problem of retransmission ambiguity will arise. Retransmission ambiguity refers to whether the received confirmation message is a confirmation of the first transmitted data message or the second transmitted data message. For example Figure 5 As shown, Figure 5 The sender corresponds to the switch, the receiver corresponds to the next-hop transmission device, the original transmission is the first-transmitted datagram 1, and the retransmission is the retransmitted datagram 2 due to the failure of the transmission of datagram 1. The transmission information of datagram 1 and datagram 2 is the same.

[0069] Figure 5 Figure (a) shows the correspondence between the first confirmation message and the data message. The confirmation message received by the sending end is the confirmation message corresponding to data message 2. Figure 5 Figure (b) shows the second correspondence between the confirmation message and the data message, and the confirmation message received by the sender is the confirmation message corresponding to data message 1. Since the sender determines the correspondence between the data message and the confirmation message based on the matching result of the transmission information of the data message and the message information of the confirmation message, the message information of the confirmation message is used to identify the data message corresponding to the confirmation message, and the message information includes but is not limited to the quintuple of the confirmation message and the ACK number.

[0070] In this case, the process by which the sending end determines the data message corresponding to the confirmation message based on the message information of the confirmation message and the transmission information of the data message is, for example, to determine that the data message and the confirmation message correspond when the source address included in the transmission information of the data message successfully matches the destination address included in the message information of the confirmation message. And because the transmission information of data message 1 and data message 2 are consistent, when the message information of the confirmation message successfully matches the transmission information of data message 1, the message information of the confirmation message will also successfully match the transmission information of data message 2. Therefore, the sending end cannot determine whether the received confirmation message is the confirmation message corresponding to data message 1 or the confirmation message corresponding to data message 2. For example Figure 5In Figure (b), since the sender receives the confirmation message after sending data message 2, the sender may determine the received confirmation message as the confirmation message corresponding to data message 2. Therefore, for the retransmitted data message, the switch cannot accurately determine the correspondence between the data message and the confirmation message, and cannot determine the transmission delay based on the correctly matched data message and confirmation message. In this case, the switch will cancel the tracking of the retransmitted data message, thereby controlling the number of data messages that need to be tracked and achieving lightweight and low-cost tracking of data messages.

[0071] When the switch determines that there is no retransmission of the data packet, it will store the transmission information of the data packet. Since the storage and computing resources of the switch are limited, taking a switch (tofino) as an example, the data plane of the switch has a total of 120 megabits (Mbit) of static random access memory (SRAM) storage resources. When the line rate of the data packet is 200 gigabits per second (Gbps), the average RTT of the wide area network is 50ms, and the data plane needs to store 2.5×10 6 In the case where each data message is recorded as 20 bytes (byte), approximately 50 megabytes (MB) of storage space is required. In this case, it is difficult for the data plane of the switch to store the transmission information of the data message in full. In addition, due to the cumulative confirmation and selective confirmation mechanisms of the TCP protocol, there will be a many-to-one situation between data messages and confirmation messages. The switch cannot predict in advance which data message will have a response confirmation message, and can only record the transmission information of the sent data message. Therefore, it is necessary to compactly store the transmission information of the data message to meet the massive storage requirements of the transmission information. Exemplarily, the process of compactly storing the transmission information includes: compactly representing the transmission information of the data message, storing the compactly represented transmission information through mapping, and the compact representation is used to reduce the data size of the transmission information.

[0072] In one possible implementation, the compact representation is implemented through a sketch algorithm. Since the use of a hash table to map transmission information will face the contradiction between the limited storage space of the switch's data plane and the massive number of flows, the switch uses a sketch algorithm on the basis of a hash table to compactly store the transmission information. The sketch algorithm is a compact representation and sublinear storage space that maps transmission information from a sparse high-dimensional space to a denser low-dimensional space, thereby using less data to represent the transmission information, and the sketch algorithm can measure the frequency information such as the flow size of the message flow of the data message. The process of compact representation through the sketch algorithm includes: setting multiple hash functions, processing the transmission information through different hash functions, and obtaining the corresponding hash value, and the obtained hash value is the transmission information after compact representation. Afterwards, the hash value can be mapped to complete the storage of the transmission information.

[0073] Next, the sketch algorithm is introduced by taking the transmission information stored in the switch, including the quaternary group of the data message, the flow identity document (ID) of the message flow in which the data message is located, and the sending time of the data message as an example. Among them, the quaternary group includes the source IP address, the destination IP address, the source port, and the destination port. The switch calculates the hash value H1 (wire-speed access) of the data message through the hash function H1, and determines the hash table that needs to be stored for the transmission information of the data message according to the hash value H1 (wire-speed access) to achieve wire-speed access. The data size of H1 (wire-speed access) is reduced from 128 bits (bit) to X1bit. Then, the hash function H2 is used to perform the quaternary group or flow ID included in the transmission information to obtain the hash value H2 (flow ID), and H2 (flow ID) is determined as the key corresponding to the data message. The data size of H2 (flow ID) is reduced from 96bit to X2bit.

[0074] In addition, the switch also needs to calculate the value corresponding to the key. The value can be calculated based on the enhanced ACK (eACK) frame and the timestamp (tm). The process of calculating the value includes the switch using the hash function H3 to perform a hash calculation on the eACK number to obtain the hash value H3 (eACK). Exemplarily, the compact representation can also refer to intercepting a section for representation. For example, a section is intercepted for the sending time tm to achieve a compact representation. Through the compact representation, the data size of tm is reduced to X4 bits. When the unit is millisecond (ms), 10 bits can represent 0 to 1 second, which effectively increases the range of timestamps that can be stored.

[0075] After using the sketch algorithm to calculate the hash value corresponding to the transmission information, the switch can map the hash value of the transmission information into a hash table. Figure 6 As shown, Figure 6 The transmission information set includes multiple hash tables, namely Table 1, Table 2, Table 3 and Table 4. The data structures of different hash tables are similar. Figure 6 Table 1 is used as an example to illustrate the data structure of the hash table. The data structures of Tables 2, 3 and 4 are not shown again. The hash table includes the field (fid) key, eACK frame and tm in the key set. The switch maps eACK and tm to the storage address corresponding to fid to realize the storage of transmission information.

[0076] By using the hash table + sketch algorithm to achieve compact storage of transmission information, the storage space occupied by the stored key + value is effectively reduced. In one possible case, the storage space of the key can be reduced from 96 bits to 32 bits, and the storage space of the value can be reduced from 32+32 bits to 16+16 bits. Based on the reduction of the storage space occupied by the key+value, the switch can store more transmission information, thereby more comprehensively reflecting the network transmission quality of the path for transmitting data packets in the wide area network based on more transmission information.

[0077] In addition, the compact representation using the sketch algorithm can also reduce hash conflicts. When there are n data message streams to be stored, the data message stream ID + eACK calculation results in the same H2 (stream ID) and H3 (eACK), resulting in the probability of a conflict in the (X2 + X3) bit hash results of the two data messages. The probability of a conflict can be determined with the help of the birthday problem. Where n is a positive integer of any size. When using k hash tables to achieve unbiased sampling, the probability that k hash tables conflict is When n is 10000, the probability of conflict is 0.0000178%, and the expected number of conflicts is 0.00178, which means that increasing the number of hash tables can effectively reduce the probability of hash conflicts. When a conflict occurs, because the insertion position of the transmission information is random and the transmission information will naturally time out, the storage process is unbiased sampling, which realizes random rejection samples. The accuracy of network transmission quality detection based on unbiased sampling transmission information is high.

[0078] The above is the process of mapping the transmission information into the hash table. In a possible implementation, the process of storing the transmission information in the switch is as follows: Figure 7As shown, the switch uses the hash algorithm and the sketch algorithm to calculate the hash value, and uses the hash value as the address to store the current key-value pair. If the address corresponding to the hash value is not occupied, that is, there is no hash conflict, the switch inserts the hash value of eACK and the timestamp into the transmission information set. If the address corresponding to the hash value is occupied, it is determined that a hash conflict has occurred. The switch determines whether the storage duration of the historical information stored at the address corresponding to the hash value exceeds the reference duration set based on experience. If it times out, the originally stored historical information is deleted, and the hash value of the transmission information is inserted into the hash table. If it does not time out, the switch determines whether the H2 (flow ID) and H3 (eACK) of the data message are the same as the H2 (flow ID) and H3 (eACK) of the historical information. If they are not the same, the transmission information of the data message is discarded. If they are the same, the data message is marked as a retransmission, a transmission abnormality occurs, the stored transmission information is deleted, and the packet loss information of the data message is reported.

[0079] According to the above example, in one possible case, when the switch detects that the transmission information to be stored is the same as the transmission information of the data message during the process of storing the transmission information, it determines that the data message has been retransmitted; the transmission information of the data message is stored in the packet loss record, and when the number of transmission information included in the packet loss record is greater than the number threshold, it is determined that the detection result is that there is a packet loss anomaly in the network. Among them, the transmission information to be stored can be the historical information that has been stored, that is, the historical information in which a hash conflict occurs during the storage process and H2 (flow ID) and H3 (eACK) are the same as the example in the above embodiment.

[0080] The transmission information to be stored may also be the transmission information to be stored but not yet stored. For example, after the switch writes the transmission information of the data message into the transmission information set, it receives a data message and stores the transmission information of the received data message. During the storage process, it is determined that the transmission information is the same as the transmission information of the data message. Figure 8 As shown, Figure 8 The receiver corresponds to the next-hop transmission device, and the sender corresponds to the switch. Figure 8 Data message 2 in the packet is lost at the receiving end, so the receiving end does not return a confirmation message. Since the sending end does not receive a confirmation message within the waiting threshold, it continues to send data message 2 and stores the transmission information of data message 2 during the sending process. The transmission information of data message 2 also needs to store the transmission information that has not been stored. Figure 8In the example, ACK=2 and ACK=6 are used to identify the confirmation message, ACK=2 means that the ACK number of the confirmation message is 2, and ACK=6 means that the ACK number of the confirmation message is 6. The waiting threshold can be a time of any size and unit set based on experience. Since the switch processes retransmitted data messages in a similar manner regardless of whether it is historical information or transmission information to be stored, the following takes the case where the transmission information and historical information of the data message are the same as an example to illustrate the process of the switch processing retransmitted data messages.

[0081] The transmission information of the two data messages is the same, which means that the switch has sent two identical data messages, that is, the data message has been retransmitted, and the reason for the retransmission of the data message is that the data message is lost during the transmission process. Therefore, the switch can perform packet loss analysis based on the transmission information of the data message to obtain the detection result of the packet loss event in the network transmission quality. Figure 4 As shown, when the compact data structure and the line-speed access module detect that the data message is retransmitted, the switch will perform the operation of step 2.1 and send the packet loss information of the data message to the batch processing module to report the packet loss information. The packet loss information carries the five-tuple and ACK number included in the transmission information, and the ID of the packet loss information = "packet loss event". The ID of the packet loss information can be equal to the first value, which is used to indicate the packet loss event, and the first value is, for example, 1.

[0082] After receiving the packet loss information, the batch processing module can perform the operation of step 3 to upload the received packet loss information to the aggregation analysis module. The embodiment of the present application does not limit the process of the batch processing module sending the packet loss information of the data message. It can be sent after receiving the packet loss information, or it can be cached. After the cache quantity reaches a first threshold value set based on experience, the cached packet loss information is uploaded in batches, or after the time of caching the packet loss information reaches a second threshold value set based on experience, the cached packet loss information is uploaded in batches, that is, the batch processing module can send the packet loss information in a timed or variable speed manner.

[0083] Regardless of the method by which the batch processing module sends the packet loss information, the aggregation analysis module will store the transmission information carried by the packet loss information in the packet loss record, and perform packet loss event analysis based on the packet loss record. Exemplarily, the aggregation analysis module uses a programmable performance indicator aggregation algorithm to aggregate the received transmission information according to the aggregation granularity to obtain at least one packet loss record, and the packet loss record includes the transmission information of at least one data message.

[0084] Exemplarily, the process of obtaining the aggregate granularity is as follows: Fig. 9 As shown, Fig. 9 Data plane performance measurement refers to Figure 4The data plane application specific integrated circuit (ASIC) of the switch includes PartA, PartB and PactC. The aggregation analysis module receives the data aggregation signaling sent by the controller and aggregates the packet loss information sent by the data plane according to the data aggregation instruction. The data aggregation signaling carries the aggregation granularity. For example, the aggregation type (type) in the data aggregation signaling indicates the aggregation granularity. Type = 1 indicates aggregation based on the customer network segment, type = 2 indicates aggregation based on the autonomous system (AS) path, type = 3 indicates aggregation based on the destination AS, and type = 4 indicates aggregation based on the binary group of the data message. Taking the aggregation granularity as the customer network segment as an example, the switch divides the transmission information of the data message with the same customer network segment into a packet loss record to achieve the aggregation of the transmission information. Afterwards, the switch compares the number of transmission information included in the packet loss record with the number threshold. When the number of transmission information is greater than the number threshold, it is determined that the detection result is that there is a packet loss anomaly in the network.

[0085] For data packets with packet loss, the switch not only performs aggregation analysis based on the transmission information of the data packet, but also stores the message identifier of the data packet in the retransmission information set, which is used to detect whether the acquired data packet has been retransmitted. Figure 4 In step 2.2 shown, the switch sends the packet loss information of the data packet to the lightweight flow state tracking module through the compact data structure and the line-speed storage module. After receiving the packet loss information of the data packet, the lightweight flow state tracking module stores the message identifier included in the received packet loss information in the retransmission information set. The stored message identifier includes but is not limited to a five-tuple and an ACK number.

[0086] The above is the processing flow of the switch when the switch detects that a data message is retransmitted during the process of storing transmission information. In the case where there is no retransmission of the data message, the switch successfully stores the transmission information. After receiving the confirmation message corresponding to the data message, the switch will search for the transmission information of the data message corresponding to the confirmation message in the stored transmission information.

[0087] Exemplarily, the switch searches in the stored transmission information according to the message information of the confirmation message, and the message information includes but is not limited to the quintuple and ACK number of the confirmation message. Since the source address of the data message is the same as the destination address of the confirmation message, the destination address of the data message is the same as the source address of the confirmation message, and the ACK number of the data message and the confirmation message is the same. Therefore, the switch can search in the transmission information set according to the message information of the confirmation message. For example, the key in the transmission information set is calculated according to the ACK number of the confirmation message, and a query algorithm is used to perform key-value matching. If the match is successful, the transmission information in the successfully matched value is determined as the transmission information of the data message corresponding to the confirmation message.

[0088] S202: Determine a detection result of the network transmission quality corresponding to the data message according to the transmission information of the data message and the message information of the confirmation message obtained by searching.

[0089] In a possible implementation, the switch determines the transmission delay of the data message according to the transmission information of the data message and the message information of the confirmation message; and determines the detection result of the network transmission quality according to the transmission delay of the data message. According to the example in S201, the transmission information includes the sending time of the data message, and the message information of the confirmation message also includes the receiving time of the confirmation message. Since the transmission path of the data message and the confirmation message is the same, the switch can calculate the RTT of the data message according to the sending time of the data message and the receiving time of the confirmation message, and obtain the transmission delay of the data message.

[0090] The above is a process of calculating the transmission delay of a data message. In one possible case, the switch can track multiple data messages transmitted to obtain the transmission delays of multiple data messages. In this case, the switch can aggregate and analyze the transmission delays of multiple data messages transmitted in the network to obtain the deviation of the network's transmission delay, and the deviation indicates the distribution of the network's transmission delay; when the deviation of the transmission delay exceeds the reference threshold, the detection result of the network transmission quality is determined to be an increase in the transmission delay. The reference threshold can be set based on experience.

[0091] Taking the customer network segment shown in S201 as an example with an aggregation granularity, the switch divides the transmission delay of the data message in the same customer network segment into a group, analyzes the transmission delay included in the group, and obtains the deviation of the transmission delay under the group. When the deviation of the transmission delay exceeds the reference threshold, it indicates that there is an abnormal increase in the transmission delay, and the detection result of the network transmission quality is determined to be an increase in the transmission delay. The embodiment of the present application does not limit the method for determining the deviation of the transmission delay, and a histogram can be constructed based on the transmission delay included in the group, and the deviation of the transmission delay can be determined based on the histogram. Exemplarily, the switch can also construct a quantile sketch to record the distribution of the transmission delay, thereby determining the deviation of the transmission delay based on the quantile sketch.

[0092] In one possible case, similar to the process of packet loss event analysis, transmission delay analysis can also be done by Figure 4 The aggregation analysis module shown is executed, that is, the switch sends the transmission delay of the data message to the batch processing module through the compact data structure and the line-speed access module, and the batch processing module sends the received transmission delay to the aggregation analysis module. Among them, the compact data structure and the line-speed access module can send the transmission delay, or it can be a transmission delay record carrying the transmission delay. The transmission delay record includes but is not limited to the transmission delay and the five-tuple, etc. The ID of the transmission delay record = "RTT" sample, etc. The ID of the transmission delay record can be a second value, and the second value is used to indicate that it is an RTT sample. The second value is, for example, 2. In one possible case, the transmission delay record can be compactly represented. For the description of the compact representation, please refer to the relevant content of the compact representation of the timestamp in S201.

[0093] Regardless of whether the switch performs transmission delay analysis on data packets or packet loss event analysis, the detection results obtained from the analysis can be sent to the controller, and the controller is used to adjust the network according to the received detection results. Fig. 9 Upload the test results to the controller as shown, or as Fig.10As shown, the performance anomaly record determined according to the detection result is sent to the controller. After the switch determines the detection result according to the transmission delay or packet loss information, the switch uses the flow performance degradation anomaly online monitoring algorithm through the aggregation analysis module to generate a performance anomaly record according to the detection result. The performance anomaly record includes anomaly type, alarm information and sampling rate, etc. In the case where the anomaly type of the performance anomaly record is packet loss anomaly, the electronic identity document (EID) of the performance anomaly record is a third value used to indicate the packet loss anomaly, and the third value is, for example, 1. In the case where the anomaly type of the performance anomaly record is an increase in transmission delay, the EID of the performance anomaly record is a fourth value used to indicate an increase in transmission delay, and the fourth value is, for example, 2. The alarm information is used to identify the network location where the anomaly occurs. Taking the aggregation granularity as the customer network as an example, the alarm information is the customer network segment corresponding to the packet loss record or grouping, and the sampling rate is used to indicate the ratio of the number of data packets used in the process of detecting the network transmission quality to the number of data packets transmitted in the network.

[0094] For example, the switch can directly send the detection result to the controller after determining the detection result, or cache the determined detection result, and send the detection result to the controller when the cached amount reaches the signaling threshold set based on experience. By uploading the detection results obtained by aggregation analysis, the compression rate of the detection results is reduced. Under a throughput of 100 megabits per second (Mbps), the bandwidth occupied by uploading 2351 detection results in 4.5 seconds on the data plane is 42.318 kilobytes (KB), accounting for 0.1% of the total throughput, achieving low transmission cost.

[0095] Regardless of how the switch sends the detection results, the controller can use the performance indicator aggregation algorithm to further aggregate the performance indicators of the received detection results. For example, the detection results corresponding to different aggregation granularities are aggregated and analyzed to generate the status of the entire network. Afterwards, the controller uses the optimization / operation and maintenance algorithm to perform network adjustments such as single-point / entire network fault self-healing and performance tuning according to the status of the entire network. Exemplarily, the network adjustment process includes the controller scheduling data packets across pop points, and the above process is also called Figure 4 Step 4 as shown.

[0096] In one possible case, after the switch detects the network transmission quality according to the stored transmission information, it can also update the stored transmission information. For example, if the storage duration of any stored transmission information is not less than the reference duration, and any transmission information fails to match successfully during the storage period, any transmission information is deleted. The transmission information that does not match within the reference duration is determined as aged, and the aged transmission information is deleted in time to improve the space utilization of the storage space of the transmission information and the timeliness and effectiveness of the transmission information, and avoid the low accuracy of the detected transmission delay caused by delayed ACK and accumulated ACK.

[0097] For example Fig.11 As shown, Fig.11 The client corresponds to the next-hop transmission device, and the server corresponds to the switch in the embodiment of the present application. Fig.11 In the process, the client sends a request message to the server to request the server to send a data message. After receiving the request message, the server sends a confirmation message to confirm the receipt of the request message. The client can prepare to receive the data message based on the reception of the confirmation message. After that, the server sends two types of response packets as data messages, namely full-size packets and small packets. After receiving the response message, the client will send a confirmation message as a response after a period of time. The interval is Fig.11 It is called delayed response time. After that, the server will return a response message to the client to achieve interaction with the client. Due to the delayed ACK behavior of the client, the transmission delay calculated based on the reception time of the confirmation message of the delayed response and the sending time of the response message will include the delayed response time, which has low accuracy. Therefore, by deleting the transmission information whose storage time exceeds the reference time and is not matched, the tracking of data messages with delayed responses can be canceled to avoid detecting the transmission delay of data messages with delayed responses, resulting in a reduction in the accuracy of the detection results of network transmission quality.

[0098] In addition, the switch can choose to track any data message sent to detect the network transmission quality, or it can choose to track specific data messages, such as data messages on important customer network segments or AS paths. Whether the customer network and AS path are important can be set by the detection object, or it can be determined according to the level of the customer network and AS path.

[0099] In summary, the network transmission quality detection method provided by the embodiment of the present application stores the transmission information of the data message in the process of sending the data message. The network transmission quality detection can be realized according to the stored transmission information and the message information of the confirmation message, and the message-level network transmission quality detection is realized. The fine granularity is high, the efficiency is high, and it can be applied to the wide area network scenario with high versatility. In addition, the data message and the confirmation message involved in the detection process are messages in the data transmission process. There is no need to send additional messages, and the network bandwidth will not be occupied additionally. The detection process is simple and the cost is low. Since the throughput capacity of the switch is higher than the throughput capacity of the server, the terabyte (Tb) level measurement capability can be realized through the switch, and the network transmission quality detection method is executed by the switch, which reduces the deployment and operation and maintenance costs of the method. The storage method combining the hash table and the sketch algorithm reduces the storage space occupied by the key+value, reduces the probability of hash conflict, and provides the information volume of the stored transmission information compared with the storage method of the traditional hash table. The detection result transmitted by the switch to the controller is the detection result obtained by the aggregate analysis, with a small amount of data and a low transmission cost. In addition, the data packets that need to store transmission information are data packets that do not have retransmissions, which controls the amount of transmission information that needs to be stored, reduces the storage cost, and avoids the impact of data packet retransmission on transmission delay, such as the impact of retransmission ambiguity and cumulative retransmission on the measurement of transmission delay. The obtained network transmission quality detection result has a high accuracy rate.

[0100] The above describes a method for detecting network transmission quality according to an embodiment of the present application. Corresponding to the above method, an embodiment of the present application also provides a device for detecting network transmission quality. Fig.12 Schematic diagram of a network transmission quality detection device provided in an embodiment of the present application. Fig.12 As shown in the following multiple modules, the Fig.12 The network transmission quality detection device shown can perform the above Figure 2 It should be understood that the device may include more additional modules than the modules shown or omit some of the modules shown, and the embodiments of the present application are not limited to this. Fig.12 As shown, the device comprises:

[0101] A search module 1201 is used to search for transmission information of a data message corresponding to a confirmation message in at least one stored transmission information, where the confirmation message is a received message indicating that the data message is successfully transmitted, the at least one transmission information is stored in the process of sending at least one data message, and there is no retransmission of the at least one data message;

[0102] The determination module 1202 is used to determine the detection result of the network transmission quality corresponding to the data message according to the transmission information of the data message and the message information of the confirmation message obtained by searching.

[0103] In a possible implementation, the device further includes: a storage module, configured to compactly represent transmission information of the data message, and store the compactly represented transmission information through mapping, wherein the compact representation is used to reduce the data size of the transmission information.

[0104] In one possible implementation, the determination module 1202 is also used to obtain a retransmission information set, where the retransmission information set includes a message identifier of a retransmitted data message; when the retransmission information set does not include the message identifier of the data message, it is determined that an operation of compactly representing the transmission information of the data message and storing the compactly represented transmission information through mapping is allowed.

[0105] In a possible implementation, the determination module 1202 is used to determine the transmission delay of the data message according to the transmission information of the data message and the message information of the confirmation message; and determine the detection result of the network transmission quality according to the transmission delay of the data message.

[0106] In one possible implementation, the determination module 1202 is used to perform an aggregate analysis on the transmission delays of multiple data packets transmitted in the network to obtain the deviation of the network's transmission delay, and the deviation indicates the distribution of the network's transmission delay; when the deviation of the transmission delay exceeds a reference threshold, the detection result of the network transmission quality is determined to be an increase in the transmission delay.

[0107] In one possible implementation, the determination module 1202 is also used to determine whether a data packet has been retransmitted when the transmission information to be stored is the same as the transmission information of the data packet; the transmission information of the data packet is stored in a packet loss record, and when the number of transmission information included in the packet loss record is greater than a quantity threshold, the detection result is determined to be that a packet loss anomaly exists in the network.

[0108] In a possible implementation, the storage module is further used to store the message identifier of the data message in a retransmission information set, and the retransmission information set is used to detect whether the acquired data message has been retransmitted.

[0109] In a possible implementation, the device further includes: a deleting module, configured to delete any transmission information if the storage duration of any transmission information stored is not less than a reference duration and any transmission information fails to be matched successfully during the storage period.

[0110] In a possible implementation manner, the device for detecting network transmission quality is applied to a switch that transmits data packets.

[0111] In the process of sending data messages, the above device will store the transmission information of the data message, and the network transmission quality detection can be realized according to the stored transmission information and the message information of the confirmation message, and the detection process is simple and efficient. In addition, the data message and confirmation message involved in the detection process are messages in the data transmission process, and there is no need to send additional messages, which will not occupy additional network bandwidth and is low in cost.

[0112] It should be understood that the above Fig.12 When the device provided realizes its functions, only the division of the above-mentioned functional modules is used as an example for illustration. In practical applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the method embodiment, which will not be repeated here.

[0113] See also Fig.13 , Fig.13 A schematic diagram of the structure of a network device 1300 provided by an exemplary embodiment of the present application is shown. Fig.13 The network device 1300 shown is used to perform the above Figure 2 The network device 1300 is, for example, a switch, a router, etc. The network device 1300 can be implemented by a general bus architecture.

[0114] like Fig.13 As shown, the network device 1300 includes at least one processor 1301 , a memory 1303 , and at least one communication interface 1304 .

[0115] Processor 1301 is, for example, a general-purpose central processing unit (CPU), a digital signal processor (DSP), a network processor (NP), a graphics processing unit (GPU), a neural-network processing units (NPU), a data processing unit (DPU), a microprocessor, or one or more integrated circuits for implementing the solution of the present application. For example, processor 1301 includes an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. PLD is, for example, a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. It can implement or execute various logic blocks, modules, and circuits described in conjunction with the disclosure of the embodiments of the present application. The processor can also be a combination that implements a computing function, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.

[0116] Optionally, the network device 1300 further includes a bus. The bus is used to transmit information between the components of the network device 1300. The bus may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.13 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0117] The memory 1303 is, for example, a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, or a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 1303 is, for example, independent and connected to the processor 1301 through a bus. The memory 1303 can also be integrated with the processor 1301.

[0118] The communication interface 1304 uses any transceiver-like device for communicating with other devices or communication networks, and the communication network can be Ethernet, a radio access network (RAN) or a wireless local area network (WLAN), etc. The communication interface 1304 may include a wired communication interface and may also include a wireless communication interface. Specifically, the communication interface 1304 may be an Ethernet interface, a fast Ethernet (FE) interface, a gigabit Ethernet (GE) interface, an asynchronous transfer mode (ATM) interface, a wireless local area network (WLAN) interface, a cellular network communication interface or a combination thereof. The Ethernet interface may be an optical interface, an electrical interface or a combination thereof. In an embodiment of the present application, the communication interface 1304 may be used for the network device 1300 to communicate with other devices.

[0119] In a specific implementation, as an embodiment, the processor 1301 may include one or more CPUs, such as Fig.13 0 and CPU1 shown in FIG. Each of these processors may be a single-CPU processor or a multi-CPU processor. A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).

[0120] In a specific implementation, as an embodiment, the network device 1300 may include multiple processors, such as Fig.13 1301 and 1305 are shown in FIG. Each of these processors may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).

[0121] In a specific implementation, as an embodiment, the network device 1300 may also include an output device and an input device. The output device communicates with the processor 1301 and can display information in a variety of ways. For example, the output device may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector. The input device communicates with the processor 1301 and can receive user input in a variety of ways. For example, the input device may be a mouse, a keyboard, a touch screen device, or a sensor device.

[0122] In some embodiments, the memory 1303 is used to store the program code 1310 for executing the solution of the present application, and the processor 1301 can execute the program code 1310 stored in the memory 1303. That is, the network device 1300 can implement the method for detecting the network transmission quality provided by the method embodiment through the processor 1301 and the program code 1310 in the memory 1303. The program code 1310 may include one or more software modules. Optionally, the processor 1301 itself may also store the program code or instruction for executing the solution of the present application.

[0123] In a specific embodiment, the network device 1300 of the embodiment of the present application may correspond to the computing device in the above-mentioned various method embodiments.

[0124] in, Figure 2Each step of the method for detecting network transmission quality shown is completed by an integrated logic circuit of hardware or software instructions in the processor of the network device 1300. The steps of the method disclosed in conjunction with the embodiment of the present application can be directly embodied as a hardware processor, or a combination of hardware and software modules in the processor. The software module can be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor reads the information in the memory, and completes the steps of the above method in conjunction with its hardware. To avoid repetition, it is not described in detail here.

[0125] See also Fig.14 , Fig.14 FIG. 1 shows a schematic diagram of the structure of a network device 1400 provided by another exemplary embodiment of the present application. Fig.14 The network device 1400 shown is used to perform the above Figure 2 All or part of the operations involved in the method for detecting network transmission quality shown. The network device 1400 is, for example, a switch, a router, etc. The network device 1400 can be implemented by a general bus architecture.

[0126] like Fig.14 As shown, the network device 1400 includes: a main control board 1410 and an interface board 1430 .

[0127] The main control board is also called a main processing unit (MPU) or a route processor card. The main control board 1410 is used to control and manage various components in the network device 1400, including routing calculation, device management, device maintenance, and protocol processing functions. The main control board 1410 includes: a central processing unit 1411 and a memory 1412.

[0128] The interface board 1430 is also called a line processing unit (LPU), a line card (linecard) or a service board. The interface board 1430 is used to provide various service interfaces and realize the forwarding of data packets. The service interface includes but is not limited to an Ethernet interface, a POS (Packet over SONET / SDH) interface, etc., and the Ethernet interface is, for example, a Flexible Ethernet Service Interface (Flexible Ethernet Clients, FlexE Clients). The interface board 1430 includes: a central processing unit 1431, a network processor 1432, a forwarding table entry memory 1434 and a physical interface card (physical interface card, PIC) 1433.

[0129] The central processor 1431 on the interface board 1430 is used to control and manage the interface board 1430 and communicate with the central processor 1411 on the main control board 1410 .

[0130] The network processor 1432 is used to implement the forwarding processing of the message. The network processor 1432 can be in the form of a forwarding chip. The forwarding chip can be a network processor (NP). In some embodiments, the forwarding chip can be implemented by an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA). Specifically, the network processor 1432 is used to forward the received message based on the forwarding table stored in the forwarding table entry memory 1434. If the destination address of the message is the address of the network device 1400, the message is sent to the CPU (such as the central processor 1431) for processing; if the destination address of the message is not the address of the network device 1400, the next hop and the output interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to the output interface corresponding to the destination address. Among them, the processing of the uplink message may include: processing of the message input interface, forwarding table search; the processing of the downlink message may include: forwarding table search, etc. In some embodiments, the central processor can also perform the function of the forwarding chip, such as implementing software forwarding based on a general-purpose CPU, so that the forwarding chip is not required in the interface board.

[0131] The physical interface card 1433 is used to implement the physical layer docking function, whereby the original traffic enters the interface board 1430, and the processed message is sent out from the physical interface card 1433. The physical interface card 1433, also called a daughter card, can be installed on the interface board 1430, and is responsible for converting the photoelectric signal into a message and forwarding the message to the network processor 1432 for processing after checking the legitimacy of the message. In some embodiments, the central processor 1431 can also perform the functions of the network processor 1432, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 1432 is not required in the physical interface card 1433.

[0132] Optionally, the network device 1400 includes a plurality of interface boards, for example, the network device 1400 further includes an interface board 1440, and the interface board 1440 includes: a central processor 1441, a network processor 1442, a forwarding table entry memory 1444, and a physical interface card 1443. The functions and implementation methods of the components in the interface board 1440 are the same or similar to those of the interface board 1430, and are not described in detail herein.

[0133] Optionally, the network device 1400 further includes a switching fabric board 1420. The switching fabric board 1420 may also be referred to as a switch fabric unit (SFU). When the network device 1400 has multiple interface boards, the switching fabric board 1420 is used to complete data exchange between the interface boards. For example, the interface board 1430 and the interface board 1440 may communicate via the switching fabric board 1420.

[0134] The main control board 1410 is coupled to the interface board. For example, the main control board 1410, the interface board 1430, the interface board 1440, and the switching network board 1420 are connected to the system backplane through the system bus to achieve intercommunication. In a possible implementation, an inter-process communication (IPC) channel is established between the main control board 1410 and the interface board 1430 and the interface board 1440, and the main control board 1410 and the interface board 1430 and the interface board 1440 communicate through the IPC channel.

[0135] Logically, the network device 1400 includes a control plane and a forwarding plane. The control plane includes a main control board 1410 and a central processing unit 1411. The forwarding plane includes various components for performing forwarding, such as a forwarding table entry memory 1434, a physical interface card 1433, and a network processor 1432. The control plane performs functions such as a router, generating a forwarding table, processing signaling and protocol messages, and configuring and maintaining the status of the network device. The control plane sends the generated forwarding table to the forwarding plane. On the forwarding plane, the network processor 1432 forwards the message received by the physical interface card 1433 based on the forwarding table sent by the control plane. The forwarding table sent by the control plane can be stored in the forwarding table entry memory 1434. In some embodiments, the control plane and the forwarding plane can be completely separated and not on the same network device.

[0136] It is worth noting that there may be one or more main control boards, and when there are multiple boards, they may include a primary main control board and a backup main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards are provided. There may also be one or more physical interface cards on the interface board. There may be no switching network board, or there may be one or more switching network boards. When there are multiple switching network boards, they can jointly realize load sharing and redundant backup. In a centralized forwarding architecture, network devices may not need switching network boards, and the interface board is responsible for processing the service data of the entire system. In a distributed forwarding architecture, network devices may have at least one switching network board, and data exchange between multiple interface boards is realized through the switching network board, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of network devices with distributed architectures are greater than those of network devices with centralized architectures. Optionally, the network device may have only one board, that is, no switching board, and the functions of the interface board and the main control board are integrated on the board. In this case, the central processor on the interface board and the central processor on the main control board can be combined into one central processor on the board to perform the functions of the two. This type of network device has low data exchange and processing capabilities (for example, low-end switches or routers and other network devices). The specific architecture to be adopted depends on the specific networking deployment scenario, and no limitation is made here.

[0137] In a specific embodiment, the network device 1400 corresponds to the above Fig.12 In some embodiments, Figure 2 The determination module 1202 in the network transmission quality detection device shown is equivalent to the central processor 1411 or the network processor 1432 in the network device 1400 .

[0138] The embodiment of the present application also provides a communication device, which includes: a transceiver, a memory, and a processor. The transceiver, the memory, and the processor communicate with each other through an internal connection path, the memory is used to store instructions, and the processor is used to execute the instructions stored in the memory to control the transceiver to receive signals and control the transceiver to send signals, and when the processor executes the instructions stored in the memory, the processor executes the method for detecting network transmission quality.

[0139] It should be understood that the processor may be a CPU, or other general-purpose processors, DSPs, ASICs, FPGAs or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc. It is worth noting that the processor may be a processor supporting an advanced RISC machines (ARM) architecture.

[0140] Further, in an optional embodiment, the memory may include a read-only memory and a random access memory, and provide instructions and data to the processor. The memory may also include a non-volatile random access memory. For example, the memory may also store information about the device type.

[0141] The memory may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memory. Among them, the nonvolatile memory may be a ROM, a programmable read-only memory (programmable ROM, PROM), an erasable programmable read-only memory (erasable PROM, EPROM), an EEPROM or a flash memory. The volatile memory may be a RAM, which is used as an external cache. By way of example but not limitation, many forms of RAM are available. For example, static random access memory (static RAM, SRAM), dynamic random access memory (dynamic random access memory, DRAM), synchronous dynamic random access memory (synchronous DRAM, SDRAM), double data rate synchronous dynamic random access memory (doubledata rate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchronous connection dynamic random access memory (synchlink DRAM, SLDRAM) and direct memory bus random access memory (direct rambus RAM, DR RAM).

[0142] The embodiment of the present application also provides a network transmission quality detection device, the device includes a processor, the processor is used to load and run at least one instruction, so that the network transmission quality detection device implements the network transmission quality detection method provided in the embodiment of the present application. Optionally, the device also includes a memory, the memory is coupled to the processor, and the memory is used to store at least one instruction.

[0143] An embodiment of the present application also provides a computer-readable storage medium, in which at least one instruction is stored. The instruction is loaded and executed by a processor so that a computer implements any of the above-described methods for detecting network transmission quality.

[0144] The embodiments of the present application also provide a computer program (product), which, when executed by a computer, can enable a processor or a computer to execute the corresponding steps and / or processes in the above method embodiments.

[0145] An embodiment of the present application also provides a chip, which includes a processor for calling and executing instructions stored in a memory from the memory, so that a communication device equipped with the chip executes any of the above-described methods for detecting network transmission quality.

[0146] An embodiment of the present application also provides another chip, including: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute any of the network transmission quality detection methods described above.

[0147] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in this application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center to another website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) mode. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integration. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state hard disk Solid State Disk), etc.

[0148] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.) and signals involved in this application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of relevant countries and regions. For example, the transmission information involved in this application is obtained with full authorization.

[0149] Those of ordinary skill in the art will appreciate that, in conjunction with the various method steps and modules described in the embodiments disclosed herein, they can be implemented in software, hardware, firmware, or any combination thereof. In order to clearly illustrate the interchangeability of hardware and software, the steps and components of each embodiment have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Those of ordinary skill in the art may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0150] A person skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware or by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.

[0151] When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer program instructions. As an example, the method of the embodiment of the present application can be described in the context of a machine executable instruction, and the machine executable instruction is such as included in the program module executed in the device on the real or virtual processor of the target. Generally speaking, a program module includes a routine, a program, a library, an object, a class, a component, a data structure, etc., which performs a specific task or realizes a specific abstract data structure. In various embodiments, the function of the program module can be merged or divided between the described program modules. The machine executable instruction for the program module can be executed in a local or distributed device. In a distributed device, the program module can be located in both a local and a remote storage medium.

[0152] The computer program code for implementing the method of the embodiment of the present application can be written in one or more programming languages. These computer program codes can be provided to the processor of a general-purpose computer, a special-purpose computer or other programmable network transmission quality detection device, so that when the program code is executed by the computer or other programmable network transmission quality detection device, the function / operation specified in the flow chart and / or block diagram is implemented. The program code can be executed completely on a computer, partially on a computer, as an independent software package, partially on a computer and partially on a remote computer, or completely on a remote computer or server.

[0153] In the context of the embodiments of the present application, computer program codes or related data may be carried by any appropriate carrier to enable a device, apparatus or processor to perform the various processes and operations described above. Examples of carriers include signals, computer readable media, and the like.

[0154] Examples of signals may include electrical, optical, radio, acoustic or other forms of propagated signals, such as carrier waves, infrared signals, etc.

[0155] A machine-readable medium may be any tangible medium that contains or stores a program for or related to an instruction execution system, apparatus, or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More detailed examples of machine-readable storage media include an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical storage device, a magnetic storage device, or any suitable combination thereof.

[0156] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0157] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the module is only a logical function division. There may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or modules, or it can be an electrical, mechanical or other form of connection.

[0158] The modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place or distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the embodiments of the present application.

[0159] In addition, each functional module in each embodiment of the present application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above integrated modules can be implemented in the form of hardware or software functional modules.

[0160] If the integrated module is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.

[0161] In the present application, the terms "first", "second", etc. are used to distinguish between identical or similar items having substantially the same effects and functions. It should be understood that there is no logical or temporal dependency between "first", "second", and "nth", nor is there a limitation on quantity and execution order. It should also be understood that although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of the various described examples, a first image may be referred to as a second image, and similarly, a second image may be referred to as a first image. Both the first image and the second image may be images, and in some cases, may be separate and different images.

[0162] It should also be understood that in the various embodiments of the present application, the size of the serial number of each process does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0163] The term "at least one" in this application means one or more, and the term "multiple" in this application means two or more, for example, multiple second messages means two or more second messages. The terms "system" and "network" are often used interchangeably herein.

[0164] It should be understood that the terms used in the description of the various examples herein are only for describing specific examples and are not intended to be limiting. As used in the description of the various examples and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.

[0165] It should also be understood that the term "and / or" used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. The term "and / or" is a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this application generally indicates that the associated objects before and after are in an "or" relationship.

[0166] It should also be understood that the term “comprise” (also known as “includes,” “including,” “comprises” and / or “comprising”) when used in this specification specifies the presence of stated features, integers, steps, operations, elements, and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0167] It should also be understood that the terms "if" and "if" may be interpreted to mean "when" or "upon" or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined that ..." or "if [a stated condition or event] is detected" may be interpreted to mean "upon determining that ..." or "in response to determining that ..." or "upon detecting [a stated condition or event]" or "in response to detecting [a stated condition or event]," depending on the context.

[0168] It should be understood that determining B based on A does not mean determining B only based on A. B can also be determined based on A and / or other information.

[0169] It should also be understood that the references to "one embodiment", "an embodiment", or "a possible implementation" throughout the specification mean that specific features, structures, or characteristics related to the embodiment or implementation are included in at least one embodiment of the present application. Therefore, the references to "in one embodiment" or "in an embodiment", or "a possible implementation" throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.

Claims

1. A method for detecting network transmission quality, characterized in that: The method comprises: Searching for transmission information of a data message corresponding to a confirmation message in at least one stored transmission information, wherein the confirmation message is a received message indicating that the data message is successfully transmitted, the at least one transmission information is stored in the process of sending at least one data message, and there is no retransmission of the at least one data message; According to the transmission information of the data message and the message information of the confirmation message obtained by searching, the detection result of the network transmission quality corresponding to the data message is determined.

2. The method according to claim 1, characterized in that Before searching the at least one stored transmission information for the transmission information of the data message corresponding to the confirmation message, the method further includes: The transmission information of the data message is compactly represented, and the compactly represented transmission information is stored through mapping, wherein the compact representation is used to reduce the data size of the transmission information.

3. The method according to claim 2, characterized in that Before compactly representing the transmission information of the data message and storing the compactly represented transmission information through mapping, the method further includes: Acquire a retransmission information set, wherein the retransmission information set includes a message identifier of a retransmitted data message; In a case where the retransmission information set does not include the message identifier of the data message, it is determined that an operation of compactly representing the transmission information of the data message and storing the compactly represented transmission information through mapping is allowed.

4. The method according to any one of claims 1 to 3, characterized in that: The step of determining the detection result of the network transmission quality corresponding to the data message according to the transmission information of the data message and the message information of the confirmation message obtained through searching includes: Determining a transmission delay of the data message according to the transmission information of the data message and the message information of the confirmation message; The detection result of the network transmission quality is determined according to the transmission delay of the data message.

5. The method according to claim 4, characterized in that The detection result of determining the network transmission quality according to the transmission delay of the data message includes: Performing aggregate analysis on transmission delays of multiple data messages transmitted in a network to obtain a deviation of the transmission delay of the network, wherein the deviation indicates a distribution of the transmission delay of the network; When the deviation of the transmission delay exceeds a reference threshold, it is determined that the detection result of the network transmission quality is an increase in the transmission delay.

6. The method according to claim 2 or 3, characterized in that: After compactly representing the transmission information of the data message and storing the compactly represented transmission information through mapping, the method further includes: When the transmission information to be stored is the same as the transmission information of the data message, determining that the data message has been retransmitted; The transmission information of the data message is stored in a packet loss record, and when the amount of transmission information included in the packet loss record is greater than a quantity threshold, it is determined that the detection result is that a packet loss anomaly exists in the network.

7. The method according to claim 6, characterized in that After determining that the data message has been retransmitted, the method further includes: The message identifier of the data message is stored in a retransmission information set, and the retransmission information set is used to detect whether the acquired data message has been retransmitted.

8. The method according to any one of claims 1 to 7, characterized in that: After searching the at least one stored transmission information for the transmission information of the data message corresponding to the confirmation message, the method further includes: If the storage duration of any stored transmission information is not less than the reference duration and any transmission information fails to be matched successfully during the storage period, the transmission information is deleted.

9. The method according to any one of claims 1 to 8, characterized in that: The method for detecting network transmission quality is executed by a switch that transmits the data message.

10. A device for detecting network transmission quality, characterized in that: The device comprises: A search module, configured to search for transmission information of a data message corresponding to a confirmation message in at least one stored transmission information, wherein the confirmation message is a received message indicating that the data message is successfully transmitted, the at least one transmission information is stored in the process of sending at least one data message, and there is no retransmission of the at least one data message; The determination module is used to determine the detection result of the network transmission quality corresponding to the data message according to the transmission information of the data message and the message information of the confirmation message obtained by searching.

11. The device according to claim 10, characterized in that The device also includes: a storage module, which is used to compactly represent the transmission information of the data message and store the compactly represented transmission information through mapping, wherein the compact representation is used to reduce the data size of the transmission information.

12. The device according to claim 11, characterized in that The determination module is also used to obtain a retransmission information set, which includes a message identifier of a retransmitted data message; when the retransmission information set does not include the message identifier of the data message, it is determined that an operation of compactly representing the transmission information of the data message and storing the compactly represented transmission information through mapping is allowed.

13. The device according to any one of claims 10 to 12, characterized in that: The determination module is used to determine the transmission delay of the data message according to the transmission information of the data message and the message information of the confirmation message; and determine the detection result of the network transmission quality according to the transmission delay of the data message.

14. The device according to claim 13, characterized in that The determination module is used to perform an aggregate analysis on the transmission delays of multiple data packets transmitted in the network to obtain the deviation of the transmission delay of the network, and the deviation indicates the distribution of the transmission delay of the network; when the deviation of the transmission delay exceeds a reference threshold, it is determined that the detection result of the network transmission quality is an increase in the transmission delay.

15. The device according to claim 11 or 12, characterized in that The determining module is further configured to determine whether the data message has been retransmitted when the transmission information to be stored is the same as the transmission information of the data message; The transmission information of the data message is stored in a packet loss record, and when the amount of transmission information included in the packet loss record is greater than a quantity threshold, it is determined that the detection result is that a packet loss anomaly exists in the network.

16. The device according to claim 15, characterized in that The storage module is further used to store the message identifier of the data message in a retransmission information set, and the retransmission information set is used to detect whether the acquired data message has been retransmitted.

17. The device according to any one of claims 10 to 16, characterized in that: The device further comprises: a deleting module, configured to delete any transmission information if the storage duration of any transmission information is not less than the reference duration and the transmission information fails to be matched successfully during the storage period.

18. The device according to any one of claims 10 to 17, characterized in that: The network transmission quality detection device is applied to a switch that transmits the data message.

19. A device for detecting network transmission quality, characterized in that: The device includes a processor, and the processor is used to load and execute at least one instruction so that the network transmission quality detection device can implement the network transmission quality detection method described in any one of claims 1-9.

20. The device according to claim 19, characterized in that The device also includes a memory coupled to the processor, wherein the at least one instruction is stored in the memory.

21. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores at least one instruction, and the instruction is loaded and executed by the processor to implement the method for detecting network transmission quality as described in any one of claims 1-9.

22. A chip, characterized in that: The chip includes a processor, and the processor is used to run program instructions or codes, so that a device including the chip executes the method for detecting network transmission quality as described in any one of claims 1-9.

23. The chip according to claim 22, characterized in that: The chip further includes: an input interface, an output interface and a memory. The input interface, the output interface, the processor and the memory are connected via an internal connection path. The memory contains the program instructions or codes.