CN116599871A - Network time delay determining method and related device - Google Patents

Network time delay determining method and related device Download PDF

Info

Publication number
CN116599871A
CN116599871A CN202310866285.6A CN202310866285A CN116599871A CN 116599871 A CN116599871 A CN 116599871A CN 202310866285 A CN202310866285 A CN 202310866285A CN 116599871 A CN116599871 A CN 116599871A
Authority
CN
China
Prior art keywords
time
identifier
message
time identifier
network
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.)
Granted
Application number
CN202310866285.6A
Other languages
Chinese (zh)
Other versions
CN116599871B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310866285.6A priority Critical patent/CN116599871B/en
Publication of CN116599871A publication Critical patent/CN116599871A/en
Application granted granted Critical
Publication of CN116599871B publication Critical patent/CN116599871B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

The embodiment of the application discloses a method and a related device for determining network time delay, which can be applied to the fields of automatic driving, intelligent traffic, maps and the like. After receiving the first message, the intermediate device obtains a second message based on the first time identifier and the second time identifier. The time required for the first device to transfer data to the intermediate device for the ith time, i.e. the first network delay, can be determined based on the first time identification and the second time identification. The intermediate device sends a second message to the second device for the ith time, and after the second device receives the second message, a third time identifier is generated, so that the time required by the intermediate device to transfer data to the second device for the ith time, namely the second network delay, can be determined based on the second time identifier and the third time identifier. Therefore, the time identification of each stage is acquired based on the message, the network delay of each stage is determined, and the application range of the application scene is enlarged.

Description

