CN112787877B - Network delay detection method and related equipment - Google Patents

Network delay detection method and related equipment Download PDF

Info

Publication number
CN112787877B
CN112787877B CN201911083100.4A CN201911083100A CN112787877B CN 112787877 B CN112787877 B CN 112787877B CN 201911083100 A CN201911083100 A CN 201911083100A CN 112787877 B CN112787877 B CN 112787877B
Authority
CN
China
Prior art keywords
message
network
data message
determining
target server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911083100.4A
Other languages
Chinese (zh)
Other versions
CN112787877A (en
Inventor
黄成�
苗海宏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201911083100.4A priority Critical patent/CN112787877B/en
Priority to PCT/CN2020/112308 priority patent/WO2021088484A1/en
Publication of CN112787877A publication Critical patent/CN112787877A/en
Application granted granted Critical
Publication of CN112787877B publication Critical patent/CN112787877B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the invention discloses a network delay detection method and related equipment. The method comprises the following steps: acquiring at least one of the message size, the network address and the port number of each received data message; determining whether each data message is a synchronous frame sent by a target server according to at least one of the message size, the network address and the port number; when a plurality of data messages are determined to be the synchronous frames sent by the target server, determining the time interval between the ith data message and the (i + 1) th data message, wherein i is an integer greater than or equal to 1; determining a fixed synchronous frame interval of the data message according to the time interval; and determining the network delay jitter of the ith data message according to the fixed synchronous frame interval and the time interval. By adopting the embodiment of the invention, the accuracy of network delay detection can be improved.

Description

Network delay detection method and related equipment
Technical Field
The present invention relates to the field of network technologies, and in particular, to a network delay detection method and a related device.
Background
The requirement of the network game experience on the network time delay is high, especially the influence of the network sudden time delay on the game experience is great, and the industry has no practical tool, so that the network game evaluation system can be suitable for most games and accurately evaluate/record the influence of the network on the game experience. The network delay from the terminal device of the game to the game server can only be detected by an internet packet detector (PING), but the network delay detected by this detection method is not accurate and has a larger difference from the network delay in the case of a real network.
Disclosure of Invention
The embodiment of the invention provides a network delay detection method and related equipment, which can improve the accuracy of network delay detection.
In a first aspect, an embodiment of the present invention provides a method for detecting a network delay, including:
acquiring at least one of the message size, the network address and the port number of each received data message; determining whether each data message is a synchronous frame sent by a target server according to at least one of the message size, the network address and the port number; when a plurality of data messages are determined to be the synchronous frames sent by the target server, determining a time interval between the ith data message and the (i + 1) th data message, wherein i is an integer greater than or equal to 1; determining a fixed synchronous frame interval of the data message according to the time interval; and determining the network delay jitter of the ith data message according to the fixed synchronous frame interval and the time interval. And periodically counting the number of the messages according to the size of the data messages, the network address and the port number, and further determining the data messages sent by the target server. And the change of the key indexes of the network is detected and analyzed by using the fixed synchronous frame interval of the data message, so that the network time delay is more accurately determined.
In an alternative design, a first number of the same network addresses and a second number of the same port numbers are counted; and determining the data messages corresponding to the port numbers with the most appeared first number and the most appeared second number, wherein the message length is smaller than a preset threshold value, and the data messages corresponding to the network addresses with the most appeared first number are the synchronization frames sent by the target server. And periodically counting the number of the messages according to the size of the data messages, the network address and the port number, and determining the data messages sent by the target server.
In another alternative design, the fixed synchronization frame interval is subtracted from the time interval to obtain a time difference value; and taking the larger one of the time difference value and 0 as the network delay jitter of the ith data message. The variation of the network key index is reflected by the network delay jitter, so that the network delay is more accurately determined.
In another optional design, after determining the network delay jitter of the ith data packet according to the fixed synchronization frame interval and the time interval, acquiring multiple round-trip delays between the terminal device and the target server; and determining the round trip delay peak value of each data message according to the round trip delays and the network delay jitter. The variation of the network key index is reflected by the round-trip delay peak value, so that the network delay is more accurately determined.
In another optional design, a plurality of test messages are sent to the target server, and the sending time point of each test message is recorded; receiving a plurality of response messages sent by the target server, and recording the receiving time point of each response message; and determining the round trip delays according to the sending time point and the receiving time point.
In another optional design, the sum of the time delays is obtained by adding the minimum one of the round-trip time delays to the network time delay jitter of the ith data message; and taking the larger one of the round trip delay corresponding to the ith data message and the sum of the round trip delay and the time delay as the round trip delay peak value of the ith data message.
In another optional design, the data packet may include a TCP packet or a UDP packet.
In a second aspect, the present application provides a terminal device, where the terminal device is configured to implement the method and the function performed by the terminal device in the first aspect, and the terminal device is implemented by hardware/software, where the hardware/software includes modules corresponding to the functions.
In a third aspect, the present application provides a computer-readable storage medium having stored therein instructions, which when executed on a computer, cause the computer to perform the method of any of the above aspects.
In a fourth aspect, the present application provides a computer program product for storing a computer program which, when run on a computer, causes the computer to perform the method of any of the above aspects.
In a fifth aspect, an embodiment of the present application provides a communication system, including the terminal device and the server in any one of the above aspects.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments or the background art of the present invention, the drawings required to be used in the embodiments or the background art of the present invention will be described below.
Fig. 1 is a schematic structural diagram of a network system according to an embodiment of the present invention;
fig. 2 is a schematic timing diagram of a data packet according to an embodiment of the present application;
fig. 3 is a schematic diagram of network delay data provided in an embodiment of the application;
fig. 4 is a schematic flowchart of a network delay detection method according to an embodiment of the present application;
FIG. 5 is a schematic diagram of a distribution of time intervals provided by an embodiment of the present application;
fig. 6 is a schematic structural diagram of a network delay detection apparatus according to an embodiment of the present invention;
fig. 7 is a schematic structural diagram of a terminal device according to an embodiment of the present application.
Detailed Description
The embodiments of the present invention will be described below with reference to the drawings.
Referring to fig. 1, fig. 1 is a schematic structural diagram of a network system according to an embodiment of the present invention, where the network system may include a terminal device 101 and a server 102. The terminal device 101 may be a User Equipment (UE), a cellular phone, a smart phone, a portable computer, a handheld communication device, a handheld computing device, a satellite radio, a global positioning system, a Personal Digital Assistant (PDA), and/or any other suitable device for communicating over a wireless communication system, etc. The server 102 may be a game server or other application server. Under the application scene of the electronic competition game, the game synchronization mechanism is divided into a state synchronization mechanism and a frame synchronization mechanism. The frame synchronization mechanism is mainly used for the electronic competition games with high requirements on time delay, and carries game data through UDP messages. The terminal device may first receive an operation instruction of a user, and then send a User Datagram Protocol (UDP) uplink packet to the server. And after receiving the UDP uplink message, the server performs instruction logic judgment and then sends a UDP downlink synchronous message to the terminal equipment. For the message of the UDP protocol, the uplink message and the downlink message have no corresponding serial number, and no related tool is used for evaluating the network delay of the UDP message.
As shown in fig. 2, fig. 2 is a schematic timing diagram of a UDP packet according to an embodiment of the present application. The server may send logical frames to client a and client B at a fixed sync frame interval, which may be, but is not limited to, 66ms or 50 ms. Client a and client B may send operational instructions to the server at different points in time. When the Round Trip Time (RTT) becomes large, the response time of the user operation increases, which affects the user experience. Wherein, RTT represents a round trip delay between the terminal device and the server.
In the prior art, the round-trip delay from the terminal device to the server can be detected through Ping. However, there are the following problems: first, the solution is only applicable to the Internet Protocol (IP) address of a known server, and the server needs to respond to Ping, otherwise RTT cannot be detected, so that the use limitation conditions are many, and the application scenarios are not wide enough. Secondly, because the IP addresses of the servers are variable and the time interval of Ping detection messages is large, the real network delay cannot be accurately reflected. As shown in fig. 3, fig. 3 is a schematic diagram of network delay data provided in the embodiment of the present application. The network delay collected by Ping at the first point in time is less than 300ms, while the actual network delay at this point in time is greater than 700 ms. The network delay collected at the second point in time is less than 400ms, whereas the actual network delay at this point in time is greater than 700 ms. The same applies at the third time point. Therefore, the difference between the network delay acquired by the Ping mode and the network delay in the real network environment is very large, and the real network delay cannot be truly reflected.
As shown in fig. 4, fig. 4 is a schematic flowchart of a network delay detection method provided in the embodiment of the present application. The method at least comprises the following steps:
s401, at least one of the message size, the network address and the port number of each received data message is obtained. The data packet may include a transmission control protocol TCP packet or a user data packet protocol UDP packet. Wherein, the TCP message and the UDP message are messages with fixed synchronous frame interval.
In a specific implementation, all message information sent by the terminal device to the server and all message information received by the terminal device and sent by the server in a test period may be obtained first. All message information includes a Transmission Control Protocol (TCP) message, a User Datagram Protocol (UDP) message, a Domain Name System (DNS) message, a hypertext transfer protocol (HTTP) message, and the like. The data packets may be filtered from all packet information according to a packet protocol. And then respectively acquiring the message size, the network address and the port number of each data message. The network address may be an Internet Protocol (IP) address.
S402, determining whether each data message is a synchronous frame sent by a target server according to at least one of the message size, the network address and the port number.
In specific implementation, the messages with the message size smaller than the preset threshold value are screened out according to the message size of each message, then the first number of the same network addresses is counted for the screened messages, if the first number of a certain network address is the largest and is not the network address of the local machine, the network address can be determined to be the network address of the target server, and the data message corresponding to the network address is the data message sent by the target server. And finally, counting a second number of the same port numbers, and if the second number of a certain port number is the largest, determining that the downlink data message corresponding to the port number is a synchronous frame sent by the target server. The data message is a synchronous frame with fixed period interval. The preset threshold includes, but is not limited to, 500 bytes.
And S403, when a plurality of data messages are determined to be the synchronous frames sent by the target server, determining a time interval between the ith data message and the (i + 1) th data message, wherein i is an integer greater than or equal to 1.
In a specific implementation, for the filtered synchronization frame, a timestamp of the data packet may be first obtained, where the timestamp records a receiving time point of each data packet. And then calculating the time interval between the ith data message and the (i + 1) th data message according to the timestamp of the data message. That is, the difference obtained by subtracting the reception time point of the ith packet from the reception time point of the (i + 1) th packet is used as the time interval between the ith packet and the (i + 1) th packet.
Optionally, the time interval of the abnormal data packet may be removed through an abnormal point/outlier detection algorithm. As shown in fig. 5, fig. 5 is a schematic diagram of a distribution of time intervals provided in the embodiment of the present application. If a certain time interval is distributed in the shaded portion in fig. 5, it is determined that the time interval is an abnormal time interval. If a time interval is distributed between-Za to Za and between the curve and the horizontal axis, the time interval is determined to be a valid time interval.
S404, determining the fixed synchronous frame interval of the data message according to the time interval.
In one implementation, a linear regression method may be used to calculate the time interval corresponding to the minimum mean square error as the fixed synchronization frame interval. For example, the fixed synchronization frame interval may be calculated by the following formula:
Figure BDA0002264567610000041
σ 2 is mean square error, N is the number of data messages, T _ UDP i+1 Is the reception time point of the (i + 1) th data packet, T _ UDP i And T _ sc is a fixed synchronous frame interval and is the receiving time point of the ith data message.
Specifically, an initial value of T _ sc may be set, and the mean square error may be calculated from the initial value and the time interval. Then, the initial value of T _ sc is modified (increased or decreased) according to a preset step length, the mean square error is calculated again based on the modified initial value of T _ sc and the time interval, and then the initial value of T _ sc is modified (increased or decreased) again according to a preset step length, and the mean square error is calculated. And repeating the steps for multiple times to calculate multiple mean square deviations. And determining the minimum one of the plurality of mean square deviations, and taking the T _ sc corresponding to the minimum mean square deviation as a fixed synchronous frame interval.
In another implementation, the median of the N-1 time intervals may be taken as the fixed synchronization frame interval. For example, T _ sc ═ mean (T _ UDP) i+1 -T_UDP i ). Wherein, T _ UDP i+1 Is the reception time point of the (i + 1) th data packet, T _ UDP i And T _ sc is a fixed synchronous frame interval and madian represents the median operation at the receiving time point of the ith data message.
S405, determining the network delay jitter of the ith data message according to the fixed synchronous frame interval and the time interval.
In a specific implementation, the fixed synchronization frame interval may be subtracted from the time interval to obtain a time difference value; and taking the larger one of the time difference value and 0 as the network delay jitter of the ith data message.
For example, Jitter _ i ═ MAX [ (T _ UDP) i+1 -T_UDP i )-T_sc,0]Wherein, Jitter _ i represents the network delay Jitter of the ith data packet, T _ UDP i+1 Is the reception time point of the (i + 1) th data packet, T _ UDP i And T _ sc is a fixed synchronous frame interval at the receiving time point of the ith data message. MAX denotes a maximum operation.
Optionally, after determining the network delay jitter of the ith data packet according to the fixed synchronization frame interval and the time interval, a plurality of round trip delays (RTT delays) between the terminal device and the target server may be first obtained. Further, a plurality of test messages may be sent to the target server according to a preset period, where the length of the preset period may be the fixed synchronization frame interval. And recording the sending time point of each test message. And then receiving a plurality of response messages sent by the target server, and recording the receiving time point of each response message. And determining the round trip delays according to the sending time point and the receiving time point. The test message may be a Ping message.
For example, in the process of a game over a local network, a Ping message may be sent to a game server according to a preset period, and i RTT delays obtained by testing i times are represented as: RTT _1, … …, RTT _ i. Or, when the game server adopts a cloud server and Ping detection is prohibited, TCP messages can be filtered from all messages collected by the terminal equipment, and then RTT time delay is calculated according to the TCP messages.
And then, determining the round trip delay peak value of each data message according to the round trip delays and the network delay jitter. Further, the sum of the time delays may be obtained by adding the minimum one of the round-trip time delays to the network time delay jitter of the ith data packet, and a larger one of the round-trip time delay and the time delay sum corresponding to the ith data packet may be used as the round-trip time delay peak value of the ith data packet.
For example, RRT _ peak _ i is MAX (RRT _ min + Jitter _ i, RTT _ i). The method comprises the steps of obtaining a first data message, obtaining a second data message, obtaining a third data message, and obtaining a third data message. MAX denotes a maximum operation.
In the embodiment of the application, the number of the messages is periodically counted through the size of the data message, the network address and the port number, and then the data message sent by the target server is determined. And the change of the key indexes of the network is detected and analyzed by using the fixed synchronous frame interval of the data message, so that the network time delay is more accurately determined. The embodiment of the application can be applied to online game fighting, can help game users to judge network conditions and guide the users to select proper operator networks and game users to experience test scenes. The user can use the network delay index difference obtained by different network tests to select the optimal network condition. In addition, the method can help operators to accurately evaluate network delay indexes and create high-quality game network environments.
The method of embodiments of the present invention is set forth above in detail and the apparatus of embodiments of the present invention is provided below.
Referring to fig. 6, fig. 6 is a schematic structural diagram of a network delay detection apparatus according to an embodiment of the present invention, where the network delay detection apparatus may include an obtaining module 601 and a processing module 602, where details of each unit are described below.
The obtaining module 601 is configured to obtain at least one of a message size, a network address, and a port number of each received data packet.
A processing module 602, configured to determine whether each data packet is a synchronization frame sent by a target server according to at least one of the packet size, the network address, and the port number.
The processing module 602 is further configured to determine, when it is determined that the plurality of data packets are the synchronization frames sent by the target server, a time interval between the ith data packet and the (i + 1) th data packet, where i is an integer greater than or equal to 1.
The processing module 602 is further configured to determine a fixed synchronization frame interval of the data packet according to the time interval.
The processing module 602 is further configured to determine the network delay jitter of the ith data packet according to the fixed synchronization frame interval and the time interval.
Optionally, the processing module 602 is further configured to count a first number of the same network addresses and a second number of the same port numbers; and determining the data messages corresponding to the port numbers with the most appeared first number and the most appeared second number, wherein the message length is smaller than a preset threshold value, and the data messages corresponding to the network addresses with the most appeared first number are the synchronization frames sent by the target server.
Optionally, the processing module 602 is further configured to subtract the fixed synchronization frame interval from the time interval to obtain a time difference value; and taking the larger one of the time difference value and 0 as the network delay jitter of the ith data message.
Optionally, the processing module 602 is further configured to obtain multiple round-trip delays between the terminal device and the target server; and determining the round trip delay peak value of each data message according to the round trip delays and the network delay jitter.
Optionally, the processing module 602 is further configured to send a plurality of test packets to the target server, and record a sending time point of each test packet; receiving a plurality of response messages sent by the target server, and recording the receiving time point of each response message; and determining the round trip delays according to the sending time point and the receiving time point.
Optionally, the processing module 602 is further configured to add the minimum one of the round-trip delays to the network delay jitter of the ith data packet to obtain a sum of delays; and taking the larger one of the sum of the round-trip delay and the time delay corresponding to the ith data message as the round-trip delay peak value of the ith data message.
It should be noted that the implementation of each module may also correspond to the corresponding description of the method embodiment shown in fig. 4.
Referring to fig. 7, fig. 7 is a schematic structural diagram of a terminal device according to an embodiment of the present disclosure. As shown in fig. 7, the terminal device may include: at least one processor 701, at least one communication interface 702, at least one memory 703 and at least one communication bus 704.
The processor 701 may be, among other things, a central processing unit, a general purpose processor, a digital signal processor, an application specific integrated circuit, a field programmable gate array or other programmable logic device, transistor logic, a hardware component, or any combination thereof. Which may implement or execute the various illustrative logical blocks, modules, and circuits described in connection with the disclosure herein. The processor may also be a combination of computing functions, e.g., comprising one or more microprocessors, a digital signal processor and a microprocessor, or the like. The communication bus 704 may be a peripheral component interconnect standard PCI bus or an extended industry standard architecture EISA bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 7, but this is not intended to represent only one bus or type of bus. A communication bus 704 is used to enable communications among the components. In this embodiment, the communication interface 702 of the device is used for performing signaling or data communication with other node devices. The memory 703 may include a volatile memory such as a nonvolatile dynamic random access memory (NVRAM), a phase change random access memory (PRAM), a Magnetoresistive Random Access Memory (MRAM), and the like, and may further include a nonvolatile memory such as at least one magnetic disk memory device, an electrically erasable programmable read-only memory (EEPROM), a flash memory device such as a NOR flash memory (NOR flash memory) or a NAND flash memory (EEPROM), a semiconductor device such as a Solid State Disk (SSD), and the like. The memory 703 may optionally be at least one memory device located remotely from the processor 701. A set of program codes may optionally be stored in the memory 703 and the processor 701 may optionally execute the program executed in the memory 703.
Acquiring at least one of the message size, the network address and the port number of each received data message;
determining whether each data message is a synchronous frame sent by a target server according to at least one of the message size, the network address and the port number;
when a plurality of data messages are determined to be the synchronous frames sent by the target server, determining the time interval between the ith data message and the (i + 1) th data message, wherein i is an integer greater than or equal to 1;
determining a fixed synchronous frame interval of the data message according to the time interval;
and determining the network delay jitter of the ith data message according to the fixed synchronous frame interval and the time interval.
Optionally, the processor 701 is further configured to perform the following operations:
counting a first number of the same network addresses and a second number of the same port numbers;
and determining the data messages corresponding to the port numbers with the most appeared first number and the most appeared second number, the message length of which is smaller than a preset threshold value, as the synchronous frames sent by the target server.
Optionally, the processor 701 is further configured to perform the following operations:
subtracting the fixed synchronous frame interval from the time interval to obtain a time difference value;
and taking the larger one of the time difference value and 0 as the network delay jitter of the ith data message.
Optionally, the processor 701 is further configured to perform the following operations:
acquiring a plurality of round-trip time delays between terminal equipment and the target server;
and determining the round trip delay peak value of each data message according to the round trip delays and the network delay jitter.
Optionally, the processor 701 is further configured to perform the following operations:
sending a plurality of test messages to the target server, and recording the sending time point of each test message;
receiving a plurality of response messages sent by the target server, and recording the receiving time point of each response message;
and determining the round trip delays according to the sending time point and the receiving time point.
Optionally, the processor 701 is further configured to perform the following operations:
adding the minimum one of the round-trip delays to the network delay jitter of the ith data message to obtain the sum of the delays;
and taking the larger one of the round trip delay corresponding to the ith data message and the sum of the round trip delay and the time delay as the round trip delay peak value of the ith data message.
Further, the processor may cooperate with the memory and the communication interface to perform the operations of the terminal device in the embodiments of the above application.
Embodiments of the present application further provide a chip system, where the chip system includes a processor, configured to support a terminal device to implement the functions referred to in any of the foregoing embodiments, for example, to generate or process data and/or information referred to in the foregoing methods. In one possible design, the system-on-chip may further include a memory for necessary program instructions and data for the terminal device or the server. The chip system may be constituted by a chip, or may include a chip and other discrete devices.
The embodiments of the present application further provide a processor, coupled to the memory, for performing any method and function related to the terminal device in any of the embodiments.
Embodiments of the present application further provide a computer program product, which, when run on a computer, causes the computer to execute any method and function related to the terminal device in any of the above embodiments.
The embodiment of the present application further provides a communication apparatus, configured to perform any method and function related to a terminal device in any of the foregoing embodiments.
An embodiment of the present application further provides a communication system, where the system includes at least one terminal device and at least one server related to any of the foregoing embodiments.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the application to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that includes one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
The above-mentioned embodiments further explain the objects, technical solutions and advantages of the present application in detail. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims (14)

