Data transmission method and apparatus

CN120282309BActive Publication Date: 2026-09-29HONOR DEVICE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202311867812.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-12-29
Publication Date
2026-09-29
Estimated Expiration
2043-12-29

AI Technical Summary

Technical Problem

然而,目前终端设备可能无法确定与终端设备中运行的应用程序匹配的网络切片,进而使得网络切片无法为该应用程序的业务提供服务,使得用户体验感较差

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120282309B_ABST
    Figure CN120282309B_ABST
Patent Text Reader

Abstract

The application provides a data transmission method and device, and relates to the technical field of communication. According to application information of an application program running on a terminal device, network slice information corresponding to the application program can be matched, which helps to meet differentiated service requirements and improve network resource utilization. The method comprises the following steps: when a first application program runs, a second application program is used to determine first network slice information corresponding to the first application program; and a protocol data unit (PDU) session activated by the first network slice information is used to transmit a data stream generated by the running of the first application program.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

[0002] The types of terminal devices and the services they provide are increasing. Using the same network to provide services for different types of services makes it difficult to meet the diverse needs of terminal devices. Therefore, providing differentiated network services for different services through network slicing technology is one of the important ways to improve network quality.

[0003] 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 service applications. However, currently, terminal devices may not be able to determine the network slice that matches the application running on the terminal device, thus preventing the network slice from providing services for the application and resulting in a poor user experience. Summary of the Invention

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

[0005] In a first aspect, a data transmission method is provided, comprising: 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.

[0006] The data transmission method of this application allows the terminal device to use a second application to match the first network slice information corresponding to the first application. For different applications running on the terminal device, the data streams generated by each application can be transmitted using the PDU session corresponding to each application. This can meet the differentiated needs of different applications, help improve the utilization of network resources, and thus improve the user experience.

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

[0008] In conjunction with the first aspect, in some implementations of the first aspect, determining the first network slice corresponding to the first application using the second application includes: using the second application to obtain application information of the first application; and based on the application information, querying the first network slice information corresponding to the application information from the User Equipment Routing Policy (URSP).

[0009] The URSP can include the correspondence between application information and first network slice information. Thus, when the second application can obtain the application information, the URSP can be used to determine the first network slice information, which helps improve the success rate of the terminal device in matching the first network slice information corresponding to the first application.

[0010] In conjunction with the first aspect, in certain implementations of the first aspect, the first network slice information corresponding to the application information is queried from the User Equipment Routing Policy (URSP) using application information. This includes: transmitting the application information to the operating system information management module using a second application; transmitting the application information to the modem using the information management module; and using the modem to query the first network slice information corresponding to the application information from the URSP based on the application information. The URSP includes the correspondence between the application information and the first network slice information. In this way, the modem can determine the first network slice information through the application information and the URSP without requiring the terminal device to convert the application information.

[0011] In conjunction with the first aspect, in some implementations of the first aspect, the application information is transmitted to the information management module using a second application, including: using the second application to call a 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.

[0012] In conjunction with the first aspect, in some implementations of the first aspect, the information management module uses network request functions to transmit application information to the modem. This helps to improve the success rate of transmitting application information to the modem.

[0013] In conjunction with the first aspect, in certain implementations of the first aspect, the application information is used to query the first network slice information corresponding to the application information from the User Equipment Routing Policy (URSP). This includes: using a second application to convert the application information into Traffic Descriptor (TD) parameters based on a preset correspondence, where the preset correspondence includes the correspondence between the application information and the TD parameters; 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; and using the modem to query the first network slice information corresponding to the application information from the URSP based on the TD parameters, where the URSP includes the correspondence between the TD parameters and the first network slice information. This eliminates the need to modify the URSP, facilitating successful matching of the first network slice information by the terminal device using the TD parameters.

[0014] In conjunction with the first aspect, some implementations of the first aspect further include: transmitting first information to the information management module using a modem, the first information indicating that the first application has successfully matched the first network slice information, and the first information including information indicating the first application; transmitting the first information to a second application using the information management module; and using the second application to call a second interface to bind the routing relationship of the first application, the routing relationship being the relationship between the first application and the PDU session. In this way, the second application can determine whether the first application has successfully matched the network slice information, facilitating the second application to bind the routing relationship of the first application, so that the data stream generated by the first application can be routed to the PDU session corresponding to the first network slice information through this routing relationship. Then, the terminal device transmits the data stream of the first application through this PDU session.

[0015] In conjunction with the first aspect, in certain implementations of the first aspect, the transmission of data streams generated by the execution of the first application using a Protocol Data Unit (PDU) session activated through the first network slice information includes: sending a PDU session establishment request to the core network device via a modem to activate the PDU session, the PDU session establishment request carrying the first network slice information; receiving a PDU session establishment response from the core network device, the PDU session establishment response indicating successful PDU session activation; and transmitting the data stream via the PDU session using a modem. In this way, a PDU session corresponding to the first network slice information can be established, and the terminal device can use this PDU session to transmit the data streams generated by the execution of the first application, which helps to meet differentiated service requirements.

[0016] In conjunction with the first aspect, in some implementations of the first aspect, the URSP is pre-configured, obtained from core network equipment, or generated via attention AT commands.

[0017] In conjunction with the first aspect, in some implementations of the first aspect, before using the second application to obtain the application information of the first application, the method further includes: using the second application to obtain system permissions from the information management module. These system permissions are the permissions for the second application to obtain application information. System permissions can also be understood as the permissions for the second application to register with the activity management module to listen to the application's startup process, and the permissions 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. This facilitates the terminal device in matching the network slice information of the first application using the application information.

