Service flow analysis method, device and system

Through network management equipment collecting and analyzing the flow traffic characteristics on multiple network equipment, combining service measurement task information, network measurement with service as the granularity is realized, solving the problem that the existing technology is difficult to monitor the service quality of multiple service flows, and improving traffic analysis efficiency.

CN120223567APending Publication Date: 2025-06-27HUAWEI TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202311820481.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-26
Publication Date
2025-06-27

AI Technical Summary

Technical Problem

The prior art is difficult to conduct network measurements on the basis of services, and it is impossible to effectively monitor and analyze the quality of services involving multiple service flows.

Method used

The network management device collects the corresponding traffic characteristics of the flow identification of the flows passing through multiple network devices, and combines the service measurement task information to determine the service's multiple service flows and their traffic characteristics, thereby realizing network measurement with service as granularity.

Benefits of technology

It realizes traffic analysis for services with multiple service flows, helps to monitor and analyze service quality, and improves the efficiency of traffic analysis of services by network management equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120223567A_ABST
    Figure CN120223567A_ABST
Patent Text Reader

Abstract

The invention provides a service flow analysis method, device and system, and belongs to the technical field of networks. A network management device obtains measurement task information of a service and issues a measurement command to a plurality of network devices so as to instruct the network devices to count flow characteristics of flows flowing through the network devices. Wherein the service comprises a plurality of service flows, and the measurement task information comprises device identifiers of a plurality of terminal devices associated with the service. And after receiving the measurement results reported by the plurality of network devices, the network management device determines a flow analysis result corresponding to the service according to the measurement results sent by the plurality of network devices and the device identifiers of the plurality of terminal devices. By collecting the flow characteristics corresponding to the flow identifiers of the flows passing through the multiple network devices in the network, the flow analysis result corresponding to the service can be determined according to the flow characteristics of the multiple service flows of the service, network measurement with the service as granularity is achieved, and monitoring and analysis of the service quality are facilitated.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of network technologies, and particularly to a service traffic analysis method, apparatus, and system. Background Art

[0002] With the rapid development of network technologies, more and more services need to transmit traffic through the network during operation. Since the transmission situation of service traffic in the network directly affects service quality, it is crucial to analyze the transmission situation of service traffic in the network. Summary of the Invention

[0003] This application provides a service traffic analysis method, apparatus, and system.

[0004] In a first aspect, a service traffic analysis method is provided. This method can be applied to a network management device. The method includes: the network management device obtains measurement task information of a service, where the measurement task information includes device identifiers of multiple terminal devices associated with the service. The service includes multiple service flows, and the multiple terminal devices include sending devices and receiving devices of the multiple service flows. The network management device sends measurement commands to multiple network devices in the network, where the measurement commands are used to instruct the network devices that receive the measurement commands to count traffic characteristics of one or more flows passing through the network devices. The network management device receives measurement results sent by the multiple network devices. The measurement result sent by each network device respectively includes traffic characteristics corresponding to the flow identifier of one or more flows passing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow. The network management device determines a traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices.

[0005] This application collects traffic characteristics corresponding to the flow identifiers of flows passing through multiple network devices in the network by the network management device, so that the network management device can determine multiple service flows of the service according to the collected flow identifiers and the device identifiers in the measurement task information of the service for a service with multiple service flows, and then determine a traffic analysis result corresponding to the service according to the traffic characteristics of the multiple service flows, thereby realizing network measurement at the service granularity, which helps to monitor and analyze service quality.

[0006] Optionally, the service is a collective communication or a distributed training task. Among them, the distributed training task may include one or more collective communications.

[0007] This application can analyze the traffic characteristics of each service flow in the collective communication based on the characteristics of the collective communication, and present the traffic analysis result at the collective communication granularity, so as to cooperate with the computing task and assist in analyzing whether the slow or failed distributed training is caused by the network side or the computing side.

[0008] Optionally, the network management device determines the implementation manner of the traffic analysis result corresponding to the service according to the measurement results sent by multiple network devices and the device identifiers of multiple terminal devices, including: for the measurement result sent by each network device, the network management device determines the service flow belonging to the service in one or more flows passing through the network device according to the flow identifier in the measurement result and the device identifiers of the multiple terminal devices. The network management device determines the traffic analysis result according to the traffic characteristics of multiple service flows in the measurement results sent by multiple network devices. The network management device may determine the flow in which both the sending device and the receiving device belong to the multiple terminal devices as the service flow of the service.

[0009] In the first implementation manner, the multiple network devices include a first network device, and the measurement result sent by the first network device includes the first traffic characteristics of a first service flow, the first service flow being any one of the multiple service flows, and the first service flow including multiple packet groups respectively used to complete multiple data transmissions. The first traffic characteristics include the transmission start time and transmission end time of each of the multiple packet groups. The implementation manner for the network management device to determine the traffic analysis result according to the traffic characteristics of multiple service flows in the measurement results sent by multiple network devices includes: the network management device determines the flow completion time (FCT) of the first service flow in the first statistical period according to the transmission duration of one or more packet groups whose transmission end time is within the first statistical period among the multiple packet groups. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. Among them, the traffic analysis result includes the flow completion time of multiple service flows in multiple statistical periods respectively, and the first statistical period is any one of the multiple statistical periods.

[0010] In this implementation manner, the network device only needs to count the start time and end time of each data transmission in the flows passing through itself, and the network management device performs traffic analysis on the service according to the traffic characteristics reported by the network device to determine the flow completion time of multiple service flows of the service in multiple statistical periods respectively. This implementation manner has relatively low requirements for the processing performance of the network device.

[0011] The second implementation manner: The multiple network devices include a second network device. The measurement result sent by the second network device includes the second traffic characteristic of a second traffic flow, where the second traffic flow is any one of the multiple traffic flows, and the second traffic flow includes multiple packet groups respectively used to complete multiple data transmissions. The second traffic characteristic includes the flow completion time of the second traffic flow within a second statistical period. The flow completion time of the second traffic flow within the second statistical period is obtained based on the transmission durations of one or more packet groups among the multiple packet groups whose transmission end times are within the second statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group. Among them, the traffic analysis result includes the flow completion times of the multiple traffic flows within multiple statistical periods respectively, and the second statistical period is any one of the multiple statistical periods.

[0012] In this implementation manner, the network device statistics the start time and end time of each data transmission in the flows passing through itself, and performs traffic analysis to determine the flow completion times of the flows passing through itself within multiple statistical periods. The network management device summarizes and statistics the traffic characteristics reported by the multiple network devices, and then the flow completion times of the multiple traffic flows of the service within multiple statistical periods can be obtained. This implementation manner has a relatively low requirement for the processing performance of the network management device, and can improve the traffic analysis efficiency of the network management device for the service.

[0013] Optionally, the flow completion time of a traffic flow within a statistical period is the statistical value of the transmission durations of all packet groups in the traffic flow whose transmission end times are within the statistical period. The statistical value can be an average value, a median value, a maximum value or a quantile value.

[0014] Optionally, for any one of the multiple traffic flows, if the difference between the flow completion time of the traffic flow within a third statistical period and the flow completion time of the traffic flow within a fourth statistical period is greater than a first threshold, the network management device determines that the transmission quality of the traffic flow has deteriorated. The third statistical period is temporally after the fourth statistical period. That is to say, if the flow completion time of a certain traffic flow becomes longer, it means that the transmission quality of the traffic flow has deteriorated. Among them, the traffic analysis result also includes an indication of the traffic flows among the multiple traffic flows whose transmission qualities have deteriorated.

[0015] Under the above first or second implementation manner, by measuring the flow completion times of multiple service flows of the same service in multiple statistical periods respectively, the change of the flow completion times of multiple service flows is presented with the service as the granularity. Among them, the change of the flow completion time of a single service flow over time can reflect the change of its own transmission quality, and the change of the flow completion times of multiple service flows over time can reflect the change of the overall transmission quality of the service. This helps the operation and maintenance personnel analyze whether the overall transmission quality of the service has deteriorated and the specific service flow that causes the deterioration of the service transmission quality.

[0016] In the third implementation manner, the multiple network devices include a third network device. The measurement result sent by the third network device includes the third traffic characteristics of the third service flow, where the third service flow is any one of the multiple service flows, and the third service flow includes multiple packet groups respectively used to complete multiple data transmissions. The third traffic characteristics include the transmission start time, transmission end time, and traffic volume of each of the multiple packet groups. The network management device determines the implementation manner of the traffic analysis result according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices, including: the network management device determines the throughput of the third network device for the third service flow in the fifth statistical period according to the transmission duration and traffic volume of one or more packet groups whose transmission end time is in the fifth statistical period among the multiple packet groups. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. Among them, the traffic analysis result includes the throughput of the multiple network devices for the service flows passing through themselves in multiple statistical periods, and the fifth statistical period is any one of the multiple statistical periods.

[0017] In this implementation manner, the network device only needs to count the transmission start time, end time, and traffic volume of each data transmission in the flow passing through itself. The network management device performs traffic analysis on the service according to the traffic characteristics reported by the multiple network devices to determine the throughput of the multiple network devices for the multiple service flows of the service in multiple statistical periods. This implementation manner has relatively low requirements for the processing performance of the network device.

[0018] The fourth implementation manner, the multiple network devices include a fourth network device, the measurement result sent by the fourth network device includes the fourth traffic characteristic of the fourth traffic flow, the fourth traffic flow is any one of the multiple traffic flows, and the fourth traffic flow includes multiple packet groups respectively used to complete multiple data transmissions. The fourth traffic characteristic includes the throughput of the fourth network device for the fourth traffic flow within the sixth statistical period, and the throughput of the fourth traffic flow within the sixth statistical period is obtained based on the transmission durations and traffic volumes of one or more packet groups among the multiple packet groups whose transmission end times are within the sixth statistical period. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. Among them, the traffic analysis result includes the throughputs of the multiple network devices for the traffic flows passing through themselves respectively within multiple statistical periods, and the sixth statistical period is any one of the multiple statistical periods.

[0019] In this implementation manner, the network device statistics the start time, end time and traffic volume of each data transmission in the traffic flow passing through itself, and performs traffic analysis to determine the throughput of the traffic flow passing through itself within multiple statistical periods. The network management device aggregates and statistics the traffic characteristics reported by the multiple network devices, and then the throughputs of the multiple network devices for the multiple traffic flows of the service within multiple statistical periods can be obtained. This implementation manner has relatively low requirements for the processing performance of the network management device and can improve the traffic analysis efficiency of the network management device for the service.

[0020] Optionally, for any one of the multiple traffic flows, if the difference between the throughput of the traffic flow passing through any network device for the traffic flow within the seventh statistical period and the throughput of the network device for the traffic flow within the eighth statistical period is greater than the second threshold, the network management device determines that the transmission quality of the traffic flow has deteriorated. The eighth statistical period is after the seventh statistical period in time sequence. That is to say, if the throughput of a certain traffic flow of the network device becomes smaller, it means that the transmission quality of the traffic flow has deteriorated. Among them, the traffic analysis result further includes an indication of the traffic flows whose transmission quality has deteriorated among the multiple traffic flows.

[0021] Under the above-mentioned third implementation manner or fourth implementation manner, by measuring the throughputs of the multiple network devices for the multiple traffic flows of the same service within multiple statistical periods, the change of the throughput of the network device for the traffic flow over time is presented in terms of the service. Among them, the change of the throughput of a single traffic flow of the network device over time can reflect the change of the transmission quality of the traffic flow itself, and the change of the throughputs of the multiple network devices for the multiple traffic flows over time can reflect the change of the overall transmission quality of the service. This helps the operation and maintenance personnel analyze whether the overall transmission quality of the service has deteriorated and the specific traffic flow that causes the deterioration of the service transmission quality.

[0022] Optionally, in combination with any one of the first to fourth embodiments described above, the implementation manner in which the network management device sends measurement commands to multiple network devices in the network includes: the network management device sends measurement commands to multiple access network devices in the network respectively, and each access network device is respectively used to connect one or more terminal devices in the multiple terminal devices to the network.

[0023] Since the service flows sent or received by the terminal devices associated with the service will necessarily pass through the access network devices, and when a service flow is transmitted in the network, the flow completion time and throughput of the service flow on different network devices are basically the same. Therefore, when the statistical traffic characteristics include the flow completion time and / or throughput, it is only necessary to statistically analyze the traffic characteristics of the flows passing through the access network devices. In this way, on the premise of ensuring that the traffic characteristics of all service flows of the service are statistically analyzed, the number of network devices participating in the service traffic analysis can be reduced, saving the communication resources between the network devices and the network management device and their respective processing resources.

[0024] In the fifth embodiment, the measurement results sent by each network device respectively include the traffic sizes of one or more flows passing through the network device. The implementation manner in which the network management device determines the traffic analysis result according to the traffic characteristics of multiple service flows in the measurement results sent by multiple network devices includes: for each network device, the network management device determines the cumulative traffic size of the network device for the service according to the traffic sizes of all service flows in the measurement results sent by the network device. The network management device determines the load balancing degree of the multiple network devices for the service according to the cumulative traffic sizes of the multiple network devices for the service respectively. The load balancing degree is negatively correlated with the difference between the cumulative traffic sizes of the multiple network devices for the service. Wherein, the traffic analysis result includes the load balancing degree of the multiple network devices for the service.

[0025] The higher the load balancing degree, the more evenly the traffic of the multiple service flows of the service is distributed on the network devices when transmitted in the network, and the lower the probability of network device congestion. By analyzing the load balancing degrees of different network devices on the network path through which the service flow passes, the network management device of the present application helps the operation and maintenance side analyze and adjust the transmission path of the service flow in the service, thereby improving the load balancing degree of multiple network devices for the service.

[0026] Optionally, in combination with the fifth embodiment described above, the implementation manner in which the network management device sends measurement commands to multiple network devices in the network includes: the network management device sends measurement commands to all network devices on the network paths of multiple service flows in the network respectively. This can reduce the number of network devices participating in the service traffic analysis, thereby saving the communication resources between the network devices and the network management device and their respective processing resources.

[0027] Optionally, the measurement command further includes a measurement indication, which includes one or more of the following: a set of source Internet Protocol (IP) addresses, where the set of source IP addresses includes the IP addresses of one or more of the multiple terminal devices, and the set of source IP addresses is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows that pass through the network device and whose source IP addresses belong to the set of source IP addresses; a set of destination IP addresses, where the set of destination IP addresses includes the IP addresses of one or more of the multiple terminal devices, and the set of destination IP addresses is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows that pass through the network device and whose destination IP addresses belong to the set of destination IP addresses; an incoming direction indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more incoming flows received by the network device; an outgoing direction indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more outgoing flows sent by the network device; an interface indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows that pass through one or more specified interfaces of the network device, and the measurement result sent by the network device further includes an interface identifier, which is used to indicate the interface through which the flow passes on the network device.

[0028] In this application, the network management device enables the network device to specifically count the traffic characteristics of some flows by carrying a measurement indication in the measurement command, reducing the network device's counting of the traffic characteristics of useless flows, thereby saving the processing resources of the network device.

[0029] Optionally, the measurement task information further includes a traffic analysis task, which is used to indicate the traffic analysis type. The network management device can generate a measurement command according to the traffic analysis task, and the type of traffic characteristics indicated to be counted by the measurement command matches the traffic analysis type indicated by the traffic analysis task. Correspondingly, the network management device determines the implementation method of the traffic analysis result corresponding to the service according to the measurement results sent by multiple network devices and the device identifiers of multiple terminal devices, including: the network management device determines the traffic analysis result of the service under the traffic analysis type indicated by the traffic analysis task according to the measurement results sent by multiple network devices and the device identifiers of multiple terminal devices.

[0030] Optionally, an implementation method for the network management device to obtain the measurement task information of the service includes: the network management device receives a service measurement task sent by the service platform, and the service measurement task includes the measurement task information.

[0031] Optionally, the network management device sends a service measurement result to the service platform, and the service measurement result includes a traffic analysis result.

[0032] Optionally, the above-mentioned multiple service flows are remote direct memory access (RDMA) flows.

[0033] In a second aspect, a service traffic analysis method is provided. The method can be applied to a service platform. The method includes: the service platform sends a service measurement task to a network management device, and the service measurement task includes measurement task information of the service. The measurement task information includes device identifiers of multiple terminal devices associated with the service. The service includes multiple service flows, and the multiple terminal devices include sending devices and receiving devices of the multiple service flows. The service platform receives a service measurement result sent by the network management device, and the service measurement result includes a traffic analysis result corresponding to the service.

