Network performance measurement method and related apparatus

By using probe messages with different packet sending frequencies and dynamic QoS policies in the wide area network, the balance problem between accuracy and overhead in network performance measurement is solved, the accuracy of network performance measurement and user experience are improved, and the transmission of high-priority data streams is guaranteed.

WO2025209073A1PCT designated stage Publication Date: 2025-10-09HUAWEI TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/079780
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-30
Filing Date
2025-02-28
Publication Date
2025-10-09

AI Technical Summary

Technical Problem

Existing network performance measurement technologies have difficulty balancing measurement accuracy and communication overhead in wide area network scenarios, resulting in low detection accuracy or high communication overhead, and unable to effectively guarantee user experience.

Method used

The dial-up test device sends probe packets at different packet sending frequencies, dynamically adjusts the QoS policy based on the network performance measurement results, simulates the real data flow to construct the dial-up test flow, and sends probe packets hop by hop to obtain accurate network performance measurement results.

Benefits of technology

It achieves a balance between communication overhead and network performance measurement accuracy in wide area network scenarios, improves the accuracy of network performance measurement and user experience, and dynamically adjusts QoS policies to ensure the transmission of high-priority data streams.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025079780_09102025_PF_FP_ABST
    Figure CN2025079780_09102025_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed in embodiments of the present application are a network performance measurement method and a related apparatus. The method comprises: a probing apparatus sends a plurality of first probe packets to a target device at a slow first packet sending frequency to obtain a first probe result, wherein the plurality of first probe packets occupy small communication overhead; and when the first probe result satisfies a first condition, the probing apparatus sends a plurality of second probe packets to the target device at a fast second packet sending frequency to obtain a high-precision second probe result. The communication overhead and the network performance measurement precision are both considered, and the user cost is reduced, so that network performance measurement in a wide area network scenario becomes possible. For example, the probing apparatus may be a core switch or an aggregation switch in a campus network, and the target device may be a media server in a wide area network.
Need to check novelty before this filing date? Find Prior Art

Description

A network performance measurement method and related device