1. A network delay detection method is characterized by comprising the following steps:
acquiring at least one of the message size, the network address and the port number of each received data message;
determining whether each data message is a synchronous frame sent by a target server according to at least one of the message size, the network address and the port number;
when a plurality of data messages are determined to be the synchronous frames sent by the target server, determining the time interval between the ith data message and the (i + 1) th data message, wherein i is an integer greater than or equal to 1;
determining a fixed synchronous frame interval of the data message according to the time interval;
and determining the network delay jitter of the ith data message according to the fixed synchronous frame interval and the time interval.
2. The method of claim 1, wherein said determining whether each data packet is a synchronization frame sent by a target server based on at least one of the packet size, the network address, and the port number comprises:
counting a first number of data messages with the same network address and a second number of data messages with the same port number;
and determining the data messages corresponding to the port numbers with the largest number of occurrences as the synchronous frames sent by the target server, wherein the message size is smaller than a preset threshold value, and the network addresses with the largest number of occurrences and the port numbers with the largest number of occurrences are the first number.
3. The method of claim 1 or 2, wherein the determining the network delay jitter of the ith data packet according to the fixed synchronization frame interval and the time interval comprises:
subtracting the fixed synchronous frame interval from the time interval to obtain a time difference value;
and taking the larger one of the time difference value and 0 as the network delay jitter of the ith data message.
4. The method of claim 1, wherein after determining the network delay jitter of the ith data packet according to the fixed synchronization frame interval and the time interval, the method further comprises:
acquiring a plurality of round-trip time delays between terminal equipment and the target server;
and determining the round trip delay peak value of each data message according to the round trip delays and the network delay jitter.
5. The method of claim 4, wherein the obtaining the plurality of round trip delays between the terminal device and the target server comprises:
sending a plurality of test messages to the target server, and recording the sending time point of each test message;
receiving a plurality of response messages sent by the target server, and recording the receiving time point of each response message;
and determining the round trip delays according to the sending time point and the receiving time point.
6. The method of claim 4, wherein said determining a round trip delay peak value for each of said data packets based on said plurality of round trip delays and said network delay jitter comprises:
adding the minimum one of the round-trip delays to the network delay jitter of the ith data message to obtain the sum of the delays;
and taking the larger one of the round trip delay corresponding to the ith data message and the sum of the round trip delay and the time delay as the round trip delay peak value of the ith data message.
7. A network delay detection apparatus, comprising:
the acquisition module is used for acquiring at least one of the message size, the network address and the port number of each received data message;
a processing module, configured to determine whether each data packet is a synchronization frame sent by a target server according to at least one of the packet size, the network address, and the port number;
the processing module is further configured to determine a time interval between an ith data packet and an (i + 1) th data packet when it is determined that the plurality of data packets are the synchronization frames sent by the target server, where i is an integer greater than or equal to 1;
the processing module is further configured to determine a fixed synchronization frame interval of the data packet according to the time interval;
the processing module is further configured to determine a network delay jitter of the ith data packet according to the fixed synchronization frame interval and the time interval.
8. The apparatus of claim 7,
the processing module is further configured to count a first number of data packets having the same network address and a second number of data packets having the same port number; and determining data messages corresponding to the port numbers with the largest number of occurrences as the synchronization frames sent by the target server, wherein the size of the messages is smaller than a preset threshold value, and the network addresses with the largest number of occurrences and the port numbers with the largest number of occurrences are determined as the synchronization frames sent by the target server.
9. The apparatus of claim 7 or 8,
the processing module is further configured to subtract the fixed synchronization frame interval from the time interval to obtain a time difference value; and taking the larger one of the time difference value and 0 as the network delay jitter of the ith data message.
10. The apparatus of claim 7,
the processing module is further configured to obtain multiple round-trip time delays between the terminal device and the target server; and determining the round-trip delay peak value of each data message according to the round-trip delays and the network delay jitter.
11. The apparatus of claim 10,
the processing module is further configured to send a plurality of test packets to the target server, and record a sending time point of each test packet; receiving a plurality of response messages sent by the target server, and recording the receiving time point of each response message; and determining the round trip delays according to the sending time point and the receiving time point.
12. The apparatus of claim 10,
the processing module is further configured to add the minimum one of the round-trip delays to the network delay jitter of the ith data packet to obtain a sum of delays; and taking the larger one of the round trip delay corresponding to the ith data message and the sum of the round trip delay and the time delay as the round trip delay peak value of the ith data message.
13. A terminal device, comprising: a memory for storing program code, a communication bus, and a processor for invoking the program code to perform the method of any one of claims 1-6.
14. A computer-readable storage medium having stored therein instructions which, when executed on a computer, cause the computer to perform the method of any one of claims 1-6.
CN201911083100.4A 2019-11-07 2019-11-07 Network delay detection method and related equipment Active CN112787877B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201911083100.4A CN112787877B (en) 2019-11-07 2019-11-07 Network delay detection method and related equipment
PCT/CN2020/112308 WO2021088484A1 (en) 2019-11-07 2020-08-29 Network delay detection method and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911083100.4A CN112787877B (en) 2019-11-07 2019-11-07 Network delay detection method and related equipment

