Data transmission method and device

By controlling the transmission delay of the current data based on the delay requirements of the previous data at the transmitting end in the wireless communication system, the stuttering problem caused by data transmission delay fluctuations is solved, thus improving the user experience.

CN120935801APending Publication Date: 2025-11-11HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410585703.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-05-11
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

In wireless communication systems, the latency of different data transmissions for the same service can fluctuate significantly, leading to data transmission lag and packet loss, which affects user experience.

Method used

During data transmission, the sending end determines the transmission latency requirement of the current data based on the latency requirements of the previously transmitted data and carries this information in the resource request to control the transmission latency of different data within a certain range, including parameters such as the indicated data volume, remaining latency budget, reference latency, and buffer duration.

Benefits of technology

It achieves stability in transmission latency for different types of data, reduces data transmission lag, and improves user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120935801A_ABST
    Figure CN120935801A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of communication, in particular to a data transmission method and device, and aims to control transmission delays of different data within a certain range and improve user experience. The method comprises: a first communication device sending a first resource request, the first resource request being used for indicating a data volume of first data and a transmission delay requirement of the first data, the transmission delay requirement being determined according to a transmission delay of second data, the second data being data transmitted before the first data; receiving a first resource response, wherein the first resource response is used for indicating a first resource for transmitting the first data; and sending the first data according to the first resource.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, and in particular to a data transmission method and apparatus. Background Technology

[0002] With the continuous development of wireless communication systems, data transmission latency is constantly decreasing and transmission capacity is increasing, leading to the penetration of wireless communication systems into more and more services, such as video transmission, cloud gaming (CG), and extended reality (XR).

[0003] When the sending end transmits data, services typically have latency requirements. If these requirements are exceeded, even if the data eventually reaches the receiving end, it's meaningless (data transmission timed out). This latency requirement can be called the packet delay budget (PDB), which represents the worst-case latency requirement. The minimum latency for data transmission is the time it takes for light to travel from the sending end to the receiving end. In reality, the time taken for each data transmission always varies between the minimum latency and the PDB.

[0004] However, if the transmission latency of different data within the same service fluctuates significantly, data transmission may experience stuttering or even packet loss, impacting user experience. For example, in video transmission services, if the transmission latency of the first frame is 1ms and the transmission latency of the second frame is 10ms, video stuttering may occur, affecting user experience. Summary of the Invention

[0005] This application provides a data transmission method and apparatus to control the transmission delay of different data within a certain range and improve user experience.

[0006] In a first aspect, embodiments of this application provide a data transmission method, which can be executed by a first communication device, wherein the first communication device is the data sender, and can be a terminal device, a component of the terminal device (e.g., a processor, a chip, a circuit responsible for communication functions, etc.), or a device used in conjunction with the terminal device. The method includes: sending a first resource request, the first resource request indicating the amount of first data and the transmission delay requirement of the first data, the transmission delay requirement being determined based on the transmission delay of second data, the second data being data transmitted before the first data; receiving a first resource response, the first resource response indicating a first resource for transmitting the first data; and sending the first data according to the first resource.

[0007] It should be noted that when the first communication device is a chip in a terminal device, this chip can be a modem chip (also known as a baseband chip), a system-on-a-chip (SoC) chip containing a modem core, or a system-in-package (SIP) chip, etc. The aforementioned transmission delay requirement can also be referred to as the expected transmission delay, desired transmission delay, required transmission delay, etc.

[0008] Using the above method, when there is first data that needs to be transmitted, the first communication device can determine the transmission delay requirement of the first data based on the transmission delay of the previously transmitted second data, and carry the transmission delay requirement in the resource request. This can make the transmission delay corresponding to the first resource allocated for the first data the same as or similar to the transmission delay of the second data, thereby controlling the transmission delay of different data (such as the first data and the second data) within a certain range, which is beneficial to improving the user experience.

[0009] In one possible design, the first resource request includes one or more of the following: a first remaining delay budget for first data, a reference delay for first data, a transmission delay for second data, a buffer duration for first data, a transmission reference time for first data, and a second remaining delay budget for second data; wherein the first remaining delay budget is determined based on the data transmission delay budget and the buffer duration for first data, the reference delay for first data is determined based on the buffer duration for first data and the transmission delay for second data, the transmission reference time for first data is determined based on the arrival start time of first data and the transmission delay for second data, and the second remaining delay budget is determined based on the data transmission delay budget and the buffer duration for second data.

[0010] For example: a first resource request may include a first remaining latency budget for first data, a second remaining latency budget for second data, and a transmission latency for the second data. The transmission latency requirement for the first data can be determined based on the first remaining latency budget for the first data, the second remaining latency budget for the second data, and the transmission latency for the second data. Alternatively,

[0011] The first resource request may include determining the reference latency of the first data, and the transmission latency requirement of the first data can be determined based on the reference latency of the first data. Alternatively,

[0012] The first resource request may include a transmission reference time for the first data, and the transmission delay requirement for the first data can be determined based on the transmission reference time for the first data.

[0013] The above design allows the first resource request to carry different parameters to indicate the transmission delay requirement, thereby improving the flexibility of the transmission delay requirement indication.

[0014] In one possible design, before sending the first resource request, the method further includes: sending first information, the first information being used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first quality of service (QoS) flow, wherein the first data and the second data belong to the first QoS flow.

[0015] The above design can express the latency jitter range required for QoS streams, limit the latency difference between different data in the same QoS stream to a certain range, and make the transmission latency of data in the same QoS stream relatively stable, which is beneficial to improving user experience.

[0016] In one possible design, the method further includes receiving second information, which indicates the latency jitter range that the network allows for the first QoS flow.

[0017] The above design allows the network to flexibly adjust the latency jitter range corresponding to QoS flows based on resource usage and other factors.

[0018] In one possible design, the first resource request includes identification information for a first QoS flow, wherein the first data and the second data belong to the first QoS flow.

[0019] Through the above design, considering that a single data radio bearer (DRB) may map multiple QoS streams with different corresponding latency jitter ranges, there is a situation where access network devices, upon receiving a first resource request, can only determine which DRB the resource request originates from, but cannot determine which QoS stream on the corresponding DRB. By including the identification information of the first QoS stream in the first resource request, access network devices can accurately determine the first QoS stream to which the first data belongs, as well as the latency jitter range and / or data fault tolerance rate corresponding to the first QoS stream, and allocate the first resource to the first data, which helps to improve the reliability of resource allocation.

[0020] In one possible design, the first resource request is also used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

[0021] Through the above design, considering that a DRB may map multiple QoS flows with different corresponding latency jitter ranges, there is a situation where access network devices, after receiving the first resource request, can only determine which DRB the resource request comes from, but cannot determine which QoS flow on the corresponding DRB. By indicating the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow in the first resource request, access network devices can accurately determine the latency jitter range and / or data fault tolerance rate corresponding to resource allocation, which is used to allocate the first resource for the first data, thus improving the reliability of resource allocation.

[0022] In one possible design, before sending the first resource request, the method further includes: sending a second resource request, the second resource request indicating the amount of second data and a second remaining latency budget for the second data, wherein the second remaining latency budget is determined based on the data latency budget and the buffer duration of the second data; receiving a second resource response, the second resource response indicating a second resource for transmitting the second data; and sending the second data according to the second resource. The second data can also be referred to as reference data, reference standard data, etc., and the transmission latency of the second data can serve as a reference for the transmission latency of data transmitted after the second data.

[0023] The above design allows us to select the transmission delay of a certain data transmission as a reference, and subsequent data transmissions can refer to the transmission delay of that data. This helps to control the transmission delay of different data (such as the first data and the second data) within a certain range, thereby improving the user experience.

[0024] Secondly, embodiments of this application provide a data transmission method, which can be executed by a second communication device, wherein the second communication device is a data receiving end, and can be an access network device, a component of the access network device (e.g., a processor, chip, chip system, etc.), or a device used in conjunction with the access network device (e.g., a logical node, logical module, or software that can implement all or part of the functions of the access network device, etc.). The method includes: receiving a first resource request, the first resource request indicating the amount of first data and the transmission delay requirement of the first data, the transmission delay requirement being determined based on the transmission delay of second data, the second data being data transmitted before the first data; sending a first resource response, the first resource response indicating a first resource for transmitting the first data; and receiving the first data according to the first resource.

[0025] In one possible design, the first resource request includes one or more of the following: a first remaining delay budget for first data, a reference delay for first data, a transmission delay for second data, a buffer duration for first data, a transmission reference time for first data, and a second remaining delay budget for second data; wherein the first remaining delay budget is determined based on the data transmission delay budget and the buffer duration for first data, the reference delay for first data is determined based on the buffer duration for first data and the transmission delay for second data, the transmission reference time for first data is determined based on the arrival start time of first data and the transmission delay for second data, and the second remaining delay budget is determined based on the data transmission delay budget and the buffer duration for second data.

[0026] In one possible design, the transmission delay requirement of the first data is determined based on the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data.

[0027] In one possible design, the transmission delay requirement for the first data is determined based on the reference delay of the first data.

[0028] In one possible design, the transmission delay requirement for the first data is determined based on the transmission reference time of the first data.

[0029] In one possible design, before receiving the first resource request, the method further includes: receiving third information, the third information indicating the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

[0030] In one possible design, the first resource request includes identification information for the first QoS flow.

[0031] In one possible design, the first resource request is also used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

[0032] In one possible design, before sending the first resource request, the method further includes: receiving a second resource request, the second resource request being used to indicate the amount of second data and a second remaining latency budget for the second data, wherein the second remaining latency budget is determined based on the data transmission latency budget and the buffer duration of the second data; sending a second resource response, the second resource response being used to indicate a second resource for transmitting the second data; and receiving the second data according to the second resource.

[0033] Thirdly, this application provides a communication device that has the functions of the first aspect described above. For example, the communication device includes modules, units, or means that perform the operations involved in the first aspect. These modules, units, or means can be implemented by software, hardware, or a combination of software and hardware.