[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office on March 30, 2024, with application number 202410396224.2 and application name “A network performance measurement method and related devices”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of communication technology, and in particular to a network performance measurement method and related devices. Background Art

[0003] With the development of technology, wide area network (WAN)-based technologies have become widely used, such as enabling long-distance audio and video conferencing through WAN. To ensure user experience, it is necessary to accurately measure the network quality of the WAN to determine whether the network has experienced any network failures.

[0004] Currently common network performance measurement technologies such as ping technology or traceroute are oriented towards general network scenarios. Since actual business scenarios often differ from general network scenarios, when using technologies such as ping to measure actual wide area network business scenarios, a large number of probe messages often need to be sent in order to improve measurement accuracy. However, sending a large number of probe messages will bring about the problem of high communication overhead. In order to reduce the communication overhead occupied by the probe messages, it is possible to choose to send fewer probe messages, but this will result in low detection accuracy. Therefore, it is difficult for current network performance measurement technologies to balance measurement accuracy and communication overhead in wide area network scenarios, and there is an urgent need for a network performance measurement method suitable for wide area network scenarios. Summary of the Invention

[0005] This application proposes a network performance measurement method and related device. The dial-up test device obtains network performance measurement results by sending probe messages at different packet transmission frequencies. This method balances communication overhead and network performance measurement accuracy, saving user costs and making network performance measurement possible in wide area network scenarios.

[0006] In a first aspect, the present application proposes a network performance measurement method, the method comprising:

[0007] First, the dialing device sends a plurality of first detection messages to the target device at a first packet sending frequency to obtain a first detection result, wherein the first detection result indicates the network performance between the dialing device and the target device; then, in response to the first detection result satisfying the first condition, the dialing device sends a plurality of second detection messages to the target device at a second packet sending frequency to obtain a second detection result, wherein the second detection result indicates the network performance between the dialing device and the target device, and the second packet sending frequency is greater than the first packet sending frequency.

[0008] In this application, the detection message sent by the dialing test device for measuring network performance may also be referred to as a dialing test message.

[0009] Exemplarily, the dialing and testing device may be a core switch or an aggregation switch in a campus network.

[0010] For example, network performance includes: packet loss rate and / or latency. Network performance may also include other indicators, such as jitter or bit error rate, etc., which are not limited in the embodiments of the present application.

[0011] In a possible implementation, the first condition includes: a packet loss rate between the dialing device and the target device is greater than or equal to a first threshold, and / or a delay between the dialing device and the target device is greater than or equal to a second threshold.

[0012] In one possible implementation, the first condition further includes: the jitter between the dialing device and the target device is greater than or equal to a fifth threshold, and / or the bit error rate between the dialing device and the target device is greater than or equal to a sixth threshold; the second condition includes: the jitter between the dialing device and the target device is greater than or equal to a seventh threshold, and / or the bit error rate between the dialing device and the target device is greater than or equal to an eighth threshold.

[0013] In one possible implementation, the seventh threshold is greater than the fifth threshold, and the eighth threshold is greater than the sixth threshold. Through the above method, the threshold for detecting performance failures using the fast dialing test flow (the second probe message) is greater than the threshold for detecting performance failures using the slow dialing test flow (the first probe message), thereby preventing the dialing test device from frequently determining that a network performance failure has occurred, reducing false alarm rates, and improving the user experience.

[0014] It should be noted that the seventh threshold may also be equal to the fifth threshold, and the eighth threshold may also be equal to the sixth threshold, and this embodiment of the present application does not limit this.

[0015] An example scenario is as follows: In a wide area network scenario, the dialing test device is deployed in a core switch, and the target device is a media server. The dialing test device (core switch) sends multiple first detection messages to the target device (media server) at a first packet sending frequency (the first packet sending frequency is, for example, 1 first detection message sent every 10 seconds) to obtain a first detection result. The first detection result is as follows: packet loss rate 3%, delay 20 milliseconds (ms). The first condition is: packet loss rate 2%, and / or, delay 15 milliseconds. Therefore, the first detection result meets the first condition, and the dialing test device sends multiple second detection messages to the target device (media server) at a second packet sending frequency (the second packet sending frequency is, for example, 50 first detection messages sent every 10 seconds) to obtain a second detection result. The second detection result is as follows: packet loss rate 10%, delay 100 milliseconds (ms).

[0016] Using this method, the dialing device sends multiple first probe messages to the target device at a slower first packet transmission frequency to obtain a first detection result. These multiple first probe messages consume less communication overhead. When the first detection result meets the first condition, the dialing device sends multiple second probe messages to the target device at a faster second packet transmission frequency to obtain a highly accurate second detection result. This balances communication overhead with network performance measurement accuracy, saving user costs.

[0017] In conjunction with the first aspect, in a possible implementation of the first aspect, the method further includes:

[0018] In response to the second detection result satisfying the second condition, the dialing and testing apparatus sends multiple detection messages to multiple nodes on the path between the dialing and testing apparatus and the target device hop by hop to obtain a network performance measurement result.

[0019] Through the above method, when the second probe result meets the second condition, the dialing test device is triggered to perform a more accurate network performance measurement. The dialing test device sends multiple probe messages hop by hop to multiple nodes along the path from the dialing test device to the target device. The obtained network performance measurement results indicate the network performance of each of these multiple nodes. Therefore, compared to the second probe result, the network performance test results have the advantage of higher measurement accuracy, facilitating the dialing test device to accurately identify the node on the path experiencing performance failures.

[0020] In conjunction with the first aspect, in a possible implementation of the first aspect, the method further includes:

[0021] The dialing and testing device obtains the flow characteristic information of the real data flow sent by the target device and then constructs and sends a plurality of second detection messages according to the flow characteristic information of the real data flow.

[0022] For example, a real data stream for a video conferencing application has the following flow characteristics: a packet size of 500 kilobytes (KB), a packet transmission frequency of 10 packets per 10 seconds, a number of consecutive packets of 4 packets per 10 seconds, and a DSCP value of 34. The dialing test device constructs and sends multiple second probe messages based on the flow characteristics of the real data stream. The second probe messages have a packet size of 500 KB, are sent every 10 seconds, have a DSCP value of 34, and are sent consecutively in 10 seconds.

[0023] Through the above method, the dial test device simulates the real data flow of the application to construct a dial test flow (the dial test flow refers to a data flow composed of multiple second detection messages), thereby improving the measurement accuracy of network performance.

[0024] In conjunction with the first aspect, a possible implementation of the first aspect further includes:

[0025] According to the flow characteristic information of the real data flow, multiple detection messages are constructed and sent to multiple nodes respectively.

[0026] Through the above method, the dial test device simulates the real data flow of the application to construct a dial test flow (the dial test flow refers to a data flow composed of multiple detection messages), thereby improving the measurement accuracy of network performance.

[0027] In combination with the first aspect, in a possible implementation of the first aspect, the flow characteristic information of the real data flow includes any one or more of the following: Internet Protocol (IP) five-tuple information of the real data flow, the packet sending frequency of the real data flow, the packet sending interval of the real data flow, the message size of the real data flow, the number of continuous messages in the real data flow, the duration of continuous messages in the real data flow, or the Differentiated Services Code Point (DSCP) of the message in the real data flow.

[0028] For example, the dial test device simulates the packet size of the real data flow, the number of packets sent in a single time in the real data flow, and the DSCP value of the packets in the real data flow, constructs and sends the dial test flow, and improves the measurement accuracy of network performance.

[0029] In conjunction with the first aspect, in a possible implementation of the first aspect, the method further includes:

[0030] According to the network performance measurement result, the dialing test device jointly adjusts the quality of service (QoS) policy of the target interface.

[0031] Based on the above scheme, the QoS policy of the prior art allocates fixed transmission rates (or bandwidth resources) to data streams of different priorities. Therefore, when network congestion occurs, it is impossible to dynamically adjust the transmission rates of data streams of different priorities carried by the port according to the QoS policy, and it is impossible to effectively guarantee the transmission of high-priority data streams. In this application, the QoS policy of the target interface is dynamically adjusted to adjust the transmission rate of the data stream carried by the interface, thereby guaranteeing the transmission of high-priority data streams. For example, the data stream of the video conferencing service is given priority.

[0032] By using the above method, the QoS policy of the target interface is dynamically adjusted according to the network performance measurement results, which can reduce user costs and improve user experience.

[0033] In conjunction with the first aspect, a possible implementation of the first aspect further includes:

[0034] According to the network performance measurement result, the dialing and testing device sends instruction information to the target node, and the instruction information instructs the target node to adjust the QoS policy of the target interface.

[0035] Exemplarily, the target node may be a boundary node on the path, such as a gateway.

[0036] Through the above method, the dialing test device can not only adjust the QoS policy of its own target interface, but also adjust the QoS policy of the target interface in the target node, thereby improving the implementation flexibility of the solution.

[0037] In combination with the first aspect, in a possible implementation of the first aspect, adjusting the QoS policy of the target interface includes: adjusting the transmission rate of data flows of different services carried by the target interface; and / or adjusting the priority queues (Priority Queuing, PQ) of data flows of different services carried by the target interface. In combination with the first aspect, in a possible implementation of the first aspect, adjusting the QoS policy of the target interface includes: reducing the transmission rate of data flows of low-priority services carried by the target interface, or increasing the transmission rate of data flows of high-priority services carried by the target interface; and / or adjusting the priority queue PQ of data flows of low-priority services carried by the target interface from a first PQ to a second PQ, the priority of the second PQ being lower than the priority of the first PQ, or adjusting the priority queue PQ of data flows of high-priority services carried by the target interface from a third PQ to a fourth PQ, the priority of the fourth PQ being higher than the priority of the third PQ.

[0038] Specifically, in priority queue scheduling, data in a higher priority PQ is transmitted first. After data in a higher priority PQ is scheduled, data in a lower priority PQ is scheduled.

[0039] Exemplarily, the target interface carries the data flow of the video conferencing service, the data flow of the voice service, and the data flow of the email service, wherein the data flow of the video conferencing service is related to the video conferencing application, and the data flow of the video conferencing service has the highest priority; the data flow of the voice service is related to the voice application, and the data flow of the voice service has the second highest priority; the data flow of the email service is related to the email application, and the data flow of the email service has the lowest priority. Adjusting the QoS policy of the target interface includes: preferentially reducing the transmission rate of the data flow of the email service, and the transmission rate of the data flow of the voice service. In the above manner, the transmission rate of the data flow of the video conferencing service with the highest priority is guaranteed.

[0040] In combination with the first aspect, in a possible implementation of the first aspect, adjusting the QoS policy of the target interface includes: reducing the transmission rate of the non-video conferencing data flow carried by the target interface; and / or adjusting the priority queue PQ of the non-video conferencing data flow carried by the target interface from a first PQ to a second PQ, the priority of the second PQ being lower than that of the first PQ.

[0041] Through the above method, the dialing test device can adjust the QoS policy of the target interface in multiple ways, thereby improving the implementation flexibility of the solution.

[0042] In combination with the first aspect, in a possible implementation of the first aspect, reducing the transmission rate of the non-video conferencing data flow carried by the target interface includes: reducing the downlink committed access rate (Committed Access Rate, CAR) of the non-video conferencing data flow carried by the target interface; or, reducing the traffic shaping (Traffic Shaping, TS) rate of the non-video conferencing data flow carried by the target interface.

[0043] With reference to the first aspect, in a possible implementation of the first aspect, the network performance measurement result further includes: identification information of a node where a performance failure occurs.

[0044] The node where the performance failure occurs may also be referred to as a faulty node, and the identification information may be address information.

[0045] Through the above method, the identification information of the node where the performance failure occurs is clearly indicated in the network performance measurement result, which is convenient for user maintenance and management, improves the convenience of use, and enhances the user experience.

[0046] In conjunction with the first aspect, in a possible implementation of the first aspect, sending multiple probe messages hop by hop to multiple nodes on a path between the dialing device and the target device includes:

[0047] When the target device does not respond to the second probe message, the dialing device sends multiple probe messages hop by hop to multiple nodes on the path between the dialing device and the farthest response node. The farthest response node is the node on the path between the dialing device and the target device that responds to the second probe message and is the farthest from the dialing device in terms of hops.

[0048] For example, the path between the dialing device and the target device passes through nodes R1, R2, R3, and R4. The dialing device sends multiple second probe messages to the target device. Because the target device does not respond to the second probe messages, the dialing device sends second probe messages hop by hop along the multi-hop node along the path and finds that the farthest node that responds to the second probe message is node R4. The dialing device sends multiple probe messages hop by hop to nodes R1, R2, R3, and R4.

[0049] Specifically, because the target device may be behind a firewall, which may automatically intercept the probe messages sent by the dial-up test device, the dial-up test device sends multiple probe messages to the farthest answering node to obtain the most comprehensive detection results. This method improves the accuracy of network performance measurement results.

[0050] In conjunction with the first aspect, in a possible implementation of the first aspect, sending multiple probe messages hop by hop to multiple nodes on a path between the dialing device and the target device to obtain a network performance measurement result includes:

[0051] The dialing device sends multiple probe messages hop by hop to one or more nodes in the campus network on the path between the dialing device and the target device to obtain network performance measurement results. The network performance measurement results indicate that the node with performance failure is located in the campus network or in the wide area network.

[0052] Using this method, the dialing test device can prioritize sending multiple probe messages to nodes on the campus network along the path to determine whether the node experiencing the performance failure is located on the campus network. If the node experiencing the performance failure is not located on the campus network, it can directly determine that the node experiencing the performance failure is located on the wide area network. This reduces communication overhead and detection time, improving the user experience.

[0053] In conjunction with the first aspect, in a possible implementation of the first aspect, sending multiple probe messages hop by hop to one or more nodes located in a campus network on a path between the dialing device and the target device includes:

[0054] First, the dial testing device obtains configuration information, which indicates the boundary nodes on the path between the dial testing device and the target device. The nodes between the dial testing device and the boundary nodes belong to the campus network, and the nodes between the boundary nodes and the target device belong to the wide area network. Then, based on the configuration information, the dial testing device sends multiple probe messages hop by hop to one or more nodes of the dial testing device located in the campus network.

[0055] In this embodiment, users can configure the boundary nodes between the wide area network and the campus network through configuration information. Therefore, the dialing device can directly determine the boundary nodes from the configuration information and, based on the boundary nodes, determine which nodes belong to the campus network. This reduces communication overhead and detection time, improving the user experience.

[0056] In combination with the first aspect, in a possible implementation of the first aspect, the quality of service QoS policy of the target interface includes any one or more of the following information: the priority of the data flow carried by the target interface, the downstream bandwidth upper limit of the path, the ratio of the bandwidth value of the real data flow to the downstream bandwidth upper limit of the path, the bandwidth upper limit of the real data flow, the bandwidth lower limit of the real data flow, the bandwidth increase ratio of the real data flow, the bandwidth decrease ratio of the real data flow, the transmission rate upper limit of the real data flow, the transmission rate lower limit of the real data flow, the transmission rate increase ratio of the real data flow, or the transmission rate decrease ratio of the real data flow.

[0057] Through the above method, the QoS policy of the target interface can support multiple types of information, improving the implementation flexibility of the solution. In conjunction with the first aspect, in one possible implementation of the first aspect, after obtaining the network performance measurement results, the method further includes: the dialing device sends multiple first probe messages to the target device to obtain a third probe result, where the third probe result indicates the network performance between the dialing device and the target device. Then, when the third probe result meets the third condition, the QoS policy of the target interface is adjusted.

[0058] Specifically, if the third detection result satisfies the third condition, the dialing device may determine that the network quality of the path between the dialing device and the target device has returned to normal, or that the network quality of the path meets the requirements of the service carried by the target interface, or that the network quality of the path has stopped deteriorating. Therefore, the dialing device may adjust the QoS policy of the target interface in response to the third detection result satisfying the third condition.

[0059] In one example, the third condition includes: a packet loss rate between the test device and the target device is less than a first threshold; a latency between the test device and the target device is less than a second threshold; a jitter between the test device and the target device is less than a fifth threshold; and / or a bit error rate between the test device and the target device is less than a sixth threshold. When the third detection result satisfies the third condition, network performance between the test device and the target device has returned to normal.

[0060] In another example, the third condition includes: multiple third detection results obtained by the dialing device remain unchanged during the first time period. When the third detection results meet the third condition, it means that the network performance between the dialing device and the target device has not deteriorated further during the first time period.

[0061] Through the above method, after the network performance returns to normal or no longer deteriorates, the dial-up testing device can dynamically adjust the QoS policy of the target interface to increase the transmission rate of low-priority data flows, thereby increasing data throughput and improving user experience.

[0062] In combination with the first aspect, in a possible implementation of the first aspect, adjusting the QoS policy of the target interface includes: the dialing device increasing the transmission rate of the non-video conferencing data flow carried by the target interface; and / or the dialing device adjusting the priority queue PQ of the non-video conferencing data flow carried by the target interface from the third PQ to the fourth PQ, and the priority of the fourth PQ is higher than that of the third PQ.

[0063] Through the above method, the dialing test device can adjust the QoS policy of the target interface in multiple ways, thereby improving the implementation flexibility of the solution.

[0064] In conjunction with the first aspect, in a possible implementation of the first aspect, the method further includes:

[0065] The dialing detection device constructs and sends a plurality of first detection messages according to the flow characteristic information of the real data flow.

[0066] Through the above method, the dialing test device can also simulate the flow characteristic information of the real data flow during the process of constructing the slow dialing test flow, thereby improving the detection accuracy of the network performance.

[0067] In a second aspect, an embodiment of the present application provides a network performance measurement method, which is applied to a controller and includes:

[0068] First, the controller obtains a network performance measurement result reported by the dialing device, where the network performance measurement result indicates the network performance of a path between the dialing device and the target device;

[0069] The controller then adjusts the QoS policy of the target interface based on the network performance measurement results.

[0070] Specifically, the target interface's QoS policy is used to carry the actual data flow of the service (or application). By adjusting the target interface's QoS policy, the transmission rate of the data flow carried by the interface is adjusted to ensure the transmission of high-priority data flows. For example, the data flow of the video conferencing service is prioritized.

[0071] Through the above method, the controller dynamically adjusts the QoS policy of the target interface according to the network performance measurement results, which can reduce user costs and improve user experience.

[0072] In combination with the second aspect, the dialing device in any possible implementation of the second aspect is like any possible implementation of the first aspect, and is not described in detail here.

[0073] In a third aspect, an embodiment of the present application proposes a communication device, which includes a processing module and a transceiver module, and is used to execute the method of the aforementioned first aspect and any one of the first aspects.

[0074] In one example, the communication device specifically includes:

[0075] The transceiver module is configured to send a plurality of first detection messages to the target device at a first packet sending frequency to obtain a first detection result, where the first detection result indicates the network performance between the dialing device and the target device;

[0076] The transceiver module is further configured to, in response to the first detection result satisfying the first condition, send multiple second detection messages to the target device at a second packet sending frequency to obtain a second detection result, wherein the second detection result indicates the network performance between the dialing device and the target device, and the second packet sending frequency is greater than the first packet sending frequency.

[0077] In one possible implementation,

[0078] The transceiver module is further configured to send multiple detection messages hop by hop to multiple nodes on the path between the dialing device and the target device in response to the second detection result satisfying a second condition, so as to obtain a network performance measurement result.

[0079] In one possible implementation,

[0080] The transceiver module is further configured to obtain flow characteristic information of the real data flow sent by the target device;

[0081] The transceiver module is further configured to construct and send the plurality of second detection messages to the target device according to the flow feature information of the real data flow.

[0082] In one possible implementation,

[0083] The transceiver module is further configured to construct and send the multiple detection messages to the multiple nodes respectively according to the flow feature information of the real data flow.

[0084] In one possible implementation,

[0085] The flow characteristic information of the real data flow includes any one or more of the following:

[0086] Internet Protocol (IP) quintuple information of the real data stream, packet sending frequency of the real data stream, packet sending interval of the real data stream, message size of the real data stream, number of consecutive messages in the real data stream, duration of consecutive messages in the real data stream, or Differentiated Services Code Point (DSCP) of messages in the real data stream.

[0087] In one possible implementation,

[0088] The processing module is used to adjust the quality of service (QoS) policy of the target interface according to the network performance measurement result.

[0089] In a fourth aspect, an embodiment of the present application proposes a communication device, which includes a processing module and a transceiver module, and is used to execute the method of the aforementioned second aspect and any one of the second aspects.

[0090] In one example, the communication device specifically includes:

[0091] a transceiver module, configured to obtain a network performance measurement result, wherein the network performance measurement result indicates the network performance of a path between the dialing test apparatus and the target device;

[0092] The processing module is used to adjust the quality of service (QoS) policy of the target node according to the network performance measurement result.

[0093] In a fifth aspect of an embodiment of the present application, a chip is provided, which includes an interface circuit and a processing circuit, the interface circuit and the processing circuit are interconnected by a line, and the processing circuit is used to run a computer program or instruction to perform the first aspect, any possible implementation of the first aspect, the second aspect, and / or the method of any possible implementation of the second aspect. Exemplarily, the chip provided in the fifth aspect can be specifically used to implement the communication device described in the third aspect or the fourth aspect, and to perform some or all of the operations of the various methods described above. When the chip is used as the communication device, the interface circuit can be used to implement the operations performed by the transceiver module, and the processing circuit can be used to implement the operations performed by the processing module.

[0094] In a sixth aspect of an embodiment of the present application, a chip is provided, which includes at least one processor and a communication interface, the communication interface and the at least one processor are interconnected by lines, and the at least one processor is used to run computer programs or instructions to perform the first aspect, any possible implementation method of the first aspect, the second aspect, and / or the method of any possible implementation method of the second aspect.

[0095] Illustratively, in the chip provided in the sixth aspect, the communication interface may be an input / output interface, a pin, or a circuit, etc.

[0096] In conjunction with the sixth aspect, in one implementation of the sixth aspect of the embodiments of the present application, the chip described above in the present application further includes at least one memory, wherein the at least one memory stores instructions. The memory can be a storage unit within the chip, such as a register, a cache, etc., or can be a storage unit of the chip (such as a read-only memory, a random access memory, etc.).

[0097] A seventh aspect of an embodiment of the present application provides a communication device, comprising at least one processor coupled to a memory; the memory is used to store programs or instructions; the at least one processor is used to execute the program or instructions so that the device implements the method described in the aforementioned first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect.

[0098] An eighth aspect of an embodiment of the present application provides a communication device, comprising a communication interface for inputting and / or outputting signaling or data; a processor for executing a computer-executable program so that the device implements the method described in the aforementioned first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect.

[0099] A ninth aspect of an embodiment of the present application provides a communication device, comprising at least one logic circuit and an input / output interface; the input / output interface is used to input or output information; through the logic circuit and the input / output interface, the method described in the first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect is implemented.

[0100] A tenth aspect of the present application provides a communication system, comprising the communication device of the third aspect and / or the communication device of the fourth aspect mentioned above.

[0101] In the eleventh aspect of the present application, a computer-readable storage medium is provided, in which a computer program is stored. When the computer program runs on a processor, the method described in the first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect is executed.

[0102] The twelfth aspect of the present application provides a computer program product, including a computer program, which, when running on a computer, executes the method described in the first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect.

[0103] The thirteenth aspect of the present application provides a communication system, which includes a communication device, wherein the communication device is used to execute the method described in the first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect.

[0104] Illustratively, the communication system provided in the thirteenth aspect of the present application includes: the communication device described in the third aspect above, and / or the communication device described in the fourth aspect above.

[0105] The fourteenth aspect of the present application provides a communication system, which includes a communication device and a controller, wherein the communication device is used to execute any method as described in the first aspect above, and the controller is used to control and manage one or more forwarding nodes on the path where the communication device is located.

[0106] Optionally, the controller is also used to control and manage the communication device.

[0107] In the fifteenth aspect, the present application provides a communication system, which includes a first entity and / or a second entity, and is used to execute the method described in the first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect.

[0108] In conjunction with the fifteenth aspect, in an implementation of the fifteenth aspect of the embodiment of the present application, the first entity and / or the second entity are functional modules that perform various operations in the communication system. For example, the first entity is a transceiver module, and the second entity is a processing module.

[0109] In conjunction with the fifteenth aspect, in an implementation manner of the fifteenth aspect of the embodiment of the present application, the first entity is a dialing device, and the second entity is a controller;

[0110] The first entity is configured to execute the method as described in the first aspect or any possible implementation of any possible implementation of the first aspect;

[0111] The second entity is used to execute the method described in any possible implementation of any possible implementation of the second aspect and the first and second aspects.

[0112] In conjunction with the fifteenth aspect, in an implementation manner of the fifteenth aspect of the embodiment of the present application, the first entity is a dialing device, and the second entity is a controller;

[0113] The second entity adjusts the quality of service (QoS) policy of the target interface in the first entity according to the network performance measurement result.

[0114] In the sixteenth aspect of the present application, a computer-readable storage medium is provided, which stores instructions. When the instructions are executed on a processor, the method described in the first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect is executed.

[0115] In aspect seventeen, the present application provides a computer program product, which includes a computer program. When a processor runs the computer program, it executes the method described in the first aspect, any possible implementation of the first aspect, the second aspect, and / or any possible implementation of any possible implementation of the second aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0116] FIG1 is a topological diagram of a communication system involved in an embodiment of the present application;

