Data transmission bottleneck positioning method and device, terminal, equipment and product

By sending network probe messages to intermediate transmission nodes and utilizing hop-by-hop update technology, the hardware storage read/write rates of the sending and receiving ends, as well as the network transmission bottleneck rate, are comprehensively analyzed. This solves the problem of not being able to accurately locate data transmission bottlenecks in existing technologies and improves data transmission efficiency.

CN121151200APending Publication Date: 2025-12-16CHINA MOBILE COMM LTD RES INST +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511112421.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-08
Publication Date
2025-12-16

AI Technical Summary

Technical Problem

Existing technologies cannot accurately pinpoint the bottlenecks in data transmission or the specific locations of network congestion, making it impossible to quickly locate the root cause of the problem and affecting data transmission efficiency.

Method used

By sending network probe messages to intermediate transmission nodes and using hop-by-hop updates to obtain the network transmission bottleneck rate, and by comprehensively analyzing the hardware storage read/write rates of the sending and receiving ends and the network transmission bottleneck rate, the data transmission bottleneck point is determined.

Benefits of technology

It enables rapid and accurate location of data transmission bottlenecks, improves data transmission efficiency, and ensures maximum performance in data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121151200A_ABST
    Figure CN121151200A_ABST
Patent Text Reader

Abstract

The invention relates to the field of wireless, core network, transmission and bearing and cloud computing big data edge computing, and provides a data transmission bottleneck positioning method and device, a terminal, equipment and a product. The method is applied to a first terminal and comprises the following steps: acquiring a maximum read rate and a real-time available read rate of first storage equipment in the first terminal; based on a transmission protocol, sending a network detection message to a second terminal through the intermediate transmission node, and receiving a network bandwidth feedback message sent by the second terminal and a write rate feedback message of a second storage device sent by the second terminal; and when the data sending rate of the first terminal is greater than the network transmission bottleneck rate, determining a data transmission bottleneck position based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate and the network transmission bottleneck rate. According to the data transmission bottleneck positioning method provided by the invention, the data transmission bottleneck point can be quickly determined.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the fields of wireless, core network, transmission and bearer, cloud computing, big data and edge computing technologies, and in particular to a data transmission bottleneck location method, device, terminal, equipment and product. Background Technology

[0002] When performing end-to-end data transmission, the problem of slow data transmission rate is often encountered. Since there are many reasons for the slow data transmission rate, such as limited file read and write rate, limited application data sending rate, and limited network transmission rate, it is difficult to quickly locate the root cause of the problem when optimizing data transmission performance.

[0003] Currently, data centers primarily use Remote Direct Memory Access (RDMA) to integrate network, network interface card (NIC), and solid state drive (SSD) congestion information to address data backpressure and network issues caused by NIC and SSD speed mismatch. However, this approach cannot precisely pinpoint the bottleneck in data transmission or the specific location of network congestion, thus failing to quickly locate the root cause of the problem. Summary of the Invention

[0004] This application provides a data transmission bottleneck location method, apparatus, terminal, device, and product to address the shortcomings of existing technologies that cannot accurately locate data transmission bottlenecks or the specific location of network congestion, thus failing to quickly pinpoint the root cause of the problem. By sending network probe messages to intermediate transmission nodes and using hop-by-hop updates to obtain the network transmission bottleneck rate, and by comprehensively analyzing the hardware storage read / write rates, real-time available read / write rates, and network transmission bottleneck rates of the sending and receiving ends, the data transmission bottleneck points can be determined comprehensively and quickly. This allows for rapid identification of the root cause of slow data transmission rates. Furthermore, by detecting data read / write bottlenecks at the sending and receiving ends and network transmission bottlenecks, data transmission efficiency can be maximized, thereby improving overall data transmission performance.

[0005] In a first aspect, embodiments of this application provide a data transmission bottleneck location method, applied to a first terminal, comprising: Obtain the maximum read rate and real-time available read rate of the first storage device in the first terminal; Based on the transmission protocol, a network probe message is sent to the second terminal through an intermediate transmission node, and a network bandwidth feedback message and a write rate feedback message of the second storage device are received from the second terminal. The network probe message includes the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback message includes the target minimum physical bandwidth and the target minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node through hop-by-hop updates based on the initial physical bandwidth and the initial available bandwidth. The write rate feedback message includes the maximum write rate and real-time available write rate of the second storage device. When the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, the data transmission bottleneck location is determined based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0006] In one embodiment, determining the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate includes: determining the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determining the write bottleneck rate of the second terminal based on the maximum write rate and the real-time available write rate; and determining the location corresponding to the minimum bottleneck rate among the actual read bottleneck rate, the write bottleneck rate, and the network transmission bottleneck rate as the data transmission bottleneck location; wherein the location corresponding to the read bottleneck rate is the first terminal, the location corresponding to the write bottleneck rate is the second terminal, and the location corresponding to the network transmission bottleneck rate is the network side.

[0007] In one embodiment, determining the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate includes: determining the theoretical read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determining a protocol overhead correction factor based on the protocol used by the first terminal when reading data; and correcting the theoretical read bottleneck rate based on the protocol overhead correction factor to obtain the actual read bottleneck rate.

[0008] In one embodiment, the method further includes: determining the data transmission bottleneck location as the application side of the first terminal when the data transmission rate of the first terminal is less than the network transmission bottleneck rate.

[0009] In one embodiment, obtaining the maximum read rate of the first storage device in the first terminal includes: obtaining the disk array, number of disks, and disk model of the first storage device; determining the theoretical read rate of the first storage device based on the disk array, the number of disks, and the disk model; obtaining the interface type of the first storage device; determining the first interface rate of the first storage device based on the interface type; and taking the minimum rate between the theoretical read rate and the first interface rate as the maximum read rate.

[0010] In one embodiment, sending a network probe packet to a second terminal via an intermediate transmission node based on a transmission protocol includes: sending the network probe packet to an intermediate transmission node based on the transmission protocol; the intermediate transmission node is used to update the current hop count, timestamp, initial minimum physical bandwidth, IP address corresponding to the initial minimum physical bandwidth, initial minimum available bandwidth, and IP address corresponding to the initial minimum available bandwidth in the network probe packet based on a hop-by-hop update mechanism, to obtain a target network probe packet and send it to the second terminal; the second terminal is used to generate a network bandwidth feedback packet based on the target network probe packet; the initial minimum physical bandwidth is the initial physical bandwidth, and the initial minimum available bandwidth is the initial available bandwidth.

[0011] In one embodiment, after determining the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate, the method further includes: if the data transmission bottleneck location is on the network side, reducing the data transmission rate of the first terminal to the network transmission bottleneck rate, or adjusting the transmission route through a software-defined network controller to dynamically adjust the transmission strategy; if the data transmission bottleneck location is the first terminal, reducing the concurrent read tasks of the first terminal to dynamically adjust the transmission strategy; and if the data transmission bottleneck location is the second terminal, compressing the data transmitted by the first terminal to dynamically adjust the transmission strategy.

[0012] Secondly, embodiments of this application provide a data transmission bottleneck location method, applied to a second terminal, comprising: The intermediate transmission node receives the target network probe message sent by the first terminal; the target network probe message is obtained by the intermediate transmission node updating the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal hop by hop. Obtain the maximum write rate and real-time available write rate of the second storage device in the second terminal; The maximum write rate and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message, which is then sent to the first terminal via a transmission protocol. The target network probe packets are parsed to obtain the target's minimum physical bandwidth and minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message, which is then sent to the first terminal via a transmission protocol. The first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate, and network transmission bottleneck rate of the first storage device. The network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0013] In one embodiment, obtaining the maximum write rate of the second storage device in the second terminal includes: obtaining the disk array, number of disks, and disk model of the second storage device; determining the theoretical write rate of the second storage device based on the disk array, number of disks, and disk model; obtaining the second interface type of the second storage device; determining the second interface rate of the second storage device based on the second interface type; and taking the minimum rate between the theoretical write rate and the second interface rate as the maximum write rate.

[0014] In one embodiment, encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message includes: when the utilization rate of the second storage device is detected to be greater than a utilization threshold, encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message.

[0015] In one embodiment, encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message includes: when a first time interval is detected to have reached a first transmission period, encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message, wherein the first time interval is the time interval between the second terminal sending the last write rate feedback message.

[0016] In one embodiment, encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message includes: when an update to the target minimum physical bandwidth and / or target minimum available bandwidth is detected in the target network probe message, encapsulating the updated target minimum physical bandwidth and / or updated target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message.

[0017] In one embodiment, encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message includes: If the second time interval is detected to reach the second transmission period, the target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message. The second time interval is the time interval between the second terminal sending the last network bandwidth feedback message.