[0034] Fourthly, this application provides a communication device that has the functions of the second aspect above. For example, the communication device includes a module, unit, or means for performing the operations involved in the second aspect above. The module, unit, or means can be implemented by software, hardware, or a combination of software and hardware.

[0035] Fifthly, this application provides a communication device including an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory stores part or all of the necessary computer program or instructions for implementing the functions described in the first aspect. The one or more processors can execute the computer program or instructions, causing the communication device to implement the methods in any possible design or implementation of the first aspect. The interface circuit is used to implement the communication functions within the communication device and / or the communication functions between the communication device and other devices or components.

[0036] In one possible design, the processor is used to communicate with other devices or components through the interface circuit.

[0037] In one possible design, the communication device may also include the memory.

[0038] The aforementioned communication device may be a terminal device, a communication module in a terminal device, or a chip in a terminal device that is responsible for communication functions, such as a modem chip (also known as a baseband chip) or a SoC or SIP chip that contains a modem module.

[0039] Sixthly, this application provides a communication device including an interface circuit and one or more processors. The one or more processors are coupled to a memory. The memory stores part or all of the necessary computer program or instructions for implementing the functions described in the second aspect above. The one or more processors are executable to carry out the computer program or instructions, causing the communication device to implement the methods in any possible design or implementation of the second aspect above. The interface circuit is used to implement the communication functions within the communication device and / or the communication functions between the communication device and other devices or components.

[0040] In one possible design, the processor is used to communicate with other devices or components through the interface circuit.

[0041] In one possible design, the communication device may also include the memory.

[0042] The aforementioned communication device may be an access network device, a component of the access network device (e.g., a processor, chip, chip system, etc.), or a device used in conjunction with the access network device (e.g., a logical node, logical module, or software that can implement all or part of the functions of the access network device, etc.).

[0043] In a seventh aspect, this application provides a communication system, which includes a first communication device and a second communication device; the first communication device can implement the method in any possible design or implementation of the first aspect; the second communication device can implement the method in any possible design or implementation of the second aspect.

[0044] Eighthly, this application provides a computer-readable storage medium storing computer-readable instructions, which, when read and executed by a computer, cause the computer to perform the methods in any possible design or implementation of the first to second aspects described above.

[0045] Ninthly, this application provides a computer program product comprising a computer program or instructions that, when read and executed by a computer, cause the computer to perform the method in any possible design or implementation of the first to second aspects described above.

[0046] The technical effects achievable by aspects two through nine above are similar to those achievable by aspect one above, and will not be repeated here. Attached Figure Description

[0047] Figure 1 A schematic diagram of a communication system provided in an embodiment of this application;

[0048] Figure 2 and Figure 3 This is a schematic diagram of latency jitter provided in an embodiment of this application;

[0049] Figure 4 This is a schematic diagram of latency jitter provided in an embodiment of this application;

[0050] Figure 5 This is a schematic diagram of the retention and forwarding scheme provided in the embodiments of this application;

[0051] Figure 6 , Figure 8 , Figure 10 This is a schematic diagram of a communication method provided in an embodiment of this application;

[0052] Figure 7 and Figure 9 This is a schematic diagram of resource allocation provided for an embodiment of this application;

[0053] Figure 11 An exemplary block diagram of a communication device provided in the embodiments of this application;

[0054] Figure 12 An exemplary block diagram of a terminal device provided in an embodiment of this application. Detailed Implementation

[0055] This application provides a data transmission method and apparatus. The method and apparatus are based on the same inventive concept. Since the principles by which the method and apparatus solve the problem are similar, their implementations can be mutually referenced, and repeated details will not be elaborated further.

[0056] Figure 1 A schematic diagram of a possible, non-limiting communication system is shown. (For example...) Figure 1 As shown, the communication system 10 includes a radio access network (RAN) 100 and a core network (CN) 200. RAN 100 includes at least one RAN node (e.g., ...). Figure 1 110a and 110b (collectively referred to as RAN node 110) and at least one terminal device (such as Figure 1 120a-120j in RAN 100 are collectively referred to as terminal equipment 120. RAN 100 may also include other RAN nodes, such as wireless relay equipment and / or wireless backhaul equipment. Figure 1 (Not shown in the image). Terminal device 120 is connected to RAN node 110 wirelessly. RAN node 110 is connected to core network 200 wirelessly or via wired connection. The core network equipment in core network 200 and RAN node 110 in RAN 100 can be different physical devices, or they can be the same physical device integrating core network logical functions and radio access network logical functions.

[0057] RAN 100 can be a cellular system related to the 3rd Generation Partnership Project (3GPP), such as 4G, 5G mobile communication systems, or future-oriented evolution systems (such as 6G mobile communication systems). RAN 100 can also be an open access network (O-RAN or ORAN), a cloud radio access network (CRAN), or a wireless fidelity (WiFi) system. RAN 100 can also be a communication system that integrates two or more of the above systems.

[0058] Understandable Figure 1 This application only illustrates one possible communication system that can be applied to an embodiment of the present application. In other possible scenarios, the communication system may also include other devices.

[0059] RAN node 110, sometimes also referred to as an access network (AN) device, RAN entity, access network node, network device, etc., constitutes part of the communication system and is used to help terminal devices achieve wireless access. Multiple RAN nodes 110 in the communication system 10 can be of the same type or different types. In some scenarios, the roles of RAN node 110 and terminal device 120 are relative, for example, Figure 1 Network element 120i can be a helicopter or a drone, and it can be configured as a mobile base station. For terminal devices 120j that access RAN 100 through network element 120i, network element 120i is a base station; however, for base station 110a, network element 120i is a terminal device. RAN node 110 and terminal device 120 are sometimes referred to as communication devices, for example... Figure 1 Network elements 110a and 110b can be understood as communication devices with base station functions, while network elements 120a-120j can be understood as communication devices with terminal equipment functions.

[0060] In one possible scenario, a RAN node can be a base station, an evolved NodeB (eNodeB), an access point (AP), a transmission reception point (TRP), a next-generation NodeB (gNB), a next-generation base station in a 6th-generation (6G) mobile communication system, a base station in a future mobile communication system, or an access node in a WiFi system, etc. A RAN node can also be a macro base station (such as...) Figure 1 110a), micro base stations or indoor stations (such as Figure 1 The RAN node can be a relay node or donor node (as described in section 110b), or a wireless controller in a CRAN scenario. Optionally, the RAN node can also be a server, wearable device, vehicle, or in-vehicle equipment. For example, the access network equipment in vehicle-to-everything (V2X) technology can be a roadside unit (RSU). All or part of the functions of the RAN node in this application can also be implemented through software functions running on hardware, or through virtualization functions instantiated on a platform (e.g., a cloud platform). The RAN node in this application can also be a logical node, logical module, or software capable of implementing all or part of the RAN node functions.

[0061] In another possible scenario, multiple RAN nodes collaborate to assist terminal devices in achieving wireless access, with different RAN nodes each implementing a portion of the base station's functions. For example, RAN nodes can be central units (CUs), distributed units (DUs), CU-control plane (CPs), CU-user plane (UPs), or radio units (RUs), etc. CUs and DUs can be set up separately or included in the same network element, such as a baseband unit (BBU). RUs can be included in radio frequency equipment or radio frequency units, such as remote radio units (RRUs), active antenna units (AAUs), or remote radio heads (RRHs).

[0062] In different systems, CU (or CU-CP and CU-UP), DU, or RU may have different names, but those skilled in the art will understand their meaning. For example, in an ORAN system, CU can also be called O-CU (open CU), DU can also be called O-DU, CU-CP can also be called O-CU-CP, CU-UP can also be called O-CU-UP, and RU can also be called O-RU. For ease of description, this application uses CU, CU-CP, CU-UP, DU, and RU as examples. Any of the units among CU (or CU-CP, CU-UP), DU, and RU in this application can be implemented through software modules, hardware modules, or a combination of software and hardware modules.

[0063] Terminal devices can also be called terminals, user equipment (UE), mobile stations, mobile terminals, etc. Terminal devices can be widely used in various scenarios, such as device-to-device (D2D), vehicle-to-everything (V2X) communication, machine-type communication (MTC), Internet of Things (IoT), virtual reality, augmented reality, industrial control, autonomous driving, telemedicine, smart grids, smart furniture, smart offices, smart wearables, smart transportation, smart cities, etc. Terminal devices can be mobile phones, tablets, computers with wireless transceiver capabilities, wearable devices, vehicles, drones, helicopters, airplanes, ships, robots, robotic arms, smart home devices, etc. The embodiments of this application do not limit the device form of the terminal device. It can be understood that for XR scenarios, the terminal device can be a smartphone, a head-mounted display (HMD), or smart glasses (such as virtual reality (VR) glasses, augmented reality (AR) glasses, etc.). For cloud gaming scenarios, the terminal device can be a smartphone or tablet, etc.

[0064] To facilitate understanding by those skilled in the art, some terms used in this application are explained below.

[0065] 1) Delay jitter.

[0066] Latency jitter simply refers to the difference between two times. The latency jitter we often talk about occurs in periodic operations, where its meaning is as follows: Figure 2 As shown, this represents the difference between the theoretical arrival time of data for periodic services and the actual arrival time of the data. In the embodiments of this application, latency jitter can be a more general concept, such as... Figure 3 As shown, it can be used for both periodic and non-periodic business (such as sudden business events). Figure 3This is a latency probability distribution curve. When the sending end transmits data, the service usually has latency requirements. If these requirements are exceeded, even if the data eventually reaches the receiving end, it is meaningless (data transmission timed out). This latency requirement can be a packet delay budget (PDB) or a packet data unit (PDU) set delay budget (PSDB). PDB or PSDB represents the worst-case latency requirement. The minimum latency for data transmission is the time it takes for light to travel from the sending end to the receiving end. In reality, the time taken for each data transmission always varies between the minimum latency (close to 0) and the maximum latency (such as PDB). The difference between the minimum latency and the maximum latency (such as PDB) is the latency jitter.