[0034] In this application, the service platform can send a service measurement task to the network management device to trigger the network management device to execute the service traffic analysis process. Then the service platform can receive the traffic analysis result sent by the network management device, so that the operation and maintenance personnel can view the running status of the service in the network through the service platform.

[0035] Optionally, the above-mentioned service is a collective communication or a distributed training task.

[0036] Optionally, the service platform outputs the traffic analysis result. The service platform can display the traffic analysis result, or the service platform can send the traffic analysis result to a display device for display, facilitating the operation and maintenance personnel to view the traffic analysis result corresponding to the service, so as to implement the quality monitoring and management of the service.

[0037] In a third aspect, a service traffic analysis method is provided. The method can be applied to a network device. The method includes: the network device receives a measurement command sent by the network management device, and the measurement command is used to instruct the network device to count the traffic characteristics of one or more flows flowing through the network device. The network device counts the traffic characteristics of one or more flows flowing through the network device according to the measurement command. The network device sends a measurement result to the network management device, and the measurement result includes the traffic characteristics corresponding to the flow identifiers of one or more flows flowing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow.

[0038] Optionally, the measurement command further includes a measurement indication, which includes one or more of the following: a set of source IP addresses, which includes one or more IP addresses and is used to instruct the network device to statistically analyze the traffic characteristics of the flows passing through the network device and whose source IP addresses belong to the set of source IP addresses; a set of destination IP addresses, which includes one or more IP addresses and is used to instruct the network device to statistically analyze the traffic characteristics of the flows passing through the network device and whose destination IP addresses belong to the set of destination IP addresses; an inbound direction indication, which is used to instruct the network device to statistically analyze the traffic characteristics of one or more flows received by the network device; an outbound direction indication, which is used to instruct the network device to statistically analyze the traffic characteristics of one or more flows sent by the network device; an interface indication, which is used to instruct the network device to statistically analyze the traffic characteristics of the flows passing through one or more specified interfaces of the network device, and the measurement result sent by the network device further includes an interface identifier, which is used to indicate the interface through which the flow passes on the network device.

[0039] In the first implementation manner, the measurement result includes the first traffic characteristics of the first flow, where the first flow is any one of the one or more flows passing through the network device, the first flow includes multiple packet groups respectively used to complete multiple data transmissions, and the first traffic characteristics include the transmission start time and transmission end time of each of the multiple packet groups.

[0040] In the second implementation manner, the measurement result includes the second traffic characteristics of the second flow, where the second flow is any one of the one or more flows passing through the network device, the second flow includes multiple packet groups respectively used to complete multiple data transmissions. The second traffic characteristics include the flow completion time of the second flow within one or more statistical periods. The flow completion time of the second flow within each statistical period is respectively obtained based on the transmission durations of one or more packet groups among the multiple packet groups whose transmission end times are within the statistical period. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group.

[0041] In the third implementation manner, the measurement result includes the third traffic characteristics of the third flow, where the third flow is any one of the one or more flows passing through the network device, the third flow includes multiple packet groups respectively used to complete multiple data transmissions, and the third traffic characteristics include the transmission start time, transmission end time, and traffic volume of each of the multiple packet groups.

[0042] The fourth implementation manner, the measurement result includes the fourth traffic characteristic of the fourth flow, the fourth flow is any one of one or more flows passing through the network device, and the fourth flow includes a plurality of packet groups respectively used to complete multiple data transmissions. The fourth traffic characteristic includes the throughput of the fourth flow by the network device within one or more statistical periods. The throughput of the fourth flow within each statistical period is obtained based on the transmission durations and traffic volumes of one or more packet groups among the plurality of packet groups whose transmission end times are within the statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group.

[0043] The fifth implementation manner, the measurement result includes the traffic volumes of one or more flows passing through the network device.

[0044] In a fourth aspect, a service traffic analysis device is provided. The device can be applied to a network management device. The device includes a plurality of functional modules, and the plurality of functional modules interact with each other to implement the methods in the first aspect and its various implementation manners above. The plurality of functional modules can be implemented based on software, hardware, or a combination of software and hardware, and the plurality of functional modules can be arbitrarily combined or divided based on specific implementations.

[0045] For example, the device includes, but is not limited to, an acquisition module, a sending module, a receiving module, and a determination module. Optionally, the device further includes a generation module.

[0046] Among them, the acquisition module is used to acquire measurement task information of the service. The measurement task information includes device identifiers of a plurality of terminal devices associated with the service. The service includes a plurality of service flows, and the plurality of terminal devices include sending devices and receiving devices of the plurality of service flows. The sending module is used to send measurement commands to a plurality of network devices in the network. The measurement commands are used to instruct the network devices that receive the measurement commands to count the traffic characteristics of one or more flows passing through the network devices. The receiving module is used to receive the measurement results sent by the plurality of network devices. The measurement result sent by each network device respectively includes the traffic characteristics corresponding to the flow identifiers of one or more flows passing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow. The determination module is used to determine the traffic analysis result corresponding to the service according to the measurement results sent by the plurality of network devices and the device identifiers of the plurality of terminal devices.

[0047] Optionally, the service is a group communication or a distributed training task.

[0048] Optionally, the determining module is configured to: for the measurement results sent by each network device, determine, according to the flow identifier in the measurement results and the device identifiers of the multiple terminal devices, the service flows belonging to the service among one or more flows passing through the network device; and determine the traffic analysis result according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices.

[0049] In a first implementation manner, the multiple network devices include a first network device, and the measurement result sent by the first network device includes the first traffic characteristic of a first service flow, where the first service flow is any one of the multiple service flows, and the first service flow includes multiple packet groups respectively used to complete multiple data transmissions. The first traffic characteristic includes the transmission start time and the transmission end time of each of the multiple packet groups. The determining module is configured to: determine the flow completion time of the first service flow in the first statistical period according to the transmission durations of one or more packet groups whose transmission end times are within the first statistical period among the multiple packet groups, and the transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group. Wherein, the traffic analysis result includes the flow completion times of the multiple service flows in multiple statistical periods respectively, and the first statistical period is any one of the multiple statistical periods.

[0050] In a second implementation manner, the multiple network devices include a second network device, and the measurement result sent by the second network device includes the second traffic characteristic of a second service flow, where the second service flow is any one of the multiple service flows, and the second service flow includes multiple packet groups respectively used to complete multiple data transmissions. The second traffic characteristic includes the flow completion time of the second service flow in a second statistical period, and the flow completion time of the second service flow in the second statistical period is obtained based on the transmission durations of one or more packet groups whose transmission end times are within the second statistical period among the multiple packet groups, and the transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group. Wherein, the traffic analysis result includes the flow completion times of the multiple service flows in multiple statistical periods respectively, and the second statistical period is any one of the multiple statistical periods.

[0051] Optionally, the flow completion time of a service flow in a statistical period is the statistical value of the transmission durations of all packet groups whose transmission end times are within the statistical period in the service flow.

[0052] Optionally, in combination with the first or second implementation mode described above, the determining module is further configured to, for any one of the multiple service flows, if the difference between the flow completion time of the service flow in the third statistical period and the flow completion time of the service flow in the fourth statistical period is greater than a first threshold, determine that the transmission quality of the service flow has deteriorated, where the third statistical period is temporally after the fourth statistical period. Wherein, the traffic analysis result further includes an indication of the service flows among the multiple service flows whose transmission quality has deteriorated.

[0053] In the third implementation mode, the multiple network devices include a third network device, and the measurement result sent by the third network device includes the third traffic characteristics of a third service flow, where the third service flow is any one of the multiple service flows, and the third service flow includes multiple packet groups respectively used to complete multiple data transmissions. The third traffic characteristics include the transmission start time, transmission end time, and traffic volume of each of the multiple packet groups, and the determining module is configured to: determine the throughput of the third network device for the third service flow in the fifth statistical period according to the transmission duration and traffic volume of one or more packet groups whose transmission end time is within the fifth statistical period among the multiple packet groups, and the transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. Wherein, the traffic analysis result includes the throughput of the multiple network devices for the service flows passing through themselves respectively in multiple statistical periods, and the fifth statistical period is any one of the multiple statistical periods.

[0054] In the fourth implementation mode, the multiple network devices include a fourth network device, and the measurement result sent by the fourth network device includes the fourth traffic characteristics of a fourth service flow, where the fourth service flow is any one of the multiple service flows, and the fourth service flow includes multiple packet groups respectively used to complete multiple data transmissions. The fourth traffic characteristics include the throughput of the fourth network device for the fourth service flow in the sixth statistical period, and the throughput of the fourth service flow in the sixth statistical period is obtained based on the transmission duration and traffic volume of one or more packet groups whose transmission end time is within the sixth statistical period among the multiple packet groups, and the transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. Wherein, the traffic analysis result includes the throughput of the multiple network devices for the service flows passing through themselves respectively in multiple statistical periods, and the sixth statistical period is any one of the multiple statistical periods.

[0055] Optionally, in combination with the third or fourth implementation mode described above, the determining module is further configured to, for any one of the multiple service flows, if the difference between the throughput of the service flow by any network device in the seventh statistical period and the throughput of the service flow by the network device in the eighth statistical period is greater than a second threshold, determine that the transmission quality of the service flow has deteriorated, where the eighth statistical period is temporally after the seventh statistical period. Wherein, the traffic analysis result further includes an indication of the service flows among the multiple service flows whose transmission quality has deteriorated.

[0056] Optionally, in combination with any one of the first to fourth implementation modes described above, the sending module is configured to: send the measurement command to multiple access network devices in the network respectively, and each access network device is respectively configured to connect one or more of the multiple terminal devices to the network.

[0057] In the fifth implementation mode, the measurement results sent by each network device respectively include the traffic sizes of one or more flows passing through the network device. The determining module is configured to: for each network device, determine the cumulative traffic size of the network device for the service according to the traffic sizes of all service flows in the measurement results sent by the network device; determine the load balancing degree of the multiple network devices for the service according to the cumulative traffic sizes of the multiple network devices for the service respectively, and the load balancing degree is negatively correlated with the difference between the cumulative traffic sizes of the multiple network devices for the service. Wherein, the traffic analysis result includes the load balancing degree of the multiple network devices for the service.

[0058] Optionally, in combination with the fifth implementation mode described above, the sending module is configured to: send the measurement command to all network devices on the network path of the multiple service flows in the network respectively.

[0059] Optionally, the measurement command further includes a measurement indication, which includes one or more of the following: a set of source IP addresses, which includes the IP addresses of one or more of the multiple terminal devices, and is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows passing through the network device and whose source IP addresses belong to the set of source IP addresses; a set of destination IP addresses, which includes the IP addresses of one or more of the multiple terminal devices, and is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows passing through the network device and whose destination IP addresses belong to the set of destination IP addresses; an incoming direction indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more incoming flows received by the network device; an outgoing direction indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more outgoing flows sent by the network device; an interface indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows passing through one or more specified interfaces of the network device, and the measurement result sent by the network device further includes an interface identifier, which is used to indicate the interface through which the flow passes on the network device.

[0060] Optionally, the measurement task information further includes a traffic analysis task, which is used to indicate the traffic analysis type. A generation module is configured to generate the measurement command according to the traffic analysis task, and the type of the traffic characteristics indicated to be counted by the measurement command matches the traffic analysis type indicated by the traffic analysis task. Correspondingly, a determination module is configured to determine the traffic analysis result of the service under the traffic analysis type indicated by the traffic analysis task according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices.

[0061] Optionally, an acquisition module is configured to receive a service measurement task sent by a service platform, and the service measurement task includes the measurement task information.

[0062] Optionally, a sending module is further configured to send a service measurement result to the service platform, and the service measurement result includes the traffic analysis result.

[0063] Optionally, the multiple service flows are RDMA flows.

[0064] Fifth aspect, a service traffic analysis device is provided. This device can be applied to a service platform. The device includes multiple functional modules, and the multiple functional modules interact with each other to implement the methods in the above-mentioned second aspect and its various embodiments. The multiple functional modules can be implemented based on software, hardware, or a combination of software and hardware, and the multiple functional modules can be arbitrarily combined or divided based on specific implementations.

[0065] For example, the device includes, but is not limited to, a sending module and a receiving module. Optionally, the device further includes an output module.

[0066] Among them, the sending module is used to send a service measurement task to a network management device. The service measurement task includes measurement task information of the service. The measurement task information includes device identifiers of multiple terminal devices associated with the service. The service includes multiple service flows, and the multiple terminal devices include sending devices and receiving devices of the multiple service flows. The receiving module is used to receive a service measurement result sent by the network management device. The service measurement result includes a traffic analysis result corresponding to the service.

[0067] Optionally, the service is a group communication or a distributed training task.

[0068] Optionally, the output module is used to output the traffic analysis result.

[0069] Sixth aspect, a service traffic analysis device is provided. This device can be applied to a network device. The device includes multiple functional modules, and the multiple functional modules interact with each other to implement the methods in the above-mentioned third aspect and its various embodiments. The multiple functional modules can be implemented based on software, hardware, or a combination of software and hardware, and the multiple functional modules can be arbitrarily combined or divided based on specific implementations.

[0070] For example, the device includes, but is not limited to, a receiving module, a processing module, and a sending module.

[0071] Among them, the receiving module is used to receive a measurement command sent by a network management device. The measurement command is used to instruct the network device to count traffic characteristics of one or more flows flowing through the network device. The processing module is used to count traffic characteristics of one or more flows flowing through the network device according to the measurement command. The sending module is used to send a measurement result to the network management device. The measurement result includes traffic characteristics corresponding to flow identifiers of one or more flows flowing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow.

[0072] Optionally, the measurement command further includes a measurement indication, and the measurement indication includes one or more of the following: a set of source IP addresses, the set of source IP addresses including one or more IP addresses, and the set of source IP addresses being used to instruct the network device to statistically analyze traffic characteristics of flows passing through the network device and having source IP addresses belonging to the set of source IP addresses; a set of destination IP addresses, the set of destination IP addresses including one or more IP addresses, and the set of destination IP addresses being used to instruct the network device to statistically analyze traffic characteristics of flows passing through the network device and having destination IP addresses belonging to the set of destination IP addresses; an incoming direction indication, the incoming direction indication being used to instruct the network device to statistically analyze traffic characteristics of one or more incoming flows received by the network device; an outgoing direction indication, the outgoing direction indication being used to instruct the network device to statistically analyze traffic characteristics of one or more outgoing flows sent by the network device; an interface indication, the interface indication being used to instruct the network device to statistically analyze traffic characteristics of flows passing through one or more specified interfaces of the network device, and the measurement result sent by the network device further includes an interface identifier, and the interface identifier being used to indicate the interface through which the flow passes on the network device.

[0073] Optionally, the measurement result includes first traffic characteristics of a first flow, the first flow being any one of the one or more flows, the first flow including a plurality of packet groups respectively used to complete multiple data transmissions, and the first traffic characteristics including the transmission start time and the transmission end time of each of the plurality of packet groups.

[0074] Optionally, the measurement result includes second traffic characteristics of a second flow, the second flow being any one of the one or more flows, the second flow including a plurality of packet groups respectively used to complete multiple data transmissions, and the second traffic characteristics including the flow completion time of the second flow within one or more statistical periods, and the flow completion time of the second flow within each statistical period being respectively obtained based on the transmission durations of one or more packet groups among the plurality of packet groups whose transmission end times are within the statistical period, and the transmission duration of each packet group being obtained based on the transmission end time and the transmission start time of the packet group.

[0075] Optionally, the measurement result includes third traffic characteristics of a third flow, the third flow being any one of the one or more flows, the third flow including a plurality of packet groups respectively used to complete multiple data transmissions, and the third traffic characteristics including the transmission start time, the transmission end time, and the traffic volume of each of the plurality of packet groups.

[0076] Optionally, the measurement result includes a fourth traffic characteristic of a fourth flow, where the fourth flow is any one of the one or more flows, the fourth flow includes a plurality of packet groups respectively for completing multiple data transmissions, the fourth traffic characteristic includes the throughput of the network device for the fourth flow within one or more statistical periods, and the throughput of the fourth flow within each statistical period is obtained based on the transmission durations and traffic sizes of one or more packet groups among the plurality of packet groups whose transmission end times are within the statistical period, and the transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group.

