Data transmission method and device

By obtaining application information in the terminal device and using URSP to match network slice information, the problem of terminal devices being unable to determine the application is solved, achieving the satisfaction of differentiated business needs and user experience improvement.

CN120282309APending Publication Date: 2025-07-08HONOR DEVICE CO LTD

Patent Information

Application Number
CN202311867812.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-29
Publication Date
2025-07-08

AI Technical Summary

Technical Problem

The terminal device cannot determine the network slice matching the running application, resulting in the network slice being unable to meet differentiated business needs and affecting the user experience.

Method used

The application information of the first application is obtained through the second application program in the terminal device, and the user device routing policy URSP query and the first network slice information is activated to activate the corresponding PDU session transmission data stream to achieve matching the application and the network slice.

Benefits of technology

It improves the utilization rate of network resources, meets the differentiated needs of different applications, and enhances the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120282309A_ABST
    Figure CN120282309A_ABST
Patent Text Reader

Abstract

The invention provides a data transmission method and device, and relates to the technical field of communication. According to the embodiment of the invention, the network slice information corresponding to the application program can be matched according to the application information of the application program operated by the terminal equipment, so that differentiated service requirements can be met, and the utilization rate of network resources is improved. The method comprises the following steps: when a first application program runs, determining first network slice information corresponding to the first application program by utilizing a second application program; and using a protocol data unit PDU session activated by the first network slice information to transmit a data stream generated by the operation of the first application program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

[0002] The types of terminal devices and the services provided by terminal devices are increasing. For different types of services, it is difficult to meet the diverse service requirements of terminal devices if the same network is used to provide services for them. Therefore, providing differentiated network services for different services through network slicing technology is one of the important ways to improve network quality currently.

[0003] Network slicing is a way of networking on demand, which allows operators to cut out multiple virtual end-to-end networks on the unified infrastructure. Each network slice is logically isolated from the radio access network to the bearer network and then to the core network, and is adapted to various types of service applications. However, currently, a terminal device may not be able to determine the network slice that matches the application program running in the terminal device, thereby making the network slice unable to provide services for the services of the application program, resulting in a poor user experience. Summary of the Invention

[0004] This application provides a data transmission method and apparatus, which can match the network slice information corresponding to an application program according to the application information of the application program running on a terminal device, helping to meet the differentiated service requirements, thereby improving the user experience.

[0005] In a first aspect, a data transmission method is provided, including: when a first application program is running, using a second application program to determine first network slice information corresponding to the first application program; using a protocol data unit (PDU) session activated by the first network slice information to transmit the data stream generated during the running of the first application program.

[0006] In the data transmission method of this application, a terminal device can use a second application program to match the first network slice information corresponding to a first application program. For different application programs running on the terminal device, the PDU sessions corresponding to the respective application programs can be used to transmit the data streams generated during the running of the respective application programs, which can meet the differentiated requirements of different application programs, help improve the utilization rate of network resources, and thereby improve the user experience.

[0007] It should be understood that when the first application program is running, it can be when the first application program is started, that is, when the first application program is started, the terminal device determines the first network slice information. The first network slice information can be understood as the parameters used to describe the PDU session required for the terminal device to activate the PDU session corresponding to the first network slice, or the parameters used to describe the attributes of the PDU session corresponding to the first network slice information.

[0008] In combination with the first aspect, in some implementations of the first aspect, determining a first network slice corresponding to a first application by using a second application includes: obtaining application information of the first application by using the second application; querying first network slice information corresponding to the application information from a User Equipment Routing Selection Policy (URSP).

[0009] Among them, the URSP may include the correspondence between the application information and the first network slice information. In this way, when the second application can obtain the application information, the first network slice information can be determined by using the URSP, which helps to improve the success rate of enabling the terminal device to successfully match the first network slice information corresponding to the first application.

[0010] In combination with the first aspect, in some implementations of the first aspect, querying first network slice information corresponding to the application information from a User Equipment Routing Selection Policy (URSP) by using the application information includes: transmitting the application information to an operating system information management module by using the second application; transmitting the application information to a Modem by using the information management module; querying, by the Modem, first network slice information corresponding to the application information from the URSP based on the application information, where the URSP includes the correspondence between the application information and the first network slice information. In this way, the Modem can determine the first network slice information through the application information and the URSP, without the need for the terminal device to convert the application information.

[0011] In combination with the first aspect, in some implementations of the first aspect, transmitting the application information to the information management module by using the second application includes: transmitting the application information to the information management module by using the second application to call a first interface. The first interface can be used to transmit the application information or TD parameters. Through the first interface, the second application can transmit the application information or TD parameters to the information management module, so that the Modem can match network slice information for the first application based on the application information or TD parameters from the information management module.

[0012] In combination with the first aspect, in some implementations of the first aspect, the information management module transmits the application information to the Modem by using a network request function. In this way, it helps to improve the success rate of transmitting the application information to the Modem.

[0013] In combination with the first aspect, in some implementations of the first aspect, using the application information, query the first network slice information corresponding to the application information from the User Equipment Routing Selection Policy (URSP), including: using a second application, based on a preset correspondence, convert the application information into Traffic Descriptor (TD) parameters, where the preset correspondence includes the correspondence between the application information and the TD parameters; use the second application to transmit the TD parameters to the information management module; use the information management module to transmit the TD parameters to the Modem; use the Modem to query, based on the TD parameters, the first network slice information corresponding to the application information from the URSP, where the URSP includes the correspondence between the TD parameters and the first network slice information. In this way, without modifying the URSP, it helps the terminal device to successfully match the first network slice information using the TD parameters.

[0014] In combination with the first aspect, in some implementations of the first aspect, the method further includes: using the Modem to transmit a first piece of information to the information management module, where the first piece of information is used to indicate that the first application has successfully matched the first network slice information, and the first piece of information includes information for indicating the first application; using the information management module to transmit the first piece of information to the second application; using the second application to call a second interface to bind the routing relationship of the first application, where the routing relationship is the relationship between the first application and the PDU session. In this way, the second application can determine whether the first application has successfully matched the network slice information, facilitating the second application to bind the routing relationship of the first application, so that the data stream generated by the operation of the first application can be routed to the PDU session corresponding to the first network slice information through this routing relationship. Then, the terminal device transmits the data stream of the first application through this PDU session.

[0015] In combination with the first aspect, in some implementations of the first aspect, using the Protocol Data Unit (PDU) session activated by the first network slice information to transmit the data stream generated by the operation of the first application, including: using the Modem to send a PDU session establishment request for activating the PDU session to the core network device, where the PDU session establishment request carries the first network slice information; receiving a PDU session establishment response from the core network device, where the PDU session establishment response is used to indicate that the PDU session activation is successful; using the Modem to transmit the data stream through the PDU session. In this way, a PDU session corresponding to the first network slice information can be established, and the terminal device can use this PDU session to transmit the data stream generated by the operation of the first application, which helps to meet the differentiated service requirements.

[0016] In combination with the first aspect, in some implementations of the first aspect, the URSP is pre - set, obtained from the core network device, or generated through Attention (AT) commands.

[0017] In combination with the first aspect, in some implementations of the first aspect, before obtaining the application information of the first application by using the second application, the method further includes: using the second application to obtain system permissions from the information management module, where the system permissions are the permissions for the second application to obtain application information. The system permissions can also be understood as the permissions for the second application to register with the activity management module to listen to the startup process of the application, and the permissions for the second application to obtain the application information of the started application. In this way, the second application can successfully obtain the application information of the started first application. Thus, it is convenient for the terminal device to match the network slice information of the first application by using the application information.

[0018] In combination with the first aspect, in some implementations of the first aspect, using the second application to obtain system permissions from the information management module includes: using the second application to send a first request to the information management module, where the first request is used to obtain system permissions and carries the signature of the second application; using the information management module to determine whether the second application belongs to the whitelist based on the signature; if so, the second application obtains the system permissions. Among them, the signature can be used to determine information such as the source and developer of the second application.