Publications (2)

Publication Number Publication Date
CN112787877A CN112787877A (en) 2021-05-11
CN112787877B true CN112787877B (en) 2022-08-26

Family

ID=75747945

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911083100.4A Active CN112787877B (en) 2019-11-07 2019-11-07 Network delay detection method and related equipment

Country Status (2)

Country Link
CN (1) CN112787877B (en)
WO (1) WO2021088484A1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113507396B (en) * 2021-06-30 2023-07-14 新华三信息安全技术有限公司 Network state analysis method, device, equipment and machine-readable storage medium
CN114710426A (en) * 2022-04-02 2022-07-05 珠海星云智联科技有限公司 Method, device, system and related equipment for determining round-trip delay of read operation
CN117135082A (en) * 2022-05-18 2023-11-28 华为技术有限公司 Propagation delay determining method and device
CN115118635A (en) * 2022-06-29 2022-09-27 济南浪潮数据技术有限公司 Time delay detection method, device, equipment and storage medium
CN116599871B (en) * 2023-07-14 2023-10-03 腾讯科技(深圳)有限公司 Network time delay determining method and related device
CN117640463B (en) * 2024-01-25 2024-04-19 云天智能信息(深圳)有限公司 Satellite broadband short message communication and vital sign health monitoring method and system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1549504A (en) * 2003-05-07 2004-11-24 ��Ϊ�������޹�˾ Method for realizing jitter resistance in jitter precognition network
CN101534222A (en) * 2008-03-10 2009-09-16 中国移动通信集团公司 End-to-end network delay jitter measuring method, device and system thereof
CN102088397A (en) * 2009-12-03 2011-06-08 中兴通讯股份有限公司 Communication network element and clock frequency correction system and method
CN108092856A (en) * 2017-11-02 2018-05-29 北京紫光恒越网络科技有限公司 Network quality optimization method, system and electronic equipment based on SDN
CN108513703A (en) * 2016-12-28 2018-09-07 华为技术有限公司 network performance detection method and device

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060164266A1 (en) * 2003-09-22 2006-07-27 Inova Semiconductors Gmbh Synthesizing a remote controlled clock for data transmission via a digital multimedia link
CN101977131B (en) * 2010-11-08 2012-05-16 北京航空航天大学 Virtual-link interframe-interval monitoring system for considering historical occupied situation of physical link

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1549504A (en) * 2003-05-07 2004-11-24 ��Ϊ�������޹�˾ Method for realizing jitter resistance in jitter precognition network
CN101534222A (en) * 2008-03-10 2009-09-16 中国移动通信集团公司 End-to-end network delay jitter measuring method, device and system thereof
CN102088397A (en) * 2009-12-03 2011-06-08 中兴通讯股份有限公司 Communication network element and clock frequency correction system and method
CN108513703A (en) * 2016-12-28 2018-09-07 华为技术有限公司 network performance detection method and device
CN108092856A (en) * 2017-11-02 2018-05-29 北京紫光恒越网络科技有限公司 Network quality optimization method, system and electronic equipment based on SDN

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向测试任务的交换机结构设计;黄飞等;《测试技术学报》;20080615(第03期);全文 *