[0077] Optionally, the measurement result includes the traffic sizes of the one or more flows.

[0078] In a seventh aspect, a service traffic analysis apparatus is provided. The apparatus may be a network management device and includes: a processor and a memory;

[0079] The memory is configured to store a computer program, and the computer program includes program instructions;

[0080] The processor is configured to call the computer program to implement the methods in the first aspect and its various embodiments described above.

[0081] In an eighth aspect, a service traffic analysis apparatus is provided. The apparatus may be a service platform and includes: a processor and a memory;

[0082] The memory is configured to store a computer program, and the computer program includes program instructions;

[0083] The processor is configured to call the computer program to implement the methods in the second aspect and its various embodiments described above.

[0084] In a ninth aspect, a service traffic analysis apparatus is provided. The apparatus may be a network device and includes: a processor and a memory;

[0085] The memory is configured to store a computer program, and the computer program includes program instructions;

[0086] The processor is configured to call the computer program to implement the methods in the third aspect and its various embodiments described above.

[0087] In a tenth aspect, a determination service traffic analysis system is provided, including: a network management device and a plurality of network devices. The network management device is configured to execute the methods in the first aspect and its various embodiments described above, and the network devices are configured to execute the methods in the third aspect and its various embodiments described above.

[0088] Optionally, the system further includes a service platform, which is used to execute the methods in the second aspect and its various embodiments described above.

[0089] In an eleventh aspect, a computer-readable storage medium is provided. Instructions are stored on the computer-readable storage medium. When the instructions are executed by a processor of a network management device, the methods in the first aspect and its various embodiments described above are implemented; or, when the instructions are executed by a processor of a service platform, the methods in the second aspect and its various embodiments described above are implemented; or, when the instructions are executed by a processor of a network device, the methods in the third aspect and its various embodiments described above are implemented.

[0090] In a twelfth aspect, a computer program product is provided, including a computer program. When the computer program is executed by a processor, the methods in the first aspect and its various embodiments described above are implemented, or the methods in the second aspect and its various embodiments described above are implemented, or the methods in the third aspect and its various embodiments described above are implemented.

[0091] In a thirteenth aspect, a chip is provided. The chip includes a programmable logic circuit and / or program instructions. When the chip runs, the methods in the first aspect and its various embodiments described above are implemented, or the methods in the second aspect and its various embodiments described above are implemented, or the methods in the third aspect and its various embodiments described above are implemented. Description of the Drawings

[0092] Figure 1 is a view of a distributed training task provided by an embodiment of the present application;

[0093] Figure 2 is a schematic diagram of an implementation scenario provided by an embodiment of the present application;

[0094] Figure 3 is a schematic flowchart of a service traffic analysis method provided by an embodiment of the present application;

[0095] Figure 4 is a schematic diagram of a synchronization measurement result provided by an embodiment of the present application;

[0096] Figure 5 is a schematic diagram of a throughput performance measurement result provided by an embodiment of the present application;

[0097] Figure 6 is a schematic flowchart of another service traffic analysis method provided by an embodiment of the present application;

[0098] Figure 7 is a schematic structural diagram of a service traffic analysis device provided by an embodiment of the present application;

[0099] Figure 8It is a schematic structural diagram of another service traffic analysis device provided by an embodiment of the present application;

[0100] Figure 9 It is a schematic structural diagram of yet another service traffic analysis device provided by an embodiment of the present application;

[0101] Figure 10 It is a schematic hardware structure diagram of a network device provided by an embodiment of the present application;

[0102] Figure 11 It is a schematic hardware structure diagram of a network management device / service platform provided by an embodiment of the present application. Detailed implementation manners

[0103] To make the objectives, technical solutions, and advantages of the present application clearer, the following will further describe the embodiments of the present application in detail with reference to the accompanying drawings.

[0104] In the current network, problems such as service traffic interruption or congestion often occur due to reasons such as network environment, human operation, or device defects. These service traffic transmission problems will directly affect the service quality. Since most services (such as distributed training tasks, financial services, or banking services, etc.) are sensitive to quality problems, it is very necessary to analyze the transmission situation of service traffic in the network. In this way, after the service traffic transmission is interrupted or congested, fault location or congestion location can be performed in a timely manner, and then corresponding isolation or recovery measures can be taken for relevant network devices or transmission links.

[0105] Currently, network measurement mainly focuses on network traffic, bandwidth, explicit congestion notification (ECN), and priority flow control (PFC) related statistics. Currently, most network measurements are performed at the flow granularity. For example, a flow can be identified using a tuple, quadruple, or quintuple. The network management device can capture the tuple, quadruple, or quintuple of the packets passing by from the network device to determine the flow to which the packet belongs. Combining the network devices through which the packets of the flow pass in the network, the flow size, network path, link bandwidth, whether congestion occurs, and whether the PFC mechanism is enabled can be determined. Among them, the tuple includes the source IP address and the destination IP address. The quadruple includes the source IP address, the destination IP address, the source port, and the destination port. The quintuple includes the source IP address, the destination IP address, the source port, the destination port, and the transport layer protocol.

[0106] However, in some scenarios, it is necessary to conduct an overall analysis of service quality. Network measurement at the flow granularity cannot meet the requirement of overall quality monitoring for services with multiple flows. For example, if a service involves multiple source ends and / or multiple destination ends, then there are multiple transmission paths for the multiple flows of this service in the network. Currently, there is no solution that takes the service as the granularity to simultaneously conduct network measurement on multiple flows of this service to analyze the overall network traffic of this service.

[0107] For example, as a distributed computing task, a distributed training task is a typical service involving multiple service flows. With the development of artificial intelligence (AI) and big data technologies, there are more and more available computing resources and data resources for models, the scale of model parameters and computing requirements are also getting larger, and training a model has become a very computationally intensive and time-consuming task. Distributed training has become the mainstream technology to improve the model training efficiency. A distributed training task usually involves multiple computing nodes, each computing node has a part of data and model parameters, and data interaction needs to be carried out between multiple computing nodes through the network to jointly train the model. Currently, there are two basic schemes for distributed parallel training of models, namely data parallelism (DP) and model parallelism (MP). Among them, the model parallelism scheme is divided into two categories according to the model splitting method: pipeline parallelism (PP) and tensor parallelism (TP). Data parallelism evenly distributes a batch of training data to multiple computing nodes, each computing node keeps a complete copy of the model, and gradient synchronization communication is required between computing nodes after each training to ensure that all computing nodes store models with exactly the same parameters. Model parallelism aims to reduce the memory occupancy during the model training process by splitting the model and placing it on multiple computing nodes. Pipeline parallelism splits the model layer by layer, and tensor parallelism adopts a complex in-layer tensor splitting method. Among them, the data parallelism (DP) stage and the pipeline parallelism (PP) stage involve communication between different computing nodes (inter-machine communication), and the tensor parallelism (TP) stage involves communication between different processing units within a single computing node (intra-machine communication). For example, Figure 1 is a view of a distributed training task provided by an embodiment of the present application. As Figure 1As shown, the distributed training task involves 4 computing nodes, denoted as computing nodes N0 to N3 respectively. Each computing node Nx (x is any integer from 0 to 3) includes 4 graphics processing units (GPUs), denoted as GPU0 to GPU3. In the DP stage, each computing node Nx is allocated a part of the training data, and gradient synchronization communication is performed among multiple computing nodes through the network. In the PP stage, model data interaction is performed among multiple computing nodes through the network. In the TP stage, model data interaction is performed among multiple GPUs within a computing node through a bus technology, and the bus technology can be, for example, peripheral component interconnect express (PCIe) technology or Nvlink technology, etc.

[0108] In a distributed training task, data interaction among computing nodes is usually implemented by collective communication. A distributed training task can include one or more collective communications. Collective communication refers to coordinated communication among multiple processes in a distributed computing environment to complete certain specific tasks. Since one collective communication involves multiple interaction operations among computing nodes, all computing nodes that must participate in this collective communication must complete the interaction process before one collective communication can succeed and the distributed training task can continue to execute downward. Otherwise, problems such as the slowdown or freezing of the distributed training task may occur. Therefore, it is necessary to perform network measurement at the granularity of the distributed training task or the collective communication.

[0109] The present application provides a technical solution for implementing network measurement at the granularity of services. In this technical solution, a network management device obtains measurement task information of a service and sends measurement commands to multiple network devices in the network to instruct each of the network devices that receives the measurement command to respectively count the traffic characteristics of one or more flows passing through itself. Among them, the service includes multiple service flows, and the measurement task information of the service includes the device identifiers of multiple terminal devices associated with the service. The multiple terminal devices include the sending devices and receiving devices of the multiple service flows. After that, after the network management device receives the measurement results reported by the multiple network devices, it determines the traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices. Among them, the measurement result sent by each network device respectively includes the traffic characteristics corresponding to the flow identifier of one or more flows passing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow. The present application collects the traffic characteristics corresponding to the flow identifiers of the flows passing through multiple network devices in the network through the network management device, so that the network management device can determine the multiple service flows of the service according to the collected flow identifiers and the device identifiers in the measurement task information of the service for a service with multiple service flows, and then determine the traffic analysis result corresponding to the service according to the traffic characteristics of the multiple service flows, thereby realizing network measurement at the granularity of services, which helps to monitor and analyze service quality.

[0110] In the present application, the terminal devices associated with a service refer to the terminal devices that send and / or receive one or more service flows of the service. Optionally, the service in the present application is a collective communication or a distributed training task. In the scenario where the service is a collective communication, the multiple terminal devices associated with the service refer to multiple computing nodes participating in the collective communication. The multiple computing nodes belong to a collective communication domain. Correspondingly, the device identifiers in the measurement task information are used to define all the computing resources involved in the collective communication. Or, in the scenario where the service is a distributed training task, the terminal devices associated with the service refer to the computing nodes participating in the distributed training task, and the device identifiers in the measurement task information are used to define all the computing resources involved in the distributed training task. Optionally, a distributed training task usually includes collective communications in multiple stages, and the computing resources involved in the collective communications in different stages can be the same or different. That is, a distributed training task can correspond to one or more collective communication domains. The traffic analysis result in the present application can be presented at the granularity of collective communication. For example, for a distributed training task including multiple collective communications, the traffic analysis result corresponding to the distributed training task can include the traffic analysis results corresponding to the multiple collective communications respectively.

[0111] The technical solution of the present application will be introduced in detail from multiple perspectives such as implementation scenarios, method processes, software devices, and hardware devices.

[0112] The implementation scenarios of the embodiments of the present application will be exemplified below.

[0113] For example, Figure 2 is a schematic diagram of an implementation scenario provided by an embodiment of the present application. As Figure 2 shown, this implementation scenario includes a network management device 201, multiple terminal devices 202A - 202C (collectively referred to as terminal devices 202), and multiple network devices 203A - 203E (collectively referred to as network devices 203) in a communication network. Figure 2 The number of terminal devices and network devices in [[ ]] is only used for illustrative purposes and does not limit the implementation scenarios of the embodiments of the present application.

[0114] The network management device 201 can be a single server, or a server cluster composed of several servers, or a cloud computing platform, or a network controller. The terminal device 202 can be a physical device such as a host or a server, or can also be a logical device such as a virtual machine obtained by virtualizing the computing resources of a computer device. The network device 203 can be a switch, a router, or a firewall, etc. The network management device 201 is connected to the network device 203 through a wired network or a wireless network. The network management device 201 is used to manage the network device 203 in the communication network. For example, the network management device 201 can send measurement commands to the network device 203 to instruct the network device 203 to count the traffic characteristics of one or more flows passing through itself, and receive and process the measurement results from the network device 203. Multiple terminal devices 202 communicate with each other through one or more network devices 203 in the communication network.

[0115] Optionally, in [[ ]] Figure 2 when the shown implementation scenario is a distributed training task scenario or a collective communication scenario, the terminal device 202 is a computing node. Among them, the computing node can include one or more processors such as a central processing unit (CPU), a GPU, a tensor processing unit (TPU), or a neural processing unit (NPU), and the computing node can be a server with computing capabilities.

[0116] The communication network provided by the embodiments of the present application may be a data center network (DCN), a metropolitan area network, a wide area network, a campus network, a virtual local area network (VLAN), or a virtual extensible local area network (VXLAN), etc. The embodiments of the present application do not limit the type of the communication network. For example, the communication network may be a RoCE (RDMA over converged Ethernet) network based on converged Ethernet.

[0117] Optionally, the communication network provided by the embodiments of the present application may adopt a two-layer network architecture. The communication network includes an aggregation layer and an access layer, and the communication network may also be referred to as a two-layer network. The aggregation layer is the high-speed switching backbone of the communication network, and the access layer is used to connect terminal devices to the communication network. The network devices located in the access layer may be referred to as access network devices, and the network devices located in the aggregation layer may be referred to as aggregation network devices. For example, refer to Figure 2 , network devices 203A and 203B are located in the aggregation layer and are aggregation network devices. Network devices 203C, 203D, and 203E are located in the access layer and are access network devices. Each terminal device 202 is respectively connected to network devices 203C, 203D, and 203E. Network devices 203C, 203D, and 203E are respectively connected to network devices 203A and 203B. The communication network adopting the two-layer network architecture may be a fat tree network, also known as a leaf-spine network.

[0118] Alternatively, the communication network provided by the embodiments of the present application may also adopt a three-layer network architecture. Under the three-layer network architecture, the communication network includes a core layer, an aggregation layer, and an access layer, and the communication network may also be referred to as a three-layer network. The core layer is the high-speed switching backbone of the communication network, the aggregation layer is used to provide aggregation connections (connecting the access layer and the core layer), and the access layer is used to connect terminal devices to the communication network.

[0119] Optionally, please continue to refer to Figure 2, this implementation scenario also includes a service platform 204. The service platform 204 can be a single server, or a server cluster composed of several servers, or a cloud computing platform. The service platform 204 is used to provide a human-computer interaction interface. Optionally, the service platform 204 includes a scheduling module, a tenant management module, and an operation and maintenance monitoring module. Among them, the scheduling module is used to allocate computing resources for services. The tenant management module is used to manage tenant information. The operation and maintenance monitoring module is used to monitor the quality of services. The service platform 204 is connected to the network management device 201 through a wired network or a wireless network. The service platform 204 can send service measurement tasks to the network management device 201, and receive and display the service measurement results sent by the network management device 201. Optionally, the service platform 204 can be an AI service operation and maintenance platform.

[0120] The following is an example of the method flow of the embodiments of the present application.

[0121] For example, Figure 3 is a schematic flowchart of a service traffic analysis method provided by an embodiment of the present application. As Figure 3 shown, the method 300 includes but is not limited to the following steps 301 to 304. The method 300 can be applied to the network management device 201 in the implementation scenario as Figure 2 shown.

[0122] Step 301, the network management device obtains measurement task information of a service. The measurement task information includes device identifiers of multiple terminal devices associated with the service. The service includes multiple service flows. The multiple terminal devices associated with the service include the sending devices and receiving devices of the multiple service flows.

[0123] Optionally, the device identifier of the terminal device can be represented by the IP address of the terminal device. Or, the device identifier of the terminal device can also be represented by the IP address of the terminal device and the port identifier associated with the service on the terminal device. For example, a terminal device is associated with multiple services, and different services use different ports of the terminal device. Using the IP address and port identifier as the device identifier can distinguish the resources provided by the same terminal device for different services. Or, the terminal device is a virtual resource obtained by virtualizing the computing resources of a computer device. The device identifier of the terminal device can be represented by a virtual resource identifier. The virtual resource identifier is, for example, the IP address assigned to the virtual resource. The embodiments of the present application do not limit the representation method of the device identifier of the terminal device. In the following embodiments, it is taken as an example that the device identifier of the terminal device is represented by the IP address of the terminal device. Correspondingly, the measurement task information includes the respective IP addresses of multiple terminal devices associated with the service. These IP addresses can be the source IP addresses of the service flows of the service, or can be the destination IP addresses of the service flows of the service.

[0124] Optionally, the service flow of the above service is an RDMA flow. RDMA is a message-based transmission protocol. In the embodiments of the present application, source IP address and destination IP address can be used to identify the service flow. A service flow usually includes multiple packet groups respectively used to complete multiple data transmissions. When the amount of data for a single data transmission is large, the data usually needs to be split and transmitted by multiple packets, and the multiple packets are a packet group used to complete the data transmission. For an RDMA flow, completing a data transmission means completing the transmission of a message. The message is split into multiple packets for transmission, where the first packet is the first packet and the last packet is the last packet. The network device can identify a data transmission based on the received first packet and last packet.

