Systems and methods for automatic application-level network slicing over private cellular networks
A device may include a processor configured to detect that a communication session in a private cellular wireless network is associated with an application and determine that data units associated with the communication session match a network slicing rule associated with the private cellular wireless network. The processor may be further configured to classify the communication session to a network slice based on the network slicing rule and assign the data units associated with the communication session to the network slice.
1 . A method comprising:
determining, by a device, that data units associated with a communication session match a network slicing rule for a cellular wireless network;
classifying, by the device, the communication session to a network slice based on the network slicing rule; and
assigning, by the device, the data units associated with the communication session to the network slice.
2 . The method of claim 1 , wherein the network slicing rule assigns different applications of a same application type to different network slices.
3 . The method of claim 1 , further comprising:
receiving the network slicing rule from an orchestration device, wherein the network slicing rule assigns a particular application to a particular network slice; and
storing the network slicing rule in a database associated with a traffic classifier.
4 . The method of claim 1 , further comprising:
detecting that the data units associated with the communication session include a virtual local area network (VLAN) identifier, wherein the network slicing rule associates the VLAN identifier with an application;
detecting that the communication session in the cellular wireless network is associated with the application, in response to detecting that the data units associated with the communication session include the VLAN identifier; and
wherein the assigning the data units associated with the communication session to the network slice is performed based on detecting that the communication session in the cellular wireless network is associated with the application.
5 . The method of claim 1 , further comprising:
detecting that the communication session is associated with an Internet Protocol (IP) address and port number, wherein the network slicing rule associates the IP address and port number with an application;
detecting that the communication session in the cellular wireless network is associated with the application, in response to detecting that the communication session is associated with the IP address and port number; and
wherein the assigning the data units associated with the communication session to the network slice is performed based on detecting that the communication session in the cellular wireless network is associated with the application.
6 . The method of claim 1 , further comprising:
detecting that the data units associated with the communication session include a device group identifier, wherein the network slicing rule associates the device group identifier with an application;
detecting that the communication session in the cellular wireless network is associated with the application, in response to detecting that the data units associated with the communication session include the device group identifier; and
wherein the assigning the data units associated with the communication session to the network slice is performed based on detecting that the communication session in the cellular wireless network is associated with the application.
7 . The method of claim 1 , further comprising:
detecting that the data units associated with the communication session satisfy a data unit parameter criterion; and
wherein the assigning the data units associated with the communication session to the network slice is performed based on detecting that the data units associated with the communication session in the cellular wireless network satisfy the data unit parameter criterion.
8 . The method of claim 7 , wherein detecting that the data units associated with the communication session satisfy the data unit parameter criterion includes at least one of:
determining that the data units associated with the communication session are associated with a pattern of one uplink data unit to multiple downlink data units,
determining that a payload associated with uplink data units is greater than an uplink payload threshold, or
determining that a cumulative payload associated with downlink data units is greater than a downlink payload threshold.
9 . The method of claim 1 , further comprising:
detecting that the data units associated with the communication session correspond to video data units; and
wherein the assigning the data units associated with the communication session to the network slice is performed based on detecting that the data units associated with the communication session correspond to video data units.
10 . The method of claim 9 , wherein detecting that the data units associated with the communication session correspond to video data units includes at least one of:
determining that throughput associated with the data units is greater than a throughput threshold,
determining that an average downlink payload associated with the data units is greater than a payload threshold, or
determining that a data unit count associated with the data units is greater than a data unit count threshold.
11 . The method of claim 1 , wherein assigning the data units associated with the communication session to the network slice includes:
assigning the data units associated with the communication session to a particular class of service.
12 . The method of claim 1 , wherein the device includes:
a packet data network gateway (PGW),
an eNodeB,
a User Plane Function (UPF), or
a gNodeB.
13 . A device comprising:
a processor configured to:
determine that data units associated with a communication session match a network slicing rule for a cellular wireless network;
classify the communication session to a network slice based on the network slicing rule; and
assign the data units associated with the communication session to the network slice.
14 . The device of claim 13 , wherein the network slicing rule assigns different applications of a same application type to different network slices.
15 . The device of claim 13 , wherein the processor is further configured to:
receive the network slicing rule from an orchestration device, wherein the network slicing rule assigns a particular application to a particular network slice; and
store the network slicing rule in a database associated with a traffic classifier.
16 . The device of claim 13 , wherein the processor is further configured to:
detect that the data units associated with the communication session include a virtual local area network (VLAN) identifier, wherein the network slicing rule associates the VLAN identifier with an application;
detect that the communication session in the cellular wireless network is associated with the application, in response to detecting that the data units associated with the communication session include the VLAN identifier; and
wherein, when assigning the data units associated with the communication session to the network slice, the processor is configured to perform the assigning based on detecting that the communication session in the cellular wireless network is associated with the application.
17 . The device of claim 13 , wherein the processor is configured to assign the data units associated with the communication session to the network slice based on at least one of:
determining that the data units associated with the communication session are associated with a pattern of one uplink data unit to multiple downlink data units,
determining that a payload associated with uplink data units is greater than an uplink payload threshold, or
determining that a cumulative payload associated with downlink data units is greater than a downlink payload threshold.
18 . The device of claim 13 , wherein the processor is configured to assign the data units associated with the communication session to the network slice based on determining that the data units associated with the communication session correspond to video data units.
19 . The device of claim 13 , wherein, when assigning the data units associated with the communication session to the network slice, the processor is further configured to:
assign the data units associated with the communication session to a particular class of service.
20 . A non-transitory computer-readable memory device storing instructions executable on a processor, the non-transitory computer-readable memory device comprising:
one or more instructions to determine that data units associated with a communication session match a network slicing rule for a cellular wireless network;
one or more instructions to classify the communication session to a network slice based on the network slicing rule; and
one or more instructions to assign the data units associated with the communication session to the network slice.