[0018] Thirdly, embodiments of this application also provide a data transmission bottleneck location device, comprising: The read acquisition module is used to acquire the maximum read rate and real-time available read rate of the first storage device in the first terminal; The first transmission module is configured to send network probe messages to the second terminal via an intermediate transmission node based on a transmission protocol, and receive network bandwidth feedback messages and write rate feedback messages of the second storage device sent by the second terminal. The network probe messages include the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback messages include the target minimum physical bandwidth and the target minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node through hop-by-hop updates based on the initial physical bandwidth and the initial available bandwidth. The write rate feedback messages include the maximum write rate and real-time available write rate of the second storage device. The bottleneck location determination module is used to determine the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0019] Fourthly, embodiments of this application also provide a data transmission bottleneck location device, comprising: The second transmission module is used to receive the target network probe message sent by the first terminal through an intermediate transmission node; the target network probe message is obtained by the intermediate transmission node updating the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal hop by hop. The write acquisition module is used to acquire the maximum write rate and real-time available write rate of the second storage device in the second terminal. The third transmission module is used to encapsulate the maximum write rate and the real-time available write rate into an extended frame, obtain a write rate feedback message, and send it to the first terminal through a transmission protocol. The parsing module is used to parse the target network probe packets to obtain the target's minimum physical bandwidth and minimum available bandwidth. The fourth transmission module is used to encapsulate the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame, obtain a network bandwidth feedback message, and send it to the first terminal through a transmission protocol; the first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate of the first storage device, wherein the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0020] Fifthly, embodiments of this application provide a terminal, including a memory, a transceiver, and a processor; A memory for storing computer programs; a transceiver for sending and receiving data under the control of the processor; and a processor for reading the computer programs from the memory and performing the following operations: Obtain the maximum read rate and real-time available read rate of the first storage device in the first terminal; Based on the transmission protocol, a network probe message is sent to the second terminal through an intermediate transmission node, and a network bandwidth feedback message and a write rate feedback message of the second storage device are received from the second terminal. The network probe message includes the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback message includes the target minimum physical bandwidth and the target minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node through hop-by-hop updates based on the initial physical bandwidth and the initial available bandwidth. The write rate feedback message includes the maximum write rate and real-time available write rate of the second storage device. When the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, the data transmission bottleneck location is determined based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0021] Sixthly, embodiments of this application provide a terminal, including a memory, a transceiver, and a processor; The intermediate transmission node receives the target network probe message sent by the first terminal; the target network probe message is obtained by the intermediate transmission node updating the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal hop by hop. Obtain the maximum write rate and real-time available write rate of the second storage device in the second terminal; The maximum write rate and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message, which is then sent to the first terminal via a transmission protocol. The target network probe packets are parsed to obtain the target's minimum physical bandwidth and minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message, which is then sent to the first terminal via a transmission protocol. The first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate, and network transmission bottleneck rate of the first storage device. The network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0022] In a seventh aspect, embodiments of this application provide an electronic device, including a processor and a memory storing a computer program, wherein the processor executes the program to implement the steps of the data transmission bottleneck location method described in the first or second aspect.

[0023] Eighthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the steps of the data transmission bottleneck location method described in the first or second aspect.

[0024] The data transmission bottleneck location method, apparatus, terminal, device, and product provided in this application obtain the maximum read rate and real-time available read rate of the first storage device in the first terminal; based on the transmission protocol, a network probe message is sent to the second terminal through an intermediate transmission node, and a network bandwidth feedback message sent by the second terminal and a write rate feedback message of the second storage device sent by the second terminal are received; the network probe message includes the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback message includes the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node through hop-by-hop updates based on the initial physical bandwidth and the initial available bandwidth, and the write rate feedback message includes the maximum write rate and real-time available write rate of the second storage device; when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, the data transmission bottleneck location is determined based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate, and network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth. In this way, by sending network probe messages to intermediate transmission nodes and using hop-by-hop updates to obtain the network transmission bottleneck rate, and by comprehensively analyzing the hardware storage read / write rate, real-time available read / write rate, and network transmission bottleneck rate of the sending and receiving ends, the data transmission bottleneck point can be determined quickly and comprehensively. This allows for rapid identification of the root cause of slow data transmission rates. Furthermore, by detecting data read / write bottlenecks at the sending and receiving ends as well as network transmission bottlenecks, data transmission efficiency can be maximized, thereby improving overall data transmission performance. Attached Figure Description

[0025] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0026] Figure 1 This is one of the flowcharts illustrating the data transmission bottleneck location method provided in this application.

[0027] Figure 2 This is a schematic diagram of the frame structure provided in this application.

[0028] Figure 3 This is a schematic diagram of the network bandwidth feedback frame structure provided in this application.

[0029] Figure 4 This is a schematic diagram of the write rate feedback frame structure provided in this application.

[0030] Figure 5This is the second flowchart of the data transmission bottleneck location method provided in this application.

[0031] Figure 6 This is a schematic diagram of the structure of the first data transmission bottleneck location device provided in this application.

[0032] Figure 7 This is a schematic diagram of the structure of the second data transmission bottleneck location device provided in this application.

[0033] Figure 8 This is a schematic diagram of the terminal structure provided in the embodiments of this application.

[0034] Figure 9 This is a schematic diagram of the network device provided in the embodiments of this application.

[0035] Figure 10 This is a schematic diagram of the structure of the electronic device provided in this application. Detailed Implementation

[0036] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0037] The following is combined with Figures 1-5 This application describes a data transmission bottleneck location method applicable to any storage medium, including but not limited to optical discs, magnetic disks, hard disk drives (HDDs), or solid-state drives (SDDs). The execution subject of this method can be an electronic device or a data transmission bottleneck location method installed in the electronic device. The data transmission bottleneck location device can be implemented by software, hardware, or a combination of both.

[0038] Figure 1 This is one of the flowcharts illustrating the data transmission bottleneck location method provided in this application, such as... Figure 1 As shown, this method is applied to the first terminal and includes the following: Step 101: Obtain the maximum read rate and real-time available read rate of the first storage device in the first terminal.

[0039] Here, the first terminal can be the sending end, and the second terminal can be the receiving end.

[0040] Here, the type of the first storage device includes, but is not limited to, magnetic storage media, optical storage media, or semiconductor storage media, such as disks, optical discs, and solid-state drives.

[0041] For example, when the first storage device is a disk, the maximum read rate is the physical disk read rate, which is determined by the disk array.

[0042] Here, real-time available read rate refers to the read rate remaining after deducting the read rate occupied by software processes. The real-time available read rate can be viewed through the command line. For example, the command line to obtain the real-time disk read rate is as follows: 1. Install iotop (requires EPEL repository) sudo yum install epel-release -y sudo yum install iotop -y 2. Run iotop with administrator privileges. sudo iotop Output example: Total DISK READ: 0.00 B / s | Total DISK WRITE: 1.20 M / s TID PRIO USER DISK READ DISK WRITE SWAPIN IO>COMMAND 1234 be / 4 root 0.00 B / s 1.20 M / s 0.00 % 0.00 % [jbd2 / nvme0n1p2-8] 5678 be / 4 mysql 0.00 B / s 0.80 M / s 0.00 % 0.00 % mysqld --basedir... Step 102: Based on the transmission protocol, send network probe messages to the second terminal through the intermediate transmission node, and receive network bandwidth feedback messages and write rate feedback messages of the second storage device sent by the second terminal.

[0043] The network probe message includes the initial physical bandwidth and initial available bandwidth of the first terminal; the network bandwidth feedback message includes the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node through hop-by-hop updates based on the initial physical bandwidth and the initial available bandwidth; and the write rate feedback message includes the maximum write rate and real-time available write rate of the second storage device.

[0044] Here, the transport protocols include, but are not limited to, User Datagram (QUIC) protocol, Transmission Control Protocol (TCP), Stream Control Transmission Protocol (SCTP), etc.

[0045] Here, physical bandwidth can be obtained through device configuration (such as 10Gbps for a switch port), and available bandwidth can be calculated in reverse through interface utilization. The calculation of available bandwidth is as follows (1): Available Bandwidth = Physical Bandwidth (1 - Utilization%) (1) Here, Available Bandwidth represents the available bandwidth, Physical Bandwidth represents the physical bandwidth, and Utilization% represents the utilization rate.