[0125] Optionally, the measurement task information further includes a traffic analysis task, which is used to indicate the traffic analysis type. Optionally, the traffic analysis task indicates to analyze one or more of the following: the time synchronization of multiple service flows of the same service (the time synchronization is used to reflect whether the flow completion time of the multiple service flows changes over time), the throughput performance of multiple network devices in the network for multiple service flows of the same service, and the load balancing degree of multiple network devices in the network for the service. The traffic analysis task can also indicate to analyze the network paths of multiple service flows of the same service in the network, and so on.

[0126] Optionally, the above service is a distributed training task or a collective communication, and the distributed training task includes one or more collective communications. Since collective communication has the characteristics of large single-flow bandwidth, synchronous burst, and the communication efficiency depending on the slowest flow, by measuring the time synchronization of multiple flows in the collective communication, the throughput performance of each flow in the collective communication by the network device, and the load balancing degree of multiple network devices for the collective communication, etc., it helps to analyze the communication quality of the collective communication.

[0127] Optionally, there are multiple ways for the network management device to obtain the measurement task information of the service. For example, the network management device receives a service measurement task sent by the service platform, and the service measurement task includes the measurement task information of the service. Or, the measurement task information of the service is manually input into the network management device. Or, the network management device actively obtains the measurement task information of the service after a service failure.

[0128] Step 302: The network management device sends a measurement command to multiple network devices in the network. The measurement command is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more flows passing through the network device.

[0129] Optionally, the measurement command may indicate the specific type of traffic characteristics that the network device needs to count. For example, a flow includes multiple packet groups for completing multiple data transmissions respectively. The traffic characteristics indicated by the measurement command to be counted include the start time and end time of each data transmission. Alternatively, the traffic characteristics indicated by the measurement command to be counted include the flow completion time. Alternatively, the traffic characteristics indicated by the measurement command to be counted include the start time, end time, and traffic volume of each data transmission. Alternatively, the traffic characteristics indicated by the measurement command to be counted include the throughput. Alternatively, the traffic characteristics indicated by the measurement command to be counted include the traffic volume.

[0130] Optionally, when the measurement task information includes a traffic analysis task, the network management device may generate a measurement command according to the traffic analysis task, and the traffic characteristics indicated by the measurement command to be counted match the traffic analysis type indicated by the traffic analysis task. For example, the traffic analysis task indicates analyzing the time synchronization of multiple service flows of a service. Accordingly, the traffic characteristics indicated by the measurement command to be counted include the start time and end time of each data transmission in the flow, or the flow completion time. Another example is that the traffic analysis task indicates analyzing the throughput performance of multiple service flows of a service by network devices in the network. Accordingly, the traffic characteristics indicated by the measurement command to be counted include the start time, end time, and traffic volume of each data transmission in the flow, or the throughput. Another example is that the traffic analysis task indicates analyzing the load balancing degree of multiple network devices in the network for a service. Accordingly, the traffic characteristics indicated by the measurement command to be counted include the traffic volume.

[0131] Alternatively, the specific type of traffic characteristics that need to be counted may be pre-configured in the network device. The measurement command is used to trigger the network device to start counting traffic characteristics without indicating the specific type of traffic characteristics that the network device needs to count.

[0132] Optionally, the measurement command further includes a measurement indication, which includes one or more of the following: a source IP address set, a destination IP address set, an inbound direction indication, an outbound direction indication, or an interface indication. Optionally, the device identifiers of multiple terminal devices in the measurement task information are represented by IP addresses, and the source IP address set and the destination IP address set respectively include the IP addresses of one or more terminal devices among the multiple terminal devices.

[0133] Among them, the source IP address set is used to indicate that the network device receiving the measurement command counts the traffic characteristics of the flows passing through the network device and whose source IP addresses belong to the source IP address set. If the measurement command does not include a source IP address set, then the network device does not perform source IP address-based screening on the flows passing through the network device, but counts the traffic characteristics of the flows with any source IP addresses passing through the network device.

[0134] The set of destination IP addresses is used to instruct a network device that receives a measurement command to count the traffic characteristics of the flows passing through the network device and having destination IP addresses belonging to the set of destination IP addresses. If the measurement command does not include the set of destination IP addresses, then the network device does not perform filtering based on the destination IP address for the flows passing through the network device, but instead counts the traffic characteristics of the flows with any destination IP addresses passing through the network device.

[0135] The in - direction indication is used to instruct a network device that receives a measurement command to count the traffic characteristics of one or more flows received by the network device.

[0136] The out - direction indication is used to instruct a network device that receives a measurement command to count the traffic characteristics of one or more flows sent by the network device.

[0137] If the measurement command only includes the in - direction indication, then the network device only counts the traffic characteristics of one or more flows received by the network device. If the measurement command only includes the out - direction indication, then the network device only counts the traffic characteristics of one or more flows sent by the network device. If the measurement command neither includes the in - direction indication nor the out - direction indication, or if the measurement command includes both the in - direction indication and the out - direction indication at the same time, then the network device counts both the traffic characteristics of one or more flows received by the network device and the traffic characteristics of one or more flows sent by the network device.

[0138] The interface indication is used to instruct a network device that receives a measurement command to count the traffic characteristics of the flows passing through one or more specified interfaces of the network device. If the measurement command does not include the interface indication, then the network device counts the traffic characteristics of the flows passing through all its interfaces.

[0139] In the embodiments of the present application, the network management device enables the network device to specifically count the traffic characteristics of some flows by carrying measurement indications in the measurement command, reducing the network device's counting of the traffic characteristics of useless flows, thereby saving the processing resources of the network device.

[0140] Optionally, the measurement command may further include the valid time of the measurement task, such as being permanently valid or valid for a period of time. In the case where the measurement command indicates permanent validity, the network device always maintains the working state of counting the traffic characteristics of the flows passing through itself until it receives a measurement end command sent by the network management device. In the case where the measurement command indicates validity for a period of time, the network device only counts the traffic characteristics of the flows passing through itself during the valid period, and after exceeding the valid period, the network device automatically stops executing the traffic counting task.

[0141] Step 303, the network management device receives the measurement results sent by the multiple network devices. The measurement result sent by each network device respectively includes the traffic characteristics corresponding to the flow identifier of one or more flows passing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow.

[0142] Optionally, after receiving the measurement command sent by the network management device, the network device counts the traffic characteristics of one or more flows passing through itself according to the measurement command, and then sends the measurement result corresponding to the measurement command to the network management device. Optionally, if the flow passing through the network device is an RDMA flow, the flow identifier may further include a queue pair (QP) number. For example, the flow identifier may be represented by the source IP address of the flow, the destination IP address of the flow, and the QP number. When transmitting packets between terminal devices based on the RDMA protocol, the two communicating parties first need to establish a QP. Among them, the sending party establishes a send queue (SQ), and the receiving party establishes a receive queue (RQ). The two communicating parties communicate based on the QP. Since a terminal device may be associated with multiple services, in the case of using the IP address of the terminal device as the device identifier of the terminal device, if there are traffic flows with the same source IP address and destination IP address in two services, the network management device cannot distinguish the traffic flows of different services through the source IP address and the destination IP address. And the terminal devices need to establish QPs respectively for different services to transmit the packets of each service. The QP numbers of different services are usually different. Therefore, the network device adds the QP number to the flow identifier reported to the network management device, so that the network management device can distinguish the traffic flows of different services with the same source IP address and destination IP address according to the flow identifier.

[0143] Optionally, when the measurement command sent by the network management device to the network device in step 302 includes an interface indication, the measurement result sent by the network device to the network management device may further include an interface identifier, and the interface identifier is used to indicate the interface through which the corresponding flow passes on the network device.

[0144] Optionally, the measurement result sent by the network device to the network management device further includes the device identifier of the network device. The device identifier of the network device may be, for example, the IP address of the network device, the media access control (MAC) address of the network device, or the hardware address of the network device, etc., which are the information that can uniquely identify the network device.

[0145] Step 304, the network management device determines the traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices.

[0146] Optionally, the implementation of step 304 includes, for the measurement results sent by each network device, the network management device determining the service flows belonging to the service in one or more flows passing through the network device according to the flow identifier in the measurement result and the device identifiers of multiple terminal devices associated with the service in the measurement task information. The network management device determines the traffic analysis result corresponding to the service according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices. Among them, the network management device may determine the flows in which both the sending device and the receiving device belong to the multiple terminal devices as the service flows of the service.

[0147] In the embodiments of the present application, by collecting the traffic characteristics corresponding to the flow identifiers of the flows passing through multiple network devices in the network by the network management device, the network management device can determine multiple service flows of the service according to the collected flow identifiers and the device identifiers in the measurement task information of the service for a service with multiple service flows, and then determine the traffic analysis result corresponding to the service according to the traffic characteristics of the multiple service flows, so as to realize network measurement in terms of services, which helps to monitor and analyze service quality.

[0148] Optionally, when the measurement task information includes a traffic analysis task, the network management device determines the traffic analysis result of the service under the traffic analysis type indicated by the traffic analysis task according to the measurement results sent by the multiple network devices and the device identifiers of multiple terminal devices associated with the service in the measurement task information.

[0149] The following embodiments of the present application respectively give examples of the traffic characteristics statistically obtained by network devices and the traffic analysis results determined by network management devices under different traffic analysis tasks.

[0150] In the first possible case, the traffic analysis task indicates analyzing the time synchronization of multiple service flows of the service. Correspondingly, the traffic analysis result includes a synchronization measurement result, and the synchronization measurement result includes the flow completion times of the multiple service flows of the service in multiple statistical time periods respectively.

[0151] Optionally, the multiple statistical time periods are continuous in time sequence, that is, the end time of the previous statistical time period is the start time of the next statistical time period. Or, the multiple statistical time periods are not continuous in time sequence, that is, the start time of the next statistical time period is after the end time of the previous statistical time period.

[0152] In the embodiments of the present application, by measuring the flow completion times of multiple service flows of the same service in multiple statistical time periods respectively, the variation of the flow completion times of multiple service flows is presented with the service as the granularity. Among them, the variation of the flow completion time of a single service flow over time can reflect the change in the transmission quality of the service flow itself, and the variation of the flow completion times of multiple service flows over time can reflect the change in the overall transmission quality of the service. This helps the operation and maintenance personnel analyze whether the overall transmission quality of the service has deteriorated and the specific service flows that cause the deterioration of the service transmission quality. Taking collective communication as an example, since collective communication has the characteristics of synchronous burst and the communication efficiency depends on the slowest flow, by statistically analyzing the variation of the flow completion times of all service flows in a collective communication over time, on the one hand, it can be determined whether the communication quality of the collective communication is stable, and on the other hand, it can be determined whether there is a service flow with an overly long flow completion time, resulting in a decrease in the collective communication efficiency, so as to analyze the communication quality of collective communication at different granularities.

[0153] Optionally, for any service flow among multiple service flows of a service, if the difference between the flow completion time of the service flow in the third statistical time period and the flow completion time of the service flow in the fourth statistical time period is greater than the first threshold, the network management device determines that the transmission quality of the service flow has deteriorated. The third statistical time period is temporally after the fourth statistical time period. That is to say, if the flow completion time of a certain service flow becomes longer, it means that the transmission quality of the service flow has deteriorated. Correspondingly, the synchronization measurement result may also include an indication of the service flows among multiple service flows of the service whose transmission quality has deteriorated. The indication of a service flow may include the device identifier of the sending device of the service flow (such as the source IP address of the service flow) and the device identifier of the receiving device (such as the destination IP address of the service flow). The indication of a service flow may also include the transmission path of the service flow in the network, etc. This can help troubleshoot the network location that causes the deterioration of the transmission quality of the service flow on the transmission path of the service flow, which is helpful to improve the analysis efficiency.

[0154] In the first implementation under the first possible scenario above, the measurement commands sent by the network management device to multiple network devices may indicate that the traffic characteristics to be statistically analyzed include the start time and end time of each data transmission in a flow. Alternatively, the network devices may be preconfigured to statistically analyze the start time and end time of each data transmission in the flows passing through themselves. Correspondingly, the measurement results sent by the network devices to the network management device include the start time and end time of each data transmission in one or more flows passing through themselves. Taking the multiple network devices that receive the measurement commands and including a first network device as an example, the first network device is any one of the multiple network devices. The measurement results sent by the first network device to the network management device include the first traffic characteristics of the first service flow. The first service flow is any one of the multiple service flows of the service, and the first service flow includes multiple packet groups respectively used to complete multiple data transmissions. The first traffic characteristics include the transmission start time and transmission end time of each of the multiple packet groups. In this implementation, the network management device may determine the flow completion time of the first service flow within the first statistical period based on the transmission durations of one or more packet groups whose transmission end times are within the first statistical period among the multiple packet groups. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. The transmission duration of a packet group, i.e., the completion time of a data transmission, may be equal to the value obtained by subtracting the transmission start time from the transmission end time of the packet group. The first statistical period is any one of the multiple statistical periods. The determination methods for the flow completion time of the first service flow in other statistical periods and the flow completion times of other service flows in multiple statistical periods may all refer to the determination method for the flow completion time of the first service flow in the first statistical period, which will not be elaborated in this embodiment of the present application.

[0155] Optionally, the flow completion time of a service flow within a statistical period is the statistical value of the transmission durations of all packet groups whose transmission end times are within the statistical period in the service flow, and the statistical value includes but is not limited to the average value, median value, maximum value, or quantile value. For example, when the network management device determines the flow completion time of the first service flow within the first statistical period based on the transmission durations of one or more packet groups whose transmission end times are within the first statistical period among the multiple packet groups of the first service flow, it may be that the network management device takes the statistical value of the transmission durations of all packet groups whose transmission end times are within the first statistical period among the multiple packet groups of the first service flow as the flow completion time of the first service flow within the first statistical period.

[0156] In this implementation, the network device only needs to statistically analyze the start time and end time of each data transmission in the flows passing through itself, and the network management device performs traffic analysis on the service based on the traffic characteristics reported by the network device to determine the flow completion times of the multiple service flows of the service in multiple statistical periods respectively. This implementation has relatively low requirements for the processing performance of the network device.

[0157] Optionally, within the valid period of the measurement task, the network device may periodically send measurement results to the network management device. The measurement results include the start time and end time of data transmission completed by one or more flows passing through the network device during the current period. For example, flow 1 passing through network device 1 completed 3 data transmissions during the current period. These 3 data transmissions correspond to 3 packet groups, namely packet group 11, packet group 12, and packet group 13. The start time of packet group 11's transmission is T11, and the end time is T12. The start time of packet group 12's transmission is T13, and the end time is T14. The start time of packet group 13's transmission is T15, and the end time is T16. Flow 2 passing through network device 1 completed 2 data transmissions during the current period. These 2 data transmissions correspond to 2 packet groups, namely packet group 21 and packet group 22. The start time of packet group 21's transmission is T21, and the end time is T22. The start time of packet group 22's transmission is T23, and the end time is T24. Among them, the source IP address of flow 1 is IP1, and the destination IP address is IP2. The source IP address of flow 2 is IP3, and the destination IP address is IP4. Then, a set of measurement results sent by network device 1 to the network management device can be as shown in Table 1.

[0158] Table 1

[0159]

[0160] Referring to Table 1, assuming that IP1 and IP2 are the IP addresses of terminal devices associated with services, that is, flow 1 is the service flow of the service to be analyzed, and T12, T14, and T16 are within the same statistical period, the network management device first calculates the transmission duration of packet group 11 as t11 = T12 - T11, the transmission duration of packet group 12 as t12 = T14 - T13, and the transmission duration of packet group 13 as t13 = T16 - T15. Then, the flow completion time of flow 1 within this statistical period is calculated as the average value, median value, maximum value, or quantile value of t11, t12, and t13.

[0161] Alternatively, in the first implementation of the first possible case above, in addition to including the start time and end time of each data transmission in the flow, the traffic characteristics reported by the network device to the network management device may include the start time and transmission duration of each data transmission in the flow, or may include the end time and transmission duration of each data transmission in the flow, or may include the start time, end time, and transmission duration of each data transmission in the flow.