[0117] FIG2 is a topological diagram of another communication system involved in an embodiment of the present application;

[0118] FIG3 is a schematic diagram of a topological structure of a communication system according to an embodiment of the present application;

[0119] FIG4 is a schematic diagram of a communication scenario;

[0120] FIG5 is a flow chart of an embodiment of a method for measuring network performance according to an embodiment of the present application;

[0121] FIG6 is a flow chart of another embodiment of a method for measuring network performance according to an embodiment of the present application;

[0122] FIG7 is a schematic diagram of a QoS policy in an embodiment of the present application;

[0123] FIG8 is a schematic diagram of another QoS strategy in an embodiment of the present application;

[0124] FIG9 is a schematic diagram of an application scenario in an embodiment of the present application;

[0125] FIG10 is a schematic diagram of an application scenario in an embodiment of the present application;

[0126] FIG11 is a schematic diagram of an application scenario in an embodiment of the present application;

[0127] FIG12 is a schematic diagram of a network performance measurement result in an embodiment of the present application;

[0128] FIG13 is a schematic diagram of a network performance measurement result in an embodiment of the present application;

[0129] FIG14 is a schematic diagram of an application scenario in an embodiment of the present application;

[0130] FIG15 is a schematic diagram of another application scenario in an embodiment of the present application;

[0131] FIG16 is a schematic structural diagram of a communication device 1600 provided in an embodiment of the present application;

[0132] FIG17 is a schematic structural diagram of a communication device 1700 provided in an embodiment of the present application;

[0133] FIG18 is a schematic structural diagram of a communication device 1800 provided in an embodiment of the present application;

[0134] FIG19 is a schematic diagram of a communication system 1900 proposed in an embodiment of the present application;

[0135] FIG20 is a schematic diagram of a communication system 2000 proposed in an embodiment of the present application. DETAILED DESCRIPTION

[0136] The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequential order. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances, and this is merely a way of distinguishing the objects of the same attributes when describing them in the embodiments of the present application. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, so that the process, method, system, product or equipment comprising a series of units need not be limited to those units, but may include other units that are not clearly listed or inherent to these processes, methods, products or equipment.

[0137] First, some concepts involved in the embodiments of this application are introduced.

[0138] 1. Wide Area Network (WAN).

[0139] A wide area network (or WAN for short) refers to an Internet network with a coverage area ranging from tens to thousands of kilometers, used for long-distance communication between enterprises or organizations and to achieve information and resource sharing over a large area.

[0140] 2. Campus network.

[0141] A campus network (or simply campus network) generally refers to the internal network of an enterprise or organization, related to wide area interconnection and data centers. The primary purpose of a campus network is to enable more efficient operations of an enterprise's core business. Campus networks can generally be categorized into small, medium, and large campus networks based on the number of end users or network elements.

[0142] 3. Dial testing technology.

[0143] Dial-up probing is a common technique for monitoring network quality. Probe messages are sent by a dial-up probing device (also known as a dial-up probing point) to measure network quality, allowing operators to promptly identify network failures. These probe messages can simulate actual service traffic.

[0144] 4. Address information.

[0145] The address information in the embodiment of the present application includes an Internet protocol (IP) quintuple. Specifically, the IP quintuple includes: a source IP address, a destination IP address, a source port number, a destination port number, and a transport layer protocol.

[0146] 5. Differentiated Services Code Point (DSCP).

[0147] Based on the differentiated service (Diff-Serv) quality of service (QoS) classification standard, the Differentiated Services Code Point (DSCP) uses the 6 used bits and 2 unused bits in the type of service (TOS) byte of each packet's IP header to distinguish priorities through the coded value. Each DSCP code value is mapped to a defined per-hop behavior (PHB) identifier. By entering the DSCP value, terminal devices can identify traffic.

[0148] Next, the communication system involved in the embodiment of the present application is introduced. For example, please refer to Figure 1, which is a topological diagram of a communication system involved in the embodiment of the present application. The communication system shown in Figure 1 can be divided into two parts: a campus network and a wide area network, and the campus network can be further divided into a campus wireless network and a campus wired network. Specifically, the campus wireless network refers to the network between the terminal device and the access point (AP); the campus wired network refers to the network from the access point through the access network device, the aggregation switch, the core switch to the gateway. The network from the gateway to the server side belongs to the wide area network, and the wide area network can also include other network elements, such as: SFU selective forwarding unit (SFU), Software as a Service (SaaS) server, media server, content distribution network (CDN), core network equipment, or Internet Data Center (IDC), etc.

[0149] The terminal device of the embodiment of the present application, which may also be referred to as user equipment (UE), mobile station (MS), mobile terminal (MT), terminal, etc., is a device that provides voice and / or data connectivity to a user, or a chip set in the device, for example, a handheld device with wireless connection function, a vehicle-mounted device, etc. Currently, some examples of terminal devices include: mobile phones, desktop computers, tablet computers, laptop computers, PDAs, mobile internet devices (MIDs), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, or 5G-residential gateway devices (5G-RG) supporting 5G access, etc.

[0150] Taking Figure 1 as an example, the dialing test device proposed in the embodiment of the present application can be deployed on any device in the campus network. For example, the dialing test device can be deployed on a terminal device, and the terminal device implements the functions of the dialing test device proposed in the embodiment of the present application. For another example, the dialing test device can be deployed on an access point, and the access point implements the functions of the dialing test device proposed in the embodiment of the present application. For another example, the dialing test device can be deployed on an access network device, and the access network device implements the functions of the dialing test device proposed in the embodiment of the present application. For another example, the dialing test device can be deployed on an aggregation switch, and the aggregation switch implements the functions of the dialing test device proposed in the embodiment of the present application. For another example, the dialing test device can be deployed on a core switch, and the core switch implements the functions of the dialing test device proposed in the embodiment of the present application. For another example, the dialing test device can be deployed on a gateway, and the gateway implements the functions of the dialing test device proposed in the embodiment of the present application.

[0151] It is understood that the campus network shown in Figure 1 is only an example. When this solution is actually applied, the campus network may include more or fewer devices, and the embodiments of the present application do not limit this. An example is shown in Figure 2, which is a topological diagram of another communication system involved in the embodiments of the present application. The communication system includes: terminal device A, terminal device B, switch C, switch D, internet service provider (ISP) router-A, ISP router-B, router R1, router R2, router R3, router R4, router R5, router R6, router R7, router R8 and data center IDC. Among them, terminal device A, terminal device B, switch C and switch D belong to the campus network; ISP router-A, ISP router-B, router R1, router R2, router R3, router R4, router R5, router R6, router R7, router R8 and data center IDC belong to the wide area network.

[0152] In addition, the dialing test device proposed in the embodiment of the present application can be deployed not only in the campus network, but also in other networks relative to the wide area network, and the embodiment of the present application does not limit this.

[0153] Please refer to Figure 3, which is a schematic diagram of a communication scenario. The path passing through: access network equipment, switches, gateways, routers, and data centers is used as an example for explanation. The wide area network includes: data centers and routers; the campus network includes: gateways, switches, access network equipment, and terminal devices (terminal device 1 and terminal device 2). Typically, users who manage campus networks will apply to operators to purchase contracted bandwidth for the campus network to access the wide area network. The contracted bandwidth refers to the theoretical maximum achievable rate of the campus network accessing the wide area network. Therefore, this contracted bandwidth is also the maximum downlink bandwidth of the router in the wide area network connected by the gateway. The downlink direction refers to the direction from the wide area network to the campus network. When a terminal device runs an application, one or more data streams are established between the terminal device and the data center. For example, in Figure 3, data stream 1 of terminal device 1 is the data stream for video conferencing services, data stream 2 of terminal device 1 is the data stream for downloading application services, and data stream 3 of terminal device 2 is the data stream for video conferencing services. In one possible scenario, the sum of the bandwidths of data streams 1, 2, and 3 exceeds the contracted bandwidth, causing a network failure at the router. Data streams 1, 2, and 3 are indiscriminately lost at the router, affecting the user experience.

[0154] Because network failures can affect the normal operation of communication services, various network performance measurement methods are currently available to determine whether a network failure has occurred, thereby ensuring user experience based on the network performance measurement results. For example, for campus networks, the Internet Packet Conservation Algorithm (IPCA) can be used to measure air interface quality and the hop-by-hop service level agreement (SLA). For wide-area networks, commonly used network performance measurement methods include ping technology or traceroute.

[0155] However, wide area network performance measurement methods are typically oriented towards general network scenarios. Because actual service scenarios often differ from general network scenarios, using technologies such as ping to measure actual wide area network service scenarios can result in low measurement accuracy.

[0156] To address the problem of low network performance measurement accuracy, one approach is to improve it by sending a large number of probe messages. However, sending a large number of probe messages leads to high communication overhead. To reduce the communication overhead occupied by probe messages, one can choose to send fewer probe messages, but this will also result in low detection accuracy. Therefore, current network performance measurement methods find it difficult to balance measurement accuracy and communication overhead in wide area network scenarios. In addition, wide area network network elements are usually managed by operators, and users (such as enterprises) can usually only manage network elements within the campus network. When a network failure (such as network congestion) occurs in a wide area network, users cannot resolve the network failure by configuring quality of service (QoS) on the wide area network network elements. Users often have no choice but to purchase more network bandwidth to resolve network congestion. As a result, the user experience is reduced and user costs are increased.

[0157] Based on this, an embodiment of the present application proposes a network performance measurement method and related devices. First, a dialing device sends multiple first probe messages to a target device at a first packet sending frequency, and obtains a first probe result based on the feedback of the first probe messages. The first probe result indicates the network performance between the dialing device and the target device. In response to the first probe result satisfying a first condition, the dialing device sends multiple second probe messages to the target device at a second packet sending frequency, and obtains a second probe result based on the feedback of the multiple second probe messages. The dialing device sends multiple first probe messages to the target device at a slower packet sending frequency to obtain the first probe result, and the multiple first probe messages occupy less communication overhead. When the first probe result satisfies the first condition, it means that the first probe result with lower accuracy indicates that a performance failure may occur in the path between the target device and the dialing device, triggering the dialing device to perform high-precision network performance measurement. The dialing device sends multiple second probe messages to the target device at a faster packet sending frequency to obtain a high-precision second probe result. The dial-up test device uses multiple first probe messages with low communication overhead to monitor the network performance of a path. When a possible fault is detected on the path, multiple second probe messages with higher communication overhead are used to obtain highly accurate network performance measurements. This balances communication overhead and network performance measurement accuracy, making network performance measurement possible in wide area network scenarios.

[0158] Next, some communication systems involved in the embodiments of the present application are introduced. For example, Figure 4 is a schematic diagram of the topological structure of a communication system in the embodiment of the present application. The communication system proposed in the embodiment of the present application includes: a network device, a target device, and a controller. The network device in the embodiment of the present application may be a router, a switch (for example, an aggregation switch or a core switch), a gateway, an access network device, or an access point. The network device may also be implemented as a virtualized device. The virtualized device may be a virtual machine (VM) running a program for sending message functions, a virtual router, or a virtual switch. The virtualized device is deployed on a hardware device (for example, a physical server). For example, a network device can be implemented based on a general physical server in combination with network function virtualization (NFV) technology. For ease of description in the embodiment of the present application, the network device may also be referred to as a node.

[0159] The dialing device of the embodiment of the present application can be deployed on a network device. Alternatively, the dialing device can also be deployed on a terminal device, which establishes a communication connection with the target device through the network device. The terminal device, which can also be called user equipment (UE), mobile station (MS), mobile terminal (MT), terminal, etc., is a device that provides voice and / or data connectivity to the user, or a chip set in the device, such as a handheld device with wireless connection function, a vehicle-mounted device, etc. At present, some examples of terminal devices include: mobile phones, desktop computers, tablet computers, laptops, PDAs, mobile internet devices (MIDs), wearable devices, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical surgery, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, or 5G-residential gateway devices (5G-RG) that support 5G access, etc.