[0046] It should be noted that hop-by-hop update refers to the intermediate transmission node incrementing the Hop Count after receiving a frame; then measuring the physical bandwidth (statically configured) and available bandwidth (calculated in real time) of its local port (the outgoing interface of the current intermediate transmission node); if the current link physical bandwidth is less than the Min Physical Bandwidth, then the Min Physical IP and bandwidth values ​​are updated; if the current link available bandwidth is less than the Min Available Bandwidth, then the Min Available IP and bandwidth values ​​are updated. The updated data frame is forwarded to the next hop, i.e., the intermediate transmission node. When it reaches the last intermediate transmission node, the target data packet is obtained. The target data includes the target minimum physical bandwidth and the target minimum available bandwidth. The second terminal parses the target data packet, extracts key information, and obtains the physical bandwidth bottleneck (Min Physical IP and bandwidth) and the available bandwidth bottleneck (Min Available IP and bandwidth) of the entire path. The second terminal calculates the target minimum physical bandwidth and the target minimum available bandwidth of the link, generates a network bandwidth feedback message, and sends it to the first terminal.

[0047] For example, the step of sending a network probe packet to a second terminal via an intermediate transmission node based on a transmission protocol includes: sending the network probe packet to an intermediate transmission node based on the transmission protocol; the intermediate transmission node is used to update the current hop count, timestamp, initial minimum physical bandwidth, IP address corresponding to the initial minimum physical bandwidth, initial minimum available bandwidth, and IP address corresponding to the initial minimum available bandwidth in the network probe packet based on a hop-by-hop update mechanism, to obtain a target network probe packet and send it to the second terminal; the second terminal is used to generate the network bandwidth feedback packet based on the target network probe packet; the initial minimum physical bandwidth is the initial physical bandwidth, and the initial minimum available bandwidth is the initial available bandwidth.

[0048] It should be noted that network probe messages are encapsulated into data frames and transmitted in intermediate transmission nodes. Taking the QUIC protocol as an example, when sending network probe messages in the QUIC protocol, the extended custom frame type BANDWIDTH_BOTTLENECK_FRAME (type number: 0x1F, example value) is used to obtain link bandwidth information hop by hop.

[0049] Figure 2 This is a schematic diagram of the frame structure provided in this application, for reference only. Figure 2 The frame structure includes the following fields: FrameType (32 bits long, fixed value 0x1F, identifying the bandwidth measurement frame); Hop Count (32 bits long): the current hop count, incrementing from 0; Timestamp (64 bits long): millisecond precision, used for synchronization measurement; Minimum Physical IP (128 bits long); Minimum Physical Bandwidth (32 bits long); Minimum Available IP (128 bits long); and Minimum Available Bandwidth (32 bits long).

[0050] Here, intermediate transmission nodes include, but are not limited to, routers, switches, and wireless access points.

[0051] For example, the number of intermediate transmission nodes can be any suitable number. When the first terminal sends a frame format to the first intermediate transmission node, the Hop Count is 0, the Min Physical IP is the IP address of the sending interface in the first terminal, the Min Physical Bandwidth is the initial available bandwidth of the first terminal, the Min Available IP is the IP address of the sending interface of the first terminal, and the Min Available Bandwidth is the initial available bandwidth of the first terminal.

[0052] Here, the network bandwidth feedback message can be sent to the first terminal via a transport protocol (such as the QUIC protocol). The network bandwidth feedback message is encapsulated in a data frame and transmitted physically. When sending the network bandwidth feedback message in the QUIC protocol, a new feedback frame type BANDWIDTH_FEEDBACK_FRAME (type number: 0x20) is added.

[0053] Figure 3 This is a schematic diagram of the network bandwidth feedback frame structure provided in this application, for reference only. Figure 3 The network bandwidth feedback frame structure includes Frame Type (0x20), Timestamp (used for data synchronization), MinPhysical IP, MinPhysical Bandwidth, MinAvailable IP, and MinAvailable Bandwidth.

[0054] After receiving the network probe packet, the first terminal parses the bandwidth bottleneck frame ANDWIDTH_BOTTLENECK_FRAME, extracts the key fields: Min Physical IP, Min Physical Bandwidth, Min Available IP, and Min Available Bandwidth, records the timestamp and bottleneck bandwidth information, generates a feedback frame, and sends the feedback via a QUIC stream. The feedback frame is represented as follows: def generate_feedback_frame(report_frame): feedback_frame = { type: 0x21, timestamp: current_time_ms(), min_physical_ip: bottleneck_frame.min_physical_ip, min_physical_bw: bottleneck_frame.min_physical_bw, min_available_ip: bottleneck_frame.min_available_ip, min_available_bw: bottleneck_frame.min_available_bw } return quic_serialize(feedback_frame) Optionally, a bidirectional stream or a dedicated control stream (Stream ID=0x02) can be used.

[0055] Sending example: # Open a bidirectional stream stream_id = quic_open_bidirectional_stream() # Send feedback frame quic_send_data(stream_id, feedback_frame) Here, the write rate feedback message can be sent to the first terminal via a transport protocol (e.g., QUIC protocol). When sending a network bandwidth feedback message in the QUIC protocol, a new end-side disk performance field is added, defining the extended frame type DISK_BOTTLENECK_FRAME (type number: 0x21).

[0056] Figure 4 This is a schematic diagram of the write rate feedback frame structure provided in this application, see reference. Figure 4 The write rate feedback frame structure includes Frame Type, which is 32 bits long and has a fixed value of 0x21, identifying the end-side disk report frame; and Timestamp, which is 64 bits long and is used to measure the timestamp (millisecond precision), the disk's physical maximum write speed (Physical Write BW), and the current real-time available write speed (Available Write BW).

[0057] In another embodiment, if it is not necessary to accurately locate the node in the network where the transmission bottleneck occurs, and the first terminal supports the Bottleneck Bandwidth and Round-Trip (BBR) congestion control algorithm, the bottleneck bandwidth parameter can be directly extracted as the network bottleneck bandwidth using the BBR congestion control algorithm.

[0058] In this embodiment, the minimum physical bandwidth, minimum physical bandwidth IP address, minimum available bandwidth, and minimum available bandwidth IP address in the network probe message are updated by a hop-by-hop update mechanism. In this way, physical and congestion bottlenecks in wide area transmission can be accurately located, providing underlying data support for wide area high-throughput systems, and further obtaining accurate network transmission bottleneck rates and corresponding nodes, thereby improving the accuracy of data transmission bottleneck locations.

[0059] Step 103: When the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, determine the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate.

[0060] The network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0061] It should be noted that the target minimum physical bandwidth and the target minimum available bandwidth each correspond to a data transmission bottleneck location, and the two corresponding data transmission bottleneck locations may be the same or different.

[0062] Here, the method for determining the data transmission bottleneck location can be any suitable method. For example, the data transmission bottleneck location can be obtained by comparing the magnitudes, or the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate, and network transmission bottleneck rate can be input into the model to obtain the data transmission bottleneck location.

[0063] In this embodiment of the invention, the maximum read rate and real-time available read rate of the first storage device in the first terminal are obtained; based on the transmission protocol, a network probe message is sent to the second terminal through an intermediate transmission node, and a network bandwidth feedback message sent by the second terminal and a write rate feedback message of the second storage device sent by the second terminal are received; the network probe message includes the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback message includes the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node through hop-by-hop updates based on the initial physical bandwidth and the initial available bandwidth, and the write rate feedback message includes the maximum write rate and real-time available write rate of the second storage device; when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, the data transmission bottleneck location is determined based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth. In this way, by sending network probe messages to intermediate transmission nodes and using hop-by-hop updates to obtain the network transmission bottleneck rate, and by comprehensively analyzing the hardware storage read / write rate, real-time available read / write rate, and network transmission bottleneck rate of the sending and receiving ends, the data transmission bottleneck point can be determined quickly and comprehensively. This allows for rapid identification of the root cause of slow data transmission rates. Furthermore, by detecting data read / write bottlenecks at the sending and receiving ends as well as network transmission bottlenecks, data transmission efficiency can be maximized, thereby improving overall data transmission performance.

[0064] Furthermore, determining the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate includes: determining the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determining the write bottleneck rate of the second terminal based on the maximum write rate and the real-time available write rate; and determining the location corresponding to the minimum bottleneck rate among the actual read bottleneck rate, the write bottleneck rate, and the network transmission bottleneck rate as the data transmission bottleneck location; wherein the location corresponding to the read bottleneck rate is the first terminal, the location corresponding to the write bottleneck rate is the second terminal, and the location corresponding to the network transmission bottleneck rate is the network side.

[0065] Optionally, the read bottleneck rate can be the difference between the maximum read rate and the real-time available read rate, or the weighted difference between the maximum read rate and the real-time available read rate, or the difference after correction.

[0066] Optionally, the write bottleneck rate can be the difference between the maximum write rate and the real-time available write rate, or the weighted difference between the maximum write rate and the real-time available write rate, or the difference after correction.

[0067] It should be noted that the data transmission bottleneck can only be determined by the magnitude of the read bottleneck rate, write bottleneck rate, and network transmission bottleneck rate when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate.