[0162] In the second implementation manner under the first possible scenario described above, the measurement command sent by the network management device to the network device may indicate that the traffic characteristics to be counted include the flow completion time, or the network device is pre-configured to count the flow completion time of the flows passing through itself within multiple statistical periods. Correspondingly, the measurement result sent by the network device to the network management device includes the flow completion time of one or more flows passing through itself. Taking the multiple network devices that receive the measurement command including the second network device as an example, the second network device is any network device among the multiple network devices. The measurement result sent by the second network device to the network management device includes the second traffic characteristics of the second service flow. The second service flow is any one of the multiple service flows of the service, and the second service flow includes multiple packet groups respectively used to complete multiple data transmissions. The second traffic characteristics include the flow completion time of the second service flow within the second statistical period. The flow completion time of the second service flow within the second statistical period is obtained based on the transmission durations of one or more packet groups among the multiple packet groups whose transmission end times are within the second statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group. The second statistical period is any one of the multiple statistical periods. The manner in which the network device determines the flow completion time of the flows passing through itself within the statistical period may refer to the manner in which the network management device determines the flow completion time of the service flow within the statistical period in the first implementation manner under the first possible scenario described above, and this is not elaborated in this embodiment of the present application.

[0163] Optionally, the flow completion time of the second service flow within the second statistical period is the statistical value of the transmission durations of all the packet groups among the multiple packet groups of the second service flow whose transmission end times are within the second statistical period.

[0164] In this implementation manner, the network device counts the start time and end time of each data transmission in the flows passing through itself and performs traffic analysis to determine the flow completion time of the flows passing through itself within multiple statistical periods. The network management device aggregates and counts the traffic characteristics reported by the multiple network devices, and thus can obtain the flow completion times of the multiple service flows of the service respectively within multiple statistical periods. This implementation manner has relatively low requirements for the processing performance of the network management device and can improve the traffic analysis efficiency of the network management device for the service.

[0165] Optionally, within the valid period of the measurement task, the network device may periodically count the flow completion times of one or more flows passing through itself and report them to the network management device. The above-mentioned multiple statistical periods are multiple statistical cycles. One measurement result sent by the network device to the network management device may include the flow completion times of the flows passing through itself within one or more statistical periods. For example, network device 2 calculates that the flow completion time of flow 3 passing through network device 2 within statistical period A1 is FCT1, and within statistical period A2 is FCT2; and the flow completion time of flow 4 passing through network device 2 within statistical period A1 is FCT3, and within statistical period A2 is FCT4. Among them, the source IP address of flow 3 is IP5, and the destination IP address is IP6. The source IP address of flow 4 is IP7, and the destination IP address is IP8. Then one measurement result sent by network device 2 to the network management device may be as shown in Table 2.

[0166] Table 2

[0167]

[0168] Optionally, each statistical period in Table 2 may be represented by the start time and end time of that statistical period. In the case where multiple statistical periods are consecutive in time sequence, each statistical period in Table 2 may also be represented by the start time of that statistical period, and the start time of the next statistical period is the end time of the current statistical period, or each statistical period in Table 2 may also be represented by the end time of that statistical period, and the start time of the current statistical period is the end time of the previous statistical period.

[0169] Optionally, in the second implementation manner of the above first possible case, the measurement result sent by the network device to the network management device may further include the start time and end time of each data transmission in the flows passing through the network device.

[0170] Optionally, the synchronization measurement result may further include two or all of the start time, end time, and transmission duration of each data transmission in multiple service flows of the service.

[0171] Optionally, the synchronization measurement result may further include the earliest time among the flow start times of multiple service flows of the service and the latest time among the flow end times of the multiple service flows. Among them, the flow start time of a service flow is the start time of the first data transmission in that service flow, and the flow end time of a service flow is the end time of the last data transmission in that service flow. For example, taking the above multiple service flows belonging to a single collective communication as an example, the earliest time among the flow start times of the multiple service flows is also the start time of that collective communication, and the latest time among the flow end times of the multiple service flows is also the end time of that collective communication.

[0172] Taking the above service as an example of a collective communication, assume that the IP addresses of the computing nodes participating in this collective communication include IP1 to IP4. The network management device determines that this collective communication includes 8 service flows based on the measurement results reported by multiple network devices. The communication pairs involved in these 8 service flows include IP1→IP2 (the source IP address of the service flow is IP1 and the destination IP address is IP2), IP2→IP1 (the source IP address of the service flow is IP2 and the destination IP address is IP1), IP3→IP4 (the source IP address of the service flow is IP3 and the destination IP address is IP4), IP4→IP3 (the source IP address of the service flow is IP4 and the destination IP address is IP3), IP1→IP3 (the source IP address of the service flow is IP1 and the destination IP address is IP3), IP3→IP1 (the source IP address of the service flow is IP3 and the destination IP address is IP1), IP2→IP4 (the source IP address of the service flow is IP2 and the destination IP address is IP4), and IP4→IP2 (the source IP address of the service flow is IP4 and the destination IP address is IP2). Taking the synchronization measurement result including the flow completion time of multiple service flows of the collective communication in multiple statistical periods, the start time and end time of the collective communication, and the start time, end time, and duration of each data transmission in the service flows of the collective communication as an example, the synchronization measurement result can be as shown in Table 3.

[0173] Table 3

[0174]

[0175]

[0176] Alternatively, the synchronization measurement result can also be represented in the form of a graph. For example, Figure 4 is a schematic diagram of a synchronization measurement result provided by an embodiment of the present application. The abscissa represents time (t), and the ordinate represents the flow completion time (FCT). As Figure 4 shown, within the statistical periods A5 and A6, the flow completion times of the communication pairs IP1→IP3 and IP3→IP1 become significantly longer. At this time, it can be considered that the transmission quality of the service flow with the source IP address of IP1 and the destination IP address of IP3 and the service flow with the source IP address of IP3 and the destination IP address of IP1 deteriorates. Further, the root cause leading to the deterioration of the transmission quality of the service flow is located in the network, thereby improving the stability and reliability of the collective communication.

[0177] The second possible scenario is that the traffic analysis task instructs network devices in the network to analyze the throughput performance of multiple service flows of a service. Correspondingly, the traffic analysis result includes throughput performance measurement results, which include the throughputs of multiple network devices in the network for the service flows passing through themselves respectively within multiple statistical time periods.

[0178] In the embodiments of the present application, the flow throughput performance mainly reflects the traffic volume of the service flows received or sent by network devices. By measuring the throughputs of multiple service flows of the same service by a network device within multiple statistical time periods, the throughput of the network device for the service flows is presented over time in terms of services. Among them, the change in the throughput of a single service flow over time by a network device can reflect the change in the transmission quality of the service flow itself, and the change in the throughputs of multiple network devices for multiple service flows over time can reflect the change in the overall transmission quality of the service. This helps the operation and maintenance personnel analyze whether the overall transmission quality of the service has deteriorated and the specific service flows that cause the deterioration of the service transmission quality. Taking collective communication as an example, since collective communication has the characteristics of synchronous bursts and the communication efficiency depends on the slowest flow, by statistically analyzing the change in the throughputs of all service flows in a collective communication by a network device over time, on the one hand, it can be determined whether the communication quality of the collective communication is stable, and on the other hand, it can be determined whether the communication efficiency of the collective communication becomes low due to the small throughput of a certain network device for the service flow, so as to analyze the communication quality of the collective communication at different granularities.

[0179] Optionally, for any service flow among the multiple service flows of a service, if the difference between the throughput of the service flow by any network device through which the service flow passes within the seventh statistical time period and the throughput of the service flow by the network device within the eighth statistical time period is greater than the second threshold, the network management device determines that the transmission quality of the service flow has deteriorated. The eighth statistical time period is temporally after the seventh statistical time period. That is to say, if the throughput of a certain network device for a service flow becomes smaller, it indicates that the transmission quality of the service flow has deteriorated. Correspondingly, the throughput performance measurement results can also include an indication of the service flows among the multiple service flows whose transmission quality has deteriorated. The indication of a service flow may include the device identifier of the sending device of the service flow (such as the source IP address of the service flow) and the device identifier of the receiving device of the service flow (such as the destination IP address of the service flow). The indication of a service flow may also include the transmission path of the service flow in the network and the device identifier of the network device that statistically measures the throughput of the service flow, etc., so as to check the network location that causes the deterioration of the transmission quality of the service flow on the transmission path of the service flow, which helps to improve the analysis efficiency.

[0180] In the first implementation mode under the second possible situation described above, the measurement commands sent by the network management device to multiple network devices may indicate that the traffic characteristics to be statistically analyzed include the start time, end time, and traffic volume of each data transmission in the flow. Alternatively, the network devices may be preconfigured to statistically analyze the start time, end time, and traffic volume of each data transmission in the flows passing through themselves. Correspondingly, the measurement results sent by the network devices to the network management device include the start time, end time, and traffic volume of each data transmission in one or more flows passing through themselves. Taking the multiple network devices that receive the measurement commands and including a third network device as an example, the third network device is any one of the multiple network devices. The measurement results sent by the third network device to the network management device include the third traffic characteristics of the third service flow. The third service flow is any one of the multiple service flows of the service, and the third service flow includes multiple packet groups respectively used to complete multiple data transmissions. The third traffic characteristics include the transmission start time, transmission end time, and traffic volume of each of the multiple packet groups. In this implementation mode, the network management device may determine the throughput of the third network device for the third service flow in the fifth statistical period based on the transmission duration and traffic volume of one or more packet groups whose transmission end time is within the fifth statistical period among the multiple packet groups. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. The fifth statistical period is any one of the multiple statistical periods. The method for determining the throughput of the third network device for the third service flow in other statistical periods and the method for determining the throughput of other network devices for the service flows passing through themselves in multiple statistical periods may both refer to the method for determining the flow completion time of the third network device for the third service flow in the fifth statistical period, which is not elaborated in the embodiments of the present application.

[0181] Optionally, the throughput of a network device for a service flow in a statistical period may be the ratio of the total traffic volume of the service flow transmitted by the network device in the statistical period to the flow completion time of the service flow in the statistical period.

[0182] In this implementation mode, the network device only needs to statistically analyze the start time, end time, and traffic volume of each data transmission in the flows passing through itself, and the network management device performs traffic analysis on the service based on the traffic characteristics reported by multiple network devices to determine the throughput of multiple network devices for the multiple service flows of the service in multiple statistical periods. This implementation mode has relatively low requirements for the processing performance of the network device.

[0183] Optionally, the network device may periodically send measurement results to the network management device during the valid period of the measurement task. The measurement results include the start time, end time, and traffic volume of the data transmission completed by one or more flows passing through the network device in the current period. For example, flow 5 passing through network device 3 has completed 3 data transmissions in the current period. These 3 data transmissions correspond to 3 packet groups, namely packet group 51, packet group 52, and packet group 53. The transmission start time of packet group 51 is T51, the transmission end time is T52, and the traffic volume is L1. The transmission start time of packet group 52 is T53, the transmission end time is T54, and the traffic volume is L2. The transmission start time of packet group 53 is T55, the transmission end time is T56, and the traffic volume is L3. Flow 6 passing through network device 3 has completed 2 data transmissions in the current period. These 2 data transmissions correspond to 2 packet groups, namely packet group 61 and packet group 62. The transmission start time of packet group 61 is T61, the transmission end time is T62, and the traffic volume is L4. The transmission start time of packet group 62 is T63, the transmission end time is T64, and the traffic volume is L5. Among them, the source IP address of flow 5 is IP1, and the destination IP address is IP2. The source IP address of flow 6 is IP3, and the destination IP address is IP4. Then, a set of measurement results sent by network device 3 to the network management device can be as shown in Table 4.

[0184] Table 4

[0185]

[0186] Referring to Table 4, assuming that IP1 and IP2 are the IP addresses of the terminal devices associated with the service, that is, flow 5 is the service flow of the service to be analyzed, and T52, T54, and T56 are within the same statistical period, the network management device first calculates the transmission duration t51 of packet group 51 = T52 - T51, the transmission duration t52 of packet group 52 = T54 - T53, and the transmission duration t53 of packet group 53 = T56 - T55. Then, it calculates the flow completion time t5 of flow 5 in this statistical period as the average value, median value, or maximum value of t51, t52, and t53. Finally, it calculates the throughput of network device 3 for flow 5 in this statistical period as (L1 + L2 + L3) / t5. Alternatively, other calculation methods can also be used. For example, the throughput TH52 corresponding to time T52 = L1 / t51, the throughput TH54 corresponding to time T54 = L2 / t52, the throughput TH56 corresponding to time T56 = L3 / t53, and the throughput of network device 3 for flow 5 in this statistical period is the average value of TH52, TH54, and TH56.

[0187] Alternatively, in the first implementation method of the above-mentioned second possible situation, the traffic characteristics reported by the network device to the network management device may include the start time, end time and traffic size of each data transmission in the flow, or may include the start time, transmission duration and traffic size of each data transmission in the flow, or may include the end time, transmission duration and traffic size of each data transmission in the flow, or may include the start time, end time, transmission duration and traffic size of each data transmission in the flow, or may include the start time, end time, transmission duration and traffic size of each data transmission in the flow, or may include the end time and throughput of each data transmission.

[0188] In the second implementation of the second possible situation, the measurement command sent by the network management device to the multiple network devices may indicate that the traffic characteristics to be counted include throughput, or the network device may be pre-configured to count the throughput of the flow passing through itself in multiple statistical time periods. Accordingly, the measurement result sent by the network device to the network management device includes the throughput of one or more flows passing through itself. For example, the multiple network devices that receive the measurement command include the fourth network device, and the fourth network device is any network device among the multiple network devices. The measurement result sent by the fourth network device to the network management device includes the fourth traffic characteristics of the fourth service flow. The fourth service flow is any service flow among the multiple service flows of the service, and the fourth service flow includes multiple message groups respectively used to complete multiple data transmissions. The fourth traffic characteristic includes the throughput of the fourth network device to the fourth service flow in the sixth statistical time period. The throughput of the fourth service flow in the sixth statistical time period is obtained based on the transmission duration and flow size of one or more message groups in the multiple message groups whose transmission end time is within the sixth statistical time period. The transmission duration of each message group is obtained based on the transmission end time and transmission start time of the message group. The sixth statistical time period is any statistical time period among the multiple statistical time periods. The way in which a network device determines the throughput of a flow passing through itself during a statistical period can refer to the way in which a network management device determines the throughput of a service flow during a statistical period in the first implementation method of the second possible case mentioned above, and the embodiments of the present application will not be repeated here.

[0189] Under this implementation mode, the network device counts the start time, end time and flow size of each data transmission in the flow passing through itself, and performs traffic analysis to determine the throughput of the flow passing through itself in multiple statistical time periods. The network management device summarizes and counts the traffic characteristics reported by multiple network devices, and can obtain the throughput of multiple business flows of the services of multiple network devices in multiple statistical time periods. This implementation mode has low processing performance requirements for the network management device and can improve the efficiency of the network management device's traffic analysis of the service.

[0190] Optionally, within the valid period of the measurement task, the network device may periodically count the throughput of one or more flows passing through itself and report it to the network management device. The above-mentioned multiple statistical periods are multiple statistical cycles. One measurement result sent by the network device to the network management device may include the throughput of the flows passing through itself within one or more statistical periods. For example, the network device 4 calculates that the throughput of the network device 4 for flow 7 within the statistical period A1 is F1, and within the statistical period A2 is F2; and the throughput of the network device 4 for flow 8 within the statistical period A1 is F3, and within the statistical period A2 is F4. Among them, the source IP address of flow 7 is IP5, and the destination IP address is IP6. The source IP address of flow 8 is IP7, and the destination IP address is IP8. Then one measurement result sent by the network device 4 to the network management device may be as shown in Table 5.

[0191] Table 5

[0192]

[0193] Optionally, each statistical period in Table 5 may be represented by the start time and end time of the statistical period. In the case where multiple statistical periods are consecutive in time sequence, each statistical period in Table 5 may also be represented by the start time of the statistical period, and the start time of the next statistical period is the end time of the current statistical period, or each statistical period in Table 5 may also be represented by the end time of the statistical period, and the end time of the current statistical period is the start time of the next statistical period.

