A network slice selection method and related apparatus
By allowing terminal devices to select appropriate network slices based on routing policies and pre-configured parameters, the problem of resource waste caused by terminal devices selecting unsuitable slices is solved, thereby improving the success rate and efficiency of PDU sessions.
Patent Information
- Application Number
- CN202110686904.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-06-21
- Publication Date
- 2025-12-05
- Estimated Expiration
- 2041-06-21
AI Technical Summary
In a standalone network, terminal devices may choose an unsuitable network slice to establish a PDU session, resulting in wasted resources.
The terminal device obtains the routing policy code stream sent by the network device, uses the pre-configured first parameter and slice or service type field to select a suitable network slice from multiple network slices to establish a PDU session, and adjusts the dialing factor to optimize the selection process in case of failure.
This avoids resource waste caused by inappropriate network slice establishment and improves the success rate and efficiency of PDU sessions.
Smart Images

Figure CN115580919B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of communication technology, and in particular to a network slice selection method and related apparatus. Background Technology
[0002] Currently, network slicing has become an essential feature of 5G networks in standalone (SA) architecture. Network slicing refers to the virtualization of multiple logical subnets with different characteristics and isolated from each other on the same set of physical equipment to meet the different functional requirements (such as billing, policy control, security, mobility, etc.) and different performance requirements (such as latency, mobility, reliability, etc.) of a 5G network for specific services and users.
[0003] User equipment (UE) can access network slices with different characteristics based on the UE route selection policy (URSP) code stream issued by the network device. Specifically, the UE establishes a protocol data unit session (PDU session) based on the URSP code stream to access one of the multiple network slices associated with that URSP code stream.
[0004] However, when a terminal device establishes a PDU session in the above manner, the network slice used may not be suitable for the terminal device. Even if the PDU session is successfully established, the terminal device may not be able to use the network slice, resulting in a waste of resources. Summary of the Invention
[0005] This application provides a network slice selection method and related apparatus, which can avoid resource waste caused by terminal devices using inappropriate network slices to establish PDU sessions.
[0006] In a first aspect, embodiments of this application provide a network slice selection method. In this method, a terminal device obtains a Routing Policy (URSP) stream sent by a network device; based on a first parameter and a Slice or Type of Service (SST) field, it determines a network slice used to establish a Protocol Data Unit (PDU) session from multiple network slices associated with the URSP stream, and establishes a PDU session based on the network slice used to establish the PDU session. The SST field is a field in the URSP stream used to identify the type of each network slice among the multiple network slices associated with the URSP stream. The first parameter is a pre-configured parameter associated with the terminal device, and the first parameter is used to identify the network slice type applicable to the terminal device.
[0007] Since the first parameter is used to identify the network slice type applicable to the terminal device, the network slice determined by the terminal device based on the first parameter and the SST field is a suitable network slice for the terminal device itself. That is, the terminal device uses a suitable network slice to establish a PDU session, which can avoid the waste of resources caused by the terminal device using an unsuitable network slice to establish a PDU session.
[0008] In one optional implementation, the aforementioned URSP stream includes URSP rules with different priorities, and each URSP rule includes routing selection with different priorities. The terminal device determines the network slice used to establish a PDU session from multiple network slices associated with the URSP stream based on the first parameter and the slice or type of service (SST) field. This can mean that the terminal device selects a first network slice from multiple network slices associated with the URSP stream in descending order of priority according to the priority of the URSP rules and the priority of the routing selection. If the SST field of the first network slice matches the first parameter, the first network slice is determined as the network slice used to establish the PDU session.
[0009] As can be seen, the terminal device first selects the first network slice according to the rules specified in the protocol (i.e., the priority of URSP code stream and URSP rules). When the network slice type indicated by the SST field of the network slice is the same as the network slice identified by the first parameter, the first network slice is determined as the network slice used to establish the PDU session, so that the determined network slice is the network slice applicable to the terminal device itself.
[0010] In one optional implementation, the terminal device may further configure a dialing factor for each of the multiple routing options associated with the URSP stream. The initial value of the dialing factor is a first value; the first value is a real number; in the case that the establishment of a PDU session for each second network slice fails in the first routing option based on the network slice used to establish a PDU session, the dialing factor of the first routing option is reduced by a second value that is not zero; the second network slice is the network slice in the first routing option whose SST field matches the first parameter.
[0011] As can be seen, the terminal device configures a dialing factor for each group of routes. Furthermore, when establishing a PDU session using all network slices applicable to the terminal device within a given route selection fails, a second non-zero value is subtracted from the dialing factor of that route selection to indicate the route selection used when the PDU session establishment failed. This facilitates the terminal device in re-establishing the PDU session by referencing the route selection used when the previous PDU session establishment failed, thereby improving the efficiency of the terminal device in establishing PDU sessions.
[0012] In another optional implementation, the terminal device may also configure a dialing factor for the network slice whose SST field matches the first parameter among the multiple network slices associated with URSP. The initial value of the dialing factor is a first value; the first value is a real number; if the establishment of a PDU session based on the network slice used to establish the PDU session fails, the dialing factor of the network slice used to establish the PDU session is reduced by a second value that is not zero.
[0013] As can be seen, the terminal device configures a dialing factor for the network slice suitable for it among multiple network slices. When the terminal device fails to establish a PDU session using one of these network slices, a second non-zero value is subtracted from the dialing factor of that network slice to mark the network slice used when the PDU session establishment failed. This facilitates the terminal device in re-establishing the PDU session by identifying the network slice used when the previous PDU session establishment failed, thereby improving the efficiency of the terminal device in establishing PDU sessions.
[0014] In another optional implementation, if the terminal device successfully establishes a PDU session based on the network slice used to establish the PDU session, it configures a dialing factor for the network slice used to establish the PDU session, and the initial value of the dialing factor is a first value; the first value is a real number.
[0015] As can be seen, in this implementation, the terminal device configures a dialing factor for the network slice used when a PDU session is successfully established, thus marking the network slice used when the terminal device successfully established the PDU session. This allows the terminal device to directly use the network slice configured with the dialing factor when re-establishing a PDU session, thereby improving the success rate of establishing a PDU session.
[0016] In one optional implementation, the terminal device may further determine whether the network in which the terminal device is located has changed, or whether the URSP code stream used to establish the PDU session at the current time has changed, when the established PDU session is disconnected and reconnected to the network; if the network in which the terminal device is located or the URSP code stream used to establish the PDU session has not changed, the terminal device may determine the network slice used to establish the PDU session from multiple network slices associated with the URSP code stream according to the dialing factor of the routing selection associated with the URSP code stream, or the dialing factor of the associated network slice; and establish the PDU session based on the network slice used to establish the PDU session.
[0017] As can be seen, when a terminal device disconnects an established PDU session and reconnects to the network, if the network where the terminal device is located or the URSP code stream used to establish the current PDU session has not changed, the terminal device determines the network slice used to establish the PDU session based on the dialing factor of the routing selection or the dialing factor of the network slice. This method can avoid the terminal device using the routing selection or network slice used when the previous PDU session establishment failed, thereby improving the success rate of the terminal device establishing the PDU session.
[0018] In one optional implementation, when the second value is positive and the terminal device establishes a PDU session upon initial network access, a dialing factor is configured for each of the multiple routing options associated with the URSP stream. Then, when the URSP stream used by the terminal device to establish the PDU session in the network where the terminal device is located or at the current time remains unchanged, the network slice used to establish the PDU session is determined from the multiple network slices associated with the URSP stream based on the dialing factor of the routing option associated with the URSP stream. This can be achieved by: when the URSP stream used by the terminal device to establish the PDU session in the network where the terminal device is located or at the current time remains unchanged, selecting a second routing option in descending order of priority based on the priority of the URSP rules and the priority of the routing option; when the dialing factor of the second routing option is greater than a first threshold, selecting a third network slice from the multiple network slices associated with the second routing option; and when the SST field of the third network slice matches the first parameter, determining the third network slice as the network slice used to establish the PDU session.
[0019] It is evident that when the second value is positive, and the terminal device configures a dialing factor for each of the multiple routing options associated with the URSP code stream when establishing a PDU session initially accessing the network, then a dialing factor greater than the first threshold indicates that the number of times the terminal device failed to establish a PDU session using the network slice in that routing option before the PDU session was disconnected is within a certain range. The probability of the terminal device successfully establishing a PDU session using the network slice in that routing option is relatively high. Therefore, the terminal device can still use the network slice in that routing option to establish a PDU session, which helps improve the success rate of establishing a PDU session.
[0020] In another optional implementation, when the URSP code stream used by the terminal device to establish the PDU session remains unchanged in the network where the terminal device is located or at the current time, the terminal device determines the network slice used to establish the PDU session from multiple network slices associated with the URSP code stream based on the dialing factor of the routing selection associated with the URSP code stream. Alternatively, when the URSP code stream used by the terminal device to establish the PDU session remains unchanged in the network where the terminal device is located or at the current time, the terminal device selects a second routing selection in descending order of priority based on the priority of the URSP rules and the priority of the routing selection; when the dialing factor of the second routing selection is equal to the first value, the terminal device selects a third network slice from multiple network slices associated with the second routing selection; and when the SST field of the third network slice matches the first parameter, the third network slice is determined as the network slice used to establish the PDU session.
[0021] This is because the routing with the dialing factor value as the first value is a routing option that the terminal device has not used before. When the terminal device re-establishes a PDU session, it can use the network slices in these routing options to establish the PDU session, which can also improve the success rate of the terminal device establishing a PDU session.
[0022] In another optional implementation, the second value is positive, and the terminal device is one of multiple network slices, with the network slice applicable to the terminal device configured with a dialing factor. Then, when the URSP code stream used by the terminal device to establish a PDU session in the network where the terminal device is located or at the current time remains unchanged, the network slice used to establish the PDU session is determined from the multiple network slices associated with the URSP code stream based on the dialing factor of the network slice associated with the URSP code stream. This can mean: when the URSP code stream used by the terminal device to establish a PDU session in the network where the terminal device is located or at the current time remains unchanged, the third network slice configured with a dialing factor is selected according to the priority of the URSP rules and the priority of routing selection, in descending order of priority; when the dialing factor of the third network slice is greater than the first threshold or equal to the first value, the third network slice is determined as the network slice used to establish the PDU session.
[0023] In another optional implementation, if the terminal device configures a dialing factor for the network slice used when successfully establishing a PDU session, then when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the terminal device determines the network slice used to establish the PDU session from multiple network slices associated with the URSP code stream based on the dialing factor of the network slice associated with the URSP code stream. Alternatively, when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the network slice configured with the dialing factor is determined as the network slice used to establish the PDU session.
[0024] It is evident that by directly using a network slice configured with dialing factors to establish a PDU session, the terminal device can successfully establish a PDU session, thus improving the success rate of establishing a PDU session.
[0025] In one optional implementation, when the URSP code stream used by the terminal device to establish a PDU session changes in the network where the terminal device is located or at the current time, it indicates that the previously used URSP code stream is no longer suitable for establishing the current PDU session. Therefore, the terminal device clears the values of each dialing factor and performs the step of determining the network slice used to establish the Protocol Data Unit (PDU) session from multiple network slices associated with the URSP code stream based on the first parameter and the slice or service type (SST) field.
[0026] Secondly, this application also provides a communication device. This communication device has some or all of the functions of the terminal device described in the first aspect. For example, the communication device may have the functions of some or all of the embodiments of the terminal device described in the first aspect of this application, or it may have the functions of implementing any one of the embodiments of this application individually. The functions can be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more units or modules corresponding to the above functions.
[0027] In one possible design, the communication device may include a processing unit and a communication unit. The processing unit is configured to support the communication device in performing the corresponding functions described in the above method. The communication unit supports communication between the communication device and other communication devices. The communication device may also include a storage unit coupled to the processing unit and the transceiver unit, which stores necessary program instructions and data for the communication device.
[0028] In one embodiment, the communication device includes:
[0029] The processing unit is used to acquire the Routing Policy (URSP) bitstream sent by the network device;
[0030] The processing unit is further configured to determine, based on a first parameter and a slice or service type (SST) field, a network slice for establishing a Protocol Data Unit (PDU) session from among multiple network slices associated with the URSP stream, wherein the first parameter is a pre-configured parameter associated with the terminal device, the first parameter is used to identify the network slice type applicable to the terminal device, and the SST field is a field in the URSP stream used to identify the type of each network slice among the multiple network slices associated with the URSP stream;
[0031] The processing unit is also configured to establish a PDU session based on the network slice used to establish the PDU session.
[0032] In addition, other optional implementations of the uplink communication device in this regard can be found in the relevant content of the first aspect above, and will not be described in detail here.
[0033] As an example, the transceiver unit can be a transceiver or a communication interface, the storage unit can be a memory, and the processing unit can be a processor.
[0034] In one embodiment, the communication device includes:
[0035] The processor is used to acquire the Routing Policy (URSP) bitstream sent by the network device;
[0036] The processor is further configured to determine, based on a first parameter and a slice or service type (SST) field, a network slice for establishing a Protocol Data Unit (PDU) session from among multiple network slices associated with the URSP stream, wherein the first parameter is a pre-configured parameter associated with the terminal device, the first parameter is used to identify the network slice type applicable to the terminal device, and the SST field is a field in the URSP stream used to identify the type of each network slice among the multiple network slices associated with the URSP stream;
[0037] The processor is also used to establish a PDU session based on the network slice used to establish the PDU session.
[0038] In addition, other optional implementations of the uplink communication device in this regard can be found in the relevant content of the first aspect above, and will not be described in detail here.
[0039] In another embodiment, the communication device is a chip or chip system. The processing unit may also be a processing circuit or logic circuit; the transceiver unit may be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip or chip system.
[0040] In implementation, the processor can be used for, but is not limited to, baseband-related processing, and the transceiver can be used for, but is not limited to, radio frequency transceiver. These devices can be disposed on separate chips, or at least partially or entirely on the same chip. For example, the processor can be further divided into analog baseband processors and digital baseband processors. The analog baseband processor can be integrated with the transceiver on the same chip, while the digital baseband processor can be disposed on a separate chip. With the continuous development of integrated circuit technology, more and more devices can be integrated on the same chip. For example, a digital baseband processor can be integrated with multiple application processors (e.g., but not limited to graphics processors, multimedia processors, etc.) on the same chip. Such a chip can be called a System on a Chip (SoC). Whether the devices are disposed independently on different chips or integrated on one or more chips often depends on the needs of the product design. This application does not limit the implementation form of the above devices.
[0041] Thirdly, this application also provides a processor for executing the various methods described above. In executing these methods, the processes of sending and receiving the aforementioned information can be understood as the processor outputting the aforementioned information and the processor receiving the input information. When outputting the aforementioned information, the processor outputs the information to a transceiver for transmission. After being output by the processor, the information may require further processing before reaching the transceiver. Similarly, when the processor receives the input information, the transceiver receives the information and inputs it to the processor. Furthermore, after the transceiver receives the information, the information may require further processing before being input to the processor.
[0042] Based on the above principles, for example, the acquisition of the URSP bitstream mentioned in the aforementioned method can be understood as the processor inputting the URSP bitstream.
[0043] Unless otherwise specified, or unless it contradicts its actual function or internal logic in the relevant description, the transmission, receiving, and receiving operations involved in the processor can be more generally understood as processor output and receiving, input, and other operations, rather than transmission, receiving, and receiving operations directly performed by radio frequency circuits and antennas.
[0044] In implementation, the processor can be a dedicated processor for executing these methods, or it can be a processor that executes computer instructions stored in memory to execute these methods, such as a general-purpose processor. The memory can be a non-transitory memory, such as read-only memory (ROM), which can be integrated with the processor on the same chip or disposed on different chips. This application does not limit the type of memory or the arrangement of the memory and the processor.
[0045] Fourthly, this application also provides a communication system comprising at least one terminal device and at least one network device as described above. In another possible design, the system may further include other devices that interact with the terminal device and the network device as provided in this application.
[0046] Fifthly, this application provides a computer-readable storage medium for storing computer software instructions that, when executed by a communication device, implement the method described in the first aspect above.
[0047] Sixthly, this application also provides a computer program product including instructions that, when run on a communication device, cause the communication device to perform the method described in the first aspect above.
[0048] In a seventh aspect, this application provides a chip system including a processor and a communication interface. The communication interface is used for inputting and / or outputting information, and the processor is used to execute a computer-executable program, causing a terminal device equipped with the chip system to perform the functions involved in the first aspect. For example, determining or processing at least one of the data and information involved in the above methods. In one possible design, the chip system further includes a memory for storing necessary program instructions and data for the terminal. The chip system may be composed of chips or may include chips and other discrete devices. Attached Figure Description
[0049] Figure 1 This is a schematic diagram of the structure of a communication system provided in an embodiment of this application;
[0050] Figure 2 This is a schematic diagram of the structure of a URSP bitstream provided in an embodiment of this application;
[0051] Figure 3 This is a schematic diagram of the structure of network slice selection auxiliary information for a single network slice provided in an embodiment of this application;
[0052] Figure 4 This is a schematic diagram of a PDU session establishment process provided in an embodiment of this application;
[0053] Figure 5 This is a flowchart illustrating a network slice selection method provided in an embodiment of this application;
[0054] Figure 6 This is a flowchart illustrating another network slice selection method provided in an embodiment of this application;
[0055] Figure 7 This is a block diagram illustrating the implementation of establishing a PDU session according to an embodiment of this application;
[0056] Figure 8 This is a flowchart illustrating another network slice selection method provided in an embodiment of this application;
[0057] Figure 9 This is another implementation block diagram for establishing a PDU session provided in the embodiments of this application;
[0058] Figure 10 This is a schematic diagram of the structure of a communication device provided in an embodiment of this application;
[0059] Figure 11 This is a schematic diagram of another communication device provided in an embodiment of this application;
[0060] Figure 12 This is a schematic diagram of the structure of a chip provided in an embodiment of this application. Detailed Implementation
[0061] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.
[0062] First, in order to better understand the network slice selection method disclosed in the embodiments of this application, the communication system to which the embodiments of this application are applicable will be described.
[0063] Please see Figure 1 , Figure 1 This is a schematic diagram of a communication system provided in an embodiment of this application. The communication system may include, but is not limited to, a network device and a terminal device. Figure 1 The number and form of devices shown are for illustrative purposes and do not constitute a limitation on the embodiments of this application. In actual applications, it may include two or more network devices and two or more terminal devices. Figure 1 The communication system illustrated uses a network device and a terminal device as an example, where the network device is capable of providing services to the terminal device. Figure 1The network equipment mentioned here takes base stations as an example, and the terminal equipment takes customer premise equipment (CPE) products as an example. It is understood that terminal equipment is not limited to CPE products; it can also be any user device that can communicate with network equipment, such as mobile phones or tablets.
[0064] The technical solutions of the embodiments of this application can be applied to various communication systems. For example, fourth-generation (4G) mobile communication systems, fifth-generation (5G) mobile communication systems, sixth-generation (6G) mobile communication systems, and with the continuous development of communication technology, the technical solutions of the embodiments of this application can also be used in subsequent evolved communication systems, such as seventh-generation (7G) mobile communication systems, etc.
[0065] In this embodiment of the application, the network device is a CN device in the core network (CN). The CN may include one or more CN devices. Taking a 5G communication system as an example, the CN may include access and mobility management function (AMF) network elements, session management function (SMF) network elements, user plane function (UPF) network elements, policy control function (PCF) network elements, unified data management (UDM) network elements, application function (AF) network elements, etc.
[0066] AMF network elements are control plane network elements provided by the operator's network, responsible for access control and mobility management of terminal equipment accessing the operator's network, including functions such as mobility state management, allocation of temporary user identities, authentication and authorization of users.
[0067] The SMF (Service Provider Function) network element is a control plane network element provided by the operator's network, responsible for managing the Protocol Data Unit (PDU) sessions of terminal equipment. A PDU session is a channel used to transmit PDUs; terminal equipment needs to exchange PDUs with the data network (DN) through PDU sessions. The SMF network element is responsible for establishing, maintaining, and deleting PDU sessions. The SMF network element includes session management (such as session establishment, modification, and release, including tunnel maintenance between the UPF and RAN), UPF network element selection and control, service and session continuity (SSC) mode selection, roaming, and other session-related functions.
[0068] UPF network elements are gateways provided by operators, serving as the gateway for communication between the operator's network and the DN (Digital Network). UPF network elements include user plane-related functions such as packet routing and transmission, packet inspection, quality of service (QoS) processing, uplink packet inspection, and downlink packet storage.
[0069] PCF network elements are control plane functions provided by operators to provide PDU session policies to SMF network elements. These policies can include billing-related policies, QoS-related policies, and authorization-related policies.
[0070] AF network elements are functional network elements that provide various open services and provide interfaces for external third-party servers to interact with the core network. They can interact with the core network, including interacting with the policy management framework for policy management.
[0071] In addition, although not shown, CN may include other possible network elements, such as network exposure function (NEF) network elements, unified data repository (UDR) network elements, and network data analytics function (NWDAF) network elements.
[0072] In this embodiment, the terminal device includes a handheld device with wireless connectivity or a processing device connected to a wireless modem. The terminal device can communicate with the core network via a wireless access network. The terminal device may include user equipment (UE), wireless terminal equipment, mobile terminal equipment, device-to-device (D2D) terminal equipment, vehicle-to-everything (V2X) terminal equipment, machine-to-machine / machine-type communications (M2M / MTC) terminal equipment, internet of things (IoT) terminal equipment, subscriber unit, subscriber station, mobile station, remote station, access point (AP), remote terminal, access terminal, user terminal, user agent, or user equipment, etc. For example, it may include a mobile phone (or "cellular" phone), a computer with a mobile terminal device, portable, pocket-sized, handheld, or computer-embedded mobile devices, etc. Examples include personal communication service (PCS) phones, cordless phones, session initiation protocol (SIP) phones, wireless local loop (WLL) stations, personal digital assistants (PDAs), and other similar devices; it may also include limited devices, such as devices with low power consumption, limited storage capacity, or limited computing power. In this application, UE will be used to refer to the terminal device.
[0073] The embodiments of this application can be applied to terminal devices that have been specified with a network slice type, such as mobile broadband (MBB) products, or CPE products included in MBB products, etc.
[0074] To facilitate understanding of the embodiments disclosed in this application, the following two points are explained.
[0075] (1) The scenario in the embodiments disclosed in this application is illustrated by taking the scenario of 5G new radio (NR) network in wireless communication network as an example. It should be noted that the solution in the embodiments disclosed in this application can also be applied to other wireless communication networks, and the corresponding name can be replaced by the name of the corresponding function in other wireless communication networks.
[0076] (2) The embodiments disclosed in this application will be presented in relation to systems including multiple devices, components, modules, etc. It should be understood and appreciated that individual systems may include additional devices, components, modules, etc., and / or may not include all devices, components, modules, etc. discussed in conjunction with the accompanying drawings. Furthermore, combinations of these approaches may also be used.
[0077] Secondly, a brief introduction to the relevant concepts involved in the embodiments of this application will be given.
[0078] 1. Network slicing.
[0079] Network slicing refers to the virtualization of multiple isolated logical subnets with different characteristics within a 5G network on the same physical device, tailored to specific services, user functional requirements (such as billing, policy control, security, and mobility), and different performance requirements (such as latency, mobility, and reliability). This allows terminal devices to access network slices with varying characteristics.
[0080] 2. Terminal Routing Selection Policy (URSP) bitstream.
[0081] The URSP stream is a stream sent by the network device to the UE via signaling when the UE completes network registration, and is used by the UE to establish a protocol data unit session (PDU session).
[0082] like Figure 2As shown, a URSP stream includes one or more URSP rules. Each URSP rule includes a precedence value, which indicates the order in which the UE uses the URSP rules. The UE can determine the priority of the URSP rules based on their precedence values. Additionally, each URSP rule includes a triplet and one or more route selection options. The triplet includes the Internet Protocol (IP) address, protocol type, and port number. Each route selection option includes a precedence value, which indicates the order in which the UE uses the route selection options. The UE can determine the priority of each route selection option based on its precedence value. Each route selection option also includes network slice selection assistance information (NSSAI) and a data network name (DNN) / Internet Protocol type (IP_type). Each NSSAI includes one or more single-slice network slice selection assistance information (S-NSSAI).
[0083] Among them, S-NSSAI, such as Figure 3As shown, the S-NSSAI includes a first field, which is one byte, representing the type or service type of a single network slice (SST). Currently, when the value of the first field is 1, it indicates that the network slice or service type is enhanced mobile broadband (eMBB), and the first field can also correspond to one byte of binary 00000001; when the value of the first field is 2, it indicates that the network slice or service type is ultra-reliable and low-latency communication (URLLC), and the first field can also correspond to one byte of binary 00000010; when the value of the first field is 3, it indicates that the network slice or service type is massive machine type communication (mMTC), and the first field can also correspond to one byte of binary 00000011.
[0084] Additionally, the S-NSSAI includes a second field for identifying the slice differentiator (SD), which consists of 3 bytes. The SD is used to distinguish multiple network slices of the same SST. This SD is optional in the URSP bitstream; that is, the URSP bitstream may or may not include the SD.
[0085] Next, a brief description of the technical problem to be solved in this application will be given.
[0086] Currently, the process for establishing a PDU session based on network slicing is as follows: Figure 4As shown, the terminal device initiates a registration request to the network device, i.e., requests network registration. The network device responds to the registration request, and upon confirming that the terminal device has successfully registered, the network device informs the terminal device of the URSP stream via CPOLICYRPT signaling. The terminal device then parses the triplet information and traffic descriptor carried in the URSP stream according to the protocol standard, and sorts the URSP rules and route selections based on the priority values of the URSP rules and route selections in the URSP stream. The terminal device then selects a suitable network slice (i.e., a network slice carrying S-NSSAI allowed by the terminal device) in order of highest priority to lowest priority to establish a PDU session. After the terminal device successfully establishes a PDU session using a certain network slice (i.e., successfully dials up), it sends the triplet information corresponding to the network slice used to establish the PDU session to the routing process of the terminal device for network card configuration. In addition, after the terminal device parses the URSP stream, the upper-layer application of the terminal device obtains various NSSAIs from the modem through the AT (Attention) command and the C5GNSSAIRDP command. These NSSAIs include allowed NSSAIs, configured NSSAIs, and rejected NSSAIs. The S-NSSAIs subsequently parsed by the terminal device from the URSP stream must be within these allowed NSSAIs.
[0087] When a terminal device establishes a PDU session using a network slice determined by the priority of the URSP rule and the priority of the rote selection in the URSP stream, the network slice used may not be suitable for the terminal device. This can lead to a situation where, even if the PDU session is successfully established, the terminal device cannot use the network slice, resulting in wasted resources for the established PDU session. For example, if the terminal device is an MBB product, and this MBB product is a product with a specified service type that only supports network slices of type eMBB, and if, according to the protocol standard, the terminal device determines the highest priority URSP rule in the highest priority URSP stream and the network slice type corresponding to the highest priority rote selection in that URSP rule is of type uRLLC, then the network slice corresponding to the highest priority rote selection in that highest priority URSP rule is not suitable for the MBB product. In other words, even if the MBB product successfully establishes a PDU session using this network slice, but the MBB product cannot use the network slice, or its communication efficiency is low when using the network slice for network communication, then the established PDU session will be wasted, resulting in wasted PDU session resources.
[0088] This application provides a network slice selection method 100. In this method 100, when establishing a PDU session, the terminal device obtains the Routing Policy URSP stream sent by the network device. Based on a first parameter and the SST field (first field) corresponding to multiple network slices associated with the URSP stream, the terminal device determines the network slice used to establish the PDU session from these multiple network slices, and establishes the PDU session based on the determined network slice. The first parameter is a pre-configured parameter used to identify the type of network slice applicable to the terminal device. Therefore, the network slice determined by the terminal device based on the first parameter and the SST field is a suitable network slice for the terminal device itself, meaning that the terminal device uses a suitable network slice to establish the PDU session, thus avoiding resource waste caused by the terminal device using an unsuitable network slice to establish the PDU session.
[0089] This application also proposes a network slice selection method 200 for establishing a PDU session when a terminal device successfully registers with the network initially. The difference between this network slice selection method 200 and network slice selection method 100 is that, before initially establishing a PDU session based on a determined network slice, the terminal device can configure a dialup factor for each of the multiple routing choices associated with the URSP. Thus, if all second network slices in the first routing choice corresponding to the network slice used to establish the PDU session fail to establish a PDU session, the terminal device subtracts a non-zero second value from the dialup factor corresponding to the first routing choice. Each second network slice is a network slice in the first routing choice whose SST field matches the first parameter. This method marks the first routing choice where all network slices applicable to the terminal device in the first routing choice fail to establish a PDU session, ensuring that the dialup factor corresponding to the routing choice of the network slice where PDU session establishment failed is different from the dialup factor corresponding to the routing choice of the network slice where PDU session establishment was successful or has not yet established a PDU session. This helps improve the success rate of establishing a PDU session by selecting the network slice used to establish the PDU session based on the dialing factor of each routing option when the terminal device disconnects and re-establishes the PDU session.
[0090] Furthermore, this application also proposes a network slice selection method 300 for when a terminal device successfully re-registers with the network after an established PDU session is disconnected and a PDU session is re-established. In this network slice selection method 300, when the terminal device disconnects and reconnects to the network after an established PDU session is disconnected, and the network in which the terminal device is located has not changed, or the URSP codestream used to establish the PDU session has not changed, the network slice used to establish the PDU session is determined from multiple network slices based on the dialing factor corresponding to the routing associated with the URSP codestream, or based on the dialing factor corresponding to the network slice associated with the URSP codestream. This method avoids the terminal device using a failed routing selection or network slice used before the established PDU session was disconnected to establish the PDU session, thereby improving the efficiency of the terminal device in establishing the PDU session.
[0091] This application provides a network slice selection method 100. Figure 5 This is a flowchart illustrating the network slice selection method 100. The network slice selection method 100 is described from the perspective of the terminal device. The network slice selection method 100 includes, but is not limited to, the following steps:
[0092] S101. The terminal device obtains the Routing Policy (URSP) stream sent by the network device.
[0093] S102. The terminal device determines the network slice used to establish a Protocol Data Unit (PDU) session from multiple network slices associated with the URSP stream based on the first parameter and the slice or service type (SST) field. The first parameter is a pre-configured parameter associated with the terminal device, which is used to identify the type of network slice applicable to the terminal device. The SST field is a field in the URSP stream used to identify the type of each network slice among the multiple network slices associated with the URSP stream.
[0094] From the above and Figure 2 It can be seen that the URSP stream includes multiple URSP rules, each URSP rule includes multiple sets of routing choices, each set of routing choices includes an NSSAI, and the NSSAI includes one or more S-NSSAIs. Therefore, the NSSAI corresponds to one or more network slices, thus the URSP stream is associated with multiple network slices.
[0095] In one optional implementation, the URSP stream includes multiple URSP rules with different priorities, and each URSP rule includes multiple route selections with different priorities. The priority of each URSP rule is determined based on its priority value, and the priority of each route selection is determined based on its priority value. Therefore, the terminal device determines the network slice used to establish a Protocol Data Unit (PDU) session from the multiple network slices associated with the URSP stream based on the first parameter and the slice or type of service (SST) field. Specifically, the terminal device selects a first network slice from the multiple network slices associated with the URSP stream in descending order of priority based on the priority of the URSP rule and the priority of the route selection; if the SST field of the first network slice matches the first parameter, the first network slice is determined as the network slice used to establish the PDU session.
[0096] Understandably, the terminal device determines multiple network slices corresponding to the highest priority route selection in the highest priority URSP rule based on the priority of the URSP rule and the priority of the route selection. If the SST field of the first network slice among the multiple network slices corresponding to the highest priority route selection matches the first parameter, that is, the network slice type indicated by the SST field of the first network slice is the same as the network slice type identified by the first parameter, then the first network slice is the network slice used by the terminal device to establish a PDU session.
[0097] In addition, if the SST field of the first network slice does not match the first parameter, the terminal device examines whether the SST field of the fourth network slice located after the first network slice matches the first parameter in descending order of priority. If the SST field of the fourth network slice matches the first parameter, the SST field of the fourth network slice is determined as the network slice used to establish the PDU session.
[0098] If the SST field of each network slice corresponding to the highest priority route does not match the first parameter, the terminal device determines multiple network slices corresponding to the second-highest priority route in the highest priority URSP rule. If the SST field of the fifth network slice among the multiple network slices corresponding to the second-highest priority route matches the first parameter, then the fifth network slice is the network slice used by the terminal device to establish a PDU session. If the SST field of each network slice corresponding to the second-highest priority route still does not match the first parameter, the terminal device continues to determine multiple network slices corresponding to lower priority routes in the highest priority URSP rule until the SST field of one of these network slices matches the first parameter, at which point the network slice used to establish the PDU session is determined.
[0099] When the terminal device traverses all the network slices corresponding to the highest priority URSP rule and fails to determine the network slice for establishing the PDU session, the terminal device continues to traverse each route selection in the second highest priority URSP rule according to the principle of high to low priority, until the network slice for establishing the PDU session is determined.
[0100] Specifically, the terminal device determines whether the SST field matches the first parameter based on the byte (i.e., the first field) used to represent the SST field. In other words, after determining multiple network slices corresponding to a route selection, if the network slice type indicated by the SST field of the first network slice among these multiple network slices is the same as the network slice type identified by the first parameter, then the first network slice is the network slice used to establish a PDU session.
[0101] For example, the URSP stream received by the terminal device includes URSP rule #1 with priority A and URSP rule #2 with priority B. URSP rule #1 includes route selection #1 with priority A, route selection #2 with priority B, and route selection #3 with priority C. Route selection #1 includes network slice A, and route selection #2 includes network slice B and network slice C. URSP rule #2 with priority B includes route selection #4 with priority B and route selection #5 with priority C. The priority of A is higher than the priority of B, and the priority of B is higher than the priority of C. When establishing a PDU session, the terminal device determines that the URSP rule with the highest priority in the URSP stream is URSP rule #1, and the route selection with the highest priority in URSP rule #1 is route selection #1. Then, it determines whether the network slice type indicated by the SST field of network slice A in route selection #1 is the same as the network slice type identified by the first parameter. For example, if the first parameter identifies the network slice type as eMBB, and the SST field value of network slice A is 2, then the network slice type corresponding to network slice A is uRLLC. This means the SST field of network slice A does not match the first parameter, and network slice A is not the network slice for establishing a PDU session. Then, the terminal device continues to determine whether the SST field of each network slice in route selection #2 (the second highest priority in URSP rule #1) matches the first parameter. If the SST field value of network slice C is 1, then the network slice type of network slice C is eMBB. This means the SST field of network slice C matches the first parameter, and therefore network slice C is the applicable network slice for the terminal device and is also the network slice used to establish a PDU session.
[0102] In one optional implementation, the terminal device obtains a Routing Policy (URSP) stream sent by the network device. Specifically, this may include: the terminal device initiating a registration request to the network device, and upon successful registration, receiving the URSP stream from the network device. The terminal device then parses the URSP stream to obtain the priority of each URSP rule and the priority of the route selection included in each URSP rule.
[0103] S103. The terminal device establishes a PDU session based on the network slice used to establish the PDU session.
[0104] In one optional implementation, when the terminal device successfully establishes a PDU based on the network slice used to establish a PDU session, it sends the triplet information corresponding to the network slice to the routing process of the terminal device so that the routing process can configure the network card information, thereby enabling the terminal device to use the network slice.
[0105] In this embodiment, when the terminal device establishes the PDU session, it does so based on the network slice determined by the first parameter used to identify the applicable network slice type and the SST fields corresponding to the multiple network slices associated with the URSP bitstream. Therefore, the terminal device establishes the PDU session using an appropriate network slice. When the PDU session is successfully established, the terminal device can use the network slice, thereby avoiding resource waste caused by the terminal device establishing a PDU session using an inappropriate network slice.
[0106] This application also proposes a network slice selection method 200 when a terminal device successfully registers with the network and establishes a PDU session. Figure 6 A flowchart illustrating the network slice selection method 200. This network slice selection method 200 includes, but is not limited to:
[0107] S201. When the terminal device completes network registration for the first time, it obtains the Routing Policy (URSP) stream sent by the network device.
[0108] S202. The terminal device determines the network slice used to establish a Protocol Data Unit (PDU) session from multiple network slices associated with the URSP stream based on the first parameter and the slice or service type (SST) field. The first parameter is a pre-configured parameter associated with the terminal device, which is used to identify the type of network slice applicable to the terminal device. The SST field is a field in the URSP stream used to identify the type of each network slice among the multiple network slices associated with the URSP stream.
[0109] The implementation methods of S201 and S202 can be found in the implementation methods of S101 and S102 described above, and will not be repeated here.
[0110] S203a. The terminal device configures a dialing factor for each of the multiple routing options associated with the URSP stream. The initial value of the dialing factor is a first value; the first value is a real number.
[0111] It is understood that the execution order of S203a and S201, S202 is not limited in the embodiments of this application. That is, S203a may be executed before S201, or it may be executed between S201 and S202.
[0112] As can be seen from the above, the URSP stream includes multiple routing options, therefore the URSP stream is associated with multiple routing options.
[0113] The terminal device pre-configures a dialing factor for each route selection, with each dialing factor having an initial value of a first value. This first value can be any value, such as 0, 1, etc. In other words, each route selection in the URSP stream has a dialing factor.
[0114] S204. The terminal device establishes a PDU session based on the network slice used to establish the PDU session.
[0115] S205. If, in the first routing selection based on the network slice used to establish a PDU session, all second network slices fail to establish PDU sessions, the terminal device subtracts a non-zero second value from the dialing factor of the first routing selection. The second network slice is the network slice in the first routing selection whose SST field matches the first parameter.
[0116] The second value is any non-zero value, such as -1, 0, 2, etc.
[0117] Understandably, the routing selection to which the network slice used to establish the PDU session belongs is the first routing selection. When the terminal device fails to establish a PDU session based on the first network slice corresponding to the first routing selection, it continues to use other network slices corresponding to the first routing selection whose SST field matches the first parameter to establish a PDU session. When the terminal device fails to establish a PDU session based on all network slices in the first routing selection whose SST field matches the first parameter, the dialing factor of the first routing selection is subtracted by the second value. That is, when the terminal device fails to establish a PDU session based on all applicable network slices in the first routing selection, the dialing factor of the first routing selection is subtracted by the second value.
[0118] This method helps improve the success rate of establishing a PDU session when the terminal device disconnects and re-establishes the PDU session, based on the dialing factors of each route selection. For example, the terminal device does not select the network slice for establishing the PDU session from the route selection with the third dialing factor value. The third value is the value obtained by subtracting the second value from the first value. In other words, the terminal device does not select the network slice for re-establishing the PDU session from the route selection that failed to establish the PDU session before the disconnection, thereby improving the success rate of establishing the PDU session.
[0119] For example, the terminal device determines the highest priority URSP rule as URSP rule#1 based on the priority of the URSP rule and the priority of the routing selection. The highest priority routing selection within URSP rule#1 is routing selection#a, which includes network slice A, network slice B, and network slice C. The network slice types indicated by the SST fields of network slice A and network slice C are the same as those identified by the first parameter, while the network slice type indicated by the SST field of network slice B is different from those identified by the first parameter. Therefore, the terminal device first determines that network slice A is the network slice used to establish a PDU session. If the terminal device fails to establish a PDU session using network slice A, it then determines that network slice C is the network slice used to establish a PDU session. If the terminal device also fails to establish a PDU session using network slice C, it means that all PDU session establishment attempts using network slices in routing selection#a suitable for the terminal device have failed. In this case, the terminal device subtracts the second value from the dialing factor of routing selection#a.
[0120] In one optional implementation, after executing S201, the terminal device further includes: parsing the URSP bitstream to obtain the priority of each URSP rule in the URSP bitstream and the priority of the route selection included in each URSP rule.
[0121] The implementation block diagram of this application embodiment can be found in [reference]. Figure 7 .like Figure 7As shown, when the terminal device completes network registration for the first time, it parses the URSP stream from the network device to determine the priority of each URSP rule and each route selection in the URSP stream. The terminal device configures a dialing factor for each route selection associated with the URSP stream, with the initial value of the dialing factor being a first value. Then, based on the first parameter and the slice or type of service (SST) field, the terminal device determines the network slice used to establish the Protocol Data Unit (PDU) session from the multiple network slices associated with the URSP stream. That is, based on the network slice type applicable to the terminal device, the terminal device determines the network slice used to establish the PDU session from the multiple network slices associated with the URSP stream. If the terminal device successfully establishes a PDU using a specific network slice, it stores the dialing factor of the routing selection corresponding to that network slice locally, meaning no processing is performed on the dialing factor of the routing selection corresponding to that network slice. If the terminal device fails to establish a PDU using a specific network slice, it subtracts the second value from the value of the dialing factor of the routing selection corresponding to that network slice, and then, based on the first parameter and the slice or service type (SST) field, determines the network slice used to establish the Protocol Data Unit (PDU) session from the multiple network slices associated with the URSP stream, until the terminal device successfully establishes the PDU session.
[0122] In another implementation, the terminal device does not process the initial configuration value (first value) of the dialing factor for the network slice corresponding to the route selection used when the PDU session is successfully established. For unused network slices, the value of the dialing factor for the route selection corresponding to the network slice is also the initial value (first value).
[0123] In this embodiment, when the terminal device completes network registration for the first time, it obtains the Routing Policy (URSP) stream sent by the network device. Based on a first parameter identifying the type of network slice applicable to the terminal device, and the SST fields corresponding to the multiple network slices associated with the URSP stream, it determines the network slice used to establish a PDU session from among the multiple network slices associated with the URSP stream. A dialing factor is configured for each route associated with the URSP stream. Therefore, if the terminal device fails to establish a PDU session using any of the second network slices applicable to it in the first route selection corresponding to the network slice used to establish the PDU session, it subtracts a non-zero second value from the dialing factor of the first route selection. This improves the success rate of re-establishing a PDU session by using the dialing factor of the route selection when an established PDU session fails.
[0124] For example, suppose the URSP stream received by the terminal device is associated with five routes, such as route #a, route #b, route #c, route #d, and route #e. The terminal device configures a dialing factor for each of these five routes associated with the URSP. The initial value (i.e., the first value) of the dialing factor is preset to 1, and the second value is also preset to 1. Then, when the terminal device fails to establish a PDU session using all network slices whose SST matches the first parameter in route #a, the second value will be subtracted from the initial configuration value (i.e., the first value, which is 1) of the dialing factor corresponding to route #a, thus making the dialing factor of route #a 1-1=0. Meanwhile, the dialing factors corresponding to routes #b, #c, #d, and #e remain at their initial configuration values (i.e., the first value, which is 1). Therefore, when a terminal device re-establishes a PDU session after an established PDU session has been disconnected, it can select a suitable network slice from the route selection #a (i.e., the route selection with a dialing factor of 1) corresponding to the network slice to which the PDU session failed to be established before the PDU session was disconnected, based on the value of each dialing factor. This means selecting route selection #a, which corresponds to the network slice to which the PDU session was established before the disconnection, and re-establishing the PDU session. This avoids the terminal device using route selection #a to which the PDU session was established before the previous PDU session failed to be established, thus improving the efficiency of the terminal device in establishing PDU sessions.
[0125] Furthermore, the terminal device will not repeatedly attempt to establish a PDU session using the routing options corresponding to the network slices that previously failed to establish a PDU session. Consequently, the network device will not repeatedly reject the terminal device from establishing a PDU session for the same unsuccessful network slice. Therefore, there is no risk of the network device detaching the terminal device. In other words, there is no risk that the network device will consider the terminal device that repeatedly attempts to establish a PDU session using the unsuccessful network slice to be an untrusted terminal device, thereby marking the terminal device as a dangerous terminal device and preventing the terminal device from requesting registration from the network device.
[0126] In one optional implementation, if the terminal device successfully establishes a PDU using a specific network slice, a third value is added to the dialing factor of the routing selection corresponding to that network slice. This involves adding a third value to the first value corresponding to the routing selection, where the third value is any non-zero value. If, based on the first routing selection corresponding to the network slice used to establish the PDU session, all second network slices fail to establish PDU sessions, the dialing factor of the first routing selection is stored locally, meaning no further processing is performed on the dialing factor. This application does not limit the specific processing operations performed on the dialing factor of the routing selection corresponding to the network slice when the terminal device successfully or unsuccessfully establishes a PDU using a specific network slice.
[0127] In another alternative implementation, S203a described above can be replaced by S203b described below.
[0128] S203b: The terminal device configures dialing factors for the network slices whose SST field matches the first parameter among the multiple network slices associated with the URSP code stream. The initial value of each dialing factor is a first value, which is a real number.
[0129] Understandably, network slices whose SST field matches the first parameter are network slices applicable to the terminal device. In other words, the terminal device has configured a dialing factor for network slices whose network slice type is a type applicable to the terminal device. This dialing factor is used to mark network slices applicable to the terminal device among those associated with the URSP stream. However, the terminal device has not configured a dialing factor for network slices whose network slice type does not belong to the type applicable to the terminal device among the multiple network slices associated with the aforementioned URSP stream.
[0130] For example, the network slices associated with the URSP stream include network slice A, network slice B, network slice C, and network slice D. The network slice type indicated by the SST field of network slice A, network slice C, and network slice D is the same as the network slice type identified by the first parameter. Then, the terminal device configures a dialing factor for each of the network slices A, network slice C, and network slice D. The initial value of the dialing factor is 2.
[0131] Therefore, when a terminal device disconnects an established PDU session and re-establishes it, and the network in which the terminal device is located or the URSP code stream used to establish the PDU remains unchanged, the terminal device selects a third network slice configured with a dialing factor according to the priority of the URSP rule and the route selection, in descending order of priority. Based on the dialing factor of the third network slice, the terminal device determines whether the third network slice is the network slice used to establish the PDU session. Thus, the terminal device does not need to re-check whether the SST field of the third network slice matches the first parameter, thereby improving the efficiency of re-establishing the PDU session.
[0132] In another alternative implementation, S203a and S205 are not executed, and S206 is executed after S204.
[0133] S206: When the terminal device successfully establishes a PDU session based on the network slice used to establish the PDU session, it configures a dialing factor for the network slice used. The value of the dialing factor is a first value, which is a real number.
[0134] In this method, the dialing factor is used to identify the network slices associated with the URSP code stream that are applicable to the terminal device and have successfully established a PDU session. That is, a network slice with a configured dialing factor is both an applicable network slice for the terminal device and a network slice where the terminal device has successfully established a PDU session. A network slice without a configured dialing factor is either an inapplicable network slice for the terminal device, or an applicable network slice that is used when the terminal device fails to establish a PDU session.
[0135] Understandably, in this implementation, the terminal device adds a dialing factor to the network slice only when it successfully establishes a PDU session using the network slice determined based on the first parameter and the SST field. That is, the network slice marked with this dialing factor is the applicable network slice for the terminal device and also the network slice where the terminal device successfully established the PDU session. Therefore, if the terminal device disconnects an established PDU session and re-establishes one, and the network where the terminal device is located or the bitstream of the established PDU remains unchanged, the terminal device can directly use the network slice marked with the dialing factor to establish the PDU session. When the terminal device uses this network slice to establish the PDU session, it can successfully establish the PDU session, thereby avoiding the terminal device using previously unsuccessful network slices to establish the PDU session, and significantly increasing the probability of the terminal device successfully establishing a PDU session again.
[0136] When the location of a terminal device changes or the network connection becomes unstable, the terminal device may lose connection with the network device, meaning the established PDU session is disconnected. In this case, the terminal device needs to re-initiate a network registration request and, upon successful network registration, re-establish the PDU session. Therefore, this application proposes a network slice selection method 300 to address the issue of a disconnected PDU session and successful re-registration to the network, thus establishing the PDU session again. Figure 8 A flowchart illustrating method 300 for selecting network slices. This method 300 includes, but is not limited to:
[0137] S301. When an established PDU session is disconnected and reconnected to the network, the terminal device determines whether the network in which the terminal device is located has changed, or whether the URSP code stream used to establish the PDU session has changed.
[0138] After a PDU session is terminated, the geographical location of the terminal device changes, which may cause a change in the network the terminal device is in. For example, the cell the terminal device is in may change, or the base station it is connected to may change. When the network where the terminal device is in changes, the terminal device will receive the URSP code stream from the network device again. This URSP code stream may be the same as or different from the URSP code stream before the established PDU session was terminated.
[0139] In one optional implementation, the terminal device determines whether the network it is in has changed based on the IP address of the network it can connect to. If the IP address of the network it can connect to has not changed, it indicates that the network it is in has not changed; if the IP address of the network it can connect to has changed, it indicates that the network it is in has changed.
[0140] In one optional implementation, when a terminal device disconnects and reconnects to the network after an established PDU session has been terminated, it receives a URSP code stream from the network device. The terminal device then compares this URSP code stream with the URSP code stream used before the termination of the established PDU session. If the received URSP code stream is the same as the one used before the termination of the established PDU session, the terminal device determines that the URSP code stream used to re-establish the PDU session has not changed; if the received URSP code stream is different from the one used before the termination of the established PDU session, the terminal device determines that the URSP code stream used to re-establish the PDU session has changed.
[0141] In another optional implementation, when the terminal device does not receive the URSP code stream from the network device after the established PDU session is disconnected and reconnected to the network, the terminal device determines that the URSP code stream used to establish the current PDU session has not changed. That is, the terminal device can continue to use the URSP code stream used before the established PDU session was disconnected to re-establish the PDU session.
[0142] S302. When the network where the terminal device is located or the URSP code stream used to establish the PDU session has not changed, the terminal device determines the network slice used to establish the PDU session from multiple network slices associated with the URSP code stream based on the routing selection associated with the URSP code stream or the dialing factor of the associated network slice.
[0143] Understandably, if the network in which the terminal device is located or the URSP code stream used to establish the PDU session has not changed, the URSP code stream used by the terminal device before the established PDU session was disconnected can continue to be used. Furthermore, the terminal device can determine the network slice used to establish the PDU session from multiple network slices associated with the URSP based on the dialing factor of the routing selection associated with the URSP code stream, or the dialing factor of the associated network slice. In other words, when the terminal device establishes a PDU session again, it no longer determines the network slice for establishing the PDU session solely based on the priority of each URSP rule and each route selection in the URSP code stream; it also considers the dialing factors of each routing selection or each network slice. This allows it to refer to the routing selection or network slice situation used when the terminal device previously established the PDU session, thus helping the terminal device avoid using the routing selection or network slice used when the previous PDU session establishment failed, thereby improving the efficiency of the terminal device in successfully establishing the current PDU session.
[0144] The following describes several implementation methods for determining the network slice used to establish a PDU session from multiple network slices, based on different cases of the second value mentioned above, according to the routing selection or dialing factor of the network slice associated with the URSP code stream.
[0145] 1. The second value is a positive number.
[0146] 1.1, Case 1.
[0147] If the second value mentioned above is positive, and the terminal device configures a dialing factor for each of the multiple routing choices associated with the URSP code stream when initially establishing a PDU session on the network, then the terminal device determines the network slice used to establish the PDU session from the multiple network slices associated with the URSP code stream based on the dialing factor of the routing choice associated with the URSP code stream. This means that when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the second routing choice is determined according to the priority of the URSP rules and the priority of the routing choice, in descending order of priority. When the dialing factor of the second routing choice is greater than the first threshold, the third network slice is selected from the multiple network slices associated with the second routing choice. If the SST field of the third network slice matches the first parameter, the third network slice is determined as the network slice used to establish the PDU session.
[0148] The first threshold can be preset by the terminal device. If the second value is positive and the dialing factor of the routing selection is greater than the first threshold, it indicates that the number of times the terminal device failed to establish a PDU session using the network slice in this routing selection before the PDU session was disconnected is within a certain range. Therefore, the terminal device has a higher probability of successfully establishing a PDU session using the network slice in this routing selection, and can still use the network slice in this routing selection to establish a PDU session. Thus, when the dialing factor of the second routing selection is greater than the first threshold, the terminal device selects the network slice for establishing the PDU session from the multiple network slices associated with the second routing selection.
[0149] When the dialing factor of a route selection is less than a first threshold, it indicates that the terminal device has failed to establish a PDU session using the network slice associated with that route selection more than a certain number of times before the established PDU session was terminated. In other words, the number of failures is too high, and the network device may consider the terminal device untrustworthy. If the terminal device attempts to establish a PDU session using the network slice associated with that route selection again, there is a risk of being detached by the network device, meaning the terminal device will no longer be able to access the network corresponding to the network slice in that route selection. Therefore, when the dialing factor of a route selection is less than the first threshold, the terminal device will not use the network slice associated with that route selection to establish a PDU session.
[0150] For example, the first value is 2, and the second value is 1. If the terminal device fails to establish a PDU session using any network slice applicable to itself in route selection #a during the initial establishment of the PDU session, then the dialing factor of route selection #a is the first value minus the second value, which is 2-1 equals 1. Therefore, when the terminal device establishes a PDU session again, it determines the network slice used to establish the PDU session based on the priority of the URSP rule, the priority of the route selection, and the dialing factor of the route selection. Understandably, the terminal device determines the highest priority route selection in the highest priority URSP rule. If the dialing factor of this highest priority route selection is greater than 1 (the first threshold), it determines the network slice used to establish the PDU session within this highest priority route selection. That is, among the network slices included in this highest priority route selection, the network slice whose SST field matches the first parameter is the network slice used to establish the PDU session. This prevents the terminal device from using the network slices in the route selection (route selection #a) used when previous PDU session establishment failed, thus improving the success rate of the terminal device establishing a PDU session again.
[0151] 1.2, Case 2.
[0152] If the second value mentioned above is positive, and the terminal device adds a dialing factor to each network slice associated with the URSP code stream when establishing a PDU session initially, and the network slice type belongs to the network slice type applicable to the terminal device, then the terminal device selects the network slice for establishing the PDU session from multiple network slices based on the dialing factors of the multiple network slices associated with the URSP code stream. This means that when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the third network slice configured with the dialing factor is selected according to the priority of the URSP rules and the priority of routing selection, in descending order of priority; when the dialing factor of the third network slice is greater than the first threshold, the third network slice is determined as the network slice for establishing the PDU session.
[0153] 2. The second value is negative.
[0154] 2.1, Case 3.
[0155] If the second value is negative, and each of the multiple routing choices associated with the URSP code stream is configured with a dialing factor when the terminal device establishes a PDU session during initial network access, then the terminal device determines the network slice used to establish the PDU session from multiple network slices based on the dialing factor of the routing choice associated with the URSP code stream. This means that when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the second routing choice is determined according to the priority of the URSP rules and the priority of the routing choice, in descending order of priority. When the dialing factor of the second routing choice is less than the first threshold, the third network slice is selected from the multiple network slices associated with the second routing choice. If the SST field of the third network slice matches the first parameter, the third network slice is determined as the network slice used to establish the PDU session.
[0156] When the second value is negative, and the terminal device fails to establish a PDU session using a network slice applicable to a given route selection, the dialing factor of the used route selection minus the second value results in a positive value. This means that the route selection corresponding to a dialing factor with a value greater than the initial value is the route selection used when the PDU session establishment failed. Therefore, only values less than the first value minus the second value represent routes not used by the terminal device or routes used when the PDU session establishment was successful. Thus, among the multiple network slices associated with the second route selection whose dialing factor value is less than the first threshold, the terminal device determines that the network slice whose SST field matches the first parameter is the network slice used to establish the PDU session.
[0157] For example, the first value is 2, and the second value is -1. If the terminal device fails to establish a PDU session using all applicable network slices in route selection #a during the initial establishment of the PDU session, then the dialing factor of route selection #a is the first value minus the second value, which is 2 - (-1) equals 3. When the terminal device establishes a PDU session again, it first determines the second route selection based on the priority of the URSP rules and the priority of the route selection. If the dialing factor of the determined second route selection is less than 3 (the first threshold), it selects the network slice used to establish the PDU session from multiple network slices in the second route selection. This prevents the terminal device from using the route selection used when all previous PDU session establishments failed, thus improving the success rate of the terminal device establishing a PDU session again.
[0158] 2.2, Case 4.
[0159] If the second value mentioned above is negative, and the terminal device adds a dialing factor to each network slice associated with the URSP code stream when establishing a PDU session initially, for each network slice whose network slice type is applicable to the terminal device, then the terminal device selects a network slice for establishing a PDU session from multiple network slices based on the dialing factors of the multiple network slices associated with the URSP code stream. This means that when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the third network slice configured with a dialing factor is selected according to the priority of the URSP rules and the priority of routing selection, in descending order of priority; when the dialing factor of the third network slice is less than the first threshold, the third network slice is determined as the network slice for establishing the PDU session.
[0160] 3. Regardless of whether the second value is positive or negative.
[0161] 3.1, Case 5.
[0162] Regardless of whether the second value is positive or negative, if the terminal device configures a dialing factor for each of the multiple routing choices associated with the URSP code stream when establishing a PDU session initially accessing the network, then the terminal device determines the network slice used to establish the PDU session from multiple network slices based on the dialing factor of the routing choice associated with the URSP code stream. This means that when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the second routing choice is determined according to the priority of the URSP rules and the priority of the routing choice, in descending order of priority. When the dialing factor of the second routing choice is equal to the first value, the third network slice is selected from the multiple network slices associated with the second routing choice. If the SST field of the third network slice matches the first parameter, the third network slice is determined as the network slice used to establish the PDU session.
[0163] This is because the routing with the dialing factor value as the first value is a routing option that the terminal device has not used before. When the terminal device re-establishes a PDU session, it can use the network slices in these routing options to establish the PDU session, which can also improve the success rate of the terminal device establishing a PDU session.
[0164] 3.2, Case 6.
[0165] Regardless of whether the second value is positive or negative, if the terminal device adds a dialing factor to each network slice associated with the URSP code stream when establishing a PDU session initially, and the network slice type belongs to the network slice type applicable to the terminal device, then the terminal device determines the network slice used to establish the PDU session from multiple network slices based on the dialing factors of the multiple network slices associated with the URSP code stream. This means that when the network where the terminal device is located or the URSP code stream used to establish the PDU session at the current time has not changed, the third network slice configured with a dialing factor is selected according to the priority of the URSP rules and the priority of routing selection, in descending order of priority; when the dialing factor of the third network slice is equal to the first value, the third network slice is determined as the network slice used to establish the PDU session.
[0166] Before the established PDU session is disconnected, the terminal device uses a dialing factor to mark the network slices among the multiple network slices associated with the URSP code stream that are suitable for the terminal device. Therefore, the network slice with the first dialing factor value is either an unused and suitable network slice for the terminal device, or a network slice that successfully established a PDU session and is suitable for the terminal device. Thus, the terminal device selects a network slice from the network slices with the first dialing factor value to establish a PDU session according to the priority of the URSP rules and the priority of routing selection. This ensures that the terminal device uses both a suitable network slice and a network slice from which the previous PDU session establishment did not fail, thereby improving the success rate of the terminal device establishing a PDU session again.
[0167] In another optional implementation, if the terminal device adds a dialing factor to the network slice used when successfully establishing a PDU session during the initial access network, then when the URSP code stream remains unchanged, the terminal device can directly use the network slice configured with the dialing factor to establish a PDU session again, thereby improving the success rate of the terminal device in establishing a PDU session and avoiding the terminal device from repeatedly establishing a PDU session using a previously unsuccessful network slice.
[0168] S303. The terminal device establishes a PDU session based on this network slice.
[0169] In one optional implementation, when the network where the terminal device is located or the URSP code stream used to establish the PDU session changes, the terminal device clears the values of each dialing factor and performs the step of determining the network slice used to establish the Protocol Data Unit (PDU) session from multiple network slices associated with the URSP code stream based on the first parameter and the slice or type of service (SST) field.
[0170] In other words, when the network where the terminal device is located or the URSP code stream used to establish the PDU session changes, when the terminal device reconnects to the network after the PDU session is disconnected, it will not use the routing or network slice used before the PDU session was disconnected. In this case, the network slice marked by the dialing factor of the terminal device is also inapplicable. Therefore, the terminal device needs to clear the dialing factor value of each routing or network slice so that the terminal device can use the new URSP code stream and the network slice associated with the URSP code stream to establish the PDU session.
[0171] Additionally, the implementation block diagram of this application embodiment can be found in [reference needed]. Figure 9 .from Figure 9 As can be seen, when a terminal device disconnects an established PDU session and completes network registration again, it parses the URSP stream from the network device. After parsing the URSP stream, it determines whether the network in which the terminal device is located has changed, or whether the URSP stream used to establish the PDU session has changed. If the terminal device determines that the network in which it is located has not changed, or the URSP used to establish the PDU session has not changed, it determines the priority of each URSP rule and the priority of each route selection in the URSP stream used to establish the PDU session. Based on the priority of each URSP rule, the priority of each route selection, and the dialing factor of the routing selection or network slice, it determines the network slice used to establish the PDU session and uses the determined network slice to establish the PDU session. When a PDU session is successfully established, the terminal device stores the dialing factor of the network slice used or the routing selection to which the network slice belongs, without processing the dialing factor of the network slice or the routing selection to which the network slice belongs. When the terminal device fails to establish a PDU session using all network slices applicable to all terminal devices using a routing selection, the value of the dialing factor of the routing selection used is subtracted from the second value to record the routing selection used when the PDU session establishment failed.
[0172] If the terminal device determines that the network it is in has changed, or that the URSP used to establish the PDU session has changed, the terminal device clears the values of all dialing factors and performs the steps of determining the priority of each URSP rule and the priority of each route selection in the URSP stream.
[0173] In this application, when a terminal device disconnects and reconnects to the network after an established PDU session is completed, and the network in which the terminal device is located has not changed, or the URSP code stream used to establish the PDU session has not changed, the dialing factor of the routing selection associated with the URSP code stream of the network slice, or the dialing factor of the associated network slice, is used to determine the network slice used to establish the PDU session from multiple network slices. This avoids the terminal device using the failed routing selection or network slice used before the established PDU session was disconnected to establish the PDU session, thereby improving the efficiency of the terminal device in establishing the PDU session.
[0174] To achieve the functions of the methods provided in the embodiments of this application, the terminal device may include a hardware structure and / or software modules, implementing the functions in the form of a hardware structure, software modules, or a combination of hardware and software modules. Whether a particular function is executed in the form of a hardware structure, a software module, or a combination of hardware and software modules depends on the specific application and design constraints of the technical solution.
[0175] like Figure 10 As shown, this application provides a communication device 1000. The communication device 1000 can be a component of a terminal device (e.g., an integrated circuit, a chip, etc.). The communication device 1000 can also be other communication units used to implement the methods in the method embodiments of this application. The communication device 1000 may include a communication unit 1001 and a processing unit 1002. Optionally, it may also include a storage unit 1003.
[0176] In one possible design, such as Figure 10 One or more units may be implemented by one or more processors, or by one or more processors and memory; or by one or more processors and transceivers; or by one or more processors, memory, and transceivers. This application does not limit the implementation in this way. The processors, memory, and transceivers can be configured individually or integrated.
[0177] The communication device 1000 has the functions of the terminal device described in the embodiments of this application. For example, the communication device 1000 includes modules, units, or means corresponding to the steps involved in the terminal device described in the embodiments of this application. The functions, units, or means can be implemented by software, hardware, or hardware executing corresponding software, or a combination of software and hardware. Further details can be found in the corresponding descriptions in the foregoing method embodiments.
[0178] In one possible design, the communication device 1000 may include:
[0179] Processing unit 1002 is used to acquire the Routing Policy (URSP) code stream sent by the network device;
[0180] The processing unit 1002 is further configured to determine, based on a first parameter and a slice or service type (SST) field, a network slice for establishing a Protocol Data Unit (PDU) session from among multiple network slices associated with the URSP stream, wherein the first parameter is a pre-configured parameter associated with the terminal device, the first parameter is used to identify the network slice type applicable to the terminal device, and the SST field is a field in the URSP stream used to identify the type of each network slice among the multiple network slices associated with the URSP stream;
[0181] The processing unit 1002 is also configured to establish a PDU session based on the network slice used to establish the PDU session.
[0182] In one optional implementation, the URSP stream includes URSP rules with different priorities, and each URSP rule includes routing selection with different priorities. The processing unit 1002 determines the network slice used to establish a PDU session from multiple network slices associated with the URSP stream based on a first parameter and a slice or type of service (SST) field. Specifically, it selects a first network slice from the multiple network slices associated with the URSP stream in descending order of priority according to the priority of the URSP rules and the priority of the routing selection. If the SST field of the first network slice matches the first parameter, the first network slice is determined as the network slice used to establish the PDU session.
[0183] In an optional implementation, the processing unit 1002 is further configured to: configure a dialing factor for each of the multiple routing options associated with the URSP code stream, wherein the initial value of the dialing factor is a first value; the first value is a real number; in the case that each second network slice fails to establish a PDU session in the first routing option corresponding to the network slice used to establish a PDU session, the dialing factor of the first routing option is subtracted by a second value that is not zero; the second network slice is the network slice in the first routing option whose SST field matches the first parameter.
[0184] In another optional implementation, the processing unit 1002 is further configured to: configure a dialing factor for the network slice whose SST field matches the first parameter among the multiple network slices associated with the URSP, wherein the initial value of the dialing factor is a first value; the first value is a real number; and, in the event that the establishment of a PDU session based on the network slice used to establish the PDU session fails, subtract a non-zero second value from the dialing factor of the network slice used to establish the PDU session.
[0185] In another optional implementation, the processing unit 1002 is further configured to: configure a dialing factor for the network slice used to establish the PDU session if the PDU session is successfully established based on the network slice used to establish the PDU session, wherein the initial value of the dialing factor is a first value; the first value is a real number.
[0186] In an optional implementation, the processing unit 1002 is further configured to: determine whether the network where the processing unit is located has changed, or whether the URSP code stream used to establish the PDU session has changed, when the established PDU session is disconnected and reconnected to the network; if the network where the terminal device is located or the URSP code stream used to establish the PDU session has not changed, determine the network slice used to establish the PDU session from multiple network slices associated with the URSP code stream according to the dialing factor of the routing selection associated with the URSP code stream, or the dialing factor of the associated network slice; and establish the PDU session based on the network slice used to establish the PDU session.
[0187] In one optional implementation, the second value is a positive number; when the URSP codestream used to establish the PDU session in the network where the processing unit is located or at the current time has not changed, the processing unit 1002 determines the network slice used to establish the PDU session from multiple network slices associated with the URSP codestream according to the dialing factor of the routing selection associated with the URSP codestream. Specifically, it is used to: when the URSP codestream used to establish the PDU session in the network where the processing unit is located or at the current time has not changed, select a second routing selection in descending order of priority according to the priority of the URSP rule and the priority of the routing selection; when the dialing factor of the second routing selection is greater than a first threshold, select a third network slice from multiple network slices associated with the second routing selection; and when the SST field of the third network slice matches the first parameter, determine the third network slice as the network slice used to establish the PDU session.
[0188] In another optional implementation, when the URSP codestream used to establish the PDU session in the network where the processing unit is located or at the current time remains unchanged, the processing unit 1002 determines the network slice used to establish the PDU session from multiple network slices associated with the URSP codestream based on the dialing factor of the routing selection associated with the URSP codestream. Specifically, this involves: when the URSP codestream used to establish the PDU session in the network where the terminal device is located or at the current time remains unchanged, selecting a second routing selection in descending order of priority based on the priority of the URSP rules and the priority of the routing selection; when the dialing factor of the second routing selection is equal to the first value, selecting a third network slice from multiple network slices associated with the second routing selection; and when the SST field of the third network slice matches the first parameter, determining the third network slice as the network slice used to establish the PDU session.
[0189] In another optional implementation, the second value is a positive number; when the URSP code stream used to establish the PDU session in the network where the processing unit is located or at the current time has not changed, the processing unit 1002 determines the network slice used to establish the PDU session from multiple network slices associated with the URSP code stream according to the dialing factor of the network slice associated with the URSP code stream. Specifically, when the URSP code stream used to establish the PDU session in the network where the terminal device is located or at the current time has not changed, the processing unit 1002 selects the third network slice configured with the dialing factor in descending order of priority according to the priority of the URSP rule and the priority of the routing selection; when the dialing factor of the third network slice is greater than the first threshold or equal to the first value, the processing unit 1002 determines the third network slice as the network slice used to establish the PDU session.
[0190] In another optional implementation, when the URSP code stream used to establish the PDU session in the network where the processing unit is located or at the current time has not changed, the processing unit 1002 determines the network slice used to establish the PDU session from multiple network slices associated with the URSP code stream according to the dialing factor of the network slice associated with the URSP code stream. Specifically, when the URSP code stream used to establish the PDU session in the network where the terminal device is located or at the current time has not changed, the processing unit 1002 determines the network slice configured with the dialing factor as the network slice used to establish the PDU session.
[0191] In another optional implementation, the processing unit 1002 may further clear the values of each dialing factor and perform the step of determining the network slice used to establish the Protocol Data Unit (PDU) session from multiple network slices associated with the URSP code stream based on the first parameter and the slice or service type (SST) field when the network where the processing unit is located or the URSP code stream used to establish the PDU session changes.
[0192] The embodiments of this application and the method embodiments shown above are based on the same concept and have the same technical effects. For the specific principles, please refer to the description of the embodiments shown above, which will not be repeated here.
[0193] This application embodiment also provides a communication device 1100, Figure 11 This is a schematic diagram of the communication device 1100. The communication device 1100 can be a terminal device, or a chip, chip system, or processor that supports the terminal device in implementing the above methods. This device can be used to implement the methods described in the above method embodiments; please refer to the descriptions in the above method embodiments for details.
[0194] The communication device 1100 may include one or more processors 1101. The processor 1101 may be a general-purpose processor or a special-purpose processor. For example, it may be a baseband processor, digital signal processor, application-specific integrated circuit (ASIC), field-programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, or central processing unit (CPU). The baseband processor can be used to process communication protocols and communication data, while the CPU can be used to control the communication device (e.g., base station, baseband chip, terminal, terminal chip, DU or CU, etc.), execute software programs, and process data from the software programs.
[0195] Optionally, the communication device 1100 may include one or more memories 1102, which may store instructions 1104. These instructions can be executed on the processor 1101, causing the communication device 1100 to perform the methods described in the above method embodiments. Optionally, the memories 1102 may also store data. The processor 1101 and the memories 1102 may be provided separately or integrated together.
[0196] The memory 1102 may include, but is not limited to, non-volatile memory such as hard disk drive (HDD) or solid-state drive (SSD), random access memory (RAM), erasable programmable read-only memory (EPROM), read-only memory (ROM), or compact disc read-only memory (CD-ROM), etc.
[0197] Optionally, the communication device 1100 may further include a transceiver 1105. The transceiver 1105 may be referred to as a transceiver unit, transceiver, or transceiver circuit, etc., and is used to implement transceiver functions. The transceiver 1105 may include a receiver and a transmitter. The receiver may be referred to as a receiver or receiving circuit, etc., and is used to implement a receiving function; the transmitter may be referred to as a transmitter or transmitting circuit, etc., and is used to implement a transmitting function.
[0198] The communication device 1100 is a terminal device: the processor 1101 is used to execute S101, S102, and S103 in the network slice selection method 100, and to execute S201-S204 in the network slice selection method 200, and to execute S301-S303 in the network slice selection method 300.
[0199] In another possible design, the processor 1101 may include a transceiver for implementing receive and transmit functions. For example, the transceiver may be a transceiver circuit, an interface, or an interface circuit. The transceiver circuit, interface, or interface circuit for implementing receive and transmit functions may be separate or integrated. The aforementioned transceiver circuit, interface, or interface circuit may be used for reading and writing code / data, or it may be used for transmitting or relaying signals.
[0200] In another possible design, the processor 1101 may optionally store instructions 1103, which, when executed on the processor 1101, cause the communication device 1100 to perform the methods described in the above method embodiments. Instructions 1103 may be embedded in the processor 1101; in this case, the processor 1101 may be implemented in hardware.
[0201] In another possible design, the communication device 1100 may include circuitry that can perform the functions of transmitting, receiving, or communicating as described in the foregoing method embodiments. The processor and transceiver described in this application embodiment can be implemented on integrated circuits (ICs), analog ICs, radio frequency integrated circuits (RFICs), mixed-signal ICs, application-specific integrated circuits (ASICs), printed circuit boards (PCBs), electronic devices, etc. The processor and transceiver can also be manufactured using various IC process technologies, such as complementary metal oxide semiconductors (CMOS), n-type metal oxide semiconductors (NMOS), p-type metal oxide semiconductors (PMOS), bipolar junction transistors (BJTs), bipolar CMOS (BiCMOS), silicon germanium (SiGe), gallium arsenide (GaAs), etc.
[0202] The communication device described in the above embodiments may be a first communication device or a second communication device, but the scope of the communication device described in the embodiments of this application is not limited thereto, and the structure of the communication device may vary. Figure 11 The communication device may be a standalone device or part of a larger device. For example, the communication device may be:
[0203] (1) Independent integrated circuit IC, or chip, or chip system or subsystem;
[0204] (2) A collection of one or more ICs, optionally including a storage component for storing data and instructions;
[0205] (3) ASIC, such as modem;
[0206] (4) Modules that can be embedded in other devices;
[0207] (5) Receivers, terminals, smart terminals, cellular phones, wireless devices, handheld devices, mobile units, vehicle-mounted devices, network devices, cloud devices, artificial intelligence devices, etc.
[0208] (6) Others, etc.
[0209] For cases where the communication device can be a chip or a chip system, please refer to [link / reference]. Figure 12 The diagram shows the structure of the chip. Figure 12 The chip 1200 shown includes a processor 1201 and a communication interface 1202. The number of processors 1201 can be one or more, and the number of communication interfaces 1202 can be multiple. The chip 1200 may also include a memory 1203.
[0210] In one design, the chip is used to implement the functions of the terminal device in the embodiments of this application:
[0211] The processor 1201 is used to acquire the Routing Policy (URSP) code stream sent by the network device;
[0212] The processor 1201 is further configured to determine, based on a first parameter and a slice or service type (SST) field, a network slice for establishing a Protocol Data Unit (PDU) session from among multiple network slices associated with the URSP stream, wherein the first parameter is a pre-configured parameter associated with the terminal device, the first parameter is used to identify the network slice type applicable to the terminal device, and the SST field is a field in the URSP stream used to identify the type of each network slice among the multiple network slices associated with the URSP stream;
[0213] The processor 1201 is also configured to establish a PDU session based on the network slice used to establish the PDU session.
[0214] In this application embodiment, the communication device 1100 and chip 1200 can also execute the implementation method described in the communication device 1000 above. Those skilled in the art will also understand that the various illustrative logical blocks and steps listed in the embodiments of this application can be implemented by electronic hardware, computer software, or a combination of both. Whether such functionality is implemented through hardware or software depends on the specific application and the overall system design requirements. Those skilled in the art can use various methods to implement the described functions for each specific application, but such implementation should not be construed as exceeding the scope of protection of the embodiments of this application.
[0215] The embodiments of this application and the method embodiments shown in the above-described network slice selection methods 100 to 300 are based on the same concept and have the same technical effects. For the specific principles, please refer to the description of the embodiments shown in the above-described network slice selection methods 100 to 300, which will not be repeated here.
[0216] Those skilled in the art will also understand that the various illustrative logical blocks and steps listed in the embodiments of this application can be implemented by electronic hardware, computer software, or a combination of both. Whether such functionality is implemented through hardware or software depends on the specific application and the overall system design requirements. Those skilled in the art can implement the described functionality using various methods for each specific application, but such implementation should not be construed as exceeding the scope of protection of the embodiments of this application.
[0217] This application also provides a computer-readable storage medium for storing computer software instructions that, when executed by a communication device, implement the functions of any of the above method embodiments.
[0218] This application also provides a computer program product for storing computer software instructions, which, when executed by a communication device, implement the functions of any of the above method embodiments.
[0219] This application also provides a computer program that, when run on a computer, implements the functions of any of the above method embodiments.
[0220] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented, in whole or in part, as a computer program product. The computer program product includes one or more computer instructions. When the computer instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., high-density digital video discs (DVDs)), or semiconductor media (e.g., solid-state disks (SSDs)).
[0221] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A network slice selection method, applied to a terminal device, characterized in that, The method comprises: acquiring a routing policy (URSP) code stream sent by a network device; determining, according to a first parameter and a slice or service type (SST) field, a network slice for establishing a protocol data unit (PDU) session from a plurality of network slices associated with the URSP code stream, wherein the first parameter is a pre-configured parameter associated with the terminal device, the first parameter is used to identify a network slice type applicable to the terminal device, and the SST field is a field in the URSP code stream used to identify the type of each network slice in the plurality of network slices associated with the URSP code stream; the network slice type of the network slice for establishing the PDU session is the same as the network slice type identified by the first parameter; configuring a dialing factor for each routing selection in a plurality of routing selections associated with the URSP code stream, an initial value of the dialing factor being a first numerical value; the first numerical value is a real number; establishing the PDU session based on the network slice for establishing the PDU session; in a case where each second network slice fails to establish the PDU session in a first routing selection corresponding to the network slice for establishing the PDU session, subtracting a second numerical value that is not zero from the dialing factor of the first routing selection; the second network slice is a network slice in the first routing selection, the SST field of which matches the first parameter.
2. The method of claim 1, wherein, The URSP code stream comprises URSP rules of different priorities, and each URSP rule comprises routing selections of different priorities; The method further comprises: selecting a first network slice from the plurality of network slices associated with the URSP code stream in order of priority from high to low according to the priority of the URSP rule and the priority of the routing selection; in a case where the SST field of the first network slice matches the first parameter, determining the first network slice as the network slice for establishing the PDU session.
3. The method according to claim 1 or 2, characterized in that, The method further comprises: when the established PDU session is disconnected and the network is reconnected, determining whether the network in which the terminal device is located changes or whether the URSP code stream used to establish the PDU session at the current time changes; in a case where the network in which the terminal device is located or the URSP code stream used to establish the PDU session at the current time does not change, determining, according to the dialing factor of the routing selection associated with the URSP code stream, a network slice for establishing the PDU session from the plurality of network slices associated with the URSP code stream; establishing the PDU session based on the network slice for establishing the PDU session.
4. The method of claim 3, wherein, The second value is a positive number; when the URSP code stream used by the network where the terminal device is located or the current time to establish a PDU session does not change, the dialing factor of the routing selection associated with the URSP code stream is used to determine the network slice for establishing a PDU session from a plurality of network slices associated with the URSP code stream, comprising: When the URSP code stream used by the network where the terminal device is located or the current time to establish a PDU session does not change, the priority of the URSP rule and the priority of the routing selection are selected in order of priority from high to low according to the second routing selection; When the dialing factor of the second routing selection is greater than the first threshold value, a third network slice is selected from a plurality of network slices associated with the second routing selection; If the SST field of the third network slice matches the first parameter, the third network slice is determined as the network slice for establishing the PDU session.
5. The method of claim 3, wherein, The second value is a positive number; when the URSP code stream used by the network where the terminal device is located or the current time to establish a PDU session does not change, the dialing factor of the routing selection associated with the URSP code stream is used to determine the network slice for establishing a PDU session from a plurality of network slices associated with the URSP code stream, comprising: When the URSP code stream used by the network where the terminal device is located or the current time to establish a PDU session does not change, the priority of the URSP rule and the priority of the routing selection are selected in order of priority from high to low according to the second routing selection; When the dialing factor of the second routing selection is equal to the first value, a third network slice is selected from a plurality of network slices associated with the second routing selection; If the SST field of the third network slice matches the first parameter, the third network slice is determined as the network slice for establishing the PDU session.
6. The method according to any one of claims 3 to 5, characterized in that, The method further comprises: When the URSP code stream used by the network where the terminal device is located or the current time to establish a PDU session changes, the values of the dialing factors are cleared, and the step of determining the network slice for establishing a protocol data unit (PDU) session from a plurality of network slices associated with the URSP code stream according to the first parameter and the slice or service type (SST) field is executed.
7. A communication device, characterized by The communication device comprises: A processing unit configured to obtain a routing selection policy (URSP) code stream sent by a network device; The processing unit is further configured to determine, according to a first parameter and a slice or service type (SST) field, a network slice for establishing a protocol data unit (PDU) session from a plurality of network slices associated with the URSP code flow, wherein the first parameter is a pre-configured parameter associated with the communication device, the first parameter is used to identify a network slice type applicable to the communication device, and the SST field is a field in the URSP code flow used to identify a type of each network slice in the plurality of network slices associated with the URSP code flow; and the network slice type of the network slice for establishing the PDU session is the same as the network slice type identified by the first parameter. Each of the plurality of groups of routing options associated with the URSP code flow is configured with a dial factor, and an initial value of the dial factor is a first numerical value; and the first numerical value is a real number. The processing unit is further configured to establish a PDU session based on the network slice for establishing the PDU session. In a case where the PDU session fails to be established by each of the second network slices in the first routing option based on the network slice for establishing the PDU session, the dial factor of the first routing option is reduced by a second numerical value that is not zero; and the second network slice is a network slice in the first routing option, for which the SST field matches the first parameter.
8. The communication apparatus according to claim 7, wherein The URSP code flow includes URSP rules of different priorities, and each of the URSP rules includes routing options of different priorities. The processing unit determines, according to a first parameter and a slice or service type (SST) field, a network slice for establishing a PDU session from a plurality of network slices associated with the URSP code flow, specifically configured to: select, according to the priority of the URSP rule and the priority of the routing option, a first network slice from the plurality of network slices associated with the URSP code flow in a descending order of priority; and in a case where the SST field of the first network slice matches the first parameter, determine the first network slice as the network slice for establishing the PDU session.
9. A communications device, characterized by The communication device includes a processor and a communication interface, the communication interface is configured to communicate with other communication devices; and the processor is configured to run a program to enable the communication device to implement the method of any one of claims 1 to 6.
10. A computer-readable storage medium for storing computer software instructions, when the computer software instructions are run on a computer, the method of any one of claims 1 to 6 is executed.
11. A computer program product comprising instructions which, when executed on a computer, cause the method of any one of claims 1 to 6 to be performed.
12. A chip system, characterized by The communication device includes: a communication interface configured to input and / or output information; a processor configured to execute a computer executable program to enable a device installed with the chip system to perform the method of any one of claims 1 to 6.
Citation Information
Patent Citations
Communication method and device, and system
CN112087815A
Network selection method, connection method, terminal and storage medium
CN112350847A