[0068] In this embodiment, by comparing the read bottleneck rate, write bottleneck rate, and network transmission bottleneck rate, the location corresponding to the minimum bottleneck rate is determined as the data transmission bottleneck location, thereby achieving rapid location of end-to-end transmission performance bottlenecks.

[0069] Furthermore, determining the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate includes: determining the theoretical read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determining a protocol overhead correction factor based on the protocol used by the first terminal when reading data; and correcting the theoretical read bottleneck rate based on the protocol overhead correction factor to obtain the actual read bottleneck rate.

[0070] Here, the theoretical read bottleneck rate can be the difference between the maximum read rate and the real-time available read rate, or the weighted difference between the maximum read rate and the real-time available read rate.

[0071] Here, the protocol used to read data is different, and the protocol overhead correction factor is also different. For example, the NVMe protocol has an efficiency of about 95%, so the protocol overhead correction factor is 95%; the SATA / SAS protocol has an efficiency of about 80%, so the protocol overhead correction factor is 80%.

[0072] It's important to note that disk read / write performance bottlenecks are often influenced by disk read / write speeds. SSD performance may be lower than the bandwidth of the high-speed serial computer expansion bus standard (Peripheral Component Interconnect Express, PCIe) (e.g., high-end SSDs can reach 7GB / s, but mid-range drives may only reach 3.5GB / s). Redundant Array of Independent Disks Controller (RAID) card caching and CPU performance can also become bottlenecks. Different protocols also have different overheads, which must be considered when calculating disk read / write performance. Mixed read / write operations and small file operations will significantly reduce actual speeds. Therefore, benchmark tools can be used to verify the difference between theoretical and actual values. The verification command line is as follows: Install fio (a flexible I / O testing tool) sudo yum install fio -y Test sequential read performance fio --name=seq_read --ioengine=libaio --rw=read --bs=1M --numjobs=4 \ --size=10G --runtime=60 --filename= / dev / nvme0n1 --direct=1 In this embodiment, by utilizing the protocol overhead correction factor to correct the theoretical read bottleneck rate, the accuracy of the read bottleneck rate is improved, and the physical performance of the disk system is accurately evaluated.

[0073] In another embodiment, the method further includes: If the data transmission rate of the first terminal is less than the network transmission bottleneck rate, the data transmission bottleneck location is determined to be the application side of the first terminal.

[0074] It should be noted that if the data transmission rate of the first terminal is less than the network transmission bottleneck rate, it indicates that the insufficient transmission rate is due to application limitations.

[0075] In this embodiment of the application, by determining whether the sending rate has reached the level of available bandwidth, i.e., the network transmission bottleneck rate, it is possible to accurately determine whether the insufficient sending rate is caused by application performance, thereby avoiding the problem of slow data transmission rate due to underutilization of network bandwidth.

[0076] Furthermore, obtaining the maximum read rate of the first storage device in the first terminal includes: obtaining the disk array, number of disks, and disk model of the first storage device; determining the theoretical read rate of the first storage device based on the disk array, the number of disks, and the disk model; obtaining the interface type of the first storage device; determining the first interface rate of the first storage device based on the interface type; and taking the minimum rate between the theoretical read rate and the first interface rate as the maximum read rate.

[0077] It should be noted that different disk arrays have different theoretical disk read speeds; and different interface types of the first storage device have different first interface speeds.

[0078] Here, the disk array, number of disks, disk model, and interface type can all be obtained through commands.

[0079] For example, the command to obtain disk type, disk model, and disk interface type is as follows: 1. Obtain the RAID type (e.g., RAID0) using the following command. View software RAID information (such as mdadm) cat / proc / mdstat 2. Obtain the disk interface type (e.g., PCIe 4.0 x16) View PCIe device information lspci -vvv | grep -i "nvme\|sata\|sas\|pci express" Alternatively, use lsblk to check disk connection information. lsblk -o NAME,TRAN 3. Obtain the disk model (for querying specifications) Use smartctl (smartmontools needs to be installed). sudo smartctl -a / dev / nvme0n1 | grep "Model Number" # Output Example: Model Number: Samsung SSD 980 PRO 1TB For example, the read / write speed of RAID 0 is the sum of the speeds of all disks; that is, the theoretical speed of RAID 0 is the speed of a single disk multiplied by the number of disks. For instance, if four 7GB / s NVMe SSDs are used to build a RAID 0 array, the theoretical read speed is 7 multiplied by 4, which is 28GB / s.

[0080] For example, if the interface type is PCIe 4.0 x16, the unidirectional bandwidth of PCIe 4.0 x16 is approximately 32 GB / s (theoretical value).

[0081] It should be noted that there are actual limitations: NVMe SSD speeds are typically lower than PCIe bandwidth (e.g., a PCIe 4.0 x4 SSD peaks at around 7GB / s). The total speed of RAID 0 may be limited by the number of PCIe lanes (e.g., x16 lanes may support a single disk or a total RAID 0 speed ≤ 32GB / s).

[0082] In this embodiment of the application, by obtaining the disk array, the number of disks and the disk model and the first interface type, the corresponding maximum read rate is calculated, thereby improving the accuracy of the maximum read rate and thus improving the accuracy of the data transmission bottleneck location.

[0083] Furthermore, after determining the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate, the method further includes: when the data transmission bottleneck location is on the network side, reducing the data transmission rate of the first terminal to the network transmission bottleneck rate, or adjusting the transmission route through a software-defined network controller to dynamically adjust the transmission strategy; when the data transmission bottleneck location is the first terminal, reducing the concurrent read tasks of the first terminal to dynamically adjust the transmission strategy; and when the data transmission bottleneck location is the second terminal, compressing the data transmitted by the first terminal to dynamically adjust the transmission strategy.

[0084] It should be noted that after determining the location of the data transmission bottleneck, a corresponding transmission optimization strategy is implemented based on the location of the data transmission bottleneck.

[0085] Here, adjusting routes through a software-defined network controller (SDN) means instructing the network layer to bypass bottleneck nodes through the SDN controller.

[0086] It should be noted that, on the first terminal, the number of concurrent read tasks on the sending end is reduced (e.g., the preprocessing thread is paused) to prioritize network data reading; on the second terminal, data compression is initiated and the block size is adjusted to reduce the write pressure on the storage medium.

[0087] In this embodiment of the invention, after determining the location of the data transmission bottleneck, the transmission strategy can be dynamically adjusted or performance can be optimized to achieve efficient data transmission optimization and improve the reliability and stability of data transmission.

[0088] Figure 5 This is the second flowchart illustrating the data transmission bottleneck location method provided in this application, as shown below. Figure 5 As shown, this method is applied to the second terminal and includes the following: Step S501: Receive the target network probe message sent by the first terminal through the intermediate transmission node.

[0089] The target network probe message is obtained by the intermediate transmission node updating the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal hop by hop. Step S502: Obtain the maximum write rate and real-time available write rate of the second storage device in the second terminal.

[0090] Step S503: Encapsulate the maximum write rate and the real-time available write rate into an extended frame to obtain a write rate feedback message and send it to the first terminal through the transmission protocol.

[0091] Step S504: Parse the target network probe message to obtain the target minimum physical bandwidth and the target minimum available bandwidth.

[0092] Step S505: Encapsulate the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message and send it to the first terminal through a transmission protocol.

[0093] The first terminal is used to determine the location of the data transmission bottleneck based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate and network transmission bottleneck rate of the first storage device, wherein the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0094] Optionally, the write rate feedback message may include an identifier and a measurement timestamp in addition to the maximum write rate and the real-time available write rate.

[0095] In this embodiment, a target network probe message sent by a first terminal is received by an intermediate transmission node. The target network probe message is obtained by the intermediate transmission node through hop-by-hop updates of the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal. The maximum write rate and real-time available write rate of the second storage device in the second terminal are obtained. The identifier, measurement timestamp, maximum write rate, and real-time available write rate of the second storage device are encapsulated into an extended frame to obtain a write rate feedback message, which is then sent to the first terminal via a transmission protocol. The target network probe message is parsed to obtain the target minimum physical bandwidth and target minimum available bandwidth. The target minimum physical bandwidth and target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message, which is then sent to the first terminal. The first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate of the first storage device, and network transmission bottleneck rate. The network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth. In this way, the receiving intermediate transmission node parses the network probe message to obtain the hop-by-hop updated network transmission bottleneck rate, and sends the network transmission bottleneck rate, hardware storage write rate, and real-time available write rate to the first terminal. This enables the first terminal to comprehensively and quickly determine the data transmission bottleneck point, thereby quickly locating the root cause of the slow data transmission rate. Furthermore, by extending the frame type and the bidirectional stream mechanism, the receiving end can efficiently feed back path bottleneck information, and the sending end can realize intelligent rate control based on this, providing closed-loop control capability for wide-area high-throughput transmission.