[0018] In conjunction with the first aspect, in some implementations of the first aspect, obtaining system permissions from the information management module using the second application includes: sending a first request to the information management module using the second application, the first request being used to obtain system permissions, the first request carrying the signature of the second application; the information management module using the signature to determine whether the second application belongs to the whitelist; if so, the second application obtains system permissions. The signature can be used to determine the source, developer, and other information of the second application.

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

[0020] Secondly, a data transmission apparatus is provided for performing the method in any possible implementation of the first aspect described above. Specifically, the apparatus includes a module for performing the method in any possible implementation of the first aspect described above.

[0021] Thirdly, this application provides yet another data transmission apparatus, including a processor coupled to a memory, which can be used to execute instructions in the memory to implement the method in any of the possible implementations of the first aspect described above. Optionally, the apparatus further includes a memory. Optionally, the apparatus further includes a communication interface, to which the processor is coupled.

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

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

[0024] Fourthly, a processor is provided, comprising: an input circuit, an output circuit, and a processing circuit. The processing circuit is configured to receive signals through the input circuit and transmit signals through the output circuit, causing the processor to execute the method in any possible implementation of the first aspect described above.

[0025] In the specific implementation process, the processor can be a chip, the input circuit can be an input pin, the output circuit can be an output pin, and the processing circuit can be a transistor, gate circuit, flip-flop, and various logic circuits. The input signal received by the input circuit can be received and input by, for example, but not limited to, a receiver, and the signal output by the output circuit can be output to, for example, but not limited to, a transmitter and transmitted by the transmitter. Furthermore, the input circuit and the output circuit can be the same circuit, which is used as the input circuit and the output circuit at different times. This application does not limit the specific implementation of the processor and various circuits.

[0026] Fifthly, a processing apparatus is provided, including a processor and a memory. The processor is used to read instructions stored in the memory and to receive signals via a receiver and transmit signals via a transmitter to execute the method in any of the possible implementations of the first aspect described above.

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

[0028] Optionally, the memory may be integrated with the processor, or the memory may be separated from the processor.

[0029] In the specific implementation process, the memory can be a non-transitory memory, such as 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 or the way the memory and processor are set.

[0030] It should be understood that the relevant data interaction process, such as sending instruction information, can be a process of outputting instruction information from the processor, and receiving capability information can be a process of the processor receiving input capability information. Specifically, the processed output data can be output to the transmitter, and the input data received by the processor can come from the receiver. Here, the transmitter and receiver can be collectively referred to as transceivers.

[0031] The processing device in the fifth aspect above can be a chip. The processor can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor that reads software code stored in memory. The memory can be integrated into the processor or located outside the processor and exist independently.

[0032] In a sixth aspect, a computer program product is provided, the computer program product comprising: a computer program (also referred to as code or instructions), which, when the computer program is run, causes a computer to perform the method in any of the possible implementations of the first aspect described above.

[0033] In a seventh aspect, a computer-readable storage medium is provided that stores a computer program (also referred to as code or instructions) that, when executed on a computer, causes the computer to perform the methods in any of the possible implementations of the first aspect described above. Attached Figure Description

[0034] Figure 1 This is a schematic diagram of a communication system used in an embodiment of this application;

[0035] Figure 2 This is a schematic diagram illustrating the applicable scenarios for the methods provided in the embodiments of this application;

[0036] Figure 3 A schematic diagram of the software architecture of the terminal device provided in the embodiments of this application;

[0037] Figure 4 A flowchart illustrating the data transmission method provided in an embodiment of this application;

[0038] Figure 5 A flowchart illustrating the method for matching network slices to a terminal device provided in an embodiment of this application;

[0039] Figure 6 A schematic block diagram of a data transmission device provided in an embodiment of this application;

[0040] Figure 7 A schematic block diagram of another data transmission apparatus provided in the embodiments of this application;

[0041] Figure 8 A schematic block diagram of the hardware structure of the terminal device provided in the embodiments of this application. Detailed Implementation

[0042] The technical solutions in this application will now be described with reference to the accompanying drawings.

[0043] In some embodiments provided by the present application, the words "first", "second" and the like are used to distinguish between identical or similar items that have substantially the same function and effect. For example, a first numerical value and a second numerical value are only used to distinguish different numerical values, and do not limit their order. Those skilled in the art can understand that the words "first", "second" and the like do not limit the number and execution order, and "first", "second" and the like do not limit that the items are necessarily different.

[0044] It should be noted that in the embodiments of the present application, words such as "exemplarily" or "for example" are used to indicate an example, an illustration or an explanation. Any embodiment or design solution described as "exemplarily" or "for example" in the present application should not be construed as being more preferred or advantageous than other embodiments or design solutions. To be precise, the use of "exemplarily" or "for example" is intended to present the relevant concept in a specific manner.

[0045] In the embodiments of the present application, "at least one" means one or more, and "a plurality of" 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 mean: 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 preceding and following associated objects are in an "or" relationship. "At least one of (item(s)) the following" or similar expressions refers to any combination of the items, including any combination of single item(s) or plural items(s). For example, at least one 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.

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

[0047] The terminal equipment in this application embodiment can 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.

[0048] The access network equipment and core network equipment in this application embodiment can be collectively referred to as network equipment.

