Communication method and terminal device
Patent Information
- Application Number
- CN202211589413.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-12
- Publication Date
- 2026-08-21
- Estimated Expiration
- 2042-12-12
AI Technical Summary
然而,现有的5G标准中没有描述如何为不同的应用程序确定匹配的网络切片,以使应用程序的数据流可以通过相应的网络切片进行传输
Smart Images

Figure CN118200938B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of smart terminal technology, and in particular to a communication method and terminal device. Background Technology
[0002] A network slice is a logically isolated network used to support specific network capabilities and characteristics. It is a key technology for meeting the network differentiation requirements of the 5th generation (5G) mobile communication technology proposed by the 3rd generation partnership project (3GPP).
[0003] Typically, different network slices exhibit different network characteristics and require isolation between them to prevent mutual interference. For example, network slices for enhanced mobile broadband (eMBB) services can provide transmission speeds more than 10 times faster than 4G, and can be applied to popular augmented reality (AR) or virtual reality (VR) and high-definition video streaming, providing users with a fast experience. Network slices for massive machine-type communications (mMTC) services require support for massive terminal access but have low bandwidth and no latency requirements. Network slices for ultra-reliable low-latency communication (URLLC) services feature high bandwidth, low latency, and high reliability, and can be applied to scenarios such as cloud gaming and autonomous driving.
[0004] Therefore, different types of network slices are suitable for different data transmission scenarios. However, existing 5G standards do not describe how to determine matching network slices for different applications so that the application's data streams can be transmitted through the appropriate network slices. Summary of the Invention
[0005] To address the aforementioned technical problems, embodiments of this application provide a communication method and a terminal device. This method employs a terminal-centralized approach, determining matching network slices and data processing levels within the terminal device for applications. This makes updating, managing, and maintaining network slice selection rules more convenient, and ensures that the processing level of application business data within the terminal matches the network slice, thus fully leveraging the advantages of network slicing.
[0006] In a first aspect, embodiments of this application provide a communication method. This method is applied in a terminal device, which includes an SDK module, an OS module, and a Modem module. The method includes:
[0007] The SDK module obtains the activation request for establishing a network connection service sent by the target APP. The activation request includes the TD parameter. Based on the URSP rules, the SDK module determines the target network slice corresponding to the target APP according to the TD parameter and sends the identifier of the target network slice to the OS module. The OS module sends the identifier of the target network slice to the Modem module. The Modem module interacts with the network device according to the identifier of the target network slice and associates the target APP with the PDU session that supports the target network slice. The service data of the target APP is processed in the terminal device according to the data processing level matching the target network slice.
[0008] The target app can be any app running on a terminal device that requires a network connection. Different apps have different requirements for network connectivity, such as high speed, high bandwidth, and low latency.
[0009] This method employs a terminal-centric approach, determining the matching network slice and data processing level within the terminal device for the application. Compared to modem-centric and operating system-centric approaches, this makes updating, managing, and maintaining network slice selection rules more convenient. Furthermore, matching the application's service data processing level within the terminal with the network slice fully leverages the advantages of network slicing.
[0010] According to the first aspect, the activation request also includes a TD parameter signature; the corresponding SDK module determines the target network slice corresponding to the target APP based on the TD parameter, which may include: when the SDK module determines that the security verification of the target APP is successful based on the TD parameter signature, it determines the target network slice corresponding to the target APP based on the TD parameter.
[0011] The TD parameter signature can be generated by encrypting the hash value of the TD parameter.
[0012] In this way, the SDK module uses a security verification mechanism to verify the security of the APP, which can prevent the APP from abusing network slicing.
[0013] According to the first aspect, or any implementation of the first aspect above, the SDK module, upon determining that the target APP security verification is successful based on the TD parameter signature, may include:
[0014] The SDK module decrypts the TD parameter signature using the signing public key to obtain the first hash value. The TD parameter signature is generated based on the signing private key that is paired with the signing public key. If the SDK module determines that the first hash value and the second hash value are consistent, it determines that the target APP security verification is successful. The second hash value is obtained by hashing the TD parameter of the target APP.
[0015] According to the first aspect, or any implementation of the first aspect above, the method further includes: the Modem module receiving the updated URSP rules and sending the updated URSP rules to the SDK module so that the SDK module updates the local URSP rules.
[0016] The embodiments of this application adopt a terminal-centralized scheme. Compared with the operating system-centralized scheme and the modem-centralized scheme, the cycle required to update URSP rules is shorter, and the URSP rules are more limited to maintenance and management.
[0017] According to the first aspect, or any implementation of the first aspect above, the method further includes: the SDK module determining the data processing level of the target APP's business data in the terminal device based on the first identifier of the target network slice; or,
[0018] The SDK module determines the data processing level of the target app's business data on the terminal device based on the second identifier of the target network slice and the type of the target network slice; or,
[0019] The SDK module determines the data processing level of the target APP's business data on the terminal device based on the type or priority of the target network slice.
[0020] Here, the first identifier is the identifier of the newly defined network slice. Based on the first identifier of the target network slice, the SDK module determines the data processing level of the target APP's business data in the terminal device, which can be referred to in the first possible implementation method below.
[0021] The second identifier is an existing network slice identifier, but with added related indication information. Based on the second identifier of the target network slice and the type of the target network slice, the SDK module determines the data processing level of the target APP's business data on the terminal device, which can be referred to in the second possible implementation method below.
[0022] The SDK module determines the data processing level of the target APP's business data on the terminal device based on the type or priority of the target network slice. This can be referred to in the third possible implementation method below.
[0023] Since the processing level of application business data within the terminal matches that of network slicing, this fully leverages the advantages of network slicing and avoids the problem of poor business experience caused by a mismatch between network slicing performance and the processing level of business data.
[0024] According to the first aspect, or any implementation of the first aspect above, the SDK module determines the data processing level of the target APP's business data in the terminal device based on the first identifier of the target network slice, including:
[0025] The SDK module determines the data processing level of the target APP's business data on the terminal device based on the first indication information in the first identifier of the target network slice; wherein, the first identifier is a custom identifier of the network slice, and the first indication information is used to indicate the data processing level of the APP on the terminal device.
[0026] The first instruction information can be referred to in the first possible implementation method below.
[0027] According to the first aspect, or any implementation of the first aspect above, the identifier of the target network slice sent by the SDK module to the OS module, and the identifier of the target network slice sent by the OS module to the Modem module, are the first identifier of the target network slice.
[0028] According to the first aspect, or any implementation of the first aspect above, the SDK module determines the data processing level of the target APP's business data in the terminal device based on the second identifier of the target network slice and the type of the target network slice, which may include:
[0029] The SDK module determines the data processing level of the target APP's business data on the terminal device based on the second indication information in the second identifier of the target network slice and the type of the target network slice. The second identifier is the network slice identifier specified in the communication protocol, and the second indication information is a newly added indication information in the network slice identifier, which is used to indicate the data processing level of the APP on the terminal device.
[0030] The first instruction information can be referred to in the second possible implementation method below.
[0031] According to the first aspect, or any implementation of the first aspect above, the identifier of the target network slice sent by the SDK module to the OS module, and the identifier of the target network slice sent by the OS module to the Modem module, are the second identifier of the target network slice.
[0032] According to the first aspect, or any implementation of the first aspect above, the aspects involved in the data processing level include at least one of the following: priority, latency, rate, data security, and data reliability.
[0033] Correspondingly, data processing levels can be priority processing level, latency processing level, rate processing level, security processing level, reliability processing level, etc.
[0034] According to the first aspect, or any implementation of the first aspect above, when the SDK module determines the data processing level of the target APP's business data in the terminal device based on the first identifier of the target network slice, the first indication information is the target parameter; the TD parameters of the target APP include the target parameter; correspondingly,
[0035] The SDK module determines the target network slice corresponding to the target app based on the TD parameters, which may include:
[0036] The SDK module uses the first network slice as the target network slice corresponding to the target APP; wherein, the target parameter value in the first identifier of the first network slice is the same as the target parameter value of the target APP.
[0037] The target parameter can be the IS parameter mentioned below.
[0038] In this way, the SDK module can match the corresponding target network slice to the APP based on the target parameter value.
[0039] According to the first aspect, or any of the implementation methods of the first aspect above, the data processing level of the APP on the terminal device is different when the value of the target parameter is different.
[0040] According to the first aspect, or any of the above implementations of the first aspect, the target parameter values of the target APP are determined through negotiation between the developer of the target APP and the manufacturer of the terminal device.
[0041] In this way, the developer of the target app can negotiate with the manufacturer of the terminal device to determine the data processing level that meets their business needs.
[0042] Secondly, embodiments of this application provide a terminal device, which includes one or more processors; a memory; and one or more computer programs, wherein the one or more computer programs are stored in the memory, and when the computer programs are executed by the one or more processors, the terminal device performs a communication method as described in the first aspect or any one of the first aspects.
[0043] The terminal device includes an SDK module, an OS module, and a Modem module.
[0044] The SDK module is used to: obtain the activation request for establishing a network connection service sent by the target APP; wherein, the activation request includes the Path Descriptor TD parameter;
[0045] The SDK module is also used to: determine the target network slice corresponding to the target APP based on the UE routing policy URSP rules and the TD parameters, and send the identifier of the target network slice to the OS module;
[0046] The OS module is used to: send the identifier of the target network slice to the Modem module;
[0047] The Modem module is used to: interact with network devices based on the identifier of the target network slice and associate the target APP with a PDU session that supports the target network slice;
[0048] Specifically, the target APP's business data is processed on the terminal device according to the data processing level that matches the target network slice.
[0049] The second aspect and any implementation thereof correspond to the first aspect and any implementation thereof, respectively. The technical effects of the second aspect and any implementation thereof are similar to those of the first aspect and any implementation thereof, and will not be repeated here.
[0050] Thirdly, embodiments of this application provide a chip including a processing circuit and transceiver pins. The transceiver pins and the processing circuit communicate with each other via an internal connection path. The processing circuit executes a communication method as described in the first aspect or any one thereof to control the receiving pin to receive signals and to control the transmitting pin to transmit signals.
[0051] The third aspect and any implementation thereof correspond to the first aspect and any implementation thereof, respectively. The technical effects of the third aspect and any implementation thereof are similar to those of the first aspect and any implementation thereof, and will not be repeated here.
[0052] Fourthly, embodiments of this application provide a computer program product, including a computer program that, when run, causes a computer to perform a communication method as described in the first aspect and any one thereof.
[0053] The fourth aspect and any implementation thereof correspond to the first aspect and any implementation thereof, respectively. The technical effects of the fourth aspect and any implementation thereof are similar to those of the first aspect and any implementation thereof, and will not be repeated here.
[0054] Fifthly, embodiments of this application provide a computer-readable storage medium. The computer-readable storage medium includes a computer program that, when executed on an electronic device, causes the electronic device to perform the communication method of the first aspect and any one thereof.
[0055] The fifth aspect and any implementation thereof correspond to the first aspect and any implementation thereof, respectively. The technical effects of the fifth aspect and any implementation thereof are similar to those of the first aspect and any implementation thereof, and will not be repeated here. Attached Figure Description
[0056] Figure 1 This is a schematic diagram of the S-NSSAI data structure;
[0057] Figure 2 This is a schematic diagram of a 5G communication system provided in an embodiment of this application;
[0058] Figure 3 A schematic diagram of an S-NSSAI data structure provided in an embodiment of this application;
[0059] Figure 4 A schematic diagram of the hardware structure of an electronic device as an example;
[0060] Figure 5 A schematic diagram of the software structure of an electronic device as an example;
[0061] Figure 6 A flowchart illustrating the module interaction involved in the communication method provided in the embodiments of this application;
[0062] Figure 7 This is a schematic diagram of the data structure for URSP rules;
[0063] Figure 8 A schematic diagram of a URSP rule provided in an embodiment of this application.
[0064] Figure 9 A schematic diagram illustrating the module interactions involved in the communication method provided in the embodiments of this application;
[0065] Figure 10 A flowchart illustrating the module interaction involved in the communication method provided in the embodiments of this application;
[0066] Figure 11 This is a schematic diagram illustrating a scenario of encrypted TD parameters as an example. Detailed Implementation
[0067] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0068] In this article, the term "and / or" is merely a description of the relationship between related objects, indicating that there can be three relationships. For example, A and / or B can represent three situations: A exists alone, A and B exist simultaneously, and B exists alone.
[0069] The terms "first" and "second," etc., used in the specification and claims of this application are used to distinguish different objects, not to describe a specific order of objects. For example, "first target object" and "second target object," etc., are used to distinguish different target objects, not to describe a specific order of target objects.
[0070] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0071] In the description of the embodiments in this application, unless otherwise stated, "multiple" means two or more. For example, multiple processing units means two or more processing units; multiple systems means two or more systems.
[0072] The following will first introduce some concepts involved in this application:
[0073] 1. Network slicing:
[0074] 5G will usher in an era of the Internet of Everything. 5G supports three major scenarios: eMBB, mMTC, and URLLC, which contain a variety of differentiated applications.
[0075] eMBB: Based on breakthroughs in wireless spectrum utilization and bandwidth technology, 5G can provide transmission speeds more than 10 times faster than 4G. For currently popular AR / VR and high-definition video streaming, only 5G's ultra-high speeds can meet the demands; 4G's transmission speeds are insufficient. Currently, watching high-definition or large interactive VR games requires a wired connection to obtain data. In the future, with wireless connections via 5G networks, VR / AR will offer a much faster experience.
[0076] mMTC: Through technologies such as multi-user shared access and ultra-dense heterogeneous networks, 5G can support 1 million devices per square kilometer, 10 times that of 4G. With the rapid development of smart cities, public facilities such as streetlights, manhole covers, and water meters already have network connectivity and can be remotely managed, but 5G will bring even greater innovation. Based on the powerful connectivity of 5G networks, public equipment from various sectors of the city can be connected to an intelligent management platform. These public facilities can work collaboratively through the 5G network, requiring only a small number of maintenance personnel for unified management, greatly improving the city's operational efficiency.
[0077] URLLC: The most typical application of 5G in a 5G scenario is autonomous driving. The most common scenarios for autonomous driving include emergency braking, vehicle-to-vehicle, vehicle-to-pedestrian, and vehicle-to-infrastructure communication, which involve multiple communications occurring simultaneously and require instantaneous processing of large amounts of data and decision-making. Therefore, the network needs to have high bandwidth, low latency, and high reliability, and 5G networks are capable of handling such scenarios.
[0078] In the 4G era, a single network was used to meet all application scenarios and customer groups. For example, to provide Narrowband Internet of Things (NB-IoT) capabilities, the NB-related features on network elements were enabled. To build network reliability, redundancy and backup at the network element device level were added. By continuously adding features, the demands of the mass market were met.
[0079] However, the requirements of various businesses in vertical industries in terms of latency, number of connections, reliability, and security vary greatly and are unpredictable. For example, AR business requires a network with ultra-high bandwidth of >1600Mbps, energy meter reading business requires the network to provide massive connections, and autonomous driving requires the network to guarantee end-to-end low latency of a few milliseconds and high reliability of over 99.999%. It is simply impossible to meet all current needs and potential future needs with a single network.
[0080] Network slicing technology allows operators to divide a single hardware infrastructure into multiple virtual networks, allocating resources on demand and flexibly combining capabilities to meet the diverse needs of various services. When a new requirement arises that the current network cannot meet, the operator only needs to create a new virtual slice network for that requirement, without affecting the existing slice network, allowing for the fastest possible service deployment.
[0081] Network slicing uses slicing technology to virtualize multiple end-to-end networks on a general-purpose hardware platform. Each network has different network functions and adapts to different types of service requirements. After purchasing physical resources, operators use these resources to virtualize an eMBB slice network for mass internet access services. Then, for the smart metering needs of certain vendors in vertical industries, they use the same physical resources to virtualize an mMTC slice network. The two slice networks provide services for different business scenarios.
[0082] While the network function requirements of various industries across different sectors are diverse, these requirements can all be broken down into demands for network bandwidth, connection capacity, latency, reliability, and other network functionalities. The 5G standard also summarizes the network function requirements of different services into three typical scenarios, corresponding to the following network slice types: eMBB slice, mMTC slice, and URLLC slice.
[0083] 2. Single Network Slice Selection Assistance Information (S-NSSAI):
[0084] S-NSSAI is used to identify a network slice. Depending on the operator's operational or deployment needs, one S-NSSAI can be associated with one or more network slice instances, and one network slice instance can be associated with one or more S-NSSAIs. For example, eMBB slice 1, eMBB slice 2, and eMBB slice 3 are all eMBB type slices, and their S-NSSAI values are all 0x01000000; eMBB+mMTC slice 4 can provide services for both eMBB and mMTC types, so it is both an eMBB and an mMTC type slice, with corresponding S-NSSAI values of 0x01000000 and 0x02000000 respectively.
[0085] like Figure 1 As shown, S-NSSAI consists of two parts: Slice / ServiceType (SST) and Slice Differentiator (SD).
[0086] SST refers to the expected network slicing behavior in terms of characteristics and services. The standard value range for SST is 1, 2, or 3, where 1 represents eMBB, 2 represents URLLC, and 3 represents Massive Internet of Things (MIoT).
[0087] SD is an optional piece of information used to supplement SST to distinguish multiple network slices of the same slice / service type.
[0088] The SST and SD parts are combined to represent the slice type and multiple slices of the same type. For example, S-NSSAI values of 0x01000000, 0x02000000, and 0x03000000 represent eMBB type slices, URLLC type slices, and MIoT type slices, respectively. S-NSSAI values of 0x01000001 and 0x01000002 represent eMBB type slices, serving user group 1 and user group 2, respectively.
[0089] 3. Network Slice Selection Assistance Information (NSSAI):
[0090] NSSAI is a collection of S-NSSNIs. The NSSAIs used in 5G networks include Requested NSSAI, Allowed NSSAI, and Configured NSSAI, and their specific definitions are shown in Table 1.
[0091] Table 1
[0092]
[0093] 4. Slice Selection Process
[0094] In the UE registration process, the radio access network (RAN) first selects an initial AMF (Application Service Provider) for the UE based on locally stored information and the UE registration request message. However, the initial AMF may not support the network slice the UE wants to use; for example, the initial AMF may only support URLLC type network slices, but the UE requests an eMBB type network slice. If the initial AMF cannot provide service to the UE, it queries the network slice selection function (NSSF) to select a target AMF that supports the UE's network slice. Then, it sends the UE's registration request message to the target AMF directly or indirectly, which processes the UE's registration request and provides network services to the UE. Specifically, this may include the following steps:
[0095] Step 1. When a UE registers with a PLMN through an access type, it sends a registration request message to the RAN. If the UE has the Configured NSSAI for this PLMN or the Allowed NSSAI for this PLMN and this access type stored on it, then the UE will carry the Requested NSSAI information in the non-access stratum (NAS) registration request message and the AN message. The Requested NSSAI contains the S-NSSAI of the slice that the UE wishes to register with.
[0096] Step 2. The RAN selects the initial AMF based on either the globally unique AMF identifier (GUAMI) or the requested NSSAI. If the UE does not provide a requested NSSAI and GUAMI in the AN message, the RAN should send the registration request message from the UE to the default AMF.
[0097] Step 3. The initial AMF queries the unified data management (UDM) to obtain UE subscription information, including Subscribed S-NSSAIs. The initial AMF determines whether it can provide services to the UE based on the received Requested NSSAI, Subscribed S-NSSAI, and local configuration. If the AMF can provide services to the UE, it remains the UE's serving AMF. The AMF then constructs an Allowed NSSAI based on the Subscribed S-NSSAI and Requested NSSAI and returns the Allowed NSSAI to the UE via a registration acceptance message. If the initial AMF cannot provide services to the UE or cannot make a determination, it needs to query the NSSF.
[0098] Step 4. The AMF sends the Requested NSSAI, Subscribed S-NSSAI, PLMN of the Subscription Permanent Identifier (SUPI), Tracking Area Identifier (TAI) and other information to the NSSF for querying.
[0099] Step 5. Based on the received information and local configuration, the NSSF selects the AMF set (AMFSet) or candidate AMF list that can serve the UE, the Allowed NSSAI applicable to this access type, and may also select the network slice instance that serves the UE, and the network repository function (NRF) within the instance used to select the network function (NF), and sends this information to the initial AMF.
[0100] Step 6. If the initial AMF is not in the AMF Set and the AMF address information is not stored locally, the initial AMF obtains a list of candidate AMFs by querying the NRF. The NRF returns a list of available AMFs, including an AMF Pointer and address information. The initial AMF selects one from this list as the target AMF. If the initial AMF cannot obtain a list of candidate AMFs by querying the NRF, the initial AMF needs to send the UE's registration request message to the target AMF through the RAN. The message sent by the initial AMF to the RAN contains the AMF Set and Allowed NSSAI.
[0101] Step 7. If the initial AMF decides to send the NAS message directly to the target AMF based on the local policy and subscription information, the initial AMF will send the UE registration request message and other information obtained from the NSSF except for the AMF set to the target AMF.
[0102] If the initial AMF decides to forward the NAS message to the target AMF via the RAN based on local policies and subscription information, the initial AMF sends a reroute NAS message to the RAN. The reroute NAS message includes the target AMF set information, a registration request message, and relevant information obtained from the NSSF.
[0103] Step 8. After receiving the registration request message sent in step 7, the target AMF continues to execute the relevant steps of the registration process and finally sends a registration acceptance message to the UE, which carries information such as Allowed NSSAI.
[0104] With the introduction of network slicing technology, operators will be able to provide network capabilities with different functionalities, offering "dedicated" networks for users with varying business needs, ensuring high-quality service levels, and meeting differentiated business requirements. Users will also be able to utilize more advanced applications, further stimulating the development of new industry applications. Ultimately, this will achieve the goals of improving network resource utilization efficiency, optimizing operator network construction investment, and building a flexible and agile 5G network.
[0105] The following explanation uses the network slicing requirements of cloud gaming applications as an example.
[0106] Cloud gaming applications are based on real-time audio and video streaming technology. The server sends real-time audio and video streams to the client, while the client sends control command streams to the server, which then applies these commands to the game. The entire data processing loop involves server-side game rendering, audio and video encoding, network transmission, and client-side audio and video decoding and rendering. While these processes all have a certain time consumption, network transmission is the factor that has the greatest impact on user experience. Given the unique business scenarios of cloud gaming, higher demands are placed on the network: low latency, high bandwidth, and zero or minimal jitter.
[0107] Therefore, cloud gaming applications require low latency in network slicing. Using existing 4G and Wi-Fi networks, under normal network conditions, cloud gaming latency fluctuates between approximately 50ms and 140ms. For games with high latency requirements (e.g., action games, fighting games, multiplayer online battle arena games, first-person shooters, racing games), cloud gaming offers a noticeable difference in experience compared to local gaming, necessitating further reductions in latency. VR devices, due to the unique nature of their headsets, can cause motion sickness with high latency; therefore, latency needs to be kept below 20ms to effectively control adverse reactions.
[0108] Given that different applications have different business scenarios, their requirements for network slicing also vary. Therefore, how terminal devices can determine the network slice that matches the application based on its business characteristics or needs, and associate the application with a PDU (Protocol Data Unit) session that supports the network slice, so that the application's business data can be transmitted or routed through the PDU session that supports the network slice, is a problem that needs to be solved.
[0109] URSP (UE Route Selection Policy) rules are the core rules for configuring and managing network slices on terminals. They operate on the terminal during the network slicing service process, guiding the terminal to associate service data with matching network slices based on service characteristics. However, the URSP mechanism is not yet fully defined in the standard; therefore, standardized mechanisms need to be developed to implement URSP schemes and further facilitate industrialization.
[0110] Figure 2This illustration shows a schematic diagram of a 5G communication system provided in an embodiment of this application. The communication system may include at least one of a UE, an (R)AN device, an AMF device, a Session Management Function (SMF) device, a User Plane Function (UPF) device, a Policy Control Function (PCF) device, an NSSF device, an Application Function (AF) device, and a UDM device.
[0111] The terminal device in the embodiments of this application, such as... Figure 2 The UE shown can be a device used to implement wireless communication functions. For example, it can be deployed on land, including indoors or outdoors, handheld or vehicle-mounted; it can also be deployed on water (such as ships); and it can also be deployed in the air (such as airplanes, balloons, and satellites). Among them, the terminal equipment can be a UE, access terminal, terminal unit, terminal station, mobile station, mobile station, remote station, remote terminal, mobile device, wireless communication equipment, terminal agent, or terminal device in a 5G network or a future evolved PLMN. Access terminals can be cellular phones, cordless phones, Session Initiation Protocol (SIP) phones, Wireless Local Loop (WLL) stations, personal digital assistants (PDAs), handheld devices with wireless communication capabilities, computing devices or other processing devices connected to a wireless modem, in-vehicle devices or wearable devices, virtual reality (VR) terminal devices, augmented reality (AR) terminal devices, wireless terminals in industrial control, wireless terminals in self-driving, wireless terminals in remote medical care, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, etc. Terminal devices can be mobile or fixed.
[0112] The access network device in the embodiments of this application, such as Figure 2The (R)AN device shown is a device that provides wireless communication functions for terminal devices. For example, base stations include, but are not limited to: next-generation base stations (gnodeB, gNB) in 5G, evolved node B (eNB), radio network controller (RNC), node B (NB), basestation controller (BSC), base transceiver station (BTS), home base station (e.g., home evolved nodeB, or home node B, HNB), baseband unit (BBU), transmitting and receiving point (TRP), transmitting point (TP), and mobile switching center.
[0113] The mobility management network element in the embodiments of this application, such as Figure 2 The AMF device shown primarily includes the following access and mobility-related functions: connection management, mobility management, registration management, access authentication and authorization, reachability management, and security context management.
[0114] The session management network element in this application embodiment, such as Figure 2 The SMF device shown is used for session management in mobile networks, such as session establishment, modification, and release. Specific functions include assigning Internet Protocol (IP) addresses to terminal devices, selecting a UPF (User Packet Forwarder) to provide packet forwarding capabilities, selecting Service and Session Continuity (SSC) modes, and handling roaming and other session-related functions.
[0115] User plane function network elements in the embodiments of this application, such as Figure 2 The UPF device shown primarily includes user plane-related functions such as packet routing and transmission, packet inspection, service usage reporting, QoS processing, lawful monitoring, uplink packet inspection, and downlink packet storage. UPF can connect to a data network (DN).
[0116] The policy control function network element in the embodiments of this application, such as Figure 2 The PCF device shown primarily includes: unified policy formulation, policy control provision, and policy-related functions such as retrieving policy decision-related subscription information from the User Data Repository (UDR).
[0117] The network slicing selection function network element in the embodiments of this application, such as Figure 2 The NSSF device shown has the following main functions: selecting a set of network slice instances for the UE, determining the allowed NSSAI, and determining the AMF set that can serve the UE.
[0118] The application functional network elements in the embodiments of this application, such as Figure 2 The AF device shown is responsible for interacting with the 3GPP core network to provide services, including interacting with the network exposure function (NEF) and policy architecture.
[0119] The unified data management network element in this application embodiment, such as Figure 2 The UDM device shown supports authentication trust processing, user identity processing, access authorization, registration and mobility management, subscription management, and SMS management in the 3GPP authentication and key negotiation mechanism.
[0120] The aforementioned network elements can be implemented by specified hardware, or by software instances on specified hardware, or by virtual functions instantiated on a suitable platform; this application does not limit them in this way.
[0121] In a service-oriented architecture, service-based interfaces are used in the control plane. For example, Namf is a service-based interface provided by the AMF (Advanced Network Function) element, allowing the AMF element to communicate with other network functions. Nsmf is a service-based interface provided by the SMF (Supervisory Network Function), allowing the SMF to communicate with other network functions. Nnssf is a service-based interface provided by the NSSF (Non-Standard Network Function), allowing the NSSF element to communicate with other network functions. A functional network element can expose its capabilities to other authorized functional network elements through service-based interfaces, thereby providing network function (NF) services. In other words, NF services refer to the various capabilities that can be provided.
[0122] Furthermore, the embodiments of this application can also be applied to other future communication technologies. The network architecture and business scenarios described in this application are for the purpose of more clearly illustrating the technical solutions of this application and do not constitute a limitation on the technical solutions provided in this application. As those skilled in the art will understand, with the evolution of network architecture and the emergence of new business scenarios, the technical solutions provided in this application are also applicable to similar technical problems. Specifically, this application is applicable to communication networks with network slicing. A network slice is a logically isolated network used to support specific network capabilities and characteristics.
[0123] To address the aforementioned issues, embodiments of this application provide a novel network slice selection rule. In the corresponding communication method, the UE can determine network slices that match different applications based on this new network slice selection rule, thereby associating the applications with PDU sessions that support the corresponding network slices. Furthermore, the UE can also determine the data processing level within the service data terminal equipment of the application based on this new network slice selection rule.
[0124] It should be noted that when the UE associates the first application with the PDU session that supports the first network slice, it means that the UE transmits or routes the data stream of the first application through the PDU session that supports the first network slice.
[0125] The novel network slice selection rule provided in this application is part of the URSP rule. For example, the network slice selection rule can be set in the route selection descriptor (RSD) of the URSP rule. Therefore, this application can also be described as providing a novel URSP rule.
[0126] Currently, the mainstream URSP rule enforcement methods include modem-centralized and operating system (OS-centralized) schemes. In the modem-centralized scheme, the matching process between service attributes and network slices is implemented within the terminal's modem, which uses URSP rules to bind the characteristic attributes of the terminal's service applications to network slices. In the operating system-centralized scheme, the matching process is implemented within the terminal's operating system, which uses URSP rules to bind the characteristic attributes of the terminal's service applications to network slices.
[0127] This application adopts a terminal-centralized approach. In this application embodiment, the matching process between service attributes and network slices, as well as the matching process between service data and data processing levels, are implemented in the terminal, for example, in the SDK (Software Development Kit) or middleware developed and maintained by the terminal company. The SDK or middleware in the terminal implements the corresponding binding between the terminal application and the network slice according to the new network slice selection rules (or the new URSP rules).
[0128] Compared to centralized modem and operating system solutions, the terminal-centralized solution provided in this application embodiment facilitates the updating, management, and maintenance of network slice selection rules. Furthermore, it grants terminal companies greater autonomy and promotes ecosystem collaboration. Specifically, the application developer can negotiate and determine the network slice selection rules with the terminal device provider. This negotiation can specify the network slice corresponding to the application and the data processing level of the application on the terminal device. Thus, the SDK or middleware in the terminal can select a matching network slice for the application based on the corresponding network slice selection rules, associating the application with a PDU session that supports the corresponding network slice. Moreover, the application's business data can be processed on the terminal device according to the appropriate data processing level.
[0129] The new network slice selection rules provided in this application embodiment can be defined by standards organizations (such as 3GPP) or by telecommunications operators. The new network slice selection rules are configured on the network side or the terminal side. The network side can refer to network equipment, such as gNB (the next generation Node B), AMF, SMF (Session Management function), PCF (Policy Control function), etc. (or network elements). The terminal side can refer to terminal equipment, such as UE.
[0130] When new network slice selection rules are configured on the network side, these rules can be distributed to the terminal side via network devices. In one implementation, the H-PCF (Home PCF) can configure the new network slice selection rules to the terminal device via the AMF and gNB. For example, the new network slice selection rules can be configured to the terminal device via a registration command message. In another implementation, the telecommunications operator can configure the new network slice selection rules to the terminal device.
[0131] A novel network slice selection rule provided in this application embodiment may include a mapping relationship between applications and network slices, and may also include a mapping relationship between the data processing level of an application on a terminal device and the network slice corresponding to the application. Thus, the new network slice selection rule can not only be used to determine the network slice corresponding to an application and support PDU sessions for the corresponding network slice, but also to determine the data processing level of an application on a terminal device.
[0132] The data processing level, also known as data processing grade, data processing method, or internal processing level / method, indicates the level of data processing performed by the app within the terminal. For example, data processing levels can be priority processing level, latency processing level, rate processing level, security processing level, or reliability processing level. It should be noted that the data processing level of the app on the terminal device is determined through negotiation between the app developer and the terminal device provider.
[0133] The SDK or middleware in the terminal can determine the network slice corresponding to the application based on URSP rules, support PDU sessions for the corresponding network slice, and determine the data processing level of the application in the terminal device based on network slice indication information. For example, the network slice indication information can be a network slice identifier, or information describing the network slice, such as S-NSSAI.
[0134] Regarding network slice indication information, this application provides several possible implementation methods.
[0135] (1) In the first possible implementation, the network slice indication information is a newly defined network slice identifier, which is used to identify the network slice type. Among them, compared with the existing network slice identifier (such as S-NSSAI), the newly defined network slice identifier can not only be used to indicate the network slice corresponding to the application, so that the terminal device can associate the application with the PDU session that supports the network slice, but also to indicate the data processing level corresponding to the application, so as to better meet the business needs of the application.
[0136] For example, the newly defined network slice identifier data structure adds first indication information to the existing network slice identifier data structure. For example, the first indication information can be an internal slice (IS) parameter. Optionally, in the newly defined network slice identifier, the first indication information can be set in the SD part of the network slice identifier S-NSSAI, such as... Figure 3 As shown in (a), the first indication information can also be set in the SST part of the network slice identifier S-NSSAI, such as Figure 3 As shown in (b).
[0137] The first indication information is used to indicate the data processing level of the application on the terminal device. For example, the first indication information may be a newly defined slice parameter (such as type, name, etc., which is different from the existing network slice type or name) by the terminal device manufacturer. This embodiment does not limit the form of the first indication information.
[0138] The first indication information may include one or more bits. When the value of the first indication information is different, the corresponding application has a different data processing level in the terminal device.
[0139] In one example, the data processing level of an application on a terminal device can be a priority level, such as high priority, medium priority, low priority, etc. When the priority level is different, the network transmission channels corresponding to the application are different or not exactly the same.
[0140] In one example, the data processing level of an application on a terminal device can be a latency level, such as 1ms, 10ms, 100ms, or low, medium, and high latency levels. Different latency levels correspond to different or not entirely the same network transmission channels for the application.
[0141] In one example, the data processing level of an application on a terminal device can be a rate processing level, such as 1Mbps, 10Mbps, 100Mbps, 1000Mbps, or low, medium, and high rates. When the rate processing level is different, the network transmission channels corresponding to the application are different or not entirely the same.
[0142] In one example, the data processing level of an application on a terminal device can be a security processing level, such as normal, TEE (Trusted Execution Environment), SE (Secure Element), or low, medium, and high security levels. When the security processing level differs, the network transmission channels corresponding to the application may differ or not be entirely the same.
[0143] In one example, the data processing level of an application on a terminal device can be a reliability processing level, such as 99%, 99.9%, 99.99%, 99.999%, or low, medium, and high reliability levels. Different reliability processing levels correspond to different or not entirely the same network transmission channels for the application. Specifically, a reliability processing level of "x%" indicates that the maximum possible service interruption time for the terminal device after one year of continuous operation is (1-x%)*365*24. It can be understood that the shorter the maximum possible service interruption time for the terminal device, the higher the reliability processing level. For example, a reliability level of "99.9%" means that the maximum possible service interruption time for the terminal device after one year of continuous operation is (1-99.9%)*365*24 = 8.76 hours, and a reliability level of "99.99%" means that the maximum possible service interruption time for the terminal device after one year of continuous operation is (1-99.99%)*365*24 = 0.876 hours = 52.6 minutes.
[0144] Table 2 illustrates, for example, a mapping relationship between network slice identifiers, first indication information, and the corresponding data processing level of an application in a terminal device.
[0145] Table 2
[0146] Network slicing First instruction information The data processing level of the application on the terminal device S-NSSAI 1 00 First priority processing level S-NSSAI 2 01 Second priority processing level S-NSSAI 3 10 Level 1 Delay Handling S-NSSAI 4 11 Second delay processing level
[0147] As shown in Table 2, taking the first indication information as an example, which includes 2 bits, "00", "01", "10" and "11" respectively identify different data processing levels. Specifically, when the first indication information carried in S-NSSAI 1 is "00", it indicates that the data processing level corresponding to the application in the terminal device is the first priority processing level, and the terminal device associates the application with a PDU session that supports S-NSSAI 1; when the first indication information carried in S-NSSAI 2 is "01", it indicates that the data processing level corresponding to the application in the terminal device is the second priority processing level, and the terminal device associates the application with a PDU session that supports S-NSSAI 2; when the first indication information carried in S-NSSAI 3 is "10", it indicates that the data processing level corresponding to the application in the terminal device is the first latency processing level, and the terminal device associates the application with a PDU session that supports S-NSSAI 3; when the first indication information carried in S-NSSAI 4 is "11", it indicates that the data processing level corresponding to the application in the terminal device is the second latency processing level, and the terminal device associates the application with a PDU session that supports S-NSSAI 4.
[0148] The first priority processing level differs from the second priority processing level; the first priority processing level can be higher than the second priority processing level. For example, a terminal device can use the first priority processing level for both call and game applications. When both applications are running simultaneously, the data stream from the call application can be processed first. Similarly, the first latency processing level also differs from the second latency processing level; the first latency processing level can be higher than the second latency processing level, meaning the processing latency corresponding to the first latency processing level is less than the processing latency corresponding to the second latency processing level.
[0149] (2) In the second possible implementation, the network slice indication information is an existing network slice identifier, and a second indication information is added to the existing network slice identifier. For example, the second indication information can be added to the SST part, SD part, or NSSAI Information Element Identifier (IEI) of the network slice identifier.
[0150] The second indication information may include one or more bits indicating the data processing level of the application in the terminal device, which corresponds to the network slice type (or network slice priority). For example, when the network slice type is low latency, the corresponding data processing level is low latency processing level; when the network slice type is high speed, the corresponding data processing level is high speed processing level, and so on.
[0151] Table 3 illustrates, for example, a mapping relationship between network slice identifier, network slice type, second indication information, and the corresponding data processing level of the application in the terminal device.
[0152] Table 3
[0153] Network slicing Network slice type Second instruction information The data processing level of the application on the terminal device S-NSSAI 1 Low latency 1 Low latency processing level S-NSSAI 2 High speed 1 High-speed processing level S-NSSAI 3 High security 1 High security processing level S-NSSAI 4 High reliability 1 High reliability processing level S-NSSAI 5 High bandwidth 1 High bandwidth processing level
[0154] For example, as shown in Table 3, network slice S-NSSAI 1 is a low-latency network slice. The identifier of network slice S-NSSAI 1 includes a second indication information "1". This second indication information "1" indicates that the data processing level corresponding to the application in the terminal device is a low-latency processing level. Here, low-latency processing level can refer to the terminal device's internal priority processing of business data, such as priority scheduling, priority queuing, early transmission, and priority sending.
[0155] In this way, when the network slice corresponding to the application service is a low-latency network slice, the data processing level of the service inside the terminal device is a low-latency processing level, which can meet the low latency requirements of the service and avoid the problem of poor service experience caused by low network slice latency but high internal processing latency of the terminal device. It can give full play to the advantages of low-latency network slices and meet the service requirements.
[0156] For example, as shown in Table 3, the type of network slice S-NSSAI 2 is a high-speed network slice. After adding the second indication information "1" to the identifier of network slice S-NSSAI 2, the second indication information "1" can indicate that the data processing level corresponding to the application in the terminal device is a high-speed processing level. Here, high-speed processing level can refer to the terminal device allocating more processing resources to process business data. Processing resources can be, for example, memory resources, computing resources (such as CPU (central processing unit), GPU (graphics processing unit), NPU (neural-network processing unit), etc.).
[0157] In this way, when the network slice corresponding to the application service is a high-speed network slice, the terminal device's internal processing level for that service is also a high-speed processing level. This ensures the high-speed requirements of the service and avoids the problem of poor service experience caused by a high network slice rate but a low processing speed within the terminal device. It can fully leverage the advantages of high-speed network slices to meet service needs.
[0158] For example, as shown in Table 3, the network slice S-NSSAI 3 is a high-security network slice. After adding the second indication information "1" to the identifier of the network slice S-NSSAI 3, the second indication information "1" can indicate that the data processing level of the application in the terminal device is a high-security processing level. Here, high-security processing level can mean that the terminal device processes business data in a high-security zone (such as TEE, SE, etc.), and / or the terminal device uses a high-encryption method for business data to ensure the security of the business data.
[0159] In this way, when the network slice corresponding to the application service is a high-security network slice, the terminal device's internal processing level for the service is also a high-security processing level. This ensures the high security requirements of the service and avoids the problem of poor service experience caused by high network slice security but low security during internal processing on the terminal device. It can fully leverage the advantages of high-security network slices and meet business needs.
[0160] For example, as shown in Table 3, the network slice S-NSSAI 4 is a high-reliability network slice. After adding the second indication information "1" to the identifier of the network slice S-NSSAI 4, the second indication information "1" can indicate that the data processing level corresponding to the application in the terminal device is a high-reliability processing level. Here, high-reliability processing level can mean that the terminal device performs multiple backups and / or multiple transmissions of business data to ensure the reliability of the business data.
[0161] In this way, when the network slice corresponding to the application service is a high-reliability network slice, the processing level of the service inside the terminal device is also a high-reliability processing level. This can guarantee the high reliability requirements of the service and avoid the problem of poor service experience caused by high network slice reliability but low reliability during processing inside the terminal device. It can fully leverage the advantages of high-reliability network slices to meet service needs.
[0162] For example, as shown in Table 3, the network slice S-NSSAI 5 is a high-bandwidth network slice. After adding the second indication information "1" to the identifier of the network slice S-NSSAI 5, the second indication information "1" can indicate that the data processing level corresponding to the application in the terminal device is a high-bandwidth processing level. The high-bandwidth processing level can be, for example, the terminal device using a larger bandwidth (e.g., 80M / 120M) frequency band to transmit service data, or the terminal device using multiple frequency bands simultaneously to transmit data.
[0163] In this way, when the network slice corresponding to the application service is a high-bandwidth network slice, the terminal device's internal processing level for that service is also a high-bandwidth processing level. This ensures the high bandwidth requirements of the service and avoids the problem of poor service experience caused by large network slice bandwidth but small bandwidth during internal processing by the terminal device. It can fully leverage the advantages of high-bandwidth network slices to meet service needs.
[0164] (3) In the third possible implementation, the existing network slice identifier indicates the data processing level of the application in the terminal device, which corresponds to the network slice type (or network slice priority). In this implementation, no indication information is added to the existing network slice identifier; instead, the data processing level of the application in the terminal device is implicitly indicated based on the network slice type.
[0165] Table 4 illustrates an example of a mapping relationship between network slice identifier, network slice type, and the corresponding data processing level of an application on a terminal device.
[0166] Table 4
[0167] Network slicing Network slice type The data processing level of the application on the terminal device S-NSSAI 1 Low latency Low latency processing level S-NSSAI 2 High speed High-speed processing level S-NSSAI 3 High security High security processing level S-NSSAI 4 High reliability High reliability processing level
[0168] For example, as shown in Table 4, network slice S-NSSAI 1 is a low-latency network slice, implicitly indicating that the application's data processing level in the terminal device is a low-latency processing level; network slice S-NSSAI 2 is a high-speed network slice, implicitly indicating that the application's data processing level in the terminal device is a high-speed processing level; network slice S-NSSAI 3 is a high-security network slice, implicitly indicating that the application's data processing level in the terminal device is a high-security processing level; and network slice S-NSSAI 4 is a high-reliability network slice, implicitly indicating that the application's data processing level in the terminal device is a high-reliability processing level.
[0169] Table 5 illustrates an example of a mapping relationship between network slice identifier, network slice priority, and application processing priority level on a terminal device.
[0170] Table 5
[0171] Network slicing Network slice priority Application processing priority on terminal devices S-NSSAI 1 high high S-NSSAI 2 middle middle S-NSSAI 3 Low Low
[0172] Assume that network slice priorities can include three levels: high, medium, and low. Correspondingly, the processing priority of an application on a terminal device can also include three levels: high, medium, and low. For example, as shown in Table 5, network slice S-NSSAI 1 has a "high" priority, and the application corresponding to network slice S-NSSAI 1 also has a "high" processing priority on the terminal device; network slice S-NSSAI 2 has a "medium" priority, and the application corresponding to network slice S-NSSAI 2 also has a "medium" processing priority on the terminal device; network slice S-NSSAI 3 has a "low" priority, and the application corresponding to network slice S-NSSAI 3 also has a "low" processing priority on the terminal device.
[0173] The priority of network slice S-NSSAI 1 is "low," and the processing priority of the application corresponding to network slice S-NSSAI 1 on the terminal device is also "low." That is, when the priority of the network slice corresponding to the application is "high," the terminal device's internal processing priority for the application's services is also "high," thus ensuring the application's service requirements (such as low latency and high reliability). When the priority of the network slice corresponding to the application is "medium," the terminal device's internal processing priority for the application's services is also "medium," striving to ensure the application's service requirements (such as low latency). When the priority of the network slice corresponding to the application is "low," the terminal device's internal processing priority for the application's services is also "low," to reasonably meet the application's service requirements.
[0174] Table 6 illustrates an example of a mapping relationship between network slice identifier, network slice priority, and application processing priority level on a terminal device.
[0175] Table 6
[0176] Network slicing Network slice priority Application processing priority on terminal devices S-NSSAI 1 high high S-NSSAI 2 Low Low
[0177] Assume that network slice priority can include two levels: high and low. Correspondingly, the processing priority of an application on a terminal device can also include two levels: high and low. For example, as shown in Table 6, network slice S-NSSAI 1 has a "high" priority, and the application corresponding to network slice S-NSSAI 1 also has a "high" processing priority on the terminal device; network slice S-NSSAI 2 has a "low" priority, and the application corresponding to network slice S-NSSAI 2 also has a "low" processing priority on the terminal device.
[0178] It is understood that network slicing priority can include more levels, such as four, five, or six levels, etc., and this application embodiment does not limit this. Correspondingly, the processing priority level of the application in the terminal device can also include four, five, or six levels, etc.
[0179] The mapping relationships shown in Tables 5 and 6 above are explained in a one-to-one correspondence between network slice priority and application processing priority on the terminal device.
[0180] In one possible scenario, network slice priorities include N levels, and the application's corresponding processing priority level on the terminal device includes M levels, where N and M are positive integers, and N and M are not equal. In this case, one network slice priority level can correspond to multiple processing priority levels of the application on the terminal device, or multiple network slice priority levels can correspond to one processing priority level of the application on the terminal device; this embodiment does not limit this.
[0181] Table 7 illustrates an example of a mapping relationship between network slice identifier, network slice priority, and application processing priority level on a terminal device.
[0182] Table 7
[0183] Network slicing Network slice priority Application processing priority on terminal devices S-NSSAI 1 high high S-NSSAI 2 middle Low S-NSSAI 3 Low Low
[0184] Assuming network slice priorities can include three levels: high, medium, and low, the processing priority of an application on a terminal device can also include two levels: high and low. For example, as shown in Table 7, network slice S-NSSAI 1 has a "high" priority, and the application corresponding to network slice S-NSSAI 1 also has a "high" processing priority on the terminal device; network slice S-NSSAI 2 has a "medium" priority, and the application corresponding to network slice S-NSSAI 2 has a "low" processing priority on the terminal device; network slice S-NSSAI 3 has a "low" priority, and the application corresponding to network slice S-NSSAI 3 has a "low" processing priority on the terminal device. That is, multiple network slice priority levels can correspond to one processing priority level for an application on the terminal device.
[0185] In one implementation, network slice priority can be determined based on the type of network slice. For example, the priorities of network slices of types such as uRLLC, eMBB, and mMTC are ordered from high to low.
[0186] Based on the foregoing example, a terminal device can determine the network slice corresponding to an application's data processing level (e.g., low-latency processing level, high-speed processing level) within the terminal device, according to the relevant network slice selection rules. The terminal device can then associate the application with a PDU session supporting that network slice, which can be identified using network slice indication information (e.g., network slice identifier) within the network slice selection rules. Here, "the application performs data processing at the corresponding level within the terminal device" means that the application's data stream undergoes data processing at the corresponding level within the terminal device.
[0187] like Figure 4 The diagram shown is a structural schematic of electronic device 100. Optionally, electronic device 100 may be referred to as a terminal or a terminal device; this application does not limit this. It should be noted that the structural schematic of electronic device 100 is applicable to the UE mentioned above. It should be understood that... Figure 4 The electronic device 100 shown is merely an example of an electronic device, and the electronic device 100 may have more or fewer components than those shown in the figure, may combine two or more components, or may have different component configurations. Figure 4 The various components shown can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and / or application-specific integrated circuits.
[0188] Electronic device 100 may include: a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, antenna 1, antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a SIM card interface 195, etc. The sensor module 180 may include pressure sensors, gyroscope sensors, accelerometers, temperature sensors, motion sensors, barometric pressure sensors, magnetic sensors, distance sensors, proximity sensors, fingerprint sensors, touch sensors, ambient light sensors, bone conduction sensors, etc.
[0189] Processor 110 may include one or more processing units, such as: application processor (AP), modem, graphics processing unit (GPU), image signal processor (ISP), controller, memory, video codec, digital signal processor (DSP), baseband processor, and / or neural network processing unit (NPU), etc. Different processing units may be independent devices or integrated into one or more processors.
[0190] The controller can be the nerve center and command center of the electronic device 100. The controller can generate operation control signals according to the instruction opcode and timing signals to complete the control of fetching and executing instructions.
[0191] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory.
[0192] USB port 130 is a USB standard compliant interface, specifically a Mini USB port, Micro USB port, USB Type-C port, etc. USB port 130 can be used to connect a charger to charge electronic device 100, and can also be used for data transfer between electronic device 100 and peripheral devices. It can also be used to connect headphones for audio playback.
[0193] The charging management module 140 receives charging input from a charger, which can be a wireless charger or a wired charger. While charging the battery 142, the charging management module 140 can also supply power to the electronic device via the power management module 141.
[0194] The power management module 141 is used to connect the battery 142, the charging management module 140, and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140 to power the processor 110, internal memory 121, external memory, display 194, camera 193, and wireless communication module 160, etc.
[0195] The wireless communication function of electronic device 100 can be realized through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, modem processor and baseband processor, etc.
[0196] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover one or more communication frequency bands. Different antennas can also be multiplexed to improve antenna utilization. For example, antenna 1 can be multiplexed as a diversity antenna for a wireless local area network. In some other embodiments, the antennas can be used in conjunction with tuning switches.
[0197] The mobile communication module 150 can provide solutions for wireless communication, including 2G / 3G / 4G / 5G, applied to the electronic device 100. The mobile communication module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves via antenna 1, and perform filtering, amplification, and other processing on the received electromagnetic waves before transmitting them to a modem processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modem processor and convert it into electromagnetic waves for radiation via antenna 1. In some embodiments, at least some functional modules of the mobile communication module 150 may be housed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 and at least some modules of the processor 110 may be housed in the same device.
[0198] The modem runs on the baseband chip and coprocessor. This modem includes a SIM card module, which provides functions related to SIM information, such as network registration and authentication. For example, when using an electronic device with a modem, a user can trigger a local application to access a series of SIM card functions. The SIM card mentioned above can be a physical card (or hard card) or a virtual SIM card (or soft card), and may include an embedded-SIM (eSIM), etc. The specific form of the SIM card is not limited in this embodiment.
[0199] The modem processor may include a modulator and a demodulator. The modulator modulates the low-frequency baseband signal to be transmitted into a mid-to-high frequency signal. The demodulator demodulates the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After processing by the baseband processor, the low-frequency baseband signal is transmitted to the application processor. The application processor outputs sound signals through an audio device (not limited to speaker 170A, receiver 170B, etc.) or displays images or videos through the display screen 194. In some embodiments, the modem processor may be a separate device. In other embodiments, the modem processor may be independent of the processor 110 and may be housed in the same device as the mobile communication module 150 or other functional modules.
[0200] The wireless communication module 160 can provide solutions for wireless communication applications on the electronic device 100, including wireless local area networks (WLANs) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared (IR) technologies. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to processor 110. The wireless communication module 160 can also receive signals to be transmitted from processor 110, perform frequency modulation and amplification, and convert them into electromagnetic waves for radiation via antenna 2.
[0201] In some embodiments, antenna 1 of electronic device 100 is coupled to mobile communication module 150, and antenna 2 is coupled to wireless communication module 160, so that electronic device 100 can communicate with networks and other devices through wireless communication technology.
[0202] Electronic device 100 implements display functions through a GPU, display screen 194, and application processor. Processor 110 may include one or more GPUs, which execute program instructions to generate or modify display information. Display screen 194 is used to display images, videos, etc. Electronic device 100 can implement shooting functions through an ISP, camera 193, video codec, GPU, display screen 194, and application processor. Camera 193 is used to capture still images or videos.
[0203] The external storage interface 120 can be used to connect an external storage card, such as a Micro SD card, to expand the storage capacity of the electronic device 100.
[0204] The internal memory 121 can be used to store computer executable program code, which includes instructions. The processor 110 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the internal memory 121, thereby enabling the electronic device 100 to implement the communication method in the embodiments of this application.
[0205] Electronic device 100 can implement audio functions, such as music playback and recording, through audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, and application processor.
[0206] The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module 170 can also be used for encoding and decoding audio signals. In some embodiments, the audio module 170 may be located in the processor 110, or some functional modules of the audio module 170 may be located in the processor 110.
[0207] A pressure sensor is used to sense pressure signals and can convert these signals into electrical signals. In some embodiments, the pressure sensor may be located on the display screen 194. The electronic device 100 may also calculate the position of a touch based on the detection signal from the pressure sensor.
[0208] A touch sensor, also known as a "touch panel," can be located on the display screen 194. The touch sensor and display screen 194 together form a touchscreen, also called a "touch screen." The touch sensor detects touch operations applied to or near it. It then transmits the detected touch operation to the application processor to determine the type of touch event.
[0209] Buttons 190 include a power button, volume buttons, etc. Buttons 190 can be mechanical buttons or touch-sensitive buttons. Electronic device 100 can receive button input and generate key signal inputs related to user settings and function control of electronic device 100.
[0210] Motor 191 can generate vibration alerts. Motor 191 can be used for incoming call vibration alerts or for touch vibration feedback. For example, different vibration feedback effects can be corresponding to touch operations applied to different applications (such as taking photos, playing audio, etc.).
[0211] Indicator 192 can be an indicator light, used to indicate charging status, power changes, or to indicate messages, missed calls, notifications, etc.
[0212] The SIM card interface 195 is used to connect a SIM card. The SIM card can be inserted into or removed from the SIM card interface 195 to make contact with and separate from the electronic device 100. The electronic device 100 can support one or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, etc. Multiple cards can be inserted into the same SIM card interface 195 simultaneously. The multiple cards can be of the same or different types. The SIM card interface 195 is also compatible with different types of SIM cards. The SIM card interface 195 is also compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to realize functions such as calls and data communication. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.
[0213] The software system of electronic device 100 can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. This application embodiment uses the layered architecture Android system as an example to exemplify the software structure of electronic device 100.
[0214] Figure 5 This is a software structure block diagram of the electronic device 100 according to an embodiment of this application.
[0215] The layered architecture of the electronic device 100 divides the software into several layers, each with a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom: the application layer, the application framework layer, the radio layer interface (RIL), and the modem layer.
[0216] against Figure 4In the electronic device 100, the application layer and application framework layer can interact with each other through conventional interfaces. The application framework layer and the RIL can interact with each other through a Hardware Abstraction Layer Interface Definition Language (HIDL) interface. The RIL and the Modem layer can interact with each other based on the chip architecture of the electronic device. For example, the RIL and the Modem layer can interact with each other through PCI Express (Peripheral Component Interconnect Express, PCIe) or memory sharing.
[0217] The application layer can include a series of application packages.
[0218] like Figure 5 As shown, the application package can include applications such as calling, camera, gallery, video, maps, navigation, Bluetooth, and network slicing selection SDK.
[0219] The network slice selection SDK can determine the network slice corresponding to the APP based on URSP rules, and determine the data processing level of the APP in the electronic device.
[0220] The application framework layer provides application programming interfaces (APIs) and a programming framework for applications in the application layer. The application framework layer includes some predefined functions.
[0221] like Figure 5 As shown, the application framework layer may include a telephony manager, a connectivity service, and so on.
[0222] The phone manager provides management functions for cellular-related services on electronic devices. For example, it manages call status (including connected and disconnected) and cellular data connection status (including established connection to the cellular network, disconnected connection to the cellular network, establishing connection to the cellular network, and disconnecting connection to the cellular network). It can be understood that the cellular network can include 2G, 3G, 4G, and 5G networks (such as SA networks).
[0223] In possible implementations, the application framework layer may also include a window manager, content provider, view system, resource manager, notification manager, etc. Figure 5 (Not shown), but this application does not limit the scope of the embodiments.
[0224] The window manager is used to manage window applications. It can obtain the screen size, determine if a status bar is present, lock the screen, and capture screenshots, among other things.
[0225] Content providers store and retrieve data, making that data accessible to applications. This data may include videos, images, audio, made and received phone calls, browsing history and bookmarks, phone books, etc.
[0226] A view system includes visual controls, such as controls for displaying text and controls for displaying images. View systems can be used to build applications. A display interface can consist of one or more views. For example, a display interface including a text notification icon could include views for displaying text and views for displaying images.
[0227] The file explorer provides applications with various resources, such as localized strings, icons, images, layout files, video files, and more.
[0228] The notification manager allows applications to display notifications in the status bar. These notifications can be used to deliver informational messages and can disappear automatically after a short pause, requiring no user interaction. Examples include notifications of completed downloads and message alerts.
[0229] In this context, the application layer and application framework layer, relative to the modem side, can be referred to as the AP side. In this embodiment, determining the network slice corresponding to the APP based on URSP rules, and determining the data processing level of the APP in the electronic device, are implemented on the AP side, specifically within the network slice selection SDK on the AP side.
[0230] The Radio Interface Layer (RIL) is the interface layer between the application framework layer and the modem layer. It is responsible for the transmission of cellular service control plane operations and ensuring reliable data transmission. The RIL may include a Radio Interface Layer Daemon (rild), which in turn may include a ril service module. For example, the ril service module can forward commands sent by the phone manager via the HIDL interface to the modem layer, and forward response data corresponding to commands returned by the modem layer, as well as status or notifications actively reported by the modem layer, to the phone manager.
[0231] The modem layer includes a modem processor, which may include a protocol stack and a card processing module. The protocol stack may include wireless communication protocol stacks such as 2G, 3G, 4G, and 5G.
[0232] The card processing module may include related modules for the SIM card. For example, it may include a SIM card module, a local SIM card module, and a SIM card slot driver. The SIM card slot driver can connect to a physical SIM card.
[0233] SIM card module: Used to provide functions related to SIM information, such as network registration and authentication. This SIM card module can support the local SIM card access mode provided by the local SIM card module.
[0234] Local SIM card module: Used to access local SIM card information using the SIM card slot driver.
[0235] In one possible implementation, the modem of electronic device 100 may be equipped with a SIM card slot driver and a SIM card; or, the modem of electronic device 100 may not be equipped with a SIM card slot driver and a SIM card, in which case electronic device 100 may use a local eSIM.
[0236] The above Android system architecture diagram is for illustrative purposes only and does not constitute any limitation.
[0237] Understandable Figure 5 The layers in the illustrated software structure and the components contained in each layer do not constitute a specific limitation on the electronic device 100. In other embodiments of this application, the electronic device 100 may include more or fewer layers than illustrated, and each layer may include more or fewer components; this application does not impose any limitations.
[0238] It is understood that, in order to implement the communication methods in the embodiments of this application, electronic devices include hardware and / or software modules that perform various functions. Based on the algorithmic steps of the examples described in conjunction with the embodiments disclosed herein, this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by computer software driving hardware 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 in conjunction with the embodiments, but such implementation should not be considered beyond the scope of this application.
[0239] like Figure 6 As shown in the figure, this application provides a communication method, which may specifically include the following steps:
[0240] S101, the APP sends an activation request to the network slice selection SDK to establish network connection service.
[0241] The activation request may include the APP's TD (Traffic Descriptor) parameter. For example, the APP's TD parameter may include, but is not limited to, parameters such as APP ID, Data Network Name (DNN), IP triplet (IP Descriptor), Domain Descriptor, and Connection Capabilities.
[0242] S102, based on URSP rules, the network slice selection SDK determines the target network slice corresponding to the APP according to the TD parameters, and sends the identifier of the target network slice to the OS module.
[0243] In URSP rules, such as Figure 7 As shown, it mainly includes two sets of important parameters: TD parameters, which describe the attributes of the application, and RSD parameters, which describe the attributes of the data carrier. These can include, but are not limited to, parameters such as S-NSSAI, SSC Mode (Session and Service Continuity Mode), and DNN. URSP rules are essentially the correspondence between multiple sets of TD parameters and multiple sets of RSD parameters.
[0244] After obtaining the TD parameters of the application from the network slice selection SDK, the corresponding RSD parameters can be found based on the URSP rules. Since the RSD parameters contain the network slice identifier S-NSSAI, the target network slice that the application can access is determined.
[0245] For example, after the network slice selection SDK obtains the TD parameters of the APP, it can match the network slice corresponding to the APP based on URSP rules and the priority of the network slice. For instance, the network slice selection SDK first matches the network slice corresponding to the APP in the first priority network slices based on URSP rules. If no match is found, it then matches the network slice corresponding to the APP in the second priority network slices based on URSP rules. Here, the first priority is higher than the second priority.
[0246] Furthermore, the network slice selection SDK can send the identifier of the target network slice corresponding to the APP to the OS module through the API (Application Program Interface) provided by the OS module.
[0247] S103, the OS module sends the identifier of the target network slice to the Modem module.
[0248] The OS module will send the identifier of the target network slice corresponding to the APP to the Modem module through the API provided by the Modem module.
[0249] S104, the Modem module interacts with the network device, associates the APP with the PDU session that supports the target network slice, and sends a successful association indication message back to the network slice selection SDK.
[0250] In one possible implementation, the network slice selection SDK can also directly send the identifier of the target network slice corresponding to the APP to the Modem module through the API provided by the Modem module.
[0251] The identifier of the target network slice corresponding to the APP received by the modem module is the identifier of the network slice that the UE wishes to register, i.e., the identifier of the requested network slice. The modem module generates a registration request message based on the identifier of the target network slice, that is, the registration request message includes the identifier of the target network slice (NSSAI), and sends the registration request message to the network-side device (such as gNB).
[0252] It should be noted that the identifier of the target network slice included in the registration request message can be the network slice identifier mentioned in the first, second, and third possible implementations above. If the identifier of the target network slice is a newly defined network slice identifier in the first possible implementation above, then the identifier of the target network slice carries first indication information, which is used to indicate the data processing level of the application in the terminal device. If the identifier of the target network slice is a network slice identifier mentioned in the second possible implementation above with added second indication information, then the identifier of the target network slice carries second indication information, which is used to indicate the data processing level of the application in the terminal device. If the identifier of the target network slice is a network slice identifier in the prior art mentioned in the third possible implementation above, then the target network slice can implicitly indicate the data processing level of the application in the terminal device.
[0253] After receiving a registration request message from the UE, the gNB can forward the registration request message to the AMF. If the UE is in CM-CONNECTED state, the gNB can forward the registration request message to the AMF based on the UE's N2 connection. If the UE is in CM-IDLE state, and the UE did not include the "requested NSSAI" and the globally unique AMF identifier (GUAMI) when establishing a connection with the RAN, the gNB can forward the registration request message to the default AMF.
[0254] The AMF can verify whether the S-NSSAIs in the "Requested NSSAIs" are allowed based on the "Subscribed S-NSSAIs". The "Subscribed S-NSSAIs" can be obtained by the AMF from the Unified Data Management (UDM) network element. The AMF can determine a registration area such that all S-NSSAIs of the "Allowed NSSAIs" in that registration area are available in all tracking areas of that registration area, and then return the "Allowed NSSAIs" to the terminal device. Optionally, the AMF returns a mapping from "Allowed NSSAIs" to "Subscribed S-NSSAIs" to the terminal device. Optionally, the AMF can return one or more "Rejected S-NSSAIs" and the rejection reason for each S-NSSAI. If the S-NSSAI rejection reason value indicates network slice-specific authentication and authorization failure or revocation, the UE can retry requesting the S-NSSAI based on local policies.
[0255] The AMF sends a registration accept message to the gNB, indicating that the registration request has been accepted by the AMF. After receiving the registration accept message from the AMF, the gNB can forward it to the UE.
[0256] The network slice selection process can be completed through the interaction between the modem module and the network device. The steps of the slice selection process described above can be referred to. For any parts of the process that are not explained in detail, please refer to existing technologies, which will not be repeated here.
[0257] This allows the app to be bound to the target network slice and associated with a PDU session that supports the target network slice. The modem module can also send a successful association notification to the network slice selection SDK.
[0258] If a PDU session already exists that supports the target network slice the app wishes to use, the terminal device associates the application with this PDU session, meaning the terminal device routes the application's data stream to this PDU session. If no PDU session exists that supports the target network slice the app wishes to use, the terminal device initiates the process of establishing a PDU session that supports the target network slice, so as to associate the application with the established PDU session. The PDU session establishment process may include the following steps:
[0259] Step 1. The terminal device's Modem sends a PDU session establishment request to the AMF.
[0260] Terminal devices can send PDU session establishment requests to the AMF via Non-access stratum (NAS) messages.
[0261] The PDU session establishment request may include parameters such as PDU session ID, PDU session type, SSC Mode, DNN, and S-NSSAI (the S-NSSAI corresponding to the service). The S-NSSAI in the PDU session establishment request can be a network slice identifier, one of the three indication methods mentioned above.
[0262] The S-NSSAI carried in the PDU session request message is forwarded to the AMF via the wireless network. The AMF checks the S-NSSAI in the PDU session request message, selects the appropriate SMF based on the slicing capabilities supported by each SMF in the network, and forwards the session establishment request to the SMF.
[0263] Step 2. The AMF sends a PDU session create request to the SMF.
[0264] AMF can send a PDU session creation request to SMF via HTTP2 POST. The PDU session creation request can include parameters such as SUPI, DNN, PDU Session ID, S-NSSAI, and Request Type.
[0265] SMF can establish the context of a PDU session. SMF can obtain the user's subscription information from UDM, and then send policy control messages to UPF, RAN, and terminal equipment, which will then establish a connection for the PDU session.
[0266] Step 3. SMF sends a session create response (PDU) to AMF.
[0267] Once the SMF confirms that the PDU session connection has been established, it can send a session creation response to the AMF to indicate that the PDU session has been successfully established.
[0268] Step 4. The AMF sends a PDU session establishment accept to the terminal device.
[0269] AMF responds to the terminal device with a session establishment request response, indicating that the PDU session has been successfully established. The terminal device associates the application with the newly established PDU session, that is, the terminal device routes the application's data flow on the newly established PDU session.
[0270] In addition, if the PDU Session Establishment Request sent by the terminal device is rejected by the network side, that is, the PDU session establishment fails, the terminal device will rematch other URSP rules and initiate the establishment of the PDU session based on the rematched URSP rules.
[0271] The above explanation uses the example of the network slice selection SDK determining a single target network slice corresponding to the app based on URSP rules. However, if the network slice selection SDK determines multiple target network slices corresponding to the app based on URSP rules, the same logic applies; one or more network slices may be refused registration. Understandably, the app will ultimately be bound to one of the target network slices, and the app will be associated with a PDU session that supports the target network slice.
[0272] S105, The network slice selection SDK determines the data processing level of the APP's service data in the UE based on the target network slice.
[0273] Based on a new network slice selection rule (or new URSP rule) provided in the embodiments of this application, the network slice selection SDK can also determine the data processing level of the APP's service data in the UE according to the target network slice.
[0274] In the first possible implementation mentioned above, the network slice selection SDK can explicitly indicate the data processing level of the application on the terminal device by adding a first indication information to the newly defined network slice identifier; in the second possible implementation mentioned above, the network slice selection SDK can explicitly indicate the data processing level of the application on the terminal device by adding a second indication information to the existing network slice identifier and the type of network slice; in the third possible implementation mentioned above, the network slice selection SDK implicitly indicates the data processing level of the application on the terminal device through the existing network slice identifier.
[0275] Based on these three implementation methods, how the network slicing selection SDK determines the data processing level of the APP's business data in the UE according to the target network slice, and the detailed explanation of the data processing level, can be found in the previous text, and will not be repeated here.
[0276] S106, the UE processes the APP's business data according to the data processing level.
[0277] Once the data processing level of the APP's business data in the UE is determined, the UE can process the APP's business data according to the corresponding data processing level.
[0278] In this way, the business data of the APP is matched with the data processing level inside the UE, which can guarantee the corresponding requirements of the business data (such as low latency, high speed, high priority, etc.) and avoid the problem of poor business experience caused by the mismatch between network slicing performance and the internal data processing of the terminal.
[0279] In one specific implementation, such as Figure 8 As shown, the S-NSSAI's TD parameters include a newly defined IS parameter. This embodiment provides a new network slice selection rule set in the RSD of the URSP rule. The IS parameter corresponds to one or more values, with different IS parameter values corresponding to different network slices. In this case, the network slice selection SDK can match the target network slice corresponding to the APP based on the IS parameter. For example, IS 1 corresponds to network slice NSSAI 1, and IS 2 corresponds to network slice NSSAI 2.
[0280] Optionally, in the first possible implementation mentioned above, the first indication information in the newly defined network slice identifier is the IS parameter. If the IS parameter value sent by the first APP to the network slice selection SDK is the same as the first indication information (i.e., the IS parameter) value in the first network slice identifier, then the network slice corresponding to the first APP is the first network slice. Furthermore, the IS parameter can also be used to determine the data processing level of the application on the terminal device. In this case, the network slice selection SDK can determine the data processing level of the APP on the terminal device based on the IS parameter. Different IS parameter values correspond to different data processing levels. For example, IS 1 corresponds to a low-latency processing level, and IS 2 corresponds to a high-latency processing level.
[0281] The IS parameter value of the target app can be determined through negotiation between the app developer and the terminal device manufacturer. For example, the app developer can purchase the IS parameter from the terminal device manufacturer. In this way, the target app developer can negotiate with the terminal device manufacturer to determine the data processing level that meets their business needs.
[0282] Reference Figure 9 In this embodiment, such as Figure 6 The steps involved in the communication method shown can be adjusted as follows:
[0283] S201, the APP sends an activation request to the network slice selection SDK to establish network connection service.
[0284] The activation request may include the APP's TD (Traffic Descriptor) parameter, which includes the IS parameter.
[0285] S202, The network slice selection SDK determines the target network slice corresponding to the APP based on the IS parameters, and sends the identifier of the target network slice to the OS module.
[0286] The identifier of the target network slice includes the IS parameter.
[0287] S203, the OS module sends the identifier of the target network slice to the Modem module.
[0288] S204, the Modem module interacts with the network device, associates the APP with the PDU session that supports the target network slice, and sends a successful association indication message back to the network slice selection SDK.
[0289] S205, The network slice selection SDK determines the data processing level of the APP's service data in the UE based on the IS parameter in the target network slice identifier.
[0290] S206, UE processes APP's business data according to data processing level.
[0291] For any parts of this process that are not explained in detail, please refer to the previous text; they will not be repeated here.
[0292] In another specific implementation, a newly defined IS parameter is added to the RSD parameter of the URSP rule. The IS parameter corresponds to one or more values, with different IS parameter values corresponding to different data processing levels. In this case, the network slicing selection SDK can determine the data processing level of the application on the terminal device based on the IS parameter. For example, IS 1 corresponds to a low-latency processing level, and IS 2 corresponds to a high-latency processing level.
[0293] To prevent network slices from being abused by other apps, this application embodiment also adds a security verification mechanism to the network slice selection SDK side.
[0294] like Figure 10 As shown in the figure, this application provides a communication method, which may specifically include the following steps:
[0295] S301, the APP sends an activation request to the network slice selection SDK to establish network connection service.
[0296] The activation request includes the APP's TD parameter and the TD parameter signature.
[0297] For example, a TD parameter signature is generated by encrypting the hash value of the TD parameter.
[0298] In one implementation, the TD parameter may include the aforementioned IS parameter. The subsequent processing flow is as described above and will not be repeated here.
[0299] S302, the network slicing selection SDK performs security verification on the APP based on the TD parameters and the TD parameter signature.
[0300] The grid slicing SDK decrypts the TD parameter signature to obtain the hash value of the TD parameter. It then compares the decrypted TD parameter hash value with the hash value obtained from parsing the activation request to perform security verification on the app. If the hash value of the decrypted TD parameter matches the hash value obtained from parsing the activation request, the app's security verification succeeds; otherwise, the app's security verification fails.
[0301] The TD parameter signature is generated based on the encryption of the signature private key, and the grid slice selection SDK decrypts the TD parameter signature based on the signature public key that is paired with the signature private key.
[0302] In one implementation, the TD parameter signature of the APP is generated by the terminal server corresponding to the UE by encrypting the hash value of the APP's TD parameters based on the signing private key. At the same time, the terminal server sends the signing public key, which is paired with the signing private key, to the UE (e.g., to the network slice selection SDK of the UE), and the network slice selection SDK stores the signing public key locally.
[0303] In one example, the grid slicing selection SDK parses the TD parameter and its signature from the activation request. It decrypts the TD parameter signature using the locally stored public key and uses the resulting hash value as security verification information. The grid slicing selection SDK then verifies the parsed TD parameter against this security verification information (i.e., the decrypted TD parameter hash value). If the hash values match, the app's security verification is successful; otherwise, it fails.
[0304] In one example, the mesh slice selection SDK parses the TD parameter and its signature from the activation request. It decrypts the TD parameter signature using a locally stored public key and uses the hash value of the decrypted TD parameter as security verification information. The mesh slice selection SDK sends this security verification information (the hash value of the decrypted TD parameter) to the corresponding terminal server for security verification of the APP via the terminal service. The terminal server performs security verification on the APP based on the received security verification information, determining whether the information matches the hash value of the TD parameter of the corresponding APP. If so, it sends a successful security verification indication to the UE's mesh slice selection SDK; otherwise, it sends a failed security verification indication to the UE's mesh slice selection SDK.
[0305] S303 If the APP security verification is successful, the network slice selection SDK determines the target network slice corresponding to the APP based on the TD parameter according to the URSP rules, and sends the identifier of the target network slice to the OS module.
[0306] S304, the OS module sends the identifier of the target network slice to the Modem module.
[0307] S305, the Modem module interacts with the network device, associates the APP with the PDU session that supports the target network slice, and sends a successful association indication message back to the network slice selection SDK.
[0308] S306, The network slice selection SDK determines the data processing level of the APP's service data in the UE based on the target network slice.
[0309] S307, the UE processes the APP's business data according to the data processing level.
[0310] In this way, the UE can not only guarantee the corresponding requirements of service data (such as low latency, high speed, high priority, etc.) and avoid the problem of poor service experience caused by the mismatch between network slicing performance and terminal internal data processing, but also perform security verification on the APP before associating the APP with the network slice to avoid the problem of network slice being abused.
[0311] Based on the above technical solutions, the network slice selection SDK can also update the URSP rules (including network slice selection rules) configured on the terminal side, so as to determine the network slice corresponding to the APP through the updated URSP rules, and determine the data processing level of the APP in the terminal device.
[0312] In one implementation, when URSP rules are configured on the network side, updated URSP rules can be sent to the terminal side via network devices. For example, the H-PCF can configure updated network slice selection rules to the terminal device via the AMF and gNB. Alternatively, updated URSP rules can be configured to the terminal device via registration command messages. Another example is that the telecommunications operator can configure updated URSP rules to the terminal device. In this implementation, the updated URSP rules are received by the UE's Modem module and sent to the network slice selection SDK via the Modem module.
[0313] In one implementation, when URSP rules are configured on the terminal side, the URSP rules can be updated based on the terminal platform or the terminal's SDK platform.
[0314] The embodiments of this application adopt a terminal-centralized scheme. Compared with the operating system-centralized scheme and the modem-centralized scheme, the cycle required to update URSP rules is shorter, and the URSP rules are more limited to maintenance and management.
[0315] This embodiment also provides a computer storage medium storing computer instructions. When the computer instructions are executed on an electronic device, the electronic device performs the aforementioned method steps to implement the communication method in the above embodiment.
[0316] This embodiment also provides a computer program product that, when run on a computer, causes the computer to perform the aforementioned steps to implement the communication method described in the above embodiment.
[0317] In addition, embodiments of this application also provide an apparatus, which may specifically be a chip, component, or module. The apparatus may include a connected processor and a memory; wherein the memory is used to store computer execution instructions, and when the apparatus is running, the processor may execute the computer execution instructions stored in the memory to cause the chip to execute the communication methods in the above-described method embodiments.
[0318] In this embodiment, the electronic devices (such as mobile phones), computer storage media, computer program products, or chips are all used to execute the corresponding methods provided above. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods provided above, and will not be repeated here.
[0319] Through the above description of the embodiments, those skilled in the art will understand that, for the sake of convenience and brevity, only the division of the above functional modules is used as an example. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0320] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another apparatus, or some features may be ignored or not executed. Furthermore, the mutual coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0321] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
Claims
1. A communication method, characterized in that, Applied in a terminal device, the terminal device including an SDK module, an OS module, and a Modem module, the method includes: The SDK module obtains the activation request for establishing a network connection service sent by the target APP; wherein, the activation request includes the Path Descriptor TD parameter; Based on the UE routing policy URSP rules, the SDK module determines the target network slice corresponding to the target APP according to the TD parameters, and sends the identifier of the target network slice to the OS module; The OS module sends the identifier of the target network slice to the Modem module; The Modem module interacts with the network device based on the identifier of the target network slice, and associates the target APP with a PDU session that supports the target network slice; The target APP's business data is processed on the terminal device according to the data processing level that matches the target network slice; The SDK module determines the data processing level of the target APP's service data in the terminal device based on the first identifier of the target network slice; or, The SDK module determines the data processing level of the target APP's business data in the terminal device based on the second identifier of the target network slice and the type of the target network slice; or, The SDK module determines the data processing level of the target APP's business data in the terminal device based on the type or priority of the target network slice. The SDK module determines the data processing level of the target APP's business data in the terminal device based on the second identifier of the target network slice and the type of the target network slice, including: The SDK module determines the data processing level of the target APP's service data in the terminal device based on the second indication information in the second identifier of the target network slice and the type of the target network slice; wherein, the second identifier is a network slice identifier specified in the communication protocol, and the second indication information is newly added indication information in the network slice identifier, used to indicate the data processing level of the APP in the terminal device.
2. The method according to claim 1, characterized in that, The activation request also includes a TD parameter signature; The SDK module determines the target network slice corresponding to the target APP based on the TD parameters, including: When the SDK module determines that the security verification of the target APP is successful based on the TD parameter signature, it determines the target network slice corresponding to the target APP based on the TD parameter.
3. The method according to claim 2, characterized in that, The SDK module determines that the target APP security verification is successful based on the TD parameter signature, including: The SDK module decrypts the TD parameter signature using the signing public key to obtain a first hash value; the TD parameter signature is generated based on the signing private key that is paired with the signing public key. If the SDK module determines that the first hash value and the second hash value are consistent, it determines that the security verification of the target APP is successful; wherein, the second hash value is obtained by hashing the TD parameter of the target APP.
4. The method according to claim 1, characterized in that, Also includes: The Modem module receives the updated URSP rules and sends the updated URSP rules to the SDK module so that the SDK module updates its local URSP rules.
5. The method according to claim 1, characterized in that, The SDK module determines the data processing level of the target APP's service data in the terminal device based on the first identifier of the target network slice, including: The SDK module determines the data processing level of the target APP's business data in the terminal device based on the first indication information in the first identifier of the target network slice; wherein, the first identifier is a custom identifier of the network slice, and the first indication information is used to indicate the data processing level of the APP in the terminal device.
6. The method according to claim 5, characterized in that, The identifier of the target network slice sent by the SDK module to the OS module and the identifier of the target network slice sent by the OS module to the Modem module are the first identifier of the target network slice.
7. The method according to claim 1, characterized in that, The identifier of the target network slice sent by the SDK module to the OS module and the identifier of the target network slice sent by the OS module to the Modem module are the second identifier of the target network slice.
8. The method according to claim 1, characterized in that, The data processing level involves at least one of the following aspects: Priority, latency, speed, data security, and data reliability.
9. The method according to claim 5, characterized in that, When the SDK module determines the data processing level of the target APP's service data in the terminal device based on the first identifier of the target network slice, the first indication information is the target parameter; The TD parameters of the target APP include the target parameters; The SDK module determines the target network slice corresponding to the target APP based on the TD parameters, including: The SDK module uses the first network slice as the target network slice corresponding to the target APP; wherein the target parameter value in the first identifier of the first network slice is the same as the target parameter value of the target APP.
10. The method according to claim 9, characterized in that, When the value of the target parameter is different, the data processing level of the APP on the terminal device is different.
11. The method according to claim 9, wherein the target parameter value of the target APP is determined through negotiation between the developer of the target APP and the manufacturer of the terminal device.
12. A terminal device, characterized in that, include: One or more processors; Memory; And one or more computer programs, wherein the one or more computer programs are stored on the memory, and when the computer programs are executed by the one or more processors, cause the terminal device to perform the communication method as described in any one of claims 1-11.
13. A chip, characterized in that, The chip includes processing circuitry and transceiver pins; wherein... The transceiver pins and the processing circuit communicate with each other through an internal connection path; The processing circuit executes the communication method as described in any one of claims 1-11 to control the receiving pin to receive signals and to control the transmitting pin to transmit signals.
14. A computer-readable storage medium comprising a computer program, characterized in that, When the computer program is run on an electronic device, it causes the electronic device to perform the communication method as described in any one of claims 1-11.
Citation Information
Patent Citations
Service processing method and device
CN110214459A
Flow control method, flow control rule synchronization method, terminal and server
CN113068226A
PDU session establishment method, terminal equipment and chip system
CN114080054A