[0096] Furthermore, obtaining the maximum write rate of the second storage device in the second terminal includes: obtaining the disk array, number of disks, and disk model of the second storage device; determining the theoretical write rate of the second storage device based on the disk array, number of disks, and disk model; obtaining the second interface type of the second storage device; determining the second interface rate of the second storage device based on the second interface type; and taking the minimum rate between the theoretical write rate and the second interface rate as the maximum write rate.

[0097] Here, the maximum write rate can be calculated by obtaining the disk model, number of disks, disk array, and interface type of the second storage device through a command. For specific calculation implementation examples, please refer to the commands and implementation methods for determining the maximum read rate described above, which will not be repeated here.

[0098] In this embodiment of the application, by obtaining the disk array, the number of disks and the disk model and the first interface type, the corresponding maximum read rate is calculated, thereby improving the accuracy of the maximum read rate and thus improving the accuracy of the data transmission bottleneck location.

[0099] Further, the step of encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message includes: If the utilization rate of the second storage device is detected to be greater than the utilization rate threshold, the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message.

[0100] Furthermore, the step of encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message includes: when a first time interval is detected to have reached a first transmission period, encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message, wherein the first time interval is the time interval between the second terminal sending the last write rate feedback message.

[0101] It should be noted that, in order to reduce the amount of data transmitted, when the second terminal sends a write rate feedback message to the first terminal, a trigger condition needs to be set. When the second storage device meets the trigger condition, the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message, which is then sent to the first terminal through the transmission protocol.

[0102] Here, the triggering condition may be that the utilization rate of the second storage device is greater than the utilization rate threshold, and / or the time interval between the second terminal sending the last write rate feedback message and the first sending cycle is reached.

[0103] Optionally, the utilization threshold can be any suitable value, such as 90%, 89%, etc.

[0104] Optionally, the first sending period can be any suitable time period, such as 5 seconds, 6 seconds, etc.

[0105] In this embodiment of the application, by setting a trigger condition, the second terminal generates a write rate feedback message and sends it to the first terminal only when the trigger condition is met, thereby reducing the amount of data transmission and resource consumption.

[0106] Furthermore, the step of encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message includes: when an update of the target minimum physical bandwidth and / or the target minimum available bandwidth is detected in the target network probe message, encapsulating the updated target minimum physical bandwidth and / or the updated target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message.

[0107] Furthermore, the step of encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message includes: when the second time interval is detected to have reached the second transmission period, encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message, wherein the second time interval is the time interval between the second terminal sending the last network bandwidth feedback message.

[0108] It should be noted that, in order to reduce the amount of data transmitted, when the second terminal sends a network bandwidth feedback message to the first terminal, a trigger condition needs to be set. When the second storage device meets the trigger condition, it encapsulates the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame, obtains a network bandwidth feedback message, and sends it to the first terminal.

[0109] Here, the triggering condition may be the detection of the target minimum physical bandwidth and / or target minimum available bandwidth update in the target network probe message, or the time interval between the second terminal sending the last network bandwidth feedback message and the second sending cycle.

[0110] Optionally, the second sending period can be any suitable time period, such as 5 seconds, 6 seconds, etc.

[0111] In this embodiment, by setting trigger conditions, the second terminal generates a network bandwidth feedback message and sends it to the first terminal only when the trigger conditions are met, thereby reducing the amount of data transmission and resource consumption.

[0112] The data transmission bottleneck location device provided in this application is described below. The data transmission bottleneck location device described below can be referred to in correspondence with the data transmission bottleneck location method described above.

[0113] Figure 6 This is a schematic diagram of the structure of the first data transmission bottleneck location device provided in this application, with reference to... Figure 6 The first data transmission bottleneck location device 600 includes the following: The read acquisition module 610 is used to acquire the maximum read rate and the real-time available read rate of the first storage device in the first terminal; The first transmission module 620 is configured to send network probe messages to the second terminal via an intermediate transmission node based on a transmission protocol, and receive network bandwidth feedback messages and write rate feedback messages of the second storage device sent by the second terminal. The network probe messages include the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback messages include the target minimum physical bandwidth and the target minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node through hop-by-hop updates based on the initial physical bandwidth and the initial available bandwidth. The write rate feedback messages include the maximum write rate and real-time available write rate of the second storage device. The bottleneck location determination module 630 is used to determine the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0114] In one embodiment, the bottleneck location determination module 630 is specifically configured to: determine the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determine the write bottleneck rate of the second terminal based on the maximum write rate and the real-time available write rate; and determine the location corresponding to the minimum bottleneck rate among the actual read bottleneck rate, the write bottleneck rate, and the network transmission bottleneck rate as the data transmission bottleneck location; wherein the location corresponding to the read bottleneck rate is the first terminal, the location corresponding to the write bottleneck rate is the second terminal, and the location corresponding to the network transmission bottleneck rate is the network side.

[0115] In one embodiment, the bottleneck location determination module 630 is further configured to: determine the theoretical read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determine the protocol overhead correction factor based on the protocol used by the first terminal when reading data; and correct the theoretical read bottleneck rate based on the protocol overhead correction factor to obtain the actual read bottleneck rate.

[0116] In one embodiment, the first data transmission bottleneck location device 600 further includes a second bottleneck location determination module, specifically used to: determine the data transmission bottleneck location as the application side of the first terminal when the data transmission rate of the first terminal is less than the network transmission bottleneck rate.

[0117] In one embodiment, the read acquisition module 610 is specifically configured to: acquire the disk array, number of disks, and disk model of the first storage device; determine the theoretical read rate of the first storage device based on the disk array, the number of disks, and the disk model; acquire the interface type of the first storage device; determine the first interface rate of the first storage device based on the interface type; and take the minimum rate between the theoretical read rate and the first interface rate as the maximum read rate.

[0118] In one embodiment, the first transmission module 620 is specifically configured to: send the network probe packet to an intermediate transmission node based on the transmission protocol; the intermediate transmission node is configured to update the current hop count, timestamp, initial minimum physical bandwidth, IP address corresponding to the initial minimum physical bandwidth, initial minimum available bandwidth, and IP address corresponding to the initial minimum available bandwidth in the network probe packet based on a hop-by-hop update mechanism, thereby obtaining a target network probe packet and sending it to the second terminal; the second terminal is configured to generate the network bandwidth feedback packet based on the target network probe packet; the initial minimum physical bandwidth is the initial physical bandwidth, and the initial minimum available bandwidth is the initial available bandwidth.

[0119] In one embodiment, after determining the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate, the first data transmission bottleneck location device 600 further includes an optimization module, specifically used for: reducing the data transmission rate of the first terminal to the network transmission bottleneck rate when the data transmission bottleneck location is on the network side, or adjusting the transmission route through a software-defined network controller to dynamically adjust the transmission strategy; reducing the concurrent read tasks of the first terminal when the data transmission bottleneck location is on the first terminal to dynamically adjust the transmission strategy; and compressing the data transmitted by the first terminal when the data transmission bottleneck location is on the second terminal to dynamically adjust the transmission strategy.

[0120] Figure 7 This is a schematic diagram of the structure of the second data transmission bottleneck positioning device provided in this application, as shown below. Figure 7 As shown, the second data transmission bottleneck location device 700 includes the following: The second transmission module 710 is used to receive a target network probe message sent by the first terminal through an intermediate transmission node; the target network probe message is obtained by the intermediate transmission node updating the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal hop by hop. The write acquisition module 720 is used to acquire the maximum write rate and real-time available write rate of the second storage device in the second terminal. The third transmission module 730 is used to encapsulate the maximum write rate and the real-time available write rate into an extended frame, obtain a write rate feedback message, and send it to the first terminal through a transmission protocol. The parsing module 740 is used to parse the target network probe packets to obtain the target's minimum physical bandwidth and the target's minimum available bandwidth; The fourth transmission module 750 is used to encapsulate the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame, obtain a network bandwidth feedback message, and send it to the first terminal through a transmission protocol; the first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate of the first storage device, wherein the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0121] In one embodiment, the write acquisition module 720 is specifically configured to: acquire the disk array, number of disks, and disk model of the second storage device; determine the theoretical write rate of the second storage device based on the disk array, the number of disks, and the disk model; acquire the second interface type of the second storage device; determine the second interface rate of the second storage device based on the second interface type; and take the minimum rate between the theoretical write rate and the second interface rate as the maximum write rate.

[0122] In one embodiment, the third transmission module 730 is specifically configured to: when the utilization rate of the second storage device is detected to be greater than the utilization rate threshold, encapsulate the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message.