[0160] The target device in the embodiment of the present application can be a network device, or it can be a core network device, an Internet data center (IDC), a content distribution network (CDN), or a server and other devices.

[0161] In one possible implementation, the present application supports user definition of which node a dialing device passes through to reach a target device as a boundary node. This boundary node refers to the boundary node between a campus network and a wide area network. The boundary node can be an ISP router or a gateway. Of the multiple nodes on the path from the dialing device to the target device, some belong to the campus network, while others belong to the wide area network. Specifically, the nodes on the path between the dialing device and the boundary node belong to the campus network, while the nodes between the boundary node and the target device belong to the wide area network.

[0162] Next, the method embodiment of the present application is described in conjunction with the accompanying drawings. Please refer to Figure 5, which is a flow chart of an embodiment of the network performance measurement method in the embodiment of the present application. A network performance measurement method proposed in the embodiment of the present application includes:

[0163] F1. Send multiple first detection messages to the target device at a first packet sending frequency to obtain a first detection result, where the first detection result indicates network performance between the dialing device and the target device.

[0164] In step F1, the dialing device first determines the target device for which network quality detection is required. In one possible implementation, the dialing device determines the application for which network quality detection is required based on a user's instructions. For example, a video conferencing application has a higher priority, and the user requires the dialing device to detect the network quality of the data stream related to the video conferencing application. The dialing device then uses application identification technology to find the actual data stream corresponding to the application. For example, it finds the data stream of the video conferencing application from the multiple data streams forwarded by the dialing device. Finally, based on the data packets (or messages) of the actual data stream, the source address of the actual data stream is determined, and the source address of the actual data stream is used as the address information of the target device. Taking the video conferencing application as an example, the target device can be the media server of the video conferencing application.

[0165] Exemplarily, application identification technologies include, but are not limited to, Deep Packet Inspection (DPI) and Deep Flow Inspection (DFI). DPI is an application-layer-based traffic detection and control technology that unpacks traffic, analyzes packet headers and application-layer content, and thereby identifies applications and their content. DFI is an application identification technology based on traffic behavior, i.e., identifying session connection behaviors of different applications. By analyzing the statistical characteristics of data flows, such as flow duration, flow size, flow rate, or flow direction, and then utilizing machine learning or artificial intelligence technologies, data flows are classified or clustered to determine the application type of the data flow.

[0166] It should be noted that the real data flow in the embodiment of the present application may include not only application-related data flow, but also background traffic (cross traffic) or other data flow (or traffic) in the path, and the embodiment of the present application does not limit this.

[0167] Furthermore, the dialing test device can also obtain flow characteristic information of the actual data flow.

[0168] In a possible implementation, the dialing and testing device may process the data stream forwarded by the dialing and testing device by applying an identification technology to obtain flow characteristic information of the real data stream.

[0169] In another possible implementation, the dialing device may be configured with the flow characteristic information of the real data flow in advance by the user (or controller). In other words, the flow characteristic information of the real data flow is configured as offline data by the user (or controller) to the dialing device.

[0170] In an embodiment of the present application, the flow characteristic information of the real data stream includes but is not limited to: the Internet Protocol IP five-tuple information of the real data stream, the packet sending frequency of the real data stream, the packet sending interval of the real data stream, the message size of the real data stream, the number of continuous messages in the real data stream, the duration of continuous messages in the real data stream, or the Differentiated Services Code Point DSCP of the message in the real data stream. The IP five-tuple includes: source IP address, destination IP address, source port number, destination interface number, and transport layer protocol. The number of continuous messages in the real data stream can also be referred to as the number of burst packets in the real data stream. Taking the real data stream as the data stream of a video conferencing application as an example, since the data stream of the video conferencing application needs to transmit data packets related to video frames, and when the video frame is mapped to the data stream, there may be multiple continuous bursts of messages in the data stream corresponding to one video frame, so the real data stream may have multiple data packets at one time (the data packets are obtained by mapping the video frames).

[0171] Secondly, after the dialing device determines the address information of the target device, the dialing device can further determine the path between the dialing device and the target device, which carries the real data flow. In the embodiment of the present application, the dialing device can determine the path between the dialing device and the target device in various ways, for example, by determining the path between the dialing device and the target device through traceroute.

[0172] Optionally, the dialing device can also constrain the number of determined paths to save communication overhead and computing resources. For example, the dialing device determines through traceroute that there are 10 paths between the dialing device and the target device. The dialing device selects three of these 10 paths and then detects these three paths to obtain network performance measurement results for these three paths.

[0173] After determining the address information of the target device, the dialing test device constructs a slow dialing test flow to detect network quality at the target device. Specifically, the dialing test device sends multiple first detection messages to the target device at a first packet transmission frequency. The dialing test device then generates a first detection result based on the target device's response to the multiple first detection messages. The first detection result indicates the network performance between the dialing test device and the target device. The first packet transmission frequency is lower than the second packet transmission frequency in the subsequent step F2 to reduce communication overhead.

[0174] In one possible implementation, the first detection result includes: a packet loss rate between the dialing device and the target device, and / or a latency between the dialing device and the target device. It is understood that in the embodiments of the present application, the first detection result may also be other indicators indicating network quality, such as latency jitter, etc., and the embodiments of the present application are not limited thereto.

[0175] Optionally, compared with the second detection message of the subsequent step F2 or the detection message of step F3, the message size of the first detection message is smaller to reduce communication overhead.

[0176] Optionally, the dialing and testing device constructs and sends multiple first probe messages based on the flow characteristic information of the real data flow. For example, the message size of the first probe messages is the same as the message size in the real data flow. For another example, the DSCP values ​​of the multiple first probe messages are the same as the DSCP values ​​of the messages in the real data flow.

[0177] Optionally, if the target device does not respond to the first probe message, for example, if the target device has a firewall that automatically intercepts the first probe message, to obtain the most comprehensive detection results possible, the dialing device sends multiple first probe messages to the farthest responding node. The farthest responding node is the node on the path between the dialing device and the target device that responds to the first probe message and is the farthest hop away from the dialing device. This method improves the accuracy of the first detection results.

[0178] Optionally, when the first detection result does not meet the first condition, the dialing and testing apparatus continuously sends a plurality of first detection messages to the target device at the first packet sending frequency, thereby achieving real-time monitoring of network performance with low communication overhead.

[0179] F2. In response to the first detection result satisfying the first condition, the dialing device sends multiple second detection messages to the target device at a second packet transmission frequency to obtain a second detection result, where the second detection result indicates network performance between the dialing device and the target device, and the second packet transmission frequency is greater than the first packet transmission frequency.

[0180] In step F2, after the dialing device obtains the first detection result, it detects whether the first detection result satisfies a first condition. In one possible implementation, the first condition includes: a packet loss rate between the dialing device and the target device is greater than or equal to a first threshold, and / or a latency between the dialing device and the target device is greater than or equal to a second threshold. Exemplarily, the first threshold includes a packet loss rate of 2% and / or a latency of 20 milliseconds (ms).

[0181] When the first detection result satisfies the first condition, the dialing device sends multiple second detection messages to the target device at a second packet transmission frequency to obtain a second detection result. For example, if the first detection result indicates that the packet loss rate between the dialing device and the target device is 5% and the latency between the dialing device and the target device is 30 milliseconds, then the first detection result satisfies the first condition. The dialing device constructs a fast dialing flow to the target device to perform network quality detection. Specifically, the dialing device sends multiple second detection messages to the target device at a second packet transmission frequency, where the second packet transmission frequency is greater than the first packet transmission frequency. Then, based on the target device's feedback on the second detection messages, the dialing device obtains a second detection result, which indicates the network performance between the dialing device and the target device.

[0182] For example, in step F1, the dialing device sends one first detection message to the target device every 10 seconds; in step F2, the dialing device sends 100 second detection messages to the target device every 10 seconds.

[0183] In one possible implementation, the second detection result includes: a packet loss rate between the dialing device and the target device, and / or a latency between the dialing device and the target device. It is understood that in the embodiments of the present application, the second detection result may also be other indicators indicating network quality, such as latency jitter, etc., and the embodiments of the present application are not limited thereto.

[0184] Optionally, the dial testing device constructs and sends multiple second probe messages based on the flow characteristic information of the actual data flow, so that the flow characteristic information of the dial testing flow formed by the dial testing device sending the multiple second probe messages is the same as the flow characteristic information of the actual data flow, thereby improving the accuracy of the network performance measurement results. For example, the packet size of the second probe messages is the same as the packet size in the actual data flow. For another example, the DSCP values ​​of the multiple second probe messages are the same as the DSCP values ​​of the packets in the actual data flow. For another example, the second packet transmission frequency (or the packet transmission interval of the multiple second probe messages) is the same as the packet transmission frequency (or packet transmission interval) of the packets in the actual data flow. For another example, when the dial testing device sends the multiple second probe messages, the number of consecutive second packets in the multiple second probe messages is the same as the number of consecutive packets in the actual data flow. For example, if the number of consecutive packets in the actual data flow is 4 packets sent continuously every 10 seconds, then the dial testing device sends 4 second probe messages continuously every 10 seconds when sending the multiple second probe messages to the target device.

[0185] Optionally, if the target device does not respond to the second probe message, for example, if the target device has a firewall that automatically intercepts the second probe message, to obtain the most comprehensive detection results possible, the dialing device sends multiple second probe messages to the farthest responding node. The farthest responding node is the node on the path between the dialing device and the target device that responds to the second probe message and is the farthest hop away from the dialing device. This method improves the accuracy of the second probe results.

[0186] F3. In response to the second detection result satisfying the second condition, the dialing and testing device sends multiple detection messages hop by hop to multiple nodes on the path between the dialing and testing device and the target device to obtain a network performance measurement result.

[0187] Step F3 is an optional step. When step F3 is not performed, the second detection result obtained in step F2 is used as the network performance measurement result of the path.

[0188] In step F3, after the dialing device obtains the second detection result, it detects whether the second detection result satisfies a second condition. In one possible implementation, the second condition includes: a packet loss rate between the dialing device and the target device is greater than or equal to a third threshold, and / or a latency between the dialing device and the target device is greater than or equal to a fourth threshold, where the third threshold is greater than the first threshold, and the fourth threshold is greater than the second threshold. Exemplarily, the third threshold includes a packet loss rate of 8% and / or a latency of 50 milliseconds (ms).

[0189] For example, if the second detection result indicates that the packet loss rate between the dialing device and the target device is 10% and the latency between the dialing device and the target device is 100 milliseconds, then the second detection result satisfies the second condition. When the second detection result satisfies the second condition, the dialing device sends multiple detection packets hop by hop to multiple nodes on the path between the dialing device and the target device to obtain network performance measurement results.

[0190] In one possible implementation, the dialing device constructs and sends the multiple probe messages based on the flow characteristic information of the real data flow. For example, based on the packet transmission frequency of the real data flow, the dialing device sends multiple probe messages to multiple nodes on the path between the dialing device and the target device in a hop-by-hop manner. The message size of the multiple probe messages is the same as the message size of the messages in the real data flow, and the DSCP values ​​of the multiple probe messages are the same as the DSCP values ​​of the messages in the real data flow. For another example, when the dialing device sends the multiple probe messages, the number of consecutive probe messages in the multiple probe messages is the same as the number of consecutive messages in the real data flow. For example, if the number of consecutive messages in the real data flow is 4 messages sent continuously every 10 seconds, then the dialing device sends 4 probe messages continuously every 10 seconds when hop-by-hopping the multiple probe messages to multiple nodes on the path between the dialing device and the target device.

[0191] Optionally, if the target device does not respond to the probe message, for example, if the target device has a firewall that automatically intercepts the probe message, to obtain the most comprehensive detection results possible, the dialing device sends multiple probe messages hop by hop to multiple nodes between the dialing device and the farthest responding node. The farthest responding node is the node on the path between the dialing device and the target device that responds to the probe message and is the farthest hop away from the dialing device. This method improves the accuracy of network performance measurement results.

[0192] After the dial-testing device sends multiple probe messages hop by hop to multiple nodes along the path between the dial-testing device and the target device, the dial-testing device obtains network performance measurement results based on the feedback from these multiple nodes in response to the multiple probe messages. The network performance measurement results indicate the network performance of the multiple devices from the dial-testing device to the target device. Optionally, if the path also passes through a terminal device, the network performance measurement results also indicate the network performance of one or more nodes between the terminal device and the dial-testing device.

[0193] Optionally, when the dialing device sends multiple detection messages hop by hop to multiple nodes on the path between the dialing device and the target device, the device may first send multiple detection messages hop by hop to nodes within the campus network. The specific method is as follows:

[0194] First, the dialing device obtains configuration information that indicates the boundary nodes on the path between the dialing device and the target device. Nodes on the path between the dialing device and the boundary nodes belong to the campus network, while nodes on the path between the boundary nodes and the target device belong to the wide area network. This configuration information can be preconfigured by the user, for example, by marking which nodes in the network are boundary nodes in the configuration information.

