Data transmission method and device
By obtaining the transmission delay of data packets and adjusting the packet transmission delay in the second direction according to the round trip delay, the problem of inaccurate transmission delay calculation in VR services is solved, and user experience and service fluency are improved.
Patent Information
- Application Number
- CN202011059885.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-09-30
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2040-09-30
AI Technical Summary
In the VR service, the transmission delay calculation caused by the round trip delay through fixed proportion splitting, affecting the user experience.
The transmission delay of the data packet is obtained through the first communication device, and the packet transmission delay in the second direction is adjusted according to the round trip delay, and the delay information is carried to achieve fine dynamic adjustment.
It improves the accuracy and user experience of data transmission, reduces the uncertainty of transmission delay, and improves the fluency of VR services.
Smart Images

Figure CN114339808B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and in particular to a data transmission method and device. Background Art
[0002] The development of communication technology has further enhanced the experience of the new media industry, with video services becoming a mainstream media format. This includes emerging multimedia services such as ultra-high-definition video (4K / 8K), virtual reality (VR), and augmented reality (AR). Taking VR as an example, a user's VR device (such as a wearable VR headset) captures the user's movement information, such as head movements, hand movements, squatting / standing up, etc., and sends it to a cloud server via a communication network (such as a 5G network). (During the data transmission process, data transmission from the user device to the network is called uplink (UL), and data transmission from the network to the user device is called downlink (DL)). The cloud server inputs the user's movement information into the VR application, uses the server's graphics processing unit (GPU) to render the image, and then sends the computer graphics (CG) image to the VR device via the communication network for the user to view. A key requirement for VR services is motion-to-photon (MTP) latency, which refers to the delay from detecting head / hand movement to the graphics engine rendering the corresponding new image and displaying it on the screen. MTP latency is generally required to be within 20ms. If the MTP latency exceeds 20ms, the displayed image will not keep up with the user's head movements, causing dizziness and significantly affecting the VR service experience. To effectively control MTP latency, the communication network needs to correlate and control the uplink and downlink data transmission of VR services to ensure that the round-trip time (RTT) meets the requirements of VR services.
[0003] Currently, the common method is to split the round-trip delay into uplink delay and downlink delay according to a fixed ratio. For example, the uplink delay accounts for 30% of the total round-trip delay, and the downlink delay accounts for 70% of the total round-trip delay. Alternatively, the user plane function (UPF) identifies the associated uplink and downlink messages based on the "uplink and downlink aggregate identifier" carried in the Internet Protocol (IP) message header. The UPF then dynamically sets the downlink message transmission time based on the actual transmission time of the uplink message. In the scheme of dynamically setting the downlink message transmission time, the UPF uses the Quality of Service Flow identifier (QFI) to mark the downlink delay.
[0004] However, if the round-trip delay is split into uplink delay and downlink delay according to a fixed ratio, when the actual uplink transmission delay exceeds the pre-set uplink delay value, if the actual downlink transmission still uses the previously set fixed downlink delay, it is easy for the RTT delay to fail to meet the requirements. After calculating the transmission delay of the downlink message, the above solution needs to find the corresponding QFI and use it to mark the downlink message. Because the standard-defined QFI does not accurately indicate the transmission delay, the calculation of the downlink delay is not accurate, resulting in a reduced user experience of the service. Summary of the Invention
[0005] The embodiments of the present application provide a data transmission method and apparatus for sending a transmission delay along with a data packet, thereby achieving fine dynamic adjustment of the transmission delay and improving the user's service experience.
[0006] In a first aspect, an embodiment of the present application provides a data transmission method, specifically as follows: a first communication device receives a data packet from a first direction; then the first communication device obtains a first transmission delay for the data packet in the first direction; the first communication device then receives a data packet from a second direction and determines a second transmission delay for the data packet in the second direction based on the first transmission delay and the round-trip delay; finally, the first communication device sends the data packet in the second direction to a second communication device, with the data packet in the second direction carrying the second transmission delay, i.e., the first communication device carries the second transmission delay with the packet. In this embodiment, if the first direction is uplink, the second direction is downlink; if the first direction is downlink, the second direction is uplink.
[0007] In this embodiment, when the first direction is uplink and the second direction is downlink, the first communication device is a core network device and the second communication device is an access device; when the first direction is downlink and the second direction is uplink, the first communication device is a terminal device and the second communication device is an access device.
[0008] In the technical solution provided by this embodiment, the first communication device carries the transmission delay with the packet, so that the second communication device no longer needs to query the transmission delay based on the packet delay budget information indicated by the service quality flow identifier, thereby realizing fine dynamic adjustment of the transmission delay and improving the user's service experience.
[0009] In one possible implementation, the packet header of the data packet in the second direction includes first indication information, where the first indication information is used to indicate the second transmission delay. This is an implementation method for increasing the second transmission delay in the second direction carried with the packet. It is understood that the data packet in the second direction may also carry the second transmission delay in the data payload.
[0010] In one possible implementation, the data packet in the second direction further includes second indication information, where the second indication information is used to instruct the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier. It is understandable that the second indication information can be actual indication information (i.e., the second indication information occupies a portion of bits), or it can be directly the first indication information (i.e., the first indication information, in addition to indicating the downlink transmission delay, implicitly instructs the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier).
[0011] In one possible implementation, the data packet in the first direction includes first information, and the first information is used to indicate the order of the data packets in the first direction; the data packet in the second direction includes second information, and the second information is used to indicate the order of the data packets in the second direction; the first information and the second information are used to determine that the data packet in the first direction is in a one-to-one correspondence with the data packet in the second direction. That is, if the uplink data packet is used to request A, then the downlink data packet carries A. In this embodiment, the first information and the second information can be counters (i.e., message counts), for example, the first information in the first uplink data packet is 1, and the second information in the downlink data packet corresponding to the first uplink data packet is 1; the first information in the second uplink data packet is 2, and the second information in the downlink data packet corresponding to the second uplink data packet is 2. Therefore, when the first communication device determines the association between the uplink and downlink data packets, it can be judged based on whether the counters are the same.
[0012] In one possible implementation, determining, by the first communications device, the second transmission delay of the data packet in the second direction based on the first transmission delay and the round-trip delay includes: when the first transmission delay is greater than or equal to a first preset threshold, determining, by the first communications device, the second transmission delay of the data packet in the second direction based on a difference between the round-trip delay and the first transmission delay. This can reduce the processing load of the first communications device.
[0013] In one possible implementation, the first communications device obtains an average transmission delay for data packets in the first direction; when the average transmission delay is greater than or equal to a second preset threshold, the first communications device determines a second transmission delay for data packets in the second direction based on the difference between the round-trip delay and the average transmission delay. In this solution, the average transmission delay is calculated by a third communications device by counting the transmission delays of data packets in the first direction reported by the first communications device within a preset time period; therefore, the average transmission delay is the value sent by the third communications device to the first communications device.
[0014] In one possible implementation, the first communications device obtains a predicted transmission delay for the data packet in the second direction, where the predicted transmission delay is associated with a time period and / or location information. Based on the time period and / or location information, the first communications device determines the predicted transmission delay as the second transmission delay for the data packet in the second direction. In this solution, the predicted transmission delay is predicted by a fourth communications device based on historical transmission delays for data packets in the first direction reported by the first communications device and current state information, where the current state information includes current network parameters, number of users, time period, and location information. Therefore, the predicted transmission delay is the delay sent by the fourth communications device to the first communications device.
[0015] In one possible implementation, the first communication device obtains the first transmission delay of the data packet in the first direction, including: the first communication device calculates the first transmission delay based on the receiving time and timestamp information, the receiving time is used to indicate the moment when the first communication device receives the data packet in the first direction, and the timestamp information is used to indicate the sending moment of the data packet in the first direction; or, the first communication device calculates the first transmission delay based on the sending time and timestamp information, the sending time is used to indicate the moment when the first communication device sends the data packet in the first direction to the application server, and the timestamp information is used to indicate the sending moment of the data packet in the first direction.
[0016] In second aspect, an embodiment of the present application provides a data transmission method, specifically including: a first communication device receives a data packet in a first direction, the data packet in the first direction carries first information, and the first information is used to indicate the order of the data packets in the first direction; the first communication device receives a data packet in a second direction, the data packet in the second direction carries second information, and the second information is used to indicate the order of the data packets in the second direction; the first communication device determines the one-to-one correspondence between the data packets in the first direction and the data packets in the second direction based on the first information and the second information; if the first direction is uplink, the second direction is downlink; or, if the first direction is downlink, the second direction is uplink.
[0017] In this embodiment, when the first direction is uplink and the second direction is downlink, the first communication device is a core network device and the second communication device is an access device; when the first direction is downlink and the second direction is uplink, the first communication device is a terminal device and the second communication device is an access device.
[0018] In the technical solution provided by this embodiment, the first communication device realizes one-to-one correspondence between uplink and downlink data packets through the first information and the second information, thereby solving the disorder problem of uplink and downlink data packets.
[0019] In one possible implementation, the first communication device can also obtain the first transmission delay of the data packet in the first direction; the first communication device determines the second transmission delay of the data packet in the second direction based on the first transmission delay and the round-trip delay; the first communication device sends the data packet in the second direction to the second communication device, and the data packet in the second direction carries the second transmission delay.
[0020] In the technical solution provided by this embodiment, the first communication device carries the transmission delay with the packet, so that the second communication device no longer needs to query the transmission delay according to the packet delay budget information indicated by the service quality flow identifier, thereby realizing fine dynamic adjustment of the transmission delay.
[0021] In one possible implementation, the packet header of the data packet in the second direction includes first indication information, where the first indication information is used to indicate the second transmission delay. This is an implementation method for increasing the second transmission delay in the second direction carried with the packet. It is understood that the data packet in the second direction may also carry the second transmission delay in the data payload.
[0022] In one possible implementation, the data packet in the second direction further includes second indication information, where the second indication information is used to instruct the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier. It is understandable that the second indication information can be actual indication information (i.e., the second indication information occupies a portion of bits), or it can be directly the first indication information (i.e., the first indication information, in addition to indicating the downlink transmission delay, implicitly instructs the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier).
[0023] In one possible implementation, the packet header of the data packet in the second direction includes first indication information, where the first indication information is used to indicate the second transmission delay. This is an implementation method for increasing the second transmission delay in the second direction carried with the packet. It is understood that the data packet in the second direction may also carry the second transmission delay in the data payload.
[0024] In one possible implementation, the data packet in the second direction further includes second indication information, where the second indication information is used to instruct the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier. It is understandable that the second indication information can be actual indication information (i.e., the second indication information occupies a portion of bits), or it can be directly the first indication information (i.e., the first indication information, in addition to indicating the downlink transmission delay, implicitly instructs the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier).
[0025] In a third aspect, embodiments of the present application provide a communications device that implements the behavior of the first communications device described in the first aspect. This functionality can be implemented in hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the aforementioned functionality.
[0026] In one possible implementation, the apparatus includes units or modules for performing each step of the first aspect above. For example, the apparatus includes: a receiving module for receiving a data packet in a first direction; a processing module for obtaining a first transmission delay for the data packet in the first direction; determining a second transmission delay for a data packet in a second direction based on the first transmission delay and the round-trip delay; a sending module for sending the data packet in the second direction to a second communication device, the data packet in the second direction carrying the second transmission delay; if the first direction is uplink, the second direction is downlink; or, if the first direction is downlink, the second direction is uplink.
[0027] Optionally, a storage module is also included for storing necessary program instructions and data of the communication device.
[0028] In one possible implementation, the apparatus includes a processor and a transceiver. The processor is configured to support the communication apparatus in performing the corresponding functions of the method provided in the first aspect. The transceiver is configured to direct communication between a first communication device and a second communication device and other network devices, and to transmit data packets involved in the method to the second communication device. Optionally, the apparatus may also include a memory coupled to the processor to store program instructions and data necessary for the communication apparatus.
[0029] In one possible implementation, when the device is a chip within a communication device, the chip includes: a processing module and a transceiver module; the transceiver module may be, for example, an input / output interface, pin, or circuit on the chip, configured to receive a data packet in a first direction and transmit the data packet to another chip or module coupled to the chip; the processing module may be, for example, a processor configured to obtain a first transmission delay for the data packet in the first direction; and determine a second transmission delay for the data packet in the second direction based on the first transmission delay and the round-trip delay. The processing module may execute computer-executable instructions stored in a storage unit to support the communication device in executing the method provided in the first aspect above. Optionally, the storage unit may be a storage unit within the chip, such as a register, a cache, or the like, or a storage unit located outside the chip, such as a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, a random access memory (RAM), or the like.
[0030] In one possible implementation, the device includes a processor, a baseband circuit, a radio frequency circuit, and an antenna. The processor controls the functions of various circuit components, and the baseband circuit generates data packets, which are then processed by the radio frequency circuit for analog-to-analog conversion, filtering, amplification, and up-conversion before being transmitted to a second communication device via the antenna. Optionally, the device also includes a memory that stores necessary program instructions and data for the communication device.
[0031] In one possible implementation, the apparatus includes a communication interface and a logic circuit, wherein the communication interface is used to receive a data packet in a first direction; the logic circuit is used to obtain a first transmission delay of the data packet in the first direction; determine a second transmission delay of the data packet in a second direction based on the first transmission delay and the round-trip delay; the communication interface sends the data packet in the second direction to a second communication device, the data packet in the second direction carrying the second transmission delay; if the first direction is uplink, the second direction is downlink; or, if the first direction is downlink, the second direction is uplink.
[0032] Among them, the processor mentioned in any of the above places can be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of programs of the above-mentioned various aspects of the data transmission method.
[0033] In a fourth aspect, embodiments of the present application provide a communications device that implements the behavior of the first communications device described in the second aspect. This functionality can be implemented via hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the aforementioned functionality.
[0034] In one possible implementation, the device includes a unit or module for executing each step of the second aspect above. For example, the device includes: a receiving module for receiving a data packet in a first direction, the data packet in the first direction carries first information, the first information is used to indicate the order of the data packets in the first direction; receiving a data packet in a second direction, the data packet in the second direction carries second information, the second information is used to indicate the order of the data packets in the second direction; a processing module for determining a one-to-one correspondence between the data packets in the first direction and the data packets in the second direction based on the first information and the second information; if the first direction is uplink, the second direction is downlink; or, if the first direction is downlink, the second direction is uplink.
[0035] Optionally, a storage module is also included for storing necessary program instructions and data of the communication device.
[0036] In one possible implementation, the apparatus includes a processor and a transceiver. The processor is configured to support the communication apparatus in performing the corresponding functions of the method provided in the second aspect. The transceiver is configured to direct communication between a first communication device and a second communication device and other network devices, and to transmit data packets involved in the method to the second communication device. Optionally, the apparatus may also include a memory coupled to the processor to store program instructions and data necessary for the communication apparatus.
[0037] In one possible implementation, when the device is a chip within a communication device, the chip includes: a processing module and a transceiver module; the transceiver module may be, for example, an input / output interface, pin, or circuit on the chip, for receiving data packets in a first direction and data packets in a second direction, and transmitting the data packets to other chips or modules coupled to the chip; the processing module may be, for example, a processor, which is used to determine the one-to-one correspondence between the data packets in the first direction and the data packets in the second direction based on the first information and the second information. The processing module may execute computer-executable instructions stored in a storage unit to support the communication device in executing the method provided in the first aspect above. Optionally, the storage unit may be a storage unit within the chip, such as a register, a cache, etc., or the storage unit may be a storage unit located outside the chip, such as a ROM or other type of static storage device that can store static information and instructions, a RAM, etc.
[0038] In one possible implementation, the device includes a processor, a baseband circuit, a radio frequency circuit, and an antenna. The processor controls the functions of each circuit component, and the baseband circuit generates data packets, which are then processed by the radio frequency circuit for analog-to-analog conversion, filtering, amplification, and up-conversion before being transmitted via the antenna to other communication devices. Optionally, the device also includes a memory to store necessary program instructions and data for the communication device.
[0039] In one possible implementation, the device includes a communication interface and a logic circuit, the communication interface is used to receive data packets in a first direction, the data packets in the first direction carry first information, and the first information is used to indicate the order of the data packets in the first direction; receive data packets in a second direction, the data packets in the second direction carry second information, and the second information is used to indicate the order of the data packets in the second direction; the logic circuit is used to determine the one-to-one correspondence between the data packets in the first direction and the data packets in the second direction based on the first information and the second information; if the first direction is uplink, the second direction is downlink; or, if the first direction is downlink, the second direction is uplink.
[0040] Among them, the processor mentioned in any of the above places can be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of programs of the above-mentioned various aspects of the data transmission method.
[0041] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores computer instructions, and the computer instructions are used to execute the method of any possible implementation method of any of the above aspects.
[0042] In a sixth aspect, an embodiment of the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the method of any one of the above aspects.
[0043] In a seventh aspect, the present application provides a chip system, which includes a processor for supporting a communication device to implement the functions involved in the above aspects, such as generating or processing the data and / or information involved in the above methods. In one possible design, the chip system also includes a memory, which is used to store the necessary program instructions and data of the communication device to implement the functions of any of the above aspects. The chip system can be composed of a chip, or it can include a chip and other discrete devices. BRIEF DESCRIPTION OF THE DRAWINGS
[0044] Figure 1 This is a schematic diagram of an embodiment of a communication system in an embodiment of the present application;
[0045] Figure 2 This is a schematic diagram of an embodiment of a 5G network architecture in an embodiment of the present application;
[0046] Figure 3 This is a schematic diagram of an embodiment of a communication device in an embodiment of the present application;
[0047] Figure 4 This is a schematic diagram of an embodiment of a data transmission method in an embodiment of the present application;
[0048] Figure 5 This is a schematic diagram of another embodiment of the data transmission method in the embodiment of the present application;
[0049] Figure 6 This is a schematic diagram of another embodiment of the data transmission method in the embodiment of the present application;
[0050] Figure 7 This is a schematic diagram of another embodiment of the data transmission method in the embodiment of the present application;
[0051] Figure 8 This is a schematic diagram of an embodiment of a communication device in an embodiment of the present application;
[0052] Figure 9 This is a schematic diagram of another embodiment of a communication device in an embodiment of the present application. DETAILED DESCRIPTION
[0053] In order to make the purpose, technical solutions and advantages of this application more clearly understood, the following describes the embodiments of this application in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of this application, rather than all the embodiments. It is known to those skilled in the art that with the emergence of new application scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.
[0054] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate so that the embodiments described herein can be implemented in a sequence other than that illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or modules is not necessarily limited to those steps or modules clearly listed, but may include other steps or modules that are not clearly listed or that are inherent to these processes, methods, products or devices. The naming or numbering of steps in this application does not mean that the steps in the method flow must be executed in the time / logical sequence indicated by the naming or numbering. The process steps that have been named or numbered can be changed in the execution order according to the technical purpose to be achieved, as long as the same or similar technical effects can be achieved. The division of units in this application is a logical division. In actual application, there may be other division methods. For example, multiple units can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between each other shown or discussed can be through some interfaces, and the indirect coupling or communication connection between units can be electrical or other similar forms, which are not limited in this application. Moreover, the units or sub-units described as separate components may or may not be physically separated, may or may not be physical units, or may be distributed into multiple circuit units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this application.
[0055] Figure 1 A schematic diagram of a communication system architecture provided by an embodiment of the present application is shown as an example. Figure 1 As shown, the communication system 100 includes: a first communication device 101 and a second communication device 102. The first communication device 101 and the second communication device 102 can communicate directly or through forwarding by other devices, which is not specifically limited in this embodiment of the application.
[0056] Based on the system architecture of the communication system 100, the embodiment of the present application can provide two possible implementation methods.
[0057] In a first possible implementation, the first direction is uplink and the second direction is downlink. The first communication device 101 is configured to receive an uplink data packet (i.e., a data packet in the first direction) sent by the second communication device, calculate the uplink transmission delay (i.e., the first transmission delay) of the uplink data packet, and calculate the downlink transmission delay of the downlink data packet (i.e., the data packet in the second direction) corresponding to the uplink data packet based on the uplink transmission delay and round-trip delay of the uplink data packet; finally, the first communication device 101 sends the downlink data packet to the second communication device 102, and carries the downlink transmission delay in the downlink data packet, so that the second communication device 102 uses the downlink transmission delay to send the downlink data packet to the receiving end.
[0058] In a second possible implementation, the first direction is downlink and the second direction is uplink. The first communication device 101 is configured to receive a data packet from the downlink direction (i.e., a data packet in the first direction), calculate the downlink transmission delay of the downlink data packet (i.e., the first transmission delay), and calculate the uplink transmission delay of the uplink data packet (i.e., the data packet in the second direction) corresponding to the downlink data packet based on the downlink transmission delay and round-trip delay of the downlink data packet; finally, the first communication device 101 sends the uplink data packet to the second communication device 102, and carries the uplink transmission delay in the uplink data packet, so that the second communication device 102 uses the uplink transmission delay to send the uplink data packet.
[0059] In this embodiment, the round-trip delay can be the service round-trip delay, i.e., the total time elapsed from the time the terminal device sends data to the time the terminal device receives data fed back by the application server. The round-trip delay can also be the network round-trip delay, i.e., the total time elapsed from the time the terminal device sends data to the user plane function (UPF) and the time the terminal device receives data fed back by the UPF (i.e., excluding the time it takes for the UPF to forward the data to the application server and the time it takes for the application server to send data to the UPF). This embodiment uses the round-trip delay between the terminal device and the UPF as an example.
[0060] Optional, Figure 1 The communication system 100 shown can be applied to various communication systems, such as 5G communication systems and future wireless communication systems, etc., and is not specifically limited here.
[0061] In one exemplary embodiment, Figure 1 The communication system 100 shown is applied to Figure 2The 5G network architecture shown in the figure includes user equipment (UE), session management function (SMF), user plane function (UPF), access network node ((radio) access network, (R)AN), application function (AF), data network (DN), network data analytics function (NWDAF), access and mobility management function (AMF), policy control function (PCF), unified data management function (UDM), authentication server function (AUSF), and network exposure function (NEF). Among them, the UE communicates with the AMF network element through the next generation network (next generation, N) 1 interface (referred to as N1), the RAN device communicates with the AMF network element through the N2 interface (referred to as N2), the RAN device communicates with the UPF network element through the N3 interface (referred to as N3), the UPF network element communicates with the DN through the N6 interface (referred to as N6), and the SMF network element communicates with the UPF network element through the N4 interface (referred to as N4). In addition, it should be noted that Figure 2 The control plane network elements such as the AMF network element, SMF network element, UDM network element, AUSF network element, PCF network element or AF network element shown can also use service-oriented interfaces to interact. For example, Figure 2 As shown, the service interface provided by the AMF network element to the outside world may be Namf; the service interface provided by the SMF network element to the outside world may be Nsmf; the service interface provided by the UDM network element to the outside world may be Nudm; the service interface provided by the PCF network element to the outside world may be Npcf, the service interface provided by the AUSF network element to the outside world may be Nausf, the service interface provided by the AF network element to the outside world may be Naf, and the service interface provided by the NWDAF network element to the outside world may be Nnwdaf. For related descriptions, please refer to the 5G system architecture in the 23501 standard, which will not be repeated here. The functional descriptions of each network element or module are as follows:
[0062] SMF: Its main function is to control the establishment, modification, and deletion of sessions, the selection of user plane nodes, etc.
[0063] UPF: The main functions are packet routing and forwarding, mobility anchor, uplink classifier to support routing service flows to the data network, branch point to support multi-homed packet data unit (PDU) sessions, etc.
[0064] (R)AN: Its main function is to provide wireless connection and is located between UE and core network node.
[0065] AF: Its main function is to interact with the core network to provide services, influence business flow routing, access network capability exposure, and policy control.
[0066] DN: For example, operator services, Internet access, or third-party services.
[0067] NWDAF: Provides network data collection and analysis capabilities based on technologies such as big data and artificial intelligence.
[0068] AMF: Main functions include managing user registration, reachability detection, SMF node selection, and mobile state transition management.
[0069] PCF: Its main function is to serve as a policy decision point, providing rules based on service data flow and application detection, gating, QoS, and flow-based charging control.
[0070] UDM: The main function is to store user subscription data.
[0071] AUSF: The main function is to provide authentication services.
[0072] NEF: Securely exposes services and capabilities provided by 3GPP network functions, such as third parties, edge computing, and AF.
[0073] The first communication device in the technical solution provided in this application may be a core network device or a terminal device, and the second communication device may be an access device (such as a RAN). The core network device receives an uplink data packet sent by the terminal device through the RAN or sends a downlink data packet to the terminal device through the RAN; and the RAN receives the uplink data packet sent by the terminal device and receives the downlink data packet forwarded by the UPF. The terminal device may also be a device for implementing wireless communication functions, such as a terminal or a chip that can be used in a terminal. The terminal may be a user equipment (UE), an access terminal, a terminal unit, a terminal station, a mobile station, a mobile station, a remote station, a remote terminal, a mobile device, a wireless communication device, a terminal agent or a terminal device in a 5G network or a future evolved public land mobile network (PLMN) network. An access terminal may be a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication capabilities, a computing device or other processing device connected to a wireless modem, an in-vehicle device or a wearable device, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal used in industrial control, a wireless terminal used in self-driving vehicles, a wireless terminal used in remote medical care, a wireless terminal used in smart grids, a wireless terminal used in transportation safety, a wireless terminal used in smart cities, a wireless terminal used in smart homes, etc. The terminal may be mobile or fixed.
[0074] The RAN refers to the equipment that accesses the core network, such as the base station (Base Transceiver Station, BTS) in the Global System of Mobile Communication (GSM) system, the Code Division Multiple Access (CDMA) system, the base station (NodeB, NB) in the Wideband Code Division Multiple Access (WCDMA) system, the evolutionary base station (Evolutional Node B, eNB or eNodeB) in the Long Term Evolution (LTE) system, or a relay station, access point, vehicle-mounted equipment, wearable device, network-side equipment in the 5G network, or network equipment in the future evolved Public Land Mobile Network (PLMN) network. The core network equipment can be such as Figure 2 The network elements in the network architecture shown.
[0075] Optionally, the first communication device and the second communication device in the embodiment of the present application can also be referred to as a communication device, which can be a general device or a dedicated device, and the embodiment of the present application does not make specific limitations on this.
[0076] Optionally, the related functions of the first communication device and the second communication device in the embodiment of the present application can be implemented by a single device, or by multiple devices, or by one or more functional modules within a single device, and the embodiment of the present application does not specifically limit this. It is understood that the above functions can be network elements in hardware devices, software functions running on dedicated hardware, a combination of hardware and software, or virtualized functions instantiated on a platform (e.g., a cloud platform).
[0077] For example, the first communication device and the second communication device in the embodiment of the present application can be used to Figure 3 This is achieved by the communication device 300 in FIG. Figure 3 FIG. 3 is a schematic diagram of the structure of a communication device 300 provided in an embodiment of the present application. The communication device 300 includes one or more processors 301, a communication line 302, and at least one communication interface ( Figure 3 The example in which the communication interface 304 and a processor 301 are included is merely exemplary, and a memory 303 may be optionally included.
[0078] The processor 301 may be a general-purpose central processing unit (CPU), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits for controlling the execution of the program of the present application.
[0079] The communication line 302 may include a path for connecting different components.
[0080] Communication interface 304 can be a transceiver module for communicating with other devices or communication networks, such as Ethernet, RAN, and wireless local area networks (WLAN). For example, the transceiver module can be a device such as a transceiver or a transceiver. Alternatively, communication interface 304 can be a transceiver circuit located within processor 301 to implement signal input and output to the processor.
[0081] The memory 303 may be a device having a storage function. For example, it may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory may exist independently and be connected to the processor via the communication line 302. The memory may also be integrated with the processor.
[0082] The memory 303 is used to store computer-executable instructions for executing the solution of the present application, and the execution is controlled by the processor 301. The processor 301 is used to execute the computer-executable instructions stored in the memory 303, thereby implementing the method for reporting session management information provided in the embodiment of the present application.
[0083] Alternatively, optionally, in an embodiment of the present application, the processor 301 may also perform processing-related functions in the method for reporting session management information provided in the following embodiment of the present application, and the communication interface 304 is responsible for communicating with other devices or communication networks, which is not specifically limited in the embodiment of the present application.
[0084] Optionally, the computer-executable instructions in the embodiments of the present application may also be referred to as application code, which is not specifically limited in the embodiments of the present application.
[0085] In a specific implementation, as an embodiment, the processor 301 may include one or more CPUs, such as Figure 3 CPU0 and CPU1 in.
[0086] In a specific implementation, as an embodiment, the communication device 300 may include multiple processors, such as Figure 3 Processor 301 and processor 307 in FIG. Each of these processors can be a single-core processor or a multi-core processor. The processor here can include, but is not limited to, at least one of the following: a central processing unit (CPU), a microprocessor, a digital signal processor (DSP), a microcontroller unit (MCU), or an artificial intelligence processor, etc., and each computing device can include one or more cores for executing software instructions to perform calculations or processing.
[0087] In a specific implementation, as an embodiment, the communication device 300 may further include an output device 305 and an input device 306. The output device 305 communicates with the processor 301 and can display information in a variety of ways. For example, the output device 305 can be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector. The input device 306 communicates with the processor 301 and can receive user input in a variety of ways. For example, the input device 306 can be a mouse, a keyboard, a touch screen device, or a sensor device.
[0088] The communication device 300 may also be referred to as a communication apparatus, which may be a general purpose device or a dedicated device. For example, the communication device 300 may be a desktop computer, a portable computer, a network server, a personal digital assistant (PDA), a mobile phone, a tablet computer, a wireless terminal device, an embedded device, the terminal device, the network device, or a Figure 3 The embodiment of the present application does not limit the type of the communication device 300.
[0089] The following will be combined Figures 1 to 3 The data transmission method provided in the embodiment of the present application is described in detail.
[0090] It should be noted that the message names between network elements or the names of parameters in the messages in the following embodiments of the present application are only examples, and other names may be used in specific implementations. The embodiments of the present application do not make specific limitations on this.
[0091] Figure 4 In the example, the first direction is uplink, the second direction is downlink, the first communication device is a core network device, and the second communication device is a RAN. In this case, the data transmission method includes the following steps:
[0092] 401. The first communication device receives a data packet in a first direction.
[0093] In this embodiment, the first communication device receives an uplink data packet in the uplink direction sent by the terminal device through the RAN, wherein the uplink data packet also carries timestamp information, wherein the timestamp information is used to indicate the sending time of the uplink data packet sent by the terminal device.
[0094] Further, Figure 4 As shown, the first communication device also sends the uplink data to the application server.
[0095] 402. The first communication device obtains a first transmission delay of the data packet in the first direction.
[0096] In this embodiment, when the first communication device obtains the uplink transmission delay of the uplink data (that is, the first transmission delay), the specific operation may be as follows:
[0097] In one possible implementation, the first communications device calculates the uplink transmission delay of the uplink data packet based on the reception time and timestamp information. The reception time indicates the moment when the first communications device receives the uplink data packet, and the timestamp information indicates the moment when the uplink data packet is sent. Specifically, upon receiving the uplink data packet, the first communications device records the reception time of the uplink data packet; then parses the uplink data to obtain timestamp information indicating the moment when the uplink data packet was sent; and finally, calculates the uplink transmission delay of the uplink data packet based on the reception time and timestamp information.
[0098] In one possible implementation, the first communications device calculates the uplink transmission delay of the uplink data packet based on the sending time and timestamp information. The sending time indicates the moment when the first communications device sends the uplink data packet to the application server, and the timestamp information indicates the sending moment of the uplink data packet. Specifically, when forwarding the uplink data packet to the application server, the first communications device records the sending time of the uplink data packet; simultaneously, it parses the uplink data to obtain timestamp information indicating the sending moment of the uplink data packet; and finally, it calculates the uplink transmission delay of the uplink data packet based on the sending time and timestamp information.
[0099] It is understandable that the uplink transmission delay in the above solution is only used to indicate the uplink transmission delay of the uplink data packet sent by the terminal device to the core network device. If the uplink transmission delay also includes the interaction delay between the core network device and the application server and the delay of the application server in processing data, the uplink transmission delay can be calculated based on the reception time of the downlink data packet sent by the application server by the first communication device and the transmission time of the uplink data packet by the terminal device.
[0100] 403. The first communication device determines a second transmission delay of a data packet in a second direction according to the first transmission delay and the round-trip delay.
[0101] After obtaining the uplink transmission delay of the uplink data packet, the first communication device determines the downlink transmission delay of the downlink data packet corresponding to the uplink data packet using the round-trip delay and the uplink transmission delay. The first communication device may use the following technical solution to obtain the downlink transmission delay of the downlink data packet:
[0102] In one possible implementation, the first communications device calculates the difference between the round-trip delay and the uplink transmission delay to obtain the downlink transmission delay. In this solution, to reduce processing overhead, the first communications device may adjust the downlink transmission delay when the uplink transmission delay is greater than or equal to a first preset threshold. That is, when the uplink transmission delay is greater than or equal to the first preset threshold, the first communications device calculates the difference between the round-trip delay and the uplink transmission delay to obtain the downlink transmission delay.
[0103] In another possible implementation, the first communication device can obtain the average transmission delay of the uplink transmission delay of the data packets in the uplink direction within a preset time period; when the average transmission delay is greater than or equal to a second preset threshold, the first communication device calculates the difference between the round-trip delay and the average transmission delay to obtain the downlink transmission delay.
[0104] In another possible implementation, the first communication device can obtain the predicted transmission delay of the data packet in the downlink direction, where the predicted transmission delay is associated with the time period and / or location information; then, in the time period and / or the location information, the first communication device determines the predicted transmission delay as the downlink transmission delay.
[0105] In this embodiment, the first communication device can receive the downlink data packet sent by the application server.
[0106] 404. The first communication device sends the data packet in the second direction to the second communication device, where the data packet in the second direction carries the second transmission delay.
[0107] The first communication device sends a data packet in a second direction (ie, a downlink data packet) to the second communication device, wherein the data packet in the second direction carries the second transmission delay (ie, the downlink transmission delay).
[0108] In one possible implementation, the first communication device includes first indication information in the header of the uplink data packet, and the first indication information is used to indicate the downlink transmission delay. In this solution, the first communication device may also include second indication information, and the second indication information is used to instruct the second communication device to skip the packet delay budget information (i.e., (Packet Delay Budget, PDB) information) indicated by the quality of service flow identifier. It can be understood that the second indication information can be actual indication information (i.e., the second indication information occupies a part of the bits), or it can be directly the first indication information (i.e., in addition to indicating the downlink transmission delay, the first indication information implicitly means to instruct the second communication device to skip the packet delay budget information indicated by the quality of service flow identifier).
[0109] 405. The second communication device sends the downlink data packet to the terminal device according to the downlink transmission delay.
[0110] In this embodiment, Figure 4 The dotted line in the middle is used to indicate that the step is optional. The following steps are the same and will not be repeated here.
[0111] Figure 4The example in which the first direction is uplink and the second direction is downlink is used as an example. In another possible implementation, if the first direction is downlink and the second direction is uplink, the first communication device may be a terminal device and the second communication device may be a RAN. The first communication device receives a downlink data packet sent by a core network device through a second communication device, and then calculates the downlink transmission delay of the downlink data packet; then, based on the round-trip delay and the downlink transmission delay, calculates the uplink transmission delay of the uplink data packet corresponding to the downlink data packet, and carries the uplink transmission delay in the uplink data packet and sends it to the second communication device, so that the second communication device uses the uplink transmission delay to send the uplink data packet to the core network device.
[0112] At the same time, in this solution, in order to solve the association problem of uplink and downlink data packets, the uplink data packet also carries first information, and the first information is used to indicate the order of the uplink data packets. The downlink data packet also carries second information, and the second information is used to indicate the order of the downlink data packets, wherein the first information and the second information are used to determine that the uplink data packet and the downlink data packet are in a one-to-one correspondence. That is, if the uplink data packet is used to request A, then the downlink data packet carries A. In this embodiment, the first information and the second information can be counters (i.e., message counts). For example, the first information in the first uplink data packet is 1, and the second information in the downlink data packet corresponding to the first uplink data packet is 1; the first information in the second uplink data packet is 2, and the second information in the downlink data packet corresponding to the second uplink data packet is 2. Therefore, when the first communication device determines the association relationship between the uplink and downlink data packets, it can be judged based on whether the counters are the same.
[0113] In the technical solution provided by this embodiment, the first communication device carries the transmission delay with the packet, eliminating the need for the second communication device to query the transmission delay based on the packet delay budget information indicated by the quality of service flow identifier. This enables precise dynamic adjustment of the transmission delay, improving the user experience. Furthermore, a one-to-one correspondence is established between uplink and downlink data packets, resolving the issue of out-of-order data packets.
[0114] Figure 5 In the example, the first direction is uplink, the second direction is downlink, the first communication device is a UPF, and the second communication device is a RAN. If the downlink transmission delay is calculated by the UPF, the data transmission method includes the following steps:
[0115] 501. The terminal device sends an uplink data packet to the UPF via the RAN.
[0116] exist Figure 2In the network architecture shown, if the terminal device has completed network registration and completed the establishment of the PDU session, the data connection between the terminal device and the application server has been established. That is, the terminal device can Figure 2 The network architecture of the RAN is used to exchange data with the application server. In this embodiment, if the data transmission is applied to a VR application, after the VR camera captures the motion data, the VR on the terminal device generates an uplink data packet, wherein the terminal device includes timestamp information for the uplink data packet and the terminal device can send the uplink data packet to the UPF via the RAN. At the same time, the uplink data packet can also include first information, which is used to indicate the order of the uplink data packets.
[0117] In this embodiment, the uplink data packet can be an uplink IP data packet, and the uplink IP data packet includes an IP header and an IP data payload. The first information can be included in the IP header or in the IP data payload. In an exemplary solution, the first information can be a counter (i.e., a message count), and the message count can be placed in the Option field of the IP header. Under this solution, each time an action data is captured and a corresponding uplink IP data packet is generated, the value of the message count will be incremented accordingly (e.g., +1). For example, the value of the message count contained in the first uplink data packet is 1, the value of the message count contained in the second uplink data packet is 2, and so on.
[0118] 502. The UPF sends the uplink data packet to the application server and calculates the uplink transmission delay of the uplink data packet.
[0119] After receiving the uplink data packet, the UPF parses the uplink data packet to obtain the timestamp information and the first information and records them; then the uplink data packet is forwarded to the application server. It is understandable that if the uplink data packet is an uplink IP data packet, the UPF can obtain the timestamp information and the first information (such as message count) through deep packet inspection (DPI). It is understandable that the UPF can also record the receiving time after receiving the uplink data packet, so the UPF can calculate the uplink transmission delay of the uplink data packet through the receiving time and timestamp information. Optionally, the UPF can also record the sending time of sending the uplink data packet to the application server, and then calculate the uplink transmission delay of the uplink data packet based on the sending time and the timestamp information.
[0120] 503. The UPF receives the downlink data packet sent by the application server.
[0121] The application server obtains the action data from the uplink IP data packet and then renders the next frame corresponding to the action. The application server generates a downlink data packet with the image data and sends it to the UPF. It is understandable that the application server can encapsulate the image data into an IP packet to generate a downlink IP data packet. The downlink IP data packet also contains a counter message count. The value of this message count corresponds to the message count value of the corresponding uplink IP data packet, such as the same value or a value based on a preset difference, etc. For example, the downlink data packet of the corresponding image generated by the action data in the first uplink IP data packet has a message count value of 1; the downlink IP data packet generated by the second uplink IP data packet has a message count value of 2.
[0122] 504. When there is a one-to-one correspondence between the downlink data packet and the uplink data packet, the UPF calculates the downlink transmission delay of the downlink data packet according to the round-trip delay and the uplink transmission delay of the uplink data packet.
[0123] The UPF receives a downlink IP packet from the application server and obtains the message count value contained in the downlink IP packet through the DPI. The UPF matches the downlink message count value with the previous uplink message count value until it finds an uplink message count value that matches the downlink message count value. The UPF subtracts the uplink transmission delay of the uplink IP packet corresponding to the message count from the round-trip delay to obtain the required delay for the downlink IP packet.
[0124] In this embodiment, in order to reduce the processing volume of the UPF, the UPF can recalculate the downlink transmission delay only when the uplink transmission delay is greater than or equal to the first preset threshold. If it is not greater than or equal to the first preset threshold, the UPF can directly use the configured downlink transmission delay as the downlink transmission delay of the downlink data packet. For example, assuming that the round-trip delay is 10 milliseconds, the first preset threshold is 5 milliseconds, the pre-configured uplink transmission delay is 5 milliseconds, and the downlink transmission delay is 5 milliseconds. If the uplink transmission delay is 4 milliseconds, that is, less than the first preset threshold, the UPF can use the 5 milliseconds determined as the downlink transmission delay of the downlink data packet; if the uplink transmission delay is 6 milliseconds, that is, greater than the first preset threshold, the UPF determines that the downlink transmission delay is 4 milliseconds based on the round-trip delay and the uplink transmission delay.
[0125] 505. The UPF sends a downlink data packet to the RAN, where the downlink data packet carries the downlink transmission delay.
[0126] The UPF sends a downlink data packet to the RAN. In one exemplary solution, the UPF may encapsulate the downlink data packet into a General Packet Radio Service Tunneling Protocol (GTP) message for transmission over the N3 interface between the RAN and the UPF. The GTP message header includes first indication information for indicating the downlink transmission delay (in one exemplary solution, the first indication information is a PDB value information element, the value of which is equal to the downlink transmission delay corresponding to the downlink data packet). Optionally, the GTP message header may also include second indication information for instructing the RAN to skip using the PDB information indicated by the quality of service flow identifier.
[0127] 506. The RAN sends the downlink data packet to the terminal device according to the downlink transmission delay.
[0128] After receiving the downlink data packet, if the RAN detects that the downlink data packet includes the first indication information and the second indication information, the RAN may ignore the PDB information indicated by the quality of service flow identifier carried in the downlink data packet (equivalent to the fixed PDB indicated by the quality of service flow identifier being invalid) and use the downlink transmission delay indicated by the first indication information as the basis. In one exemplary solution, the RAN schedules air interface resources according to the delay value indicated by the PDB value and transmits the downlink data packet to the terminal device.
[0129] Optionally, the RAN may set a policy such that, as long as the downlink data packet includes the first indication information, the RAN defaults to skipping the use of the PDB information indicated by the quality of service flow identifier. In one exemplary solution, if the RAN detects that the downlink data packet includes the PDB value, the RAN ignores the PDB information indicated by the QFI carried in the downlink data packet based on the latency value indicated by the PDB value, and still ensures transmission of the downlink data packet based on the value indicated by the PDB value. The RAN node schedules resources based on the latency value indicated by the PDB value and sends the downlink data packet to the terminal device.
[0130] In this embodiment, the UPF marks associated uplink and downlink packets by incrementing the message count. The UPF also uses DPI to identify the message count in application-layer data to correctly associate the uplink and downlink packets. The UPF also adds a dynamic PDB to the downlink packet header to instruct the RAN node to schedule the downlink packet based on the latest dynamic PDB value, enabling precise and flexible downlink packet scheduling.
[0131] Figure 6 In the example, the first direction is uplink, the second direction is downlink, the first communication device is a UPF, and the second communication device is a RAN. If the downlink transmission delay is calculated by the SMF, the data transmission method includes the following steps:
[0132] 601. The terminal device sends an uplink data packet to the UPF via the RAN.
[0133] exist Figure 2 In the network architecture shown, if the terminal device has completed network registration and completed the establishment of the PDU session, the data connection between the terminal device and the application server has been established. That is, the terminal device can Figure 2 The network architecture of the RAN is used to exchange data with the application server. In this embodiment, if the data transmission is applied to a VR application, after the VR camera captures the motion data, the VR on the terminal device generates an uplink data packet. The terminal device adds timestamp information to the uplink data packet and transmits the uplink data packet to the UPF via the RAN. The uplink data packet may also include first information indicating the sequence of the uplink data packets.
[0134] In this embodiment, the uplink data packet can be an uplink IP data packet, and the uplink IP data packet includes an IP header and an IP data payload. The first information can be included in the IP header or in the IP data payload. In an exemplary solution, the first information can be a counter (i.e., a message count), and the message count can be placed in the Option field of the IP header. Under this solution, each time an action data is captured and a corresponding uplink IP data packet is generated, the value of the message count will be incremented accordingly (e.g., +1). For example, the value of the message count contained in the first uplink data packet is 1, the value of the message count contained in the second uplink data packet is 2, and so on.
[0135] 602. The UPF sends the uplink data packet to the application server and calculates the uplink transmission delay of the uplink data packet.
[0136] After receiving the uplink data packet, the UPF parses the uplink data packet to obtain the timestamp information and the first information and records them; then the uplink data packet is forwarded to the application server. It is understandable that if the uplink data packet is an uplink IP data packet, the UPF can obtain the timestamp information and the first information (such as message count) through deep packet inspection (DPI). It is understandable that the UPF can also record the receiving time after receiving the uplink data packet, so the UPF can calculate the uplink transmission delay of the uplink data packet through the receiving time and timestamp information. Optionally, the UPF can also record the sending time of sending the uplink data packet to the application server, and then calculate the uplink transmission delay of the uplink data packet based on the sending time and the timestamp information.
[0137] 603. The UPF reports the uplink transmission delay to the SMF.
[0138] The UPF reports the calculated uplink transmission delay to the SMF. It is understood that the UPF can adopt the following scheme when reporting the uplink transmission delay:
[0139] In one possible implementation, the UPF may report the uplink transmission delay in real time, that is, it reports once an uplink transmission delay is calculated.
[0140] In another possible implementation, the UPF may report the calculated uplink transmission delays in batches to the SMF after the accumulated uplink transmission delays reach a preset number or the data transmission duration reaches a preset duration. For example, the UPF may accumulate the uplink transmission delays of 100 uplink data packets and report them all at once to the SMF. Alternatively, the UPF may accumulate the uplink transmission delays of uplink data packets within 2 minutes and report them all at once to the SMF.
[0141] 604. The SMF determines a downlink transmission delay according to the uplink transmission delay and the round-trip delay.
[0142] After receiving the uplink transmission delay, the SMF calculates the downlink transmission delay based on the round-trip delay and the uplink transmission delay. The round-trip delay can be pre-configured on the SMF or sent to the SMF by another network element. It is understood that the SMF can use the following scheme to calculate the downlink transmission delay:
[0143] In one possible implementation, the SMF calculates the downlink transmission delay based on a single reported uplink transmission delay. For example, a corresponding downlink transmission delay is calculated for each reported uplink transmission delay. To reduce the SMF's processing load, the SMF may calculate the downlink transmission delay corresponding to a specific uplink transmission delay when the uplink transmission delay is greater than or equal to a first preset threshold.
[0144] In another possible implementation, the SMF can calculate the downlink transmission delay based on multiple uplink transmission delays. In one exemplary solution, the SMF counts the uplink transmission delays within a preset duration and averages them to obtain an average uplink transmission delay. If the average uplink transmission delay shows an upward trend or is greater than or equal to a second preset threshold, the SMF calculates the average downlink transmission delay based on the round-trip delay and the average uplink transmission delay as the downlink transmission delay.
[0145] 605. The SMF initiates a PDU session update process to configure the downlink transmission delay to the UPF.
[0146] After the SMF calculates the downlink transmission delay, it initiates the PDU session update process to configure the downlink transmission delay to the UPF.
[0147] 606. The UPF receives the downlink data packet sent by the application server.
[0148] The application server obtains the action data from the uplink IP data packet and then renders the next frame corresponding to the action. The application server generates a downlink data packet with the image data and sends it to the UPF. It is understandable that the application server can encapsulate the image data into an IP packet to generate a downlink IP data packet. The downlink IP data packet also contains a counter message count. The value of this message count corresponds to the message count value of the corresponding uplink IP data packet, such as the same value or a value based on a preset difference, etc. For example, the downlink data packet of the corresponding image generated by the action data in the first uplink IP data packet has a message count value of 1; the downlink IP data packet generated by the second uplink IP data packet has a message count value of 2.
[0149] 607. The UPF sends the downlink data packet to the RAN, where the downlink data packet carries the downlink transmission delay.
[0150] The UPF sends a downlink data packet to the RAN. In one exemplary solution, the UPF may encapsulate the downlink data packet into a General Packet Radio Service Tunneling Protocol (GTP) message for transmission over the N3 interface between the RAN and the UPF. The GTP message header includes first indication information for indicating the downlink transmission delay (in one exemplary solution, the first indication information is a PDB value information element, the value of which is equal to the downlink transmission delay corresponding to the downlink data packet). Optionally, the GTP message header may also include second indication information for instructing the RAN to skip using the PDB information indicated by the quality of service flow identifier.
[0151] It is understandable that after the UPF receives the downlink data packet sent by the application server, it can also associate the downlink data packet with the uplink data packet to achieve sorted sending. In an exemplary solution, the UPF obtains the message count value contained in the downlink data packet through DPI. The UPF matches the previous uplink message count value based on the downlink message count value until it finds an uplink message count value that is equal to it. At this time, the uplink data packet indicated by the message count value corresponds to the downlink data packet, and in order to prevent the uplink and downlink data from being out of order, the UPF can sort according to the message count value.
[0152] 608. The RAN sends the downlink data packet to the terminal device according to the downlink transmission delay.
[0153] After receiving the downlink data packet, if the RAN detects that the downlink data packet includes the first indication information and the second indication information, the RAN may ignore the PDB information indicated by the quality of service flow identifier carried in the downlink data packet (equivalent to the fixed PDB indicated by the quality of service flow identifier being invalid) and use the downlink transmission delay indicated by the first indication information as the basis. In one exemplary solution, the RAN schedules air interface resources according to the delay value indicated by the PDB value and transmits the downlink data packet to the terminal device.
[0154] Optionally, the RAN may set a policy such that, as long as the downlink data packet includes the first indication information, the RAN defaults to skipping the use of the PDB information indicated by the quality of service flow identifier. In one exemplary solution, if the RAN detects that the downlink data packet includes the PDB value, the RAN ignores the PDB information indicated by the QFI carried in the downlink data packet based on the latency value indicated by the PDB value, and still ensures transmission of the downlink data packet based on the value indicated by the PDB value. The RAN node schedules resources based on the latency value indicated by the PDB value and sends the downlink data packet to the terminal device.
[0155] Figure 7 In the example, the first direction is uplink, the second direction is downlink, the first communication device is a UPF, and the second communication device is a RAN. If the downlink transmission delay is calculated by the NWDAF, the data transmission method includes the following steps:
[0156] 701. The terminal device sends an uplink data packet to the UPF via the RAN.
[0157] exist Figure 2 In the network architecture shown, if the terminal device has completed network registration and completed the establishment of the PDU session, the data connection between the terminal device and the application server has been established. That is, the terminal device can Figure 2 The network architecture of the RAN is used to exchange data with the application server. In this embodiment, if the data transmission is applied to a VR application, after the VR camera captures the motion data, the VR on the terminal device generates an uplink data packet. The terminal device adds timestamp information to the uplink data packet and transmits the uplink data packet to the UPF via the RAN. The uplink data packet may also include first information indicating the sequence of the uplink data packets.
[0158] In this embodiment, the uplink data packet can be an uplink IP data packet, and the uplink IP data packet includes an IP header and an IP data payload. The first information can be included in the IP header or in the IP data payload. In an exemplary solution, the first information can be a counter (i.e., a message count), and the message count can be placed in the Option field of the IP header. Under this solution, each time an action data is captured and a corresponding uplink IP data packet is generated, the value of the message count will be incremented accordingly (e.g., +1). For example, the value of the message count contained in the first uplink data packet is 1, the value of the message count contained in the second uplink data packet is 2, and so on.
[0159] 702. The UPF sends the uplink data packet to the application server and calculates the uplink transmission delay of the uplink data packet.
[0160] After receiving the uplink data packet, the UPF parses the uplink data packet to obtain the timestamp information and the first information and records them; then the uplink data packet is forwarded to the application server. It is understandable that if the uplink data packet is an uplink IP data packet, the UPF can obtain the timestamp information and the first information (such as message count) through deep packet inspection (DPI). It is understandable that the UPF can also record the receiving time after receiving the uplink data packet, so the UPF can calculate the uplink transmission delay of the uplink data packet through the receiving time and timestamp information. Optionally, the UPF can also record the sending time of sending the uplink data packet to the application server, and then calculate the uplink transmission delay of the uplink data packet based on the sending time and the timestamp information.
[0161] 703. The UPF reports the uplink transmission delay to the NWDAF.
[0162] The UPF reports the calculated uplink transmission delay to the NWDAF. It is understood that the UPF can adopt the following scheme when reporting the uplink transmission delay:
[0163] In one possible implementation, the UPF may report the uplink transmission delay in real time, that is, it reports once an uplink transmission delay is calculated.
[0164] In another possible implementation, the UPF may report the calculated uplink transmission delays in batches to the NWDAF after the accumulated uplink transmission delays reach a preset number or the data transmission duration reaches a preset duration. For example, the UPF may accumulate the uplink transmission delays of 100 uplink data packets and report them all to the NWDAF. Alternatively, the UPF may accumulate the uplink transmission delays of uplink data packets within 2 minutes and report them all to the NWDAF.
[0165] 704. The NWDAF determines a downlink transmission delay according to the uplink transmission delay and the round-trip delay.
[0166] After receiving the uplink transmission delay, the NWDAF calculates the downlink transmission delay based on the round-trip delay and the uplink transmission delay. The round-trip delay can be pre-configured on the NWDAF or sent to the NWDAF by another network element. It is understood that the NWDAF can use the following scheme to calculate the downlink transmission delay:
[0167] In one possible implementation, the NWDAF calculates the downlink transmission delay based on a single reported uplink transmission delay. For example, a corresponding downlink transmission delay is calculated for each reported uplink transmission delay. To reduce NWDAF processing, the NWDAF may calculate the corresponding downlink transmission delay when a specific uplink transmission delay is greater than or equal to a first preset threshold.
[0168] In another possible implementation, the NWDAF can calculate the downlink transmission delay based on multiple uplink transmission delays. In one exemplary solution, the NWDAF counts the uplink transmission delays within a preset duration and averages them to obtain an average uplink transmission delay. If the average uplink transmission delay shows an upward trend or is greater than or equal to a second preset threshold, the NWDAF calculates the average downlink transmission delay based on the round-trip delay and the average uplink transmission delay as the downlink transmission delay.
[0169] In another possible implementation, the NWDAF can also predict a predicted transmission delay based on historical uplink transmission delays and current network parameters, number of users, time period, location information, and other information. The predicted transmission delay is associated with the time period and / or location information. That is, the predicted transmission delay is only applicable to a specific time period or a specific location, or both.
[0170] 705. The NWDAF sends the downlink transmission delay to the SMF.
[0171] 706. The SMF initiates a PDU session update process to configure the downlink transmission delay to the UPF.
[0172] After the SMF calculates the downlink transmission delay, it initiates the PDU session update process to configure the downlink transmission delay to the UPF.
[0173] Optionally, the NWDAF may also send the downlink transmission delay to the UPF. For example, the UPF subscribes to a service from the NWDAF for subscribing to a predicted downlink transmission delay. When the NWDAF calculates a predicted downlink transmission delay, it may send the predicted downlink transmission delay to the UPF via a service notification.
[0174] 707. The UPF receives the downlink data packet sent by the application server.
[0175] The application server obtains the action data from the uplink IP data packet and then renders the next frame corresponding to the action. The application server generates a downlink data packet with the image data and sends it to the UPF. It is understandable that the application server can encapsulate the image data into an IP packet to generate a downlink IP data packet. The downlink IP data packet also contains a counter message count. The value of this message count corresponds to the message count value of the corresponding uplink IP data packet, such as the same value or a value based on a preset difference, etc. For example, the downlink data packet of the corresponding image generated by the action data in the first uplink IP data packet has a message count value of 1; the downlink IP data packet generated by the second uplink IP data packet has a message count value of 2.
[0176] 708. The UPF sends the downlink data packet to the RAN, where the downlink data packet carries the downlink transmission delay.
[0177] The UPF sends a downlink data packet to the RAN. In one exemplary solution, the UPF may encapsulate the downlink data packet into a General Packet Radio Service Tunneling Protocol (GTP) message for transmission over the N3 interface between the RAN and the UPF. The GTP message header includes first indication information for indicating the downlink transmission delay (in one exemplary solution, the first indication information is a PDB value information element, the value of which is equal to the downlink transmission delay corresponding to the downlink data packet). Optionally, the GTP message header may also include second indication information for instructing the RAN to skip using the PDB information indicated by the quality of service flow identifier.
[0178] It is understandable that after the UPF receives the downlink data packet sent by the application server, it can also associate the downlink data packet with the uplink data packet to achieve sorted sending. In an exemplary solution, the UPF obtains the message count value contained in the downlink data packet through DPI. The UPF matches the previous uplink message count value based on the downlink message count value until it finds an uplink message count value that is equal to it. At this time, the uplink data packet indicated by the message count value corresponds to the downlink data packet, and in order to prevent the uplink and downlink data from being out of order, the UPF can sort according to the message count value.
[0179] 709. The RAN sends the downlink data packet to the terminal device according to the downlink transmission delay.
[0180] After receiving the downlink data packet, if the RAN detects that the downlink data packet includes the first indication information and the second indication information, the RAN may ignore the PDB information indicated by the quality of service flow identifier carried in the downlink data packet (equivalent to the fixed PDB indicated by the quality of service flow identifier being invalid) and use the downlink transmission delay indicated by the first indication information as the basis. In one exemplary solution, the RAN schedules air interface resources according to the delay value indicated by the PDB value and transmits the downlink data packet to the terminal device.
[0181] Optionally, the RAN may set a policy such that, as long as the downlink data packet includes the first indication information, the RAN defaults to skipping the use of the PDB information indicated by the quality of service flow identifier. In one exemplary solution, if the RAN detects that the downlink data packet includes the PDB value, the RAN ignores the PDB information indicated by the QFI carried in the downlink data packet based on the latency value indicated by the PDB value, and still ensures transmission of the downlink data packet based on the value indicated by the PDB value. The RAN node schedules resources based on the latency value indicated by the PDB value and sends the downlink data packet to the terminal device.
[0182] It can be understood that in the above embodiments, the methods and / or steps implemented by the first communication device can also be implemented by components (such as chips or circuits) that can be used for the first communication device; the methods and / or steps implemented by the second communication device can also be implemented by components (such as chips or circuits) that can be used for the second communication device; the methods and / or steps implemented by the core network device can also be implemented by components (such as chips or circuits) that can be used for the core network device.
[0183] The above primarily describes the solutions provided by the embodiments of the present application from the perspective of interaction between various devices. Accordingly, the embodiments of the present application also provide a communications device. This communications device may be the first communications device in the method embodiments described above, or a device including the first communications device, or a component usable for the first communications device; or the second communications device in the method embodiments described above, or a device including the second communications device, or a component usable for the second communications device; or the core network element in the method embodiments described above, or a device including the core network element, or a component usable for the core network element. It will be understood that, to implement the aforementioned functions, the communications device includes hardware structures and / or software modules corresponding to the respective functions. Those skilled in the art will readily appreciate that, in conjunction with the various exemplary units and algorithm steps described in the embodiments disclosed herein, the present application can be implemented in hardware or a combination of hardware and computer software. Whether a function is implemented in hardware or by computer software driving hardware depends on the specific application and design constraints of the technical solution. Professionals may use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.
[0184] Please refer to the following for details: Figure 8 As shown, the communication device 800 in the embodiment of the present application includes: a receiving module 801, a processing module 802 and a sending module 803, wherein the receiving module 801, the processing module 802 and the sending module 803 are connected via a bus. The communication device 800 can be used to perform some or all of the functions of the above-mentioned devices.
[0185] For example, the receiving module 801 is used to receive a data packet in a first direction; the processing module 802 is used to obtain a first transmission delay of the data packet in the first direction; and determine a second transmission delay of the data packet in the second direction based on the first transmission delay and the round-trip delay; the sending module 803 is used to send the data packet in the second direction to a second communication device, and the data packet in the second direction carries the second transmission delay; if the first direction is uplink, the second direction is downlink; or, if the first direction is downlink, the second direction is uplink.
[0186] Optionally, the header of the data packet in the second direction includes first indication information, and the first indication information is used to indicate the second transmission delay.
[0187] Optionally, the data packet in the second direction further includes second indication information, where the second indication information is used to instruct the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier.
[0188] Optionally, the data packet in the first direction includes first information, and the first information is used to indicate the order of the data packets in the first direction; the data packet in the second direction includes second information, and the second information is used to indicate the order of the data packets in the second direction; the first information and the second information are used to determine that the data packets in the first direction and the data packets in the second direction are in a one-to-one correspondence.
[0189] Optionally, the processing module 802 is specifically configured to determine a second transmission delay of the data packet in the second direction according to a difference between the round-trip delay and the first transmission delay when the first transmission delay is greater than or equal to a first preset threshold.
[0190] Optionally, the receiving module 801 is also used to obtain the average transmission delay of the data packet in the first direction; the processing module 802 is also used to determine the second transmission delay of the data packet in the second direction based on the difference between the round-trip delay and the average transmission delay when the average transmission delay is greater than or equal to a second preset threshold.
[0191] Optionally, the average transmission delay is obtained by a third communication device counting the transmission delays of data packets in the first direction reported by the first communication device within a preset time period; the receiving module 801 is used to receive the average transmission delay from the third communication device.
[0192] Optionally, the receiving module 801 is also used to obtain the predicted transmission delay of the data packet in the second direction, and the predicted transmission delay is associated with the time period and / or location information; the processing module 802 is also used to determine that the predicted transmission delay is the second transmission delay of the data packet in the second direction in the time period and / or the location information.
[0193] Optionally, the predicted transmission delay is predicted by the fourth communication device based on the historical transmission delay and current status information of the data packets in the first direction reported by the first communication device, and the current status information includes current network parameters, number of users, time period and location information; the receiving module 801 is specifically used to receive the average transmission delay from the fourth communication device.
[0194] Optionally, the processing module 802 is specifically used to calculate the first transmission delay based on the receiving time and timestamp information, the receiving time is used to indicate the moment when the first communication device receives the data packet in the first direction, and the timestamp information is used to indicate the sending moment of the data packet in the first direction; or, calculate the first transmission delay based on the sending time and timestamp information, the sending time is used to indicate the moment when the first communication device sends the data packet in the first direction to the application server, and the timestamp information is used to indicate the sending moment of the data packet in the first direction.
[0195] Optionally, the communication device 800 further includes a storage module, which is coupled to the processing module so that the processing module can execute computer-executable instructions stored in the storage module to implement the functions of the meeting record processing device in the above-mentioned method embodiment. In one example, the storage module optionally included in the communication device 800 can be a storage unit within the chip, such as a register, cache, etc. The storage module can also be a storage unit located outside the chip, such as a ROM or other type of static storage device capable of storing static information and instructions, RAM, etc.
[0196] It should be understood that the above Figure 8 The processes executed between the modules of the communication device in the corresponding embodiment are the same as those in the aforementioned Figures 4 to 7 The process executed by the communication device in the corresponding method embodiment is similar, and the details will not be repeated here.
[0197] Please refer to the following for details: Figure 9 As shown, the communication device 900 in the embodiment of the present application includes: a receiving module 901 and a processing module 902, wherein the receiving module 901 and the processing module 902 are connected via a bus. The communication device 900 can be used to perform part or all of the functions of the above-mentioned devices.
[0198] For example, the receiving module 901 is configured to receive a data packet in a first direction, the data packet in the first direction carrying first information, the first information being used to indicate an order of the data packets in the first direction; and receive a data packet in a second direction, the data packet in the second direction carrying second information, the second information being used to indicate an order of the data packets in the second direction; and the processing module 902 is configured to determine a one-to-one correspondence between the data packet in the first direction and the data packet in the second direction based on the first information and the second information.
[0199] If the first direction is uplink, the second direction is downlink; or if the first direction is downlink, the second direction is uplink.
[0200] Optionally, the processing module 902 is also used to obtain a first transmission delay of the data packet in the first direction; determine a second transmission delay of the data packet in the second direction based on the first transmission delay and the round-trip delay; the communication device also includes a sending module 903, used to send the data packet in the second direction to a second communication device, and the data packet in the second direction carries the second transmission delay.
[0201] Optionally, the header of the data packet in the second direction includes first indication information, and the first indication information is used to indicate the second transmission delay.
[0202] Optionally, the data packet in the second direction further includes second indication information, where the second indication information is used to instruct the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier.
[0203] Optionally, the processing module 902 is specifically configured to determine a second transmission delay of the data packet in the second direction according to a difference between the round-trip delay and the first transmission delay when the first transmission delay is greater than or equal to a first preset threshold.
[0204] Optionally, the receiving module 901 is also used to obtain the average transmission delay of the data packet in the first direction; the processing module 902 is also used to determine the second transmission delay of the data packet in the second direction based on the difference between the round-trip delay and the average transmission delay when the average transmission delay is greater than or equal to a second preset threshold.
[0205] Optionally, the average transmission delay is obtained by a third communication device counting the transmission delays of data packets in the first direction reported by the first communication device within a preset time period; the receiving module 901 is used to receive the average transmission delay from the third communication device.
[0206] Optionally, the receiving module 901 is also used to obtain the predicted transmission delay of the data packet in the second direction, and the predicted transmission delay is associated with the time period and / or location information; the processing module 902 is also used to determine that the predicted transmission delay is the second transmission delay of the data packet in the second direction in the time period and / or the location information.
[0207] Optionally, the predicted transmission delay is predicted by the fourth communication device based on the historical transmission delay and current status information of the data packets in the first direction reported by the first communication device, and the current status information includes current network parameters, number of users, time period and location information; the receiving module 901 is specifically used to receive the average transmission delay from the fourth communication device.
[0208] Optionally, the processing module 902 is specifically used to calculate the first transmission delay based on the receiving time and timestamp information, the receiving time is used to indicate the moment when the first communication device receives the data packet in the first direction, and the timestamp information is used to indicate the sending moment of the data packet in the first direction; or, calculate the first transmission delay based on the sending time and timestamp information, the sending time is used to indicate the moment when the first communication device sends the data packet in the first direction to the application server, and the timestamp information is used to indicate the sending moment of the data packet in the first direction.
[0209] Optionally, the communication device 900 further includes a storage module, which is coupled to the processing module so that the processing module can execute computer-executable instructions stored in the storage module to implement the functions of the meeting record processing device in the above-mentioned method embodiment. In one example, the storage module optionally included in the communication device 900 can be a storage unit within the chip, such as a register, cache, etc. The storage module can also be a storage unit located outside the chip, such as a ROM or other type of static storage device capable of storing static information and instructions, RAM, etc.
[0210] It should be understood that the above Figure 9 The processes executed between the modules of the communication device in the corresponding embodiment are the same as those in the aforementioned Figures 4 to 7 The process executed by the communication device in the corresponding method embodiment is similar, and the details will not be repeated here.
[0211] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0212] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0213] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0214] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0215] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0216] As mentioned above, the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or replace some of the technical features therein with equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application also intends to include these modifications and variations.
Claims
1. A data transmission method, characterized in that: include: The first communication device receives a data packet in a first direction; The first communication device obtains a first transmission delay of a data packet in the first direction; The first communication device determines a second transmission delay of a data packet in a second direction according to the first transmission delay and the round-trip delay; The first communication device sends a data packet in the second direction to a second communication device, where the data packet in the second direction carries the second transmission delay, and the data packet in the second direction includes second indication information, where the second indication information is used to instruct the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier; If the first direction is uplink, the second direction is downlink; or if the first direction is downlink, the second direction is uplink.
2. The method according to claim 1, characterized in that The header of the data packet in the second direction includes first indication information, where the first indication information is used to indicate the second transmission delay.
3. The method according to claim 1 or 2, characterized in that The data packet in the first direction includes first information, where the first information is used to indicate an order of the data packets in the first direction; The data packets in the second direction include second information, and the second information is used to indicate the order of the data packets in the second direction; the first information and the second information are used to determine that the data packets in the first direction are in a one-to-one correspondence with the data packets in the second direction.
4. The method according to claim 1 or 2, characterized in that The first communication device determines, according to the first transmission delay and the round-trip delay, a second transmission delay of a data packet in a second direction, including: When the first transmission delay is greater than or equal to a preset threshold, the first communication device determines a second transmission delay of the data packet in the second direction according to a difference between the round-trip delay and the first transmission delay.
5. The method according to claim 1 or 2, characterized in that The method further comprises: The first communication device obtains an average transmission delay of data packets in the first direction; When the average transmission delay is greater than or equal to a second preset threshold, the first communication device determines a second transmission delay of the data packet in the second direction according to a difference between the round-trip delay and the average transmission delay.
6. The method according to claim 5, characterized in that The average transmission delay is obtained by a third communication device collecting statistics on the transmission delay of data packets in the first direction reported by the first communication device within a preset time period; Acquiring, by the first communication device, an average transmission delay of data packets in the first direction includes: The first communication device receives the average transmission delay from a third communication device.
7. The method according to claim 1 or 2, characterized in that Acquiring, by the first communication device, a first transmission delay of a data packet in the first direction includes: The first communication device calculates the first transmission delay according to a reception time and timestamp information, where the reception time indicates a time when the first communication device receives a data packet in the first direction, and the timestamp information indicates a time when the data packet in the first direction is sent; or, The first communication device calculates the first transmission delay based on the sending time and timestamp information, the sending time is used to indicate the moment when the first communication device sends the data packet in the first direction to the application server, and the timestamp information is used to indicate the sending moment of the data packet in the first direction.
8. A communication device, characterized in that: Applied to a first communication device, the communication apparatus includes: A receiving module, configured to receive a data packet in a first direction; a processing module, configured to obtain a first transmission delay of a data packet in the first direction; and determine a second transmission delay of a data packet in the second direction according to the first transmission delay and a round-trip delay; a sending module, configured to send a data packet in the second direction to a second communication device, where the data packet in the second direction carries the second transmission delay, and the data packet in the second direction includes second indication information, where the second indication information is used to instruct the second communication device to skip using the packet delay budget information indicated by the quality of service flow identifier; If the first direction is uplink, the second direction is downlink; or if the first direction is downlink, the second direction is uplink.
9. The device according to claim 8, characterized in that The header of the data packet in the second direction includes first indication information, where the first indication information is used to indicate the second transmission delay.
10. The device according to claim 8 or 9, characterized in that The data packet in the first direction includes first information, where the first information is used to indicate an order of the data packets in the first direction; The data packets in the second direction include second information, and the second information is used to indicate the order of the data packets in the second direction; the first information and the second information are used to determine that the data packets in the first direction are in a one-to-one correspondence with the data packets in the second direction.
11. The device according to claim 8 or 9, characterized in that The processing module is specifically configured to determine a second transmission delay of the data packet in the second direction according to a difference between the round-trip delay and the first transmission delay when the first transmission delay is greater than or equal to a first preset threshold.
12. The device according to claim 8 or 9, characterized in that The receiving module is further configured to obtain an average transmission delay of data packets in the first direction; The processing module is further configured to determine a second transmission delay of the data packet in the second direction according to a difference between the round-trip delay and the average transmission delay when the average transmission delay is greater than or equal to a second preset threshold.
13. The device according to claim 8 or 9, characterized in that The processing module is specifically configured to calculate the first transmission delay based on a reception time and timestamp information, wherein the reception time indicates a moment when the first communication device receives a data packet in the first direction, and the timestamp information indicates a moment when the data packet in the first direction is sent; or, The first transmission delay is calculated based on the sending time and timestamp information, the sending time is used to indicate the moment when the first communication device sends the data packet in the first direction to the application server, and the timestamp information is used to indicate the sending moment of the data packet in the first direction.
14. A computer storage medium storing computer instructions for executing the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Data service experience assessment method and device and network equipment
CN103581142A
Scheduling based on end-to-end delay bound
US20170164404A1