[0049] The core network equipment in this application embodiment can be a core network equipment in a 5G system, such as an access and mobility management function (AMF) network element, a policy control function (PCF) network element, etc., or it can be a core network equipment with other names. This application embodiment does not limit this.

[0050] Access network equipment 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 Node B, or home Node B, HNB), baseband unit (BBU), access point (AP), wireless relay node, wireless backhaul node, transmission point (TP), or transmission and reception point (TRP) in a wireless fidelity (WiFi) system. It can also be a 5G base station (next-generation Node B, gNB) in a 5G system, such as NR, 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 a network node constituting a gNB or transmission point, such as a baseband unit (BBU) or a distributed unit (DU).

[0051] In some deployments, a gNB may include a centralized unit (CU) and a dedicated unit (DU). A gNB may also include an active antenna unit (AAU). The CU implements some of the gNB's functions, and the DU implements others. For example, the CU can handle non-real-time protocols and services, such as implementing the functions of the radio resource control (RRC) layer, the service data adaptation protocol (SDAP) layer, and / or the packet data convergence protocol (PDCP) layer. The DU can handle physical layer protocols and real-time services, such as implementing the functions of the radio link control (RLC) layer, the media access control (MAC) layer, and the physical (PHY) layer. A DU can connect to only one CU or to multiple CUs, while a CU can connect to multiple DUs. Communication between CUs and DUs can be achieved via the F1 interface. The AAU can implement some physical layer processing functions, radio frequency processing, and active antenna-related functions. Since the information from the RRC layer is ultimately delivered to the PHY layer and thus becomes PHY layer information, or is transformed from PHY layer information, in this architecture, higher-level signaling, such as RRC layer signaling, can also be considered as being sent by the DU, or by the DU+AAU.

[0052] It is understood that access network equipment can be one or more of the following: CU nodes, DU nodes, and AAU nodes. Furthermore, a CU can be classified as an access network device in the radio access network (RAN) or as an access network device in the core network (CN); this application does not impose any limitations on this classification.

[0053] Access network equipment provides services to cells. Terminal devices communicate with cells through transmission resources (e.g., frequency domain resources, or spectrum resources) allocated by the access network equipment. The cell can belong to a macro base station (e.g., macro eNB or macro gNB) or to a base station corresponding to a small cell. Small cells can include: metro cells, micro cells, pico cells, femto cells, etc. These small cells have the characteristics of small coverage area and low transmission power, and are suitable for providing high-speed data transmission services.

[0054] The following describes some of the technical terms used in this application.

[0055] 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 service applications. A network slice can include a radio sub-slice, a bearer sub-slice, and a core network sub-slice. Network slicing can also be understood as combining related service functions, network resources, and network configurations within the physical network to form a logical network.

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

[0057] 3. UE route selection policy (URSP): This describes the mapping between applications and network slices. URSP may contain one or more single network slice selection assistance information (S-NSSAI) to implement differentiated control policies for different users and services.

[0058] To facilitate understanding of the embodiments of this application, firstly, in conjunction with Figure 1 The embodiments applicable to this application will be described in detail.

[0059] Figure 1 A schematic diagram of a communication system 100 applying an embodiment of this application is shown. The communication system 100 includes an access network and a core network.

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

[0061] Access network device 110 and terminal device 120 can communicate via a wireless link. Access network device 110 or terminal device 120 can be configured with multiple antennas, which may include at least one transmitting antenna for transmitting signals and at least one receiving antenna for receiving signals. Additionally, access network device 110 or terminal device 120 also includes a transmitter chain and a receiver chain, which, as will be understood by those skilled in the art, may include multiple components (e.g., processors, modulators, multiplexers, demodulators, demultiplexers, or antennas) related to signal transmission and reception. Therefore, access network device 110 and terminal device 120 can communicate via multi-antenna technology.

[0062] Furthermore, access network device 110 can also communicate with core network devices in the core network via a wireless link. Therefore, terminal device 120 can communicate with core network devices through access network device 110. For example, terminal device 120 can send information 1 to access network device 110, and correspondingly, access network device 110 receives information 1 from terminal device 120; access network device 110 can also send information 1 to core network devices, and correspondingly, core network devices receive information 1 from access network device 110. Alternatively, core network devices can send information 2 to access network device 110, and correspondingly, access network device 110 receives information 2 from core network devices; access network device 110 can also send information 2 to terminal device 120, and correspondingly, terminal device 120 receives information 2 from access network device 110.

[0063] The core network's main functions are to provide user connections, manage users, and carry services, serving as the bearer network and providing an interface to external networks. User connection establishment includes functions such as mobility management (MM), call management (CM), switching / routing, and recording notifications (which, in conjunction with intelligent network services, establish connections to peripheral intelligent network devices).

[0064] It's understandable that the core network of a 4G network is an evolved packet core (EPC) network. The EPC network is the core network of a 4G mobile communication network. It falls under the core network category and possesses traditional mobile network capabilities such as user subscription data storage, mobility management, and data exchange, while providing users with an ultra-high-speed internet experience. The core network of a 5G network is the 5G Core (which can be abbreviated as 5GC). 5GC will use general-purpose network function virtualization equipment to replace the dedicated communication equipment of 4G networks.

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

[0066] In some embodiments of this application, the core network in this network architecture may include fused network elements derived from network elements in EPC and 5GC. Examples include SMF+PGW-C, UPF+PGW-U, UDM+HSS, etc. Here, PGW-C is the control plane node of the PGW network element, and PGW-U is the user plane node of the PGW network element.

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

[0068] It should be understood that all network element names in this application are merely examples. In future communications, such as 6G, they may be referred to by other names, or in future communications, such as 6G, the network elements involved in this application may be replaced by other entities or devices with the same function, etc., and this application does not limit them in any way. This is a unified explanation here and will not be repeated hereafter. Optionally, the various network elements in the embodiments of this application may be communication devices, or chips or chip systems that can be used in the communication devices, etc., and this application does not limit them in any way.

[0069] Understandable Figure 1 The core network in the network architecture shown may also include other devices, network elements, network entities, or network subsystems, such as policy control function (PCF) network elements, which are not limited in this application. It should be noted that this application does not limit the distribution of each network element in the core network; the specific distribution method can be found in relevant technical documents, which will not be elaborated here.

[0070] It should be understood that Figure 1 This is merely an illustration and does not limit the specific architecture of the applicable system. The communication system 100 may also include other network devices, such as wireless repeaters and wireless backhaul devices. Figure 1 The components are not shown in the diagram. This application does not limit the number or specific form of the core network equipment, access network equipment, and terminal equipment included in the communication system 100.

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

[0072] Currently, the types of terminal devices and the services they provide are increasing. Using the same network to provide services for different types of services makes it difficult to meet the diverse needs of terminal devices. For example, for cloud gaming applications on terminal devices, the server needs to send real-time audio and video streams to the client; the client needs to send control command streams to the server, and the server applies the received control commands from the client to the game. Therefore, cloud gaming applications have high requirements for network latency and bandwidth. Weather applications on terminal devices typically have much lower latency requirements than cloud gaming applications. Furthermore, for virtual reality (VR) terminal devices, high latency can cause motion sickness in users; these types of terminal devices typically require latency of less than 20ms.

[0073] Based on this, network slicing technology can typically be used to separate multiple virtual end-to-end networks on a unified core network infrastructure, with each virtual end-to-end network being 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 capacities for different types of services on terminal devices, such as cloud gaming applications and weather applications, thereby meeting the diverse needs of different services on terminal devices. This improves the flexibility and adaptability of the network architecture.

[0074] Below, in conjunction with Figure 2 The applicable scenarios for network slicing are explained.

[0075] Figure 2 This is a schematic diagram illustrating an application scenario of network slicing provided in an embodiment of this application. For example... Figure 2 As shown, scenario 200 includes terminal device 210, access network device 220, and core network device 230. Terminal device 210 can communicate with core network device 230 through access network device 220.

[0076] Multiple applications can run in terminal device 210, such as Figure 2 Applications A, B, C, and D are shown. Core network device 230 can provide multiple network slices, for example... Figure 2 The network slices shown are 1, 2, 3, and 4. Applications in terminal device 210 can access different network slices, allowing each network slice to provide services for different application services.

[0077] For example, during the running of an application, the terminal device 210 first establishes a protocol data unit (PDU) session for the network slice corresponding to the application through the access network device 220, and then uses the PDU session to transmit service data with the core network device 230.

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

[0079] like Figure 2As shown, applications A and B can connect to network slice 1 through PDU session 1, so that network slice 1 can provide services for applications A and B; application C can connect to network slice 2 through PDU session 2, so that network slice 2 can provide services for 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 application D.

[0080] However, during the use of network slicing technology, terminal devices may be unable to obtain application information of running applications, or may be unable to obtain the TD parameters corresponding to the applications. Consequently, they may be unable to match network slices to the applications running on the terminal devices based on the application information, TD parameters, and URSP, resulting in a poor user experience.

[0081] To address the aforementioned technical problems, this application provides a data transmission method and apparatus. A terminal device can obtain application information of a first application running on the terminal device through a second application within the terminal device. Based on this application information, the modem in the terminal device determines a routing descriptor matching the first application according to the URSP stored in the terminal device. The routing descriptor is information used to indicate network slices, i.e., network slice information. Thus, the terminal device and core network equipment can activate a PDU session corresponding to the network slice information through signaling interaction, enabling the terminal device to transmit the data stream generated by the running first application through this dedicated PDU session. For different applications, the terminal device can transmit the data stream of each application through its corresponding PDU session, meeting the differentiated needs of different services, helping to improve network resource utilization, and enhancing user experience.

[0082] To facilitate understanding, let's first combine... Figure 3 The software architecture of the terminal device involved in the embodiments of this application will be described.

[0083] Figure 3 This is a software structure block diagram of the terminal device 300 according to an embodiment of this application.

[0084] Layered architecture divides software into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. Taking the Android system, which runs on an application processing unit (AP), as an example, in some implementations, the Android system is divided into five layers, from top to bottom: the application layer, the application framework layer (Framework), the Android runtime and system libraries, the Hardware Abstraction Layer (HAL), the system kernel layer, and the Modem.

[0085] The application layer can include a series of application packages. Application packages can include a launcher, a first application, a second application, and other apps. The application layer can also include the system UI, which is used to display the terminal's interface, such as displaying the signal icon corresponding to the SIM card, displaying the call interface, etc.

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

[0087] The primary application could be a camera, gallery, calendar, or calling app, or it could be a game, shopping app, or other third-party applications.

[0088] The second application can be an application developed by an operator, terminal manufacturer, or network equipment manufacturer. After obtaining system privileges, the second application can monitor the application's startup process and obtain application information, such as the application name, from the application framework layer's activity manager and package manager. When the application running on the terminal device 300 is updated, the second application can also update the name of the application it has been monitoring. If the second application's signature is updated, the second application can be reinstalled to allow it to obtain system privileges.

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

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

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

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

[0093] The second interface can be a newly defined interface. It can be used to bind the routing relationship of the first application, that is, the channel through which the first application switches from the public network to 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.

[0094] The second interface can also be called via the following function: public int bind AppUid To Network(int appUid, Network). When calling the second interface to bind the routing relationship of the first application, one or two of the following information can be entered, including but not limited to: application identifier (appUid), which is an automatically generated identifier of the application installed on the terminal device 300; network, i.e., the network object, which is the dedicated slice network established for the first application.

[0095] 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 routing relationship binding interface; this application does not make any specific limitations on this.

[0096] Package managers are used to manage the installation packages of various applications installed on terminal devices, such as music, video, and navigation applications.

[0097] The Activity Manager is used to manage and maintain information about all running activities in the operating system, such as tasks, memories, services, and applications, and provides an interface for obtaining activity information; it is also responsible for launching applications.

[0098] The telephony manager provides the terminal with call functionality, such as call status management (including connection and disconnection). The application framework layer may also include the RIL (Radio Interface Layer), through which the modem can interact with the telephony.

[0099] The information management module can transmit application information or TD parameters from the first application to the modem via the RIL; and the modem can transmit information indicating whether the first application has successfully matched or failed with the network slice to the information management module via the RIL, and the information management module can then transmit the information indicating whether the first application has successfully matched or failed with the network slice to the second application.

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

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

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

[0103] It is also understood that the embodiments of this application Figure 3 The illustrated software architecture does not constitute a specific limitation on the terminal device 300. In other embodiments of this application, the terminal device 300 may include more or fewer software modules than illustrated; for example, the system server may also include a resource manager, etc.

[0104] The following is combined with Figure 4 and Figure 5 Taking terminal equipment, access network equipment, and core network equipment as examples, this paper provides a detailed description of the data transmission method of this application from the perspective of device interaction. The specific forms and quantities of the various devices shown are merely illustrative and should not constitute any limitation on the implementation of the method provided in this application.

[0105] It should be understood that terminal equipment can be the terminal equipment itself, a chip, chip system, or processor that supports the terminal equipment in implementing data transmission methods, or a logic module or software that can implement all or part of the terminal equipment; access network equipment can be the access network equipment itself, a chip, chip system, or processor that supports the access network equipment in implementing data transmission methods, or a logic module or software that can implement all or part of the access network equipment; core network equipment can be the core network equipment itself, a chip, chip system, or processor that supports the core network equipment in implementing data transmission methods, or a logic module or software that can implement all or part of the core network equipment. Please do not make specific limitations on this.

[0106] Figure 4 This is a flowchart illustrating a data transmission method 400 provided in an embodiment of this application. Method 400 can be applied to system 100. The software structure of the terminal device therein can be as follows: Figure 3 As shown. Figure 4 As shown, method 400 includes the following steps:

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

[0108] It should be understood that the first application running can occur when the first application starts, i.e., when the terminal device determines the first network slice information at the time the first application starts; or, the first application running can occur at any time after the first application starts, i.e., during the startup and operation of the first application, the terminal device determines the first network slice information. This application does not impose specific limitations on this.

[0109] The first network slice information can be understood as parameters used to describe the parameters required for a terminal device to activate a 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. The network slice information corresponding to different types of applications identified by the terminal device can be different. For example, the terminal device may identify a game application as corresponding to network slice information A, and a shopping application as corresponding to network slice information B.

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

[0111] It should be understood that by including the first network slice information in the PDU session establishment request, the core network device can activate the PDU session based on the first network slice information. This PDU session can also be understood as a dedicated PDU session used to transmit the data stream generated by the execution of the first application.

[0112] S403. The core network equipment sends a PDU session establishment response to the terminal equipment through the access network equipment. The PDU session establishment response is used to indicate that the PDU session has been successfully established.

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

[0114] In some possible implementations, S402 and S403 are optional. That is, the PDU session can also be a PDU session that is activated before the terminal device determines the first network slice information. Alternatively, the PDU session can be activated in other ways. This application does not specifically limit this.

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

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

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

[0118] Optionally, prior to S401, the terminal device could send a registration request to the access network device after establishing a connection with the access network device to request the URSP. This registration request could be transmitted to the core network device via the access network device, and the core network device would then send the URSP to the terminal device via the access network device.

[0119] The data transmission method of this application allows a terminal device to determine the first network slice information corresponding to a running first application using a second application. This enables the terminal device to transmit the data stream generated by the running first application through a PDU session corresponding to the first network slice information. In this way, for different applications running on the terminal device, the data streams generated by each application can be transmitted using the corresponding PDU session, meeting the differentiated needs of different applications, improving network resource utilization, and thus enhancing the user experience.

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

[0121] Figure 5 A flowchart illustrating the method 500 for determining first network slice information for a terminal device provided in this application embodiment. The software structure of the terminal device can be as follows: Figure 3 As shown, the terminal device may include a first application, a second application, an information management module, and a modem.

[0122] Method 500 includes the following steps:

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

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

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

[0126] S503, the information management module transmits application information to the modem.

[0127] Optionally, in the embodiments of this 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).

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

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

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

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

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

[0133] S507, the routing relationship between the second application and the first application.

[0134] By enabling the first information to carry information indicating the first application, the second application can determine that the first application has successfully matched a network slice, thereby binding the second application to the routing relationship of the first application.

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

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