[0123] In one embodiment, the third transmission module 730 is further configured to: when the first time interval is detected to reach the first transmission period, encapsulate the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message, wherein the first time interval is the time interval between the second terminal sending the last write rate feedback message.

[0124] In one embodiment, the fourth transmission module 750 is specifically configured to: when an update of the target minimum physical bandwidth and / or target minimum available bandwidth is detected in the target network probe message, encapsulate the updated target minimum physical bandwidth and / or updated target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message.

[0125] In one embodiment, the fourth transmission module 750 is further configured to: when the second time interval is detected to reach the second transmission period, encapsulate the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message, wherein the second time interval is the time interval between the second terminal sending the last network bandwidth feedback message.

[0126] The terminal involved in the embodiments of this application may be a device that provides voice and / or data connectivity to a user, a handheld device with wireless connectivity, or other processing devices connected to a wireless modem. The name of the terminal device may differ in different systems; for example, in a 5G system, the terminal device may be called a User Equipment (UE).

[0127] Figure 8 This is a structural schematic diagram of the first terminal according to an embodiment of this application, with reference to... Figure 8This application embodiment also provides a terminal, which may include: a memory 810, a transceiver 820, and a processor 830; The memory 810 is used to store computer programs; the transceiver 820 is used to send and receive data under the control of the processor 830; the processor 830 is used to read the computer program in the memory 810 and perform the following operations: Obtain the maximum read rate and real-time available read rate of the first storage device in the first terminal; Based on the transmission protocol, a network probe message is sent to the second terminal through an intermediate transmission node, and a network bandwidth feedback message and a write rate feedback message of the second storage device are received from the second terminal. The network probe message includes the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback message includes the target minimum physical bandwidth and the target minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are obtained by updating hop-by-hop on the transmission path based on the initial physical bandwidth and the initial available bandwidth. The write rate feedback message includes the maximum write rate and real-time available write rate of the second storage device. When the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, the data transmission bottleneck location is determined based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0128] Among them, Figure 8 In this context, the bus architecture can include any number of interconnected buses and bridges, specifically linking various circuits together, such as one or more processors represented by processor 830 and memory represented by memory 810. The bus architecture can also link together various other circuits, such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein. The bus interface provides an interface. Transceiver 820 can be multiple elements, including transmitters and receivers, providing a unit for communicating with various other devices over a transmission medium. For different user equipment, user interface 840 can also be an interface capable of connecting external or internal devices as needed.

[0129] The processor 830 is responsible for managing the bus architecture and general processing, while the memory 810 can store the data used by the processor 830 during operation.

[0130] The processor 830 executes any of the methods described in the embodiments of this application according to the obtained executable instructions by calling a computer program stored in the memory 810. The processor and the memory may also be physically separated.

[0131] Optionally, the processor 830 is also used to perform the following operations: The step of determining the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate includes: determining the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determining the write bottleneck rate of the second terminal based on the maximum write rate and the real-time available write rate; and determining the location corresponding to the minimum bottleneck rate among the actual read bottleneck rate, the write bottleneck rate, and the network transmission bottleneck rate as the data transmission bottleneck location; wherein the location corresponding to the read bottleneck rate is the first terminal, the location corresponding to the write bottleneck rate is the second terminal, and the location corresponding to the network transmission bottleneck rate is the network side.

[0132] Determining the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate includes: determining the theoretical read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate; determining a protocol overhead correction factor based on the protocol used by the first terminal when reading data; and correcting the theoretical read bottleneck rate based on the protocol overhead correction factor to obtain the actual read bottleneck rate.

[0133] When the data transmission rate of the first terminal is less than the network transmission bottleneck rate, the data transmission bottleneck location is determined to be the application side of the first terminal. Obtaining the maximum read rate of the first storage device in the first terminal includes: obtaining the disk array, number of disks, and disk model of the first storage device; determining the theoretical read rate of the first storage device based on the disk array, number of disks, and disk model; obtaining the interface type of the first storage device; determining the first interface rate of the first storage device based on the interface type; and taking the minimum rate between the theoretical read rate and the first interface rate as the maximum read rate.

[0134] The step of sending network probe packets to the second terminal via an intermediate transmission node based on a transmission protocol includes: sending the network probe packets to an intermediate transmission node based on the transmission protocol; the intermediate transmission node is used to update the current hop count, timestamp, initial minimum physical bandwidth, IP address corresponding to the initial minimum physical bandwidth, initial minimum available bandwidth, and IP address corresponding to the initial minimum available bandwidth in the network probe packets based on a hop-by-hop update mechanism, thereby obtaining a target network probe packet and sending it to the second terminal; the second terminal is used to generate the network bandwidth feedback packet based on the target network probe packet; the initial minimum physical bandwidth is the initial physical bandwidth, and the initial minimum available bandwidth is the initial available bandwidth.

[0135] After determining the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate, the method further includes: if the data transmission bottleneck location is on the network side, reducing the data transmission rate of the first terminal to the network transmission bottleneck rate, or adjusting the transmission route through a software-defined network controller to dynamically adjust the transmission strategy; if the data transmission bottleneck location is the first terminal, reducing the concurrent read tasks of the first terminal to dynamically adjust the transmission strategy; if the data transmission bottleneck location is the second terminal, compressing the data transmitted by the first terminal to dynamically adjust the transmission strategy.

[0136] Figure 9 This is a schematic diagram of the network device provided in the embodiments of this application, with reference to... Figure 9 This application embodiment also provides a network device, which may include: a memory 910, a transceiver 920, and a processor 930; The memory 910 is used to store computer programs; the transceiver 920 is used to send and receive data under the control of the processor 930; the processor 930 is used to read the computer program in the memory 910 and perform the following operations: The intermediate transmission node receives the target network probe message sent by the first terminal; the target network probe message is obtained by the intermediate transmission node updating the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal hop by hop. Obtain the maximum write rate and real-time available write rate of the second storage device in the second terminal; The maximum write rate and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message, which is then sent to the first terminal via a transmission protocol. The target network probe packets are parsed to obtain the target's minimum physical bandwidth and minimum available bandwidth. The target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message, which is then sent to the first terminal via a transmission protocol. The first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate, and network transmission bottleneck rate of the first storage device. The network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0137] Among them, Figure 9 In this context, the bus architecture may include any number of interconnected buses and bridges, specifically linking various circuits together, represented by one or more processors (processor 930) and memory (memory 910). The bus architecture may also link together various other circuits such as peripheral devices, voltage regulators, and power management circuits, which are well known in the art and therefore will not be described further herein. The bus interface provides an interface. The transceiver 920 may be multiple elements, including transmitters and receivers, providing a unit for communicating with various other devices over a transmission medium. The processor 930 is responsible for managing the bus architecture and general processing, and the memory 910 may store data used by the processor 930 during operation.

[0138] Optionally, the processor 930 is also used to perform the following operations: The step of obtaining the maximum write rate of the second storage device in the second terminal includes: obtaining the disk array, number of disks, and disk model of the second storage device; determining the theoretical write rate of the second storage device based on the disk array, number of disks, and disk model; obtaining the second interface type of the second storage device; determining the second interface rate of the second storage device based on the second interface type; and taking the minimum rate between the theoretical write rate and the second interface rate as the maximum write rate.

[0139] The step of encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message includes: when the utilization rate of the second storage device is detected to be greater than the utilization rate threshold, encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message.

[0140] The step of encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message includes: when a first time interval is detected to have reached a first transmission period, encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate, and the real-time available write rate into an extended frame to obtain a write rate feedback message, wherein the first time interval is the time interval between the second terminal sending the last write rate feedback message.

[0141] The step of encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message includes: when an update of the target minimum physical bandwidth and / or the target minimum available bandwidth is detected in the target network probe message, encapsulating the updated target minimum physical bandwidth and / or the updated target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message.

[0142] The step of encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message includes: when the second time interval is detected to have reached the second transmission period, encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback message, wherein the second time interval is the time interval between the second terminal sending the last network bandwidth feedback message.

[0143] It should be noted that the terminal and network device provided in this application embodiment can implement all the method steps implemented in the above method embodiment and can achieve the same technical effect. Therefore, the parts and beneficial effects that are the same as those in the method embodiment will not be described in detail here.