[0195] Next, the dialing device determines, based on the configuration information, which of the multiple nodes on the path between the dialing device and the target device are nodes within the campus network. The dialing device then sends multiple probe messages hop by hop to one or more of these nodes within the campus network. Based on the responses to these probe messages from one or more nodes within the campus network, the dialing device determines the campus network detection results.

[0196] Optionally, in addition to sending multiple probe messages to the border node, the dialing device may also send multiple probe messages to the border node's next-hop node to obtain network performance in the direction of the border node's egress port. This next-hop node is located in the wide area network and is on the path from the dialing device to the target device. The egress port direction of the border node refers to the direction from the border node to the next-hop node. This method further improves the accuracy of the probe results.

[0197] If the detection result of the campus network indicates that a performance failure has occurred in a node within the campus network, the network performance test result generated by the dialing device indicates that the node with the performance failure is located in the campus network; if the detection result of the campus network indicates that the performance of the nodes within the campus network is normal, the network performance test result generated by the dialing device indicates that the node with the performance failure is located in the wide area network.

[0198] Optionally, the network performance measurement result further includes identification information of a node where a performance failure occurs. The identification information may be address information of the node.

[0199] In an embodiment of the present application, a dialing device first sends multiple first probe messages to a target device at a first packet transmission frequency. Based on the feedback from the first probe messages, a first probe result is obtained. The first probe result indicates the network performance between the dialing device and the target device. In response to the first probe result satisfying a first condition, the dialing device sends multiple second probe messages to the target device at a second packet transmission frequency. Based on the feedback from the multiple second probe messages, a second probe result is obtained. The dialing device sends multiple first probe messages to the target device at a slower packet transmission frequency to obtain the first probe result, and these multiple first probe messages consume less communication overhead. When the first probe result satisfies the first condition, the lower-accuracy first probe result indicates a possible performance failure in the path between the target device and the dialing device, triggering the dialing device to perform a high-accuracy network performance measurement. The dialing device then sends multiple second probe messages to the target device at a higher packet transmission frequency to obtain a higher-accuracy second probe result. The dialing device monitors the network performance of the path using the multiple first probe messages with lower communication overhead. If a potential failure in the path is detected, the dialing device uses the multiple second probe messages with higher communication overhead to obtain a higher-accuracy network performance measurement result. Finally, when the second detection result meets the second condition, the dialing device is triggered to perform a more accurate network performance measurement. The dialing device sends multiple probe messages hop by hop to multiple nodes along the path from the dialing device to the target device to obtain network performance test results for each of these multiple nodes, further improving network performance measurement accuracy. This balances communication overhead and network performance measurement accuracy, saving users costs and making network performance measurement possible in wide area network scenarios.

[0200] In conjunction with the above embodiments, the following describes a specific adjustment method when the network performance test results indicate that a performance failure has occurred on the path. Please refer to Figure 6, which is a flow chart of another embodiment of the network performance measurement method in the embodiment of the present application. A network performance measurement method proposed in the embodiment of the present application also includes:

[0201] G1. The dial-up test device adjusts the QoS policy of the target interface according to the network performance measurement result.

[0202] In step G1, in response to the network performance measurement result indicating a performance failure has occurred in the path from the dial-test device to the target device (or the path is in a faulty state, or the node traversed by the path includes a node experiencing a performance failure, or the network performance measurement result satisfies a second condition), the dial-test device adjusts the QoS policy of the target interface based on the network performance measurement result. The actual data flow carried by the target interface is carried by the path between the dial-test device and the target device. Therefore, by adjusting the QoS policy of the target interface, the transmission rate of the data flow carried by the path can be adjusted, thereby ensuring normal communication of the data flow of the critical service (or high-priority service) in the path.

[0203] Regarding the QoS policy, it includes but is not limited to: the priority of the data flow carried by the target interface, the upper limit of the downstream bandwidth of the path, the ratio of the bandwidth value of the actual data flow to the upper limit of the downstream bandwidth of the path, the upper limit of the bandwidth of the actual data flow, the lower limit of the bandwidth of the actual data flow, the bandwidth increase ratio of the actual data flow, the bandwidth decrease ratio of the actual data flow, the upper limit of the transmission rate of the actual data flow, the lower limit of the transmission rate of the actual data flow, the transmission rate increase ratio of the actual data flow, or the transmission rate decrease ratio of the actual data flow.

[0204] A possible example is shown in Figure 7, where the granularity of the QoS policy is service (application). Figure 7 is a schematic diagram of a QoS policy in an embodiment of the present application. The QoS policy of Figure 7 is a QoS policy related to video conferencing services (or applications), and the nodes in the network adopt this QoS policy to protect the data flow of the video conferencing service whose user name is "Zhang San". For the sake of convenience of description, the data flow of the video conferencing service whose user name is "Zhang San" is referred to as data flow #1, and data flow #1 includes one or more data flows. When user "Zhang San" uses the video conferencing application, the generated data flow #1 is protected by this QoS policy. The priority of data flow #1 is "high", the upper limit of the transmission rate of data flow #1 is 200 megabits per second (mbps), the lower limit of the transmission rate of data flow #1 is 100 mbps, the transmission rate increase ratio of data flow #1 is 10%, and the transmission rate decrease ratio of data flow #1 is 10%. Taking the QoS policy in Figure 7 as an example, when the dial-test device determines that the network performance measurement results indicate a path failure, the path carries data streams #1, #2, and #3. Based on the QoS policy corresponding to data stream #2 and data stream #3, the dial-test device determines that data stream #2 has a "low" priority, and data stream #3 has a "low" priority. The dial-test device then prioritizes reducing the transmission rate of data stream #2 and data stream #3. The extent of the reduction in the transmission rate of data stream #2 is determined by the QoS policy for data stream #2, while the extent of the reduction in the transmission rate of data stream #3 is determined by the QoS policy for data stream #3. Similarly, the QoS policy for data stream #2 is similar to the QoS policy for data stream #1, and the QoS policy for data stream #3 is similar to the QoS policy for data stream #1. Each time the dial-test device reduces the transmission rate of data stream #2 and data stream #3, it executes steps F1 through F3 to detect whether the network performance of the path has returned to normal. If so, the rate reduction ceases; otherwise, the rate reduction continues. Through the above processing, the transmission rate of the data stream with a high priority is guaranteed by sacrificing the transmission rate of the data stream with a low priority.

[0205] A possible example is shown in Figure 8, where the granularity of the QoS policy is the target interface. Figure 8 is a schematic diagram of another QoS policy in an embodiment of the present application. The QoS policy in Figure 8 is the QoS policy for the target interface in the node ISP router-B. In conjunction with the communication scenario illustrated in Figure 2 above, this QoS policy also refers to the QoS policy of the node ISP router-B in the inbound direction (data center → terminal device). The downlink bandwidth upper limit of the path corresponding to this QoS policy is 100 mbps. The ratio of the bandwidth value of the data flow corresponding to this QoS policy to the downlink bandwidth upper limit of the path is 100%, meaning that the data flow corresponding to this QoS policy can occupy 100% of the downlink bandwidth of the path. This path can carry data flows of multiple services, so the proportion of the total bandwidth occupied by data flows of different services in the path, the upper limit of the transmission rate, and the lower limit of the transmission rate can be allocated. For example, the proportion of the bandwidth occupied by the data flow of the data flow corresponding to the QoS policy by the data flow is 20%. If the bandwidth upper limit of the data flow corresponding to the QoS policy is 100 mbps, the data flow of the voice service can occupy a bandwidth of 20 mbps. The upper limit of the voice service transmission rate is 20 Mbps, which means that the maximum transmission rate of voice service data flow is 20 Mbps. The lower limit of the voice service transmission rate is 18 Mbps, which means that the minimum transmission rate of voice service data flow is 18 Mbps.

[0206] After determining that the QoS policy needs to be adjusted, the dialing device can adjust the QoS policy itself, that is, enter step G2; or the dialing device selects a target node from multiple nodes on the path from the dialing device to the target device, and then instructs the target node to adjust the QoS policy, that is, enter step G3.

[0207] G2. The dialing device reduces the transmission rate of the low-priority data stream in the path according to the QoS policy.

[0208] In step G2, after the dialing device determines that the QoS policy needs to be adjusted, it reduces the transmission rate of the low-priority data flow in the path according to the QoS policy. For example, the low-priority data flow is a non-video conference data flow.

[0209] In one example, a path carries voice, video conferencing, download, and email services. Video conferencing services have the highest priority, voice services have the second highest priority, and download and email services have the lowest priority. Based on the QoS policy, the dialing device first reduces the transmission rate of the download and email data flows. The dialing device then performs steps F1 through F3 to detect whether the path's network performance has returned to normal. If so, the rate reduction ceases; otherwise, the rate reduction continues. When the rate of the download or email data flows reaches the lower limit, the dialing device reduces the rate of the voice data flow. The dialing device then performs steps F1 through F3 to detect whether the path's network performance has returned to normal. If so, the rate reduction ceases; otherwise, the rate reduction continues for the voice data flow. This process continues in this manner until the path's network performance returns to normal or the transmission rates of all data flows on the path have been reduced to the lower limit.

[0210] In one possible implementation, the downlink committed access rate of the non-video conference data flow carried by the target interface is reduced; or the traffic shaping rate of the non-video conference data flow carried by the target interface is reduced.

[0211] In another possible implementation, the dialing device adjusts the priority queue PQ of the non-video conference data stream carried by the target interface from a first PQ to a second PQ, where the priority of the second PQ is lower than that of the first PQ.

[0212] G3. Send instruction information to the target node, where the instruction information instructs the target node to adjust the QoS policy of the target interface.

[0213] In step G2, after the dialing device determines that the QoS policy needs to be adjusted, it reduces the transmission rate of the data flow with a low priority in the path according to the QoS policy.

[0214] For example, the dialing device selects a boundary node on the path as the target node and then sends an instruction to the target node. The boundary node can be a gateway or ISP router. After the target node adjusts the QoS policy, it reduces the transmission rate of low-priority data flows on the path according to the QoS policy. The specific method is similar to step G2 and is not further described here.

[0215] After step G2 or step G3, in response to the network performance measurement result indicating that the network quality of the path no longer deteriorates, the network quality of the path meets the service requirements, or the network quality of the path returns to normal, the dialing device may adjust the QoS policy of the target interface, or the dialing device may send an indication message to the target node, wherein the indication message instructs the target node to adjust the QoS policy of the target interface.

[0216] In one possible implementation, the dialing device sends multiple first probe messages to the target device, obtains a third probe result, and the third probe result indicates the network performance between the dialing device and the target device. Then, when the third probe result satisfies a third condition, the quality of service (QoS) policy of the target interface is adjusted.

[0217] If the third detection result satisfies the third condition, the dialing device may determine that the network quality of the path between the dialing device and the target device has returned to normal, or that the network quality of the path meets the requirements of the service carried by the target interface, or that the network quality of the path has stopped deteriorating. Therefore, the dialing device may adjust the QoS policy of the target interface in response to the third detection result satisfying the third condition.

[0218] In one example, the third condition includes: a packet loss rate between the test device and the target device is less than a first threshold; a latency between the test device and the target device is less than a second threshold; a jitter between the test device and the target device is less than a fifth threshold; and / or a bit error rate between the test device and the target device is less than a sixth threshold. When the third detection result satisfies the third condition, network performance between the test device and the target device has returned to normal.

[0219] In another example, the third condition includes: multiple third detection results obtained by the dialing device remain unchanged during the first time period. When the third detection results meet the third condition, it means that the network performance between the dialing device and the target device has not deteriorated further during the first time period.

[0220] Taking the example of the dialing device adjusting the QoS policy of the target interface, in one possible implementation, the dialing device increases the downlink committed access rate of the non-video conferencing data flow carried by the target interface; or, the dialing device increases the traffic shaping rate of the non-video conferencing data flow carried by the target interface. In another possible implementation, the dialing device adjusts the priority queue PQ of the non-video conferencing data flow carried by the target interface from the third PQ to the fourth PQ, and the priority of the fourth PQ is higher than that of the third PQ. The target node adjusts the QoS policy of the target interface according to the indication information, which is similar to the way the dialing device adjusts the QoS policy of the target interface, and will not be elaborated here.

[0221] In the embodiments of the present application, when a network quality failure is detected, the dial-test device shifts the network bottleneck from the wide area network to the campus network, allowing the user-controllable campus network to prioritize high-priority services, thereby ensuring a high-priority service experience. For example, when a network quality failure occurs, the dial-test device prioritizes the transmission rate of video conferencing data streams by sacrificing the transmission rate of non-video conferencing data streams, thereby ensuring the transmission rate of video conferencing data streams, improving the user experience and reducing user costs.

[0222] In combination with the foregoing embodiments, some application scenarios involved in the embodiments of the present application are introduced below.