[0019] In combination with the first aspect, in some implementations of the first aspect, the second application is the first SDK application, and / or the application information includes one or more of the following: application ID, package name, or data network name DNN.

[0020] In a second aspect, a data transmission device is provided for executing the method in any possible implementation of the first aspect above. Specifically, the device includes a module for executing the method in any possible implementation of the first aspect above.

[0021] In a third aspect, the present application provides another data transmission device, including a processor, which is coupled to a memory and can be used to execute instructions in the memory to implement the method in any possible implementation of the first aspect above. Optionally, the device further includes a memory. Optionally, the device further includes a communication interface, and the processor is coupled to the communication interface.

[0022] In one implementation, the device is a terminal device. When the device is a terminal device, the above communication interface can be a transceiver or an input / output interface.

[0023] In another implementation, the device is a chip configured in a terminal device. When the device is a chip configured in a terminal device, the above communication interface can be an input / output interface.

[0024] Fourth aspect, a processor is provided, including: an input circuit, an output circuit, and a processing circuit. The processing circuit is configured to receive a signal through the input circuit and transmit a signal through the output circuit, so that the processor executes the method in any of the possible implementation manners in the first aspect above.

[0025] In a specific implementation process, the above-mentioned processor may be a chip, the input circuit may be an input pin, the output circuit may be an output pin, and the processing circuit may be transistors, gate circuits, flip-flops, and various logic circuits, etc. The input signal received by the input circuit may be received and input by, for example, but not limited to, a receiver, and the signal output by the output circuit may be output to, for example, but not limited to, a transmitter and transmitted by the transmitter. Moreover, the input circuit and the output circuit may be the same circuit, which serves as the input circuit and the output circuit at different times respectively. The embodiments of the present application do not limit the specific implementation manners of the processor and various circuits.

[0026] Fifth aspect, a processing device is provided, including a processor and a memory. The processor is configured to read instructions stored in the memory, and may receive a signal through a receiver and transmit a signal through a transmitter to execute the method in any of the possible implementation manners in the first aspect above.

[0027] Optionally, the processor is one or more, and the memory is one or more.

[0028] Optionally, the memory may be integrated with the processor, or the memory is separately arranged from the processor.

[0029] In a specific implementation process, the memory may be a non-transitory memory, such as a read only memory (ROM), which may be integrated with the processor on the same chip, or may be separately arranged on different chips. The present application does not limit the type of the memory and the setting manner of the memory and the processor.

[0030] It should be understood that relevant data interaction processes, such as sending indication information, may be a process of outputting indication information from the processor, and receiving capability information may be a process of the processor receiving input capability information. Specifically, the data output by the processing may be output to the transmitter, and the input data received by the processor may come from the receiver. Among them, the transmitter and the receiver may be collectively referred to as a transceiver.

[0031] The processing device in the above fifth aspect may be a chip, and the processor can be implemented by hardware or software. When implemented by hardware, the processor may be a logic circuit, an integrated circuit, etc.; when implemented by software, the processor may be a general-purpose processor, which is implemented by reading software code stored in a memory. The memory may be integrated in the processor or may be located outside the processor and exist independently.

[0032] In a sixth aspect, there is provided a computer program product, which includes a computer program (which may also be referred to as code or instruction). When the computer program is run, it causes a computer to execute the method in any one of the possible implementation manners in the above first aspect.

[0033] In a seventh aspect, there is provided a computer-readable storage medium storing a computer program (which may also be referred to as code or instruction). When it runs on a computer, it causes the computer to execute the method in any one of the possible implementation manners in the above first aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] Figure 1 It is a schematic diagram of a communication system applied in an embodiment of the present application;

[0035] Figure 2 It is a schematic diagram of a scenario applicable to the method provided in an embodiment of the present application;

[0036] Figure 3 It is a schematic diagram of the software architecture of a terminal device provided in an embodiment of the present application;

[0037] Figure 4 It is a schematic flowchart of a data transmission method provided in an embodiment of the present application;

[0038] Figure 5 It is a schematic flowchart of a method for a terminal device to match a network slice provided in an embodiment of the present application;

[0039] Figure 6 It is a schematic block diagram of a data transmission device provided in an embodiment of the present application;

[0040] Figure 7 It is a schematic block diagram of another data transmission device provided in an embodiment of the present application;

[0041] Figure 8 It is a schematic block diagram of the hardware structure of a terminal device provided in an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0042] Next, the technical solutions in the present application will be described in conjunction with the accompanying drawings.

[0043] In some embodiments provided in the present application, words such as "first" and "second" are used to distinguish between identical or similar items with substantially the same functions and effects. For example, the first value and the second value are only used to distinguish different values, and do not limit their order. Those skilled in the art will understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit them to be different.

[0044] It should be noted that in the embodiments of the present application, words such as "exemplarily" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplarily" or "for example" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplarily" or "for example" is intended to present related concepts in a specific way.

[0045] In the embodiments of the present application, "at least one" refers to one or more, and "plurality" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character "是" generally indicates that the associated objects before and after are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, a--c, bc, or abc, where a, b, c can be single or plural.

[0046] The technical solutions of the embodiments of the present application can be applied to various communication systems, such as: long term evolution (LTE) system, LTE frequency division duplex (FDD) system, LTE time division duplex (TDD), universal mobile telecommunication system (UMTS), worldwide interoperability for microwave access (WiMAX) communication system, fifth generation (5G) system or new radio (NR), future evolved communication systems, such as sixth generation (6G) system, etc.

[0047] The terminal device in the embodiments of this application may also be referred to as: user equipment (UE), mobile station (MS), mobile terminal (MT), access terminal, user unit, user station, mobile station, mobile platform, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent, or user device, etc.

[0048] The access network device and the core network device in the embodiments of this application may be collectively referred to as network devices.

[0049] The core network device in the embodiments of this application may be a core network device in a 5G system. For example, it may be a network element such as an access and mobility management function (AMF) network element, a policy control function (PCF) network element, etc. It may also be a core network device with other names, and the embodiments of this application do not limit this.

[0050] The access network device may be any device with wireless transceiver functions. The access network device includes but is not limited to: evolved Node B (eNB), radio network controller (RNC), Node B (NB), base station controller (BSC), base transceiver station (BTS), home base station (for example, home evolved Node B, or home Node B, HNB), baseband unit (BBU), access point (AP) in a wireless fidelity (WiFi) system, wireless relay node, wireless backhaul node, transmission point (TP), or transmission and reception point (TRP), etc. It may also be a 5G base station (next-Generation Node B, gNB) in a 5G, such as NR, system, or a transmission point (TRP or TP), one or a group (including multiple antenna panels) of antenna panels of a base station in a 5G system, or it may also be a network node constituting a gNB or a transmission point, such as a baseband unit (BBU), or a distributed unit (DU), etc.

[0051] In some deployments, the gNB may include a centralized unit (CU) and a DU. The gNB may also include an active antenna unit (AAU). The CU implements some functions of the gNB, and the DU implements some functions of the gNB. For example, the CU may be responsible for processing non-real-time protocols and services. For instance, it can implement the functions of the radio resource control (RRC) layer, the service data adaptation protocol (SDAP) layer, and / or the packet data convergence protocol (PDCP) layer. The DU may be responsible for processing physical layer protocols and real-time services. For example, it can implement the functions of the radio link control (RLC) layer, the media access control (MAC) layer, and the physical (PHY) layer. A DU can be connected to only one CU or multiple CUs, while a CU can be connected to multiple DUs, and the CU and the DU can communicate through the F1 interface. The AAU can implement some physical layer processing functions, radio frequency processing, and related functions of active antennas. Since the information of the RRC layer will ultimately be delivered to the PHY layer and become the information of the PHY layer, or vice versa, in this architecture, high-layer signaling, such as RRC layer signaling, can also be considered to be sent by the DU, or by the DU + AAU.

[0052] It can be understood that the access network device can be a device including one or more of a CU node, a DU node, and an AAU node. In addition, the CU can be classified as an access network device in the radio access network (RAN), or it can be classified as an access network device in the core network (CN). This application does not make any limitations in this regard.