[0144] Figure 10 This is a schematic diagram of the structure of the electronic device provided in this application, such as... Figure 10 As shown, the electronic device includes a processor 1010, a communication interface 1020, a memory 1030, and a communication bus 1040. The processor 1010, communication interface 1020, and memory 1030 communicate with each other via the communication bus 1040. The processor 1010 can call a computer program stored in the memory 1030 to execute steps of a data transmission bottleneck location method, such as: The system obtains the maximum read rate and real-time available read rate of the first storage device in the first terminal; based on the transmission protocol, it sends network probe messages to the second terminal through intermediate transmission nodes, and receives network bandwidth feedback messages and write rate feedback messages of the second storage device sent by the second terminal; the network probe messages include the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback messages include the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are obtained by hop-by-hop updating based on the initial physical bandwidth and the initial available bandwidth on the transmission path; the write rate feedback messages include the maximum write rate and real-time available write rate of the second storage device; when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, it determines the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth. or The intermediate transmission node receives a target network probe message sent by the first terminal; the target network probe message is obtained by the intermediate transmission node through hop-by-hop updates of the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal; the maximum write rate and real-time available write rate of the second storage device in the second terminal are obtained; the maximum write rate and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message and sent to the first terminal through a transmission protocol; the target network probe message is parsed to obtain the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message and sent to the first terminal through a transmission protocol; the first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate and network transmission bottleneck rate of the first storage device, wherein the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0145] Furthermore, the logical instructions in the aforementioned memory 1030 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0146] On the other hand, this application also provides a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can perform the steps of the data transmission bottleneck location method provided in the above embodiments, such as including: The system obtains the maximum read rate and real-time available read rate of the first storage device in the first terminal; based on the transmission protocol, it sends network probe messages to the second terminal through intermediate transmission nodes, and receives network bandwidth feedback messages and write rate feedback messages of the second storage device sent by the second terminal; the network probe messages include the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback messages include the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are obtained by hop-by-hop updating based on the initial physical bandwidth and the initial available bandwidth on the transmission path; the write rate feedback messages include the maximum write rate and real-time available write rate of the second storage device; when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, it determines the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth. or The intermediate transmission node receives a target network probe message sent by the first terminal; the target network probe message is obtained by the intermediate transmission node through hop-by-hop updates of the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal; the maximum write rate and real-time available write rate of the second storage device in the second terminal are obtained; the maximum write rate and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message and sent to the first terminal through a transmission protocol; the target network probe message is parsed to obtain the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message and sent to the first terminal through a transmission protocol; the first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate and network transmission bottleneck rate of the first storage device, wherein the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0147] On the other hand, embodiments of this application also provide a processor-readable storage medium storing a computer program for causing a processor to perform the steps of the methods provided in the above embodiments, such as including: The system obtains the maximum read rate and real-time available read rate of the first storage device in the first terminal; based on the transmission protocol, it sends network probe messages to the second terminal through intermediate transmission nodes, and receives network bandwidth feedback messages and write rate feedback messages of the second storage device sent by the second terminal; the network probe messages include the initial physical bandwidth and initial available bandwidth of the first terminal, and the network bandwidth feedback messages include the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are obtained by hop-by-hop updating based on the initial physical bandwidth and the initial available bandwidth on the transmission path; the write rate feedback messages include the maximum write rate and real-time available write rate of the second storage device; when the data transmission rate of the first terminal is greater than the network transmission bottleneck rate, it determines the data transmission bottleneck location based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate, and the network transmission bottleneck rate; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth. or The intermediate transmission node receives a target network probe message sent by the first terminal; the target network probe message is obtained by the intermediate transmission node through hop-by-hop updates of the initial physical bandwidth and initial available bandwidth in the network probe message sent by the first terminal; the maximum write rate and real-time available write rate of the second storage device in the second terminal are obtained; the maximum write rate and the real-time available write rate are encapsulated into an extended frame to obtain a write rate feedback message and sent to the first terminal through a transmission protocol; the target network probe message is parsed to obtain the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message and sent to the first terminal through a transmission protocol; the first terminal is used to determine the data transmission bottleneck location based on the maximum read rate, real-time available read rate, maximum write rate, real-time available write rate and network transmission bottleneck rate of the first storage device, wherein the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

[0148] The processor-readable storage medium can be any available medium or data storage device that the processor can access, including but not limited to magnetic memory (e.g., floppy disk, hard disk, magnetic tape, magneto-optical disk (MO)), optical memory (e.g., CD, DVD, BD, HVD), and semiconductor memory (e.g., ROM, EPROM, EEPROM, non-volatile memory (NAND FLASH), solid-state drive (SSD)).

[0149] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0150] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0151] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.

Claims

1. A method of data transmission bottleneck location, characterized by, Applied to a first terminal, comprising: Obtaining the maximum read rate and real-time available read rate of a first storage device in the first terminal; Based on the transmission protocol, sending a network probe packet to a second terminal through an intermediate transmission node, receiving a network bandwidth feedback packet sent by the second terminal and a write rate feedback packet of a second storage device sent by the second terminal; the network probe packet includes the initial physical bandwidth and the initial available bandwidth of the first terminal, and the network bandwidth feedback packet includes the target minimum physical bandwidth and the target minimum available bandwidth; the target minimum physical bandwidth and the target minimum available bandwidth are obtained by the intermediate transmission node based on the initial physical bandwidth and the initial available bandwidth hop by hop update, and the write rate feedback packet includes the maximum write rate and the real-time available write rate of the second storage device; In the case where the data sending rate of the first terminal is greater than the network transmission bottleneck rate, based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate and the network transmission bottleneck rate, the data transmission bottleneck position is determined; the network transmission bottleneck rate includes the target minimum physical bandwidth and / or the target minimum available bandwidth.

2. The data transfer bottleneck locating method of claim 1, wherein, The determination of the data transmission bottleneck position based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate and the network transmission bottleneck rate comprises: Based on the maximum read rate and the real-time available read rate, the actual read bottleneck rate of the first terminal is determined; Based on the maximum write rate and the real-time available write rate, the write bottleneck rate of the second terminal is determined; The position corresponding to the smallest bottleneck rate among the actual read bottleneck rate, the write bottleneck rate and the network transmission bottleneck rate is determined as the data transmission bottleneck position; wherein the position corresponding to the read bottleneck rate is the first terminal, the position corresponding to the write bottleneck rate is the second terminal, and the position corresponding to the network transmission bottleneck rate is the network side.

3. The data transfer bottleneck locating method of claim 2, wherein, The determination of the actual read bottleneck rate of the first terminal based on the maximum read rate and the real-time available read rate comprises: Based on the maximum read rate and the real-time available read rate, the theoretical read bottleneck rate of the first terminal is determined; Based on the protocol used by the first terminal when reading data, a protocol overhead correction factor is determined; Based on the protocol overhead correction factor, the theoretical read bottleneck rate is corrected to obtain the actual read bottleneck rate.

4. The data transfer bottleneck locating method of claim 1, wherein, The method further comprises: In the case where the data sending rate of the first terminal is less than the network transmission bottleneck rate, the data transmission bottleneck position is determined as the application side of the first terminal.

5. The data transfer bottleneck locating method according to any of claims 1 to 4, characterized in that, The obtaining of the maximum read rate of the first storage device in the first terminal comprises: Obtaining the disk array, the number of disks and the disk model of the first storage device; Based on the disk array, the number of disks and the disk model, the theoretical read rate of the first storage device is determined; Obtaining the interface type of the first storage device; Based on the interface type, the first interface rate of the first storage device is determined; The minimum of the theoretical read rate and the first interface rate is taken as the maximum read rate.

6. The data transfer bottleneck locating method according to any of claims 1 to 4, characterized by, The network probe message is sent to the second terminal through the intermediate transmission node based on the transmission protocol, and the network probe message comprises: Based on the transmission protocol, the network probe message is sent to the intermediate transmission node; the intermediate transmission node is used to update the current hop count, timestamp, initial minimum physical bandwidth, IP address corresponding to the initial minimum physical bandwidth, initial minimum available bandwidth and IP address corresponding to the initial minimum available bandwidth in the network probe message based on the hop-by-hop update mechanism, obtain the target network probe message and send it to the second terminal, and the second terminal is used to generate the network bandwidth feedback message based on the target network probe message; the initial minimum physical bandwidth is the initial physical bandwidth, and the initial minimum available bandwidth is the initial available bandwidth.

7. The data transfer bottleneck locating method according to any of claims 1 to 4, characterized by, After the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate and the network transmission bottleneck rate are used to determine the data transmission bottleneck position, the method further comprises: In the case that the data transmission bottleneck position is the network side, the data transmission rate of the first terminal is reduced to the network transmission bottleneck rate, or the transmission route is adjusted through the software-defined network controller to dynamically adjust the transmission strategy; In the case that the data transmission bottleneck position is the first terminal, the concurrent read task of the first terminal is reduced to dynamically adjust the transmission strategy; In the case that the data transmission bottleneck position is the second terminal, the data transmitted by the first terminal is compressed to dynamically adjust the transmission strategy.