[0223] Please refer to Figure 9, which is a schematic diagram of an application scenario in an embodiment of the present application. Node R2 is a dialing device, and the path from the target device to the interrupting device passes through nodes R1, R2, R3, R4, and R5. Node R2 is, for example, a core switch. Node R3 is a boundary node, for example, a gateway.

[0224] The dialing device sends multiple detection messages to multiple nodes along the path in sequence, specifically including:

[0225] J1-1 and node R2 send multiple detection messages to the target device.

[0226] J1-2 and node R2 send multiple detection messages to node R5.

[0227] J1-3 and node R2 send multiple detection messages to node R5.

[0228] J1-4, node R2 sends multiple detection messages to node R1.

[0229] J1-5 and node R2 send multiple detection messages to the terminal device.

[0230] After steps J1-1 to J1-5, in step J2, node R2 determines the network performance measurement result based on the feedback of the multiple detection messages.

[0231] Please refer to Figure 10, which is a schematic diagram of an application scenario in an embodiment of the present application. Node R2 is a dialing device, and the path from the target device to the interrupting device passes through nodes R1, R2, R3, R4, and R5. Node R2 is, for example, a core switch. Node R3 is a boundary node, for example, a gateway.

[0232] The dialing device sends multiple detection messages to multiple nodes along the path in sequence, specifically including:

[0233] K1. The dialing device determines a boundary node, which is node R3.

[0234] Then, the dialing device determines from the boundary nodes that among the multiple nodes passed by the path, the terminal device, nodes R1, R2, and R3 belong to the campus network; and nodes R4, R5, and the target device belong to the wide area network. First, the dialing device sends a detection message to the nodes in the campus network.

[0235] K2-1 and node R2 send multiple detection messages to node R3.

[0236] In step K2 - 1 , optionally, node R2 may further send multiple detection messages to node R4 to obtain network performance in the direction from node R3 to node R4 .

[0237] K2-2 and node R2 send multiple detection messages to node R1.

[0238] K2-3, node R2 sends multiple detection messages to the terminal device.

[0239] After steps K2 - 1 to K2 - 3 , K3 , based on the feedback of the multiple detection messages, determines whether the node with the performance failure (referred to as the failure node for short) is in the campus network or in the wide area network.

[0240] If the faulty node is determined to be in the campus network, a network performance measurement result is generated, which indicates the faulty node. If the faulty node is determined not to be in the campus network, a detection message is sent to a node in the wide area network, and steps K4-1 to K4-3 are entered.

[0241] K4-1 and node R2 send multiple detection messages to the target device.

[0242] K4-2 and node R2 send multiple detection messages to node R5.

[0243] K4-3. Node R2 sends multiple detection messages to node R4.

[0244] After steps K4-1 to K4-3, K5 generates network performance measurement results based on the feedback of the detection message.

[0245] Please refer to Figure 11, which is a schematic diagram of an application scenario in accordance with an embodiment of the present application. Node R2 is a dialing device, and the path from the target device to the interrupting device passes through nodes R1, R2, R3, R4, and R5. Node R2 is, for example, a core switch. Node R3 is a boundary node, for example, a gateway.

[0246] The application scenarios include:

[0247] S1 and node R2 (dialing detection device) send multiple first detection messages to the target device at a first packet sending frequency.

[0248] S2. Node R2 (dialing detection device) determines a first detection result based on feedback of multiple first detection messages.

[0249] S3. In response to the first detection result satisfying the first condition, the node R2 (dialing device) sends a plurality of second detection messages to the target device at a second packet sending frequency.

[0250] S4. Node R2 (dialing detection device) determines a second detection result according to feedback of multiple second detection messages.

[0251] S5. In response to the second detection result satisfying the second condition, the node R2 (dialing detection device) sends multiple detection messages to each node on the path (path-1) hop by hop.

[0252] S6. Based on the feedback of multiple detection messages, node R2 (dialing test device) generates a network performance measurement result, which indicates that node R3 on path (path-1) is the node with performance failure, and the network performance of path (path-1) is in a failure state.

[0253] The network performance measurement result obtained in step S6 is shown in Figure 12. Figure 12 is a schematic diagram of a network performance measurement result in an embodiment of the present application. The network performance measurement result indicates that the network quality of path (path-1) is faulty, and the node where the performance fault occurs is node R3.

[0254] S7. Node R2 (dialing device) instructs node R3 (border node) to adjust the QoS policy.

[0255] S8. Node R3 (edge ​​node) reduces the transmission rate of the data flow of non-video conferencing services carried by the path (path-1) according to the QoS policy. Non-video conferencing services include download services and email services.

[0256] S9. Node R2 (dialing and testing device) sends multiple first detection messages to the target device.

[0257] S10. Node R2 (dialing test device) updates the network performance measurement result based on the feedback of the multiple first detection messages. The updated network performance measurement result indicates that the network performance of the path (path-1) is in a normal state.

[0258] The network performance measurement result obtained in step S10 is shown in Figure 13. Figure 13 is a schematic diagram of a network performance measurement result in an embodiment of the present application. The network performance measurement result indicates that the network quality of the path (path-1) is normal.

[0259] S11. Node R2 (dialing device) instructs node R3 (border node) to adjust QoS policy.

[0260] S12. Node R3 (border node) restores the transmission rate of the data flow of the non-video conferencing service carried by the path (path-1) according to the QoS policy.

[0261] Please refer to Figure 14, which is a schematic diagram of an application scenario in an embodiment of the present application. In this application scenario, the target device is a data center server, and the dialing device is a switch in the campus network. The contracted bandwidth purchased by the campus network is 100mbps. The data streams forwarded by the target device to the terminal device of the campus network through the gateway include data stream 1, data stream 2, and data stream 3. Data stream 1 is the data stream of the video conferencing application of terminal device 1, data stream 2 is the data stream of the download application of terminal device 1, and data stream 3 is the data stream of the video conferencing application of terminal device 2. According to the QoS policy of the target interface of the gateway, the data stream of terminal device 2 (i.e., user 2) has the highest priority, and the transmission of the data stream of terminal device 2 needs to be prioritized. Since the transmission rate of data stream 1 is 80mbps, the transmission rate of data stream 2 is 120mbps, and the transmission rate of data stream 3 is 50mbps, the sum of the three exceeds the contracted bandwidth (100mbps) configured for the campus network at the router connected to the gateway. Furthermore, the bandwidth bottleneck in the path (data center server - router - gateway - switch - access network device - terminal device) is the router (the router connected to the gateway in the WAN). Therefore, data flows 1, 2, and 3 are indiscriminately lost at this router, affecting the user experience of terminal device 2.

[0262] Using the method of the aforementioned embodiment, the network performance measurement results obtained by the dialing device indicate a performance failure in a router along the path. Therefore, the dialing device instructs the gateway to adjust the QoS policy of the target interface, which carries data streams 1, 2, and 3. Specifically, based on the QoS policy of the target interface, the gateway determines that data stream 3 (terminal device 2) has the highest priority and needs to prioritize the transmission rate of data stream 3. Therefore, the gateway reduces the transmission rates of data streams 1 and 2. However, in terminal device 1, the priority of the video conferencing application is higher than that of the download application, so the transmission rate of the data stream of the download application is preferentially reduced. For example, as shown in Figure 15, Figure 15 is a schematic diagram of another application scenario in an embodiment of the present application. After the reduction, the transmission rate of data stream 1 is 45 Mbps, the transmission rate of data stream 2 is 5 Mbps, and the transmission rate of data stream 3 is 50 Mbps. The sum of the transmission rates of data streams 1, 2, and 3 equals the contracted bandwidth configured by the router for the campus network. The router no longer performs indiscriminate packet loss on data streams 1, 2, and 3. Through the above method, the transmission of data stream of video conferencing application is guaranteed, and the user experience is improved.

[0263] The following introduces a communication device according to an embodiment of the present application. The communication device introduced below has any function of the dialing device or controller in the above method embodiment.

[0264] FIG16 is a schematic diagram of the structure of a communication device 1600 provided in an embodiment of the present application. As shown in FIG16 , the communication device 1600 includes: a transceiver module 1601 for executing step F1, step F2, or step F3; a processing module 1602 for executing step G1 or step G2. The transceiver module 1601 is also configured to execute step G3.

[0265] In one example, the communication device 1600 is applied to a dialing device, and the communication device 1600 includes:

[0266] The transceiver module 1601 is further configured to send a plurality of first detection messages to the target device at a first packet sending frequency to obtain a first detection result, where the first detection result indicates the network performance between the dialing device and the target device;

[0267] The transceiver module 1601 is also used to send multiple second detection messages to the target device at a second packet sending frequency in response to the first detection result satisfying the first condition, to obtain a second detection result, wherein the second detection result indicates the network performance between the dialing device and the target device, and the second packet sending frequency is greater than the first packet sending frequency.

[0268] In a possible implementation, the transceiver module 1601 is further configured to, in response to the second detection result satisfying the second condition, send multiple detection messages hop by hop to multiple nodes on the path between the dialing device and the target device to obtain a network performance measurement result.

[0269] In one possible implementation,

[0270] The transceiver module 1601 is further configured to obtain flow characteristic information of the real data flow sent by the target device;

[0271] The transceiver module 1601 is further configured to construct and send the plurality of second detection messages according to the flow characteristic information of the real data flow.

[0272] In one possible implementation,

[0273] The transceiver module 1601 is further configured to construct and send the multiple detection messages to the multiple nodes according to the flow feature information of the real data flow.

[0274] In one possible implementation, the flow characteristic information of the real data flow includes any one or more of the following:

[0275] Internet Protocol (IP) quintuple information of the real data stream, packet sending frequency of the real data stream, packet sending interval of the real data stream, message size of the real data stream, number of consecutive messages in the real data stream, duration of consecutive messages in the real data stream, or Differentiated Services Code Point (DSCP) of messages in the real data stream.

[0276] In one possible implementation,

[0277] The processing module 1602 is further configured to adjust the quality of service (QoS) policy of the target interface according to the network performance measurement result.

[0278] In one possible implementation,

[0279] The transceiver module 1601 is further configured to send instruction information to a target node according to the network performance measurement result, wherein the instruction information instructs the target node to adjust the QoS policy of the target interface.

[0280] In one possible implementation,

[0281] The processing module 1602 is further configured to reduce the transmission rate of the non-video conference data stream carried by the target interface;

[0282] And / or, the processing module 1602 is further configured to adjust the priority queue PQ of the non-video conference data stream carried by the target interface from a first PQ to a second PQ, where the priority of the second PQ is lower than that of the first PQ.

[0283] In one possible implementation,

[0284] The processing module 1602 is further configured to reduce the downlink committed access rate (CAR) of the non-video conference data flow carried by the target interface;

[0285] Alternatively, the processing module 1602 is further configured to reduce the traffic shaping rate of the non-video conference data flow carried by the target interface.

[0286] In a possible implementation, the network performance measurement result further includes identification information of a node where a performance failure occurs.

[0287] In one possible implementation,

[0288] The transceiver module 1601 is also used to send the multiple probe messages hop by hop to multiple nodes on the path between the dialing device and the farthest response node when the target device does not respond to the second probe message. The farthest response node is the node on the path between the dialing device and the target device that responds to the second probe message and is the farthest hop away from the dialing device.

[0289] In one possible implementation,

[0290] The transceiver module 1601 is also used to send the multiple probe messages hop by hop to one or more nodes located in the campus network on the path between the dialing device and the target device to obtain the network performance measurement result, and the network performance measurement result indicates that the node where the performance failure occurs is located in the campus network or in the wide area network.

[0291] In one possible implementation,

[0292] The transceiver module 1601 is also used to send the multiple detection messages hop by hop to one or more nodes located in the campus network on the path between the dialing device and the target device according to the configuration information, wherein the configuration information indicates the boundary nodes on the path between the dialing device and the target device, wherein the nodes between the dialing device and the boundary nodes on the path belong to the campus network, and the nodes between the boundary nodes and the target device on the path belong to the wide area network.

[0293] In one possible implementation, the quality of service (QoS) policy of the target interface includes any one or more of the following information:

[0294] The priority of the data flow carried by the target interface, the upper limit of the downstream bandwidth of the path, the ratio of the bandwidth value of the real data flow to the upper limit of the downstream bandwidth of the path, the upper limit of the bandwidth of the real data flow, the lower limit of the bandwidth of the real data flow, the bandwidth increase ratio of the real data flow, the bandwidth decrease ratio of the real data flow, the upper limit of the transmission rate of the real data flow, the lower limit of the transmission rate of the real data flow, the transmission rate increase ratio of the real data flow, or the transmission rate decrease ratio of the real data flow.

[0295] In a possible implementation, the network performance includes: packet loss rate, and / or delay.

[0296] In one possible implementation, the first condition includes: a packet loss rate between the dialing device and the target device is greater than or equal to a first threshold, and / or a delay between the dialing device and the target device is greater than or equal to a second threshold;

[0297] The second condition includes: a packet loss rate between the dialing device and the target device is greater than or equal to a third threshold, and / or a delay between the dialing device and the target device is greater than or equal to a fourth threshold, wherein the third threshold is greater than the first threshold, and the fourth threshold is greater than the second threshold.