Network time delay determining method and related device
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method and an apparatus for determining network delay.
Background
Network latency is the time required for data (e.g., packets, bits, etc.) to travel from a sender to a receiver. If the network delay is longer, the waiting time of the user is longer, and the user experience is worse.
In the related art, the network time delay from the transmitting end to the receiving end is calculated, and when the network time delay is larger, the network time delay can be timely adjusted, such as optimizing the design and configuration of the network, improving the reliability and performance of the network, and the like. The mode of calculating the network time delay is as follows: the transmitting end increases the transmitting time T1 while transmitting data to the receiving end, the receiving end obtains the receiving time T2 while receiving data, and increases the transmitting time T3 and the receiving time T2 while returning response data to the transmitting end, and the transmitting end obtains the receiving time T4 while receiving the response data. Thus, the network delay of the upstream communication can be determined based on the difference between the receiving time T2 and the transmitting time T1, and the network delay of the downstream communication can be determined based on the difference between the receiving time T4 and the transmitting time T3.
However, the network delay determined based on the above manner has a smaller application range.
Disclosure of Invention
In order to solve the technical problems, the application provides a method and a related device for determining network delay, which are used for expanding the application range of an application scene.
The embodiment of the application discloses the following technical scheme:
in a first aspect, an embodiment of the present application provides a method for determining a network delay, where the method is applied to an intermediate device, and the method includes: receiving a first message from a first device, wherein the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, and i is an integer greater than 0;
obtaining a second message based on the first time identifier and a second time identifier, wherein the second time identifier is used for identifying the time of sending the second message to a second device for the ith time by the intermediate device;
sending the second message to the second device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, and the third time identifier is used for identifying time of the second equipment for receiving the second message for the ith time.
In a second aspect, an embodiment of the present application provides a method for determining a network delay, where the method is applied to a first device, and the method includes:
generating a first message, wherein the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, and i is an integer greater than 0;
sending the first message to an intermediate device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, the second time identifier is used for identifying time of the intermediate equipment to transmit the second message to the second equipment for the ith time, and the third time identifier is used for identifying time of the second equipment to receive the second message for the ith time.
In a third aspect, an embodiment of the present application provides a method for determining a network delay, where the method is applied to a second device, and the method includes:
Receiving a second message from an intermediate device, wherein the second message is determined based on a first message and a second time identifier, the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, the second time identifier is used for identifying the time of the intermediate device for sending the second message to the second device for the ith time, and i is an integer greater than 0;
acquiring a third time identifier, wherein the third time identifier is used for identifying the time of the ith receiving of the second message by the second equipment;
the first time identifier and the second time identifier are used for determining a first network time delay for the ith time, the second time identifier and the third time identifier are used for determining a second network time delay for the ith time, the first network time delay is the time required by the first device to transfer data to the intermediate device, and the second network time delay is the time required by the intermediate device to transfer data to the second device.
In a fourth aspect, an embodiment of the present application provides a device for determining a network delay, where the device is built in an intermediate device, and the device includes: a receiving unit, a constructing unit and a transmitting unit;
The receiving unit is configured to receive a first packet from a first device, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when the first device sends the first packet for the ith time, and i is an integer greater than 0;
the construction unit is used for obtaining a second message based on the first time identifier and a second time identifier, and the second time identifier is used for identifying the time of the intermediate equipment for sending the second message to the second equipment for the ith time;
the sending unit is configured to send the second message to the second device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, and the third time identifier is used for identifying time of the second equipment for receiving the second message for the ith time.
In a fifth aspect, an embodiment of the present application provides a device for determining a network delay, where the device is built in a first device, and the device includes: a generation unit and a transmission unit;
The generating unit is configured to generate a first packet, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when the first device sends the first packet for the ith time, and i is an integer greater than 0;
the sending unit is used for sending the first message to the intermediate equipment;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, the second time identifier is used for identifying time of the intermediate equipment to transmit the second message to the second equipment for the ith time, and the third time identifier is used for identifying time of the second equipment to receive the second message for the ith time.
In a sixth aspect, an embodiment of the present application provides a device for determining a network delay, where the device is built in a second device, and the device includes: a receiving unit and an acquiring unit;
The receiving unit is configured to receive a second packet from an intermediate device, where the second packet is determined based on a first packet and a second time identifier, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when a first device sends the first packet for the ith time, and the second time identifier is used to identify a time when the intermediate device sends the second packet for the ith time to the second device, where i is an integer greater than 0;
the acquiring unit is configured to acquire a third time identifier, where the third time identifier is used to identify a time when the second device receives the second message for the ith time;
the first time identifier and the second time identifier are used for determining a first network time delay for the ith time, the second time identifier and the third time identifier are used for determining a second network time delay for the ith time, the first network time delay is the time required by the first device to transfer data to the intermediate device, and the second network time delay is the time required by the intermediate device to transfer data to the second device.
In a seventh aspect, an embodiment of the present application provides a system for determining a network delay, where the system includes a first device, an intermediate device, and a second device;
The first device is configured to perform the method of the first aspect;
the intermediate device for performing the method of the second aspect;
the second device is configured to perform the method according to the third aspect.
In an eighth aspect, an embodiment of the present application provides a computer device, including a processor and a memory:
the memory is used for storing a computer program and transmitting the computer program to the processor;
the processor is configured to perform the method of the above aspect according to instructions in the computer program.
In a ninth aspect, embodiments of the present application provide a computer readable storage medium storing a computer program for executing the method of the above aspect.
In a tenth aspect, embodiments of the present application provide a computer program product or computer program comprising computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the method described in the above aspect.
According to the technical scheme, in the process that the first equipment sends the message to the second equipment through the intermediate equipment, the first equipment sends the first message to the intermediate equipment for the ith time, and the first message comprises a first time identifier, namely the time of the first equipment sending the first message for the ith time. After the intermediate device receives the first message, a second message is obtained based on the first time identifier and the second time identifier, wherein the second time identifier is used for identifying the time when the intermediate device sends the second message to the second device for the ith time. The time required by the first device to transfer data to the intermediate device for the ith time, namely the first network delay, can be determined based on the first time identifier and the second time identifier. The intermediate device sends the second message to the second device for the ith time, and after the second device receives the second message, a third time identifier, namely a time for identifying the second device for the ith time to receive the second message is generated, so that the time required by the intermediate device for the ith time to transmit data to the second device, namely the second network time delay, can be determined based on the second time identifier and the third time identifier. Therefore, in the process that the first equipment performs data transmission through the intermediate equipment and the second equipment, the time identification of each stage can be obtained based on the message, so that the network time delay between the sending end (the first equipment) and the receiving end (the second equipment) can be determined, the network time delay between the sending end and the intermediate equipment and the network time delay between the intermediate equipment and the receiving end can be determined, the network time delay of each stage of the same link is further thinned, and the application range of an application scene is enlarged.
Drawings
In order to more clearly illustrate the embodiments of the application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
Fig. 1 is a schematic diagram of a communication system according to an embodiment of the present application;
fig. 2 is a signaling interaction diagram of a method for determining network delay according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a message and a time stamp according to an embodiment of the present application;
FIG. 4 is a diagram illustrating a message format according to an embodiment of the present application;
FIG. 5 is a diagram illustrating a message format according to an embodiment of the present application;
FIG. 6 is a diagram illustrating a message format according to an embodiment of the present application;
fig. 7 is an application schematic diagram of a method for determining network delay according to an embodiment of the present application;
fig. 8 is an application scenario schematic diagram of a method for determining network delay according to an embodiment of the present application;
FIG. 9 is a schematic diagram of a test result provided by an embodiment of the present application;
Fig. 10 is a schematic diagram of a network delay determining device according to an embodiment of the present application;
fig. 11 is a schematic diagram of a network delay determining device according to an embodiment of the present application;
fig. 12 is a schematic diagram of a network delay determining device according to an embodiment of the present application;
fig. 13 is a schematic structural diagram of a server according to an embodiment of the present application;
fig. 14 is a schematic structural diagram of a terminal device according to an embodiment of the present application.
Detailed Description
Embodiments of the present application are described below with reference to the accompanying drawings.
In the related art, the network delay of the sending end and the receiving end is determined based on the sending time of the sending end and the receiving time of the receiving end, and because the data is forwarded through the intermediate equipment in the sending process, only the network delay of the sending end and the receiving end is calculated, the network delay calculation is not fine enough, and the application range is smaller. Based on the above, the embodiment of the application provides a method and a related device for determining network delay, which refine the network delay at each stage of the same link and enlarge the application range of an application scene in the process that first equipment performs data transmission with second equipment through intermediate equipment.
In order to facilitate understanding of the method for determining network delay provided by the embodiment of the present application, a communication system shown in fig. 1 is taken as an example, and the method for determining network delay provided by the embodiment of the present application is described below.
Referring to fig. 1, a schematic architecture diagram of a communication system is provided in an embodiment of the present application. The communication system 100 includes a first device 110, an intermediate device 120, and a second device 130.
The first device 110 is responsible for generating and transmitting a message based on a preset communication protocol as a data transmitting end. The second device 120 serves as a receiving end of data, and is responsible for receiving a message from the first device in uplink communication and for responding to the first device in downlink communication.
The first device and the second device may each be a computer device, such as a terminal device, a server, having network latency determination capabilities. The terminal device may be a desktop computer, a notebook computer, a mobile phone, a tablet computer, an internet of things device, a portable wearable device, the internet of things device may be an intelligent sound box, an intelligent television, an intelligent air conditioner, an intelligent vehicle-mounted device, an aircraft, etc., the intelligent vehicle-mounted device may be a vehicle-mounted navigation terminal, a vehicle-mounted computer, etc., and the portable wearable device may be an intelligent watch, an intelligent bracelet, a head-mounted device, etc., but is not limited thereto; the server may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server or a server cluster for providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (Content Delivery Network, CDN), basic cloud computing services such as big data and artificial intelligent platforms, and the like. The terminal device and the server may be directly or indirectly connected through wired or wireless communication, and the present application is not limited herein.
The intermediate device 120 is used for forwarding data, for example, as a "man-in-the-middle" to forward a data packet, and may be a base station (such as a generation NodeB,5g base station), a customer premise equipment (Customer Premise Equipment, CPE), a Multi-access edge computing (Multi-access edge computing, MEC), a user plane function (User plane function, UPF) network element, a router, a switch, or a physical device supporting a routing function, or may be a server deploying a virtual router or a virtual switch, for transmitting a packet. As a possible implementation, the intermediate device may be not only an intermediate forwarding device of a network layer such as a base station, but also an intermediate forwarding suite of an application layer, such as kafka based on a message subscription mechanism.
It should be noted that, based on different application scenarios, such as a 5G core network, a mobile network, a wired network, a home broadband, etc., different devices may be selected as the intermediate devices. For example, a UPF network element is selected in an application scenario of the 5G core network, a base station is selected in a mobile network writing application scenario, a wireless Access Point (AP) is selected in an application scenario of the wireless network, and the like. Therefore, under different network scenes and network architectures, the selection of the intermediate equipment can be determined according to different task demands, so that the embodiment of the application has higher scene generalization capability and technical universality, is suitable for network delay calculation under various network architectures, and has higher accuracy. The architecture realizes house, has lower cost of communication transmission, can be used for supporting relevant researches of service quality (quality of service, qos) data and building a network capacity open platform, and is not described in detail later.
The method for determining network delay according to the embodiment of the present application is described below with reference to fig. 1.
The first device 110 may continually send messages to the second device 120 through the intermediary device 120. Specifically, the first device 110 sends a first message to the intermediate device 120 for the ith time, where the first message includes a first time identifier, and the first time identifier is used to identify a time when the first device sends the first message for the ith time.
After the ith receiving the first message, the intermediate device 120 obtains a second message based on the first time identifier and the second time identifier, so that the second message includes the first time identifier and the second time identifier, and sends the second message to the second device 130 for the ith time. The second time identifier is used for identifying the time when the intermediate device sends the second message to the second device for the ith time.
After the second device 130 receives the second message for the ith time, a third time identifier is generated, that is, the time when the second device receives the second message for the ith time.
Wherein the first network delay, i.e. the time required for the first device 110 to transfer data to the intermediate device 120 the ith time, may be determined based on the first time identification and the second time identification, and the second network delay, i.e. the time required for the intermediate device 120 to transfer data to the second device 130 the ith time, may be determined based on the second time identification and the third time identification.
Therefore, in the process that the first device performs data transmission through the intermediate device and the second device, the time identification of each stage can be obtained based on the message, so that the network delay between the sending end and the receiving end can be determined, the network delay between the sending end and the intermediate device and the network delay between the intermediate device and the receiving end can be determined, the network delay at each stage of the same link is further thinned, and the application range of an application scene is enlarged.
It should be noted that, in the embodiment of the present application, the calculation of the network delay, such as the first network delay and the second network delay, may be performed by the first device or the second device or the intermediate device. However, in other embodiments of the present application, the network delay, such as the first network delay and the second network delay, may be calculated by combining two devices or three devices among the first device, the second device, and the intermediate device, which is not limited in this embodiment.
The method for determining the network delay provided by the application is described in detail by the method embodiment.
Referring to fig. 2, the diagram is a signaling interaction diagram of a method for determining network delay according to an embodiment of the present application. As shown in fig. 2, the method for determining the network delay includes the following steps:
S201: the first device generates a first message.
The first message is a message sent by the first device to the second device. The first device may continuously send the first message to the intermediate device, and in the following, description will be given by taking the ith sending of the first message by the first device as an example, where i is an integer greater than 0.
Referring to fig. 3, a schematic diagram of a message and a time identifier according to an embodiment of the present application is shown. When the first device sends the first message for the ith time, the first message may include a first time identifier, where the first time identifier is used to identify a time when the first device sends the first message for the ith time. For example, when the first device sends the first message for the ith time, a local timestamp is obtained, the local timestamp is used as a first time identifier to be written into a field corresponding to the first message, and the first message is sent to the intermediate device. It will be appreciated that the difference between the time of acquisition of the first time identifier and the time of transmission of the first message is negligible.
The protocol for constructing the first message is not particularly limited in the embodiments of the present application, and for example, the first message may be generated based on the user datagram protocol (User Datagram Protocol, UDP) and the first time identifier. The generation of the first message based on UDP is simple to implement and does not require handshaking as the generation of the first message based on the transmission control protocol (Transmission Control Protocol, TCP). Specifically, the header may be constructed based on UDP, and the first time identifier may be written in a field corresponding to the first time identifier in the data area.
Referring to fig. 4, a schematic diagram of a message format according to an embodiment of the present application is shown. Only the message Wen Fuzai (payload) is shown in fig. 4, with the time stamp located in the message payload. The message payload may include a first field for populating a first time identifier. For example, after the first field in the packet payload is filled with the first time identifier, the first packet may be obtained.
S202: the first device sends a first message to the intermediate device.
As a possible implementation manner, after the first device, the intermediate device and the second device meet the clock synchronization condition, the first message may be generated to ensure the clock consistency of the three devices, or, obtain the local timestamps of the three devices at the same time, where the difference between the timestamps is smaller than a preset threshold, and if the clocks of the three devices have differences, the time synchronization of the three devices may deviate, so that an error of the single-pass delay calculation result is caused. The single-pass time delay refers to the time required by the data from the transmitting end to the receiving end, and is equivalent to the sum of the first network time delay and the second network time delay in the embodiment of the application.
The clock synchronization condition means that a difference value between three time stamps generated by a clock of the first device, a clock of the intermediate device and a clock of the second device at the same time is smaller than a preset threshold, and as a possible implementation manner, before each device such as the first device generates the first message, the clock synchronization policy may be used to perform clock synchronization on the first device, the intermediate device and the second device, so that the first device, the intermediate device and the second device satisfy the clock synchronization condition.
The clock synchronization policy is a policy for enabling a difference value between three time stamps generated by a clock of a first device, a clock of an intermediate device and a clock of a second device at the same time to be smaller than a preset threshold. As one possible implementation manner, the first device obtains a target scene identifier, where the target scene identifier is used for identifying an application scene where the first device, the intermediate device and the second device are located, determines a target clock synchronization policy corresponding to the target scene identifier based on a corresponding relationship between the scene identifier and the clock synchronization policy, and makes the first device, the intermediate device and the second device satisfy a clock synchronization condition based on the target clock synchronization policy, i.e. makes a difference value between three timestamps respectively generated by a clock of the first device, a clock of the intermediate device and a clock of the second device at the same time be smaller than a preset threshold.
It should be noted that, the clock synchronization policy is introduced to correct the clock deviation of each device, so as to improve the accuracy of the time delay calculation result. In addition, considering the advantages and disadvantages of various clock synchronization strategies, different clock synchronization strategies are set based on different scene requirements, namely, the corresponding relation between the scene identification and the clock synchronization strategies is established in advance, so that the clock synchronization strategies can be suitable for different network architectures and/or different scenes, and the scene migration and generalization capability is improved. Three clock synchronization strategies are described below as examples.
First kind: the Ntpdate is an open-source clock synchronization strategy, is suitable for a plurality of operating systems, is convenient and quick to install and low in installation cost, but the corrected clock is low in precision, or the difference among three time stamps respectively generated at the same time based on the clock of the Ntpdate first device, the clock of the intermediate device and the clock of the second device is large. In a scenario where cost is a concern and accuracy is not a concern, ntpdate may be used.
Second kind: linuxPTP is an open source clock synchronization strategy, but has higher installation cost, and the corrected clock precision is higher than Ntpdate and can reach microsecond level. It should be noted that Ntpdate and LinuxPTP can provide accurate and consistent time standards for applications in different fields, thereby improving performance and reliability.
Third kind: time sensitive networks (Time-Sensitive Networking, TSNs) are an ethernet-based real-Time communication technology that can provide reliable, low-latency data transmission services for different types of real-Time applications. The TSN is mainly characterized by supporting functions of clock synchronization, flow control, priority scheduling and the like, and can meet the requirements of fields such as industrial automation, intelligent transportation, intelligent manufacturing and the like on real-time communication. Clock synchronization can be realized through an IEEE 1588 protocol, so that clock originality among different devices is ensured, and the influence of clock synchronization errors on real-time communication is reduced. The first device, the intermediate device and the second device are clock synchronized based on the TSN, so that clock synchronization errors can be controlled within picoseconds.
In addition, the intermediate device and the second device can both be based on the clock synchronization strategy, so that after the first device, the intermediate device and the second device meet the clock synchronization conditions, the corresponding message is sent again, the clock consistency of the three devices is ensured, and the accuracy of the network delay is improved.
Therefore, based on the pre-established corresponding relation between the scene identification and the clock synchronization strategy, different clock synchronization strategies can be used in different scenes, wherein the corresponding relation can consider the problems such as cost, installation difficulty and precision problems based on the clock synchronization strategy, so that the difference value among three time stamps respectively generated at the same time by the clock of the first equipment, the clock of the intermediate equipment and the clock of the second equipment meets the corresponding scenes, the cost overhead is controlled as much as possible, the accuracy of a calculation result is ensured, and the application range of the application scene is enlarged.
S203: the intermediate device obtains a second message based on the first time identifier and the second time identifier.
The second message is a message sent by the intermediate device to the second device. After the first message is received by the intermediate device for the ith time, the second message can be obtained based on the first time identifier included in the first message and the acquired second time identifier, so that the second message includes the first time identifier and the second time identifier. The second time identifier is used for identifying the time of the ith transmission of the second message to the second device by the intermediate device. It should be noted that, the time for the second device to receive the first message and the time for the second device to send the second message are negligible.
With continued reference to fig. 3, the intermediate device sends a second message to the second device. It should be noted that, the time identifiers shown below the respective messages in fig. 4 are obtained based on the current device, and not each message is obtained based on only the time identifier shown below. For example, the second message is obtained based on the first time identification and the second time identification, but the second time identification is obtained based on the intermediary device.
With continued reference to fig. 4, the message payload may include not only a first field for populating the first time stamp, but also a second field for populating the second time stamp. For example, after the first field in the message payload is filled with the first time identifier, the second field is empty, and the first message may be obtained. And filling a first time identifier in a first field in the message load and filling a second time identifier in a second field, so that a second message can be obtained. It will be appreciated that although the first message and the second message include the same field, the first message has one field that is empty compared to the second message, so that the two messages are not the same message.
The embodiment of the application is not particularly limited to the form of the first message, for example, the first message can be only used as a message for testing time delay, that is, the message load of the first message only comprises a time identifier, so that normal service is not influenced in the process of testing time delay. As another example, the first message may be a service related message, e.g., bits 0-1000 of the first message are used to place service related information, and bits 1001-1200 are used to place an isochronous identifier, e.g., a first time identifier. Thus, the message that the intermediate device obtains from the first device may not be the first message at all. The following is a detailed description.
Mode one: the first message may be only a message for testing delay, and at this time, the message received by the intermediate device from the first device may not be the first message, that is, the first device may send the first message, a service message related to a service, and other messages to the intermediate device. If the first device wants to send the first message to the intermediate device, the first device may add a preset port to the message, so that after the intermediate device receives the message from the first device, if the port included in the message is the preset port, the message is the first message for testing the delay. For example, if the preset port is 13000, the intermediate device continuously receives the message from the first device, and if the port included in the message is 13000, and the first time identifier can be obtained from the message.
Mode two: the first message may be a service related message, in which case the intermediate device receives each message from the first device including both the time stamp and the service related information. If the first device wants to send information related to a target service to the intermediate device, the information related to the target service and the first time identifier are written into a message according to a preset field rule, after the intermediate device receives the message from the first device, the first time identifier is obtained from the message based on the preset field rule, and the first message is obtained based on the first time identifier.
Thus, the first device may choose whether to mix the first time identification with the information required by the service based on the service needs. Therefore, the intermediate equipment can obtain the first message comprising the first time mark from the received message based on the corresponding identification rule, thereby meeting the requirements of various services and expanding the application range of the application scene.
S204: the intermediate device sends a second message to the second device.
As a possible implementation, if the first device builds the first message based on UDP, the intermediate device may build the second message based on UDP.
As a possible implementation manner, after the first device, the intermediate device and the second device meet the clock synchronization condition, the intermediate device sends the second message to the second device for the ith time, so as to ensure the clock consistency of the three devices, or obtain the local time stamps of the three devices at the same time, wherein the difference value between the time stamps is smaller than a preset threshold value, and avoid the error of the single-pass time delay calculation result.
The intermediate device may acquire the target scene identifier, determine a target clock synchronization policy corresponding to the target scene identifier based on a corresponding relationship between the scene identifier and the clock synchronization policy, and enable the first device, the intermediate device and the second device to satisfy a clock synchronization condition based on the target clock synchronization policy, that is, enable a difference value between three timestamps generated by a clock of the first device, a clock of the intermediate device and a clock of the second device at the same time to be smaller than a preset threshold.
As a possible implementation manner, if the second packet is constructed based on UDP, the value of UDP-checksum may be recalculated based on the second packet, so as to detect whether the UDP segment finds an error in transmission, thereby ensuring that the data can be transmitted correctly. As a possible implementation manner, the second message may also be converted into a network byte order for sending after recalculating the value of the udp-checksum. The network byte sequence specifies that the byte sequence transmitted in the network is broken, if the small end machine is transmitting data, the data needs to be converted into the big end byte sequence for transmission, and the data transmitted by the opposite end machine is the big end byte sequence by default. In addition, when the subsequent intermediate device sends the fourth message to the first device, after calculating the value of the udp-checksum for the fourth message again, the fourth message may be converted into a network byte order for sending.
S205: the second device obtains a third time identifier.
The second device obtains a third time identifier after the ith receiving the second message, for example, obtains a timestamp from the local while obtaining the second message as the third time identifier. The third time identifier is used for identifying the time when the second device receives the second message for the ith time.
Thus, the first network delay for the ith time can be determined according to the first time identifier and the second time identifier, and the second network delay for the ith time can be determined according to the second time identifier and the third time identifier, wherein the first network delay is the time required by the first device to transfer data to the intermediate device, and the second network delay is the time required by the intermediate device to transfer data to the second device. For example, the difference between the second time identifier and the first time identifier is used as the time required for the first device to transfer data to the intermediate device for the ith time, i.e. the first network delay for the ith time. For another example, the difference between the third time identifier and the second time identifier is used as the time required by the intermediate device to transfer data to the second device for the ith time, i.e. the second network delay for the ith time.
As can be seen from the above technical solutions (S201 to S205), in the process that the first device continuously sends the message to the second device through the intermediate device, description is given by taking the ith example. The first device sends a first message to the intermediate device for the ith time, wherein the first message comprises a first time identifier, namely the time of the first device for the ith sending of the first message. After the intermediate device receives the first message, a second message is obtained based on the first time identifier and the second time identifier, wherein the second time identifier is used for identifying the time when the intermediate device sends the second message to the second device for the ith time. The time required by the first device to transfer data to the intermediate device for the ith time, namely the first network delay, can be determined based on the first time identifier and the second time identifier. The intermediate device sends the second message to the second device for the ith time, and after the second device receives the second message, a third time identifier, namely a time for identifying the second device for the ith time to receive the second message is generated, so that the time required by the intermediate device for the ith time to transmit data to the second device, namely the second network time delay, can be determined based on the second time identifier and the third time identifier.
Therefore, in the process that the first device performs data transmission through the intermediate device and the second device, the time identification of each stage can be obtained based on the message, so that the network time delay between the sending end (the first device) and the receiving end (the second device) can be determined, the network time delay between the sending end and the intermediate device (the first network time delay) and the network time delay between the intermediate device and the receiving end (the second network time delay) can be determined, the network time delays of all stages in the same link are further thinned, and the application range of application scenes is enlarged. In addition, the first time mark and the second time mark are written into the same message, and any equipment can calculate the corresponding network time delay based on the message, so that the method is convenient and quick.
It should be noted that, the embodiment of the present application is not limited to an execution body for calculating network delays, such as the first network delay and the second network delay, and may be a first device, an intermediate device, or a second device, or any two devices or three devices in the first device, the intermediate device, and the second device may be completed in a matched manner. For example, if the first device is a client device and the second device is a server device, the first time identifier and the second time identifier are both sent to the second device, so the first network delay and the second network delay may be calculated by the second device.
In addition, as a possible implementation manner, the fourth time identifier and the fifth time identifier generated later are both sent to the first device, so the third network delay and the fourth network delay may be calculated by the first device, which will not be described in detail later herein. For another example, in order to reduce the equipment transformation cost, the network delay can be calculated in the intermediate equipment, that is, all the network delays are calculated in the intermediate equipment, and the description will be continued later, which is not repeated here.
According to the technical scheme (S201-S205), only the first network time delay and the second network time delay in one-way time delay are calculated, round trip time delay (round trip time) can be calculated, the round trip time delay refers to time required by returning data from a sending end to a receiving end to the sending end, in the related art, the sending end obtains a time stamp when sending the data, the sending end obtains a time stamp when receiving the data, and the round trip time delay is determined by the difference value of the two time stamps. However, the method can only determine the round trip delay, namely the whole time, and the network delay is not fine enough to calculate, so that the application range is small.
Based on this, the embodiment of the application not only provides that the single-way delay is divided into the first network delay and the second network delay, but also provides that the round trip delay is divided into the first network delay, the second network delay, the third network delay and the fourth network delay. For convenience of explanation, S201 to S205 are hereinafter referred to as uplink communications, S206 to S210 are hereinafter referred to as downlink communications, and S206 to S210 are specifically explained as examples of uplink communications.
S206: the second device obtains a third message according to the first time identifier, the second time identifier, the third time identifier and the fourth time identifier.
The third message is a message sent by the second device to the intermediate device, and with continued reference to fig. 3, the second device sends the third message to the intermediate device. The third message includes a fourth time identifier, where the fourth time identifier is used to identify a time when the second device sends the third message for the ith time. For example, when the second device sends the third message for the ith time, the local timestamp is obtained, the local timestamp is used as the fourth time identifier and written into the corresponding field of the third message, and the third message is sent to the intermediate device. It will be appreciated that the difference between the time of obtaining the fourth time stamp and the time of sending the third message is negligible.
The second device may not be responsible for the calculation of the first network delay and/or the second network delay, so the second device may obtain a third packet according to the first time identifier, the second time identifier, the third time identifier, and the fourth time identifier, so that other devices may calculate the first network delay and/or the second network delay based on the third packet. Referring to fig. 5, a schematic diagram of a message format according to an embodiment of the present application is shown. In fig. 5, the first message-fourth message each includes five fields, each for writing a time identifier. For example, the second message includes a first field, a second field, a third field, a fourth field and a fifth field, where the first field is written with a first time identifier, the second field is written with a second time identifier, the third field, the fourth field and the fifth field are empty, and the third field of the second message is written with a third time identifier, and after the fourth field is written with a fourth time identifier, the obtained message is the third message.
Because the second device generally processes the second message after receiving the second message, and then generates the third message, the time of the second device receiving the second message and the time of sending the third message cannot be ignored, so that in order to ensure the accuracy of time delay calculation, the embodiment of the application distinguishes the third time mark and the fourth time mark.
As a possible implementation manner, if the second device is responsible for calculating the second network delay, the second device may calculate the second network delay based on the obtained second time identifier and the third time identifier, and other devices (the first device and the intermediate device) do not need the second network delay, so the second device may generate the third message based on only the fourth time identifier.
S207: the second device sends a third message to the intermediate device.
As a possible implementation, if the first device constructs the first message based on UDP and the intermediate device constructs the second message based on UDP, the second device may construct the third message based on UDP.
As a possible implementation manner, after the first device, the intermediate device and the second device meet the clock synchronization condition, the second device sends the third message to the intermediate device for the ith time, so as to ensure the clock consistency of the three devices, or obtain the local time stamps of the three devices at the same time, wherein the difference value between the time stamps is smaller than a preset threshold value, and avoid the error of the single-pass time delay calculation result.
The second device may acquire the target scene identifier, determine a target clock synchronization policy corresponding to the target scene identifier based on a corresponding relationship between the scene identifier and the clock synchronization policy, and enable the first device, the intermediate device and the second device to satisfy a clock synchronization condition based on the target clock synchronization policy, that is, enable a difference value between three timestamps generated by the clocks of the first device, the intermediate device and the second device at the same time to be smaller than a preset threshold.
S208: the intermediate device obtains a fourth message based on the first time identifier, the second time identifier, the third time identifier, the fourth time identifier and the fifth time identifier.
The fourth message is a message sent by the intermediate device to the first device, the fourth message at least comprises a fourth time identifier, when the intermediate device sends the fourth message, a corresponding time identifier, such as a fifth time identifier, is obtained, and the fifth time identifier is used for identifying the time when the intermediate device receives the third message for the ith time.
With continued reference to fig. 5, the third packet includes a first field, a second field, a third field, a fourth field, and a fifth field, where the first field is written with a first time identifier, the second field is written with a second time identifier, the third field is written with a third time identifier, the fourth field is written with a fourth time identifier, and the fifth field is empty, and then the fifth time identifier can be written in the fifth field on the basis of the third packet, and the obtained packet is the fourth packet.
As a possible implementation manner, as can be seen from the foregoing, if the second device is responsible for calculating the second network delay, the third packet received by the intermediate device may only include the fourth time identifier, and the obtained fourth packet may only include the fourth time identifier and the fifth time identifier. As one possible implementation, the intermediary device may determine the third network delay for the ith time based on the fourth time identification and the fifth time identification.
S209: the intermediate device sends a fourth message to the first device.
S210: the first device obtains a sixth time identifier.
Continuing to refer to fig. 3, the intermediate device sends a fourth message to the first device for the ith time, where the fourth message includes a fifth time identifier. The first device may obtain the sixth time identifier when receiving the fourth message, that is, the time when the first device receives the fourth message for the ith time. Thus, the first device or other device may determine a fourth network delay for the ith time based on the fifth time identification and the sixth time identification.
As can be seen from the above technical solutions (S201-S209), in the process that the first device performs data transmission with the second device through the intermediate device, the time identifier of each stage may be obtained based on the packet, and the first network delay, the second network delay, the third network delay, and the fourth network delay may be determined, where the sum of the first network delay, the second network delay, the third network delay, and the fourth network delay is a round trip delay. Compared with the method for calculating the round trip delay only, the method for calculating the round trip delay of the network has the advantages that the network delay at each stage of the same link is thinned, the accuracy, the comprehensiveness and the convenience are realized, and the application range of an application scene is enlarged. In addition, a plurality of time delay identifications are written into the same message, and any equipment can calculate the corresponding network time delay based on the message, so that the method is convenient and quick.
As a possible implementation manner, in order to reduce the equipment transformation cost, the network delay can be calculated in the intermediate equipment, that is, all network delays are placed in the intermediate equipment for calculation, based on this, the first message can include not only a first time identifier, an eighth time identifier, a ninth time identifier, a tenth time identifier, an eleventh time identifier and a twelfth time identifier, where the seventh time identifier is used for identifying a time when the first equipment i-1 sends the first message, the eighth time identifier is used for identifying a time when the intermediate equipment i-1 sends the second message to the second equipment, the ninth time identifier is used for identifying a time when the second equipment i-1 receives the second message, the tenth time identifier is used for identifying a time when the second equipment i-1 sends the third message to the intermediate equipment, the eleventh time identifier is used for identifying a time when the intermediate equipment i-1 receives the third message, and the twelfth time identifier is used for identifying a time when the first equipment i-1 receives the fourth message.
It will be understood that, although the first message, the second message, the third message, and the fourth message may include not only the time identifiers corresponding to the two adjacent message transmissions (i.e., the time identifiers corresponding to the i-1 st and i-th message transmissions), but also any two time identifiers corresponding to the two message transmissions, such as the time corresponding to the i-2 nd and i-th message transmissions.
With continued reference to fig. 3, in the process of sending data for the i-1 th time, the first device sends a first message to the intermediate device, where the first message is obtained based on a seventh time identifier, and the seventh time identifier is the time when the first device sends the first message to the intermediate device for the i-1 th time. Similarly, the intermediate device sends a second message to the second device for the ith-1 time, wherein the second message is obtained based on the seventh time identifier and the eighth time identifier; the second device sends a third message to the intermediate device for the i-1 th time, wherein the third message is obtained at least based on the tenth time identifier, and can also be obtained based on the seventh time identifier, the eighth time identifier, the ninth time identifier and the tenth time identifier. The intermediate device sends a fourth message to the first device for the i-1 th time, wherein the fourth message is obtained at least based on the tenth time identifier and the eleventh time identifier, and can also be obtained based on the seventh time identifier, the eighth time identifier, the ninth time identifier, the tenth time identifier and the eleventh time identifier, and the like.
As a possible implementation manner, the first packet, the second packet, the third packet and the fourth packet may each include at least 12 fields, respectively a first field-a twelfth field, each field being used for writing a time identifier. As a possible implementation manner, since the message includes the time identifier corresponding to the two sending messages, the order of the two fields for identifying the message may be further increased, so as to improve the readability of the message.
Referring to fig. 6, a schematic diagram of a message format according to an embodiment of the present application is shown. In fig. 6, 14 fields are included, where the first field is used to write the sequence number of the i-1 th transmitted message, the second field-seventh field is used to write the seventh time identifier-twelfth time identifier, the eighth field is used to write the sequence number of the i-th transmitted message, and the ninth field-fourteenth field is used to write the first time identifier-sixth time identifier. The following is a description in connection with table 1.
TABLE 1
For example, in table 1, the first message includes a seventh time identifier, a twelfth time identifier, and a first time identifier, a first field of the first message is written into a sequence number of the i-1 st transmitted message, a second field is written into the seventh time identifier, a ninth field is written into the first time identifier, and the tenth field, and the fourteenth field are empty. For another example, in table 1, the third field of the third message is written with the eighth time identifier, the eleventh field is written with the third time identifier, the thirteenth field and the fourteenth field are null, and so on.
As a possible implementation manner, in the packet load shown in fig. 6, the sequence number may occupy 4 bytes, then each field (the field for storing the time identifier) except the sequence number may occupy 8 bytes, so that the entire packet load has 104 bytes, and is lighter, and in the test process, each packet is not mixed with data related to the service, and does not affect the normal service.
After setting the data written in each field in each packet, the intermediate device may acquire the first packet for the ith time, where the first packet includes a seventh time identifier (e.g. identified as T1), an eighth time identifier (e.g. identified as T2), a ninth time identifier (e.g. identified as T3), a tenth time identifier (e.g. identified as T4), an eleventh time identifier (e.g. identified as T5), and a twelfth time identifier (e.g. identified as T6) related to the ith transmission packet, and may calculate a network delay corresponding to the ith transmission packet after the first packet is acquired for the ith time, where the calculation method is as follows:
Delay_UE_MD=T2-T1;
Delay_MD_AS=T3-T2;
Delay_AS_MD=T5-T4;
Delay_MD_UE=T6-T5;
wherein Delay represents a network Delay, UE represents a first device, MD represents an intermediate device, AS represents a second device, delay_ue_md represents a first network Delay for the i-1 th time, delay_md_as represents a second network Delay for the i-1 th time, delay_as_md represents a third network Delay for the i-1 th time, delay_md_ue represents a fourth network Delay for the i-1 th time.
According to the technical scheme, the first message not only comprises the time identifier (first time identifier) corresponding to the ith sending message, but also comprises the time identifier (seventh time identifier-twelfth time identifier) corresponding to the ith-1 sending message, so that the intermediate device can calculate the network delay (the first network delay aiming at the ith-1 time and the fourth network delay aiming at the ith-1 time) corresponding to the ith-1 sending message based on the time identifier corresponding to the ith-1 sending message after the first message is received for the ith time. Therefore, network delay at each stage of the same link is thinned, the application range of an application scene is enlarged, network delay calculation can be centralized in intermediate equipment instead of being distributed into any two or three of first equipment, intermediate equipment and second equipment, and hardware transformation cost is reduced.
As a possible implementation manner, while the first device acquires the fourth message, the first device may use the timestamp acquired from the local at the same time as the sixth time identifier, and write the sixth time identifier into the fourth message. In order to reduce the transmission amount of data, improve the transmission speed of data and determine the rapidity of network delay, the time mark related to the i-1 th transmission message can be cleared before the next round of transmission of the message, the time mark related to the i-1 th transmission message is reserved, then the time mark related to the i-1 th transmission message is used as a new time mark related to the i-1 th transmission message, and the time mark related to the i+1 th transmission message is used as a new time mark related to the i-1 th transmission message.
Continuing with the example of Table 1, assume that a message is sent once for 1 second. If i=10, the first message sent 10 th time may be represented as 9,1,2,3,4,5,6,10,7, empty, null; the fourth message may be denoted 9,1, 2,3,4,5,6,10,7,8,9,10,11,12. Wherein 9 denotes a serial number of 9,1 denotes a seventh time mark of first second, 10 denotes a serial number of 10, and 7 denotes a first time mark of seventh second. When i is changed from 10 to 11, reserving a ninth field-a fourteenth field in the fourth message and taking the ninth field-the fourteenth field as a second field-a seventh field in a first message sent next (11 th time), wherein the first message sent 11 th time can be represented as 10,7,8,9,10,11,12,11,13, empty, null, empty and null; the fourth message may be denoted 10,7,8,9,10,11,12,11,13,14,15,16,17,18.
As a possible implementation manner, since the intermediate device can acquire all the time identifiers related to the i-1 th transmission message, clock drift verification can be implemented based on the time identifiers related to the i-1 th transmission message, so that the reference difference of the time identifiers acquired by the three devices for the i-th time is not large, that is, the first device, the intermediate device and the second device satisfy the clock synchronization condition.
Where clock drift refers to several related phenomena in which a clock does not run at exactly the same rate as its reference clock. This means that after a period of time the clock will "leave" or gradually become unsynchronized with the other clocks. All clocks may drift and eventually diverge if not resynchronized. Or, if clock drift occurs, the first device, the intermediate device and the second device may not meet the clock synchronization condition. Based on this, in order to avoid clock drift, the intermediate device may first determine whether clock drift occurs at present before sending the second message, if so, correct the second message based on the clock synchronization policy, and if not, directly send the second message. The following is a detailed description.
If the first network delay for the i-1 th time is greater than the first network delay threshold, the second network delay for the i-1 th time is greater than the second network delay threshold, the third network delay for the i-1 th time is greater than the third network delay threshold or the fourth network delay for the i-1 th time is greater than the fourth network delay threshold, that is, any one of the four network delays for the i-1 th time exceeds the corresponding preset network delay threshold, it is indicated that clock drift currently occurs, correction is needed, for example, correction is performed based on the clock synchronization strategy, so that after the first device, the intermediate device and the second device are determined to meet the clock synchronization condition, a second message is obtained based on the first message and the second time identifier, and the second message is sent to the second device.
If the first network delay for the i-1 th time is smaller than or equal to the first network delay threshold, the second network delay for the i-1 th time is smaller than or equal to the second network delay threshold, the third network delay for the i-1 th time is smaller than or equal to the third network delay threshold, and the fourth network delay for the i-1 th time is smaller than or equal to the fourth network delay threshold, namely, all network delays in the four network delays for the i-1 th time are smaller than or equal to the corresponding preset network delay threshold, the fact that clock drift does not occur currently is described, correction is not needed, a second message is obtained based on the first message and the second time mark, and the second message is sent to the second device.
The embodiment of the application is not particularly limited to the first network delay threshold, the second network delay threshold, the third network delay threshold and the fourth network delay threshold, and can be set according to actual needs by a person skilled in the art.
Therefore, the intermediate device can acquire all the time identifiers related to the i-1 th transmission message, so that clock drift verification can be realized based on the time identifiers related to the i-1 th transmission message, so that the first device, the intermediate device and the second device can meet clock synchronization conditions, and the accuracy of subsequent network delay determination can be ensured.
As a possible implementation manner, in the process that the first device transmits data to the second device through the intermediate devices, there may be multiple intermediate devices, and the multiple intermediate devices may be regarded as one intermediate device, and a time identifier (such as the second time identifier, the fifth time identifier, etc.) is set as the time of receiving or sending the message by the intermediate device. Corresponding time identifiers can also be respectively set for each intermediate device so as to further refine network delay of each stage in the intermediate device. The following description will take an example in which the intermediate device includes a first intermediate device and a second intermediate device.
S2031: the first intermediate device obtains a first sub-message based on the first time identifier and the first sub-time identifier.
It is understood that the first device sends the first message to a first intermediate device included in the intermediate device. The first intermediate device receives a first message from the first device and acquires a first time identifier from the first message.
The first sub-time identifier is used for identifying the time of the ith transmission of the first sub-message to the second intermediate device by the first intermediate device, and the first intermediate device obtains the first sub-message based on the first message and the first sub-time identifier so as to transmit the first sub-message to the second intermediate device.
S2032: the first intermediate device sends a first sub-message to the second intermediate device.
S2033: the second intermediate device receives the first sub-message.
S2034: and the second intermediate equipment obtains a second sub-message based on the first time identifier, the first sub-time identifier and the second sub-time identifier.
The second sub-time identifier is used to identify a second intermediate device amount to which the second device sent the second sub-message. The second time identifier includes a first sub-time identifier and a second sub-time identifier.
S2034: the second intermediate device sends a second sub-message to the second device.
At this time, it should be noted that, the time when the first device sends the first message to the first intermediate device is the first time identifier, and the time when the second device receives the second sub-message is the third time identifier.
Thus, a first sub-network delay for the ith time may be determined based on the first time identification and the first sub-time identification, a second sub-network delay for the ith time may be determined based on the first sub-time identification and the second sub-time identification, and a third sub-network time for the ith time may be determined based on the second sub-time identification and the third time identification. The first sub-network time delay refers to time required by the first device to transfer data to the first intermediate device for the ith time, the second sub-network time delay refers to time required by the first intermediate device to transfer data to the second intermediate device for the ith time, and the third sub-network time delay refers to time required by the second intermediate device to transfer data to the second device for the ith time. Thereby further refining the network delay of each stage in the interior of the intermediate equipment and expanding the application range of the application scene.
As a possible time manner, fields required for writing network delay can be added in the message in the foregoing manner, so that any device (such as a second intermediate device in the intermediate devices) can be used to calculate all network delays based on one message, which is convenient and fast.
As a possible implementation manner, after the first network delay, the second network delay, the third network delay or the fourth network delay are obtained, the first network delay, the second network delay, the third network delay or the fourth network delay may be used as training data to train to obtain a network delay prediction network, where the network delay prediction network is used for predicting the network delay among the first device, the intermediate device and the second device. For example, the network delay acquired yesterday is used as training data, so that the network delay prediction network can learn the characteristics of the network delay of each time period, and then predict the network delay of today.
As a possible implementation manner, after the first network delay, the second network delay, the third network delay or the fourth network delay are obtained, the method can be used for detecting the network delay corresponding to the network formed by the first device, the intermediate device and the second device, so that the design and configuration of the network are optimized in a targeted manner, and the reliability and performance of the network are improved. As one possible implementation manner, the network delay calculated by the intermediate device may be opened to the user (may be referred to as an API of the UPF capability opening platform) through an application programming interface (Application Programming Interface, API) based on the user plane protocol processing function (User Plane Function, UPF) capability opening technology, so that the user may specifically optimize the design and configuration of the network based on the network delay of each stage.
The UPF capability opening technology refers to opening up the UPF to third party developers so that they can build their own applications and services on the UPF. The UPF is an important component in the 5G core network, and is responsible for processing user data packets and providing network functions such as flow control. By opening UPF capabilities, third party developers can build their own applications and services more easily, thereby facilitating the development of 5G ecosystems. The use of UPF capability opening techniques is very widespread, for example: third party developers may build their own applications and services on the UPF, such as network acceleration, content distribution, security policies, etc. As another example, an operator may provide more service and application options, such as video streaming media, games, virtual reality, etc., to a user by opening UPF capabilities. For another example, device manufacturers may provide more network functions and services to devices, such as smart homes, smart cars, etc., by opening UPF capabilities.
Referring to fig. 7, the application diagram of a method for determining network delay according to an embodiment of the present application is shown. In fig. 7, a UPF network element is an intermediate device provided by the embodiment of the present application, and is responsible for detecting, modifying and forwarding a UDP packet, clock synchronization, and calculating network delay. The calculation result can be respectively used as an API of a UPF capability open platform and used as a support for training of a network delay prediction network. Based on the architecture of fig. 7, the development and evolution trend towards service, platform and application can be realized, and the development of the current network capability has a certain reference value. Meanwhile, the ecological support device has good ecological support capability for projects with high requirements on network quality, such as network management, operation and maintenance, industrial Internet, intelligent transportation, automatic driving and the like.
Therefore, after the first network delay, the second network delay, the third network delay or the fourth network delay are obtained, the method can be used for positioning the network quality problems from the right direction and multiple views based on the network delay corresponding to each stage of the network formed by the first equipment, the intermediate equipment and the second equipment, so that the design and configuration of the network are optimized in a targeted manner, the reliability and performance of the network are improved, and the use experience of a user is improved.
In order to facilitate further understanding of the technical solution provided by the embodiments of the present application, an overall exemplary description of a method for determining network delay provided by the embodiments of the present application is provided below with reference to fig. 8.
Referring to fig. 8, the application scenario of a method for determining network delay according to an embodiment of the present application is shown. In fig. 8, the UE end is a first device, the base station, the MEC, and the UPF are equivalent to intermediate devices, and the campus network and the internet service are both second devices. In addition, fig. 8 further includes a clock domain and a communication domain, where the clock domain is based on a clock synchronization policy, so that the first device, the intermediate device and the second device meet clock synchronization conditions, so as to ensure clock consistency between the devices, and reduce errors of single-pass delay calculation results. The communication domain is for enabling data communication, i.e. data interaction between devices. The following is a detailed description.
The MEP is a multi-access edge computing platform, and Iaas is generally called Infrastructure as a server, i.e. infrastructure as a service. Application (APP) is based on intranet internet in a park, and the external network and the internal network are isolated based on a firewall.
The interaction between the first device, the intermediate device and the second device is explained below.
S1: the first device obtains a target scene identification.
S2: the first device determines a target clock synchronization strategy corresponding to the target scene identifier based on the corresponding relation between the scene identifier and the clock synchronization strategy.
S3: the first device enables the first device, the intermediate device and the second device to meet clock synchronization conditions according to a target clock synchronization strategy.
It will be appreciated that the clock synchronization strategy is such that the smaller the error in the clocks between the first device, the intermediate device and the second device, the more accurate the result of the network delay that follows.
S4: the first device constructs a first message based on the message format shown in fig. 6.
The first message comprises a sequence number of the i-1 th message, a seventh time identifier, a twelfth time identifier, a sequence number of the i-th message and a first time identifier, wherein the seventh time identifier, the twelfth time identifier and the first time identifier are respectively written into a first field, a sixth field and the first time identifier is written into the seventh field.
S5: the first device sends a first message to the intermediate device.
S6: the intermediate device obtains a second message based on the time identifier and the second time identifier included in the first message.
The eighth field of the second message is no longer empty compared to the first message, but is written with the second time identifier.
S7: the intermediate device obtains a first network delay, a second network delay, a third network delay and a fourth network delay corresponding to the ith sending message based on the seventh time identifier-twelfth time identifier.
S8: the intermediate device determines whether the intermediate device has time drift based on the first network delay, the second network delay, the third network delay and the fourth network delay corresponding to the ith transmission message.
For example, if the first network delay is negative, the intermediate device experiences a time drift.
S9: if the intermediate device is determined to have time offset, the intermediate device enables the first device, the intermediate device and the second device to meet clock synchronization conditions based on a target clock synchronization strategy.
S10: if the intermediate device is determined not to have time offset, the intermediate device sends a second message to the second device.
S11: the second device obtains a third message based on the time identifier, the third time identifier and the fourth time identifier included in the second message.
In contrast to the second message, the ninth field and the tenth field of the third message are no longer blank, but are written with a third time identifier and a fourth time identifier, respectively.
S12: and the second device sends a third message to the intermediate device after ensuring that the first device, the intermediate device and the second device meet the clock synchronization condition.
S13: the intermediate device obtains a fourth message based on the time identifier and the fifth time identifier included in the third message.
S14: the intermediate device sends a fourth message to the first device.
S15: the first device generates a first message required for the (i+1) -th message transmission based on the fourth message and the sixth time identifier.
It can be understood that, in the first message required for the (i+1) th transmission message, the seventh time identifier-the twelfth time identifier are the first time identifier-the sixth time identifier corresponding to the (i) th transmission message. And continuously filling the time identifier into the field corresponding to the message, so that the intermediate equipment calculates the network delay of each stage.
The scheme is used for testing and verifying in a 5G core network scene, UPF network elements are used as intermediate equipment, a 5G mobile phone is used as first equipment, and an intranet deployed server is used as second equipment. The UDP packet identification and modified forwarding of UPF and the four-stage single pass delay computation (first network delay-fourth network delay) functionality may be developed based on a data plane development suite (Data Plane Development Kit, DPDK) and VPP framework (an extensible framework) to enable communication between three devices.
The VPP framework is used as a high-performance network data plane framework, and can realize high-speed data packet processing on general hardware. The VPP framework supports various network protocols and packet formats, such as IPv4 (fourth version of the internet protocol), 1Pv6 (sixth version of the internet protocol), TCP (an industrial communication protocol based on the TCP/IP protocol stack), UDP, ICMP (Internet Control Message Protocol, internet control protocol), etc. In addition, the VPP framework supports a variety of packet processing functions including routing, forwarding, ACL (Access Control List ), etc.
The VPP framework uses DPDK techniques to achieve high performance packet processing. DPDK is a packet processing framework in user space that enables high-speed packet processing on generic hardware to improve network performance and throughput. The DPDK technology uses a data packet processing framework of a user space, so that the expenditure and the limitation of an operating system kernel can be avoided, and the efficiency and the flexibility of data packet processing are improved. DPDK technology also supports a variety of hardware platforms and network interfaces. In the 5G core network used in the embodiment of the application, a DPDK is used for taking over an intel network card, and then a VPP framework is developed on the interface network card.
Referring to fig. 9, a schematic diagram of a test result according to an embodiment of the present application is shown. The test result can be displayed at the first equipment end, namely, the calculation result of network time delay is opened to a user based on the UPF capability open platform. In fig. 9, T7 is a seventh time identifier, T8 is an eighth time identifier, T9 is a ninth time identifier, T10 is a tenth time identifier, T11 is an eleventh time identifier, and T12 is a twelfth time identifier. And obtaining the first network time delay-fourth network time delay corresponding to the i-1 th transmission message based on the six time identifiers. T1 is the first time mark, T2 is the second time mark, T3 is the third time mark, T4 is the fourth time mark, T5 is the fifth time mark, and T6 is the sixth time mark. The values corresponding to the first network delay-the fourth network delay are not shown in fig. 9. In addition, a receiving port, a local IP (unique address), a destination IP, and a destination port may also be displayed. It will be appreciated that the content displayed for the user may be set based on actual needs.
Therefore, the embodiment of the application can realize the method for determining the time delay of the four-section uplink and downlink network aiming at the network full-link communication based on simple UDP communication, not only proves the effectiveness and feasibility of the method, but also ensures that the calculation of the network time delay is more accurate, comprehensive and convenient, has higher scene migration capability and technical universality, and can be used in the scenes of 5G networks, wireless networks, mobile Internet and the like.
Aiming at the method for determining the network delay, the application also provides a corresponding device for determining the network delay, so that the method for determining the network delay is practically applied and realized.
Referring to fig. 10, the structure of a network delay determining device according to an embodiment of the present application is shown. As shown in fig. 10, the network delay determining device 1000 is built in an intermediate device, and the network delay determining device 1000 includes: a receiving unit 1001, a constructing unit 1002, and a transmitting unit 1003;
the receiving unit 1001 is configured to receive a first packet from a first device, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when the first device sends the first packet for the ith time, and i is an integer greater than 0;
the constructing unit 1002 is configured to obtain a second packet based on the first time identifier and a second time identifier, where the second time identifier is used to identify a time when the intermediate device sends the second packet to a second device for the ith time;
the sending unit 1003 is configured to send the second message to the second device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, and the third time identifier is used for identifying time of the second equipment for receiving the second message for the ith time.
According to the technical scheme, in the process that the first equipment sends the message to the second equipment through the intermediate equipment, the first equipment sends the first message to the intermediate equipment for the ith time, and the first message comprises a first time identifier, namely the time of the first equipment sending the first message for the ith time. After the intermediate device receives the first message, a second message is obtained based on the first time identifier and the second time identifier, wherein the second time identifier is used for identifying the time when the intermediate device sends the second message to the second device for the ith time. The time required by the first device to transfer data to the intermediate device for the ith time, namely the first network delay, can be determined based on the first time identifier and the second time identifier. The intermediate device sends the second message to the second device for the ith time, and after the second device receives the second message, a third time identifier, namely a time for identifying the second device for the ith time to receive the second message is generated, so that the time required by the intermediate device for the ith time to transmit data to the second device, namely the second network time delay, can be determined based on the second time identifier and the third time identifier. Therefore, in the process that the first equipment performs data transmission through the intermediate equipment and the second equipment, the time identification of each stage can be obtained based on the message, so that the network time delay between the sending end (the first equipment) and the receiving end (the second equipment) can be determined, the network time delay between the sending end and the intermediate equipment and the network time delay between the intermediate equipment and the receiving end can be determined, the network time delay of each stage of the same link is further thinned, and the application range of an application scene is enlarged.
As a possible implementation manner, the receiving unit 1001 is further configured to receive a third packet from the second device, where the third packet includes the first time identifier, the second time identifier, the third time identifier, and a fourth time identifier, and the fourth time identifier is used to identify a time when the second device sends the third packet for the ith time;
the construction unit 1002 is further configured to obtain a fourth packet based on the first time identifier, the second time identifier, the third time identifier, the fourth time identifier, and a fifth time identifier, where the fifth time identifier is used to identify a time when the intermediate device receives the third packet for the ith time;
the sending unit 1003 is further configured to send the fourth packet to the first device;
the fourth time identifier and the fifth time identifier are used for determining a third network time delay aiming at the ith time, the fifth time identifier and the sixth time identifier are used for determining a fourth network time delay aiming at the ith time, the third network time delay is the time required by the second equipment to transmit data to the intermediate equipment, the fourth time delay is the time required by the intermediate equipment to transmit data to the first equipment, and the sixth time identifier is used for identifying the time of the first equipment to receive the fourth message for the ith time.
As one possible implementation manner, the first packet further includes a seventh time identifier, an eighth time identifier, a ninth time identifier, a tenth time identifier, an eleventh time identifier, and a twelfth time identifier, where the seventh time identifier is used to identify a time when the first device is ith-1 to send the first packet to the intermediate device, the eighth time identifier is used to identify a time when the intermediate device is ith-1 to send the second packet to the second device, the ninth time identifier is used to identify a time when the second device is ith-1 to receive the second packet, the tenth time identifier is used to identify a time when the second device is ith-1 to send the third packet to the intermediate device, the eleventh time identifier is used to identify a time when the intermediate device is ith-1 to receive the third packet, and the twelfth time identifier is used to identify a time when the first device is ith-1 to receive the fourth packet; the network delay determining device 1000 further includes a calculating unit, configured to:
after receiving a first message from a first device, determining a first network delay for the i-1 th time according to the seventh time identifier and the eighth time identifier; determining a second network delay for the i-1 th time according to the eighth time identifier and the ninth time identifier; determining a third network delay for the i-1 th time according to the tenth time identifier and the eleventh time identifier; and determining fourth network time delay for the i-1 th time according to the eleventh time identifier and the twelfth time identifier.
As a possible implementation manner, the construction unit 1002 is specifically configured to obtain, after determining that the first device, the intermediate device, and the second device meet a clock synchronization condition, a second packet based on the first time identifier and the second time identifier if the first network delay for the i-1 th time is greater than a first network delay threshold, the second network delay for the i-1 th time is greater than a second network delay threshold, the third network delay for the i-1 th time is greater than a third network delay threshold, or the fourth network delay for the i-1 th time is greater than a fourth network delay threshold;
and if the first network delay for the i-1 th time is smaller than or equal to the first network delay threshold, the second network delay for the i-1 th time is smaller than or equal to the second network delay threshold, the third network delay for the i-1 th time is smaller than or equal to the third network delay threshold, and the fourth network delay for the i-1 th time is smaller than or equal to the fourth network delay threshold, obtaining a second message based on the first time identifier and the second time identifier.
As a possible implementation manner, the receiving unit 1001 is specifically configured to receive a packet from the first device; and if the port included in the message is a preset port, determining that the message is the first message.
As a possible implementation manner, the receiving unit 1001 is specifically configured to receive a packet from the first device; and acquiring the first time identifier from the message based on a preset field rule to obtain a first message comprising the first time identifier.
As a possible implementation manner, the network delay determining device 1000 further includes an adjusting unit, configured to:
acquiring a target scene identifier, wherein the target scene identifier is used for identifying an application scene where the intermediate equipment is located;
determining a target clock synchronization strategy corresponding to the target scene identifier based on the corresponding relation between the scene identifier and the clock synchronization strategy;
and according to the target clock synchronization strategy, enabling the first equipment, the intermediate equipment and the second equipment to meet clock synchronization conditions.
As a possible implementation manner, if the intermediate device includes a first intermediate device and a second intermediate device, the second time identifier includes a first sub-time identifier and a second sub-time identifier, where the first sub-time identifier is used to identify a time when the first intermediate device sends the first sub-message to the second intermediate device for the ith time, and the second sub-time identifier is used to identify a time when the second intermediate device sends the second sub-message to the second device for the ith time, and the construction unit 1002 is specifically configured to obtain the first sub-message by using the first intermediate device based on the first time identifier and the first sub-time identifier;
The first intermediate device sends the first sub-message to the second intermediate device;
the second intermediate device receives the first sub-message;
the second intermediate device obtains a second sub-message based on the first time identifier, the first sub-time identifier and the second sub-time identifier;
the sending unit 1003 is specifically configured to send, by the second intermediate device, the second sub-packet to the second device;
the first time identifier and the first sub-time identifier are used for determining a first sub-network delay for the ith time, the first sub-time identifier and the second sub-time identifier are used for determining a second sub-network delay for the ith time, and the second sub-time identifier and the third time identifier are used for determining a third sub-network delay for the ith time.
As one possible implementation manner, the first network delay for the ith time and the second network delay for the ith time are used for training a network delay prediction network, and the network delay prediction network is used for predicting network delays among the first device, the intermediate device and the second device; or alternatively, the process may be performed,
the first network time delay aiming at the ith time and the second network time delay aiming at the ith time are used for detecting network time delays corresponding to a network formed by the first equipment, the intermediate equipment and the second equipment.
Referring to fig. 11, the structure of a network delay determining device according to an embodiment of the present application is shown. The network delay determining apparatus 1100 is built in the first device, as shown in fig. 11, and the network delay determining apparatus 1100 includes: a generating unit 1101 and a transmitting unit 1102;
the generating unit 1101 is configured to generate a first packet, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when the first device sends the first packet for the ith time, and i is an integer greater than 0;
the sending unit 1102 is configured to send the first packet to an intermediate device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, the second time identifier is used for identifying time of the intermediate equipment to transmit the second message to the second equipment for the ith time, and the third time identifier is used for identifying time of the second equipment to receive the second message for the ith time.
According to the technical scheme, in the process that the first equipment sends the message to the second equipment through the intermediate equipment, the first equipment sends the first message to the intermediate equipment for the ith time, and the first message comprises a first time identifier, namely the time of the first equipment sending the first message for the ith time. After the intermediate device receives the first message, a second message is obtained based on the first time identifier and the second time identifier, wherein the second time identifier is used for identifying the time when the intermediate device sends the second message to the second device for the ith time. The time required by the first device to transfer data to the intermediate device for the ith time, namely the first network delay, can be determined based on the first time identifier and the second time identifier. The intermediate device sends the second message to the second device for the ith time, and after the second device receives the second message, a third time identifier, namely a time for identifying the second device for the ith time to receive the second message is generated, so that the time required by the intermediate device for the ith time to transmit data to the second device, namely the second network time delay, can be determined based on the second time identifier and the third time identifier. Therefore, in the process that the first equipment performs data transmission through the intermediate equipment and the second equipment, the time identification of each stage can be obtained based on the message, so that the network time delay between the sending end (the first equipment) and the receiving end (the second equipment) can be determined, the network time delay between the sending end and the intermediate equipment and the network time delay between the intermediate equipment and the receiving end can be determined, the network time delay of each stage of the same link is further thinned, and the application range of an application scene is enlarged.
As a possible implementation manner, the generating unit 1101 is specifically configured to generate the first packet based on a user datagram protocol and the first time identifier.
As one possible implementation manner, the first packet further includes a seventh time identifier, an eighth time identifier, a ninth time identifier, a tenth time identifier, an eleventh time identifier, and a twelfth time identifier, where the seventh time identifier is used to identify a time when the first device is ith-1 to send the first packet to the intermediate device, the eighth time identifier is used to identify a time when the intermediate device is ith-1 to send the second packet to the second device, the ninth time identifier is used to identify a time when the second device is ith-1 to receive the second packet, the tenth time identifier is used to identify a time when the second device is ith-1 to send the third packet to the intermediate device, the eleventh time identifier is used to identify a time when the intermediate device is ith-1 to receive the third packet, and the twelfth time identifier is used to identify a time when the first device is ith-1 to receive the fourth packet;
the network delay determining apparatus 1100 further includes an adjusting unit, configured to:
Deleting the seventh time identifier, the eighth time identifier, the ninth time identifier, the tenth time identifier, the eleventh time identifier and the twelfth time identifier;
reserving the first time identifier, the second time identifier, the third time identifier, the fourth time identifier, the fifth time identifier and the sixth time identifier so as to take the first time identifier as the seventh time identifier, the second time identifier as the eighth time identifier, the third time identifier as the ninth time identifier, the fourth time identifier as the tenth time identifier, the fifth time identifier as the eleventh time identifier and the sixth time identifier as the twelfth time identifier.
As a possible implementation manner, the network delay determining apparatus 1100 further includes an adjusting unit, configured to:
acquiring a target scene identifier, wherein the target scene identifier is used for identifying an application scene where the intermediate equipment is located;
determining a target clock synchronization strategy corresponding to the target scene identifier based on the corresponding relation between the scene identifier and the clock synchronization strategy;
And according to the target clock synchronization strategy, enabling the first equipment, the intermediate equipment and the second equipment to meet clock synchronization conditions.
Referring to fig. 12, the structure of a network delay determining device according to an embodiment of the present application is shown. The network delay determining apparatus 1200 is built in with a second device, as shown in fig. 12, and the network delay determining apparatus 1200 includes: a receiving unit 1201 and an acquiring unit 1202;
the receiving unit 1201 is configured to receive a second packet from an intermediate device, where the second packet is determined based on a first packet and a second time identifier, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when a first device sends the first packet for the ith time, and the second time identifier is used to identify a time when the intermediate device sends the second packet for the ith time to the second device, where i is an integer greater than 0;
the acquiring unit 1202 is configured to acquire a third time identifier, where the third time identifier is used to identify a time when the second device receives the second message for the ith time;
the first time identifier and the second time identifier are used for determining a first network time delay for the ith time, the second time identifier and the third time identifier are used for determining a second network time delay for the ith time, the first network time delay is the time required by the first device to transfer data to the intermediate device, and the second network time delay is the time required by the intermediate device to transfer data to the second device.
According to the technical scheme, in the process that the first equipment sends the message to the second equipment through the intermediate equipment, the first equipment sends the first message to the intermediate equipment for the ith time, and the first message comprises a first time identifier, namely the time of the first equipment sending the first message for the ith time. After the intermediate device receives the first message, a second message is obtained based on the first time identifier and the second time identifier, wherein the second time identifier is used for identifying the time when the intermediate device sends the second message to the second device for the ith time. The time required by the first device to transfer data to the intermediate device for the ith time, namely the first network delay, can be determined based on the first time identifier and the second time identifier. The intermediate device sends the second message to the second device for the ith time, and after the second device receives the second message, a third time identifier, namely a time for identifying the second device for the ith time to receive the second message is generated, so that the time required by the intermediate device for the ith time to transmit data to the second device, namely the second network time delay, can be determined based on the second time identifier and the third time identifier. Therefore, in the process that the first equipment performs data transmission through the intermediate equipment and the second equipment, the time identification of each stage can be obtained based on the message, so that the network time delay between the sending end (the first equipment) and the receiving end (the second equipment) can be determined, the network time delay between the sending end and the intermediate equipment and the network time delay between the intermediate equipment and the receiving end can be determined, the network time delay of each stage of the same link is further thinned, and the application range of an application scene is enlarged.
As a possible implementation manner, the network delay determining apparatus 1200 further includes an adjusting unit, configured to:
acquiring a target scene identifier, wherein the target scene identifier is used for identifying an application scene where the intermediate equipment is located;
determining a target clock synchronization strategy corresponding to the target scene identifier based on the corresponding relation between the scene identifier and the clock synchronization strategy;
and according to the target clock synchronization strategy, enabling the first equipment, the intermediate equipment and the second equipment to meet clock synchronization conditions.
The embodiment of the application also provides a computer device, which is the computer device described above, the computer device can be a server or a terminal device, the network delay determining device can be built in the server or the terminal device, and the computer device provided by the embodiment of the application is described below from the perspective of hardware materialization. Fig. 13 is a schematic structural diagram of a server, and fig. 14 is a schematic structural diagram of a terminal device.
Referring to fig. 13, which is a schematic diagram of a server structure according to an embodiment of the present application, the server 1400 may have a relatively large difference between configurations or performances, and may include one or more processors 1422, such as a central processing unit (Central Processing Units, CPU), a memory 1432, one or more application programs 1442, or a storage medium 1430 (such as one or more mass storage devices) for data 1444. Wherein the memory 1432 and storage medium 1430 can be transitory or persistent storage. The program stored in the storage medium 1430 may include one or more modules (not shown), each of which may include a series of instruction operations on a server. Still further, a processor 1422 may be provided in communication with a storage medium 1430 to execute a series of instructions operations on the storage medium 1430 on the server 1400.
Server 1400 may also include one or more power supplies 1426, one or more wired or wireless network interfaces 1450, one or more input/output interfaces 1458, and/or one or more operating systems 1441, such as a Windows Server TM ,Mac OS X TM ,Unix TM , Linux TM ,FreeBSD TM Etc.
The steps performed by the server in the above embodiments may be based on the server structure shown in fig. 13.
Wherein, the CPU 1422 is configured to perform the following steps:
receiving a first message from a first device, wherein the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, and i is an integer greater than 0;
obtaining a second message based on the first time identifier and a second time identifier, wherein the second time identifier is used for identifying the time of sending the second message to a second device for the ith time by the intermediate device;
sending the second message to the second device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, and the third time identifier is used for identifying time of the second equipment for receiving the second message for the ith time.
Alternatively, the following steps are performed:
generating a first message, wherein the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, and i is an integer greater than 0;
sending the first message to an intermediate device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, the second time identifier is used for identifying time of the intermediate equipment to transmit the second message to the second equipment for the ith time, and the third time identifier is used for identifying time of the second equipment to receive the second message for the ith time.
Alternatively, the following steps are performed:
receiving a second message from an intermediate device, wherein the second message is determined based on a first message and a second time identifier, the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, the second time identifier is used for identifying the time of the intermediate device for sending the second message to the second device for the ith time, and i is an integer greater than 0;
Acquiring a third time identifier, wherein the third time identifier is used for identifying the time of the ith receiving of the second message by the second equipment;
the first time identifier and the second time identifier are used for determining a first network time delay for the ith time, the second time identifier and the third time identifier are used for determining a second network time delay for the ith time, the first network time delay is the time required by the first device to transfer data to the intermediate device, and the second network time delay is the time required by the intermediate device to transfer data to the second device.
Optionally, the CPU 1422 may further perform method steps of any specific implementation of the method for determining a network delay in an embodiment of the present application.
Referring to fig. 14, the structure of a terminal device according to an embodiment of the present application is shown. Fig. 14 is a block diagram showing a part of a structure of a smart phone related to a terminal device provided by an embodiment of the present application, where the smart phone includes: radio Frequency (RF) circuitry 1510, memory 1520, input unit 1530, display unit 1540, sensor 1550, audio circuitry 1560, wireless fidelity (WiFi) module 1570, processor 1580, power supply 1590, and the like. Those skilled in the art will appreciate that the smartphone structure shown in fig. 14 is not limiting of the smartphone and may include more or fewer components than shown, or may combine certain components, or a different arrangement of components.
The following describes each component of the smart phone in detail with reference to fig. 14:
the RF circuit 1510 may be used for receiving and transmitting signals during a message or a call, and particularly, after receiving downlink information of a base station, the signal is processed by the processor 1580; in addition, the data of the design uplink is sent to the base station.
The memory 1520 may be used to store software programs and modules, and the processor 1580 implements various functional applications and data processing of the smartphone by running the software programs and modules stored in the memory 1520.
The input unit 1530 may be used to receive input numerical or character information and generate key signal inputs related to user settings and function control of the smart phone. In particular, the input unit 1530 may include a touch panel 1531 and other input devices 1532. The touch panel 1531, also referred to as a touch screen, may collect touch operations on or near the user and drive the corresponding connection device according to a predetermined program. The input unit 1530 may include other input devices 1532 in addition to the touch panel 1531. In particular, other input devices 1532 may include, but are not limited to, one or more of a physical keyboard, function keys (e.g., volume control keys, switch keys, etc.), a trackball, mouse, joystick, etc.
The display unit 1540 may be used to display information input by a user or information provided to the user and various menus of the smart phone. The display unit 1540 may include a display panel 1541, and optionally, the display panel 1541 may be configured in the form of a liquid crystal display (Liquid Crystal Display, LCD), an Organic Light-Emitting Diode (OLED), or the like.
The smartphone may also include at least one sensor 1550, such as a light sensor, a motion sensor, and other sensors. Other sensors such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc. that may also be configured with the smart phone are not described in detail herein.
Audio circuitry 1560, speaker 1561, and microphone 1562 may provide an audio interface between a user and a smart phone. The audio circuit 1560 may transmit the received electrical signal converted from audio data to the speaker 1561, and be converted into a sound signal by the speaker 1561 for output; on the other hand, the microphone 1562 converts the collected sound signals into electrical signals, which are received by the audio circuit 1560 for conversion into audio data, which is processed by the audio data output processor 1580 for transmission to, for example, another smart phone via the RF circuit 1510 or for output to the memory 1520 for further processing.
Processor 1580 is a control center of the smartphone, connects various parts of the entire smartphone with various interfaces and lines, performs various functions of the smartphone and processes data by running or executing software programs and/or modules stored in memory 1520, and invoking data stored in memory 1520. In the alternative, processor 1580 may include one or more processing units.
The smart phone also includes a power source 1590 (e.g., a battery) for powering the various components, which may preferably be logically connected to the processor 1580 via a power management system, such as to provide for managing charging, discharging, and power consumption.
Although not shown, the smart phone may further include a camera, a bluetooth module, etc., which will not be described herein.
In an embodiment of the present application, the memory 1520 included in the smart phone may store program codes and transmit the program codes to the processor.
The processor 1580 included in the smart phone may execute the method for determining network delay provided in the foregoing embodiment according to instructions in the program code.
The embodiment of the application also provides a computer readable storage medium for storing a computer program for executing the method for determining network delay provided by the above embodiment.
Embodiments of the present application also provide a computer program product or computer program comprising computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions to cause the computer device to perform the method of determining network latency provided in various alternative implementations of the above aspects.
Those of ordinary skill in the art will appreciate that: all or part of the steps for implementing the above method embodiments may be implemented by hardware related to program instructions, where the above program may be stored in a computer readable storage medium, and when the program is executed, the program performs steps including the above method embodiments; and the aforementioned storage medium may be at least one of the following media: read-Only Memory (ROM), RAM, magnetic disk or optical disk, etc.
It should be noted that, in the present specification, each embodiment is described in a progressive manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment is mainly described in a different point from other embodiments. In particular, for the apparatus and system embodiments, since they are substantially similar to the method embodiments, the description is relatively simple, with reference to the description of the method embodiments in part. The apparatus and system embodiments described above are merely illustrative, in which elements illustrated as separate elements may or may not be physically separate, and elements shown as elements may or may not be physical elements, may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. Those of ordinary skill in the art will understand and implement the present application without undue burden.
The foregoing is only one specific embodiment of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions easily contemplated by those skilled in the art within the technical scope of the present application should be included in the scope of the present application. Further combinations of the present application may be made to provide further implementations based on the implementations provided in the above aspects. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims (20)