8. A method of data transmission bottleneck location, characterized by, Applied to the second terminal, comprising: The target network probe message sent by the first terminal is received through the intermediate transmission node; the target network probe message is obtained by the intermediate transmission node performing hop-by-hop update on the initial physical bandwidth and the initial available bandwidth in the network probe message sent by the first terminal; The maximum write rate and the real-time available write rate of the second storage device in the second terminal are obtained; The maximum write rate and the real-time available write rate are encapsulated into an extension frame to obtain a write rate feedback message and send it to the first terminal through the transmission protocol; The target network probe message is parsed to obtain a target minimum physical bandwidth and a target minimum available bandwidth; The target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into a feedback frame to obtain a network bandwidth feedback message and send it to the first terminal through the transmission protocol; the first terminal is used to determine the data transmission bottleneck position based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate and the network transmission bottleneck rate of the first storage device, and the network transmission bottleneck rate comprises the target minimum physical bandwidth and / or the target minimum available bandwidth.

9. The data transfer bottleneck locating method of claim 8, wherein, The maximum write rate of the second storage device in the second terminal is obtained, comprising: The disk array, the number of disks and the disk model of the second storage device are obtained; Based on the disk array, the number of disks and the disk model, the theoretical write rate of the second storage device is determined; acquiring a second interface type of the second storage device; determining a second interface rate of the second storage device based on the second interface type; taking the minimum rate between the theoretical write rate and the second interface rate as the maximum write rate.

10. The data transmission bottleneck locating method according to claim 8 or 9, characterized in that, The encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate and the real-time available write rate into the extension frame to obtain the write rate feedback packet comprises: In the case that the utilization of the second storage device is detected to be greater than a utilization threshold, the identifier of the second storage device, the measurement timestamp, the maximum write rate and the real-time available write rate are encapsulated into the extension frame to obtain the write rate feedback packet.

11. The data transmission bottleneck locating method according to claim 8 or 9, characterized in that, The encapsulating the identifier of the second storage device, the measurement timestamp, the maximum write rate and the real-time available write rate into the extension frame to obtain the write rate feedback packet comprises: In the case that a first time interval is detected to reach a first sending period, the identifier of the second storage device, the measurement timestamp, the maximum write rate and the real-time available write rate are encapsulated into the extension frame to obtain the write rate feedback packet, and the first time interval is a time interval from when the second terminal sends a last write rate feedback packet.

12. The data transmission bottleneck locating method according to claim 8 or 9, characterized in that, The encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into the feedback frame to obtain the network bandwidth feedback packet comprises: In the case that the target minimum physical bandwidth and / or the target minimum available bandwidth in the target network probe packet are detected to be updated, the updated target minimum physical bandwidth and / or the updated target minimum available bandwidth are encapsulated into the feedback frame to obtain the network bandwidth feedback packet.

13. The data transmission bottleneck locating method according to claim 8 or 9, characterized in that, The encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into the feedback frame to obtain the network bandwidth feedback packet comprises: In the case that a second time interval is detected to reach a second sending period, the target minimum physical bandwidth and the target minimum available bandwidth are encapsulated into the feedback frame to obtain the network bandwidth feedback packet, and the second time interval is a time interval from when the second terminal sends a last network bandwidth feedback packet.

14. A data transmission bottleneck locating apparatus characterized by comprises: a reading acquisition module, configured to acquire a maximum read rate and a real-time available read rate of a first storage device in a first terminal; a first transmission module, configured to send a network probe packet to a second terminal through an intermediate transmission node based on a transmission protocol, and receive a network bandwidth feedback packet sent by the second terminal and a write rate feedback packet of a second storage device sent by the second terminal; The network probe packet comprises an initial physical bandwidth and an initial available bandwidth of the first terminal, the network bandwidth feedback packet comprises a target minimum physical bandwidth and a target minimum available bandwidth, and the target minimum physical bandwidth and the target minimum available bandwidth are obtained by hop-by-hop updating of the intermediate transmission node based on the initial physical bandwidth and the initial available bandwidth, and the write rate feedback packet comprises a maximum write rate and a real-time available write rate of the second storage device. The bottleneck position determining module is configured to determine a data transmission bottleneck position based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate and a network transmission bottleneck rate in a case that the data sending rate of the first terminal is greater than the network transmission bottleneck rate; and the network transmission bottleneck rate comprises the target minimum physical bandwidth and / or the target minimum available bandwidth.

15. A data transmission bottleneck locating apparatus characterized by The method comprises: The second transmission module is configured to receive a target network probe packet sent by the first terminal through an intermediate transmission node; The target network probe packet is obtained by performing hop-by-hop updating on an initial physical bandwidth and an initial available bandwidth in a network probe packet sent by the first terminal by the intermediate transmission node; The write obtaining module is configured to obtain a maximum write rate and a real-time available write rate of a second storage device in a second terminal; The third transmission module is configured to encapsulate the maximum write rate and the real-time available write rate into an extension frame to obtain a write rate feedback packet and send the write rate feedback packet to the first terminal through a transmission protocol; The analysis module is configured to analyze the target network probe packet to obtain a target minimum physical bandwidth and a target minimum available bandwidth; The fourth transmission module is configured to encapsulate the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback packet and send the network bandwidth feedback packet to the first terminal through a transmission protocol; and the first terminal is configured to determine a data transmission bottleneck position based on a maximum read rate, a real-time available read rate, a maximum write rate, a real-time available write rate and a network transmission bottleneck rate of a first storage device, and the network transmission bottleneck rate comprises the target minimum physical bandwidth and / or the target minimum available bandwidth.

16. A terminal, characterized by The method comprises a memory, a transceiver and a processor; The memory is configured to store a computer program; the transceiver is configured to transceive data under the control of the processor; and the processor is configured to read the computer program in the memory and perform the following operations: Obtain a maximum read rate and a real-time available read rate of a first storage device in a first terminal; Send a network probe packet to a second terminal through an intermediate transmission node based on a transmission protocol, receive a network bandwidth feedback packet sent by the second terminal and a write rate feedback packet of a second storage device sent by the second terminal; The network probe packet comprises an initial physical bandwidth and an initial available bandwidth of the first terminal, the network bandwidth feedback packet comprises a target minimum physical bandwidth and a target minimum available bandwidth, the target minimum physical bandwidth and the target minimum available bandwidth are obtained by performing hop-by-hop updating on the initial physical bandwidth and the initial available bandwidth by the intermediate transmission node, and the write rate feedback packet comprises a maximum write rate and a real-time available write rate of the second storage device; In a case that a data sending rate of the first terminal is greater than a network transmission bottleneck rate, determine a data transmission bottleneck position based on the maximum read rate, the real-time available read rate, the maximum write rate, the real-time available write rate and the network transmission bottleneck rate; and the network transmission bottleneck rate comprises the target minimum physical bandwidth and / or the target minimum available bandwidth.

17. A terminal, characterized by comprising a memory, a transceiver, a processor; a memory for storing a computer program; a transceiver for transceiving data under control of the processor; a processor for reading the computer program in the memory and performing the following operations: receiving a target network probe packet sent by a first terminal through an intermediate transmission node; the target network probe packet is obtained by the intermediate transmission node performing hop-by-hop updating on an initial physical bandwidth and an initial available bandwidth in a network probe packet sent by the first terminal; obtaining a maximum write rate and a real-time available write rate of a second storage device in a second terminal; encapsulating the maximum write rate and the real-time available write rate into an extension frame to obtain a write rate feedback packet and sending the write rate feedback packet to the first terminal through a transmission protocol; analyzing the target network probe packet to obtain a target minimum physical bandwidth and a target minimum available bandwidth; encapsulating the target minimum physical bandwidth and the target minimum available bandwidth into a feedback frame to obtain a network bandwidth feedback packet and sending the network bandwidth feedback packet to the first terminal through a transmission protocol; the first terminal is configured to determine a data transmission bottleneck position based on a maximum read rate, a real-time available read rate of a first storage device, the maximum write rate, the real-time available write rate, and a network transmission bottleneck rate, the network transmission bottleneck rate comprising the target minimum physical bandwidth and / or the target minimum available bandwidth.

18. An electronic device comprising a processor and a memory having a computer program stored therein, characterized in that, The processor, when executing the computer program, implements the steps of the data transmission bottleneck positioning method according to any one of claims 1 to 7, or implements the steps of the data transmission bottleneck positioning method according to any one of claims 8 to 13.

19. A computer program product comprising a computer program, characterized in that, The computer program, when executed by the processor, implements the steps of the data transmission bottleneck positioning method according to any one of claims 1 to 7, or implements the steps of the data transmission bottleneck positioning method according to any one of claims 8 to 13.