[0067] PSDB differs from PDB. PDB is the delay budget for a single data packet or a single PDU, while PSDB is the unified delay budget for a group of PDUs. That is, it's the delay budget from the arrival of the first PDU in the group at the sender (or its generation at the sender) to the arrival of the last PDU in the group at the receiver (or its reception). For example: For a group of PDUs, timing can start from the arrival of the first PDU at the sender and end when that PDU expires (i.e., the timing starts from the arrival of the PDU at the sender and ends when the PDSB is reached). After the PDU expires, even if there are subsequent PDUs in the group that are not exhausted (i.e., the timing from the arrival of the PDU at the sender to its reception time has not reached the PDSB), once the first PDU in the group expires (or at least one PDU expires), all PDUs in the group expire. PDUs arriving at the receiver after the first PDU expires are meaningless (transmission timed out).

[0068] In addition, the latency requirements (such as PDB or PSDB) between different devices (or network elements) in communication can be configured or calculated separately. For example, AN-PDB or AN-PSDB can be configured between terminal devices (such as UE) and RAN (such as access network devices), where AN-PDB or AN-PSDB represents the PDB or PSDB between the terminal device and RAN; CN-PDB or CN-PSDB can be configured between RAN (such as access network devices) and terminal user plane function (UPF) network elements, where CN-PDB or CN-PSDB represents the PDB or PSDB between RAN and terminal UPF network elements.

[0069] 2) Deterministic delay.

[0070] In this application embodiment, latency jitter within a certain range is referred to as deterministic latency. Deterministic latency aims to achieve consistency in user experience; for different data within the same service, the latency for each transmission is within a certain range, ensuring smooth data transmission, reducing data transmission stutters, and improving user experience. As an example: Refer to... Figure 4 The deterministic time delay diagram shown is used to illustrate the deterministic time delay. Figure 4 Taking a PDB of 10ms, a minimum latency of 4ms, and a maximum latency of 6ms as an example, although the PDB corresponding to the service is 10ms, the transmission latency of data 1 is 4.5ms, data 2 is 5ms, data 3 is 5.5ms, ..., data N-1 is 5ms, and data N is 5ms. The transmission latency of data 1 through data N is all within the range of 4ms-6ms, which can be considered as deterministic latency transmission of the service data within the latency range of 4ms-6ms.

[0071] 3) Data caching duration.

[0072] Data caching duration, also known as data caching time or data caching latency, refers to the time a device caches data from the arrival of the first part of the data (or the first message) to the arrival of the last part of the data (or the last message). The caching duration for any given data can be determined based on the duration of the data's arrival at the device, or the time elapsed from the arrival of the first part of the data (or the first message) to the arrival of the last part of the data (or the last message) at the device (or apparatus). For example, if the arrival time of the first part of the data is time A, and the arrival time of the last part of the data is time B, the caching duration can be determined based on the time difference between time B and time A. If the time difference between the arrival times of all content (or messages) of a given data is very small or negligible, the caching duration for that data can be considered to be 0 or approximately 0.

[0073] 4) Hold and forwarding scheme.

[0074] Deterministic time delay originated in industrial control, and its control scheme can be termed "hold and forwarding." (See reference...) Figure 5 The diagram shown illustrates the retention and forwarding scheme, with the receiving end (e.g., Figure 5 In this system, the UE and user plane function (UPF) are buffered to buffer all received data until the transmission delay equals the PDB, and then the data is transmitted to the application layer / next hop to achieve deterministic delay transmission of data.

[0075] However, Figure 5The retention and forwarding scheme shown requires adding a buffer at the receiving end. This receiving end might be a very simple device, such as a glove or XR glasses. These devices need to be lightweight and cost-effective for market considerations, hence the need for buffering at the receiving end. Furthermore, determining how long each piece of data should be buffered requires that the data carry a timestamp (e.g., recording the time of data transmission) at the sending end. After the data arrives at the receiving end, it compares its local time with the timestamp on the data to determine the transmission delay already elapsed, and then calculates how long the data needs to remain in the buffer. However, this scheme requires that the sending and receiving ends of the data maintain time synchronization (the clocks must be aligned; otherwise, if the sending end is at 10:00 and the receiving end is at 11:00, and the sending end timestamps the data according to its own clock, for example, 10:05, after 5 minutes of transmission, the sending end's clock should actually be at 10:10. However, because the sending and receiving ends are not synchronized, when the receiving end receives the data, its own clock is at 11:10, so it will think that the data has been transmitted for 65 minutes). The technical difficulty and cost of ensuring the synchronization of the sending and receiving ends' clocks are also very high.

[0076] 5) Resource blocks.

[0077] In the embodiments of this application, a resource block can also be called a time-frequency resource block, a resource unit, etc., and can refer to the allocation unit of time-frequency resources. For example, a resource that occupies X subcarriers in the frequency domain and Y time slots (or symbols) in the time domain can be called a resource block, where X and Y can be positive integers.

[0078] 6) Sending / receiving information. In this application, "sending information" can be understood as one device sending information to another device, or it can also be understood as one logical module within a device sending information to another logical module. For example, "access network device sending information" can be understood as the access network device sending information to another device (such as a terminal device), or it can be understood as logical module 1 in the access network device sending information to logical module 2 in the access network device.

[0079] In this application, "receiving information" can be understood as one device receiving information from another device, or it can also be understood as a logical module within a device receiving information from another logical module. For example, "access network device receiving information" can be understood as the access network device receiving information from another device (such as a terminal device), or it can be understood as logical module 1 in the access network device receiving information from logical module 2 in the access network device.

[0080] In this application, the phrase "sending information to... (e.g., a terminal device)" or the related illustrations in the accompanying drawings can be understood as the destination of the information being the terminal device. This can include sending information directly or indirectly to the terminal device. Similarly, "receiving information from... (e.g., a terminal device)," "receiving information from... (e.g., a terminal device)," or "receiving information sent (e.g., by a terminal device)," or the related illustrations in the accompanying drawings, can be understood as the source of the information being the terminal device. This can include receiving information directly or indirectly from the terminal device. Information may undergo necessary processing between the source and destination, such as format changes, but the destination can understand the valid information from the source. Similar expressions in this application can be interpreted similarly, and will not be elaborated further here.

[0081] As the above shows, if the transmission latency of different data within the same service fluctuates significantly, data transmission may experience pauses or even packet loss, impacting user experience. Based on... Figure 5 The retention and forwarding scheme shown requires adding a buffer at the data receiving end and necessitates time synchronization between the data sending and receiving ends. This places high demands on the equipment at both ends, resulting in significant technical difficulty and cost. Furthermore, it employs... Figure 5 The retention and forwarding scheme shown requires all received data to be cached until the transmission delay equals the PDB. The large data transmission delay will also affect the data transmission efficiency and user experience.

[0082] Based on this, embodiments of this application provide a data transmission method and apparatus to control the transmission delay of different data within a certain range, support deterministic delay transmission of data, and improve user experience. The embodiments of this application will now be described in detail with reference to the accompanying drawings.

[0083] Furthermore, it should be understood that the ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects, and are not used to limit the size, content, order, timing, priority, or importance of multiple objects. For example, "first information" and "second information" do not indicate a difference in priority or importance between the two pieces of information.

[0084] In this application embodiment, the number of nouns, unless otherwise specified, refers to "singular nouns or plural nouns," that is, "one or more." "At least one" means one or more, and "more than one" means two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can mean: A exists alone, A and B exist simultaneously, or B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the related objects before and after are in an "or" relationship. For example, A / B means: A or B. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c means: a, b, c, a and b, a and c, b and c, or a and b and c, where a, b, and c can be single or multiple.

[0085] In the embodiments of this application, terms such as burst, data, message, frame, packet, data packet, message set, and data packet set can be substituted for each other without affecting the implementation of the solution and the scope of protection of this application.

[0086] Figure 6 This is a schematic diagram of a communication method provided in an embodiment of this application. Figure 6 This example illustrates the method using a first communication device and a second communication device as the executing entities in the interactive scenario. The first communication device can be a data sender, and the second communication device can be a data receiver. For example, the first communication device can be a terminal device, or a module applied to a terminal device, such as a circuit, chip, chip system, or processor; it can also be a logic node, logic module, or software that implements all or part of the terminal device's functions. Similarly, the second communication device can be an access network device, or a module applied to an access network device, such as a circuit, chip, chip system, or processor; it can also be a logic node, logic module, or software that implements all or part of the access network device's functions. Furthermore, the first communication device can be an access network device (or a module of an access network device), and the second communication device can be a terminal device (or a module of a terminal device); or the first and second communication devices can be different access network devices (or modules of access network devices) or different terminal devices (or modules of terminal devices), etc. Figure 6 As shown, the method includes:

[0087] S601: The first communication device sends a first resource request, and correspondingly, the second communication device receives the first resource request.

[0088] The first resource request is used to indicate the amount of first data and the transmission delay requirement of the first data. The transmission delay requirement of the first data is determined based on the transmission delay of the second data, which is the data transmitted before the first data.

[0089] In the embodiments of this application, the second data can also be understood as reference data, reference standard data, etc. The second data can be any data transmitted before the first data, or it can be a specific data transmitted before the first data. The data transmission delay can refer to the duration from the arrival start time of the data (such as the time when the first part of the data content or the first message arrives at the first communication device) to the time when the data is completely sent from the first communication device; or it can refer to the duration from the arrival start time of the data (such as the time when the first part of the data content or the first message arrives at the first communication device) to the end time of the resource used to transmit the data.

[0090] As an example: Data 1, data 2, and data 3 of a certain service have been transmitted. When data 4 (i.e., the first data) of the service arrives at the first communication device, the first communication device can use any one of data 1, data 2, or data 3 of the service as the second data for determining the first data transmission delay requirement; or it can use a specific data (such as data 1) of data 1, data 2, or data 3 of service A as the second data for determining the first data transmission delay requirement.