[0137] The TD parameter is used to describe the attributes 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, fully qualified domain name (FQDN) of the target, DNN, etc.

[0138] Network slice information, also known as a route selection descriptor, describes the parameters required for a terminal device to activate a PDU session corresponding to a network slice. These parameters may include, but are not limited to, one or more of the following: DNN (Distance-Neighbor Network), network slice selection assistance information (NSSAI), and the data transmission protocol type. The protocol type can be Transmission Control Protocol (TCP), User Datagram Protocol (UDP), etc.

[0139] It should be noted that the correspondence between application information and first network slice information in URSP does not mean that URSP necessarily includes both application information and first network slice information. Rather, URSP includes information used to indicate application information and information used to indicate first network slice information, and there is a correspondence between the information used to indicate application information and the information used to indicate first network slice information.

[0140] Furthermore, the correspondence between the TD parameter and the first network slice information in the URSP does not mean that the URSP necessarily includes the TD parameter and the first network slice information. Rather, the URSP includes information used to indicate the TD parameter and information used to indicate the first network slice information, and there is a correspondence between the information used to indicate the TD parameter and the information used to indicate the first network slice information.

[0141] For example, as shown in Table 1 below, URSP can include rule priority fields, application descriptor fields, IP descriptor fields, domain descriptor fields, non-IP descriptor fields, data network name fields, connectivity fields, etc., without restriction.

[0142] Table 1

[0143]

[0144]

[0145] For example, the terminal device can match the application information with the URSP rules described in Table 1 above to determine the first network slice information corresponding to the application information or TD parameters.

[0146] Matching application information with URSP means that URSP includes application information or information used to indicate application information.

[0147] As an example, URSP includes a TD parameter, which corresponds to the application information; or, the information used to indicate the application information is a "domain descriptor," and the URSP rule also includes a "domain descriptor," so the application information matches the URSP; the application information includes the 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, there is a mapping relationship between the value "1" and the "application descriptor," so the application information matches the URSP.

[0148] Optionally, the information in the URSP used to indicate application information or the application information 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 information in the URSP used to indicate application information or the correspondence between the application information and the first network slice information, and conduct communication 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 "Connectivity" in URSP rules 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 the first network slice information to be 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 can be implemented in the following way: the second application calls the first interface to transmit application information or TD parameters to the information management module.

[0152] The first interface can be found in the description above, and will not be repeated here.

[0153] In this embodiment of the 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 can be implemented in the following way: the information management module uses the network request function to transmit application information or TD parameters to the Modem.

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

[0156] In this way, existing functions of the Android system can be used to transmit application information or TD parameters to the modem without creating new functions, resulting in higher efficiency and success rate in transmitting application information or TD parameters to the modem.

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

[0158] The second interface can be referred to in the description above. In this way, the routing relationship of the first application can be bound to the second application, allowing the data stream generated by the first application to be routed to the PDU session through this routing relationship. The terminal device then transmits the data stream of the first application through this PDU session.

[0159] As an optional embodiment, S501 can be implemented in the following manner: the terminal device further includes a package manager and an activity manager; the activity manager determines to obtain the application information of the first application from the package manager using the package name of the first application; the second application obtains the application information from the activity manager, that is, the second application can register to listen to the activity manager; or, the second application registers to listen to 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 to manage information describing the installation package of the first application, such as the name of the first application, application identifier, etc. The activity manager is used to manage activities such as the launch of the first application. For example, when the first application launches, 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 various ways.

[0161] In one example, a first application is launched based on user input, such as clicking the first application icon on the desktop. In this case, Activity Manager can obtain the package name of the first application by having the desktop launcher indicate the package name of the first application to Activity Manager.

[0162] In another example, when an application that can trigger the launch of a first application launches that application—for example, if the first application is a payment application and the application that can trigger the launch of the first application is a music application—the music application launches the payment application when the user enters a payment operation into the terminal device. In this case, obtaining the package name of the first application can be achieved by the application that can trigger the launch of the first application indicating the package name of the first application to the Activity Manager.

[0163] As an optional embodiment, prior to S501, method 500 further includes: the second application obtaining system permissions from the information management module, wherein the system permissions are the permissions of the second application to obtain application information.

[0164] System permissions can also be understood as the permission for a second application to register with the activity management module to listen to the application's startup process, and 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. This facilitates the terminal device in matching the network slice information of the first application using the application information.

[0165] In one possible implementation, the second application can obtain system permissions from the information management module in the following way: the second application sends a first request to the information management module, the first request being used to obtain system permissions, the first request carrying the signature of the second application; the information management module uses the signature to determine whether the second application belongs to the whitelist; if so, the second application obtains system permissions.

[0166] The signature can be used to identify the source and developer of the second application, while the whitelist can be 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 be granted system permissions to (or that the information management module trusts). Therefore, through the signature, the information management module can determine whether to grant system permissions to the second application.

[0167] As an optional implementation, the URSP is pre-configured, obtained from core network equipment, or generated via attention (AT) commands.

[0168] 1. The URSP can be pre-installed in the terminal device. For example, the URSP can be a rule or document confirmed by the operator, terminal manufacturer, or network equipment manufacturer. For instance, in method 500, if the second application transmits application information to the modem through the information management module, the URSP can be a rule or document confirming the application information and network slice information, including both; if the second application transmits TD parameters to the modem through the information management module, the URSP can be a rule or document confirming the TD parameters and network slice information, including both. Thus, when the terminal device matches network slice information, the second application can transmit application information or TD parameters to the modem through the information management module, making the terminal device more flexible in matching network slice information.

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