[0053] The access network device provides services for a cell, and the terminal device communicates with the cell through the transmission resources allocated by the access network device (for example, frequency domain resources, or in other words, spectrum resources). This cell can belong to a macro base station (such as a macro eNB or a macro gNB, etc.), or it can belong to a base station corresponding to a small cell. Here, the small cell can include: metro cell, micro cell, pico cell, femto cell, etc. These small cells have characteristics such as a small coverage range and a low transmission power, and are suitable for providing high-rate data transmission services.

[0054] The following introduces some technical terms related to this application.

[0055] 1. Network slicing is a way of networking on demand, which allows operators to cut out multiple virtual end-to-end networks on the unified infrastructure. Each network slice is logically isolated from the radio access network to the bearer network and then to the core network to adapt to various types of service applications. A network slice can include a radio sub-slice, a bearer sub-slice, and a core network sub-slice. Network slicing can also be understood as a logical network formed by combining relevant service functions, network resources, and network configurations in the physical network.

[0056] 2. Network slice selection assistance information (NSSAI) can be information used to identify network slices. For example, NSSAI can include information for indicating the slice / service type (SST) and / or information for indicating the slice differentiator (SD), etc.

[0057] 3. UE route selection policy (URSP) is information describing the correspondence between application programs and network slices. URSP can include one or more single network slice selection assistance information (S-NSSAI), etc., to implement differentiated control policies for different users and different services.

[0058] To facilitate the understanding of the embodiments of this application, first, in combination with Figure 1 a detailed description will be given of what is applicable to the embodiments of this application.

[0059] Figure 1 FIG. shows a schematic diagram of a communication system 100 to which the embodiments of this application are applied. The communication system 100 includes an access network and a core network.

[0060] Among them, the access network includes at least one access network device, such as Figure 1 the access network device 110 shown in FIG.; the access network also includes at least one terminal device, such as Figure 1The terminal device 120 shown. Among them, the core network device in the core network can be connected to the access network device by wireless or wired means. When the terminal device is within the coverage of the access network device, it can be connected to the access network device by wireless means. For example, when the terminal device 120 is within the coverage of the access network device 110, the terminal device 120 can be connected to the access network device 110 by wireless means.

[0061] The access network device 110 and the terminal device 120 can communicate via a wireless link. The access network device 110 or the terminal device 120 can be configured with multiple antennas, and the multiple antennas can include at least one transmitting antenna for sending signals and at least one receiving antenna for receiving signals. Additionally, the access network device 110 or the terminal device 120 further includes a transmitter chain and a receiver chain. Those of ordinary skill in the art can understand that they can both include multiple components related to signal transmission and reception (such as a processor, a modulator, a multiplexer, a demodulator, a demultiplexer, or an antenna, etc.). Therefore, the access network device 110 and the terminal device 120 can communicate via multi-antenna technology.

[0062] In addition, the access network device 110 can also communicate with the core network device in the core network via a wireless link. Therefore, the terminal device 120 can communicate with the core network device through the access network device 110. Exemplarily, the terminal device 120 can send information 1 to the access network device 110. Correspondingly, the access network device 110 receives information 1 from the terminal device 120; the access network device 110 sends information 1 to the core network device. Correspondingly, the core network device receives information 1 from the access network device 110. Or, the core network device sends information 2 to the access network device 110. Correspondingly, the access network device 110 receives information 2 from the core network device; the access network device 110 sends information 2 to the terminal device 120. Correspondingly, the terminal device 120 receives information 2 from the access network device 110.

[0063] The main functions of the core network are to provide user connections, user management, and bearer services for services, and to provide an interface to the external network as a bearer network. The establishment of user connections includes functions such as mobility management (MM), call management (CM), switching / routing, and announcement recording (combining intelligent network services to complete the connection relationship to intelligent network peripheral devices), etc.

[0064] It is understandable that the core network of the 4G network is an evolved packet core (EPC) network. The EPC network is the core network of the 4G mobile communication network. It belongs to the category of core networks, has traditional capabilities of mobile networks such as user subscription data storage, mobility management, and data exchange, and can provide users with an ultra-high-speed Internet experience. The core network of the 5G network is 5G Core (which can be abbreviated as 5GC for short). 5GC will use general network function virtualization devices to replace the dedicated communication devices of the 4G network.

[0065] It should be noted that Figure 1 The core network in the shown network architecture can be obtained by fusing EPC and 5GC. That is to say, the core network in this network architecture can include both network elements in EPC and network elements in 5GC. For example, the core network in this network architecture can include access and mobility management function (AMF) network elements, policy control function (PCF) network elements, mobility management entity (MME) network elements, serving gate way (SGW) network elements, packet data network gate way (PGW) network elements, session management function (SMF) network elements, user plane function (UPF) network elements, unified data management (UDM) network elements, home subscriber server (HSS) network elements, etc.

[0066] In some embodiments of the present application, the core network in this network architecture can include fused network elements obtained from network elements in EPC and network elements in 5GC. For example, SMF+PGW-C, UPF+PGW-U, UDM+HSS, etc. Among them, PGW-C is the control plane node of the PGW network element, and PGW-U is the user plane node of the PGW network element.

[0067] Each network element in the core network can also be called a functional entity, which can be either a network component implemented on dedicated hardware, a software instance running on dedicated hardware, or an instance of virtualized functions on a suitable platform.

[0068] It should be understood that the names of all network elements in this application are only examples. In future communications, such as in 6G, they can also be called other names, or in future communications, such as in 6G, the network elements involved in this application can also be replaced by other entities or devices with the same functions, etc., and this application does not make any limitations in this regard. A unified explanation is made here and will not be repeated later. Optionally, various network elements in the embodiments of this application can be communication devices, or chips or chip systems that can be used in the communication devices, etc., and this application does not make any limitations in this regard.

[0069] It can be understood that Figure 1 The core network in the shown network architecture may further include other devices, network elements, network entities or network subsystems, such as a policy control function (PCF) network element, and this application does not make any limitations in this regard. It should be noted that this application does not make any limitations on the distribution methods of the various network elements in the core network. The specific distribution methods can refer to relevant technical documents, and this application will not elaborate here.

[0070] It should be understood that Figure 1 This is only a schematic diagram. This application does not limit the specific architecture of the applicable system. The communication system 100 may further include other network devices, for example, wireless relay devices and wireless backhaul devices, Figure 1 which are not shown. This application does not limit the number and specific forms of the core network devices, access network devices and terminal devices included in the communication system 100.

[0071] Optionally, the above communication system 100 may further include other network entities such as a network controller and a mobility management entity, and the embodiments of this application are not limited thereto.

[0072] Currently, the types of terminal devices and the services provided by terminal devices are increasing. For different types of services, it is difficult to meet the diverse service requirements of terminal devices if the same network is used to provide services for them. For example, for cloud game applications in terminal devices, the server needs to send real-time audio and video streams to the client; the client needs to send control instruction streams to the server, and the server applies the received control instructions from the client to the game. Therefore, the services of cloud game applications have high requirements for network latency and bandwidth. For weather applications in terminal devices, the latency requirements are usually much lower than those of cloud game applications. Also, for virtual reality (VR) terminal devices, if the latency is large, it may cause motion sickness to users, and the latency requirements for this type of terminal device are usually within 20 ms.

[0073] Based on this, currently, multiple virtual end-to-end networks can usually be separated on a unified core network infrastructure through network slicing technology, where each virtual end-to-end network can be referred to as a network slice. Each network slice can meet specific service requirements, such as latency, jitter, packet loss rate, bandwidth, etc. within a specific range. Through network slicing, the communication system can provide different service bearing capabilities for different types of services of terminal devices, such as services of cloud game applications and weather application services, etc., so as to meet the diverse needs of different services of terminal devices. In this way, the flexibility of the network architecture and service adaptability can be improved.

[0074] Next, in combination with Figure 2 the applicable scenarios of network slicing will be described.

[0075] Figure 2 It is a schematic diagram of the application scenario of the network slice provided by the embodiment of the present application. As Figure 2 shown, the scenario 200 includes a terminal device 210, an access network device 220, and a core network device 230. The terminal device 210 can communicate with the core network device 230 through the access network device 220.

[0076] Multiple applications can run in the terminal device 210, such as Figure 2 the application A, application B, application C, and application D shown. The core network device 230 can provide multiple network slices, such as Figure 2 the network slice 1, network slice 2, network slice 3, and network slice 4 shown. The applications in the terminal device 210 can access different network slices, so that the network slices can provide services for different application services.

[0077] Exemplarily, during the running of an application in the terminal device 210, first, a protocol data unit (PDU) session of the network slice corresponding to the application will be established through the access network device 220, and then the PDU session will be used to transmit service data with the core network device 230.

[0078] It should be noted that one application can correspond to one or more network slices, and one network slice can correspond to one or more applications. Each network slice corresponds to one PDU session.

[0079] As Figure 2As shown, application A and application B can be connected to network slice 1 through PDU session 1, so that network slice 1 can serve the services of application A and application B; application C can be connected to network slice 2 through PDU session 2, so that network slice 2 can serve the services of application C; application D can be connected to network slice 3 through PDU session 3 and can also be connected to network slice 4 through PDU session 4, so that network slice 3 and network slice 4 can serve the services of application D.

[0080] However, during the use of network slicing technology, the terminal device may not be able to obtain the application information of the running application, or may not be able to obtain the TD parameters corresponding to the application, and thus may not be able to match the network slice for the running application in the terminal device based on the application information, TD parameters, and URSP of the running application, resulting in a poor user experience.

[0081] To solve the above technical problems, the present application provides a data transmission method and apparatus. The terminal device can obtain the application information of the first application running in the terminal device through a second application in the terminal device. Based on this application information, the Modem in the terminal device determines a routing selection descriptor that matches the first application according to the URSP stored in the terminal device. The routing selection descriptor is information for indicating a network slice, that is, network slice information. In this way, the PDU session corresponding to the network slice information can be activated through signaling interaction between the terminal device and the core network device, so that the terminal device can transmit the data stream generated by the operation of the first application through this dedicated PDU session. For different applications, the terminal device can respectively transmit the data stream of each application through the PDU session corresponding to each application, which can meet the differentiated requirements of different services, help improve the utilization rate of network resources, and improve the user experience.

[0082] For ease of understanding, first, in combination with Figure 3 the software architecture of the terminal device involved in the embodiments of the present application will be described.

[0083] Figure 3 This is the software structure block diagram of the terminal device 300 according to the embodiments of the present application.

[0084] The layered architecture divides software into several layers, each with clear roles and divisions of labor. The layers communicate with each other through software interfaces. Taking the Android system running on the AP as an example, in some embodiments, the Android system is divided into five layers, from top to bottom: the application layer, the application framework layer (Framework), the Android runtime, the system libraries, the hardware abstraction layer (HAL), the system kernel layer (Kernel), and the Modem.

[0085] The application layer may include a series of application packages. The application packages may include a desktop launcher (Launcher), the first application, the second application, and other APPs. The application layer may also include systemUI (system UI), which is used to display the interface of the terminal, such as displaying the signal icon corresponding to the SIM card, displaying the call interface, etc.

[0086] Among them, the desktop launcher can be used to manage the application programs displayed on the desktop of the terminal device 300, such as the first application program, etc.

[0087] The first application program can be, for example, applications such as a camera, a gallery, a calendar, a call, etc., or other third-party application programs such as games and shopping.

[0088] The second application program can be an application program developed by an operator, a terminal manufacturer, or a network device manufacturer. After obtaining the system permissions, the second application program can monitor the startup process of the application program, and can obtain the application information of the application program started by the terminal device 300, such as the name of the application program, etc., from the activity manager and the package manager of the application framework layer. When the application program running on the terminal device 300 is updated, the second application program can also update the name of the monitored application program accordingly. In the case where the signature of the second application program is updated, the second application program can be reinstalled to facilitate the second application program to obtain system permissions.

[0089] The second application program can also obtain the correspondence between the application information and the TD parameters, so that the application information of the application program running on the terminal device 300 obtained can be converted into the corresponding TD parameters. In addition, the second application program can call the first interface to send the application information or TD parameters to the information management module of the application framework layer; it can also call the second interface to bind the routing relationship of the first application program. Among them, the first interface and the second interface can be application programming interfaces (Application Programming Interface, API) provided by the information management module.

[0090] The application framework layer provides APIs and programming frameworks for the applications in the application layer. The application framework layer includes some predefined functions. For example, the application framework layer may include a window manager, a content provider, a view system, a phone manager, an information management module, a package manager, an activity manager, etc.

[0091] Among them, the information management module can grant system permissions to a second application, enabling the second application to obtain application information of a first application running on the terminal device 300 based on the system permissions; it can also provide a first interface and a second interface.

[0092] The first interface can partially reuse Android interfaces. It can be used to transmit application information or TD parameters. When calling the first interface to transmit application information or TD parameters, one or more of the following types of information can be input to implement the functions corresponding to the first interface: a description related to a network request (request); a network callback (networkcallback) for network requests; network capability parameters (network capabilities), for example, an extended netcat (NC) value; an application identifier (appUid), which is an identifier automatically generated by the application installed on the terminal device 300; the package name (pkgName) of the application; the signature (pkgSign) of the application; or a TD parameter (td).

[0093] The second interface can be a newly defined interface. It can be used to bind the routing relationship of the first application, that is, to switch the first application from a public network to the channel of the network slice corresponding to the first application. The routing relationship of the first application can also be understood as the relationship between the first application and the PDU session dedicated to the first application. That is, by binding the routing relationship of the first application, the data stream of the first application can be routed to the PDU session dedicated to the first application for transmission.

[0094] The second interface can also be called through the following function: public int bind AppUid To Network(int appUid, Network). When calling the second interface to bind the routing relationship of the first application, one or two of the following types of information can be input: an application identifier (appUid), which is an identifier automatically generated by the application installed on the terminal device 300; a network (network), that is, a network object, which is the dedicated slice network established for the first application.

[0095] It should be understood that the first interface may also be referred to as a network slice initiation interface, and the second interface may also be referred to as a bound routing relationship interface. The present application does not make specific limitations in this regard.

[0096] A package manager for managing the installation packages of various applications installed in a terminal device, such as the installation packages of applications like music, video, navigation, etc.

[0097] An activity manager for managing and maintaining all running activity information in an operating system, such as information about tasks, memories, services, and applications, etc., and providing an interface for obtaining activity information; it is also responsible for starting applications.

[0098] A telephony manager is used to provide the call function of the terminal, such as the management of call status (including answering, hanging up, etc.). The application framework layer may also include an RIL (Radio Interface Layer), and the modem (Modem) can interact with the telephony through the RIL.

[0099] The information management module can transmit the application information or TD parameters of the first application from the second application to the Modem through the RIL; and, the Modem can transmit the information indicating whether the matching between the first application and the network slice is successful or failed to the information management module through the RIL, and the information management module then transmits the information indicating whether the matching between the first application and the network slice is successful or failed to the second application.

[0100] The Modem may include a NAS (Non-Access Stratum) layer, an RRC (radio resource control) layer, a Packet Data Convergence Protocol (PDCP) layer, a Radio Link Control (RLC) layer, a Medium Access Control Layer (MAC) layer, and a Physical (PHY) layer. The foregoing layers may be software modules. The Modem can interact with the base station through an antenna.

[0101] It should be understood that the embodiments of the present application Figure 3 The names of the software modules or layer structures included in the schematic software structure do not constitute a specific limitation on the terminal device 300.

[0102] In other embodiments of the present application, Figure 3The software modules in the schematic software structure may also have other names. For example, the system library may also be referred to as the C++ framework layer; the application framework layer (FWK) may also be referred to as the Java framework layer; the information management module may also be referred to as the OS module; the second application may also be referred to as the SDK application, the first SDK, the first SDK application, etc.

[0103] It can also be understood that the embodiments of the present application Figure 3 The schematic software structure does not constitute a specific limitation on the terminal device 300. In other embodiments of the present application, the terminal device 300 may include more or fewer software modules than shown in the figure. For example, the system server may also include a resource manager, etc.

[0104] Next, in combination with Figure 4 and Figure 5 , taking the terminal device, the access network device, and the core network device as the execution entities as an example, the data transmission method of the present application will be introduced in detail from the perspective of device interaction. The specific forms and quantities of the devices shown are only examples and should not constitute any limitation on the implementation of the method provided by the present application.

[0105] It should be understood that the terminal device may be the terminal device itself, may be a chip, a chip system, or a processor that supports the terminal device to implement the data transmission method, or may also be a logical module or software that can implement all or part of the terminal device; the access network device may be the access network device itself, may be a chip, a chip system, or a processor that supports the access network device to implement the data transmission method, or may also be a logical module or software that can implement all or part of the access network device; the core network device may be the core network device itself, may be a chip, a chip system, or a processor that supports the core network device to implement the data transmission method, or may also be a logical module or software that can implement all or part of the core network device. There is no specific limitation on this.

[0106] Figure 4 It is a schematic flowchart of a data transmission method 400 provided by an embodiment of the present application. The method 400 may be applicable to the system 100. The software structure of the terminal device therein may be as Figure 3 shown. As Figure 4 shown, the method 400 includes the following steps:

[0107] S401. When the first application is running, the terminal device uses the second application to determine the first network slice information corresponding to the first application.

[0108] It should be understood that when the first application runs, it can be when the first application is started, that is, when the first application is started, the terminal device determines the first network slice information; or, when the first application runs, it can also be at any time after the first application is started, that is, during the running process of the first application after it is started, the terminal device determines the first network slice information. This application does not make specific limitations on this.

[0109] The first network slice information can be understood as the parameters used to describe the PDU session corresponding to the activation of the first network slice information by the terminal device, or the parameters used to describe the attributes of the PDU session corresponding to the first network slice information. The network slice information corresponding to different types of application programs determined by the terminal device can be different. For example, the network slice information A corresponds to the game application program determined by the terminal device, and the network slice information B corresponds to the shopping application program determined by the terminal device.

[0110] S402. The terminal device sends a PDU session establishment request to the core network device through the access network device. The PDU session establishment request carries the first network slice information. Correspondingly, the core network device receives the PDU session establishment request.

[0111] It should be understood that by making the PDU session establishment request carry the first network slice information, the core network device can activate the PDU session according to the first network slice information. This PDU session can also be understood as a dedicated PDU session for transmitting the data stream generated by the running of the first application.

[0112] S403. The core network device sends a PDU session establishment response to the terminal device through the access network device. The PDU session establishment response is used to indicate that the PDU session establishment is successful.

[0113] Among them, S402 and S403 can be understood as the process of activating the PDU session using the first network slice information.

[0114] In some possible implementation manners, S402 and S403 are optional contents. That is, this PDU session can also be a PDU session that has been activated before the terminal device determines the first network slice information. Or, other methods can also be used to activate this PDU session. This application does not make specific limitations on this.

[0115] S404. The terminal device uses the PDU session to send the data stream generated by the running of the first application to the core network device through the access network device. Correspondingly, the core network device receives the data stream.

[0116] It should be understood that in S402 to S404, the terminal device can interact with the core network device by using a Modem. For example, the terminal device uses the Modem to send a PDU session establishment request or data stream to the terminal device through the access network device; or, the terminal device uses the Modem to receive a PDU session establishment response.

[0117] It should be noted that in S402 to S404, the access network device can play a role of transparent transmission or forwarding in the interaction process between the terminal device and the core network device. For the sake of simplicity, the process of the access network device receiving and forwarding information from the terminal device or the core network device is not described in the embodiments of the present application.

[0118] Optionally, before S401, after establishing a connection with the access network device, the terminal device can send a registration request to the access network device to request to obtain the URSP. The registration request can be transmitted to the core network device via the access network device, and the core network device sends the URSP to the terminal device through the access network device.

[0119] In the data transmission method of the present application, the terminal device can use the second application to determine the first network slice information corresponding to the running first application, so that the terminal device can transmit the data stream generated by the running of the first application through the PDU session corresponding to the first network slice information. In this way, for different applications running on the terminal device, the PDU sessions corresponding to the respective applications can be used to transmit the data streams generated by the running of the respective applications, which can meet the differentiated requirements of different applications, help improve the utilization rate of network resources, and thus improve the user experience.

[0120] As an optional embodiment, for S401, the terminal device can determine the first network slice information by using the second application through Figure 5 the method 500 shown.

[0121] Figure 5 FIG. 500 is a schematic flowchart of a method for a terminal device to determine first network slice information provided by an embodiment of the present application. The software structure of the terminal device can be as Figure 3 shown. That is, the terminal device can include a first application, a second application, an information management module, and a Modem.

[0122] The method 500 includes the following steps:

[0123] S501. When the first application is running, the second application obtains the application information of the running first application.

[0124] The following S502 to S504 can be understood as the implementation manners in which the terminal device queries the first network slice information corresponding to the application information from the User Equipment Routing Selection Policy (URSP) based on the application information.

[0125] S502. The second application program transmits the application information to the information management module.

[0126] S503. The information management module transmits the application information to the Modem.

[0127] Optionally, in the embodiments of the present application, the application information may include, but is not limited to, one or several of the following: application program ID, package name, or data network name (DNN).

[0128] S504. The Modem queries the first network slice information corresponding to the application information from the URSP based on the application information. The URSP may include the correspondence between the application information and the first network slice information.

[0129] Optionally, the terminal device may also bind the routing relationship of the first application program through S505 to S507.

[0130] S505. The Modem transmits the first information to the information management module. The first information is used to indicate that the first application program matches the first network slice information successfully, and the first information includes the information used to indicate the first application program.

[0131] The information used to indicate the first application program may be, for example, the name of the first application program, application identifier (appUid), or package name, etc. The first information may also include a first identifier, and the first identifier indicates that the application program matches the network slice information successfully. The first identifier may be, for example, 0, 1, true, etc.

[0132] S506. The OS module information management module transmits the first information to the second application program.

[0133] S507. The second application program binds the routing relationship of the first application program.

[0134] By making the first information carry the information used to indicate the first application program, the second application program can determine that the first application program matches the network slice successfully, so that the second application program binds the routing relationship of the first application program.

[0135] In some possible embodiments, after S501, method 500 may further include: The second application may convert the application information into TD parameters based on a preset correspondence relationship, where the preset correspondence relationship includes the correspondence relationship between the application information and the TD parameters. Moreover, the application information in S502 to S507 may be replaced with TD parameters. The URSP may include the correspondence relationship between the TD parameters and the first network slice information.

[0136] For example, the URSP may include the TD parameters and the first network slice information, and there is a correspondence relationship between the TD parameters and the first network slice information.

[0137] Among them, the TD parameters are used to describe the attributes of the application program. The TD parameters may include, but are not limited to, one or several of the following: application identifier (App ID), target internet protocol (IP) address, target port number (Port), fully qualified domain name (FQDN) of the access target, DNN, etc.

[0138] The network slice information may also be referred to as a route selection descriptor, which is used to describe the parameters required for the terminal device to activate a PDU session corresponding to the network slice. It may include, but is not limited to, one or several of the following: DNN, network slice selection assistance information (NSSAI), protocol type of data transmission, and other parameters. Among them, the protocol type may be transmission control protocol (TCP), user datagram protocol (UDP), etc.

[0139] It should be noted that the inclusion of the correspondence relationship between the application information and the first network slice information in the URSP does not mean that the URSP must include the application information and the first network slice information, but rather that the URSP includes information for indicating the application information and information for indicating the first network slice information, and there is a correspondence relationship between the information for indicating the application information and the information for indicating the first network slice information.

[0140] Moreover, the correspondence between the TD parameter and the first network slice information included in the URSP does not mean that the URSP must include the TD parameter and the first network slice information. Instead, the URSP includes information for indicating the TD parameter and information for indicating the first network slice information, and there is a correspondence between the information for indicating the TD parameter and the information for indicating the first network slice information.

[0141] For example, as shown in Table 1 below, the URSP may include a rule priority field, an application descriptor field, an IP descriptor field, a domain descriptor field, a non-IP descriptor field, a data network name field, a connection capability field, etc., without limitation.

[0142] Table 1

[0143]

[0144]

[0145] Exemplarily, the terminal device may match the application information with the URSP rules described in Table 1 above, and then determine the first network slice information corresponding to the application information or the TD parameter.

[0146] The matching of the application information with the URSP means that: the URSP includes the application information or information for indicating the application information.

[0147] As an example, the URSP includes a TD parameter, and the TD parameter corresponds to the application information; or, the information for indicating the application information is "domain descriptor", and the URSP rule also includes "domain descriptor", so the application information matches the URSP; the application information includes the value "1", and the URSP rule includes "application descriptor", but the value "1" included in the application information is related to the "application descriptor", for example, there is a mapping relationship between the value "1" and the "application descriptor", so the application information matches the URSP.

[0148] Optionally, the information for indicating the application information or the application information in the URSP corresponds one-to-one with the first network slice information. When the application information matches the URSP, the terminal device may determine the first network slice information based on the correspondence between the information for indicating the application information or the application information in the URSP and the first network slice information, and communicate according to the PDU session corresponding to the first network slice information.

[0149] Exemplarily, the "application descriptor" in URSP corresponds to network slice information 1; the "IP descriptor" in URSP corresponds to network slice information 2; the "domain descriptor" in URSP corresponds to network slice information 3; the "non-IP descriptor" in URSP corresponds to network slice information 4; the "data network name" in URSP corresponds to network slice information 5; the "connection capability" in the URSP rule corresponds to network slice information 6.

[0150] For example, the information used to indicate application information is the "domain descriptor", and the "domain descriptor" is also included in URSP. Therefore, the application information matches URSP. In this way, based on the correspondence between the "domain descriptor" and network slice information 3, the terminal device determines that the first network slice information is network slice information 3, and transmits data streams according to the PDU session corresponding to network slice information 3.

[0151] As an optional embodiment, S502 can be implemented in the following manner: The second application calls the first interface to transmit application information or TD parameters to the information management module.

[0152] Among them, the first interface can refer to the description above and will not be elaborated here.

[0153] In the embodiments of the present application, the first interface can be used to transmit application information or TD parameters. Through the first interface, the second application can transmit application information or TD parameters to the information management module, so that the Modem can match network slice information for the first application based on the application information or TD parameters from the information management module.

[0154] As an optional embodiment, S503 can be implemented in the following manner: The information management module uses the network request function to transmit application information or TD parameters to the Modem.

[0155] Among them, the network request function is an existing function provided by the Android system and can be used to establish network sessions, network connections, etc.

[0156] In this way, it is possible to use the existing functions of the Android system to transmit application information or TD parameters to the Modem without establishing new functions, resulting in higher efficiency and success rate for transmitting application information or TD parameters to the Modem.

[0157] As an optional embodiment, S507 can be implemented in the following manner: The second application binds the first application and the first network slice information through the second interface.

[0158] Among them, the second interface can refer to the description in the above text. In this way, the routing relationship of the first application can be bound through the second application, so that the data stream generated by the operation of the first application can be routed to the PDU session through this routing relationship. Then, the terminal device transmits the data stream of the first application through this PDU session.

[0159] As an alternative embodiment, S501 can be implemented in the following manner: The terminal device further includes a package manager and an activity manager; the activity manager determines the package name of the first application and obtains the application information of the first application from the package manager; the second application obtains the application information from the activity manager, that is, the second application can register a listener with the activity manager; or, the second application registers a listener with the package manager, and the package manager can transmit the application information of the first application to the second application; or, the second application can obtain the application information of the first application from the first application.

[0160] It should be understood that the package manager can be used to manage the installation package of the first application and manage the information describing the installation package of the first application, such as the name of the first application, the application identifier, etc. The activity manager is used to manage activities such as the startup of the first application. Exemplarily, when the first application is started, the activity manager can obtain the package name of the first application. It should also be understood that the terminal device can start the first application in various ways.

[0161] In one example, based on a user's input operation, such as an operation of clicking on the icon of the first application on the desktop, the first application is started. At this time, the activity manager can obtain the package name of the first application in the following manner: The desktop launcher indicates the package name of the first application to the activity manager.

[0162] In another example, when an application capable of triggering the startup of the first application starts the first application, for example, the first application is a payment application, and the application capable of triggering the startup of the first application is a music application. When the user uses the music application and inputs a payment operation to the terminal device, the music application starts the payment application. At this time, the package name of the first application can be obtained in the following manner: The application capable of triggering the startup of the first application indicates the package name of the first application to the activity manager.

[0163] As an alternative embodiment, before S501, method 500 further includes: The second application obtains system permissions from the information management module, and the system permissions are the permissions for the second application to obtain application information.

[0164] System permissions can also be understood as the permissions for a second application to register with the activity management module to monitor the startup process of an application, and the permissions for the second application to obtain the application information of the started application. In this way, the second application can successfully obtain the application information of the first started application, facilitating the terminal device to match the network slice information of the first application using the application information.

[0165] In a possible implementation manner, the second application can obtain system permissions from the information management module through the following method: The second application sends a first request to the information management module. The first request is used to obtain system permissions and carries the signature of the second application. The information management module determines whether the second application belongs to the whitelist based on the signature. If so, the second application obtains system permissions.

[0166] Among them, the signature can be used to determine information such as the source and developer of the second application. The whitelist can be an application that the information management module can grant system permissions to (or an application trusted by the information management module), or the developer and / or source, etc. of an application that can be granted system permissions (or an application trusted by the information management module). Therefore, through the signature, the information management module can determine whether to provide system permissions to the second application.

[0167] As an optional embodiment, the URSP is pre-set, obtained from a core network device, or generated through an attention (AT) command.

[0168] 1. The URSP can be pre-set in the terminal device. Exemplarily, the URSP can be a rule or file confirmed by an operator, a terminal manufacturer, or a network device manufacturer. For example, in method 500, if the second application transmits application information to the Modem through the information management module, the URSP can be a rule or file confirmed by an operator, a terminal manufacturer, or a network device manufacturer that includes application information and network slice information; if the second application transmits TD parameters to the Modem through the information management module, the URSP can be a rule or file confirmed by an operator, a terminal manufacturer, or a network device manufacturer that includes TD parameters and network slice information. In this way, when the terminal device matches network slice information, the second application can transmit information such as application information or TD parameters to the Modem through the information management module, making the flexibility of the terminal device in matching network slice information relatively high.

[0169] 2. The URSP can be obtained from the core network device. Exemplarily, after establishing a connection with the access network device, the terminal device may send a registration request to the access network device to request the acquisition of the URSP. The registration request may be transmitted to the policy control network element via the access network device and the mobility management network element in sequence, and the policy control network element may send the URSP to the terminal device via the mobility management network element and the access network device in sequence.

[0170] 3. The URSP is generated by AT commands. That the URSP is generated by AT commands can also be understood as that the URSP is a rule or file modified by AT commands. The URSP file modified by AT commands can be, for example, the preconfigured_usrp_policy.xml file. For example, the correspondence between the matched DNN and the NSSAI slice parameters, or the correspondence between the TD parameters and the NSSAI slice parameters, etc. can be modified by AT commands. In this way, the URSP can be modified according to user requirements, enabling the network slice information matched by the terminal device through the URSP to better meet the user's needs and helping to improve the user experience.

[0171] As an optional embodiment, method 500 further includes: if the Modem fails to match the first application successfully, the Modem transmits second information to the information management module, where the second information indicates that the first application fails to match the network slice information, and the second information includes information for indicating the first application; the information management module transmits the second information to the second application.

[0172] Optionally, the second information further includes a second identifier, and the second identifier indicates that the application fails to match the network slice information. The second identifier can be, for example, 0, 1, false, etc.

[0173] It should be understood that the situation where the Modem fails to match the first application successfully can be, for example: application information and information for indicating the application information are not queried in the URSP, or network slice information corresponding to the application information is not queried; or, TD parameters and information for the TD parameters are not queried in the URSP, or network slice information corresponding to the TD parameters is not queried.

[0174] It should be noted that in the embodiments of the present application, the information management module can also be replaced by an OS module or an OS entity; the second application can also be replaced by an SDK developed by the operator, and the present application does not make specific limitations thereon.

[0175] It should be understood that the magnitudes of the serial numbers of the above methods do not mean the order of execution, and the execution order of each process should be determined by its function and internal logic.

[0176] It should also be noted that after the terminal device determines the first network slice information (S504) using the Modem, on the one hand, the terminal device can execute S505 to S507, and on the other hand, it can execute S402 and S403. That is, S505 to S507 and S402 and S403 can be executed in parallel, or can be executed before or after S402 and S403. This application does not make specific limitations on this.

[0177] It should be understood that in some possible implementation manners, the PDU session in the embodiments of this application can also be replaced by other sessions, such as a packet data network (PDN) session, etc. This application does not make specific limitations on this.

[0178] As described above in conjunction with Figure 4 and Figure 5 , the data transmission method of the embodiments of this application is described in detail. Next, in conjunction with Figures 6 to 8 , the data transmission device of the embodiments of this application is described in detail. The data transmission device includes modules or units corresponding to each part in the above embodiments for execution. The module or unit can be software, hardware, or a combination of software and hardware. Only a brief example of the data transmission device is given below. For the implementation details of the solution, reference can be made to the description of the foregoing method embodiments, and details will not be repeated below.

[0179] Figure 6 FIG. is a schematic block diagram of a data transmission device 600 provided by an embodiment of this application. As Figure 6 shown, the device 600 includes: a processing module 601 and a transceiver module 602.

[0180] The processing module 601 is configured to, when a first application is running, use a second application to determine first network slice information corresponding to the first application; the transceiver module 602 is configured to transmit a data stream generated during the running of the first application by using a protocol data unit (PDU) session activated by the first network slice information.

[0181] Optionally, the processing module 601 is specifically configured to: use the second application to obtain application information of the first application; based on the application information, query the first network slice information corresponding to the application information from the user equipment routing selection policy (URSP).

[0182] Optionally, the processing module 601 is specifically configured to: use the second application to transmit the application information to the operating system information management module; use the information management module to transmit the application information to the modem; use the modem to query the first network slice information corresponding to the application information from the URSP based on the application information, where the URSP includes the correspondence between the application information and the first network slice information.

[0183] Optionally, the processing module 601 is specifically configured to: use the second application to transmit application information to the information management module, including: using the second application to call the first interface to transmit the application information to the information management module.

[0184] Optionally, the information management module uses a network request function to transmit application information to the Modem.

[0185] Optionally, the processing module 601 is specifically configured to: use the second application to convert the application information into traffic descriptor TD parameters based on a preset correspondence relationship, where the preset correspondence relationship includes the correspondence relationship between the application information and the TD parameters; use the second application to transmit the TD parameters to the information management module; use the information management module to transmit the TD parameters to the modem processor Modem; use the Modem to query, based on the TD parameters, the first network slice information corresponding to the application information from the URSP, where the URSP includes the correspondence relationship between the TD parameters and the first network slice information.

[0186] Optionally, the processing module 601 is further configured to: use the Modem to transmit the first information to the information management module, where the first information is used to indicate that the first application is successfully matched with the first network slice information, and the first information includes information for indicating the first application; use the information management module to transmit the first information to the second application; use the second application to call the second interface to bind the routing relationship of the first application.

[0187] Optionally, the transceiver module 602 is specifically configured to: use the Modem to send a PDU session establishment request for activating a PDU session to the core network device, where the PDU session establishment request carries the first network slice information; use to receive a PDU session establishment response from the core network device, where the PDU session establishment response is used to indicate that the PDU session is successfully activated; use the Modem to transmit data streams through the PDU session.

[0188] Optionally, the URSP is preset, obtained from the core network device, or generated through an attention AT command.

[0189] Optionally, the processing module 601 is further configured to: use the second application to obtain system permissions from the information management module, where the system permissions are the permissions for the second application to obtain application information.

[0190] Optionally, the processing module 601 is specifically configured to: use the second application to send a first request to the information management module, where the first request is used to obtain system permissions, and the first request carries the signature of the second application; use the information management module to determine whether the second application belongs to the whitelist through the signature; if so, the second application obtains the system permissions.

[0191] Optionally, the second application is the first SDK application, and / or the application information includes one or more of the following: application ID, package name, or data network name DNN.

[0192] It should be understood that the device 600 here is embodied in the form of functional modules. The term "module" here may refer to an application specific integrated circuit (ASIC), an electronic circuit, a processor for executing one or more software or firmware programs (such as a shared processor, a proprietary processor, or a group of processors, etc.), and a memory, a combined logic circuit, and / or other suitable components that support the described functions. In an alternative example, those skilled in the art can understand that the device 600 can specifically be the terminal device in the above embodiment, and the device 600 can be used to execute each process and / or step corresponding to the terminal device in the above method embodiment. To avoid repetition, it will not be elaborated here.

[0193] The above device 600 has the function of implementing the corresponding steps executed by the terminal device in the above method; the above function can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above functions.

[0194] In the embodiments of the present application, Figure 6 the device 600 in may also be a chip, such as: SOC, Modem, etc. Correspondingly, the processing module 601 may be the transceiver circuit of the chip, which is not limited here.

[0195] Figure 7 The schematic block diagram of the data transmission device 700 provided by the embodiments of the present application is shown. The device 700 includes a processor 701, a transceiver 702, and a memory 703. Among them, the processor 701, the transceiver 702, and the memory 703 communicate with each other through an internal connection path. The memory 703 is used to store instructions, and the processor 701 is used to execute the instructions stored in the memory 703 to control the transceiver 702 to send signals and / or receive signals.

[0196] It should be understood that the device 700 may specifically be the terminal device in the above embodiments, and may be used to execute the respective steps and / or processes corresponding to the terminal device in the above method embodiments. Optionally, the memory 703 may include a read-only memory and a random access memory, and provide instructions and data to the processor. A part of the memory may further include a non-volatile random access memory. For example, the memory may further store information about the device type. The processor 701 may be used to execute the instructions stored in the memory, and when the processor 701 executes the instructions stored in the memory, the processor 701 is used to execute the respective steps and / or processes of the above method embodiments. The transceiver 702 may include a transmitter and a receiver. The transmitter may be used to implement the respective steps and / or processes corresponding to the above transceiver for performing the sending action, and the receiver may be used to implement the respective steps and / or processes corresponding to the above transceiver for performing the receiving action.

[0197] It should be understood that in the embodiments of the present application, the processor may be a central processing unit (CPU), and the processor may also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0198] In the implementation process, the respective steps of the above method may be completed by the integrated logic circuit in the hardware of the processor or the instructions in the form of software. The steps of the method disclosed in combination with the embodiments of the present application may be directly embodied as being executed and completed by the hardware processor, or executed and completed by the combination of the hardware and software modules in the processor. The software module may be located in a mature storage medium in the art such as a random access memory, flash memory, read-only memory, programmable read-only memory or electrically erasable programmable memory, register, etc. The storage medium is located in the memory, and the processor executes the instructions in the memory and combines its hardware to complete the steps of the above method. To avoid repetition, it will not be described in detail here.

[0199] A hardware structure of the data transmission device is as Figure 8As shown, the data transmission device may be a terminal device, which may include: a processor, an external memory interface, an internal memory, a universal serial bus (USB) interface, a charging management module, a power management module, a battery, antenna 1, antenna 2, a mobile communication module, a wireless communication module, a sensor module, keys, a motor, an indicator, a camera, a display screen, and a SIM card slot, etc. Among them, the audio module may include a speaker, a receiver, a microphone, a headphone interface, etc., and the sensor module may include a pressure sensor, a gyroscope sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, etc.

[0200] It can be understood that the structure illustrated in the embodiments of this application does not constitute a specific limitation on the terminal. In other embodiments, the terminal may include more or fewer components than those illustrated, or combine certain components, or split certain components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0201] Among them, the processor may include one or more processing units. For example, the processor may include an application processor (AP), a modem processor (Modem, also known as a baseband processor), a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent devices or integrated in one or more processors. The processor is the nerve center and command center of the terminal. The controller may generate operation control signals according to the instruction operation code and timing signals to complete the control of fetching and executing instructions.

[0202] The wireless communication function of the terminal may be implemented through antenna 1, antenna 2, the mobile communication module, the wireless communication module, and the Modem, etc. In some embodiments, antenna 1 of the terminal is coupled to the mobile communication module, and antenna 2 is coupled to the wireless communication module, enabling the terminal to communicate with network-side devices and other terminals through wireless communication technologies.

[0203] In addition, an operating system runs on top of the above components. For example, the iOS operating system, the Android open-source operating system, the Windows operating system, etc. Among them, the Android open-source operating system can be as Figure 3 shown.

[0204] Some embodiments of the present application provide a chip system, which is applied to a terminal. The chip system includes at least one processor and an interface. The interface is used to receive instructions and transmit them to at least one processor; the at least one processor runs the instructions to cause the terminal to execute the above paging message processing method. Among them, the chip system can be a Modem, or a system on chip (Soc) including a Modem. The above method can be implemented by a Modem, etc.

[0205] The present application also provides a computer-readable storage medium, which is used to store a computer program, and the computer program is used to implement the method shown in the above method embodiments.

[0206] The present application also provides a computer program product, which includes a computer program (which can also be called code or instruction). When the computer program runs on a computer, the computer can execute the method shown in the above method embodiments.

[0207] Those of ordinary skill in the art can realize that the modules and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are executed in hardware or software depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.

[0208] Those skilled in the art can clearly understand that for the convenience and brevity of description, the specific working processes of the systems, devices, and modules described above can refer to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0209] In several embodiments provided by the present application, it should be understood that the disclosed systems, devices, and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules is only a logical function division. In actual implementation, there can be other division methods. For example, multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed couplings or direct couplings or communication connections to each other can be through some interfaces. The indirect couplings or communication connections of devices or modules can be in electrical, mechanical, or other forms.

[0210] The module described as a separation component may or may not be physically separated. The component shown as a module may or may not be a physical module, that is, it may be located in one place or may be distributed across multiple network modules. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0211] In addition, each functional module in various embodiments of the present application may be integrated in a processing module, may exist separately as individual physical modules, or two or more modules may be integrated in one module.

[0212] If the above-mentioned function is implemented in the form of a software functional module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art or part of this technical solution can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of the present application. The aforementioned storage medium includes: various media that can store program codes such as USB flash drives, mobile hard disks, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical discs.

[0213] The above is only the specific implementation manner of the present application, but the protection scope of the embodiments of the present application is not limited thereto. Any person skilled in the art within the technical scope disclosed in the embodiments of the present application can easily think of changes or substitutions, which should all be covered within the protection scope of the embodiments of the present application. Therefore, the protection scope of the embodiments of the present application should be subject to the protection scope of the claims.

Claims

1. A data transmission method, characterized in that The method includes: When the first application is running, use the second application to determine the first network slice information corresponding to the first application; Use the protocol data unit (PDU) session activated by the first network slice information to transmit the data stream generated by the running of the first application.

2. The method according to claim 1, wherein The using the second application to determine the first network slice corresponding to the first application includes: Use the second application to obtain the application information of the first application; Based on the application information, query the first network slice information corresponding to the application information from the user equipment routing selection policy (URSP).

3. The method according to claim 2, characterized in that, The querying the first network slice information corresponding to the application information from the user equipment routing selection policy (URSP) by using the application information includes: Use the second application to transmit the application information to the operating system information management module; Use the information management module to transmit the application information to the modem (Modem); Use the Modem to query the first network slice information corresponding to the application information from the URSP based on the application information, where the URSP includes the correspondence between the application information and the first network slice information.

4. The method according to claim 3, characterized in that, The using the second application to transmit the application information to the information management module includes: Use the second application to call the first interface to transmit the application information to the information management module.

5. The method according to claim 3 or 4, characterized in that, The information management module uses a network request function to transmit the application information to the Modem.

6. The method according to claim 2, wherein The querying the first network slice information corresponding to the application information from the user equipment routing selection policy (URSP) by using the application information includes: Use the second application to convert the application information into traffic descriptor (TD) parameters based on a preset correspondence, where the preset correspondence includes the correspondence between the application information and the TD parameters; Use the second application to transmit the TD parameters to the information management module; Use the information management module to transmit the TD parameters to the modem (Modem); Use the Modem to query the first network slice information corresponding to the application information from the URSP based on the TD parameters, where the URSP includes the correspondence between the TD parameters and the first network slice information.

7. The method according to any one of claims 3 to 6, characterized in that, The method further includes: Use the Modem to transmit first information to the information management module, where the first information is used to indicate that the first application matches the first network slice information successfully, and the first information includes information for indicating the first application; Use the information management module to transmit the first information to the second application; Use the second application to call the second interface to bind the routing relationship of the first application, where the routing relationship is the relationship between the first application and the PDU session.

8. The method according to any one of claims 3 to 7, characterized in that, Transmitting the data stream generated by running the first application program by using a protocol data unit (PDU) session activated by the first network slice information includes: Sending, by using the Modem, a PDU session establishment request for activating the PDU session to a core network device, where the PDU session establishment request carries the first network slice information; Receiving a PDU session establishment response from the core network device, where the PDU session establishment response is used to indicate that the activation of the PDU session is successful; Transmitting the data stream by using the Modem through the PDU session.

9. The method according to any one of claims 2 to 8, characterized in that, The URSP is pre - set, obtained from a core network device, or generated by an attention (AT) command.

10. The method according to any one of claims 2 to 9, characterized in that Before obtaining the application information of the first application program by using the second application program, the method further includes: Obtaining, by using the second application program, system permissions from an information management module, where the system permissions are the permissions for the second application program to obtain the application information.

11. The method according to claim 10, characterized in that, Obtaining, by using the second application program, system permissions from the information management module includes: Sending, by using the second application program, a first request to the information management module, where the first request is used to obtain the system permissions and the first request carries the signature of the second application program; Judging, by using the information management module, whether the second application program belongs to a whitelist through the signature; If so, the second application program obtains the system permissions.

12. The method according to any one of claims 1 to 11, characterized in that, The second application program is a first SDK application, and / or the application information includes one or more of the following: application program number identifier (ID), package name, or data network name (DNN).

13. A data transmission device, characterized in that, Includes a module for executing the method according to any one of claims 1 to 12.

14. A data transmission device, characterized in that, Includes: A processor, the processor is coupled with a memory, the memory is used to store a computer program, when the processor calls the computer program, the device executes the method according to any one of claims 1 to 12.

15. A computer-readable storage medium, characterized in that, For storing a computer program, the computer program includes instructions for implementing the method according to any one of claims 1 to 12.

16. A chip system, characterized in that, Includes at least one processor and a communication interface, the communication interface and the at least one processor are interconnected by a line, and the at least one processor is used to run a computer program or instructions to execute the method according to any one of claims 1 to 12.

17. A computer program product, characterized in that, The computer program product includes computer program code, when the computer program code runs on a computer, the computer implements the method according to any one of claims 1 to 12.

Citation Information

Patent Citations

  • Network slice mapping method and related device

    CN113766534A

  • Network slice service determination method, apparatus and device, and computer storage medium

    CN114205239A

  • Data sending method and device, equipment and storage medium

    CN114521004A

  • Method for accessing network slice, electronic device and storage medium

    US20230216740A1

  • PDU session establishment method, terminal device, and chip system

    WO2022033345A1

Cited By

  • Data transmission method and apparatus

    WO2025138876A1