[0298] In one possible implementation,

[0299] The transceiver module 1601 is further configured to send a plurality of the first detection messages to the target device to obtain a third detection result, where the third detection result indicates network performance between the dialing device and the target device;

[0300] The processing module 1602 is further configured to, when the third detection result satisfies a third condition, cause the dialing device to adjust a quality of service (QoS) policy of the target interface.

[0301] In one possible implementation,

[0302] The processing module 1602 is further configured to increase the transmission rate of the non-video conference data stream carried by the target interface;

[0303] And / or, the processing module 1602 is further configured to adjust the priority queue PQ of the non-video conference data flow carried by the target interface from the third PQ to a fourth PQ, where the priority of the fourth PQ is higher than that of the third PQ.

[0304] In one possible implementation,

[0305] The transceiver module 1601 is further configured to construct and send the multiple first detection messages according to the flow characteristic information of the real data flow.

[0306] In another example, the communication device 1600 may also be applied to a controller. The communication device 1600 includes:

[0307] The transceiver module 1601 is further configured to obtain a network performance measurement result, wherein the network performance measurement result indicates the network performance of the path between the dialing test apparatus and the target device;

[0308] The processing module 1602 is further configured to adjust the quality of service (QoS) policy of the target node according to the network performance measurement result.

[0309] In one possible implementation,

[0310] The transceiver module 1601 is further configured to send instruction information to a target node according to the network performance measurement result, wherein the instruction information instructs the target node to adjust the QoS policy of the target interface.

[0311] In one possible implementation,

[0312] The processing module 1602 is further configured to reduce the transmission rate of the non-video conference data stream carried by the target interface;

[0313] And / or, the processing module 1602 is further configured to adjust the priority queue PQ of the non-video conference data stream carried by the target interface from a first PQ to a second PQ, where the priority of the second PQ is lower than that of the first PQ.

[0314] In one possible implementation,

[0315] The processing module 1602 is further configured to reduce the downlink committed access rate (CAR) of the non-video conference data flow carried by the target interface;

[0316] Alternatively, the processing module 1602 is further configured to reduce the traffic shaping rate of the non-video conference data flow carried by the target interface.

[0317] In one possible implementation,

[0318] The transceiver module 1601 is further configured to obtain an updated network performance measurement result, where the updated network performance measurement result indicates that the path between the dialing device and the target device is in a normal state;

[0319] The processing module 1602 is further configured to adjust the QoS policy of the target interface according to the updated network performance measurement result.

[0320] In one possible implementation,

[0321] The processing module 1602 is further configured to increase the transmission rate of the non-video conference data stream carried by the target interface;

[0322] And / or, the processing module 1602 is further configured to adjust the priority queue PQ of the non-video conference data flow carried by the target interface from the third PQ to a fourth PQ, where the priority of the fourth PQ is higher than that of the third PQ.

[0323] The communication device 1600 can correspond to the dialing device or controller in the above-mentioned method embodiment. The various units in the communication device 1600 and the above-mentioned other operations and / or functions are respectively for implementing the various steps and methods implemented by the dialing device or controller in the method embodiment. For specific details, please refer to the above-mentioned method embodiment. For the sake of brevity, they will not be repeated here.

[0324] The division of the above functional modules is used only as an example to illustrate the processing of messages by the communication device 1600. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the communication device 1600 can be divided into different functional modules to complete all or part of the functions described above. In addition, the communication device 1600 provided in the above embodiment and the embodiment method corresponding to Figures 5-15 above are based on the same concept. The specific implementation process is detailed in the above method embodiment and will not be repeated here.

[0325] To implement the above embodiment, the present application further provides a communication device. Please refer to FIG17 , which is a schematic diagram of the structure of a communication device 1700 provided in an embodiment of the present application.

[0326] Although the communication device 1700 shown in Figure 17 shows certain specific features, those skilled in the art will realize from the embodiments of the present application that, for the sake of brevity, Figure 17 does not show various other features to avoid confusing more relevant aspects of the embodiments disclosed in the embodiments of the present application. To this end, as an example, in some implementations, the communication device 1700 includes one or more processing units (such as CPUs) 1701, a network interface 1702, a programming interface 1703, a memory 1704, and one or more communication buses 1705 for interconnecting various components. In other implementations, the communication device 1700 can also omit or add some functional components or units based on the above examples.

[0327] In some implementations, the network interface 1702 is used to connect to one or more other communication devices / servers in the communication system. In some implementations, the communication bus 1705 includes circuits that interconnect and control communications between system components. The memory 1704 may include non-volatile memory, such as read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The memory 1704 may also include volatile memory, which may be random access memory (RAM), which is used as an external cache.

[0328] In some implementations, memory 1704 or a non-transitory computer-readable storage medium of memory 1704 stores the following programs, modules, and data structures, or a subset thereof, including, for example, a transceiver unit (not shown), an acquisition unit 17041 , and a processing unit 17042 .

[0329] In a possible embodiment, the communication device 1700 may have any functions of the dialing device or the controller in the method embodiments corresponding to FIG. 5 to FIG. 15 .

[0330] It should be understood that the communication device 1700 corresponds to the dialing device or controller in the above-mentioned method embodiment, and the various modules in the communication device 1700 and the above-mentioned other operations and / or functions are respectively for realizing the various steps and methods implemented by the dialing device or controller in the above-mentioned method embodiment. For specific details, please refer to the method embodiments corresponding to Figures 5-15 above. For the sake of brevity, they will not be repeated here.

[0331] It should be understood that in this application, the data sending and receiving operations can be completed by the network interface 1702 on the communication device 1700, or the processor can call the program code in the memory and cooperate with the network interface 1702 when necessary to implement the functions of the sending and receiving unit.

[0332] In various implementations, the communication device 1700 is used to execute the network performance measurement method provided in the embodiments of the present application, for example, to execute the network performance measurement method corresponding to the embodiments shown in Figures 5 to 15 above.

[0333] The specific structure of the communication device described in Figure 17 of this application can be shown in Figure 18.

[0334] FIG18 is a schematic structural diagram of a communication device 1800 provided in an embodiment of the present application.

[0335] The communication device 1800 includes a main control board 1810 and an interface board 1830 .

[0336] Main control board 1810, also known as the main processing unit (MPU) or route processor, is responsible for controlling and managing various components in communication device 1800, including routing calculation, device management, device maintenance, and protocol processing. Main control board 1810 includes a central processing unit 1811 and memory 1812.

[0337] Interface board 1830 is also known as a line processing unit (LPU), line card, or service board. It provides various service interfaces and implements data packet forwarding. Service interfaces include, but are not limited to, Ethernet interfaces and POS (Packet over SONET / SDH) interfaces. Interface board 1830 includes a central processing unit (CPU) 1831, a network processor (NPU) 1832, a forwarding table memory 1834, and a physical interface card (PIC) 1833.

[0338] The central processing unit 1831 on the interface board 1830 is used to control and manage the interface board 1830 and communicate with the central processing unit 1811 on the main control board 1810 .

[0339] The network processor 1832 is used to implement packet forwarding processing and can be in the form of a forwarding chip.

[0340] The physical interface card 1833 is used to implement the physical layer docking function. The original traffic enters the interface board 1830 from this physical interface card, and the processed message is sent from the physical interface card 1833. The physical interface card 1833 includes at least one physical interface, which is also called a physical port. The physical interface can be a Flexible Ethernet (FlexE) physical interface. The physical interface card 1833, also known as a daughter card, can be installed on the interface board 1830. It is responsible for converting the optical and electrical signals into messages and performing a validity check on the messages before forwarding them to the network processor 1832 for processing. In some embodiments, the central processing unit 1831 of the interface board 1830 can also perform the functions of the network processor 1832, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 1832 is not required in the interface board 1830.

[0341] Optionally, the communication device 1800 includes multiple interface boards. For example, the communication device 1800 further includes an interface board 1840 . The interface board 1840 includes: a central processing unit 1841 , a network processor 1842 , a forwarding table entry memory 1844 and a physical interface card 1843 .

[0342] Optionally, the communication device 1800 further includes a switching fabric board 1850. This switching fabric board 1850 may also be referred to as a switch fabric unit (SFU). If the communication device includes multiple interface boards 1830, the switching fabric board 1850 is used to exchange data between the interface boards. For example, the interface board 1830 and the interface board 1840 can communicate via the switching fabric board 1850.

[0343] The main control board 1810 is coupled to the interface board. For example, the main control board 1810, the interface board 1830, the interface board 1840, and the switching network board 1850 are interconnected via a system bus and / or a system backplane. In one possible implementation, an inter-process communication (IPC) channel is established between the main control board 1810 and the interface board 1830, and communication between the main control board 1810 and the interface board 1830 is performed via the IPC channel.

[0344] Logically, communication device 1800 comprises a control plane and a forwarding plane. The control plane includes a main control board 1810 and a central processing unit 1831. The forwarding plane includes various components that perform forwarding, such as a forwarding table entry memory 1834, physical interface cards 1833, and a network processor 1832. The control plane performs functions such as publishing routes, generating forwarding tables, processing signaling and protocol messages, and configuring and maintaining device status. The control plane sends the generated forwarding tables to the forwarding plane. On the forwarding plane, the network processor 1832 forwards messages received by the physical interface card 1833 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 1834. In some embodiments, the control plane and forwarding plane can be completely separate and not located on the same device.

[0345] It should be understood that the transceiver unit in the communication device 1800 can be equivalent to the physical interface card 1833 or the physical interface card 1843 in the communication device 1800; the acquisition unit 18041 and the processing unit 18042 in the communication device 1800 can be equivalent to the central processing unit 1811 or the central processing unit 1831 in the communication device 1800, or can be equivalent to the program code or instructions stored in the memory 1812.

[0346] It should be understood that the operations on interface board 1840 in the embodiments of the present application are consistent with those on interface board 1830 and, for the sake of brevity, will not be further described. It should be understood that the communication device 1800 of this embodiment may correspond to the dialing device or controller in each of the above-mentioned method embodiments. The main control board 1810, interface board 1830, and / or interface board 1840 in the communication device 1800 may implement the functions and / or various steps performed by the dialing device or controller in each of the above-mentioned method embodiments and, for the sake of brevity, will not be further described here.

[0347] It's worth noting that there may be one or more main control boards (SBCs), which may include a primary SBC and a backup SBC. There may be one or more interface boards. The higher the data processing capability of a communication device, the more interface boards are provided. An interface board may also have one or more physical interface cards. There may be no SBCs, or one or more. Multiple SBCs can be used to achieve load balancing and redundant backup. In a centralized forwarding architecture, a communication device may not require a SBC; the interface board handles service data processing for the entire system. In a distributed forwarding architecture, a communication device may have at least one SBC, which enables data exchange between multiple interface boards, providing high-capacity data exchange and processing capabilities. Alternatively, a communication device may have only one SBC, i.e., no SBC. The functions of the interface board and the SBC are integrated on this single SBC. In this case, the central processing unit (CPU) on the interface board and the CPU on the SBC can be combined into a single CPU on this single SBC, performing the combined functions of the two. The specific architecture to be adopted depends on the specific network deployment scenario and is not intended to be exclusive here.

[0348] In some possible embodiments, the dialing device or controller may be implemented as a virtualized device. The virtualized device may be a virtual machine (VM), a virtual router, or a virtual switch running a program for sending messages. The virtualized device is deployed on a hardware device (e.g., a physical server). For example, the dialing device or controller may be implemented based on a general-purpose physical server in conjunction with network function virtualization (NFV) technology.

[0349] It should be understood that the communication devices in the various product forms mentioned above respectively have any functions of the dialing device or the controller in the above method embodiments, which will not be described in detail here.

[0350] An embodiment of the present application also provides a computer-readable storage medium, which stores instructions. When the instructions are executed on a processor, the processor executes any one of the implementation methods shown in the aforementioned method embodiments.

[0351] An embodiment of the present application also provides a computer program product, which includes a computer program. When a processor runs the computer program, it executes any one of the implementation methods shown in the aforementioned method embodiments.

[0352] Furthermore, an embodiment of the present application also provides a computer program product, which, when executed on a communication device, enables the communication device to execute the method executed by the dialing device or controller in the method embodiments corresponding to Figures 5 to 15 above.

[0353] The present application also provides a chip system including a processor and an interface circuit, wherein the interface circuit is configured to receive instructions and transmit them to the processor, wherein the processor is configured to implement any of the above method embodiments.

[0354] Optionally, the chip system further includes a memory, and the chip system may include one or more processors. The processor may be implemented in hardware or software. When implemented in hardware, the processor may be a logic circuit, an integrated circuit, etc. When implemented in software, the processor may be a general-purpose processor that implements any of the above method embodiments by reading software code stored in the memory.

[0355] Optionally, the memory in the chip system may be one or more memories. The memory may be integrated with the processor or may be provided separately from the processor, which is not limited in this application. For example, the memory may be a non-transient processor, such as a read-only memory (ROM), which may be integrated with the processor on the same chip or provided on different chips. This application does not specifically limit the type of memory or the configuration of the memory and the processor.