[0091] Taking the first data of a service (e.g., data 1) as the second data as an example, after the second data arrives at the first communication device, the first communication device can send a second resource request to request the allocation of resources for the transmission of the second data. The second resource request can be used to indicate the amount of data of the second data and the second remaining latency budget of the second data. The second remaining latency budget can be determined based on the data transmission latency budget of the service (e.g., the service's PDB or PSDB) and the buffering time of the second data.

[0092] For example: the amount of the second data (such as data 1) is 100M, the data transmission delay budget is 10ms, the 100M data included in the second data can be considered to arrive at the first communication device at the same time, the buffering time of the second data is 0ms, then the first communication device can determine that the second remaining delay budget of the second data is 10ms-0ms=10ms.

[0093] After receiving the second resource request, the second communication device can allocate second resources for transmitting the second data based on the data volume of the second data and the second remaining delay budget of the second data, and can send a second resource response to indicate the second resource. After receiving the second resource response, the first communication device can send the second data according to the second resource.

[0094] Reference Figure 7 The resource allocation diagram shown below, taking the second data volume of 100M and the second remaining latency budget of 10ms as an example, illustrates that... Figure 7 Each square represents a resource block, and the duration of each square is 1ms. After receiving the second resource request, the second communication device can allocate second resources to the second data to satisfy the transmission of 100M data according to the data volume of the second data. The second resource can be composed of one or more resource blocks, which can be continuous or discontinuous. The end time of the last resource block and the sending time of the first resource request do not exceed the second remaining delay budget. Figure 7 Taking the second resource as an example, which comprises three resource blocks, with a time difference of 5ms between the end time of the last resource block and the time of sending the second resource request. After receiving the second resource response, the first communication device can send second data on the second resource, where the transmission delay of the second data is 0ms (buffer time) + 5ms (the time difference between the end time of the last resource block in the second resource and the time of sending the second resource request) = 5ms.

[0095] For the first data transmitted after the second data, the first communication device may send a first resource request to the second communication device, indicating the amount of data in the first data and the transmission delay requirement of the first data, requesting the second communication device to allocate first resources for transmitting the first data. The transmission delay requirement of the first data can be indicated (or determined) by one or more of the following information: the first remaining delay budget of the first data, the reference delay of the first data, the transmission delay of the second data, the buffer duration of the first data, the transmission reference time of the first data, and the second remaining delay budget of the second data. A specific explanation follows.

[0096] Method 1: The first resource request may include a reference delay for the first data, and the transmission delay requirement for the first data can be indicated (or determined) by the reference delay of the first data. The reference delay for the first data can be determined based on the buffer duration of the first data and the transmission delay of the second data.

[0097] As an example: Reference Figure 7 As shown, the transmission delay of the second data is 5ms, and the buffering time of the first data is 1ms. The first communication device can determine that the reference delay of the first data is 5ms - 1ms = 4ms. After receiving the first resource request including the reference delay, the second communication device can determine that the transmission delay requirement of the first data is that the end time of the resource for transmitting the first data is the time corresponding to 4ms after the time when the first communication device issued the first resource request (i.e., time 2).

[0098] Method 2: The first resource request may include a transmission reference time for the first data, and the transmission delay requirement for the first data can be indicated (or determined) by the transmission reference time for the first data. The transmission reference time for the first data can be determined based on the arrival start time of the first data and the transmission delay of the second data. The arrival start time of the first data may refer to the time when the first part of the first data (or the first message) arrives at the sending end of the first data (such as the first communication device).

[0099] As an example: taking the arrival start time of the first data as time 1 and the transmission delay of the second data as 5ms, the first communication device can determine time 2, which is 5ms after time 1, as the transmission reference time of the first data. After receiving the first resource request including the transmission reference time (i.e., time 2), the second communication device can determine that the transmission delay requirement of the first data is the end time of the resource for transmitting the first data as the transmission reference time (i.e., time 2).

[0100] It is understandable that the transmission reference time of the first data can also be understood as the location of the transmission time-domain unit of the first data. That is, the transmission reference time of the first data can be a specific time (such as 10:28:30:10) or the time-domain unit location of that time in the time domain. The time-domain unit can be a symbol, a time slot, a subframe, a half-frame, or a frame, etc. For example, if the transmission time of the first data is time 2, the time-domain unit is a frame, and the system frame number (SFN) of the frame containing time 2 is SFN2, the transmission time of the first data can refer to either time 2 or SFN2.

[0101] Method 3: The first resource request may include the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data. The transmission delay requirement of the first data can be indicated (or determined) by the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data.

[0102] The first remaining latency budget can be determined based on the data transmission latency budget and the buffering time of the first data. Taking a data transmission latency budget of 10ms, a data size of 50M, and a buffering time of 1ms for the 50M first data as an example, the first remaining latency budget is 10ms - 1ms = 9ms.

[0103] As an example: taking a first remaining delay budget of 9ms for the first data, a second remaining delay budget of 8ms for the second data, and a transmission delay of 7ms for the second data as an example, after the second communication device receives a first resource request including the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data, it can determine the buffer duration of the first data as 1ms and the buffer duration of the second data as 2ms based on the data transmission delay budget of 10ms, the first remaining delay budget of the first data as 9ms, and the second remaining delay budget of the second data as 8ms. The transmission delay of the second data excluding the buffer duration is 5ms. Therefore, the transmission delay budget of the first data excluding the buffer duration is determined to be 5ms + (2ms - 1ms) = 6ms. The transmission delay requirement of the first data is that the end time of transmitting the resource of the first data is the time corresponding to 6ms after the time when the first communication device issues the first resource request.

[0104] Method 4: The first resource request may include a first remaining delay budget for the first data and a second data transmission delay. The transmission delay requirement for the first data can be indicated (or determined) by the first remaining delay budget for the first data and the second data transmission delay.

[0105] As an example: taking a first remaining delay budget of 9ms for the first data and a transmission delay of 7ms for the second data as an example, after the second communication device receives a first resource request including the first remaining delay budget of the first data and the transmission delay of the second data, it can determine the buffer duration of the first data as 1ms based on the data transmission delay budget of 10ms and the first remaining delay budget of 9ms for the first data. Then, it can determine the transmission delay budget of the first data excluding the buffer duration as 7ms-1ms=6ms. The transmission delay requirement of the first data is that the end time of the resource for transmitting the first data is the time corresponding to 6ms after the time when the first communication device issues the first resource request.

[0106] Method 5: The first resource request may include the caching duration of the first data and the transmission delay of the second data. The transmission delay requirement of the first data can be indicated (or determined) by the caching duration of the first data and the transmission delay of the second data.

[0107] As an example: taking a buffering time of 1ms for the first data and a transmission delay of 7ms for the second data as an example, after the second communication device receives a first resource request including the first remaining delay budget for the first data and the transmission delay of the second data, it determines that the transmission delay budget for the first data excluding the buffering time is 7ms-1ms=6ms. The transmission delay requirement for the first data is that the end time of the resource for transmitting the first data is the time corresponding to 6ms after the time when the first communication device issues the first resource request.

[0108] It is important to understand that the first resource request may not include parameters related to the transmission of the second data (such as the second remaining delay budget, the transmission delay, and the buffer duration of the second data). These parameters can be obtained by the second communication device through other means. For example, the second remaining delay budget of the second data can be obtained by the second communication device from the second remaining delay budget indicated in the received second resource request. The transmission delay of the second data can be determined based on the second remaining delay budget, the data transmission delay budget, and the time difference between the end time of the second resource allocated to the second data and the sending time of the second resource request. For example, if the second remaining delay budget is T1ms, the data transmission delay budget is T2ms, and the time difference is T3ms, the transmission delay of the second data can be determined as (T2-T1+T3)ms. The buffer duration of the second data can be determined based on the second remaining delay budget and the data transmission delay budget.

[0109] Furthermore, methods 1-5 described above are only some examples of indicating the latency requirement of the first data through the first resource request. The latency requirement of the first data can also be indicated in other ways, and this application does not limit the specific method of indicating the latency requirement of the first data through the first resource request. For example, the transmission latency requirement of the first data can also be indicated by including the buffer duration of the first data in the first resource request, and the second communication device can determine the transmission latency requirement of the first data based on the buffer duration of the first data and parameters related to the second data transmission (such as the transmission latency of the second data); or the transmission latency requirement of the first data can be indicated by including the remaining latency budget of the first data in the first resource request, and the second communication device can determine the transmission latency requirement of the first data based on the remaining latency budget of the first data and parameters related to the second data transmission (such as the transmission latency of the second data, the buffer latency of the second data), and so on.

[0110] S602: The second communication device sends a first resource response, and correspondingly, the first communication device receives the first resource response.

[0111] The first resource response is used to indicate the first resource from which the first data is transmitted.

[0112] After receiving a first resource request from the first communication device, the second communication device can allocate first resources for the first data according to the data volume of the first data indicated by the first resource request and the transmission delay requirements of the first data, and send a first resource response to the first communication device.

[0113] As an example: The data size of the first data is 50M, and the transmission delay requirement of the first data is that the end time of the resource for transmitting the first data is the time corresponding to 4ms after the time when the first communication device sends the first resource request. The second communication device can allocate the first resource for transmitting 50M data, wherein the first resource can be composed of one or more resource blocks, which can be continuous or discontinuous, and the end time of the last resource block can be the time corresponding to 4ms after the time when the first communication device sends the first resource request.

[0114] In one possible implementation, the service / QoS flow / application to which the first data and the second data belong can support data transmission with a certain data fault tolerance rate. When allocating the first resources for transmitting the first data, the second communication device can also allocate the first resources according to the data volume of the first data, the transmission delay requirements of the first data, and the data fault tolerance rate.

[0115] The data fault tolerance rate (also known as the data error rate or data transmission error rate) can be the proportion of data that can be transmitted incorrectly. When the proportion of data transmission errors is less than or equal to the data fault tolerance rate, the receiving end can reconstruct the correct data from the correctly transmitted data through decoding and other operations. For example, if the application layer of the first communication device adopts a specific encoding method, for 100M of data, as long as the second communication device successfully receives 30% of the data, it can reconstruct the entire 100M of data through decoding at the application layer. Even if the remaining 70% of the data is transmitted incorrectly, there is no problem. Therefore, the data fault tolerance rate is 70%.

[0116] As an example: The data size of the first data is 50M, the transmission delay requirement of the first data is that the end time of the resource for transmitting the first data is the time corresponding to 4ms after the time when the first communication device issues the first resource request, the data fault tolerance rate is 70%, and the second communication device can allocate the first resource for transmitting no less than 15M (50*(1-70%)) of data, wherein the first resource can be composed of one or more resource blocks, the one or more resource blocks can be continuous or discontinuous, and the end time of the last resource block does not exceed the time corresponding to 4ms after the time when the first communication device issues the first resource request.

[0117] In addition, in this embodiment, the data error tolerance rate can also be replaced by the data accuracy rate (also known as the data correct transmission rate). The data accuracy rate can be the minimum proportion of data that can be transmitted correctly. When the proportion of data transmitted correctly is greater than or equal to the data accuracy rate, the receiving end can restore the correct data based on the correctly transmitted data portion through decoding and other operations. For example, if the application layer of the first communication device adopts a specific encoding method, for 100M of data, as long as the second communication device successfully receives 30% of the data, it can restore the entire 100M of data through decoding by the application layer. Even if the remaining 70% of the data is transmitted incorrectly, there is no problem. Therefore, the data accuracy rate is 30%.

[0118] As an example: The first data has a data size of 50M, the transmission delay requirement of the first data is that the end time of the resource for transmitting the first data is the time corresponding to 4ms after the time when the first communication device issues the first resource request, the data accuracy rate is 30%, and the second communication device can allocate the first resource for transmitting no less than 15M (50*30%) of the first data, wherein the first resource can be composed of one or more resource blocks, and the one or more resource blocks can be continuous or discontinuous, and the end time of the last resource block does not exceed the time corresponding to 4ms after the time when the first communication device issues the first resource request.

[0119] In one possible implementation, the service / QoS flow / application to which the first and second data belong allows for a certain range of latency jitter in data transmission. The second communication device can also allocate first resources to the first data based on the data volume of the first data, the transmission latency requirements of the first data, and the latency jitter range. The latency jitter range can be represented in various ways, such as by parameters like latency jitter, latency jitter range, or latency jitter interval. For example, a latency jitter of 1ms can be understood as being able to arrive 1ms earlier or later, with a latency jitter range of -1ms to 1ms. As another example, a latency jitter range of 1ms can be understood as being able to arrive 0.5ms earlier or later, with a latency jitter range of -0.5ms to 0.5ms. For example, a latency jitter range of [-0.5ms, 1ms] can be understood as the latency being 0.5ms earlier or 1ms later, with a jitter range of -0.5ms to 1ms; a latency jitter range of [-1ms, 1ms] can be understood as the latency being 1ms earlier or 1ms later, with a jitter range of -1ms to 1ms. This application does not limit the way the latency jitter range is represented.

[0120] As an example: The first data has a data size of 50M, and the transmission delay requirement for the first data is that the end time of the resource for transmitting the first data is the time corresponding to 4ms after the time when the first communication device issues the first resource request, and the delay jitter range is [-1ms, 1ms]. The second communication device can allocate the first resource for transmitting 50M data, wherein the first resource can be composed of one or more resource blocks, which can be continuous or discontinuous, and the end time of the last resource block is within 3ms-5ms after the time when the first communication device issues the first resource request.

[0121] Of course, if the service / QoS flow / application to which the first data and the second data belong allows for a certain range of latency jitter in data transmission and supports a certain data fault tolerance rate in data transmission, the second communication device can also allocate first resources to the first data based on the data volume of the first data, the transmission latency requirements of the first data, the data fault tolerance rate, and the latency jitter range.

[0122] As an example: The first data has a data size of 50M, the transmission delay requirement of the first data is that the end time of the resource for transmitting the first data is the time corresponding to 4ms after the time when the first communication device issues the first resource request, the data fault tolerance rate is 70%, and the delay jitter range is [-1ms, 1ms]. The second communication device can allocate a first resource for transmitting no less than 15M of data for the first data, wherein the first resource can be composed of one or more resource blocks, and the one or more resource blocks can be continuous or discontinuous. The end time of the last resource block is within 3ms-5ms after the time when the first communication device issues the first resource request.

[0123] The latency jitter range and / or data fault tolerance rate can be pre-configured in the first and second communication devices, or the first communication device can report the latency jitter range and / or data fault tolerance rate to the second communication device based on the expected (or supported) latency jitter range and / or data fault tolerance rate of the service / QoS flow / application to which the first and second data belong. Other devices can also configure the first and second communication devices, and this application does not limit this.

[0124] Taking a terminal device and an access network device as an example, the terminal device can, when creating the QoS flow to which the first data and the second data belong (taking the first QoS flow as an example), send first information including an index of latency jitter range and / or an index of data fault tolerance rate to the CN, or send first information including specific parameters of latency jitter range and / or data fault tolerance rate to the core network, thereby indicating the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow to the core network. The core network can then indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow to the access network device via a third message.

[0125] In some implementations, the core network can also modify or adjust the latency jitter range corresponding to the first QoS flow indicated by the terminal device. If the core network modifies or adjusts the latency jitter range corresponding to the first QoS flow indicated by the terminal device, the core network can also send second information to the terminal device to indicate the latency jitter range allowed by the network for the first QoS flow, informing the terminal device of the latency jitter range allowed by the network for the QoS flow. When sending third information to the access network device, the core network can also indicate the latency jitter range allowed by the network for the first QoS flow through the third information.

[0126] In one possible implementation, the correspondence between the values ​​of the 5G QoS Identifier (5QI) (or QoS Flow Identifier (QFI)) and QoS parameters can be extended. The first piece of information can include the 5QI (or QFI), which indicates the latency jitter range. Taking the indication of latency jitter range by the 5QI value as an example, referring to the correspondence between the 5QI value and QoS parameters shown in Table 1, a correspondence between the 5QI value and latency jitter range (also known as jitter) can be added to the existing correspondence between the 5QI value and QoS parameters such as resource type, default priority level, packet delay budget, packet error rate, default maximum databurst volume, default averaging window, and example services. In Table 1, GBR stands for Guaranteed Bit Rate, and the GBR resource type means that the bandwidth carried is guaranteed; N / A indicates not applicable. It should also be noted that Table 1 only shows a partial example of the correspondence between 5QI values ​​and QoS parameters; Table 1 could include more entries showing the correspondence between 5QI values ​​and QoS parameters.

[0127] Table 1

[0128]

[0129]

[0130] S603: The first communication device sends first data according to the first resource, and correspondingly, the second communication device receives the first data according to the first resource.

[0131] After receiving a second resource response from the second communication device, the first communication device can send first data on the first resource indicated by the second resource response.

[0132] It is understandable that if the service / QoS flow / application to which the first data and the second data belong support data transmission with a certain data fault tolerance, the amount of data that the first resource can support for transmission may be less than the amount of the first data. In this case, the first communication device may only send a portion of the first data on the first resource. For example, if the amount of the first data (such as a video frame) is 50MB and the amount of data that the first resource can support for transmission is 15MB, the first communication device may only send 15MB of the first data on the first resource. After receiving the 15MB of the first data, the second communication device can recover the 50MB of the first data through decoding or other methods.

[0133] The following example uses the first communication device as the terminal equipment and the second communication device as the access network equipment, combined with... Figure 8 The example shown above Figure 6 The data transmission method shown will be described in detail.

[0134] S801: The terminal device sends first information to the CN, and the CN receives the first information accordingly. The first information indicates the latency jitter range and may also indicate the data fault tolerance rate.

[0135] During the creation of the first QoS flow, the terminal device can express specific requirements for deterministic latency, indicating that the first QoS flow is intended for services with deterministic latency. For example, during the creation of the first QoS flow, the terminal device can send first information to the CN (such as the session management function (SMF) network element in the CN) to indicate the latency jitter range. This first information can be carried through PDU session modification requests or QoS flow description requests.

[0136] In addition, the terminal device can also provide data fault tolerance information during the creation of the first QoS flow, such as indicating the latency jitter range and data fault tolerance through the first information.

[0137] It is understood that the latency jitter range and the data fault tolerance rate can be indicated by the same information (such as the first information) or by different information. If indicated by different information, the information used to indicate the latency jitter range and the information used to indicate the data fault tolerance rate can be carried by the same message or by different messages. This application does not limit this.

[0138] Furthermore, if the latency jitter range and data fault tolerance rate are indicated by the same information (such as the first information), the first information may include one or more fields. For example, field A1 may indicate the latency jitter range corresponding to the first QoS flow, field A2 may indicate the data fault tolerance rate corresponding to the first QoS flow, or field A1 may indicate both the latency jitter range and the data fault tolerance rate corresponding to the first QoS flow. When the first information includes multiple fields, these fields may be carried by the same message or by different messages.

[0139] S802: The CN sends second information to the terminal device, and the terminal device receives the second information accordingly. The second information indicates the latency jitter range allowed by the network for the first QoS flow.

[0140] After the CN determines that it accepts the terminal device's first QoS flow creation request, it can send a PDU session modification response or a QoS flow description response to the terminal device to inform the terminal device that the first QoS flow creation is complete. Optionally, if the CN adjusts or modifies the latency jitter range corresponding to the first QoS flow indicated by the terminal device, the sent PDU session modification response or QoS flow description response may also carry second information, which indicates that the network (such as the CN) allows the latency jitter range corresponding to the first QoS flow.

[0141] S803: The CN sends third information to the access network device, and the access network device receives the third information accordingly. The third information indicates the latency jitter range corresponding to the first QoS flow. If the first QoS flow has data fault tolerance capability, the third information can also indicate the data fault tolerance rate corresponding to the first QoS flow.

[0142] It is understandable that if the CN adjusts or modifies the latency jitter range corresponding to the first QoS flow indicated by the terminal device, the latency jitter range corresponding to the first QoS flow indicated by the third information is the latency jitter range corresponding to the first QoS flow allowed by the network (such as the CN).

[0143] For example, the third information can be information such as a QoS profile. This third information may include one or more fields. For instance, field B1 might indicate the latency jitter range corresponding to the first QoS flow, field B2 might indicate the data fault tolerance rate corresponding to the first QoS flow, or field B1 might indicate both the latency jitter range and the data fault tolerance rate corresponding to the first QoS flow. When the first information includes multiple fields, these fields can be carried in the same message or in different messages.

[0144] S804: The terminal device sends a second resource request to the access network device, and the access network device receives the second resource request accordingly. The second resource request indicates the amount of second data and the second remaining delay budget for the second data.

[0145] S805: The access network device sends a second resource response to the terminal device, and the terminal device receives the second resource response accordingly. The second resource response indicates the second resource for transmitting the second data.

[0146] S806: The terminal device sends the second data according to the second resource, and correspondingly, the access network device receives the second data according to the second resource.

[0147] Reference Figure 9 The resource allocation diagram shown takes an example where the second data size is 100MB, the second data cache duration is 0ms, and the remaining latency budget for the second data is 10ms. Figure 9 Each square in the diagram represents a resource block, and each square has a duration of 1ms. After the second data generated by the application (APP) arrives at the terminal device, the terminal device can send a second resource request to the access network. Upon receiving the second resource request, the access network device can allocate second resources for the second data according to the data volume of the second data indicated in the second resource request and the second remaining delay budget of the second data. The second resource can consist of one or more resource blocks, which can be continuous or discontinuous. The time difference between the end time of the last resource block and the sending time of the second resource request does not exceed the second remaining delay budget. Figure 9 Taking the second resource as an example, which consists of 3 resource blocks, and the time difference between the end time of the last resource block and the time when the second resource request is sent is 5ms.

[0148] After receiving the second resource response, the access network device can send the second data on the second resource. The transmission delay of the second data is 0ms (buffer duration) + 5ms (the time difference between the end time of the last resource block in the second resource and the time of sending the second resource request), = 5ms.

[0149] Furthermore, if the first QoS flow has data fault tolerance capability, the access network device can also allocate second resources to the second data based on the data volume of the second data, the second remaining latency budget, and the data fault tolerance rate corresponding to the first QoS flow. For example, if the data volume of the second data is 100M and the data fault tolerance rate is 70%, the access network device can allocate second resources to the second data that meet the second remaining latency requirements and can be used to transmit no less than 30M of data.

[0150] In some implementations, the second resource response may also carry or indicate information such as the maximum number of data retransmissions, and the terminal device may also retransmit the second data according to the maximum number of data retransmissions.

[0151] In addition, if the access network device is unable to allocate resources to satisfy the second resource request, the access network device can also send a negative response (NACK) message to the terminal device to indicate that it refuses or has not allocated resources for the second data.

[0152] S807: The terminal device sends a first resource request to the access network device, and the access network device receives the first resource request accordingly. The first resource request indicates the amount of first data and the required transmission delay for the first data, the transmission delay being determined based on the transmission delay of the second data.

[0153] S808: The access network device sends a first resource response to the terminal device, and the terminal device receives the first resource response accordingly. The first resource response indicates a first resource for transmitting the first data.

[0154] S809: The terminal device sends first data according to the first resource, and correspondingly, the access network device receives the first data according to the first resource.

[0155] Reference Figure 9 The resource allocation diagram shown takes an example where the first data volume is 50MB, the second data buffer duration is 1ms, the second remaining latency budget is 9ms, and the latency jitter range is [-1ms, 1ms]. Figure 9 Each square in the diagram represents a resource block, and each square has a duration of 1ms. After the first data generated by the APP and other devices arrives at the terminal device, the terminal device can send a first resource request to the access network. After receiving the first resource request, the access network device can allocate first resources to the first data according to the latency jitter range, the data volume of the first data indicated by the first resource request, and the transmission latency requirements of the first data. The first resource can consist of one or more resource blocks, which can be continuous or discontinuous. The end time of the last resource block satisfies the transmission latency requirements and latency jitter range requirements of the first resource. Figure 9Taking the example of the first resource comprising one resource block, where the time difference between the end time of the resource block and the time of sending the first resource request is 3ms.

[0156] After receiving the first resource response, the access network device can send the first data on the first resource. The transmission delay of the first data is 1ms (buffer duration) + 3ms (the time difference between the end time of the last resource block in the first resource and the time of sending the first resource request) = 4ms.

[0157] Furthermore, if the first QoS flow has data fault tolerance capability, the access network device can also allocate first resources to the first data based on the data volume of the first data, the transmission latency requirements of the first data, the latency jitter range, and the data fault tolerance rate corresponding to the first QoS flow. For example, if the data volume of the first data is 50M and the data fault tolerance rate is 70%, the access network device can allocate first resources that meet the transmission latency requirements and latency jitter range of the first data and can be used to transmit no less than 15M of data.

[0158] In some implementations, the first resource response may also carry or indicate information such as the maximum number of data retransmissions. If the access network device is unable to allocate resources to satisfy the first resource request, it may also send a negative acknowledgment (NACK) message to the terminal device, indicating that resources are refused or not allocated for the first data.

[0159] In addition, it is understood that the above-mentioned resource requests (such as the first resource request and the second resource request) can also be called resource reservation requests (such as the first resource reservation request and the second resource reservation request), and resource responses (such as the first resource response and the second resource response) can also be called resource reservation responses (such as the first resource reservation response and the second resource reservation response). This application does not limit the name of the message.

[0160] In some implementations, it is considered that a single DRB may map multiple QoS flows with different latency jitter ranges. After receiving a resource request (such as a first resource request or a second resource request) from a terminal device, the access network device may only be able to determine which DRB the resource request originated from, but not which QoS flow on the corresponding DRB. Therefore, in the embodiments of this application, the resource request (such as a first resource request or a second resource request) may also include the identification information of the QoS flow to which the data (such as second data) belongs, or the resource request may carry latency jitter requirements and data fault tolerance rate.

[0161] Figure 10 This is a schematic diagram of another data transmission method provided in an embodiment of this application. The method includes:

[0162] S1001: The terminal device sends first information to the CN, and the CN receives the first information accordingly. The first information indicates the latency jitter range and may also indicate the data fault tolerance rate.

[0163] S1002: CN sends second information to the terminal device, and the terminal device receives the second information accordingly. The second information indicates the latency jitter range allowed by the network for the first QoS flow.

[0164] S1003: The CN sends third information to the access network device, and the access network device receives the third information accordingly. The third information indicates the latency jitter range corresponding to the first QoS flow. If the first QoS flow has data fault tolerance capability, the third information can also indicate the data fault tolerance rate corresponding to the first QoS flow.

[0165] S1004: The terminal device sends a second resource request to the access network device, and the access network device receives the second resource request accordingly. The second resource request indicates the amount of second data and the second remaining delay budget for the second data.

[0166] Additionally, the second resource request may also indicate the identification information of the first QoS flow, or indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow. The identification information of the first QoS flow may be one or more of the following: flow ID, QFI, 5QI, application ID, etc.

[0167] S1005: The access network device sends a second resource response to the terminal device, and the terminal device receives the second resource response accordingly. The second resource response indicates the second resource for transmitting the second data.

[0168] S1006: The terminal device sends the second data according to the second resource, and correspondingly, the access network device receives the second data according to the second resource.

[0169] S1007: The terminal device sends a first resource request to the access network device, and the access network device receives the first resource request accordingly. The first resource request indicates the amount of first data and the required transmission delay for the first data, with the transmission delay requirement determined based on the transmission delay of the second data.

[0170] Additionally, the second resource request may also indicate the identification information of the first QoS flow, or indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow. The identification information of the first QoS flow may be one or more of the following: flow ID, QFI, 5QI, application ID, etc.

[0171] S1008: The access network device sends a first resource response to the terminal device, and the terminal device receives the first resource response accordingly. The first resource response indicates a first resource for transmitting the first data.

[0172] S1009: The terminal device sends first data according to the first resource, and correspondingly, the access network device receives the first data according to the first resource.

[0173] and Figure 8 The data transmission method shown is different in that... Figure 10 In the data transmission method shown, the resource request (such as a first resource request or a second resource request) may also indicate the identification information of the first QoS flow, or indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow. When an access network device corresponds to multiple first QoS flows in one DRB, it can also obtain the latency jitter range and / or data fault tolerance rate for data (such as first data or second data) transmission based on the identification information of the first QoS flow; or obtain the latency jitter range and / or data fault tolerance rate for data (such as first data or second data) transmission based on the latency jitter range and / or data fault tolerance rate indicated by the resource request. The implementation of steps S1001-S1009 can refer to the implementation of steps S801-S809 described above, and will not be repeated here.

[0174] In addition, in some implementations, the second data used as reference data can also be re-determined according to a set period or set conditions.

[0175] As an example: With a set period of 10ms, for the next data transmission 10ms after the previous transmission, the second communication device can allocate resources for the data based on its remaining latency budget, rather than based on its transmission latency requirement (which is determined by the transmission latency of the second data transmitted before it). The first communication device can use this data as new second data (i.e., reference data), and the transmission latency requirement for subsequent data can be determined based on this data's transmission latency until the second data is updated in the next period.

[0176] As another example: the second data (i.e., reference data) is updated every 100 data transmissions. For the 101st data transmission after 100 transmissions, the second communication device can allocate resources for this data based on its remaining latency budget, rather than based on its transmission latency requirement (which is determined based on the transmission latency of the second data transmitted before this data). The first communication device can use this data as the new second data (i.e., reference data), and the transmission latency requirement for subsequent data transmissions can be determined based on this data's transmission latency, until the 100 data transmissions starting with this data are completed before updating the second data again.

[0177] It is understood that the period or condition for re-determining the second data can be pre-configured in the first and second communication devices, or it can be determined interactively by the first and second communication devices, such as by the first communication device instructing the second communication device through a PDU session modification request, etc. This application does not limit the method by which the first and second communication devices obtain the period or condition for re-determining the second data.

[0178] Of course, the second data used as reference data can also be updated in other ways. For example: (1) the first communication device can actively update the second data when the rhythm of data generation (such as frequency, data volume) changes; (2) the first communication device can update the second data according to the instructions of other communication devices (such as the second communication device); (3) the first communication device can update the second data when the number of times the continuously sent resource requests are replied with NACK is greater than the number threshold (indirectly indicating that the current resource status of the network may not be able to adapt to the previous resource allocation rhythm); (4) the first communication device can update the second data once every time the amount of data sent reaches the data volume threshold, etc.

[0179] It is understood that, in order to achieve the functions in the above embodiments, the first or second communication device includes hardware structures and / or software modules corresponding to each function. Those skilled in the art should readily recognize that, based on the units and method steps of the various examples described in conjunction with the embodiments disclosed in this application, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed by hardware or by computer software driving hardware depends on the specific application scenario and design constraints of the technical solution.

[0180] Figure 11 A possible exemplary block diagram of the communication device involved in an embodiment of this application is shown. For example... Figure 11As shown, the communication device 1100 may include modules or units for implementing the methods described in the above embodiments. In one possible design, the communication device 1100 includes a processing unit 1102 and an interface unit 1103 (also referred to as a communication unit 1103). Optionally, the communication device 1100 may further include a storage unit 1101 for storing device program code and / or data. The processing unit 1102 may be a processor or processing circuit, etc., and the interface unit 1103 may be a transceiver unit, an input / output interface, or a transceiver, etc. The communication device 1100 can be used to implement the steps performed by the first or second communication device in the above embodiments.

[0181] When the communication device 1100 is used to implement the steps performed by the first communication device in the above embodiments, the communication device 1100 may be a terminal device or a communication module in the terminal device, or a circuit or chip in the terminal device responsible for communication functions.

[0182] For example, in one embodiment, interface unit 1103 is configured to send a first resource request, the first resource request being used to indicate the amount of first data and the transmission delay requirement of the first data, the transmission delay requirement being determined based on the transmission delay of second data, the second data being data transmitted before the first data; and to receive a first resource response, the first resource response being used to indicate a first resource for transmitting the first data; and processing unit 1102 is configured to send the first data through interface unit 1103 according to the first resource.

[0183] In one possible design, the first resource request includes one or more of the following: a first remaining delay budget for first data, a reference delay for first data, a transmission delay for second data, a buffer duration for first data, a transmission reference time for first data, and a second remaining delay budget for second data; wherein the first remaining delay budget is determined based on the data transmission delay budget and the buffer duration for first data, the reference delay for first data is determined based on the buffer duration for first data and the transmission delay for second data, the transmission reference time for first data is determined based on the arrival start time of first data and the transmission delay for second data, and the second remaining delay budget is determined based on the data transmission delay budget and the buffer duration for second data.

[0184] In one possible design, the transmission delay requirement of the first data is determined based on the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data.

[0185] In one possible design, the transmission delay requirement for the first data is determined based on the reference delay of the first data.

[0186] In one possible design, the transmission delay requirement for the first data is determined based on the transmission reference time of the first data.

[0187] In one possible design, the interface unit 1103 is further configured to send first information before sending the first resource request, the first information being used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first quality of service (QoS) flow, wherein the first data and the second data belong to the first QoS flow.

[0188] In one possible design, the interface unit 1103 is also used to receive second information, which indicates the latency jitter range that the network allows for the first QoS flow.

[0189] In one possible design, the first resource request includes identification information for the first QoS flow.

[0190] In one possible design, the first resource request is also used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

[0191] In one possible design, interface unit 1103 is further configured to send a second resource request before sending the first resource request, the second resource request being used to indicate the amount of second data and the second remaining latency budget of the second data, wherein the second remaining latency budget is determined based on the data latency budget and the buffer duration of the second data; and to receive a second resource response, the second resource response being used to indicate the second resource for transmitting the second data; processing unit 1102 is further configured to send the second data through interface unit 1103 according to the second resource.

[0192] In one possible design, when the communication device 1100 is a terminal device or a communication module within a terminal device, the function of the processing unit 1102 can be implemented by one or more processors. Specifically, the processor may include a modem chip, or a system-on-a-chip (SoC) chip or a SIP chip containing a modem core. The function of the interface unit 1103 can be implemented by a transceiver circuit.

[0193] In one possible design, when the communication device 1100 is a circuit or chip responsible for communication functions in a terminal device, such as a modem chip or a system-on-a-chip (SoC) or SIP chip containing a modem core, the function of the processing unit 1102 can be implemented by a circuit system in the aforementioned chip that includes one or more processors or processor cores. The function of the interface unit 1103 can be implemented by the interface circuit or data transceiver circuit on the aforementioned chip.

[0194] When the communication device 1100 is used to implement the steps performed by the second communication device in the above embodiments, the communication device 1100 may be an access network device, a component of the access network device (e.g., a processor, chip, chip system, etc.), or a device that is matched with the access network device (e.g., a logical node, logical module, or software that can implement all or part of the functions of the access network device).

[0195] For example, in one embodiment, interface unit 1103 is configured to receive a first resource request, the first resource request being used to indicate the amount of first data and the transmission delay requirement of the first data, the transmission delay requirement being determined based on the transmission delay of second data, the second data being data transmitted before the first data; and to send a first resource response, the first resource response being used to indicate a first resource for transmitting the first data; and processing unit 1102 is configured to receive the first data through interface unit 1103 according to the first resource.

[0196] In one possible design, the first resource request includes one or more of the following: a first remaining delay budget for first data, a reference delay for first data, a transmission delay for second data, a buffer duration for first data, a transmission reference time for first data, and a second remaining delay budget for second data; wherein the first remaining delay budget is determined based on the data transmission delay budget and the buffer duration for first data, the reference delay for first data is determined based on the buffer duration for first data and the transmission delay for second data, the transmission reference time for first data is determined based on the arrival start time of first data and the transmission delay for second data, and the second remaining delay budget is determined based on the data transmission delay budget and the buffer duration for second data.

[0197] In one possible design, the transmission delay requirement of the first data is determined based on the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data.

[0198] In one possible design, the transmission delay requirement for the first data is determined based on the reference delay of the first data.

[0199] In one possible design, the transmission delay requirement for the first data is determined based on the transmission reference time of the first data.

[0200] In one possible design, the interface unit 1103 is further configured to receive third information before receiving the first resource request, the third information indicating the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

[0201] In one possible design, the first resource request includes identification information for the first QoS flow.

[0202] In one possible design, the first resource request is also used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

[0203] In one possible design, interface unit 1103 is further configured to receive a second resource request before receiving the first resource request, the second resource request indicating the amount of second data and the second remaining latency budget of the second data, wherein the second remaining latency budget is determined based on the data transmission latency budget and the buffer duration of the second data; and to send a second resource response indicating the second resource for transmitting the second data; and processing unit 1102 is configured to receive the second data through interface unit 1103 according to the second resource.

[0204] It is understandable that the division of units in the above-mentioned device is merely a logical functional division. One function can correspond to one functional unit, or two or more functions can be integrated into one functional unit. In actual implementation, all or some units can be integrated into one physical entity, or they can be distributed across different physical entities.

[0205] In one example, the functional unit in any of the above devices may be one or more integrated circuits configured to implement the above methods, such as: one or more application-specific integrated circuits (ASICs), or one or more central processing units (CPUs), one or more microcontroller units (MCUs), one or more digital signal processors (DSPs), or one or more field-programmable gate arrays (FPGAs), or a combination of at least two of these integrated circuit forms.

[0206] In one example, storage unit 1101 may include random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory and / or registers, etc.

[0207] See Figure 12 This is a possible exemplary block diagram of a terminal device 1200 provided in an embodiment of this application. The terminal device 1200 can correspond to... Figure 1 The terminal device shown is used to implement the operations of the terminal device in the above embodiments (such as the operations when the first communication device is a terminal device). Figure 12As shown, the terminal device includes: one or more antennas 1210, a radio frequency processing system 1220, and a processor system 1230.

[0208] In the downlink or sidelink direction, the RF processing system 1220 receives RF signals through the antenna 1210 and sends the RF-processed signals to the processor system 1230 for further processing. In the uplink or sidelink direction, the processor system 1230 processes the information from the terminal device side and sends it to the RF processing system 1220, which then processes the signal and transmits it through the antenna 1210.

[0209] In one example, the radio frequency (RF) processing system 1220 serves as the communication interface for external communication of the terminal device and may include a radio frequency front end (RFFE) 1221 and a radio frequency transceiver 1222. The RFFE 1221 is primarily used for one or more processing operations, such as shaping, passband selection, or gain adjustment, on the radio frequency (RF) signal received by the antenna or the RF signal to be transmitted through the antenna. It may include one or more components such as an RF switch, duplexer, filter, power amplifier, antenna tuner, and low-noise amplifier. The RFFE 1221 can be a circuit system composed of multiple discrete components or integrated into one or more chips. The radio frequency transceiver 1222 is used to process the RF signal received by the RFFE into a baseband / intermediate frequency signal for further processing by the processor system 1230, and to process the baseband / intermediate frequency signal provided by the processor system 1230 into an RF signal for transmission to the RFFE 1221. The baseband / intermediate frequency signal transmitted between the radio frequency transceiver 1222 and the processor system 1230 can be a digital signal or an analog signal. The radio frequency transceiver 1222 can be implemented by one or more chips, which are typically referred to as radio frequency integrated circuits (RFICs).

[0210] In one example, processor system 1230 may include one or more processors for processing signals and executing one or more communication protocols. Optionally, processor system 1230 may also include memory 1236. In one example, the one or more processors include at least one baseband processor 1231 (also known as a modem processor). Memory 1236 is used to store data and / or computer program instructions. Optionally, processor system 1230 may also include one or more application processors 1232 for implementing processing of the terminal device operating system and application layer. Optionally, processor system 1230 may also include one or more of a voice subsystem 1233, a multimedia subsystem 1234, or an interface circuit 1235. The voice subsystem 1233 is used to process voice signals, the multimedia subsystem 1234 is used to handle multimedia-related operations, such as video encoding / decoding, image processing, etc., and the interface circuit 1235 is used to enable communication with other terminal device components, such as display 1240, input device 1250, memory 1260, etc. The above-mentioned components in processor system 1230 can communicate with each other via a bus or communication interface circuit.

[0211] In one example, the processor system 1230 can be packaged as a single processor chip, such as a SoC chip or a SIP chip. In another example, the processor system 1230 can be a system composed of multiple chips, for example, the baseband processor 1231 can be packaged as a single chip, or packaged with part or all of the circuitry of the radio frequency processing system into a single chip.

[0212] In one example, memory 1236 can be on-chip memory, i.e., located on the processor system 1230 chip. In another example, memory 1260 can be off-chip memory, i.e. located outside the processor system 1230 chip.

[0213] In one example, the baseband processor 1231 may include one or more processor cores 12311 and interface circuitry 12314. The one or more processor cores 12311 are used to process signals and execute one or more communication protocols. Optionally, the baseband processor 1231 may also include a memory 12312 for storing at least a portion of the corresponding computer program instructions and / or data. In one example, the one or more processor cores 12311 execute the computer program instructions stored in the memory 12312 to perform the relevant operations (such as sending a first resource request, receiving a first resource response, etc.) in the above method embodiments. In this application, the memory 12312 is used to store corresponding computer program instructions and / or data. This can mean that the memory 12312 stores all corresponding computer program instructions and / or data for execution by the processor core 12311; or it can mean that the memory 12312 stores a portion of the corresponding computer program instructions and / or data, including the computer program instructions and / or data currently required to be executed by the processor core 12311. The memory 12312 can store different portions of computer program instructions and / or data multiple times for execution by the processor core 12311 to implement the relevant operations in the above method embodiments. The interface circuit 12314 serves as a communication interface for communication with other components, such as transmitting signals with the radio frequency processing system 1220, communicating with other subsystems and related components of the processor system 1230 via a bus, such as transmitting data control signals with the application processor 1232, and transmitting data or computer program instructions with the memory 1236 or memory 1260. Optionally, in order to reduce the load on the processor core, a baseband signal processing circuit 12313 can be set to perform at least some baseband signal processing, including one or more of signal demodulation, modulation, encoding or decoding.

[0214] In one example, the communication device provided in this application may be a terminal device 1200, a communication module including a processor system 1230 and a radio frequency system 1220, or a processor system 1230, or a baseband processor 1231.

[0215] The processor, processor system, application processor, baseband processor, processor circuit, or processor core mentioned above can be collectively referred to as a processor. The processor may include one or more of the following: central processing unit (CPU), digital signal processor (DSP), microprocessor unit (MPU), microcontroller unit (MCU), graphics processing unit (GPU), field programmable gate array (FPGA), artificial intelligence processor (AI processor), or neural processing unit (NPU).

[0216] The aforementioned memory may include one or more of the following storage media: random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), phase-change memory (PCM), resistive random access memory (ReRAM), magnetoresistive random access memory (MRAM), ferroelectric random access memory (FRAM), cache, register, read-only memory (ROM), flash memory, erasable programmable read-only memory (EPROM), hard disk, etc. In one example, computer program instructions for executing the above embodiments may be stored on non-volatile memory, such as at least a portion of the aforementioned memory 1260 (e.g., one or more of ROM, flash memory, EPROM, or hard disk). When the terminal device is running, the corresponding computer program instructions may be partially or wholly loaded onto a memory with a faster transfer speed than the processor, such as at least a portion of memory 1236 and / or memory 12312 (e.g., one or more of RAM, SRAM, DRAM, PCM, RERAM, MRAM, FRAM, cache, or register), for the processor to execute in order to implement the steps in the above method embodiments.