[0194] Optionally, in the second possible case above, the measurement command may further include an in - direction indication, so that the network device only counts the start time, end time, and traffic volume of each data transmission in the received flows in the in - direction. In this way, the throughput of the network device for this service flow actually reflects the traffic volume received by the network device for this service flow. Of course, the embodiments of the present application do not exclude the implementation manner in which the network device counts the start time, end time, and traffic volume of each data transmission in the sent flows in the out - direction to calculate the throughput.

[0195] Optionally, the throughput performance measurement result further includes the traffic direction and / or the interface identifier of the network device. The traffic direction is used to indicate whether the statistical service flow is the service flow received by the network device or the sent service flow. The interface identifier is used to indicate the interface through which the service flow passes on the network device.

[0196] Taking the above service as an example of a collective communication, assume that the IP addresses of the computing nodes participating in this collective communication include IP1 to IP4. The network management device determines that this collective communication includes 8 service flows based on the measurement results reported by multiple network devices. The communication pairs involved in these 8 service flows include IP1→IP2 (the source IP address of the service flow is IP1 and the destination IP address is IP2), IP2→IP1 (the source IP address of the service flow is IP2 and the destination IP address is IP1), IP3→IP4 (the source IP address of the service flow is IP3 and the destination IP address is IP4), IP4→IP3 (the source IP address of the service flow is IP4 and the destination IP address is IP3), IP1→IP3 (the source IP address of the service flow is IP1 and the destination IP address is IP3), IP3→IP1 (the source IP address of the service flow is IP3 and the destination IP address is IP1), IP2→IP4 (the source IP address of the service flow is IP2 and the destination IP address is IP4), and IP4→IP2 (the source IP address of the service flow is IP4 and the destination IP address is IP2). Taking the throughput performance measurement results as an example, which include the throughput of the service flows passing through each network device in the network during multiple statistical periods, the interface identifiers of the interfaces through which the service flows pass on the network devices, and the traffic directions, the throughput performance measurement results can be as shown in Table 6.

[0197] Table 6

[0198]

[0199]

[0200] Referring to Table 6, Network Device 1 is used to statistically analyze the traffic characteristics of traffic flows with source IP address IP1 and destination IP address IP2, and traffic flows with source IP address IP3 and destination IP address IP4. Among them, the ingress interface of the traffic flow with source IP address IP1 and destination IP address IP2 on Network Device 1 is Interface 11, and the ingress interface of the traffic flow with source IP address IP3 and destination IP address IP4 on Network Device 1 is Interface 12. Network Device 2 is used to statistically analyze the traffic characteristics of traffic flows with source IP address IP2 and destination IP address IP1, and traffic flows with source IP address IP4 and destination IP address IP3. Among them, the ingress interface of the traffic flow with source IP address IP2 and destination IP address IP1 on Network Device 2 is Interface 21, and the ingress interface of the traffic flow with source IP address IP4 and destination IP address IP3 on Network Device 2 is Interface 22. Network Device 3 is used to statistically analyze the traffic characteristics of traffic flows with source IP address IP1 and destination IP address IP3, and traffic flows with source IP address IP2 and destination IP address IP4. Among them, the ingress interface of the traffic flow with source IP address IP1 and destination IP address IP3 on Network Device 3 is Interface 31, and the ingress interface of the traffic flow with source IP address IP2 and destination IP address IP4 on Network Device 3 is Interface 32. Network Device 4 is used to statistically analyze the traffic characteristics of traffic flows with source IP address IP3 and destination IP address IP1, and traffic flows with source IP address IP4 and destination IP address IP2. Among them, the ingress interface of the traffic flow with source IP address IP3 and destination IP address IP1 on Network Device 4 is Interface 41, and the ingress interface of the traffic flow with source IP address IP4 and destination IP address IP2 on Network Device 4 is Interface 42.

[0201] Alternatively, the throughput performance measurement results can also be represented in the form of a graph. For example, Figure 5 is a schematic diagram of the throughput performance measurement results provided by an embodiment of the present application. The abscissa represents time (t), and the ordinate represents throughput. As Figure 5 shown, during statistical periods A5 and A6, the throughput of communication pairs IP1→IP3 and IP3→IP1 decreases significantly. At this time, it can be considered that the transmission quality of the traffic flow with source IP address IP1 and destination IP address IP3, and the traffic flow with source IP address IP3 and destination IP address IP1 deteriorates. Further, the root cause of the deterioration of the transmission quality of the traffic flow is located in the network, thereby improving the stability and reliability of collective communication.

[0202] Optionally, in the first and second possible cases described above, the implementation of step 302 may be as follows: The network management device sends measurement commands to multiple access network devices in the network respectively, and each access network device is used to connect one or more terminal devices associated with the service to the network. For example, in combination with Figure 2 the application scenario shown, the terminal devices associated with the service include terminal device 202A, terminal device 202B, and terminal device 202C. That is, the measurement task information includes the device identifiers of terminal device 202A, terminal device 202B, and terminal device 202C. Then the network management device may only send measurement commands to network devices 203C, 203D, and 203E respectively.

[0203] In the embodiments of the present application, since the service flows sent or received by the terminal devices associated with the service will inevitably pass through the access network devices, and when a service flow is transmitted in the network, the flow completion time and throughput of the service flow on different network devices are basically the same. Therefore, when the statistical traffic characteristics include the flow completion time and / or throughput, it is only necessary to count the traffic characteristics of the flows passing through the access network devices. In this way, on the premise of ensuring that the traffic characteristics of all service flows of the service are counted, the number of network devices participating in the service traffic analysis can be reduced, saving the communication resources between the network devices and the network management device and their respective processing resources.

[0204] The third possible case is that the traffic analysis task instructs to analyze the load balancing degree of multiple network devices in the network for a service. Correspondingly, the traffic analysis result includes the load balancing degree measurement result, and the load balancing degree measurement result includes the load balancing degrees of multiple network devices in the network for the service. In this possible case, the measurement commands sent by the network management device to the multiple network devices may indicate that the statistical traffic characteristics include the traffic volume, or the network devices are preconfigured to count the traffic volume of the flows passing through themselves. For each network device, the network management device may determine the cumulative traffic volume of the network device for the service according to the traffic volumes of all service flows in the measurement result sent by the network device. The cumulative traffic volume of the network device for the service is the sum of the traffic volumes of all service flows of the service passing through the network device. The network management device determines the load balancing degree of the multiple network devices for the service according to the cumulative traffic volumes of the multiple network devices for the service respectively. The load balancing degree is negatively correlated with the difference in the cumulative traffic volumes of the multiple network devices for the service. That is, the smaller the difference in the cumulative traffic volumes of the multiple network devices for the service, the higher the load balancing degree.

[0205] Optionally, there can be multiple metrics for measuring the load balancing degree. For example, in an ideal traffic load scenario, if the cumulative traffic volume of a service for each access network device is the same, the load balancing degree can be determined based on the cumulative traffic volume of multiple access network devices for the service. Another example is that in an ideal traffic load scenario, if the cumulative traffic volume of a service for all network devices involved in the service is the same, the load balancing degree can be determined based on the cumulative traffic volume of all network devices for the service.

[0206] Optionally, the network device can periodically send measurement results to the network management device within the valid period of the measurement task. The measurement results include the traffic volume of one or more flows passing through the network device during the current period.

[0207] In the embodiments of the present application, the load balancing degree mainly reflects the difference in the traffic volume of the same service transmitted by different network devices. The higher the load balancing degree, the more evenly the traffic is distributed among network devices when multiple service flows of the service are transmitted in the network, and the lower the probability of network device congestion. By analyzing the load balancing degree of different network devices on the network path through which the service flow passes, the network management device helps the operation and maintenance side analyze and adjust the transmission path of the service flow in the service, thereby improving the load balancing degree of multiple network devices for the service.

[0208] Optionally, the load balancing degree measurement results can also include the cumulative traffic volume of each of multiple network devices for the service. For example, the load balancing degree measurement results can be as shown in Table 7.

[0209] Table 7

[0210]

[0211] Optionally, in the above third possible case, the implementation manner of step 302 can be: the network management device only sends measurement commands to multiple network devices on the network path of multiple service flows of the service in the network. This can reduce the number of network devices participating in the service traffic analysis, thereby saving the communication resources between the network devices and the network management device and their respective processing resources.

[0212] The above three possible cases provided in the embodiments of the present application take the traffic analysis task indicating the analysis of a single task as an example. In practical applications, the traffic analysis task can also indicate the analysis of two or more tasks. Correspondingly, the traffic analysis results can include one or more of the synchronization measurement results, throughput performance measurement results, or load balancing degree measurement results.

[0213] In addition, the network management device in the embodiments of the present application can also count the network paths of multiple service flows of the same service. For example, the network management device can send measurement commands to all network devices in the network respectively to instruct the network devices that receive the measurement commands to report the flow identifiers of one or more flows passing through themselves. The flow identifier can include the source IP address, the destination IP address, and the QP number. The network management device can identify the same flow passing through different network devices based on the flow identifier and determine whether the flow is a service flow of the service by combining the IP addresses associated with the service in the measurement task information. In addition, in the scenario where the service is a collective communication, the synchronization measurement results of the flows can also be combined to determine which flows belong to the same collective communication, so as to determine the multiple network paths in the network for different service flows of the same service respectively.

[0214] Optionally, the network management device can perform service traffic analysis on the service under the trigger of the service platform. For example, Figure 6 is a schematic flowchart of another service traffic analysis method provided by the embodiments of the present application. As Figure 6 shown, method 600 includes but is not limited to the following steps 601 to step 607.

[0215] Step 601: The service platform sends a service measurement task to the network management device. The service measurement task includes measurement task information of the service, and the measurement task information includes device identifiers of multiple terminal devices associated with the service.

[0216] Among them, the service includes multiple service flows, and the multiple terminal devices include the sending devices and receiving devices of the multiple service flows. For the explanation of the measurement task information, reference can be made to step 301 above, and the embodiments of the present application will not elaborate here.

[0217] Optionally, taking the service as a distributed training task as an example, the measurement task information can include a task identifier, computing resource information occupied by the task, collective communication domain information, and a traffic analysis task. The task identifier is a unique identifier used to distinguish this distributed training task, for example, a universally unique identifier (UUID). The computing resource information occupied by the task includes the IP addresses of the computing nodes involved in this task, etc. The collective communication domain information includes the collective communication domain identifier of one or more collective communications involved in this task and the IP addresses of the computing nodes participating in the collective communication. The collective communication domain information can also include the collective communication mode and / or the collective communication algorithm.

[0218] Optionally, the collective communication mode includes but is not limited to global reduction (AllReduce), broadcast, global gather (AllGather), reduce scatter, all-to-all, and peer-to-peer (p2p). Different collective communication modes can be used to complete data synchronization tasks for different purposes under distributed tasks. Collective communication algorithms include ring algorithms, halving and doubling (HD) algorithms, or tree algorithms, etc.

[0219] Further, after receiving the service measurement task sent by the service platform, the network management device may perform the following step 602.

[0220] Step 602: The network management device sends a measurement command to multiple network devices in the network. The measurement command is used to instruct the network devices that receive the measurement command to count the traffic characteristics of one or more flows passing through the network devices.

[0221] Optionally, the measurement command is used to indicate the traffic characteristics to be counted. The measurement command may further include a measurement indication, which includes one or more of a source IP address set, a destination IP address set, an inbound direction indication, an outbound direction indication, or an interface indication. The measurement command may further include the valid time of the measurement task. The interpretation of the measurement command may refer to step 302 above, and details are not described herein again in the embodiments of the present application.

[0222] The implementation of this step 602 may refer to the implementation of step 302 above, and details are not described herein again in the embodiments of the present application.

[0223] Further, after receiving the measurement command sent by the network management device, the network devices in the network may perform the following steps 603 to 604.

[0224] Step 603: The network device counts the traffic characteristics of one or more flows passing through itself according to the measurement command.

[0225] Referring to the first implementation manner of the first possible case above, the traffic characteristics indicated by the measurement command to be counted include the start time and end time of each data transmission. Correspondingly, the measurement result includes the first traffic characteristics of the first flow. The first flow is any one of the one or more flows passing through the network device. The first flow includes multiple packet groups respectively used to complete multiple data transmissions. The first traffic characteristics include the transmission start time and transmission end time of each of the multiple packet groups.

[0226] Referring to the second implementation manner of the first possible case described above, the traffic characteristics indicated by the measurement command include the flow completion time. Accordingly, the measurement result includes the second traffic characteristics of the second flow, where the second flow is any one of one or more flows passing through the network device. The second flow includes multiple packet groups respectively used to complete multiple data transmissions, and the second traffic characteristics include the flow completion time of the second flow within one or more statistical periods. The flow completion time of the second flow within each statistical period is respectively obtained based on the transmission durations of one or more packet groups among the multiple packet groups whose transmission end times are within the statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group.

[0227] Referring to the first implementation manner of the second possible case described above, the traffic characteristics indicated by the measurement command include the start time, end time, and traffic volume of each data transmission. Accordingly, the measurement result includes the third traffic characteristics of the third flow, where the third flow is any one of one or more flows passing through the network device. The third flow includes multiple packet groups respectively used to complete multiple data transmissions, and the third traffic characteristics include the transmission start time, transmission end time, and traffic volume of each of the multiple packet groups.

[0228] Referring to the second implementation manner of the second possible case described above, the traffic characteristics indicated by the measurement command include the throughput. Accordingly, the measurement result includes the fourth traffic characteristics of the fourth flow, where the fourth flow is any one of one or more flows passing through the network device. The fourth flow includes multiple packet groups respectively used to complete multiple data transmissions, and the fourth traffic characteristics include the throughput of the network device for the fourth flow within one or more statistical periods. The throughput of the fourth flow within each statistical period is obtained based on the transmission durations and traffic volumes of one or more packet groups among the multiple packet groups whose transmission end times are within the statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group.

[0229] Referring to the third possible case described above, the traffic characteristics indicated by the measurement command include the traffic volume. Accordingly, the measurement result includes the traffic volumes of one or more flows passing through the network device.

[0230] Step 604: The network device sends the measurement result to the network management device, and the measurement result includes the traffic characteristics corresponding to the flow identifiers of one or more flows passing through the network device.

[0231] The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow. The interpretation of the measurement result can refer to the relevant content in the above method 300, and the embodiments of the present application will not elaborate herein.

[0232] Step 605: The network management device determines the traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices.

[0233] Optionally, the traffic analysis result includes one or more of a synchronization measurement result, a throughput performance measurement result, or a load balancing degree measurement result. The explanation of the traffic analysis result can refer to the relevant content in the above Method 300. The implementation of this step 605 can refer to the implementation of the above step 304, and details are not described herein again in the embodiments of the present application.

[0234] Step 606: The network management device sends the service measurement result to the service platform, and the service measurement result includes the traffic analysis result.

[0235] Further, after receiving the service measurement result sent by the network management device, the service platform can execute the following step 607.

[0236] Step 607: The service platform outputs the traffic analysis result.

[0237] Optionally, the service platform can display the traffic analysis result, or the service platform can send the traffic analysis result to a display device for display, facilitating the operation and maintenance personnel to view the traffic analysis result corresponding to the service, so as to implement the quality monitoring and management of the service.

[0238] In the embodiments of the present application, the traffic characteristics statistically calculated by the network device are combined with the service, so as to realize network measurement with the service as the granularity, which helps to monitor and analyze the service quality. Taking the service as a distributed training task or collective communication as an example, based on the characteristics of collective communication, the traffic characteristics of each service flow in the collective communication are analyzed, the flow synchronization, throughput performance, and load balancing degree of the collective communication are measured, and the measurement results are reported to the service platform, which can be easily coordinated with the computing task to assist in analyzing whether the slow or failed distributed training is caused by the network side or the computing side.

[0239] The order of steps of the service traffic analysis method provided in the embodiments of the present application can be appropriately adjusted, and steps can also be increased or decreased accordingly according to the situation. Any method that can be easily thought of by those skilled in the art within the technical scope disclosed in the present application should be covered within the protection scope of the present application.

[0240] Next, a virtual device in the embodiments of the present application is illustrated by way of example.

[0241] For example, Figure 7 is a schematic structural diagram of a service traffic analysis device provided in the embodiments of the present application. This device can be applied to a network management device. As Figure 7As shown, the device 700 includes, but is not limited to, an acquisition module 701, a sending module 702, a receiving module 703, and a determination module 704. Optionally, the device 700 further includes a generation module 705.