Also Published As

Publication number Publication date
CN112787877A (en) 2021-05-11
WO2021088484A1 (en) 2021-05-14

Similar Documents

Publication Publication Date Title
CN112787877B (en) Network delay detection method and related equipment
CN107624233B (en) VPN transmission tunnel scheduling method and device and VPN client server
US10742532B2 (en) Non-intrusive mechanism to measure network function packet processing delay
US9426046B2 (en) Web page download time analysis
CN109286813B (en) Video communication quality detection method and device
CA3161839A1 (en) System and method for estimation of quality of experience (qoe) for video streaming
CN113315744A (en) Programmable switch, flow statistic method, defense method and message processing method
US20210184940A1 (en) Prediction of a performance indicator
WO2017052973A1 (en) Technologies for performance inspection at an endpoint node
CN112929241B (en) Network testing method and device
CN112968747B (en) Time calibration method and device, computer equipment and storage medium
CN101808018A (en) Method and device for detecting quantity of access terminals
US10057155B2 (en) Method and apparatus for determining automatic scanning action
CN110636536A (en) Frequency calibration method and device
CN110557826A (en) Clock synchronization method and device
CN108964822B (en) Method and system for acquiring network time in parallel by multiple schemes
CN113507396B (en) Network state analysis method, device, equipment and machine-readable storage medium
CN109194706B (en) Network resource dial testing method and terminal
CN112104523B (en) Detection method, device and equipment for flow transparent transmission and storage medium
CN107438268B (en) Method and device for accelerating wireless network for mobile device
CN110677683B (en) Video storage and video access method and distributed storage and video access system
US20190089795A1 (en) Communication analysis device, communication analysis method, and program recording medium
CN103338131A (en) Method and equipment for testing log transmitting loss rate
CN110020166B (en) Data analysis method and related equipment
CN108183926B (en) Data packet processing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant