# US 12,009,982 B2 · Network slice allocation method, terminal and storage medium

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,009,982 B2
- Document ID: US12009982B2
- Status: Granted
- Kind: B2
- Application number: 18/011,659
- Filed: 2021-05-24
- Published: 2023-10-19
- Granted: 2024-06-11
- Earliest claimed: 2020-06-28
- Assignees: Zte Corporation
- Applicants: Zte Corporation
- Inventors: Cheng Wang
- Web page: https://patentgrep.com/patent/US12009982B2

## CPC

- H04L 45/64: using an overlay routing layer
- H04L 41/0836: {to enhance reliability, e.g. reduce downtime}
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 41/5054: Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
- H04L 45/306: {Route determination based on the nature of the carried application}
- H04L 45/70: {Routing based on monitoring results}
- H04L 45/85: Selection among different networks
- H04L 41/40: using virtualisation of network functions or resources, e.g. SDN or NFV entities
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Embodiments of the present application relate to a network slice allocation method, a terminal and a storage medium, and belong to the field of communications. The method includes if it is monitored that an application program is in a running state, determining an application type to which the application program belongs; and selecting at least one network slice from network slices corresponding to the application type, and allocating the at least one network slice to the application program; and the network slices corresponding to the application type refer to the network slices which are matched with the application type in advance.

## Claims

### Claim 1

A network slice allocation method, comprising:
in response to monitoring that an application program is in a running state, determining an application type to which the application program belongs; and
selecting at least one network slice from network slices corresponding to the application type, and allocating the at least one network slice to the application program; wherein the network slices corresponding to the application type refer to the network slices which are matched with the application type in advance,
wherein selecting the at least one network slice from the network slices corresponding to the application type and allocating the at least one network slice to the application program comprises:
in response to the application program being in the foreground running state and monitoring that another application program belonging to the same application type as the application program is in the background running state, selecting the L network slices with higher network performance from the K network slices corresponding to the application type, and allocating the L network slices to the application program, where both L and K are integers greater than 0, and L is less than K; or
in response to the application program being in a background running state and monitoring that no other application programs belonging to the same application type as the application program are in the running state, selecting L network slices with higher network performance from K network slices corresponding to the application type, and allocating the L network slices to the application program, where both L and K are integers greater than 0, and L is less than or equal to K.

### Claim 2 (depends on 1)

The network slice allocation method of claim 1, wherein after selecting the L network slices with higher network performance from the K network slices corresponding to the application type and allocating the L network slices to the application program in response to the application program being in the foreground running state and monitoring that the another application program belonging to the same application type as the application program is in the background running state, the method further comprises:
selecting at least one network slice from remaining (K−L) network slices, and allocating the at least one network slice to the other application program.

### Claim 3 (depends on 2)

The network slice allocation method of claim 2, wherein selecting the at least one network slice from the remaining (K−L) network slices and allocating the at least one network slice to the other application program comprises:
in response to more than one another application program existing, selecting the at least one network slice from the remaining (K−L) network slices and allocating the at least one network slice to other application programs according to priority levels of the other application programs and network performance of the remaining (K−L) network slices; wherein the higher the priority level of one of the other application programs is, the higher the network performance of an allocated network slice is.

### Claim 4

A network slice allocation method, comprising:
in response to monitoring that an application program is in a running state, determining an application type to which the application program belongs;
selecting at least one network slice from network slices corresponding to the application type, and allocating the at least one network slice to the application program; wherein the network slices corresponding to the application type refer to the network slices which are matched with the application type in advance; and
in response to monitoring that a requirement of the application program for network performance of the network slices changes, determining a reason for a change in the requirement for the network performance, and adjusting the network slice allocated to the application program according to the reason,
wherein adjusting the network slice allocated to the application program according to the reason comprises one of the following operations:
in response to the reason being that an application type to which a current service of the application program belongs changes, selecting at least one network slice from network slices corresponding to the changed application type, and allocating the at least one network slice to the application program;
in response to the reason being that at least one of a number of socket requests or a number of download threads of the application program decreases, reducing the network slice allocated to the application program; or
in response to the reason being that the application program is frozen, releasing the network slice allocated to the application program.

### Claim 5 (depends on 1)

The network slice allocation method of claim 1, after selecting and allocating the at least one network slice to the application program, further comprising:
in response to monitoring that a battery level is lower than a preset value, performing at least one of the following operations:
reducing a network slice allocated to an application program which is in a foreground running state, or
enabling, in a case where a number of network slices allocated to application programs that are in a background running state is greater than 1, all the application programs that are in the background running state to use one network slice, and releasing, in a case where the number of the network slices allocated to the application programs that are in the background running state is equal to 1, a network slice allocated to the application programs that are in the background running state.

### Claim 6 (depends on 1)

The network slice allocation method of claim 1, wherein network slices matched with each application type are the network slices acquired through a built-in first non-data card; and after selecting and allocating the at least one network slice to the application program, the method further comprises:
in response to monitoring that a network performance index value of the network slices acquired through the first non-data card is smaller than a preset index value, acquiring network slices through a built-in second non-data card; and
in response to the network slices acquired through the second non-data card being capable of meeting a service requirement of each application type, matching the network slices with each application type again according to the network slices acquired through the second non-data card.