[0217] In one example, the RF transceiver 1222 and the RF front-end 1221 can also be packaged in a single chip. In another example, the RF transceiver 1222, the RF front-end 1221, and the baseband processor 1231 can also be packaged in a single chip.

[0218] The terms "system" and "network" used in the embodiments of this application are interchangeable. Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, optical storage, etc.) containing computer-usable program code.

[0219] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0220] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0221] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0222] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.

Claims

1. A data transmission method, characterized in that, include: Send a first resource request, which is used to indicate the amount of first data and the transmission delay requirement of the first data. The transmission delay requirement is determined based on the transmission delay of second data, which is data transmitted before the first data. Receive a first resource response, the first resource response being used to indicate a first resource for transmitting the first data; The first data is sent according to the first resource.

2. The method as described in claim 1, characterized in that, The first resource request includes one or more of the following: The first remaining delay budget of the first data, the reference delay of the first data, the transmission delay of the second data, the buffer duration of the first data, the transmission reference time of the first data, and the second remaining delay budget of the second data; Wherein, the first remaining delay budget is determined based on the data transmission delay budget and the buffer duration of the first data, the reference delay of the first data is determined based on the buffer duration of the first data and the transmission delay of the second data, the transmission reference time of the first data is determined based on the arrival start time of the first data and the transmission delay of the second data, and the second remaining delay budget is determined based on the data transmission delay budget and the buffer duration of the second data.

