Data transmission method and apparatus

By using the second application program in the terminal device to obtain application information and use URSP to determine network slice information, and activate PDU sessions, the problem that the terminal device cannot match network slices is solved, and the satisfaction of differentiated business needs and the improvement of user experience is achieved.

WO2025138876A1PCT designated stage expired Publication Date: 2025-07-03HONOR DEVICE CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/111848
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-12-29
Filing Date
2024-08-13
Publication Date
2025-07-03

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 has a poor user experience.

Method used

The application information of the first application is obtained through the second application program in the terminal device, and the network slice information corresponding to the first application program is determined using the user equipment routing policy (URSP), and the protocol data unit (PDU) session is activated to transmit the data stream generated by the application program.

Benefits of technology

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

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024111848_03072025_PF_FP_ABST
    Figure CN2024111848_03072025_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of communications. Provided are a data transmission method and apparatus. On the basis of application information of an application program run by a terminal device, network slice information corresponding to the application program can be matched, thereby facilitating meeting differentiated service requirements, and improving the network resource utilization rate. The method comprises: when a first application program runs, using a second application program to determine first network slice information corresponding to the first application program; and using a protocol data unit (PDU) session activated by means of the first network slice information to transmit a data stream generated when the first application program runs.
Need to check novelty before this filing date? Find Prior Art

Description

Data transmission method and device

[0001] This application claims priority to the Chinese patent application filed with the China Patent Office on December 29, 2023, with application number 202311867812.1 and application name “Data Transmission Method and Device”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of communication technology, and in particular to a data transmission method and device. Background Art

[0003] The types of terminal devices and the services they provide are increasing. Using the same network to serve these diverse services is difficult to meet the diverse needs of terminal devices. Therefore, providing differentiated network services for different services through network slicing is an important way to improve network quality.

[0004] Network slicing is an on-demand networking approach that allows operators to create multiple virtual end-to-end networks on a unified infrastructure. Each network slice is logically isolated, from the radio access network to the bearer network to the core network, and is adaptable to various types of business applications. However, currently, terminal devices may not be able to determine the network slice that matches the application running on the terminal device, resulting in the network slice being unable to provide services for the application's business, resulting in a poor user experience.

[0005] Summary of the Invention

[0006] The present application provides a data transmission method and device that can match the network slice information corresponding to the application according to the application information of the application running on the terminal device, which helps to meet differentiated business needs and thus improve the user experience.

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

[0008] In the data transmission method of the present application, the terminal device can use the second application to match the first network slice information corresponding to the first application. For different applications running in the terminal device, the PDU session corresponding to each application can be used to transmit the data stream generated by the operation of each application, which can meet the differentiated needs of different applications, help improve the utilization of network resources, and thus improve the user experience.

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

[0010] In combination with the first aspect, in certain implementations of the first aspect, the first network slice corresponding to the first application is determined using the second application, including: using the second application to obtain application information of the first application; based on the application information, querying the first network slice information corresponding to the application information from the user equipment routing selection policy URSP.

[0011] 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 URSP can be used to determine the first network slice information, which helps to improve the terminal device to successfully match the first network slice information corresponding to the first application.

[0012] In conjunction with the first aspect, in certain implementations of the first aspect, using application information to query a user equipment routing policy (URSP) for first network slice information corresponding to the application information includes: using a second application program to transmit the application information to an operating system information management module; using the information management module to transmit the application information to a modem processor (Modem); and using the Modem to query the URSP for first network slice information corresponding to the application information based on the application information, the URSP including a correspondence between the application information and the first network slice information. In this way, the Modem can determine the first network slice information using the application information and the URSP, without requiring the terminal device to convert the application information.

[0013] In conjunction with the first aspect, in certain implementations of the first aspect, using the second application to transmit application information to the information management module includes: using the second application to call the first interface to transmit the application information to the information management module. The first interface can be used to transmit 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, thereby enabling the modem to match network slice information for the first application based on the application information or TD parameters from the information management module.

[0014] In conjunction with the first aspect, in certain implementations of the first aspect, the information management module transmits the application information to the modem using a network request function, thereby helping to improve the success rate of transmitting the application information to the modem.

[0015] In conjunction with the first aspect, in certain implementations of the first aspect, using application information to query a user equipment routing policy (URSP) for first network slice information corresponding to the application information includes: using a second application program to convert the application information into a traffic descriptor (TD) parameter based on a preset correspondence, where the preset correspondence includes a correspondence between the application information and the TD parameter; using the second application program to transmit the TD parameter to an information management module; using the information management module to transmit the TD parameter to a modem processor (Modem); and using the Modem to query the first network slice information corresponding to the application information from the URSP based on the TD parameter, where the URSP includes a correspondence between the TD parameter and the first network slice information. In this way, the URSP does not need to be modified, which helps the terminal device successfully match the first network slice information using the TD parameter.

[0016] In combination with the first aspect, in certain implementations of the first aspect, the method further includes: using a modem to transmit first information to an information management module, the first information being used to indicate that the first application successfully matches the first network slice information, and the first information including information indicating the first application; using the information management module to transmit the first information to the second application; using 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. In this way, the second application can determine whether the first application successfully matches the network slice information, so that the second application can 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 the routing relationship. Then, the terminal device transmits the data stream of the first application through the PDU session.