1. A method for determining a network delay, the method being applied to an intermediate device, the method comprising:
receiving a first message from a first device, wherein the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, and i is an integer greater than 0;
obtaining a second message based on the first time identifier and a second time identifier, wherein the second time identifier is used for identifying the time of sending the second message to a second device for the ith time by the intermediate device;
sending the second message to the second device;
The first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, and the third time identifier is used for identifying time of the second equipment for receiving the second message for the ith time.
2. The method according to claim 1, wherein the method further comprises:
receiving a third message from the second device, wherein the third message comprises the first time identifier, the second time identifier, the third time identifier and a fourth time identifier, and the fourth time identifier is used for identifying the time when the second device sends the third message for the ith time;
obtaining a fourth message based on the first time identifier, the second time identifier, the third time identifier, the fourth time identifier and a fifth time identifier, wherein the fifth time identifier is used for identifying the time of the ith receiving of the third message by the intermediate device;
Sending the fourth message to the first device;
the fourth time identifier and the fifth time identifier are used for determining a third network time delay aiming at the ith time, the fifth time identifier and the sixth time identifier are used for determining a fourth network time delay aiming at the ith time, the third network time delay is the time required by the second equipment to transmit data to the intermediate equipment, the fourth time delay is the time required by the intermediate equipment to transmit data to the first equipment, and the sixth time identifier is used for identifying the time of the first equipment to receive the fourth message for the ith time.
3. The method of claim 1, wherein the first message further comprises a seventh time identifier, an eighth time identifier, a ninth time identifier, a tenth time identifier, an eleventh time identifier, and a twelfth time identifier, wherein the seventh time identifier is used for identifying a time when the first device is i-1 th to send the first message to the intermediate device, the eighth time identifier is used for identifying a time when the intermediate device is i-1 th to send the second message to the second device, the ninth time identifier is used for identifying a time when the second device is i-1 th to receive the second message, the tenth time identifier is used for identifying a time when the second device is i-1 th to send the third message to the intermediate device, the eleventh time identifier is used for identifying a time when the intermediate device is i-1 th to receive the third message, and the twelfth time identifier is used for identifying a time when the first device is i-1 th to receive a fourth message;
After the first message is received from the first device, the method further includes:
determining a first network delay for the i-1 th time according to the seventh time identifier and the eighth time identifier; determining a second network delay for the i-1 th time according to the eighth time identifier and the ninth time identifier; determining a third network delay for the i-1 th time according to the tenth time identifier and the eleventh time identifier; and determining fourth network time delay for the i-1 th time according to the eleventh time identifier and the twelfth time identifier.
4. The method of claim 3, wherein the obtaining a second message based on the first time stamp and the second time stamp comprises:
if the first network delay for the i-1 th time is greater than a first network delay threshold, the second network delay for the i-1 th time is greater than a second network delay threshold, the third network delay for the i-1 th time is greater than a third network delay threshold or the fourth network delay for the i-1 th time is greater than a fourth network delay threshold, after determining that the first device, the intermediate device and the second device meet a clock synchronization condition, obtaining a second message based on the first time identifier and the second time identifier;
And if the first network delay for the i-1 th time is smaller than or equal to the first network delay threshold, the second network delay for the i-1 th time is smaller than or equal to the second network delay threshold, the third network delay for the i-1 th time is smaller than or equal to the third network delay threshold, and the fourth network delay for the i-1 th time is smaller than or equal to the fourth network delay threshold, obtaining a second message based on the first time identifier and the second time identifier.
5. The method of claim 1, wherein the receiving the first message from the first device comprises:
receiving a message from the first device;
and if the port included in the message is a preset port, determining that the message is the first message.
6. The method of claim 1, wherein the receiving the first message from the first device comprises:
receiving a message from the first device;
and acquiring the first time identifier from the message based on a preset field rule to obtain a first message comprising the first time identifier.
7. The method according to claim 1, wherein the method further comprises:
Acquiring a target scene identifier, wherein the target scene identifier is used for identifying an application scene where the intermediate equipment is located;
determining a target clock synchronization strategy corresponding to the target scene identifier based on the corresponding relation between the scene identifier and the clock synchronization strategy;
and according to the target clock synchronization strategy, enabling the first equipment, the intermediate equipment and the second equipment to meet clock synchronization conditions.
8. The method of claim 1, wherein if the intermediate device includes a first intermediate device and a second intermediate device, the second time identifier includes a first sub-time identifier and a second sub-time identifier, the first sub-time identifier is used to identify a time when the first intermediate device sends the first sub-message to the second intermediate device for the ith time, and the second sub-time identifier is used to identify a time when the second intermediate device sends the second sub-message to the second device for the ith time, and the obtaining the second message based on the first time identifier and the second time identifier includes:
the first intermediate device obtains a first sub-message based on the first time identifier and the first sub-time identifier;
The first intermediate device sends the first sub-message to the second intermediate device;
the second intermediate device receives the first sub-message;
the second intermediate device obtains a second sub-message based on the first time identifier, the first sub-time identifier and the second sub-time identifier;
the sending the second message to the second device includes:
the second intermediate device sends the second sub-message to the second device;
the first time identifier and the first sub-time identifier are used for determining a first sub-network delay for the ith time, the first sub-time identifier and the second sub-time identifier are used for determining a second sub-network delay for the ith time, and the second sub-time identifier and the third time identifier are used for determining a third sub-network delay for the ith time.
9. The method of any of claims 1-8, wherein the first network latency for the ith time and the second network latency for the ith time are used to train a network latency prediction network that is used to predict network latencies between the first device, the intermediate device, and the second device; or alternatively, the process may be performed,
The first network time delay aiming at the ith time and the second network time delay aiming at the ith time are used for detecting network time delays corresponding to a network formed by the first equipment, the intermediate equipment and the second equipment.
10. A method for determining a network delay, the method being applied to a first device, the method comprising:
generating a first message, wherein the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, and i is an integer greater than 0;
sending the first message to an intermediate device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, the second time identifier is used for identifying time of the intermediate equipment to transmit the second message to the second equipment for the ith time, and the third time identifier is used for identifying time of the second equipment to receive the second message for the ith time.
11. The method of claim 10, wherein generating the first message comprises:
and generating the first message based on the user datagram protocol and the first time identifier.
12. The method of claim 10, wherein the first message further comprises a seventh time identifier, an eighth time identifier, a ninth time identifier, a tenth time identifier, an eleventh time identifier, and a twelfth time identifier, wherein the seventh time identifier is used for identifying a time when the first device is i-1 th to send the first message to the intermediate device, the eighth time identifier is used for identifying a time when the intermediate device is i-1 th to send the second message to the second device, the ninth time identifier is used for identifying a time when the second device is i-1 th to receive the second message, the tenth time identifier is used for identifying a time when the second device is i-1 th to send the third message to the intermediate device, the eleventh time identifier is used for identifying a time when the intermediate device is i-1 th to receive the third message, and the twelfth time identifier is used for identifying a time when the first device is i-1 th to receive a fourth message; the method further comprises the steps of:
Deleting the seventh time identifier, the eighth time identifier, the ninth time identifier, the tenth time identifier, the eleventh time identifier and the twelfth time identifier;
reserving the first time identifier, the second time identifier, the third time identifier, the fourth time identifier, a fifth time identifier and a sixth time identifier so that the first time identifier is used as the seventh time identifier, the second time identifier is used as the eighth time identifier, the third time identifier is used as the ninth time identifier, the fourth time identifier is used as the tenth time identifier, the fifth time identifier is used as the eleventh time identifier and the sixth time identifier is used as the twelfth time identifier.
13. A method for determining a network delay, the method being applied to a second device, the method comprising:
receiving a second message from an intermediate device, wherein the second message is determined based on a first message and a second time identifier, the first message comprises a first time identifier, the first time identifier is used for identifying the time of the first device for sending the first message for the ith time, the second time identifier is used for identifying the time of the intermediate device for sending the second message to the second device for the ith time, and i is an integer greater than 0;
Acquiring a third time identifier, wherein the third time identifier is used for identifying the time of the ith receiving of the second message by the second equipment;
the first time identifier and the second time identifier are used for determining a first network time delay for the ith time, the second time identifier and the third time identifier are used for determining a second network time delay for the ith time, the first network time delay is the time required by the first device to transfer data to the intermediate device, and the second network time delay is the time required by the intermediate device to transfer data to the second device.
14. A network delay determination apparatus, wherein the apparatus is built in an intermediate device, the apparatus comprising: a receiving unit, a constructing unit and a transmitting unit;
the receiving unit is configured to receive a first packet from a first device, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when the first device sends the first packet for the ith time, and i is an integer greater than 0;
the construction unit is used for obtaining a second message based on the first time identifier and a second time identifier, and the second time identifier is used for identifying the time of the intermediate equipment for sending the second message to the second equipment for the ith time;
The sending unit is configured to send the second message to the second device;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, and the third time identifier is used for identifying time of the second equipment for receiving the second message for the ith time.
15. A network delay determination apparatus, wherein the apparatus is built in a first device, the apparatus comprising: a generation unit and a transmission unit;
the generating unit is configured to generate a first packet, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when the first device sends the first packet for the ith time, and i is an integer greater than 0;
the sending unit is used for sending the first message to the intermediate equipment;
the first time identifier and the second time identifier are used for determining a first network time delay aiming at the ith time, the second time identifier and the third time identifier are used for determining a second network time delay aiming at the ith time, the first network time delay is time required by the first equipment to transmit data to the intermediate equipment, the second network time delay is time required by the intermediate equipment to transmit data to the second equipment, the second time identifier is used for identifying time of the intermediate equipment to transmit the second message to the second equipment for the ith time, and the third time identifier is used for identifying time of the second equipment to receive the second message for the ith time.
16. A network delay determination apparatus, wherein the apparatus is built in a second device, the apparatus comprising: a receiving unit and an acquiring unit;
the receiving unit is configured to receive a second packet from an intermediate device, where the second packet is determined based on a first packet and a second time identifier, where the first packet includes a first time identifier, where the first time identifier is used to identify a time when a first device sends the first packet for the ith time, and the second time identifier is used to identify a time when the intermediate device sends the second packet for the ith time to the second device, where i is an integer greater than 0;
the acquiring unit is configured to acquire a third time identifier, where the third time identifier is used to identify a time when the second device receives the second message for the ith time;
the first time identifier and the second time identifier are used for determining a first network time delay for the ith time, the second time identifier and the third time identifier are used for determining a second network time delay for the ith time, the first network time delay is the time required by the first device to transfer data to the intermediate device, and the second network time delay is the time required by the intermediate device to transfer data to the second device.
17. A system for determining network delay, wherein the system comprises a first device, an intermediate device and a second device;
the first device for performing the method of any of claims 1-9;
the intermediate device for performing the method of any of claims 10-12;
the second device for performing the method of claim 13.
18. A computer device, the computer device comprising a processor and a memory:
the memory is used for storing a computer program and transmitting the computer program to the processor;
the processor is configured to perform the method of any one of claims 1-9, or the method of any one of claims 10-12, or the method of claim 13, according to the computer program.
19. A computer readable storage medium for storing a computer program for performing the method of any one of claims 1-9, or for performing the method of any one of claims 10-12, or for performing the method of claim 13.
20. A computer program product comprising a computer program, characterized in that it when run on a computer device causes the computer device to perform the method of any one of claims 1-9, or to perform the method of any one of claims 10-12, or to perform the method of claim 13.
CN202310866285.6A 2023-07-14 2023-07-14 Network time delay determining method and related device Active CN116599871B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310866285.6A CN116599871B (en) 2023-07-14 2023-07-14 Network time delay determining method and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310866285.6A CN116599871B (en) 2023-07-14 2023-07-14 Network time delay determining method and related device