3. The method as described in claim 2, characterized in that, The transmission delay requirement of the first data is determined based on the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data.

4. The method as described in claim 2, characterized in that, The transmission delay requirement for the first data is determined based on the reference delay of the first data.

5. The method as described in claim 2, characterized in that, The transmission delay requirement for the first data is determined based on the transmission reference time of the first data.

6. The method according to any one of claims 1-5, characterized in that, Before sending the first resource request, the method further includes: Send first information, the first information being used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

7. The method as described in claim 6, characterized in that, The method further includes: Receive second information, which is used to indicate the latency jitter range that the network allows for the first QoS flow.

8. The method as described in claim 6 or 7, characterized in that, The first resource request includes the identification information of the first QoS flow.

9. The method according to any one of claims 1-8, characterized in that, The first resource request is further used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS stream, wherein the first data and the second data belong to the first QoS stream.

10. The method according to any one of claims 1-9, characterized in that, Before sending the first resource request, the method further includes: Send a second resource request, the second resource request being used to indicate the amount of the second data and the second remaining latency budget of the second data, wherein the second remaining latency budget is determined based on the data latency budget and the cache duration of the second data; Receive a second resource response, the second resource response being used to indicate a second resource for transmitting the second data; The second data is sent according to the second resource.

11. A data transmission method, characterized in that, include: Receive a first resource request, the first resource request being used to indicate the amount of first data and the transmission delay requirement of the first data, the transmission delay requirement being determined based on the transmission delay of second data, the second data being data transmitted before the first data; Send a first resource response, the first resource response being used to indicate a first resource for transmitting the first data; The first data is received according to the first resource.