[0242] Among them, the acquisition module 701 is used to acquire measurement task information of a service. The measurement task information includes device identifiers of multiple terminal devices associated with the service. The service includes multiple service flows, and the multiple terminal devices include sending devices and receiving devices of the multiple service flows. The sending module 702 is used to send measurement commands to multiple network devices in the network. The measurement commands are used to instruct the network devices that receive the measurement commands to count the traffic characteristics of one or more flows passing through the network devices. The receiving module 703 is used to receive the measurement results sent by the multiple network devices. The measurement result sent by each network device respectively includes the traffic characteristics corresponding to the flow identifiers of one or more flows passing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow. The determination module 704 is used to determine the traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices.

[0243] Optionally, the service is a group communication or a distributed training task.

[0244] Optionally, the determination module 704 is used to: for the measurement result sent by each network device, determine the service flow belonging to the service among one or more flows passing through the network device according to the flow identifier in the measurement result and the device identifiers of the multiple terminal devices; determine the traffic analysis result according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices.

[0245] In the first implementation manner, the multiple network devices include a first network device. The measurement result sent by the first network device includes the first traffic characteristic of a first service flow. The first service flow is any one of the multiple service flows. The first service flow includes multiple packet groups respectively used to complete multiple data transmissions. The first traffic characteristic includes the transmission start time and the transmission end time of each packet group. The determination module 704 is used to: determine the flow completion time of the first service flow in the first statistical period according to the transmission duration of one or more packet groups whose transmission end time is within the first statistical period among the multiple packet groups. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group. Among them, the traffic analysis result includes the flow completion time of the multiple service flows respectively in multiple statistical periods. The first statistical period is any one of the multiple statistical periods.

[0246] Second implementation manner: The multiple network devices include a second network device. The measurement result sent by the second network device includes the second traffic characteristic of a second traffic flow. The second traffic flow is any one of the multiple traffic flows, and the second traffic flow includes multiple packet groups respectively used to complete multiple data transmissions. The second traffic characteristic includes the flow completion time of the second traffic flow within a second statistical period. The flow completion time of the second traffic flow within the second statistical period is obtained based on the transmission durations of one or more packet groups among the multiple packet groups whose transmission end times are within the second statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group. Among them, the traffic analysis result includes the flow completion times of the multiple traffic flows within multiple statistical periods respectively, and the second statistical period is any one of the multiple statistical periods.

[0247] Optionally, the flow completion time of a traffic flow within a statistical period is the statistical value of the transmission durations of all packet groups in the traffic flow whose transmission end times are within the statistical period.

[0248] Optionally, in combination with the first implementation manner or the second implementation manner described above, the determination module 704 is further configured to, for any one of the multiple traffic flows, if the difference between the flow completion time of the traffic flow within a third statistical period and the flow completion time of the traffic flow within a fourth statistical period is greater than a first threshold, determine that the transmission quality of the traffic flow has deteriorated. The third statistical period is chronologically after the fourth statistical period. Among them, the traffic analysis result further includes an indication of the traffic flows among the multiple traffic flows whose transmission quality has deteriorated.

[0249] Third implementation manner: The multiple network devices include a third network device. The measurement result sent by the third network device includes the third traffic characteristic of a third traffic flow. The third traffic flow is any one of the multiple traffic flows, and the third traffic flow includes multiple packet groups respectively used to complete multiple data transmissions. The third traffic characteristic includes the transmission start time, the transmission end time, and the traffic volume of each of the multiple packet groups. The determination module 704 is configured to: determine the throughput of the third network device for the third traffic flow within a fifth statistical period according to the transmission durations and the traffic volumes of one or more packet groups among the multiple packet groups whose transmission end times are within the fifth statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group. Among them, the traffic analysis result includes the throughputs of the multiple network devices for the traffic flows passing through themselves within multiple statistical periods respectively, and the fifth statistical period is any one of the multiple statistical periods.

[0250] The fourth implementation manner: The multiple network devices include a fourth network device. The measurement result sent by the fourth network device includes the fourth traffic characteristic of a fourth traffic flow. The fourth traffic flow is any one of the multiple traffic flows, and the fourth traffic flow includes multiple packet groups respectively used to complete multiple data transmissions. The fourth traffic characteristic includes the throughput of the fourth network device for the fourth traffic flow within a sixth statistical period. The throughput of the fourth traffic flow within the sixth statistical period is obtained based on the transmission durations and traffic volumes of one or more packet groups among the multiple packet groups whose transmission end times are within the sixth statistical period. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group. Among them, the traffic analysis result includes the throughputs of the multiple network devices for the traffic flows passing through themselves within multiple statistical periods, and the sixth statistical period is any one of the multiple statistical periods.

[0251] Optionally, in combination with the above third implementation manner or fourth implementation manner, the determination module 704 is further configured to, for any one of the multiple traffic flows, if the difference between the throughput of the traffic flow by any network device that the traffic flow passes through within a seventh statistical period and the throughput of the traffic flow by the network device within an eighth statistical period is greater than a second threshold, determine that the transmission quality of the traffic flow deteriorates. The eighth statistical period is after the seventh statistical period in time sequence. Among them, the traffic analysis result further includes an indication of the traffic flows whose transmission qualities deteriorate among the multiple traffic flows.

[0252] Optionally, in combination with any one of the above first implementation manner to fourth implementation manner, the sending module is configured to: send measurement commands to multiple access network devices in the network respectively, and each access network device is respectively used to connect one or more of the multiple terminal devices to the network.

[0253] The fifth implementation manner: The measurement results sent by each network device respectively include the traffic volumes of one or more traffic flows passing through the network device. The determination module 704 is configured to: for each network device, determine the cumulative traffic volume of the network device for the service according to the traffic volumes of all traffic flows in the measurement result sent by the network device; determine the load balancing degree of the multiple network devices for the service according to the cumulative traffic volumes of the multiple network devices for the service respectively. The load balancing degree is negatively correlated with the difference between the cumulative traffic volumes of the multiple network devices for the service. Among them, the traffic analysis result includes the load balancing degree of the multiple network devices for the service.

[0254] Optionally, in combination with the above fifth implementation manner, the sending module 702 is configured to: send measurement commands to all network devices on the network path of the multiple traffic flows in the network respectively.

[0255] Optionally, the measurement command further includes a measurement indication, which includes one or more of the following: a set of source IP addresses, the set of source IP addresses includes the IP addresses of one or more of the multiple terminal devices, and the set of source IP addresses is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows that pass through the network device and whose source IP addresses belong to the set of source IP addresses; a set of destination IP addresses, the set of destination IP addresses includes the IP addresses of one or more of the multiple terminal devices, and the set of destination IP addresses is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows that pass through the network device and whose destination IP addresses belong to the set of destination IP addresses; an inbound direction indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more flows received by the network device; an outbound direction indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more flows sent by the network device; an interface indication, which is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows passing through one or more specified interfaces of the network device, and the measurement result sent by the network device further includes an interface identifier, and the interface identifier is used to indicate the interface through which the flow passes on the network device.

[0256] Optionally, the measurement task information further includes a traffic analysis task, and the traffic analysis task is used to indicate the traffic analysis type. A generation module 705 is configured to generate a measurement command according to the traffic analysis task, and the type of the traffic characteristics indicated to be counted by the measurement command matches the traffic analysis type indicated by the traffic analysis task. Correspondingly, a determination module is configured to determine the traffic analysis result of the service under the traffic analysis type indicated by the traffic analysis task according to the measurement results sent by multiple network devices and the device identifiers of multiple terminal devices.

[0257] Optionally, an acquisition module 701 is configured to receive a service measurement task sent by a service platform, and the service measurement task includes measurement task information.

[0258] Optionally, a sending module 702 is further configured to send a service measurement result to the service platform, and the service measurement result includes a traffic analysis result.

[0259] Optionally, the multiple service flows are RDMA flows.

[0260] For example, Figure 8 is a schematic structural diagram of another service traffic analysis device provided by an embodiment of the present application. The device can be applied to a service platform. As Figure 8 shown, the device 800 includes but is not limited to a sending module 801 and a receiving module 802. Optionally, the device 800 further includes an output module 803.

[0261] Among them, the sending module 801 is configured to send a service measurement task to a network management device. The service measurement task includes measurement task information of the service. The measurement task information includes device identifiers of multiple terminal devices associated with the service. The service includes multiple service flows. The multiple terminal devices include sending devices and receiving devices of the multiple service flows. The receiving module 802 is configured to receive a service measurement result sent by the network management device. The service measurement result includes a traffic analysis result corresponding to the service.

[0262] Optionally, the service is a group communication or a distributed training task.

[0263] Optionally, the output module 803 is configured to output the traffic analysis result.

[0264] For example, Figure 9 is a schematic structural diagram of another service traffic analysis device provided by an embodiment of the present application. The device can be applied to a network device. As Figure 9 shown, the device 900 includes but is not limited to a receiving module 901, a processing module 902, and a sending module 903.

[0265] Among them, the receiving module 901 is configured to receive a measurement command sent by the network management device. The measurement command is used to instruct the network device to count traffic characteristics of one or more flows passing through the network device. The processing module 902 is configured to count traffic characteristics of one or more flows passing through the network device according to the measurement command. The sending module 903 is configured to send a measurement result to the network management device. The measurement result includes traffic characteristics corresponding to the flow identifier of one or more flows passing through the network device. The flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow.

[0266] Optionally, the measurement command further includes a measurement indication. The measurement indication includes one or more of the following: a source IP address set, the source IP address set includes one or more IP addresses, and the source IP address set is used to instruct the network device to count traffic characteristics of flows passing through the network device and having source IP addresses belonging to the source IP address set; a destination IP address set, the destination IP address set includes one or more IP addresses, and the destination IP address set is used to instruct the network device to count traffic characteristics of flows passing through the network device and having destination IP addresses belonging to the destination IP address set; an inbound direction indication, the inbound direction indication is used to instruct the network device to count traffic characteristics of one or more flows received by the network device; an outbound direction indication, the outbound direction indication is used to instruct the network device to count traffic characteristics of one or more flows sent by the network device; an interface indication, the interface indication is used to instruct the network device to count traffic characteristics of one or more specified interfaces through which the flows pass through the network device. The measurement result sent by the network device further includes an interface identifier, and the interface identifier is used to indicate the interface through which the flow passes on the network device.

[0267] Optionally, the measurement result includes a first traffic characteristic of a first flow, where the first flow is any one of one or more flows, the first flow includes a plurality of packet groups respectively used to complete multiple data transmissions, and the first traffic characteristic includes the transmission start time and transmission end time of each of the plurality of packet groups.

[0268] Optionally, the measurement result includes a second traffic characteristic of a second flow, where the second flow is any one of one or more flows, the second flow includes a plurality of packet groups respectively used to complete multiple data transmissions, and the second traffic characteristic includes the flow completion time of the second flow within one or more statistical periods. The flow completion time of the second flow within each statistical period is respectively obtained based on the transmission durations of one or more packet groups among the plurality of packet groups whose transmission end times are within the statistical period. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group.

[0269] Optionally, the measurement result includes a third traffic characteristic of a third flow, where the third flow is any one of one or more flows, the third flow includes a plurality of packet groups respectively used to complete multiple data transmissions, and the third traffic characteristic includes the transmission start time, transmission end time, and traffic volume of each of the plurality of packet groups.

[0270] Optionally, the measurement result includes a fourth traffic characteristic of a fourth flow, where the fourth flow is any one of one or more flows, the fourth flow includes a plurality of packet groups respectively used to complete multiple data transmissions, and the fourth traffic characteristic includes the throughput of the fourth flow by the network device within one or more statistical periods. The throughput of the fourth flow within each statistical period is obtained based on the transmission durations and traffic volumes of one or more packet groups among the plurality of packet groups whose transmission end times are within the statistical period. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group.

[0271] Optionally, the measurement result includes the traffic volume of one or more flows.

[0272] Regarding the apparatus in the above embodiments, the specific manners in which each module performs operations have been described in detail in the embodiments related to the method, and will not be elaborated here.

[0273] The basic hardware structure of the network device according to the embodiments of the present application will be exemplified below.

[0274] For example, Figure 10 is a schematic diagram of the hardware structure of a network device provided by an embodiment of the present application. As Figure 10 shown, the network device 1000 includes a processor 1001, a forwarding chip 1002, and at least one network interface 1003. Optionally, in combination with Figure 2 viewed, Figure 10 the network device 1000 in Figure 2Any of the network devices 203 shown.

[0275] Optionally, the processor 1001 includes a central processing unit (CPU) and / or a dedicated hardware chip. The CPU refers to a general-purpose CPU with high scalability and flexibility. The CPU is, for example, a single-core processor or a multi-core processor. The dedicated hardware chip is a high-performance processing hardware module. The dedicated hardware chip includes at least one of an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or a network processor (NP).

[0276] The forwarding chip 1002 is used to forward requests and data. For example, the forwarding chip 1002 is used for the network device 1000 to forward access request messages to the protected device and forward access response messages to the host.

[0277] At least one network interface 1003 includes, for example, Figure 10 Network interface 1, network interface 2, network interface 3... network interface n in. The network interface 1003 uses any device such as a transceiver for communicating with other devices or communication networks. For example, Figure 10 Network interface 1 in communicates with the terminal device, Figure 10 Network interface 2 in communicates with the network management device. Optionally, the network interface 1003 includes at least one of a wired network interface or a wireless network interface. Among them, the wired network interface is, for example, an Ethernet interface. The Ethernet interface is, for example, an optical interface, an electrical interface, or a combination thereof. The wireless network interface is, for example, a wireless local area networks (WLAN) interface, a cellular network interface, or a combination thereof, etc.

[0278] Between at least one network interface 1003 and the forwarding chip 1002, and between the forwarding chip 1002 and the processor 1001, they are connected by an internal connection 1004. The internal connection 1004 includes a path for transmitting data between the network interface 1003, the forwarding chip 1002 and the processor 1001. Optionally, the internal connection 1004 is a single board or a bus. For example, the internal connection 1004 is Ethernet, Fibre Channel, PCI-E (Peripheral Component Interconnect Express, a high-speed serial computer bus), RapidIO (a high-performance, low-pin count, packet-switched interconnect architecture), InfiniBand or XAUI bus (an interface extender that connects the Ethernet Media Access Control (MAC) layer to the physical layer).

[0279] Optionally, the network device 1000 further includes a content addressable memory (CAM) 1005. The CAM 1005 is, for example, a ternary content addressable memory (TCAM), etc. Optionally, the CAM 1005 exists independently and is connected to the forwarding chip 1002 through the above internal connection 1004. Alternatively, the CAM 1005 and the forwarding chip 1002 are integrated together, that is, the CAM 1005 is used as the memory inside the forwarding chip 1002.

[0280] Optionally, the network device 1000 further includes a memory 1006. The memory 1006 is, for example, a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, or a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM), or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media, or other magnetic storage devices, or any other medium that can be used to carry or store the desired program code 10010 in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 1006 exists independently, for example, and is connected to the processor 1001 through an internal connection 1004. Or the memory 1006 and the processor 1001 are integrated together.

[0281] The memory 1006 stores an operating system 1007 and a program code 10010. Optionally, the processor 1001 reads the operating system 1007 from the memory 1006 and runs the operating system 1007. The processor 1001 also reads the program code 10010 from the memory 1006 and implements the actions performed by the network device in the above method provided by the embodiments of the present application by running the program code 10010 on the operating system 1007.

[0282] Optionally, the above devices are respectively disposed on independent chips, or at least part or all of them are disposed on the same chip. Whether to independently dispose each device on different chips or integrate and dispose them on one or more chips often depends on the needs of product design. The embodiments of the present application do not limit the specific implementation forms of the above devices.

[0283] The basic hardware structure of the network management device / service platform according to the embodiments of the present application will be exemplified below.

[0284] For example, Figure 11 is a schematic diagram of the hardware structure of a network management device / service platform provided by the embodiments of the present application. As Figure 11 shown, the network management device / service platform 1100 includes a processor 1101 and a memory 1102, and the memory 1101 is connected to the memory 1102 through a bus 1103. Figure 11The description is based on the independent processor 1101 and memory 1102. Optionally, the processor 1101 and the memory 1102 are integrated together. Optionally, in combination with Figure 2 viewed as Figure 11 the network management device / business platform 1100 in Figure 2 may be the network management device 201 or the business platform 204 shown.