### Claim 7 (depends on 1)

The network slice allocation method of claim 1, wherein the network slices are matched with the application type in advance in a following way:
acquiring a plurality of network slices through a built-in first non-data card, and activating the plurality of network slices;
classifying application programs according to main service types of the application programs; and
matching the plurality of network slices with application types according to a requirement of each of the application types for network performance of the network slices.

### Claim 8

A terminal, comprising:
at least one processor; and
a memory which is connected to and communicates with the at least one processor;
wherein the memory has an instruction executable by the at least one processor stored therein which, when executed by the at least one processor, enables the at least one processor to:
in response to monitoring that an application program is in a running state, determine an application type to which the application program belongs; and
select at least one network slice from network slices corresponding to the application type, and allocate the at least one network slice to the application program;
wherein the network slices corresponding to the application type refer to the network slices which are matched with the application type in advance,
wherein selecting the at least one network slice from the network slices corresponding to the application type and allocating the at least one network slice to the application program comprises:
in response to the application program being in the foreground running state and monitoring that another application program belonging to the same application type as the application program is in the background running state, selecting the L network slices with higher network performance from the K network slices corresponding to the application type, and allocating the L network slices to the application program, where both L and K are integers greater than 0, and L is less than K; or
in response to the application program being in a background running state and monitoring that no other application programs belonging to the same application type as the application program are in the running state, selecting L network slices with higher network performance from K network slices corresponding to the application type, and allocating the L network slices to the application program, where both L and K are integers greater than 0, and L is less than or equal to K.

### Claim 9 (depends on 1)

A non-transitory computer-readable storage medium storing a computer program which, when executed by a processor, causes the processor to perform the network slice allocation method of claim 1.

### Claim 10 (depends on 8)

The terminal of claim 8, wherein the memory has an instruction executable by the at least one processor stored therein which, when executed by the at least one processor, further enables the at least one processor to:
after selecting the L network slices with higher network performance from the K network slices corresponding to the application type and allocating the L network slices to the application program in response to the application program being in the foreground running state and monitoring that the another application program belonging to the same application type as the application program is in the background running state, select at least one network slice from remaining (K−L) network slices, and allocating the at least one network slice to the another application program.

### Claim 11 (depends on 10)

The terminal of claim 10, wherein selecting the at least one network slice from the remaining (K−L) network slices and allocating the at least one network slice to the other application program comprises:
in response to more than one another application program existing, selecting the at least one network slice from the remaining (K−L) network slices and allocating the at least one network slice to other application programs according to priority levels of the other application programs and network performance of the remaining (K−L) network slices; wherein the higher the priority level of one of the other application programs is, the higher the network performance of an allocated network slice is.

### Claim 12

A terminal, comprising:
at least one processor; and
a memory which is connected to and communicates with the at least one processor;
wherein the memory has an instruction executable by the at least one processor stored therein which, when executed by the at least one processor, enables the at least one processor to:
in response to monitoring that an application program is in a running state, determine an application type to which the application program belongs;
select at least one network slice from network slices corresponding to the application type, and allocate the at least one network slice to the application program;
wherein the network slices corresponding to the application type refer to the network slices which are matched with the application type in advance; and
in response to monitoring that a requirement of the application program for network performance of the network slices changes, determine a reason for a change in the requirement for the network performance, and adjust the network slice allocated to the application program according to the reason,
wherein adjusting the network slice allocated to the application program according to the reason comprises one of the following operations:
in response to the reason being that an application type to which a current service of the application program belongs changes, selecting at least one network slice from network slices corresponding to the changed application type, and allocating the at least one network slice to the application program;
in response to the reason being that at least one of a number of socket requests or a number of download threads of the application program decreases, reducing the network slice allocated to the application program; or
in response to the reason being that the application program is frozen, releasing the network slice allocated to the application program.

### Claim 13 (depends on 8)

The terminal of claim 8, wherein the memory has an instruction executable by the at least one processor stored therein which, when executed by the at least one processor, further enables the at least one processor to:
after selecting and allocating the at least one network slice to the application program,
in response to monitoring that a battery level is lower than a preset value, perform at least one of the following operations:
reducing a network slice allocated to an application program which is in a foreground running state, or
enabling, in a case where a number of network slices allocated to application programs that are in a background running state is greater than 1, all the application programs that are in the background running state to use one network slice, and releasing, in a case where the number of the network slices allocated to the application programs that are in the background running state is equal to 1, a network slice allocated to the application programs that are in the background running state.

### Claim 14 (depends on 8)

The terminal of claim 8, wherein network slices matched with each application type are the network slices acquired through a built-in first non-data card; and the memory has an instruction executable by the at least one processor stored therein which, when executed by the at least one processor, further enables the at least one processor to:
after selecting and allocating the at least one network slice to the application program,
in response to monitoring that a network performance index value of the network slices acquired through the first non-data card is smaller than a preset index value, acquire network slices through a built-in second non-data card; and
in response to the network slices acquired through the second non-data card being capable of meeting a service requirement of each application type, match the network slices with each application type again according to the network slices acquired through the second non-data card.

### Claim 15 (depends on 4)

A non-transitory computer-readable storage medium storing a computer program which, when executed by a processor, causes the processor to perform the network slice allocation method of claim 4.