Publications (2)

Publication Number Publication Date
CN116599871A true CN116599871A (en) 2023-08-15
CN116599871B CN116599871B (en) 2023-10-03

Family

ID=87612030

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310866285.6A Active CN116599871B (en) 2023-07-14 2023-07-14 Network time delay determining method and related device

Country Status (1)

Country Link
CN (1) CN116599871B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102215101A (en) * 2011-05-31 2011-10-12 中兴通讯股份有限公司 Time synchronization method and device
CN112787877A (en) * 2019-11-07 2021-05-11 华为技术有限公司 Network delay detection method and related equipment
CN113037415A (en) * 2021-02-25 2021-06-25 上海赫千电子科技有限公司 TSN (time delay network) clock synchronization method, system and equipment based on vehicle-mounted Ethernet transmission
WO2021135275A1 (en) * 2019-12-31 2021-07-08 华为技术有限公司 Delay determination method and apparatus, and network transmission system
CN114095397A (en) * 2020-07-31 2022-02-25 华为技术有限公司 Method, device and equipment for transmitting message and readable storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102215101A (en) * 2011-05-31 2011-10-12 中兴通讯股份有限公司 Time synchronization method and device
CN112787877A (en) * 2019-11-07 2021-05-11 华为技术有限公司 Network delay detection method and related equipment
WO2021135275A1 (en) * 2019-12-31 2021-07-08 华为技术有限公司 Delay determination method and apparatus, and network transmission system
CN113132173A (en) * 2019-12-31 2021-07-16 华为技术有限公司 Time delay determination method and device and network transmission system
CN114095397A (en) * 2020-07-31 2022-02-25 华为技术有限公司 Method, device and equipment for transmitting message and readable storage medium
CN113037415A (en) * 2021-02-25 2021-06-25 上海赫千电子科技有限公司 TSN (time delay network) clock synchronization method, system and equipment based on vehicle-mounted Ethernet transmission

Also Published As

Publication number Publication date
CN116599871B (en) 2023-10-03

Similar Documents

Publication Publication Date Title
US11888588B2 (en) Clock drift processing method, network element, and storage medium
EP3815328B1 (en) Scalable sockets for quic
CN110971329A (en) Techniques for managing internal time synchronization
CN106789526B (en) method and device for connecting multiple system networks
WO2015196685A1 (en) Clock synchronization method and apparatus
US20240069977A1 (en) Data transmission method and data transmission server
WO2015101203A1 (en) A method, a device, and a data transmission system for data transmission in a network system
CN114745255B (en) Hardware chip, DPU, server, communication method and related device
JP2016530591A (en) A parallelization method for agglomerative clustering of nonstationary data
EP4287591A1 (en) Data transmission method and apparatus, and server, storage medium and program product
US20170272190A1 (en) Time synchronization method and apparatus for network devices and time synchronization server
US20220393784A1 (en) Communication method, apparatus, and system
US20230354237A1 (en) Method and apparatus for determining transmission delay, device, and storage medium
Kölsch et al. Hardware-in-the-loop simulation for Internet of Things scenarios
CN103188171A (en) Message scheduling method and equipment
WO2021233313A1 (en) Port state configuration method, apparatus, system, and storage medium
CN116599871B (en) Network time delay determining method and related device
CN110708209A (en) Virtual machine flow acquisition method and device, electronic equipment and storage medium
EP4136809A1 (en) Distributed flow processing and flow cache
WO2015131617A1 (en) Flow table processing method, device, openflow controller and openflow switch
CN114884852B (en) Node interaction and protocol identification method, device, equipment and computer medium
CN117082152B (en) Service processing method, system and device
CN117560306B (en) Packet loss reporting method, network switch and related device
EP3886381A1 (en) Message processing method and apparatus
US11875687B2 (en) Multipathing for unmanned aerial vehicle traffic

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40091072

Country of ref document: HK