[0017] In combination with the first aspect, in certain implementations of the first aspect, 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 includes: using a modem to send a PDU session establishment request for activating the PDU session to a core network device, the PDU session establishment request carrying the first network slice information; using a PDU session establishment response received from the core network device, the PDU session establishment response being used to indicate successful activation of the PDU session; and using a 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 the PDU session to transmit the data stream generated by the operation of the first application, thereby helping to meet differentiated business needs.

[0018] In combination with the first aspect, in certain implementations of the first aspect, the URSP is preset, obtained from a core network device, or generated through an AT command.

[0019] In conjunction with the first aspect, in certain implementations of the first aspect, before using the second application to obtain application information of the first application, the method further includes: using the second application to obtain system permissions from the information management module, where the system permissions are permissions for the second application to obtain application information. System permissions can also be understood as permissions for the second application to register with the activity management module to monitor the startup process of the application, and permissions for the second application to obtain application information of the started application. In this way, the second application can successfully obtain the application information of the started first application. This facilitates the terminal device to use the application information to match the network slice information of the first application.

[0020] In conjunction with the first aspect, in certain 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, the first request being for obtaining system permissions, the first request carrying a signature of the second application; using the information management module to determine whether the second application is on a whitelist based on the signature; if so, the second application obtaining the system permissions. The signature can be used to identify information such as the source and developer of the second application.

[0021] In combination with the first aspect, in certain 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.

[0022] In a second aspect, a data transmission device is provided, configured to execute the method in any possible implementation of the first aspect. Specifically, the device includes a module configured to execute the method in any possible implementation of the first aspect.

[0023] In a third aspect, the present application provides another data transmission device, comprising a processor coupled to a memory and configured to execute instructions in the memory to implement the method of any possible implementation of the first aspect. Optionally, the device further comprises a memory. Optionally, the device further comprises a communication interface, the processor coupled to the communication interface.

[0024] In one implementation, the apparatus is a terminal device. When the apparatus is a terminal device, the communication interface may be a transceiver, or an input / output interface.

[0025] 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 communication interface may be an input / output interface.

[0026] In a fourth aspect, a processor is provided, comprising: 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 of any possible implementation of the first aspect.

[0027] In a specific implementation process, the 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 a transistor, a gate circuit, a trigger, or various logic circuits. The input signal received by the input circuit may be, for example, but not limited to, received and input by a receiver, and the signal output by the output circuit may be, for example, but not limited to, output to and transmitted by a transmitter. The input circuit and the output circuit may be the same circuit, which functions as an input circuit and an output circuit at different times. The embodiments of the present application do not limit the specific implementation of the processor and various circuits.

[0028] In a fifth aspect, a processing device is provided, comprising a processor and a memory. The processor is configured to read instructions stored in the memory and receive signals via a receiver and transmit signals via a transmitter to execute the method of any possible implementation of the first aspect.

[0029] Optionally, there are one or more processors and one or more memories.

[0030] Optionally, the memory may be integrated with the processor, or the memory may be provided separately from the processor.

[0031] In the specific implementation process, the memory can be a non-transitory memory, such as a read-only memory (ROM), which can be integrated with the processor on the same chip or set on different chips. This application does not limit the type of memory and the setting method of the memory and the processor.

[0032] It should be understood that related data interaction processes, such as sending indication information, can be processes for outputting indication information from a processor, and receiving capability information can be processes for receiving input capability information from a processor. Specifically, the output data of the processor can be output to a transmitter, and the input data received by the processor can come from a receiver. The transmitter and receiver can be collectively referred to as a transceiver.

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

[0034] In a sixth aspect, a computer program product is provided, comprising: a computer program (also referred to as code, or instructions), which, when executed, enables a computer to execute a method in any possible implementation of the first aspect.

[0035] In the seventh aspect, a computer-readable storage medium is provided, which stores a computer program (also referred to as code, or instructions) which, when run on a computer, enables the computer to execute the method in any possible implementation of the first aspect above. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] FIG1 is a schematic diagram of a communication system used in an embodiment of the present application;

[0037] FIG2 is a schematic diagram of a scenario in which the method provided in an embodiment of the present application is applicable;

[0038] FIG3 is a schematic diagram of the software architecture of a terminal device provided in an embodiment of the present application;

[0039] FIG4 is a flow chart of a data transmission method according to an embodiment of the present application;

[0040] FIG5 is a schematic diagram of a flow chart of a method for matching a terminal device to a network slice according to an embodiment of the present application;

[0041] FIG6 is a schematic block diagram of a data transmission device provided in an embodiment of the present application;

[0042] FIG7 is a schematic block diagram of another data transmission device provided in an embodiment of the present application;

[0043] FIG8 is a schematic block diagram of the hardware structure of the terminal device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0044] The technical solution in this application will be described below with reference to the accompanying drawings.

[0045] In some embodiments provided by this application, terms such as "first" and "second" are used to distinguish identical or similar items with basically the same functions and effects. For example, the first value and the second value are merely used to distinguish different values, and do not limit their order. Those skilled in the art can understand that terms such as "first" and "second" do not limit the quantity and execution order, and the terms such as "first" and "second" do not necessarily mean different.

[0046] It should be noted that in the embodiments of this application, words such as "exemplarily" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design solution described as "exemplarily" or "for example" in this application should not be construed as more preferred or more advantageous than other embodiments or design solutions. Rather, the use of words such as "exemplarily" or "for example" is intended to present relevant concepts in a specific manner.