[0170] 3. URSPs are generated via AT commands. Generating URSPs via AT commands can also be understood as modifying rules or files using AT commands. For example, a URSP file modified via AT commands could be a preconfigured_usrp_policy.xml file. For instance, AT commands can modify the mapping between DNN and NSSAI slice parameters, or the mapping between TD parameters and NSSAI slice parameters, etc. This allows URSPs to be modified according to user needs, ensuring that the network slice information matched by the terminal device through the URSP better meets user requirements, thus improving the user experience.

[0171] As an optional embodiment, method 500 further includes: if the modem fails to match the first application, the modem transmits second information to the information management module, the second information indicating that the first application and the network slice information failed to match, the second information including information for indicating 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 and network slice information did not match successfully. The second identifier can be, for example, 0, 1, false, etc.

[0173] It should be understood that a modem failing to match the first application could be due to: the application information and the information used to indicate the application information not being found in the URSP, or the network slice information corresponding to the application information not being found; or the TD parameter and the information used for the TD parameter not being found in the URSP, or the network slice information corresponding to the TD parameter not being found.

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

[0175] It should be understood that the order of the methods listed above does not imply the order of execution. The execution order of each process should be determined by its function and internal logic.

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

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

[0178] The above text combined Figure 4 and Figure 5 The data transmission method of the embodiments of this application is described in detail below, in conjunction with Figures 6 to 8 This application describes in detail the data transmission apparatus according to embodiments of the present application. The data transmission apparatus includes modules or units for performing each part of the above embodiments. The modules or units may be software, hardware, or a combination of software and hardware. The following is only a brief illustrative example of the data transmission apparatus; for details of the implementation, please refer to the description of the foregoing method embodiments, which will not be repeated below.

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

[0180] The processing module 601 is used to determine the first network slice information corresponding to the first application using the second application when the first application is running; the transceiver module 602 is used to transmit the data stream generated by the running of the first application using the Protocol Data Unit (PDU) session activated by the first network slice information.

[0181] Optionally, the processing module 601 is specifically used to: obtain application information of the first application using the second application; and query the first network slice information corresponding to the application information from the User Equipment Routing Policy (URSP) based on the application information.

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

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

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

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

[0186] Optionally, the processing module 601 is further configured to: transmit first information to the information management module using the Modem, the first information being used to indicate that the first application and the first network slice information have been successfully matched, the first information including information for indicating the first application; transmit the first information to the second application using the information management module; and 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: send a PDU session establishment request to the core network device using the Modem to activate the PDU session, the PDU session establishment request carrying first network slice information; receive a PDU session establishment response from the core network device, the PDU session establishment response indicating that the PDU session has been successfully activated; and transmit a data stream through the PDU session using the Modem.

[0188] Optionally, the URSP is pre-configured, obtained from core network equipment, or generated via the attention AT command.

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

[0190] Optionally, the processing module 601 is specifically used to: send a first request to the information management module using the second application, the first request being used to obtain system permissions, the first request carrying the signature of the second application; use the information management module to determine whether the second application belongs to the whitelist by means of 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 can refer to application-specific integrated circuits (ASICs), electronic circuits, processors (e.g., shared processors, proprietary processors, or group processors) and memories for executing one or more software or firmware programs, integrated logic circuits, and / or other suitable components supporting the described functions. In an alternative example, those skilled in the art will understand that device 600 can specifically be the terminal device in the above embodiments. Device 600 can be used to execute the various processes and / or steps corresponding to the terminal device in the above method embodiments; to avoid repetition, these will not be described again here.

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

[0194] In the embodiments of this application, Figure 6 The device 600 can also be a chip, such as a SOC or a modem. Correspondingly, the processing module 601 can be the transceiver circuit of the chip, which is not limited here.

[0195] Figure 7 A schematic block diagram of a data transmission apparatus 700 provided in an embodiment of this application is shown. The apparatus 700 includes a processor 701, a transceiver 702, and a memory 703. The processor 701, transceiver 702, and memory 703 communicate with each other via internal interconnection. The memory 703 stores instructions, and the processor 701 executes the instructions stored in the memory 703 to control the transceiver 702 to transmit and / or receive signals.

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

[0197] It should be understood that, in the embodiments of this application, the processor may be a central processing unit (CPU), or it 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. The general-purpose processor may be a microprocessor or any conventional processor.

[0198] In implementation, each step of the above method can be completed by integrated logic circuits in the processor's hardware or by instructions in software. The steps of the method disclosed in the embodiments of this application can be directly manifested as execution by a hardware processor, or as a combination of hardware and software modules within the processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory, and the processor executes the instructions in the memory, combining them with its hardware to complete the steps of the above method. To avoid repetition, detailed descriptions are omitted here.

[0199] A hardware structure of a data transmission device, such as Figure 8As shown, the data transmission device can be a terminal device. It 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 screen, and a SIM card slot, etc. The audio module may include a speaker, a receiver, a microphone, a headphone jack, etc., and the sensor module may include a pressure sensor, a gyroscope sensor, a barometric pressure sensor, a magnetic sensor, an accelerometer, a proximity sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor, an ambient light sensor, a bone conduction sensor, etc.

[0200] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the terminal. In other embodiments, the terminal may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. 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, such as 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 generates operation control signals based on instruction opcodes and timing signals to control instruction fetching and execution.