12. The method as described in claim 11, characterized in that, The first resource request includes one or more of the following: The first remaining delay budget of the first data, the reference delay of the first data, the transmission delay of the second data, the buffer duration of the first data, the transmission reference time of the first data, and the second remaining delay budget of the second data; Wherein, the first remaining delay budget is determined based on the data transmission delay budget and the buffer duration of the first data, the reference delay of the first data is determined based on the buffer duration of the first data and the transmission delay of the second data, the transmission reference time of the first data is determined based on the arrival start time of the first data and the transmission delay of the second data, and the second remaining delay budget is determined based on the data transmission delay budget and the buffer duration of the second data.

13. The method as described in claim 12, characterized in that, The transmission delay requirement of the first data is determined based on the first remaining delay budget of the first data, the second remaining delay budget of the second data, and the transmission delay of the second data.

14. The method as described in claim 12, characterized in that, The transmission delay requirement for the first data is determined based on the reference delay of the first data.

15. The method as described in claim 12, characterized in that, The transmission delay requirement for the first data is determined based on the transmission reference time of the first data.

16. The method according to any one of claims 11-15, characterized in that, Before receiving the first resource request, the method further includes: Receive third information, the third information indicating the latency jitter range and / or data fault tolerance rate corresponding to the first QoS flow, wherein the first data and the second data belong to the first QoS flow.