[0285] Among them, the memory 1102 is used to store computer programs, and the computer programs include an operating system and program codes. The memory 1102 is various types of storage media, such as ROM, RAM, EEPROM, CD-ROM, flash memory, optical memory, registers, optical disc storage, optical disc storage, magnetic disk or other magnetic storage devices.

[0286] Among them, the processor 1101 is a general-purpose processor or a dedicated processor. The processor 1101 may be a single-core processor or a multi-core processor. The processor 1101 includes at least one circuit to perform the actions executed by the network management device / business platform in the above method provided by the embodiments of the present application.

[0287] Optionally, the network management device / business platform 1100 further includes a network interface 1104, and the network interface 1104 is connected to the processor 1101 and the memory 1102 through a bus 1103. The network interface 1104 can enable the network management device / business platform 1100 to communicate with other devices.

[0288] Optionally, the network management device / business platform 1100 further includes an input / output (I / O) interface 1105, and the I / O interface 1105 is connected to the processor 1101 and the memory 1102 through a bus 1103. The processor 1101 can receive input commands or data, etc. through the I / O interface 1105. The I / O interface 1105 is used for the network management device / business platform 1100 to connect to input devices, and these input devices are, for example, keyboards, mice, etc. Optionally, in some possible scenarios, the above network interface 1104 and I / O interface 1105 are collectively referred to as a communication interface.

[0289] Optionally, the network management device / business platform 1100 further includes a display 1106, and the display 1106 is connected to the processor 1101 and the memory 1102 through a bus 1103. The display 1106 can be used to display intermediate results and / or final results generated by the processor 1101 executing the above method, such as traffic analysis results corresponding to services can be displayed. In a possible implementation manner, the display 1106 is a touch display screen to provide a human-computer interaction interface.

[0290] Among them, the bus 1103 can be of any type and is used to implement the communication bus for the internal device interconnection of the network management device / business platform 1100. For example, a system bus. In the embodiments of the present application, taking the above devices inside the network management device / business platform 1100 being interconnected through the bus 1103 as an example, optionally, the above devices inside the network management device / business platform 1100 communicate with each other using other connection methods except the bus 1103. For example, the above devices inside the network management device / business platform 1100 are interconnected through the logical interfaces inside the network management device / business platform 1100.

[0291] The above devices can be respectively disposed on independent chips, or at least partially or entirely disposed on the same chip. Whether to independently dispose each device on different chips or integrate and dispose them on one or more chips often depends on the needs of product design. The embodiments of the present application do not limit the specific implementation forms of the above devices.

[0292] Figure 11 The shown network management device / business platform 1100 is merely exemplary. During the implementation process, the network management device / business platform 1100 includes other components, which will not be listed one by one herein. Figure 11 The shown network management device / business platform 1100 can analyze service traffic by executing all or part of the steps of the method provided in the above embodiments.

[0293] The embodiments of the present application further provide a service traffic analysis system, including: a network management device and multiple network devices. The network management device is used to perform the actions executed by the network management device in the above method embodiments. The network devices are used to perform the actions executed by the network devices in the above method embodiments.

[0294] Optionally, the system further includes a business platform, and the business platform is used to perform the actions executed by the business platform in the above method embodiments.

[0295] The embodiments of the present application further provide a computer-readable storage medium, on which instructions are stored. When the instructions are executed by a processor, the actions executed by the network management device, network device, or business platform in the above method embodiments are implemented.

[0296] The embodiments of the present application further provide a computer program product, including a computer program. When the computer program is executed by a processor, the actions executed by the network management device, network device, or business platform in the above method embodiments are implemented.

[0297] An embodiment of the present application further provides a chip, which includes a programmable logic circuit and / or program instructions. When the chip runs, it implements the actions performed by the network management device, network device, or service platform in the above method embodiment.

[0298] In the above embodiment, it can be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the processes or functions described in the embodiments of the present invention are generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center by wire (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer, or a data storage device such as a server or data center that includes one or more integrated available media. The available medium can be a magnetic medium (such as a floppy disk, hard disk, magnetic tape), an optical medium (such as a digital versatile disc (DVD)), or a semiconductor medium (such as a solid state disk (SSD)), etc.

[0299] Those of ordinary skill in the art can understand that all or part of the steps to implement the above embodiment can be completed by hardware, or can be completed by a program instructing relevant hardware. The program can be stored in a computer-readable storage medium, and the above-mentioned storage medium can be a read-only memory, a magnetic disk, or an optical disc, etc.

[0300] In the embodiments of the present application, the terms "first", "second", and "third" are only used for descriptive purposes and cannot be construed as indicating or implying relative importance.

[0301] The term "and / or" in the present application is merely a description of the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, and B exists alone. In addition, the character " / " in this article generally represents an "or" relationship between the associated objects before and after.

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

[0303] The above are only optional embodiments of this application and are not intended to limit this application. Any modifications, equivalent replacements, improvements, etc. made within the concept and principle of this application shall be included in the protection scope of this application.

Claims

1. A method for analyzing service traffic, characterized in that The method includes: Obtaining measurement task information of a service, where the measurement task information includes device identifiers of multiple terminal devices associated with the service, the service includes multiple service flows, and the multiple terminal devices include sending devices and receiving devices of the multiple service flows; Sending measurement commands to multiple network devices in the network, where the measurement commands are used to instruct the network devices that receive the measurement commands to count traffic characteristics of one or more flows passing through the network devices; Receiving measurement results sent by the multiple network devices, where the measurement results sent by each network device respectively include traffic characteristics corresponding to flow identifiers of one or more flows passing through the network device, and the flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow; Determining a traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices.

2. The method according to claim 1, characterized in that The service is a group communication or a distributed training task.

3. The method according to claim 1 or 2, characterized in that, The determining the traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices includes: For the measurement result sent by each network device, determining, according to the flow identifier in the measurement result and the device identifiers of the multiple terminal devices, service flows belonging to the service among one or more flows passing through the network device; Determining the traffic analysis result according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices.

4. The method according to claim 3, wherein The multiple network devices include a first network device, and the measurement result sent by the first network device includes a first traffic characteristic of a first service flow, the first service flow being any one of the multiple service flows, and the first service flow includes multiple packet groups respectively used to complete multiple data transmissions; The first traffic characteristic includes the transmission start time and transmission end time of each of the multiple packet groups, and the determining the traffic analysis result according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices includes: Determining the flow completion time of the first service flow within the first statistical period according to the transmission durations of one or more packet groups whose transmission end times are within the first statistical period among the multiple packet groups, where the transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group; Wherein, the traffic analysis result includes the flow completion times of the multiple service flows respectively within multiple statistical periods, and the first statistical period is any one of the multiple statistical periods.

5. The method according to claim 3, characterized in that, The multiple network devices include a second network device, and the measurement result sent by the second network device includes a second traffic characteristic of a second service flow, the second service flow being any one of the multiple service flows, and the second service flow includes multiple packet groups respectively used to complete multiple data transmissions; The second traffic characteristic includes the flow completion time of the second service flow within a second statistical period, and the flow completion time of the second service flow within the second statistical period is obtained based on the transmission durations of one or more packet groups among the multiple packet groups whose transmission end times are within the second statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group; Among them, the traffic analysis result includes the flow completion times of the multiple service flows within multiple statistical periods respectively, and the second statistical period is any one of the multiple statistical periods.

6. The method according to claim 4 or 5, characterized in that, The flow completion time of a service flow within a statistical period is the statistical value of the transmission durations of all packet groups in the service flow whose transmission end times are within the statistical period.

7. The method according to any one of claims 4 to 6, characterized in that The method further includes: For any one of the multiple service flows, if the difference between the flow completion time of the service flow within a third statistical period and the flow completion time of the service flow within a fourth statistical period is greater than a first threshold, it is determined that the transmission quality of the service flow has deteriorated. The third statistical period is temporally after the fourth statistical period; Among them, the traffic analysis result further includes an indication of the service flows among the multiple service flows whose transmission quality has deteriorated.

8. The method according to claim 3, characterized in that The multiple network devices include a third network device, and the measurement result sent by the third network device includes the third traffic characteristic of a third service flow. The third service flow is any one of the multiple service flows, and the third service flow includes multiple packet groups respectively used to complete multiple data transmissions; The third traffic characteristic includes the transmission start time, transmission end time, and traffic volume of each of the multiple packet groups. Determining the traffic analysis result according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices includes: Determining the throughput of the third network device for the third service flow within a fifth statistical period according to the transmission durations and traffic volumes of one or more packet groups among the multiple packet groups whose transmission end times are within the fifth statistical period. The transmission duration of each packet group is obtained based on the transmission end time and the transmission start time of the packet group; Among them, the traffic analysis result includes the throughputs of the multiple network devices for the service flows passing through themselves within multiple statistical periods respectively, and the fifth statistical period is any one of the multiple statistical periods.

9. The method according to claim 3, wherein The multiple network devices include a fourth network device, and the measurement result sent by the fourth network device includes the fourth traffic characteristic of a fourth service flow. The fourth service flow is any one of the multiple service flows, and the fourth service flow includes multiple packet groups respectively used to complete multiple data transmissions; The fourth traffic characteristic includes the throughput of the fourth service flow by the fourth network device within a sixth statistical period. The throughput of the fourth service flow within the sixth statistical period is obtained based on the transmission durations and traffic volumes of one or more packet groups among the multiple packet groups whose transmission end times are within the sixth statistical period. The transmission duration of each packet group is obtained based on the transmission end time and transmission start time of the packet group; Among them, the traffic analysis result includes the throughputs of the service flows passing through the multiple network devices respectively within multiple statistical periods, and the sixth statistical period is any one of the multiple statistical periods.

10. The method according to claim 8 or 9, characterized in that, The method further includes: For any one of the multiple service flows, if the difference between the throughput of the service flow by any network device through which the service flow passes within a seventh statistical period and the throughput of the service flow by the network device within an eighth statistical period is greater than a second threshold, it is determined that the transmission quality of the service flow has deteriorated. The eighth statistical period is chronologically after the seventh statistical period; Among them, the traffic analysis result further includes an indication of the service flows among the multiple service flows whose transmission quality has deteriorated.

11. The method according to any one of claims 4 to 10, characterized in that The sending of measurement commands to multiple network devices in the network includes: Sending the measurement commands to multiple access network devices in the network respectively. Each access network device is respectively used to connect one or more of the multiple terminal devices to the network.

12. The method according to claim 3, wherein The measurement results sent by each network device respectively include the traffic volumes of one or more flows passing through the network device. The determining of the traffic analysis result according to the traffic characteristics of the multiple service flows in the measurement results sent by the multiple network devices includes: For each network device, determining the cumulative traffic volume of the network device for the service according to the traffic volumes of all service flows in the measurement results sent by the network device; Determining the load balancing degree of the multiple network devices for the service according to the cumulative traffic volumes of the multiple network devices for the service respectively. The load balancing degree is negatively correlated with the difference between the cumulative traffic volumes of the multiple network devices for the service; Among them, the traffic analysis result includes the load balancing degree of the multiple network devices for the service.

13. The method according to claim 12, wherein The sending of measurement commands to multiple network devices in the network includes: Sending the measurement commands to all network devices on the network path of the multiple service flows in the network respectively.

14. The method according to any one of claims 1 to 13, characterized in that The measurement command further includes a measurement indication, and the measurement indication includes one or more of the following: A set of source Internet Protocol (IP) addresses. The source IP address set includes the IP addresses of one or more of the multiple terminal devices. The source IP address set is used to instruct the network device that receives the measurement command to statistically analyze the traffic characteristics of the flows passing through the network device and whose source IP addresses belong to the source IP address set; A set of destination IP addresses, where the set of destination IP addresses includes the IP addresses of one or more of the multiple terminal devices, and the set of destination IP addresses is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows that pass through the network device and whose destination IP addresses belong to the set of destination IP addresses; An incoming direction indication, where the incoming direction indication is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more flows received by the network device; An outgoing direction indication, where the outgoing direction indication is used to instruct the network device that receives the measurement command to count the traffic characteristics of one or more flows sent by the network device; An interface indication, where the interface indication is used to instruct the network device that receives the measurement command to count the traffic characteristics of the flows passing through one or more specified interfaces of the network device, and the measurement result sent by the network device also includes an interface identifier, where the interface identifier is used to indicate the interface through which the flow passes on the network device.

15. The method according to any one of claims 1 to 14, characterized in that, The measurement task information further includes a traffic analysis task, where the traffic analysis task is used to indicate the traffic analysis type, and the method further includes: Generating the measurement command according to the traffic analysis task, where the type of the traffic characteristics indicated to be counted by the measurement command matches the traffic analysis type indicated by the traffic analysis task; The determining the traffic analysis result corresponding to the service according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices includes: Determining the traffic analysis result of the service under the traffic analysis type indicated by the traffic analysis task according to the measurement results sent by the multiple network devices and the device identifiers of the multiple terminal devices.

16. The method according to any one of claims 1 to 15, characterized in that, The obtaining the measurement task information of the service includes: Receiving a service measurement task sent by a service platform, where the service measurement task includes the measurement task information.

17. The method according to claim 16, wherein The method further includes: Sending a service measurement result to the service platform, where the service measurement result includes the traffic analysis result.

18. A method for analyzing service traffic, characterized in that, The method includes: Sending a service measurement task to a network management device, where the service measurement task includes the measurement task information of the service, the measurement task information includes the device identifiers of multiple terminal devices associated with the service, the service includes multiple service flows, and the multiple terminal devices include the sending devices and receiving devices of the multiple service flows; Receiving the service measurement result sent by the network management device, where the service measurement result includes the traffic analysis result corresponding to the service.

19. The method according to claim 18, wherein The service is a group communication or a distributed training task.

20. The method according to claim 18 or 19, characterized in that, The method further includes: Outputting the traffic analysis result.

21. A service traffic analysis method, characterized in that When applied to a network device, the method includes: Receiving a measurement command sent by a network management device, where the measurement command is used to instruct the network device to count the traffic characteristics of one or more flows passing through the network device; Counting the traffic characteristics of one or more flows passing through the network device according to the measurement command; Send the measurement result to the network management device, where the measurement result includes traffic characteristics corresponding to flow identifiers of one or more flows passing through the network device, and the flow identifier of each flow includes the device identifier of the sending device of the flow and the device identifier of the receiving device of the flow.

22. The method according to claim 21, wherein The measurement command further includes a measurement indication, and the measurement indication includes one or more of the following: A set of source Internet Protocol (IP) addresses, where the set of source IP addresses includes one or more IP addresses, and the set of source IP addresses is used to instruct the network device to count the traffic characteristics of the flows passing through the network device and having source IP addresses belonging to the set of source IP addresses; A set of destination IP addresses, where the set of destination IP addresses includes one or more IP addresses, and the set of destination IP addresses is used to instruct the network device to count the traffic characteristics of the flows passing through the network device and having destination IP addresses belonging to the set of destination IP addresses; An incoming direction indication, which is used to instruct the network device to count the traffic characteristics of one or more flows received by the network device; An outgoing direction indication, which is used to instruct the network device to count the traffic characteristics of one or more flows sent by the network device; An interface indication, which is used to instruct the network device to count the traffic characteristics of the flows passing through one or more specified interfaces of the network device. The measurement result sent by the network device further includes an interface identifier, and the interface identifier is used to indicate the interface through which the flow passes on the network device.

23. A service traffic analysis device, characterized in that The apparatus includes a plurality of functional modules, and the plurality of functional modules interact to implement the method according to any one of claims 1 to 22.

24. A service traffic analysis device, characterized in that including: a processor and a memory; The memory is used to store a computer program, and the computer program includes program instructions; The processor is used to call the computer program to implement the method according to any one of claims 1 to 22.

25. A service traffic analysis system, characterized in that, including: a network management device and a plurality of network devices, where the network management device is used to execute the method according to any one of claims 1 to 17, and the network device is used to execute the method according to claim 21 or 22.

26. The system according to claim 25, wherein The system further includes a service platform, and the service platform is used to execute the method according to any one of claims 18 to 20.

27. A computer-readable storage medium, characterized in that, Instructions are stored on the computer-readable storage medium, and when the instructions are executed by a processor, the method according to any one of claims 1 to 22 is implemented.

28. A computer program product, characterized in that, including a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 22 is implemented.

Citation Information

Cited By

  • Service flow analysis method, apparatus, and system

    WO2025140087A1