[0047] In the embodiments of this application, "at least one" means one or more, and "multiple" means two or more. "And / or" describes the association relationship of associated objects, indicating that there can be three relationships. For example, A and / or B can represent: A exists alone, A and B exist simultaneously, 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 (item)" or its similar expression refers to any combination of these items, including any combination of single item (item) or plural items (items). For example, at least one (item) of a, b, or c can represent: a, b, c, a - b, a - c, b - c, or a - b - c, where a, b, and c can be single or multiple.

[0048] The technical solutions of the embodiments of this 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, 5th generation (5G) system or New Radio (NR), future evolved communication systems, such as 6th generation (6G) system, etc.

[0049] The terminal device in the embodiments of the present 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 station, remote station, remote terminal, mobile device, user terminal, terminal, wireless communication equipment, user agent or user device, etc.

[0050] The access network equipment and core network equipment in the embodiments of the present application may be collectively referred to as network equipment.

[0051] The core network device of the embodiment of the present application can be a core network device in a 5G system, such as an access and mobility management function (AMF) network element, a policy control function (PCF) network element, etc., or a core network device with other names, which is not limited by the embodiment of the present application.

[0052] The access network device can be any device with wireless transceiver capabilities. Access network equipment 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 (e.g., home evolved NodeB, 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 can 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 of antenna panels (including multiple antenna panels) of a base station in a 5G system, or it can also be a network node constituting a gNB or a transmission point, such as a baseband unit (BBU) or a distributed unit (DU), etc.

[0053] 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 gNB functions, while the DU implements some gNB functions. For example, the CU may be responsible for processing non-real-time protocols and services, such as 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 may 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 to multiple CUs, and a CU can be connected to multiple DUs. CUs and DUs can communicate with each other via the F1 interface. The AAU may implement some physical layer processing functions, RF processing, and active antenna-related functions. Since the information of the RRC layer will eventually be delivered to the PHY layer and become the information of the PHY layer, or converted from the information of the PHY layer, therefore, in this architecture, high-layer signaling, such as RRC layer signaling, can also be considered to be sent by DU, or by DU+AAU.

[0054] It is understood that the access network device may include one or more of a CU node, a DU node, and an AAU node. In addition, the CU may be classified as an access network device in an access network (RAN) or as an access network device in a core network (CN), and this application does not limit this.

[0055] The access network equipment provides services for the cell. The terminal device communicates with the cell through the transmission resources (for example, frequency domain resources, or spectrum resources) allocated by the access network equipment. The cell can belong to a macro base station (for example, macro eNB or macro gNB, etc.) or a base station corresponding to a small cell. The small cells here can include: metro cells, micro cells, pico cells, femto cells, etc. These small cells have the characteristics of small coverage and low transmission power, and are suitable for providing high-speed data transmission services.

[0056] The following introduces some technical terms involved in this application.

[0057] 1. Network slicing is an on-demand networking method that allows operators to create multiple virtual end-to-end networks on a unified infrastructure. Each network slice is logically isolated from the radio access network to the bearer network and then to the core network, adapting to various types of business applications. A network slice can include radio sub-slices, bearer sub-slices, and core network sub-slices. Network slicing can also be understood as a logical network formed by combining related business functions, network resources, and network configurations within the physical network.

[0058] 2. Network slice selection assistance information (NSSAI), which can be information used to identify a network slice. For example, NSSAI can include information indicating a slice / service type (SST) and / or information indicating a slice differentiator (SD).

[0059] 3. UE route selection policy (URSP): Information describing the correspondence between applications and network slices. URSP can contain one or more single network slice selection assistance information (S-NSSAI) to implement differentiated control strategies for different users and different services.

[0060] To facilitate understanding of the embodiments of the present application, the embodiments applicable to the present application are first described in detail with reference to FIG1 .

[0061] Fig. 1 shows a schematic diagram of a communication system 100 to which an embodiment of the present application is applied. The communication system 100 includes an access network and a core network.

[0062] The access network includes at least one access network device, such as access network device 110 shown in Figure 1 ; the access network also includes at least one terminal device, such as terminal device 120 shown in Figure 1 . The core network devices in the core network can connect to the access network devices wirelessly or wiredly. When a terminal device is within the coverage area of ​​the access network device, it can connect to the access network device wirelessly. For example, if terminal device 120 is within the coverage area of ​​access network device 110, terminal device 120 can connect to access network device 110 wirelessly.

[0063] 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, which may include at least one transmit antenna for sending signals and at least one receive antenna for receiving signals. In addition, the access network device 110 or the terminal device 120 also includes a transmitter chain and a receiver chain. Those skilled in the art will understand that they may include multiple components related to signal transmission and reception (such as processors, modulators, multiplexers, demodulators, demultiplexers, or antennas). Therefore, the access network device 110 and the terminal device 120 can communicate via multi-antenna technology.

[0064] 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. For example, the terminal device 120 can send information 1 to the access network device 110, and 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, and correspondingly, the core network device receives information 1 from the access network device 110. Alternatively, the core network device sends information 2 to the access network device 110, and 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, and correspondingly, the terminal device 120 receives information 2 from the access network device 110.

[0065] The core network's primary functions are to provide user connections, manage users, and carry services. As a bearer network, it provides an interface to external networks. Establishing user connections involves functions such as mobility management (MM), call management (CM), switching / routing, and voice notification (which, combined with intelligent network services, connects to intelligent network peripheral devices).

[0066] The core network of a 4G network is the evolved packet core (EPC). The EPC is the core network of a 4G mobile communications network. It encompasses traditional mobile network capabilities, such as user subscription data storage, mobility management, and data exchange, and provides users with an ultra-high-speed internet experience. The core network of a 5G network is the 5G Core (abbreviated as 5GC). 5GC uses general-purpose network function virtualization equipment to replace the dedicated communication equipment of 4G networks.

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

[0068] In some embodiments of the present application, the core network in the network architecture may include converged network elements obtained from network elements in the EPC and network elements in the 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.

[0069] Each network element in the core network can also be called a functional entity, which can be a network element implemented on dedicated hardware, a software instance running on dedicated hardware, or an instance of a virtualized function on an appropriate platform.

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

[0071] It is understood that the core network in the network architecture shown in Figure 1 may also include other devices, network elements, network entities, or network subsystems, such as a policy control function (PCF) network element, and this application does not limit this. It should be noted that this application does not limit the distribution method of each network element in the core network. The specific distribution method can be referred to in relevant technical documents, and this application does not elaborate on it here.

[0072] It should be understood that Figure 1 is merely a schematic diagram, and this application does not limit the specific architecture of the applicable system. The communication system 100 may also include other network devices, such as wireless relay devices and wireless backhaul devices, which are not shown in Figure 1. The embodiments of this application do not limit the number and specific form of the core network devices, access network devices, and terminal devices included in the communication system 100.

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

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

[0075] Based on this, network slicing technology is currently used to separate multiple virtual end-to-end networks from a unified core network infrastructure. Each virtual end-to-end network is called a network slice. Each network slice can meet specific service requirements, such as latency, jitter, packet loss rate, and bandwidth within a specific range. Through network slicing, the communication system can provide different service carrying capabilities for different types of services on terminal devices, such as cloud gaming applications and weather applications, thereby meeting the diverse service needs of different terminal devices. This improves the flexibility and service adaptability of the network architecture.

[0076] Below, the applicable scenarios of network slicing are explained with reference to Figure 2.

[0077] Figure 2 is a schematic diagram of an application scenario of network slicing provided by an embodiment of the present application. As shown in Figure 2, 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.

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

[0079] For example, when the terminal device 210 is running an application, it first establishes a protocol data unit (PDU) session of the network slice corresponding to the application by accessing the network device 220, and then uses the PDU session to transmit business data with the core network device 230.

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

[0081] As shown in Figure 2, application A and application B can connect to network slice 1 through PDU session 1, so that network slice 1 can provide services for the services of application A and application B; application C can connect to network slice 2 through PDU session 2, so that network slice 2 can provide services for the services of application C; application D can connect to network slice 3 through PDU session 3, and can also connect to network slice 4 through PDU session 4, so that network slice 3 and network slice 4 can provide services for the services of application D.

[0082] 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 cannot match the network slice for the application running in the terminal device through the application information, TD parameters and URSP of the running application, resulting in a poor user experience.

[0083] In order to solve the above technical problems, the present application provides a data transmission method and apparatus, and the terminal device can obtain the application information of the first application running in the terminal device through the second application in the terminal device. Based on the application information, the modem in the terminal device determines the routing descriptor that matches the first application according to the URSP stored in the terminal device. The routing descriptor is information used to indicate the network slice, namely the network slice information. In this way, the terminal device and the core network device can activate the PDU session corresponding to the network slice information through signaling interaction, so that the terminal device can transmit the data stream generated by the operation of the first application through the dedicated PDU session. For different applications, the terminal device can transmit the data stream of each application through the PDU session corresponding to each application, which can meet the differentiated needs of different services, help improve the utilization of network resources, and improve user experience.

[0084] To facilitate understanding, the software architecture of the terminal device involved in the embodiment of the present application is first described with reference to FIG3 .

[0085] FIG3 is a software structure block diagram of a terminal device 300 according to an embodiment of the present application.

[0086] A layered architecture divides software into several layers, each with distinct roles and responsibilities. Layers communicate with each other through software interfaces. Taking the Android system, which runs on an AP, as an example, some embodiments divide the Android system into five layers: from top to bottom, the application layer, the application framework layer (Framework), the Android runtime (Android runtime) and system libraries, the hardware abstraction layer (HAL), the system kernel layer (Kernel), and the modem.

[0087] The application layer can include a series of application packages. Application packages can include desktop launchers (Launcher), first applications, second applications, and other apps. The application layer can also include system UI (system UI), which is used to display the terminal interface, such as the signal icon corresponding to the SIM card and the call interface.

[0088] The desktop launcher may be used to manage applications displayed on the desktop of the terminal device 300 , such as the first application.

[0089] The first application may be, for example, a camera, gallery, calendar, call, or other application, or may be other third-party applications such as games and shopping.

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

[0091] The second application can also obtain the correspondence between application information and TD parameters, thereby converting the obtained application information of the application running on the terminal device 300 into the corresponding TD parameters. Furthermore, the second application 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. The first interface and the second interface can be application programming interfaces (APIs) provided by the information management module.

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

[0093] The information management module may grant system permissions to the second application so that the second application can obtain application information of the first application running on the terminal device 300 based on the system permissions; and may also provide a first interface and a second interface.

[0094] The first interface can partially reuse the Android interface. 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 information can be input, including but not limited to, to implement the function corresponding to the first interface: a description of the network request (request); a network callback (network callback), which is used for the network callback of the network request; network capability parameters (network capabilities), such as an extended netcat (NC) value; an application identifier (appUid), which is an identifier automatically generated by the application installed in the terminal device 300; the package name of the application (pkgName); the signature of the application (pkgSign); or, a TD parameter (td).

[0095] 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 the 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 flow of the first application can be routed to the PDU session dedicated to the first application for transmission.

[0096] 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, you can enter one or two of the following information, including but not limited to: application identifier (appUid), which is an identifier automatically generated by the application installed in the terminal device 300; network (network), that is, the network object, which is the dedicated slice network established for the first application.

[0097] It should be understood that the first interface can also be called the network slice initiation interface, and the second interface can also be called the binding routing relationship interface. This application does not make specific limitations on this.

[0098] The package manager is used to manage the installation packages of various applications installed in the terminal device, such as the installation packages of music, video, navigation and other applications.

[0099] The activity manager is used to manage and maintain all running activity information in the operating system, such as tasks, memories, services, and applications, and provides an interface for obtaining activity information; it is also responsible for starting applications.

[0100] The telephony manager provides terminal call functions, such as managing call status (including answering and ending calls). The application framework layer may also include the Radio Interface Layer (RIL), through which the modem processor (modem) can exchange information with the telephony.

[0101] The information management module can transmit application information or TD parameters of the first application from the second application to the modem through the RIL; and the modem can transmit information indicating the success or failure of the first application to the network slice to the information management module through the RIL, and the information management module then transmits the information indicating the success or failure of the first application to the network slice to the second application.

[0102] The modem can include the NAS (Non-Access Stratum) layer, the RRC (Radio Resource Control) layer, the Packet Data Convergence Protocol (PDCP) layer, the Radio Link Control (RLC) layer, the Medium Access Control (MAC) layer, and the Physical (PHY) layer. Each of these layers can be a software module. The modem interacts with the base station through an antenna.

[0103] It should be understood that the names of the software modules or layer structures included in the software structure illustrated in FIG. 3 of the embodiment of the present application do not constitute a specific limitation on the terminal device 300 .

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

[0105] It is also understood that the software structure shown in FIG3 of the embodiment of the present application 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.

[0106] The following, in conjunction with Figures 4 and 5 , describes the data transmission method of the present application in detail from the perspective of device interaction, taking a terminal device, an access network device, and a core network device as the execution entities. The specific form and quantity of each device shown are merely examples and should not constitute any limitation on the implementation of the method provided in this application.

[0107] It should be understood that the terminal device can be the terminal device itself, or it can be a chip, chip system or processor that supports the terminal device to implement the data transmission method, or it can be a logical module or software that can implement all or part of the terminal device; the access network device can be the access network device itself, or it can be a chip, chip system or processor that supports the access network device to implement the data transmission method, or it can be a logical module or software that can implement all or part of the access network device; the core network device can be the core network device itself, or it can be a chip, chip system or processor that supports the core network device to implement the data transmission method, or it can be a logical module or software that can implement all or part of the core network device itself. Please do not make specific restrictions on this.

[0108] FIG4 is a flow chart of a data transmission method 400 provided in an embodiment of the present application. The method 400 may be applicable to the system 100. The software structure of the terminal device may be as shown in FIG3. As shown in FIG4, the method 400 includes the following steps:

[0109] 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.

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

[0111] The first network slice information can be understood as parameters used to describe the terminal device's activation of the PDU session corresponding to the first network slice information, or parameters used to describe the attributes of the PDU session corresponding to the first network slice information. Different types of applications determined by the terminal device may correspond to different network slice information. For example, a gaming application determined by the terminal device corresponds to network slice information A, and a shopping application determined by the terminal device corresponds to network slice information B.

[0112] 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.

[0113] It should be understood that by carrying the first network slice information in the PDU session establishment request, the core network device can activate the PDU session according to the first network slice information. The PDU session can also be understood as a dedicated PDU session for transmitting the data stream generated by the operation of the first application.

[0114] S403: The core network device sends a PDU session establishment response to the terminal device via the access network device. The PDU session establishment response is used to indicate that the PDU session is successfully established.

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

[0116] In some possible implementations, S402 and S403 are optional. That is, the PDU session may also be a PDU session that has been activated before the terminal device determines the first network slice information. Alternatively, the PDU session may be activated in other ways. This application does not make specific restrictions on this.

[0117] S404: The terminal device uses a PDU session to send a data stream generated by the first application program to the core network device through the access network device. Correspondingly, the core network device receives the data stream.

[0118] It should be understood that in S402 to S404, the terminal device may interact with the core network device using a modem. For example, the terminal device may use 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 may use the modem to receive a PDU session establishment response.

[0119] 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 embodiment of this application does not describe the process of the access network device receiving and forwarding information from the terminal device or the core network device.

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

[0121] 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 in the terminal device, the data stream generated by the running of each application can be transmitted using the PDU session corresponding to each application, which can meet the differentiated needs of different applications, help improve the utilization of network resources, and thus improve the user experience.

[0122] As an optional embodiment, for S401, the terminal device uses the second application to determine the first network slice information through method 500 shown in Figure 5.

[0123] FIG5 is a flow chart of a method 500 for determining first network slice information by a terminal device according to an embodiment of the present application. The software structure of the terminal device may be as shown in FIG3 . That is, the terminal device may include a first application, a second application, an information management module, and a modem.

[0124] The method 500 includes the following steps:

[0125] S501: When a first application is running, a second application obtains application information of the running first application.

[0126] The following S502 to S504 can be understood as an implementation method 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.

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

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

[0129] Optionally, in an embodiment of the present application, the application information may include, but is not limited to, one or more of the following: application ID, package name, or data network name (DNN).

[0130] S504. The modem queries the URSP based on the application information to obtain the first network slice information corresponding to the application information. The URSP may include the correspondence between the application information and the first network slice information.

[0131] Optionally, the terminal device may further bind the routing relationship of the first application through S505 to S507.

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

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

[0134] S506: The OS module information management module transmits the first information to the second application.

[0135] S507: The second application program is bound to the routing relationship of the first application program.

[0136] By making the first information carry information used to indicate the first application, the second application can determine that the first application matches the network slice successfully, thereby binding the second application to the routing relationship of the first application.

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

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

[0139] The TD parameter is used to describe the properties of the application. The TD parameter may include, but is not limited to, one or more of the following: application identifier (App ID), target Internet protocol (IP) address and target port number, target fully qualified domain name (FQDN), and DNS.

[0140] 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 the PDU session corresponding to the network slice. It may include, but is not limited to, one or more of the following parameters: DNN, network slice selection assistance information (NSSAI), data transmission protocol type, etc. The protocol type may be the transmission control protocol (TCP), the user datagram protocol (UDP), etc.

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

[0142] 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, but that 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.

[0143] For example, as shown in Table 1 below, 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.

[0144] Table 1

[0145] Exemplarily, the terminal device can 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 TD parameters.

[0146] Matching of the application information with the URSP means that the URSP includes the application information or information 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 used to indicate the application information is a "domain descriptor", and the URSP rule also includes the "domain descriptor", so the application information matches the URSP; the application information includes a value "1", and the URSP rule includes an "application descriptor", but the value "1" included in the application information is related to the "application descriptor", for example, the value "1" and the "application descriptor" have a mapping relationship, 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 can 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] For example, 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; and the "connection capability" in the URSP rule corresponds to network slice information 6.

[0150] For example, the information used to indicate application information is a "domain descriptor," which is also included in the URSP. Therefore, the application information matches the URSP. Thus, 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 the data stream according to the PDU session corresponding to network slice information 3.

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

[0152] The first interface can be described in the above text and will not be described again here.

[0153] In an embodiment 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 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.

[0154] As an optional embodiment, S503 may be implemented in the following manner: the information management module transmits application information or TD parameters to the Modem using a network request function.

[0155] The network request function is an existing function provided by the Android system, which can be used to establish a network session, a network connection, etc.

[0156] In this way, the existing functions of the Android system can be used to transmit application information or TD parameters to the Modem without establishing new functions, so that the efficiency and success rate of transmitting application information or TD parameters to the Modem are higher.

[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] The second interface can be described above. Thus, the second application can be bound to the routing relationship of the first application, allowing the data stream generated by the first application to be routed to the PDU session through the routing relationship. The terminal device can then transmit the data stream of the first application through the PDU session.

[0159] As an optional embodiment, S501 can be implemented in the following manner: the terminal device also 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 for listening with the activity manager; or, the second application registers for listening 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 information describing the installation package of the first application, such as the name of the first application and the application identifier. The activity manager is used to manage activities such as launching the first application. For example, when the first application is launched, the activity manager can obtain the package name of the first application. It should also be understood that the terminal device can launch the first application in a variety of ways.

[0161] In one example, based on a user input operation, such as clicking on a first application icon on a desktop, the first application is launched. In this case, the activity manager can obtain the package name of the first application by: 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 launch of a first application launches the first application, for example, the first application is a payment application, and the application capable of triggering the launch of the first application is a music application. When a user enters a payment operation into the terminal device while using the music application, the music application launches the payment application. In this case, obtaining the package name of the first application can be implemented as follows: the application capable of triggering the launch of the first application indicates the package name of the first application to the activity manager.

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

[0164] System permissions can also be understood as the permission for the second application to register with the activity management module to monitor the application startup process, as well as the permission for the second application to obtain the application information of the launched application. This allows the second application to successfully obtain the application information of the launched first application, thereby facilitating the terminal device to use the application information to match the network slice information of the first application.

[0165] In one possible implementation, the second application obtains system permissions from the information management module in the following manner: the second application sends 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; 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] The signature can be used to determine the source, developer, and other information of the second application. The whitelist can include applications that the information management module can grant system permissions to (or that the information management module trusts), or the developers and / or sources of applications that can grant system permissions to (or that the information management module trusts). Therefore, based on 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 preset, obtained from a core network device, or generated through an attention (AT) command.

[0168] 1. URSP may be pre-installed in the terminal device. Exemplarily, URSP may be a rule or file confirmed by the operator, terminal manufacturer, or network equipment manufacturer. For example, in method 500, if the second application transmits application information to the Modem through the information management module, URSP may be a rule or file including application information and network slice information confirmed by the operator, terminal manufacturer, or network equipment manufacturer; if the second application transmits TD parameters to the Modem through the information management module, URSP may be a rule or file including TD parameters and network slice information confirmed by the operator, terminal manufacturer, or network equipment manufacturer. In this way, when the terminal device matches the network slice information, the second application can transmit application information or TD parameters and other information to the Modem through the information management module, so that the terminal device has higher flexibility in matching the network slice information.

[0169] 2. The URSP can be obtained from a core network device. For example, after establishing a connection with an access network device, the terminal device can send a registration request to the access network device to request the URSP. The registration request can be transmitted to the policy control network element via the access network device and the mobility management network element. The policy control network element then sends the URSP to the terminal device via the mobility management network element and the access network device.

[0170] 3. The URSP is generated via AT commands. Generating a URSP via AT commands can also be understood as a rule or file modified via AT commands. A URSP file modified via AT commands can be, for example, the preconfigured_usrp_policy.xml file. For example, AT commands can be used to modify the correspondence between matching DNN and NSSAI slice parameters, or the correspondence between TD parameters and NSSAI slice parameters. This allows the URSP to be modified based on user needs, enabling the network slice information matched by the terminal device via the URSP to better meet user needs and improve the user experience.

[0171] As an optional embodiment, method 500 also includes: if the modem fails to match the first application, the modem transmits second information to the information management module, the second information indicates that the first application fails to match the network slice information, and the second information includes information used to indicate the first application; the information management module transmits the second information to the second application.

[0172] Optionally, the second information also includes a second identifier, which indicates that the application program and the network slice information are not successfully matched. The second identifier can be, for example, 0, 1, false, etc.

[0173] It should be understood that the failure of the modem to match the first application may be due to, for example: the application information and the information used to indicate the application information are not queried in the URSP, or the network slice information corresponding to the application information is not queried; or the TD parameters and the information used for the TD parameters are not queried in the URSP, or the network slice information corresponding to the TD parameters is not queried.