17. The method as described in claim 16, characterized in that, The first resource request includes the identification information of the first QoS flow.

18. The method according to any one of claims 11-17, characterized in that, The first resource request is further used to indicate the latency jitter range and / or data fault tolerance rate corresponding to the first QoS stream, wherein the first data and the second data belong to the first QoS stream.

19. The method according to any one of claims 11-18, characterized in that, Before sending the first resource request, the method further includes: Receive a second resource request, the second resource request being used to indicate the amount of the second data and the second remaining latency budget of the second data, wherein the second remaining latency budget is determined based on the data transmission latency budget and the buffer duration of the second data; Send a second resource response, the second resource response being used to indicate a second resource for transmitting the second data; The second data is received according to the second resource.

20. A communication device, characterized in that, Includes units for performing the method as described in any one of claims 1-10, or the method as described in any one of claims 11-19.

21. A communication device, characterized in that, It includes at least one processor, said at least one processor being configured to perform the method as described in any one of claims 1-10, or to perform the method as described in any one of claims 11-19.

22. A computer-readable storage medium, characterized in that, The storage medium stores a computer program or instructions, which, when executed, implement the method as described in any one of claims 1-10, or the method as described in any one of claims 11-19.

23. A computer program product, characterized in that, Includes a computer program or instructions that, when executed, cause the method as claimed in any one of claims 1-10, or the method as claimed in any one of claims 11-19, to be implemented.

24. A communication system, characterized in that, Includes a first communication device and a second communication device; The first communication device is used to implement the method as described in any one of claims 1-10; The second communication device is used to implement the method as described in any one of claims 11-19.