[0356] Please refer to Figure 19, which is a schematic diagram of a communication system 1900 proposed in an embodiment of the present application. The communication system 1900 includes: a first device 1901, a second device 1902 and a controller 1903. The first device 1901 and the second device 1902 can be, for example, physical devices such as routers, switches or gateways, or virtual devices that support route publishing and message forwarding. This embodiment does not limit the specific types of the first device 1901 and the second device 1902. The controller 1903 can be a server or computing device that manages the above-mentioned first device 1901 and the second device 1902. Optionally, the first device 1901 can be a communication device 1600, a communication device 1700 or a communication device 1800.

[0357] Please refer to Figure 20, which is a schematic diagram of a communication system 2000 proposed in an embodiment of the present application. The communication system 2000 includes: a first entity 2001 and a second entity 2002. The communication system 2000 is used to execute the method embodiments corresponding to Figures 5 to 15 above.

[0358] In a possible implementation, the first entity 2001 and the second entity 2002 are functional modules, hardware components, or units that perform various operations in the communication system 2000 .

[0359] For example, the communication system 2000 includes a communication device 1600 , a first entity 2001 includes a transceiver module 1601 , and a second entity 2002 includes a processing module 1602 .

[0360] For another example, the communication system 2000 includes a communication device 1700 , a first entity 2001 includes a network interface 1702 , and a second entity 2002 includes a processing unit 1701 .

[0361] For another example, the communication system 2000 includes the communication device 1800 , the first entity 2001 includes the interface board 1830 and / or the interface board 1840 , and the second entity 2002 includes the main control board 1810 .

[0362] In another possible implementation, the first entity 2001 is used to execute the relevant steps performed by the dialing device in the method embodiments corresponding to Figures 5-15 above, and the second entity 2002 is used to execute the relevant steps performed by the controller in the method embodiments corresponding to Figures 5-15 above.

[0363] For example, the second entity 2002 adjusts the quality of service (QoS) policy of the target interface in the first entity 2001 according to the network performance measurement result.

[0364] The above describes the embodiments of the present application in detail. The steps in the method of the embodiments of the present application can be scheduled sequentially, merged or deleted according to actual needs; the modules in the device of the embodiments of the present application can be divided, merged or deleted according to actual needs.

[0365] It should be understood that “one embodiment” or “an embodiment” mentioned throughout the specification means that the specific features, structures or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, “in one embodiment” or “in an embodiment” appearing throughout the specification does not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. It should be understood that in the various embodiments of the present application, the size of the sequence numbers of the above-mentioned processes 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.

[0366] The term "and / or" in this document simply describes a relationship between related objects, indicating that three possible relationships exist. For example, "A and / or B" can mean: A exists alone, A and B exist simultaneously, or B exists alone. Additionally, the character " / " in this document generally indicates that the related objects are in an "or" relationship.

[0367] It should be understood that in the embodiments of the present application, "B corresponding to A" means that B is associated with A and B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B based solely on A, but B can also be determined based on A and / or other information.

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

[0369] In the several embodiments provided in this 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 merely schematic. For example, the division of units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interface, device or unit, which can be electrical, mechanical or other forms.

[0370] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0371] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

Claims

1. A network performance measurement method, characterized in that: The method comprises: Sending a plurality of first detection messages to the target device at a first packet sending frequency to obtain a first detection result, the first detection result indicating the network performance between the dialing device and the target device; In response to the first detection result satisfying the first condition, multiple second detection messages are sent to the target device at a second packet sending frequency to obtain a second detection result, wherein the second detection result indicates the network performance between the dialing device and the target device, and the second packet sending frequency is greater than the first packet sending frequency.

2. The method according to claim 1, characterized in that The method further comprises: In response to the second detection result satisfying the second condition, multiple detection messages are sent hop by hop to multiple nodes on the path between the dialing device and the target device to obtain a network performance measurement result.

3. The method according to claim 1 or 2, characterized in that The sending the plurality of second detection messages to the target device includes: Obtaining flow characteristic information of the real data flow sent by the target device; The plurality of second detection messages are constructed and sent to the target device according to the flow characteristic information of the real data flow.

4. The method according to claim 3, characterized in that The method further comprises: The multiple detection messages are constructed and sent to the multiple nodes respectively according to the flow feature information of the real data flow.

5. The method according to claim 3 or 4, characterized in that The flow characteristic information of the real data flow includes any one or more of the following: Internet Protocol (IP) quintuple information of the real data stream, packet sending frequency of the real data stream, packet sending interval of the real data stream, message size of the real data stream, number of consecutive messages in the real data stream, duration of consecutive messages in the real data stream, or Differentiated Services Code Point (DSCP) of messages in the real data stream.

6. The method according to any one of claims 1 to 5, characterized in that The method further comprises: Adjust the quality of service (QoS) policy of the target interface according to the network performance measurement result.

7. The method according to claim 6, characterized in that The method further comprises: According to the network performance measurement result, indication information is sent to the target node, where the indication information instructs the target node to adjust the QoS policy of the target interface.

8. The method according to claim 6 or 7, characterized in that The adjusting the QoS policy of the target interface includes: reducing the transmission rate of the non-video conference data stream carried by the target interface; And / or, lowering the priority queue PQ of the non-video conference data flow carried by the target interface.

9. The method according to any one of claims 1 to 8, characterized in that The network performance measurement result also includes: identification information of the node where the performance failure occurs.

10. The method according to any one of claims 2 to 9, characterized in that The sending of multiple detection messages to multiple nodes on a path between the dialing device and the target device hop by hop includes: When the target device does not respond to the second probe message, the multiple probe messages are sent hop by hop to multiple nodes on the path between the dialing device and the farthest response node, where the farthest response node is a node on the path between the dialing device and the target device that responds to the second probe message and is the farthest from the dialing device in terms of hops.

11. The method according to any one of claims 1 to 10, characterized in that The sending the plurality of probe messages to a plurality of nodes on a path between the dialing device and the target device hop by hop to obtain the network performance measurement result includes: The multiple probe messages are sent hop by hop to one or more nodes located in the campus network on the path between the dialing device and the target device to obtain the network performance measurement result, wherein the network performance measurement result indicates that the node where the performance failure occurs is located in the campus network or in the wide area network.

12. The method according to claim 11, characterized in that The method includes sending the plurality of detection messages hop by hop to one or more nodes located in the campus network on a path between the dialing device and the target device, comprising: According to the configuration information, the multiple detection messages are sent hop by hop to one or more nodes located in the campus network on the path between the dialing device and the target device, wherein the configuration information indicates the boundary nodes on the path between the dialing device and the target device, wherein the nodes between the dialing device and the boundary nodes on the path belong to the campus network, and the nodes between the boundary nodes and the target device on the path belong to the wide area network.

13. The method according to any one of claims 6 to 12, characterized in that The QoS policy of the target interface includes any one or more of the following information: The priority of the data flow carried by the target interface, the upper limit of the downstream bandwidth of the path, the ratio of the bandwidth value of the real data flow to the upper limit of the downstream bandwidth of the path, the upper limit of the bandwidth of the real data flow, the lower limit of the bandwidth of the real data flow, the bandwidth increase ratio of the real data flow, the bandwidth decrease ratio of the real data flow, the upper limit of the transmission rate of the real data flow, the lower limit of the transmission rate of the real data flow, the transmission rate increase ratio of the real data flow, or the transmission rate decrease ratio of the real data flow.

14. The method according to any one of claims 1 to 13, characterized in that The network performance includes: packet loss rate, and / or delay.

15. The method according to claim 14, characterized in that The first condition includes: a packet loss rate between the dialing device and the target device is greater than or equal to a first threshold, and / or a delay between the dialing device and the target device is greater than or equal to a second threshold; The second condition includes: a packet loss rate between the dialing device and the target device is greater than or equal to a third threshold, and / or a delay between the dialing device and the target device is greater than or equal to a fourth threshold, wherein the third threshold is greater than the first threshold, and the fourth threshold is greater than the second threshold.

16. The method according to any one of claims 2 to 15, characterized in that After obtaining the network performance measurement result, the method further includes: sending a plurality of the first detection messages to the target device to obtain a third detection result, where the third detection result indicates network performance between the dialing device and the target device; When the third detection result meets the third condition, the quality of service (QoS) policy of the target interface is adjusted.

17. The method according to claim 16, characterized in that The adjusting the QoS policy of the target interface includes: Improving the transmission rate of the non-video conference data stream carried by the target interface; And / or, increase the priority queue PQ of the non-video conference data flow carried by the target interface.

18. The method according to any one of claims 1 to 17, characterized in that The method further comprises: The multiple first detection messages are constructed and sent according to the flow characteristic information of the real data flow.

19. A network performance measurement method, characterized in that: The method comprises: Obtaining a network performance measurement result, wherein the network performance measurement result indicates a network performance of a path between the dialing device and the target device; Adjust the quality of service (QoS) policy of the target node according to the network performance measurement result.

20. The method according to claim 19, characterized in that The method further comprises: According to the network performance measurement result, instruction information is sent to the target node, where the instruction information instructs the target node to adjust the QoS policy of the target interface.

21. The method according to claim 19 or 20, characterized in that The adjusting the QoS policy of the target interface includes: reducing the transmission rate of the non-video conference data stream carried by the target interface; And / or, lowering the priority queue PQ of the non-video conference data flow carried by the target interface.

22. The method according to any one of claims 19 to 21, characterized in that The method further comprises: Obtaining an updated network performance measurement result, wherein the updated network performance measurement result indicates that a path between the dialing device and the target device is in a normal state; Adjust the QoS policy of the target interface according to the updated network performance measurement result.

23. The method according to claim 22, characterized in that The adjusting the QoS policy of the target interface includes: Improving the transmission rate of the non-video conference data stream carried by the target interface; And / or, increase the priority queue PQ of the non-video conference data flow carried by the target interface.

24. A communication device, characterized in that: The device includes a transceiver module and a processing module, and the communication device specifically includes: The transceiver module is configured to send a plurality of first detection messages to the target device at a first packet sending frequency to obtain a first detection result, where the first detection result indicates the network performance between the dialing device and the target device; The transceiver module is further configured to, in response to the first detection result satisfying the first condition, send multiple second detection messages to the target device at a second packet sending frequency to obtain a second detection result, wherein the second detection result indicates the network performance between the dialing device and the target device, and the second packet sending frequency is greater than the first packet sending frequency.

25. The communication device according to claim 24, characterized in that The transceiver module is further configured to send multiple detection messages hop by hop to multiple nodes on the path between the dialing device and the target device in response to the second detection result satisfying a second condition, so as to obtain a network performance measurement result.

26. The communication device according to claim 24 or 25, characterized in that The transceiver module is further configured to obtain flow characteristic information of the real data flow sent by the target device; The transceiver module is further configured to construct and send the plurality of second detection messages to the target device according to the flow feature information of the real data flow.

27. The communication device according to claim 26, characterized in that The transceiver module is further configured to construct and send the multiple detection messages to the multiple nodes respectively according to the flow feature information of the real data flow.

28. The communication device according to claim 26 or 27, characterized in that The flow characteristic information of the real data flow includes any one or more of the following: Internet Protocol (IP) quintuple information of the real data stream, packet sending frequency of the real data stream, packet sending interval of the real data stream, message size of the real data stream, number of consecutive messages in the real data stream, duration of consecutive messages in the real data stream, or Differentiated Services Code Point (DSCP) of messages in the real data stream.

29. The communication device according to any one of claims 25 to 28, characterized in that: The processing module is used to adjust the quality of service (QoS) policy of the target interface according to the network performance measurement result.

30. The communication device according to any one of claims 24 to 29, characterized in that: The communication device is further configured to perform the method according to any one of claims 7 to 23.

31. A communication system, characterized in that: The communication system comprises a first entity and / or a second entity, and the communication system is configured to perform the method according to any one of claims 1 to 23.

32. The communication system according to claim 31, wherein: The first entity is a dialing device, and the second entity is a controller; The first entity is configured to perform the method according to any one of claims 1 to 18; The second entity is configured to perform the method according to any one of claims 19 to 23.

33. The communication system according to claim 31, wherein: The first entity is a dialing device, and the second entity is a controller; The second entity adjusts the quality of service (QoS) policy of the target interface in the first entity according to the network performance measurement result.

34. A communication device, characterized in that: The communication device includes a processor and a memory, the memory is used to store program code, and the processor is used to call the program code in the memory so that the communication device executes the method according to any one of claims 1 to 23.

35. A computer-readable storage medium, characterized in that The computer-readable storage medium stores instructions, and when the instructions are executed on a processor, the method according to any one of claims 1 to 23 is executed.

36. A computer program product, characterized in that The method comprises a computer program, and when a processor runs the computer program, the method according to any one of claims 1 to 23 is executed.

Citation Information

Patent Citations

  • Method and device for detecting network quality

    CN103957538A

  • Method for controlling network congestion and related device

    CN114095434A

  • Link quality detection method and device

    CN114615178A

  • Method, device and system for determining network optimization strategy

    CN115776443A

  • Analysis of network performance

    GB2542828A