CN112205028A - Communication method and apparatus - Google Patents

Communication method and apparatus Download PDF

Info

Publication number
CN112205028A
CN112205028A CN201880093975.XA CN201880093975A CN112205028A CN 112205028 A CN112205028 A CN 112205028A CN 201880093975 A CN201880093975 A CN 201880093975A CN 112205028 A CN112205028 A CN 112205028A
Authority
CN
China
Prior art keywords
time
data packet
delay
preconfigured
processing
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
CN201880093975.XA
Other languages
Chinese (zh)
Other versions
CN112205028B (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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Publication of CN112205028A publication Critical patent/CN112205028A/en
Application granted granted Critical
Publication of CN112205028B publication Critical patent/CN112205028B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The embodiment of the application relates to a communication method and equipment, wherein the method comprises the following steps: the method comprises the steps that a first device receives a data packet, and the data packet carries a first timestamp set by a second device; based on the first timestamp, the first device determines a first latency of the data packet between the first device and the second device; based on the first time delay, the first device processes the data packet. The communication method and the communication device can achieve deterministic transmission of data.

Description

Communication method and apparatus Technical Field
The present application relates to the field of communications, and in particular, to a communication method and device.
Background
A fifth Generation mobile communication technology (5-Generation, 5G) system introduces deterministic transfer, where deterministic transfer may refer to when the processing of data at the time of communication is deterministic.
However, there is currently no clear specification as to how to achieve deterministic transmission of data.
Disclosure of Invention
The embodiment of the application provides a communication method and equipment, which can realize deterministic transmission of data.
In a first aspect, a communication method is provided, the method including: a first device receives a data packet, wherein the data packet carries a first timestamp set by a second device;
based on the first timestamp, the first device determining a first latency of the data packet between the first device and the second device;
and processing the data packet by the first equipment based on the first time delay.
In a second aspect, a communication method is provided, the method comprising: and the second equipment sends a data packet, wherein the data packet carries a first time stamp set by the second equipment, and the first time stamp is used for determining a first time delay between the first equipment and the second equipment.
In a third aspect, a communication device is provided for performing the method of the first aspect or its implementation manners.
In particular, the apparatus comprises functional modules for performing the method of the first aspect or its implementations described above.
In a fourth aspect, a communication device is provided for performing the method of the second aspect or its implementations.
In particular, the device comprises functional modules for performing the method of the second aspect or its implementations described above.
In a fifth aspect, a communication device is provided that includes a processor and a memory. The memory is used for storing a computer program, and the processor is used for calling and running the computer program stored in the memory, and executing the method in the first aspect or each implementation manner thereof.
In a sixth aspect, a communication device is provided that includes a processor and a memory. The memory is used for storing a computer program, and the processor is used for calling and running the computer program stored in the memory, and executing the method of the second aspect or each implementation mode thereof.
In a seventh aspect, a chip is provided for implementing the method in any one of the first to second aspects or its implementation manners.
Specifically, the chip includes: a processor configured to call and run the computer program from the memory, so that the device on which the chip is installed performs the method in any one of the first aspect to the second aspect or the implementation manners thereof.
In an eighth aspect, a computer-readable storage medium is provided for storing a computer program, the computer program causing a computer to perform the method of any one of the first to second aspects or implementations thereof.
In a ninth aspect, there is provided a computer program product comprising computer program instructions to cause a computer to perform the method of any one of the first to second aspects or implementations thereof.
A tenth aspect provides a computer program that, when run on a computer, causes the computer to perform the method of any one of the first to second aspects or implementations thereof.
Through the technical scheme, the first device can determine the time delay between the first device and the second device based on the time stamp carried in the received data packet, so that the data packet can be processed according to the time delay between the first device and the second device, and the deterministic transmission of data can be realized.
Drawings
Fig. 1 is a schematic diagram of a communication system architecture provided in an embodiment of the present application.
Fig. 2 is a schematic flow chart of a communication method provided in an embodiment of the present application.
Fig. 3 is a schematic flow chart of a communication method provided in an embodiment of the present application.
Fig. 4 is a schematic diagram of a data transmission path provided in an embodiment of the present application.
Fig. 5 is a schematic diagram of another data transmission path provided in an embodiment of the present application.
Fig. 6 is a schematic block diagram of a communication device provided in an embodiment of the present application.
Fig. 7 is a schematic block diagram of a communication device provided in an embodiment of the present application.
Fig. 8 is a schematic block diagram of a communication device provided in an embodiment of the present application.
Fig. 9 is a schematic block diagram of a chip provided in an embodiment of the present application.
Fig. 10 is a schematic block diagram of a communication system provided in an embodiment of the present application.
Detailed Description
Technical solutions in the embodiments of the present application will be described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments of the present application, but not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
The technical scheme of the embodiment of the application can be applied to various communication systems, for example: a Global System for Mobile communications (GSM) System, a Code Division Multiple Access (CDMA) System, a Wideband Code Division Multiple Access (WCDMA) System, a General Packet Radio Service (GPRS), a Long Term Evolution (Long Term Evolution, LTE) System, an LTE Frequency Division Duplex (FDD) System, an LTE Time Division Duplex (TDD), a Universal Mobile Telecommunications System (UMTS), a Worldwide Interoperability for Microwave Access (WiMAX) communication System, or a 5G System.
Illustratively, a communication system 100 applied in the embodiment of the present application is shown in fig. 1. The communication system 100 may include a network device 110, and the network device 110 may be a device that communicates with a terminal device 120 (or referred to as a communication terminal, a terminal). Network device 110 may provide communication coverage for a particular geographic area and may communicate with terminal devices located within that coverage area. Optionally, the Network device 110 may be a Base Transceiver Station (BTS) in a GSM system or a CDMA system, a Base Station (NodeB, NB) in a WCDMA system, an evolved Node B (eNB or eNodeB) in an LTE system, or a wireless controller in a Cloud Radio Access Network (CRAN), or may be a Network device in a Mobile switching center, a relay Station, an Access point, a vehicle-mounted device, a wearable device, a hub, a switch, a bridge, a router, a Network-side device in a 5G Network, or a Network device in a Public Land Mobile Network (PLMN) for future evolution, or the like.
The communication system 100 further comprises at least one terminal device 120 located within the coverage area of the network device 110. As used herein, "terminal equipment" includes, but is not limited to, connections via wireline, such as Public Switched Telephone Network (PSTN), Digital Subscriber Line (DSL), Digital cable, direct cable connection; and/or another data connection/network; and/or via a Wireless interface, e.g., to a cellular Network, a Wireless Local Area Network (WLAN), a digital television Network such as a DVB-H Network, a satellite Network, an AM-FM broadcast transmitter; and/or means of another terminal device arranged to receive/transmit communication signals; and/or Internet of Things (IoT) devices. A terminal device arranged to communicate over a wireless interface may be referred to as a "wireless communication terminal", "wireless terminal", or "mobile terminal". Examples of mobile terminals include, but are not limited to, satellite or cellular telephones; personal Communications Systems (PCS) terminals that may combine cellular radiotelephones with data processing, facsimile, and data Communications capabilities; PDAs that may include radiotelephones, pagers, internet/intranet access, Web browsers, notepads, calendars, and/or Global Positioning System (GPS) receivers; and conventional laptop and/or palmtop receivers or other electronic devices that include a radiotelephone transceiver. Terminal Equipment may refer to an access terminal, User Equipment (UE), subscriber unit, subscriber station, mobile station, remote terminal, mobile device, User terminal, wireless communication device, User agent, or User Equipment. An access terminal may be a cellular telephone, a cordless telephone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), a handheld device having Wireless communication capabilities, a computing device or other processing device connected to a Wireless modem, a vehicle mounted device, a wearable device, a terminal device in a 5G network, or a terminal device in a future evolved PLMN, etc.
Optionally, a Device to Device (D2D) communication may be performed between the terminal devices 120.
Alternatively, the 5G system or the 5G network may also be referred to as a New Radio (NR) system or an NR network.
Fig. 1 exemplarily shows one network device and two terminal devices, and optionally, the communication system 100 may include a plurality of network devices and may include other numbers of terminal devices within the coverage of each network device, which is not limited in this embodiment of the present application.
Optionally, the communication system 100 may further include other network entities such as a network controller, a mobility management entity, and the like, which is not limited in this embodiment.
It should be understood that a device having a communication function in a network/system in the embodiments of the present application may be referred to as a communication device. Taking the communication system 100 shown in fig. 1 as an example, the communication device may include a network device 110 and a terminal device 120 having a communication function, and the network device 110 and the terminal device 120 may be the specific devices described above and are not described herein again; the communication device may also include other devices in the communication system 100, such as other network entities, for example, a network controller, a mobility management entity, and the like, which is not limited in this embodiment.
Fig. 2 is a schematic flow chart diagram of a communication method 200 according to an embodiment of the present application. The method 200 may be performed by a first device and may include at least some of the following.
In 210, the first device receives a data packet, where the data packet carries a first timestamp set by the second device.
Based on the first timestamp, the first device determines a first latency of the data packet between the first device and the second device at 220.
At 230, the first device processes the data packet based on the first latency.
Fig. 3 is a schematic flow chart diagram of a communication method 300 according to an embodiment of the present application. The method 300 may be performed by a second device and may include at least some of the following.
In 310, the second device sends a data packet, where the data packet carries a first timestamp set by the second device, and the timestamp is used to determine a first time delay between the first device and the second device.
The communication method of the embodiment of the present application will be further described below with reference to fig. 2 and 3. It is to be understood that what is described below applies to both method 200 and method 300.
It should be understood that the embodiments of the present application may be applied to a scenario that requires data to arrive at a receiving end at a determined time. Alternatively, the scenario may be a multi-party cooperation scenario, such as controlling a robot to perform multi-party cooperation. For example, when controlling robots to perform multi-party collaboration, it is necessary that a plurality of robots execute operations at the same time, and if a command from one robot arrives earlier, it is possible to wait for commands from other robots to arrive.
Optionally, the embodiment of the present application may also be applied to a scenario in which data packets are prevented from being out of order.
It should be noted that the determined time in the embodiment of the present application does not refer to an absolute time, but refers to a time range.
In the embodiment of the application, the second device sends the data packet, and accordingly, the first device can receive the data packet.
Wherein, the data packet may carry the first timestamp set by the second device.
Optionally, the first timestamp may be used to indicate a time when the packet arrives at the second device, a time when the second device sends the packet, a time when the second device finishes parsing the packet, or a time when the second device finishes encapsulating the packet.
It should be noted that, in the embodiment of the present application, the time indicated by the first timestamp of the transmission of the data packet of the same device or the transmission of the data packet of the same time of different devices may be different.
Optionally, the first device may be a terminal device or a network device.
Alternatively, the second device may be a network device.
Alternatively, the network device may be an external data network device, a core network device, or an access network device.
The core network device may be a 5G core network device, for example, an Access and Mobility Management Function (AMF) which is responsible for Access and Mobility Management and has functions of authenticating, switching, updating a location, and the like for a user. Also for example, the Session Management Function (SMF) is responsible for Session Management, including establishment, modification, release, and the like of a Packet Data Unit (PDU) Session. For another example, a User Plane Function (UPF) is responsible for forwarding user data.
Wherein the access network device may be a 5G access network device.
Optionally, the first device may be a next hop of the second device, or there may be other devices for transmitting data packets between the first device and the second device.
When other devices for transmitting the data packet exist between the first device and the second device, the second device can send the data packet to the first device through at least one other device between the second device and the first device.
For example, as shown in fig. 4, a data transmission path includes three network devices and a terminal device, where the network device 1 is an external data network, the network device 2 is a core network device, and the network device 3 is an access network device. If the terminal device is the first device, the network device 1 is the second device. The network device 1 may send the data packet to the network device 2, the network device 2 sends the data packet to the network device 3 after receiving the data packet, and the network device 3 may send the data packet to the terminal device after receiving the data packet.
In this sending mode, optionally, the data packet sent by the network device 1 to the network device 2 may carry the timestamp set by the network device 1, the data packet sent by the network device 2 to the network device 3 may carry the timestamp set by the network device 2, and the data packet sent by the network device 3 to the terminal device may carry the timestamp set by the network device 3.
Or, a data packet sent by the network device 1 to the network device 2 may carry a timestamp set by the network device 1, a data packet sent by the network device 2 to the network device 3 may carry a timestamp set by the network device 1, and a data packet sent by the network device 3 to the terminal device may carry a timestamp set by the network device 1.
After the first device receives the data packet, the first device may analyze the data packet to obtain the first timestamp. The first device may then determine a first time delay between the first device and the second device based on the first timestamp.
In one implementation, the first device determining a first time delay between the first device and the second device based on the first timestamp may include: the first device may determine a first time delay between the first device and the second device based on the first timestamp and the first time instant.
Alternatively, the first time may be, but is not limited to, a time when the data packet arrives at the first device, a time when the first device completes parsing the data packet, or a time when the first device completes encapsulating the data packet.
At this time, in the embodiment of the present application, the first delay may include the following multiple cases:
case 1: the first delay may be a delay between the time the packet arrives at the second device and the time the packet arrives at the first device.
Case 2: the first delay may be a delay between a time when the packet arrives at the second device and a time when the packet is parsed by the first device.
Case 3: the first delay may be a delay between a time when the packet arrives at the second device and a time when the first device has encapsulated the packet.
Case 4: the first delay may be a delay between the time the second device sends the data packet and the time the data packet arrives at the first device.
Case 5: the first time delay may be a time delay between a time when the second device transmits the data packet and a time when the first device finishes parsing the data packet.
Case 6: the first time delay may be a time delay between a time when the second device transmits the data packet and a time when the first device completes encapsulating the data packet.
Case 7: the first delay may be a delay between a time when the second device finishes parsing the packet and a time when the packet arrives at the first device.
Case 8: the first time delay may be a time delay between a time when the second device finishes parsing the data packet and a time when the first device finishes parsing the data packet.
Case 9: the first time delay may be a time delay between a time when the second device completes parsing the data packet and a time when the first device completes encapsulating the data packet.
Case 10: the first delay may be a delay between a time when the second device has encapsulated the data packet and a time when the data packet arrives at the first device.
Case 11: the first time delay may be a time delay between a time when the second device completes encapsulating the data packet and a time when the first device completes parsing the data packet.
Case 12: the first time delay may be a time delay between a time when the second device finishes encapsulating the data packet and a time when the first device finishes encapsulating the data packet.
In the process of determining the first latency by the first device, specifically, the first device may determine a time difference between the first timestamp and the first time as the first latency.
For example, if the first timestamp indicates a time when the second device sends the packet, where the first time is a time when the packet arrives at the first device, the second device sends the packet at time a, and the packet arrives at the first time at time B, the first delay between the first device and the second device may be B-a.
After the first device determines the first latency, the first device may process the data packet based on the first latency.
Optionally, when the first device is a network device, the processing, by the first device, the data packet based on the first delay may include: the first device encapsulates and/or transmits the data packet based on the first delay.
Specifically, the first device may determine, based on the first latency, at least one of: the starting time of encapsulating the data packet, the ending time of encapsulating the data packet, the duration of encapsulating the data packet, and the time of sending the data packet. Thereafter, the first device may encapsulate and/or transmit the data packet based on the determined time and/or duration.
Optionally, when the first device is a terminal device, the processing, by the first device, the data packet based on the first time delay may include: the first device delivers the data packet to the application layer based on the first delay.
In a possible embodiment, the processing, by the first device, the data packet based on the first delay may include: according to the first time delay and the first pre-configuration time delay, the first device determines a first time delay difference between the first time delay and the first pre-configuration time delay; based on the first delay difference, the first device processes the data packet.
Wherein the first preconfigured time delay is a preconfigured time delay between the first device and the second device.
Alternatively, the preconfigured delay may be a specific value. For example, the preconfigured delay is 2 ms.
Optionally, the preconfigured delay may be a range of values, e.g., the preconfigured delay may be 1ms-2 ms.
Optionally, in this embodiment of the present application, the preconfigured time delay may be configured at a receiving end of the data packet in each transmission.
For example, if the second device sends a data packet to the first device, a preconfigured delay between the second device and the first device may be configured on the first device.
For another example, if the second device sends a data packet to the first device, and the first device sends the data packet to the third device after receiving the data packet, the preconfigured delay between the first device and the second device may be configured on the first device, and the preconfigured delay between the first device and the third device may be configured on the third device. Wherein the third device may be a next hop node of the first device.
As an example, the preconfigured delay may be configured by a core network device, an access network device, or an external data network device.
Alternatively, the core network device, the access network device or the external data network device may pre-configure a corresponding delay for each segment transmission on the data transmission path when establishing a session or establishing a Quality of Service (QoS) flow.
Illustratively, when the SMF establishes a deterministic transmission session, the SMF may pre-configure the latency on the first device according to the established session requirements or latency and jitter requirements of the QoS flow.
As another example, the preconfigured delay may also be specified in the protocol.
It should be understood that in the embodiment of the present application, the first time delay may correspond to a preconfigured time delay.
Alternatively, the correspondence between the first time delay and the preconfigured time delay may be understood as: if the preconfigured time delay is the time delay from the N time to the M time, the first time delay is also the time delay from the N time to the M time,
for example, if the preconfigured delay is a delay between a time when the packet arrives at the second device and a time when the first device has analyzed the packet, the first delay is also a delay between a time when the packet arrives at the second device and a time when the first device has analyzed the packet.
For another example, if the preconfigured delay is a delay between a time when the second device sends a data packet and a time when the first device completes encapsulating the data packet, the first delay may be a delay between a time when the second device sends the data packet and a time when the first device completes encapsulating the data packet.
Alternatively, the preconfigured delay may be a delay obtained by superimposing a plurality of delays.
For example, if the first delay is a delay between a time when the packet arrives at the second device and a time when the packet is analyzed by the first device, the preconfigured delay may be a delay obtained by superimposing a delay between a time when the packet arrives at the second device and a time when the packet arrives at the first device and a delay between a time when the packet arrives at the first device and a time when the packet is analyzed by the first device.
Optionally, in this embodiment, the number of the data packets may be multiple, where multiple data packets may be transmitted through multiple paths. That is, multiple data packets may arrive at the first device through multiple paths.
Optionally, the preconfigured delays of different transmission paths of the data packet may be the same or different, and the preconfigured delay of each segment transmission on the same transmission path may be the same or different. The embodiments of the present application are not particularly limited.
Optionally, the first device may look for the first preconfigured time delay from the transmission path of the data packet.
Alternatively, the transmission path of the data packet may have a correspondence with the preconfigured time delay.
The corresponding relationship between the transmission path of the data packet and the preconfigured time delay may be a one-to-one relationship or a many-to-one relationship.
Specifically, after the core network device, the access network device, or the external data network device configures the delay on each transmission path, the corresponding relationship between the multiple transmission paths and the preconfigured delay may be broadcasted to multiple devices. After the first device obtains the corresponding relationship, the first device may find the corresponding preconfigured time delay according to the corresponding relationship and the transmission path of the data packet.
Optionally, in this embodiment of the present application, the data packet may also reach different data receiving ends through multiple transmission paths.
In this embodiment of the application, the determining, by the first device, the first delay difference according to the first delay and the first preconfigured delay may include: the first device may subtract the first time delay from the first preconfigured time delay, the result of the subtraction being the first time delay difference.
Alternatively, the first device may subtract the first time delay from the first preconfigured time delay by: the first device subtracts a first preconfigured time delay from the first time delay; or the first device subtracts the first time delay from the first preconfigured time delay.
Alternatively, the first delay difference may be a negative value or a positive value.
Illustratively, if the first delay is 3ms and the first preconfigured delay is 2ms, the first delay difference may be the first delay minus the first preconfigured difference, i.e. the first delay difference is 1ms, which means that the first delay is 1ms more than the first preconfigured delay.
Further illustratively, if the first delay is 1ms and the first preconfigured delay is 2ms, the first delay difference may be the first delay minus the first preconfigured difference, that is, the first delay difference is-1 ms, which means that the first delay is 1ms less than the first preconfigured delay.
In the process that the first device processes the data packet based on the first delay difference, as an example, if the first delay difference indicates that the first delay is greater than the first preconfigured delay, a duration of processing the data packet by the first device may be less than a preset processing duration by the first duration, or a time of processing the data packet by the first device may be earlier than a preset processing time by the first duration, or the first device performs high-priority processing or immediate processing on the data packet.
Wherein the first time duration is equal to an absolute value of the first time delay difference.
Alternatively, the first device may perform high-priority processing on the data packet by: when the first device has other services to process in addition to the data packet, the first device may preferentially process the data packet and then process the other services.
Alternatively, the immediate processing of the data packet by the first device may be understood as: and after the first equipment receives the data packet, the first equipment immediately processes the data packet without waiting.
For example, if the first time delay is 3ms and the first preconfigured time delay is 2ms, the first time duration is 1ms, if the first device is a network device, the first time delay is a time delay between a time when the data packet arrives at the second device and a time when the data packet arrives at the first device, the first time delay is 1ms longer than the first preconfigured time delay, and a preset time duration for the first device to analyze the data packet is 3ms, the first device may use the time duration of 2ms to analyze the data packet after receiving the data packet.
In the process that the first device processes the data packet based on the first delay difference, as another example, if the first delay difference indicates that the first delay is smaller than the first preconfigured delay, the duration of processing the data packet by the first device is longer than the preset processing duration by the first duration, or the time of processing the data packet by the first device is later than the preset processing time by the first duration.
At this point, the first device may save the data packet for a first length of time.
For example, if the first time delay is 1ms and the first preconfigured time delay is 2ms, the first time duration is 1ms, if the first device is a terminal device, the first time delay is a time delay between a time when the data packet arrives at the second device and a time when the first device completes encapsulation of the data packet, and the first time delay is 1ms shorter than the preconfigured time delay, the time when the first device completes encapsulation of the data packet and delivers the data packet to the application layer may be 1ms later than the preset time. At this time, the first device may save the data packet for 1 ms.
Optionally, the first device may compare the first time delay to a first preconfigured time delay.
If the first time delay is greater than the first preconfigured time delay, the first device may determine that the processing time for processing the data packet is less than the preset processing time, or the time for processing the data packet is earlier than the preset processing time, or perform high-priority processing or immediate processing on the data packet.
It should be noted that, in this implementation manner, the first device may determine, based on any method, a time period for processing the data packet to be shorter than a preset processing time period, or a time period for processing the data packet to be earlier than the preset processing time period, which is not specifically limited in the embodiment of the present application.
If the first time delay is smaller than the first preconfigured time delay, the first device may determine that the processing time length of the data packet is longer than the preset processing time length, or the time for processing the data packet is later than the preset processing time.
Optionally, when the first device is a terminal device, the terminal device delivers the data packet to the application layer based on the first delay, which may include: based on a first delay difference between the first delay and the first preconfigured delay, the first device may determine a time at which to deliver the data packet to the application layer.
Specifically, if the first delay difference indicates that the first delay is greater than the first preconfigured delay, the first device may determine that the time for delivering the packet to the application layer is earlier than the preset delivery time by the first duration, or the first device may deliver the packet to the application layer with high priority, or deliver the packet to the application layer immediately.
If the first delay difference indicates that the first delay is less than the first preconfigured delay, the first device may determine that the time to deliver the packet to the application layer is later than a preset delivery time by a first duration.
It is described above that the first device may determine the first delay difference based on the first delay and the first preconfigured delay, and then process the data packet based on the first delay difference. The embodiments of the present application are not limited thereto. The data packet can be processed in other modes.
In one possible embodiment, the first device may determine the first latency as a first latency difference. I.e., the first device may process the data packet based on the first latency.
For example, if the first delay is 3ms, the first delay difference is 3 ms.
In one case, after the first device determines the first latency, the data packet may be processed based on the first latency.
For example, if the first delay is 2ms, the first device is a network device, the first delay is a delay between a time when the data packet arrives at the second device and a time when the data packet arrives at the first device, and if the preset duration for the first device to analyze the data packet is 3ms, the first device may use 1ms duration to analyze the data packet after receiving the data packet.
For another example, if the first time delay is 1ms, and if the first device is a terminal device, the first time delay is a time delay between a time when the data packet arrives at the second device and a time when the first device completes encapsulation of the data packet, a time when the first device delivers the data packet to the application layer after completing encapsulation of the data packet may be 1ms earlier than a preset time.
Optionally, in this embodiment of the present application, the data packet may further carry a second delay difference. The second delay difference may be a delay difference between the second delay and a second preconfigured delay.
The second time delay is a time delay between the second device and the third device, the second preconfigured time delay is a preconfigured time delay between the second device and the third device, and the third device is an upstream node of the second device.
With continued reference to fig. 4, if network device 3 is a first device, then network device 2 may be a second device and network device 1 may be a third device.
At this time, based on the first delay difference, the processing, by the first device, of the data packet may include: and processing the data packet by the first device based on the first time delay difference and the second time delay difference.
As an example, if the sum of the first delay difference and the second delay difference indicates that the delay between the first device and the third device is greater than the third delay, the duration of processing the data packet by the first device may be less than the preset processing duration by the second duration; or the time when the first device processes the data packet may be earlier than the preset processing time by a second duration; or the first device may perform high priority processing or immediate processing of the data packet.
The third time delay is the sum of the first pre-configured time delay and the second pre-configured time delay, and the second time length is the absolute value of the sum of the first time delay difference and the second time delay difference.
It should be noted that, if the first delay difference is a difference value obtained by subtracting the first preconfigured delay from the first delay, the second delay difference is also a difference value obtained by subtracting the second preconfigured delay from the second delay. In this case, the first delay difference and the second delay difference may be negative values or positive values.
As another example, if the sum of the first delay difference and the second delay difference indicates that the delay between the first device and the third device is less than the third, the duration of processing the data packet by the first device may be longer than the preset processing duration by a second duration, or the time of processing the data packet by the first device may be later than the preset processing time by the second duration.
For example, the data packet received by the second device may carry a timestamp set by the third device, the second device determines a second delay between the third device and the second device based on the timestamp set by the third device, and then determines a second delay difference between the third device and the second device based on the delay and a preconfigured delay preconfigured on the second device, where the second device does not process the data packet.
Then, the second device may carry the second delay difference in the data packet, and simultaneously carry the first timestamp set by the second device in the data packet, and then send the data packet to the first device. After receiving the data packet, the first device determines a first delay difference between the first device and the second device. The data packet may then be processed based on the first delay difference and the second delay difference.
As an example, if the first delay between the first device and the second device is 3ms, the second delay between the first device and the second device is 1ms, the first preconfigured delay is 2ms, and the second preconfigured delay is 3ms, the third delay is 5ms, the first delay difference may be a difference between the first delay and the first preconfigured delay, that is, 1ms, and the second delay difference may be a difference between the second delay and the second preconfigured delay, that is, -2ms, the sum of the first delay difference and the second delay difference is-1 ms, which means that the delay between the first device and the third device is less than the sum of the first preconfigured delay and the second preconfigured delay by 2ms, and the duration of processing the data packet by the first device may be more than the preset processing duration by 2 ms.
In another implementation manner, a data packet received by the second device may carry a timestamp set by the third device, the second device determines a second time delay between the third device and the second device based on the timestamp set by the fourth device, the second time delay is determined as a second time delay difference between the third device and the second device, and the second device does not process the data packet.
Then, the second device may carry the second delay difference in the data packet, and may also carry the first timestamp set by the second device in the data packet, and then send the data packet to the first device. After the first device receives the data packet, a first delay between the first device and the second device may be determined, and the first delay may be determined as a first delay difference. The first device may then process the data packet based on the first delay difference and the second delay difference.
It should be understood that, based on the first delay difference and the second delay difference, the manner of processing the data packet by the first device may refer to a method of processing the data packet by the first device based on the first delay difference, and for brevity of the content, details are not described here again.
Optionally, in this embodiment of the application, when the first device is a network device, the first device may further send a data packet to the fourth device, where the data packet may carry the second timestamp set by the first device.
Optionally, the fourth device may be a next hop node of the first device, and the fourth device may be a terminal device or a network device, which is not limited in this embodiment of the application.
The second timestamp may indicate a time when the data packet arrives at the first device, a time when the first device sends the data packet, a time when the first device finishes parsing the data packet, or a time when the first device finishes encapsulating the data packet.
After the fourth device receives the data packet, the time delay between the first device and the fourth device may be determined based on the second timestamp, and based on the time delay, the fourth device may process the data packet.
It should be understood that, in the embodiments of the present application, the terms "first", "second", and "third", etc. are used merely to distinguish different objects, and do not limit the scope of the embodiments of the present application.
It should also be understood that in the embodiments of the present application, the descriptions of the respective methods may be mutually referred to, and the alternatives of the respective methods may be used in combination without contradiction. For example, the first device may determine a first latency based on the first timestamp, and the description related to processing the data packet based on the first latency may be applied to the fourth device determining a latency between the first device and the fourth device based on the second timestamp, and processing the data packet based on the latency.
In this embodiment of the present application, when there is another device that transmits a data packet between the first device and the second device, the first device may process the data packet based on multiple ways.
In the first mode, all devices between the first device and the second device process the data packet.
As shown in fig. 4, if the first device is a terminal device, the second device is a network device 1. The network device 1 may send a data packet to the network device 2, where the data packet carries a timestamp set by the network device 1, and after receiving the data packet, the network device 2 determines a delay difference 1 between the network device 1 and the network device 2 based on the timestamp set by the network device 1, and processes the data packet based on the delay difference 1. Then, the network device 2 may send a data packet to the network device 3, where the data packet carries a timestamp set by the network device 2, and after receiving the data packet, the network device 3 determines a delay difference 2 between the network device 2 and the network device 3 based on the timestamp set by the network device 2, and processes the data packet based on the delay difference 2. Then, the network device 3 may send a data packet to the terminal device, where the data packet carries the timestamp set by the network device 3. After receiving the data packet, the terminal device determines the delay difference 3 between the network device 3 and the terminal device based on the timestamp set by the network device 3, so that the data packet can be processed based on the delay difference 3.
Optionally, when other devices between the first device and the second device send a data packet to a next-hop device, the data packet may or may not carry the first timestamp set by the second device, which is not limited in this embodiment of the application.
In a second way, the device between the first device and the second device may determine the delay difference between the two devices, but may not process the data packet.
Continuing with fig. 4, network device 1 may send a data packet to network device 2, where the data packet carries the timestamp set by network device 1. After receiving the data packet, the network device 2 determines the delay difference 1 between the network device 1 and the network device 2 based on the timestamp set by the network device 1, and the network device 2 does not process the data packet. Then, the network device 2 sends a data packet to the network device 3, where the data packet carries the timestamp set by the network device 2 and the delay difference 1 between the network device 1 and the network device 2. After receiving the data packet, the network device 3 determines a delay difference 2 between the network device 2 and the network device 3, and processes the data packet based on the delay difference 1 and the delay difference 2. Then, the network device 3 may send a data packet to the terminal device, where the data packet carries a timestamp set by the network device 3, and after receiving the data packet, the terminal device determines the delay difference 3 between the network device 3 and the terminal device based on the timestamp set by the network device 3, so as to process the data packet based on the delay difference 3.
Optionally, when the device between the first device and the second device sends a data packet to the next-hop device, the data packet may or may not carry the first timestamp.
In a third mode, all devices between the first device and the second device do not process the data packet.
As shown in fig. 5, if the first device is a terminal device, the second device is a network device 2. The network device 2 may send a data packet to the network device 3, where the data packet carries the timestamp set by the network device 2. After receiving the data packet, the network device 3 does not process the data packet, sends the data packet to the terminal device, and meanwhile, the data packet carries the timestamp set by the network device 2. After receiving the data packet, the terminal device may determine the time delay between the network device 2 and the terminal device based on the timestamp set by the network device 2, and then process the data packet based on the time delay.
According to the embodiment of the application, the first device can determine the time delay between the first device and the second device based on the time stamp carried in the received data packet, so that the data packet can be processed according to the time delay between the first device and the second device, and the deterministic transmission of data can be realized.
It should be understood that, in the various embodiments of the present application, the sequence numbers of the above-mentioned processes do not mean the execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
The communication method according to the embodiment of the present application is described above in detail, and the communication apparatus according to the embodiment of the present application will be described below with reference to fig. 6 to 8, and the technical features described in the method embodiment are applicable to the following apparatus embodiments.
Fig. 6 shows a schematic block diagram of a communication device 600 of an embodiment of the application. As shown in fig. 6, the communication device 600 includes:
the communication unit 610 is configured to receive a data packet, where the data packet carries a first timestamp set by the second device.
The processing unit 620 is configured to determine a first time delay of the data packet between the communication device 600 and the second device based on the first time stamp.
The processing unit 620 is further configured to process the data packet based on the first delay.
Optionally, in this embodiment of the application, the first timestamp is used to indicate a time when the packet arrives at the second device, a time when the second device sends the packet, a time when the second device finishes parsing the packet, or a time when the second device finishes encapsulating the packet.
Optionally, in this embodiment of the present application, the processing unit 620 is specifically configured to: a first time delay between the communication device 600 and the second device is determined based on the first timestamp and a first time, where the first time is a time when the packet arrives at the communication device 600, a time when the communication device 600 finishes parsing the packet, or a time when the communication device 600 finishes encapsulating the packet.
Optionally, in this embodiment of the present application, the processing unit 620 is specifically configured to: determining a first delay difference between the first delay and a first preconfigured delay according to the first delay and the first preconfigured delay, the first preconfigured delay being a preconfigured delay between the communication device 600 and a second device; the data packet is processed based on the first delay difference.
Optionally, in this embodiment of the present application, the processing unit 620 is specifically configured to: if the first time delay difference indicates that the first time delay is greater than the first preconfigured time delay, the time for processing the data packet is shorter than the preset processing time by a first time length, or the time for processing the data packet is earlier than the preset processing time by the first time length, or the data packet is subjected to high-priority processing or immediate processing;
if the first time delay difference indicates that the first time delay is smaller than the first pre-configured time delay, the time length for processing the data packet is longer than the preset processing time length by a first time length, or the time for processing the data packet is delayed by the first time length; wherein the first time duration is equal to an absolute value of the first time delay difference.
Optionally, in this embodiment of the present application, the preconfigured delay is preconfigured on the communication device 600 at the time of session establishment or QoS flow establishment.
Optionally, in this embodiment of the application, the number of the data packets is multiple, the multiple data packets are transmitted through multiple paths, and the first preconfigured time delays of different paths are different, and the processing unit 620 is further configured to: and searching the first pre-configured time delay according to the path of the data packet.
Optionally, in this embodiment of the application, the data packet further carries a second delay difference, where the second delay difference is a delay difference between a second delay and a second preconfigured delay, where the second delay is a delay between the second device and a third device, the second preconfigured delay is a preconfigured delay between the second device and the third device, and the third device is an upstream node of the second device; the processing unit 620 is specifically configured to: and processing the data packet based on the first time delay difference and the second time delay difference.
Optionally, in this embodiment of the present application, the processing unit 620 is specifically configured to: if the sum of the first delay difference and the second delay difference indicates that the delay between the communication device 600 and the third device is greater than the third delay, the duration for processing the data packet is shorter than the preset processing duration by a second duration, or the time for processing the data packet is earlier than the preset processing time by the second duration, or the data packet is subjected to high-priority processing or immediate processing;
if the sum of the first delay difference and the second delay difference indicates that the delay between the communication device 600 and the third device is less than the third delay, the time for processing the data packet is longer than the preset processing time by a second time, and the time for processing the data packet is later than the preset processing time by the second time; wherein the content of the first and second substances,
the third time delay is the sum of the first pre-configured time delay and the second pre-configured time delay, and the second time length is the absolute value of the sum of the first time delay difference and the second time delay difference.
Optionally, in this embodiment of the present application, the communication device 600 is a network device, and the processing unit 620 is specifically configured to: and encapsulating and/or transmitting the data packet based on the first time delay.
Optionally, in this embodiment of the present application, the processing unit 620 is specifically configured to: based on the first time delay, determining at least one of: the starting time of packaging the data packet, the finishing time of packaging the data packet, the duration of packaging the data packet and the time of sending the data packet; and encapsulating and/or sending the data packet based on the time and/or the duration.
Optionally, in this embodiment of the present application, the communication unit 610 is further configured to: and sending a data packet to a fourth device, where the data packet carries a second timestamp set by the first device 600, and the fourth device is a next hop node of the communication device 600.
Optionally, in this embodiment of the present application, the communication device 600 is a terminal device, and the processing unit 620 is specifically configured to: the data packet is delivered to the application layer based on the first delay.
Optionally, in this embodiment of the present application, the processing unit 620 is specifically configured to: the time at which the data packet is delivered to the application layer is determined based on a first delay difference between the first delay and a first preconfigured delay, the first preconfigured delay being a preconfigured delay between the first device and the second device.
Optionally, in this embodiment of the present application, the processing unit 620 is specifically configured to: if the first time delay difference indicates that the first time delay is larger than the first preconfigured time delay, determining that the time for delivering the data packet to the application layer is earlier than the preset delivery time by a first time length, or delivering the data packet to the application layer with high priority, or immediately delivering the data packet to the application layer;
if the first time delay difference indicates that the first time delay is smaller than the first preconfigured time delay, determining that the time for delivering the data packet to the application layer is later than the preset delivery time by a first time length; the first duration is an absolute value of the first delay difference.
Optionally, in this embodiment of the present application, the communication device 600 is a next hop of the second device, or there is another device that transmits the data packet between the communication device 600 and the second device.
It should be understood that the communication device 600 may correspond to the first device in the method 200, and the corresponding operations of the first device in the method 200 may be implemented, which are not described herein again for brevity.
Fig. 7 shows a schematic block diagram of a communication device 700 of an embodiment of the application. As shown in fig. 7, the communication device 700 includes:
the communication unit 710 is configured to send a data packet, where the data packet carries a first timestamp set by the communication device 700, and the first timestamp is used to determine a first time delay between the first device and the communication device 700.
Optionally, in this embodiment of the present application, the first timestamp is used to indicate a time when the data packet arrives at the communication device 700, a time when the communication device 700 sends the data packet, a time when the communication device 700 completes parsing the data packet, or a time when the communication device 700 completes encapsulating the data packet.
Optionally, in this embodiment of the application, the data packet further carries a delay difference between a second delay between the communication device 700 and a third device and a second preconfigured delay, where the third device is an upstream node of the first device, and the second preconfigured delay is a preconfigured delay between the communication device 700 and the third device.
Optionally, in this embodiment of the present application, the communication device 700 is a last hop of the first device, or there is another device that transmits the data packet between the communication device 700 and the first device.
Optionally, in this embodiment of the present application, the communication device 700 is a network device.
It should be understood that the second device communication 700 may correspond to the second device in the method 300, and the corresponding operations of the second device in the method 300 may be implemented, which are not described herein again for brevity.
Fig. 8 is a schematic structural diagram of a communication device 800 according to an embodiment of the present application. The communication device 800 shown in fig. 8 comprises a processor 810, and the processor 810 can call and run a computer program from a memory to implement the method in the embodiment of the present application.
Optionally, as shown in fig. 8, the communication device 800 may also include a memory 820. From the memory 820, the processor 810 can call and run a computer program to implement the method in the embodiment of the present application.
The memory 820 may be a separate device from the processor 810 or may be integrated into the processor 810.
Optionally, as shown in fig. 8, the communication device 800 may further include a transceiver 830, and the processor 810 may control the transceiver 830 to communicate with other devices, and specifically, may transmit information or data to the other devices or receive information or data transmitted by the other devices.
The transceiver 830 may include a transmitter and a receiver, among others. The transceiver 830 may further include one or more antennas.
Optionally, the communication device 800 may specifically be a communication device in the embodiment of the present application, and the communication device 800 may implement a corresponding process implemented by the first device in each method in the embodiment of the present application, and for brevity, details are not described here again.
Optionally, the communication device 800 may specifically be a communication device in the embodiment of the present application, and the communication device 800 may implement a corresponding process implemented by a second device in each method in the embodiment of the present application, which is not described herein again for brevity.
Fig. 9 is a schematic structural diagram of a chip of an embodiment of the present application. The chip 900 shown in fig. 9 includes a processor 910, and the processor 910 can call and run a computer program from a memory to implement the method in the embodiment of the present application.
Optionally, as shown in fig. 9, the chip 900 may further include a memory 920. From the memory 920, the processor 910 can call and run a computer program to implement the method in the embodiment of the present application.
The memory 920 may be a separate device from the processor 910, or may be integrated in the processor 910.
Optionally, the chip 900 may further comprise an input interface 930. The processor 910 may control the input interface 930 to communicate with other devices or chips, and in particular, may obtain information or data transmitted by other devices or chips.
Optionally, the chip 900 may further include an output interface 940. The processor 910 may control the output interface 940 to communicate with other devices or chips, and in particular, may output information or data to the other devices or chips.
Optionally, the chip may be applied to the communication device in the embodiment of the present application, and the chip may implement a corresponding process implemented by the first device in each method in the embodiment of the present application, and for brevity, details are not described here again.
Optionally, the chip may be applied to the communication device in the embodiment of the present application, and the chip may implement a corresponding process implemented by the second device in each method in the embodiment of the present application, and for brevity, details are not described here again.
It should be understood that the chips mentioned in the embodiments of the present application may also be referred to as a system-on-chip, a system-on-chip or a system-on-chip, etc.
It should be understood that the processor of the embodiments of the present application may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the above method embodiments may be performed by integrated logic circuits of hardware in a processor or instructions in the form of software. The Processor may be a general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic device, or discrete hardware components. The various methods, steps, and logic blocks disclosed in the embodiments of the present application may be implemented or performed. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like. The steps of the method disclosed in connection with the embodiments of the present application may be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software module may be located in ram, flash memory, rom, prom, or eprom, registers, etc. storage media as is well known in the art. The storage medium is located in a memory, and a processor reads information in the memory and completes the steps of the method in combination with hardware of the processor.
It will be appreciated that the memory in the embodiments of the subject application can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. The non-volatile Memory may be a Read-Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically Erasable PROM (EEPROM), or a flash Memory. Volatile Memory can be Random Access Memory (RAM), which acts as external cache Memory. By way of example, but not limitation, many forms of RAM are available, such as Static random access memory (Static RAM, SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic random access memory (Synchronous DRAM, SDRAM), Double Data Rate Synchronous Dynamic random access memory (DDR SDRAM), Enhanced Synchronous SDRAM (ESDRAM), Synchronous link SDRAM (SLDRAM), and Direct Rambus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to comprise, without being limited to, these and any other suitable types of memory.
It should be understood that the above memories are exemplary but not limiting illustrations, for example, the memories in the embodiments of the present application may also be Static Random Access Memory (SRAM), dynamic random access memory (dynamic RAM, DRAM), Synchronous Dynamic Random Access Memory (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (enhanced SDRAM, ESDRAM), Synchronous Link DRAM (SLDRAM), Direct Rambus RAM (DR RAM), and the like. That is, the memory in the embodiments of the present application is intended to comprise, without being limited to, these and any other suitable types of memory.
Fig. 10 is a schematic block diagram of a communication system 1000 provided in an embodiment of the present application. As shown in fig. 10, the communication system 1000 includes a communication device 11010 and a communication device 21020.
The communication device 1 may be configured to implement the corresponding function implemented by the first device in the foregoing method, and the communication device 2 may be configured to implement the corresponding function implemented by the second device in the foregoing method, which is not described herein again for brevity.
The embodiment of the application also provides a computer readable storage medium for storing the computer program.
Optionally, the computer-readable storage medium may be applied to the first device in the embodiment of the present application, and the computer program enables the computer to execute the corresponding process implemented by the first device in each method in the embodiment of the present application, which is not described herein again for brevity.
Optionally, the computer-readable storage medium may be applied to the second device in the embodiment of the present application, and the computer program enables the computer to execute the corresponding process implemented by the second device in each method in the embodiment of the present application, which is not described herein again for brevity.
Embodiments of the present application also provide a computer program product comprising computer program instructions.
Optionally, the computer program product may be applied to the first device in the embodiment of the present application, and the computer program instructions enable the computer to execute the corresponding processes implemented by the first device in the methods in the embodiment of the present application, which are not described herein again for brevity.
Optionally, the computer program product may be applied to the second device in the embodiment of the present application, and the computer program instructions enable the computer to execute the corresponding processes implemented by the second device in the methods in the embodiment of the present application, which are not described herein again for brevity.
The embodiment of the application also provides a computer program.
Optionally, the computer program may be applied to the first device in the embodiment of the present application, and when the computer program runs on a computer, the computer is enabled to execute the corresponding process implemented by the first device in each method in the embodiment of the present application, and for brevity, details are not described here again.
Optionally, the computer program may be applied to the second device in the embodiment of the present application, and when the computer program runs on a computer, the computer is enabled to execute the corresponding process implemented by the second device in each method in the embodiment of the present application, and for brevity, details are not described here again.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (52)

  1. A method of communication, the method comprising:
    a first device receives a data packet, wherein the data packet carries a first timestamp set by a second device;
    based on the first timestamp, the first device determining a first latency of the data packet between the first device and the second device;
    and processing the data packet by the first equipment based on the first time delay.
  2. The method of claim 1, wherein the first timestamp is used to indicate a time when the packet arrives at the second device, a time when the packet is sent by the second device, a time when the packet is completely parsed by the second device, or a time when the packet is completely encapsulated by the second device.
  3. The method of claim 1 or 2, wherein the determining, by the first device, a first time delay between the first device and the second device based on the first timestamp comprises:
    based on the first timestamp and a first time, the first device determines a first time delay between the first device and the second device, where the first time is a time when the data packet arrives at the first device, a time when the first device finishes parsing the data packet, or a time when the first device finishes encapsulating the data packet.
  4. The method of any of claims 1 to 3, wherein the processing of the data packet by the first device based on the first latency comprises:
    according to the first time delay and a first preconfigured time delay, the first device determines a first time delay difference between the first time delay and the first preconfigured time delay, wherein the first preconfigured time delay is a preconfigured time delay between the first device and the second device;
    and processing the data packet by the first device based on the first time delay difference.
  5. The method of claim 4, wherein the processing of the data packet by the first device based on the first latency difference comprises:
    if the first time delay difference indicates that the first time delay is greater than the first preconfigured time delay, the time for processing the data packet by the first device is shorter than the preset processing time by a first time length, or the time for processing the data packet by the first device is earlier than the preset processing time by the first time length, or the first device performs high-priority processing or immediate processing on the data packet;
    if the first time delay difference indicates that the first time delay is smaller than the first preconfigured time delay, the time length for processing the data packet by the first device is longer than the preset processing time length by a first time length, or the time for processing the data packet by the first device is delayed by the first time length;
    wherein the first time duration is equal to an absolute value of the first time delay difference.
  6. The method according to claim 4 or 5, wherein the preconfigured delay is preconfigured on the first device at session setup or quality of service, QoS, flow setup.
  7. The method of any of claims 4 to 6, wherein the number of the data packets is plural, the plural data packets are transmitted by multiple paths, and the first preconfigured time delays of different paths are different, the method further comprising:
    and the first equipment searches the first preconfigured time delay according to the path of the data packet.
  8. The method according to any of claims 4 to 7, wherein the data packet further carries a second delay difference, the second delay difference being a delay difference between a second delay and a second preconfigured delay, wherein the second delay is a delay between the second device and a third device, the second preconfigured delay is a preconfigured delay between the second device and the third device, and the third device is an upstream node of the second device;
    the processing, by the first device, the data packet based on the first latency difference includes:
    and processing the data packet by the first device based on the first time delay difference and the second time delay difference.
  9. The method of claim 8, wherein the processing of the data packet by the first device based on the first latency difference and the second latency difference comprises:
    if the sum of the first time delay difference and the second time delay difference indicates that the time delay between the first device and the third device is greater than a third time delay, the time length for processing the data packet by the first device is less than a preset processing time length by a second time length, or the time for processing the data packet by the first device is earlier than the preset processing time by the second time length, or the first device performs high-priority processing or immediate processing on the data packet;
    if the sum of the first delay difference and the second delay difference indicates that the delay between the first device and the third device is less than a third delay, the time length for processing the data packet by the first device is longer than a preset processing time length by a second time length, or the time for processing the data packet by the first device is later than the preset processing time length by the second time length; wherein the content of the first and second substances,
    the third time delay is the sum of the first preconfigured time delay and the second preconfigured time delay, and the second time length is the absolute value of the sum of the first time delay difference and the second time delay difference.
  10. The method according to any one of claims 1 to 9, wherein the first device is a network device, and wherein the processing the data packet by the first device based on the first latency comprises:
    and based on the first time delay, the first equipment encapsulates the data packet and/or sends the data packet.
  11. The method of claim 10, wherein the encapsulating and/or sending the data packet by the first device based on the first latency comprises:
    based on the first latency, the first device determines at least one of: the starting time of packaging the data packet, the finishing time of packaging the data packet, the duration of packaging the data packet and the time of sending the data packet;
    and based on the time and/or the duration, the first equipment encapsulates the data packet and/or sends the data packet.
  12. The method according to claim 10 or 11, characterized in that the method further comprises:
    and the first equipment sends the data packet to fourth equipment, wherein the data packet carries a second timestamp set by the first equipment, and the fourth equipment is a next hop node of the first equipment.
  13. The method according to any one of claims 1 to 9, wherein the first device is a terminal device, and the processing the data packet by the first device based on the first time delay comprises:
    based on the first latency, the first device delivers the data packet to an application layer.
  14. The method of claim 13, wherein the delivering, by the first device, the data packet to an application layer based on the first latency comprises:
    the first device determines a time at which to deliver the data packet to an application layer based on a first delay difference between the first delay and a first preconfigured delay, the first preconfigured delay being a preconfigured delay between the first device and the second device.
  15. The method of claim 14, the determining, by the first device, a time at which to deliver the data packet to an application layer based on a first delay difference between the first delay and the first preconfigured delay, comprising:
    if the first delay difference indicates that the first delay is greater than the first preconfigured delay, the first device determines that the time for delivering the data packet to the application layer is earlier than a preset delivery time by a first duration, or the first device delivers the data packet to the application layer with high priority, or immediately delivers the data packet to the application layer;
    if the first delay difference indicates that the first delay is smaller than the first preconfigured delay, the first device determines that the time for delivering the data packet to the application layer is later than a preset delivery time by a first duration;
    the first duration is an absolute value of the first delay difference.
  16. The method according to any one of claims 1 to 15, wherein the first device is a next hop of the second device, or wherein there is another device between the first device and the second device to transmit the data packet.
  17. A method of communication, the method comprising:
    and the second equipment sends a data packet, wherein the data packet carries a first time stamp set by the second equipment, and the first time stamp is used for determining a first time delay between the first equipment and the second equipment.
  18. The method of claim 17, wherein the first timestamp is used to indicate a time when the packet arrives at the second device, a time when the packet is sent by the second device, a time when the packet is completely parsed by the second device, or a time when the packet is completely encapsulated by the second device.
  19. The method according to claim 17 or 18, wherein the data packet further carries a delay difference between a second delay between the second device and a third device and a second preconfigured delay, and wherein the fourth device is an upstream node of the first device, and wherein the second preconfigured delay is a preconfigured delay between the second device and the third device.
  20. The method according to any one of claims 17 to 19, wherein the second device is a last hop of the first device, or wherein there is another device between the second device and the first device to transmit the data packet.
  21. The method of any of claims 17 to 20, wherein the second device is a network device.
  22. A communication device, comprising:
    the communication unit is used for receiving a data packet, and the data packet carries a first timestamp set by second equipment;
    a processing unit configured to determine a first time delay of the data packet between the communication device and the second device based on the first timestamp;
    the processing unit is further configured to process the data packet based on the first time delay.
  23. The communications device of claim 22, wherein the first timestamp is used to indicate a time when the packet arrives at the second device, a time when the packet is sent by the second device, a time when the packet is completely parsed by the second device, or a time when the packet is completely encapsulated by the second device.
  24. The communication device according to claim 22 or 23, wherein the processing unit is specifically configured to:
    and determining a first time delay between the communication equipment and the second equipment based on the first timestamp and a first time, wherein the first time is the time when the data packet arrives at the communication equipment, the time when the data packet is analyzed by the communication equipment, or the time when the data packet is packaged by the communication equipment.
  25. The communication device according to any of claims 22 to 24, wherein the processing unit is specifically configured to:
    determining, according to the first delay and a first preconfigured delay, a first delay difference between the first delay determined by the communication device and the first preconfigured delay, where the first preconfigured delay is a preconfigured delay between the first device and the second device;
    and processing the data packet based on the first time delay difference.
  26. The communications device of claim 25, wherein the processing unit is specifically configured to:
    if the first time delay difference indicates that the first time delay is greater than the first preconfigured time delay, the time for processing the data packet is shorter than the preset processing time by a first time length, or the time for processing the data packet is earlier than the preset processing time by the first time length, or the data packet is subjected to high-priority processing or immediate processing;
    if the first time delay difference indicates that the first time delay is smaller than the first preconfigured time delay, the time length for processing the data packet is longer than the preset processing time length by a first time length, or the time for processing the data packet is delayed by the first time length;
    wherein the first time duration is equal to an absolute value of the first time delay difference.
  27. The communication device according to claim 25 or 26, wherein the preconfigured delay is preconfigured on the communication device at session setup or quality of service, QoS, flow setup.
  28. The communications device of any one of claims 25 to 27, wherein the number of the data packets is plural, the plural data packets are transmitted by multiple paths, the first preconfigured time delays of different paths are different, the processing unit is further configured to:
    and searching the first preconfigured time delay according to the path of the data packet.
  29. The communications device of any one of claims 25 to 28, wherein the data packet further carries a second delay difference, the second delay difference being a delay difference between a second delay and a second preconfigured delay, wherein the second delay is a delay between the second device and a third device, the second preconfigured delay is a preconfigured delay between the second device and the third device, and the third device is an upstream node of the second device;
    the processing unit is specifically configured to:
    and processing the data packet based on the first time delay difference and the second time delay difference.
  30. The communications device of claim 29, wherein the processing unit is specifically configured to:
    if the sum of the first time delay difference and the second time delay difference indicates that the time delay between the first equipment and the third equipment is greater than a third time delay, the time for processing the data packet is shorter than the preset processing time by a second time length, or the time for processing the data packet is earlier than the preset processing time by the second time length, or the data packet is subjected to high-priority processing or immediate processing;
    if the sum of the first delay difference and the second delay difference indicates that the delay between the first equipment and the third equipment is less than a third delay, the time length for processing the data packet is longer than the preset processing time length by a second time length, and the time for processing the data packet is later than the preset processing time by the second time length; wherein the content of the first and second substances,
    the third time delay is the sum of the first preconfigured time delay and the second preconfigured time delay, and the second time length is the absolute value of the sum of the first time delay difference and the second time delay difference.
  31. The communication device according to any one of claims 22 to 30, wherein the communication device is a network device, and the processing unit is specifically configured to:
    and encapsulating the data packet and/or sending the data packet based on the first time delay.
  32. The communications device of claim 31, wherein the processing unit is specifically configured to:
    based on the first time delay, determining at least one of: the starting time of packaging the data packet, the finishing time of packaging the data packet, the duration of packaging the data packet and the time of sending the data packet;
    and packaging the data packet and/or sending the data packet based on the time and/or the duration.
  33. The communication device according to claim 31 or 32, wherein the communication unit is further configured to:
    and sending the data packet to a fourth device, wherein the data packet carries a second timestamp set by the first device, and the fourth device is a next hop node of the communication device.
  34. The communication device according to any one of claims 22 to 30, wherein the communication device is a terminal device, and the processing unit is specifically configured to:
    delivering the data packet to an application layer based on the first latency.
  35. The communications device of claim 34, wherein the processing unit is specifically configured to:
    determining a time at which to deliver the data packet to an application layer based on a first delay difference between the first delay and a first preconfigured delay, the first preconfigured delay being a preconfigured delay between the first device and the second device.
  36. The communications device of claim 35, wherein the processing unit is specifically configured to:
    if the first delay difference indicates that the first delay is greater than the first preconfigured delay, determining that the time for delivering the data packet to the application layer is earlier than a preset delivery time by a first time length, or delivering the data packet to the application layer with high priority, or immediately delivering the data packet to the application layer;
    if the first delay difference indicates that the first delay is smaller than the first preconfigured delay, determining that the time for delivering the data packet to the application layer is later than a preset delivery time by a first time length;
    the first duration is an absolute value of the first delay difference.
  37. The communication device according to any of claims 22 to 36, wherein the communication device is a next hop of the second device, or wherein there is another device between the communication device and the second device to transmit the data packet.
  38. A communication device, comprising:
    a communication unit, configured to send a data packet, where the data packet carries a first timestamp set by the communication device, and the first timestamp is used to determine a first time delay between the first device and the communication device.
  39. The communications device of claim 38, wherein the first timestamp is used to indicate a time when the data packet arrives at the communications device, a time when the communications device transmits the data packet, a time when the communications device completes parsing the data packet, or a time when the communications device completes encapsulating the data packet.
  40. The communications device of claim 38 or 39, wherein the data packet further carries a delay difference between a second delay between the second device and a third device, the third device being an upstream node of the first device, and a second preconfigured delay, wherein the second preconfigured delay is a preconfigured delay between the second device and the third device.
  41. The communication device according to any of claims 38 to 40, wherein the communication device is a last hop of the first device, or wherein there is another device between the communication device and the first device to transmit the data packet.
  42. A communication device as claimed in any of claims 38 to 41, wherein the communication device is a network device.
  43. A communication device, comprising: a processor and a memory, the memory for storing a computer program, the processor for invoking and executing the computer program stored in the memory, performing the method of any one of claims 1 to 16.
  44. A communication device, comprising: a processor and a memory, the memory for storing a computer program, the processor for invoking and executing the computer program stored in the memory, performing the method of any one of claims 17 to 21.
  45. A chip, comprising: a processor for calling and running a computer program from a memory so that a device on which the chip is installed performs the method of any one of claims 1 to 16.
  46. A chip, comprising: a processor for calling and running a computer program from a memory so that a device on which the chip is installed performs the method of any one of claims 17 to 21.
  47. A computer-readable storage medium for storing a computer program which causes a computer to perform the method of any one of claims 1 to 16.
  48. A computer-readable storage medium for storing a computer program which causes a computer to perform the method of any one of claims 17 to 21.
  49. A computer program product comprising computer program instructions for causing a computer to perform the method of any one of claims 1 to 16.
  50. A computer program product comprising computer program instructions for causing a computer to perform the method of any one of claims 17 to 21.
  51. A computer program, characterized in that the computer program causes a computer to perform the method according to any one of claims 1 to 16.
  52. A computer program, characterized in that the computer program causes a computer to perform the method according to any of claims 17-21.
CN201880093975.XA 2018-08-29 2018-08-29 Communication method and device Active CN112205028B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/103091 WO2020042039A1 (en) 2018-08-29 2018-08-29 Communication method and device

Publications (2)

Publication Number Publication Date
CN112205028A true CN112205028A (en) 2021-01-08
CN112205028B CN112205028B (en) 2023-07-11

Family

ID=69644905

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880093975.XA Active CN112205028B (en) 2018-08-29 2018-08-29 Communication method and device

Country Status (3)

Country Link
CN (1) CN112205028B (en)
TW (1) TW202021320A (en)
WO (1) WO2020042039A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113507741A (en) * 2021-07-01 2021-10-15 北京佰才邦技术股份有限公司 Communication delay determination method and electronic equipment
WO2024104459A1 (en) * 2022-11-18 2024-05-23 展讯通信(上海)有限公司 Data transmission method and apparatus, and terminal device and network device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114698086A (en) * 2020-12-31 2022-07-01 中国移动通信有限公司研究院 Information indication method, device, related equipment and storage medium

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2664524A1 (en) * 2006-09-29 2008-04-10 Harris Corporation Automatic delay compensated simulcasting system and method
US20100157825A1 (en) * 2008-12-23 2010-06-24 Airvana, Inc. Estimating bandwidth in communication networks
CN102123073A (en) * 2010-01-07 2011-07-13 华为技术有限公司 Packet reordering method and device
CN102547969A (en) * 2012-02-24 2012-07-04 电子科技大学 High-accuracy wireless clock synchronization system for power system
CN102984107A (en) * 2011-09-07 2013-03-20 普天信息技术研究院有限公司 Optical fiber time delay compensation method and device suitable for long term evolution (LTE) system
CN104683993A (en) * 2015-02-09 2015-06-03 清华大学 Multi-domain cooperative communication system of satellites and land
WO2016192466A1 (en) * 2015-06-04 2016-12-08 电信科学技术研究院 Method and device for scheduling
WO2017079920A1 (en) * 2015-11-11 2017-05-18 华为技术有限公司 Method and device for synchronization

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105612721A (en) * 2014-03-27 2016-05-25 华为技术有限公司 Transmission time delay measurement method, device and system based on DOCSIS protocol
CN106454553A (en) * 2016-11-15 2017-02-22 深圳市视维科技有限公司 A precise time delay live video network transmission control method

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2664524A1 (en) * 2006-09-29 2008-04-10 Harris Corporation Automatic delay compensated simulcasting system and method
US20100157825A1 (en) * 2008-12-23 2010-06-24 Airvana, Inc. Estimating bandwidth in communication networks
CN102123073A (en) * 2010-01-07 2011-07-13 华为技术有限公司 Packet reordering method and device
CN102984107A (en) * 2011-09-07 2013-03-20 普天信息技术研究院有限公司 Optical fiber time delay compensation method and device suitable for long term evolution (LTE) system
CN102547969A (en) * 2012-02-24 2012-07-04 电子科技大学 High-accuracy wireless clock synchronization system for power system
CN104683993A (en) * 2015-02-09 2015-06-03 清华大学 Multi-domain cooperative communication system of satellites and land
WO2016192466A1 (en) * 2015-06-04 2016-12-08 电信科学技术研究院 Method and device for scheduling
WO2017079920A1 (en) * 2015-11-11 2017-05-18 华为技术有限公司 Method and device for synchronization

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"\"25133-b30\"", 3GPP SPEC\\25_SERIES *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113507741A (en) * 2021-07-01 2021-10-15 北京佰才邦技术股份有限公司 Communication delay determination method and electronic equipment
WO2024104459A1 (en) * 2022-11-18 2024-05-23 展讯通信(上海)有限公司 Data transmission method and apparatus, and terminal device and network device

Also Published As

Publication number Publication date
TW202021320A (en) 2020-06-01
CN112205028B (en) 2023-07-11
WO2020042039A1 (en) 2020-03-05

Similar Documents

Publication Publication Date Title
CN109792657B (en) Wireless communication method and apparatus
CN113316148B (en) Method and apparatus for network slice authentication
CN113615257B (en) Path selection method and device and terminal
CN113242577B (en) Resource scheduling method, terminal equipment and network equipment
CN111885640B (en) Control data transmission method, network equipment and storage medium
CN113517972B (en) Resource allocation method, terminal equipment and network equipment
US11877326B2 (en) Wireless communication method and communication device
JP2022551547A (en) Resource setting method and access network device
CN112740630A (en) Service processing method, device, chip and computer program
CN112205028B (en) Communication method and device
CN112673687A (en) Registration method, terminal equipment and network equipment
JP2022551789A (en) Wireless communication method, terminal device and network device
CN112205060A (en) Wireless communication method, access network equipment, terminal equipment and core network equipment
KR102469987B1 (en) Communication method, terminal device, and network device during vehicle-to-machine communication
EP3952596B1 (en) Information transmission method and apparatus
CN111837419B (en) Data transmission method, terminal equipment and network equipment
CN113316959A (en) Communication method, terminal equipment and network equipment
CN112703805A (en) Wireless communication method and base station
CN112956237B (en) Service processing method, device, chip and computer program
CN113348682B (en) Wireless communication method, terminal equipment, access network equipment and core network equipment
CN112243576B (en) Information transmission method and device and communication equipment
CN114902790A (en) Transmission mode switching method, electronic equipment and storage medium
CN114786261A (en) Resource allocation method, network equipment and terminal equipment
CN112655236A (en) Method or apparatus for integrity protection
CN113455079B (en) Method and apparatus for wireless communication

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