[0174] It should be noted that in the embodiment 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 this application does not make specific restrictions on this.

[0175] It should be understood that the order of execution of the above methods does not necessarily mean the order in which they are executed. The order in which each process is executed should be determined by its function and internal logic.

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

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

[0178] The data transmission method according to an embodiment of the present application is described in detail above in conjunction with Figures 4 and 5. The data transmission device according to an embodiment of the present application is described in detail below in conjunction with Figures 6 to 8. The data transmission device includes a module or unit for executing each part of the above embodiment. The module or unit can be software, hardware, or a combination of software and hardware. The following is only a brief example of the data transmission device. For the implementation details of the solution, please refer to the description of the aforementioned method embodiment, which will not be repeated below.

[0179] FIG6 is a schematic block diagram of a data transmission device 600 provided in an embodiment of the present application. As shown in FIG6 , the device 600 includes: a processing module 601 and a transceiver module 602 .

[0180] The processing module 601 is used to use the second application to determine the first network slice information corresponding to the first application when the first application is running; the transceiver module 602 is used to use 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.

[0181] Optionally, the processing module 601 is specifically used 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 used to: use the second application to transmit application information to the operating system information management module; use the information management module to transmit application information to the modem processor Modem; use the Modem, based on the application information, to query the first network slice information corresponding to the application information from the URSP, and 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: utilize the second application to transmit the application information to the information management module, including: utilizing the second application to call the first interface to transmit the application information to the information management module.

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

[0185] Optionally, the processing module 601 is specifically used to: use the second application to convert the application information into traffic descriptor TD parameters based on a preset correspondence, and 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 processor Modem; use the Modem to query the first network slice information corresponding to the application information from the URSP based on the TD parameters, and the URSP includes the correspondence between the TD parameters and the first network slice information.

[0186] Optionally, the processing module 601 is also used to: use a modem to transmit first information to the information management module, the first information is used to indicate that the first application successfully matches the first network slice information, and the first information includes information used to indicate 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 used to: use the modem to send a PDU session establishment request for activating the PDU session to the core network device, the PDU session establishment request carries the first network slice information; use the PDU session establishment response received from the core network device, the PDU session establishment response is used to indicate that the PDU session activation is successful; use the modem to transmit data streams through the PDU session.

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

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

[0190] Optionally, the processing module 601 is specifically used to: use the second application to send a first request to the information management module, 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 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 a functional module. The term "module" here may refer to an application specific integrated circuit (ASIC), an electronic circuit, a processor (such as a shared processor, a dedicated processor or a group processor, etc.) and a memory for executing one or more software or firmware programs, a combined logic circuit and / or other suitable components that support the described functions. In an optional example, those skilled in the art will understand that the device 600 may be specifically the terminal device in the above embodiment, and the device 600 may be used to execute the various processes and / or steps corresponding to the terminal device in the above method embodiment. To avoid repetition, they will not be described here.

[0193] The apparatus 600 has the function of implementing the corresponding steps performed by the terminal device in the above method; the above functions 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 embodiment of the present application, the device 600 in FIG6 may also be a chip, such as a SOC, a modem, etc. Correspondingly, the processing module 601 may be a transceiver circuit of the chip, which is not limited here.

[0195] Figure 7 shows a schematic block diagram of a data transmission device 700 provided in an embodiment of the present application. The device 700 includes a processor 701, a transceiver 702, and a memory 703. The processor 701, the transceiver 702, and the memory 703 communicate with each other via 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 and / or receive signals.