[0202] The terminal's wireless communication function 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, enabling the terminal to communicate with network-side devices and other terminals via wireless communication technology.

[0203] In addition, an operating system runs on top of the aforementioned components. Examples include the iOS operating system, the Android open-source operating system, and the Windows operating system. Among these, the Android open-source operating system can be, for example... Figure 3 As shown.

[0204] Some embodiments of this application provide a chip system applied to a terminal. The chip system includes at least one processor and an interface. The interface is used to receive instructions and transmit them to the at least one processor. The at least one processor executes instructions to cause the terminal to perform 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 above method may be implemented by a modem, etc.

[0205] This application also provides a computer-readable storage medium for storing a computer program for implementing the methods shown in the above-described method embodiments.

[0206] This application also provides a computer program product, which includes a computer program (also referred to as code or instructions) that, when run on a computer, allows the computer to perform the methods shown in the above-described method embodiments.

[0207] Those skilled in the art will recognize that the modules and algorithm steps of the various examples 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 implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art 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 sake of convenience and brevity, the specific working processes of the systems, devices, and modules described above can be referred to the corresponding processes in the foregoing 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, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or modules may be electrical, mechanical, or other forms.

[0210] The modules described as separate components may or may not be physically separate. 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 can be selected to achieve the purpose of this embodiment according to actual needs.

[0211] In addition, the functional modules in the various embodiments of this application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module.

[0212] If the aforementioned functions are implemented as software functional 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 this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0213] The above description is merely a specific embodiment of this application, but the protection scope of the embodiments of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the embodiments of this application should be included within the protection scope of the embodiments of this application. Therefore, the protection scope of the embodiments of this application should be determined by the protection scope of the claims.

Claims

1. A data transmission method, characterized in that, The method includes: When the first application is running, the second application is used to obtain the application information of the first application; Based on the application information, query the first network slice information corresponding to the application information from the User Equipment Routing Policy (URSP); The data stream generated by the first application is transmitted using a Protocol Data Unit (PDU) session activated by the first network slice information; Before obtaining the application information of the first application using the second application, the method further includes: The second application sends a first request to the information management module. The first request is used to obtain system permissions and carries the signature of the second application. The information management module uses the signature to determine whether the second application belongs to the whitelist; If so, the second application obtains system permissions, which are the permissions for the second application to access the application information.

2. The method according to claim 1, characterized in that, The step of querying the first network slice information corresponding to the application information from the User Equipment Routing Policy (URSP) using the application information includes: The second application is used to transmit the application information to the operating system information management module; The information management module is used to transmit the application information to the modem. Using the Modem, based on the application information, query the first network slice information corresponding to the application information from the URSP, where the URSP includes the correspondence between the application information and the first network slice information.

3. The method according to claim 2, characterized in that, The step of transmitting the application information to the information management module using the second application includes: Using the second application, the application information is transmitted to the information management module by calling the first interface.

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

5. The method according to claim 1, characterized in that, The step of querying the first network slice information corresponding to the application information from the User Equipment Routing Policy (URSP) using the application information includes: Using the second application, based on a preset correspondence, the application information is converted into traffic descriptor TD parameters, wherein the preset correspondence includes the correspondence between the application information and the TD parameters; The second application is used to transmit the TD parameters to the information management module; The information management module is used to transmit the TD parameters to the modem. Using the Modem, based on the TD parameters, query the first network slice information corresponding to the application information from the URSP, where the URSP includes the correspondence between the TD parameters and the first network slice information.

6. The method according to any one of claims 2 to 5, characterized in that, The method further includes: The Modem is used to transmit first information to the information management module. The first information is used to indicate that the first application has successfully matched the first network slice information. The first information includes information for instructing the first application. The information management module is used to transmit the first information to the second application. Using the second application, the second interface is called to bind the routing relationship of the first application, wherein the routing relationship is the relationship between the first application and the PDU session.

7. The method according to any one of claims 2 to 5, characterized in that, The transmission of the data stream generated by the first application running using the Protocol Data Unit (PDU) session activated by the first network slice information includes: The modem is used to send a PDU session establishment request to the core network equipment to activate the PDU session. The PDU session establishment request carries the first network slice information. The PDU session establishment response is received from the core network equipment, and the PDU session establishment response is used to indicate that the PDU session has been successfully activated. The data stream is transmitted via the PDU session using the Modem.

8. The method according to any one of claims 1 to 7, characterized in that, The URSP is pre-configured, obtained from core network equipment, or generated via the Attention AT command.

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

10. A data transmission device, characterized in that, Includes a module for performing the method as described in any one of claims 1 to 9.

11. A data transmission device, characterized in that, include: A processor coupled to a memory for storing a computer program, which, when invoked by the processor, causes the apparatus to perform the method as described in any one of claims 1 to 9.

12. A computer-readable storage medium, characterized in that, Used to store a computer program, the computer program including instructions for implementing the method as described in any one of claims 1 to 9.

13. A chip system, characterized in that, It includes at least one processor and a communication interface, the communication interface and the at least one processor being interconnected via a line, the at least one processor being used to run a computer program or instructions to perform the method as described in any one of claims 1 to 9.

14. A computer program product, characterized in that, The computer program product includes computer program code that, when run on a computer, causes the computer to implement the method as described in any one of claims 1 to 9.

Citation Information

Patent Citations

  • Network slice mapping method and related device

    CN113766534A

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

    CN114205239A