[0196] It should be understood that the apparatus 700 can be specifically the terminal device in the above-mentioned embodiment, and can be used to execute the various steps and / or processes corresponding to the terminal device in the above-mentioned method embodiment. Optionally, the memory 703 may include a read-only memory and a random access memory, and provide instructions and data to the processor. A portion of the memory may also include a non-volatile random access memory. For example, the memory may also store information about the device type. The processor 701 can be used to execute 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 various steps and / or processes of the above-mentioned method embodiment. The transceiver 702 may include a transmitter and a receiver. The transmitter can be used to implement the various steps and / or processes corresponding to the above-mentioned transceiver for performing the sending action, and the receiver can be used to implement the various steps and / or processes corresponding to the above-mentioned 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), or may 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. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0198] During implementation, each step of the above method can be completed by an integrated logic circuit of hardware in a processor or by instructions in the form of software. The steps of the method disclosed in conjunction with the embodiments of the present application can be directly embodied as being executed by a hardware processor, or can be executed by a combination of hardware and software modules in the processor. The software module can be located in a storage medium mature in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor executes the instructions in the memory, combining with its hardware to complete the steps of the above method. To avoid repetition, a detailed description is not given here.

[0199] FIG8 shows a hardware structure of a data transmission device, which can be a terminal device. The device may include a processor, an external memory interface, 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, buttons, a motor, an indicator, a camera, a display, and a SIM card slot. The audio module may include a speaker, a receiver, a microphone, and a headphone jack. The sensor module may include a pressure sensor, a gyroscope sensor, an air 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, and a bone conduction sensor.

[0200] It is understood that the structures illustrated in the embodiments of the present application do not constitute specific limitations on the terminal. In other embodiments, the terminal may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0201] The processor may include one or more processing units, for example, an application processor (AP), a 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). Different processing units may be independent devices or integrated into one or more processors. The processor is the nerve center and command center of the terminal. The controller may generate operation control signals based on instruction opcodes and timing signals to complete the control of instruction fetching and execution.

[0202] The wireless communication function of the terminal can be implemented through antenna 1, antenna 2, a mobile communication module, a wireless communication module, and a modem. 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, so that the terminal can communicate with network-side devices and other terminals through wireless communication technology.

[0203] In addition, an operating system runs on the above components, such as 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 shown in Figure 3.

[0204] Some embodiments of the present application provide a chip system, applied to a terminal, comprising at least one processor and an interface, the interface being configured to receive instructions and transmit them to the at least one processor; the at least one processor executing the instructions causes the terminal to execute the paging message processing method described above. The chip system may be a modem, or a system on chip (SoC) including a modem, and the method described above may be implemented by the 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 embodiment.

[0206] The present application also provides a computer program product, which includes a computer program (also referred to as code or instructions). When the computer program runs on a computer, the computer can execute the method shown in the above method embodiment.

[0207] Those skilled in the art will appreciate that the modules and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

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

[0209] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the modules is merely a logical function division. In actual implementation, there may be other division methods, such as 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 mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or modules, which can be electrical, mechanical or other forms.

[0210] The modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules may be selected to achieve the purpose of the present embodiment according to actual needs.

[0211] In addition, each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.

[0212] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0213] The above description is merely a specific embodiment of the present application, but the scope of protection of the embodiments of the present application is not limited thereto. Any person skilled in the art can easily conceive of changes or substitutions within the technical scope disclosed in the embodiments of the present application, and such changes or substitutions should be included in the scope of protection of the embodiments of the present application. Therefore, the scope of protection of the embodiments of the present application should be based on the scope of protection of the claims.

Claims

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

2. The method according to claim 1, characterized in that, The using the second application to determine the first network slice corresponding to the first application includes: Using the second application to obtain application information of the first application; Based on the application information, querying the first network slice information corresponding to the application information from a user equipment routing selection policy (URSP).

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

4. The method according to claim 3, wherein The using the second application to transmit the application information to the information management module includes: Using the second application to call a 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, from the user equipment routing selection policy (URSP), the first network slice information corresponding to the application information by using the application information includes: Using the second application to convert the application information into traffic descriptor (TD) parameters based on a preset correspondence, where the preset correspondence includes a correspondence between the application information and the TD parameters; Using the second application to transmit the TD parameters to the information management module; Using the information management module to transmit the TD parameters to the modem; Using 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 a 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: Using 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; Using the information management module to transmit the first information to the second application; Using the second application to call a second interface to bind a routing relationship of the first application, where the routing relationship is a 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 the operation of 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 preset, obtained from a core network device, or generated by using 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, a system permission from an information management module, where the system permission is the permission for the second application program to obtain the application information.

11. The method according to claim 10, characterized in that, The obtaining, by using the second application program, a system permission from an 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 permission 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 permission.

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, It includes a module for executing the method according to any one of claims 1 to 12.

14. A data transmission device, characterized in that, It includes: A processor, where the processor is coupled to a memory, and 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, where 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, It includes at least one processor and a communication interface, where 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

  • Data transmission method and device

    CN120282309A

  • Network slice mapping method and related device

    CN113766534A

  • Application data transmission method, terminal and system

    CN113868635A

  • PDU session establishment method, terminal equipment and chip system

    CN114080054A

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

    CN114205239A