EP-4740409-A1 - SYSTEM AND METHOD FOR MANAGING FLOW RULES IN A NETWORK
Abstract
The present invention relates to method (400) and a system (108) for managing flow rules in a network (106) The method (400) includes step of creating of a plurality of flow rules utilizing at least one network interface unit. The plurality of flow rules includes at least one or more packet segregation rules and packet distribution rules. The method (400) further includes the step of applying one or more packet segregation rules for each of the received data packets to segregate the data packets and applying one or more packet distribution rules for each of the segregated data packets to distribute the data packets to a plurality of processing units based on a type of data packet pattern. Advantageously, the complexity and the repetition of the flow rules are minimized which results in concise implementation and obviates the need of defining multiple flow rules to resolve the conflicts.
Inventors
- BHATNAGAR, AAYUSH
- JHA, ADITYAKAR
- Ranjan, Anu
- MALHOTRA, PANKAJ
- Sengupta, Swarup
- Mamgain, Ranjan
- VASHISHTH, Yog
Assignees
- Jio Platforms Limited
Dates
- Publication Date
- 20260513
- Application Date
- 20240627
Claims (1)
- We Claim: 1. A system (108) for managing flow rules in a network (106), the system (108) comprising: a plurality of data packet sources; and a User Plane Function (UPF) unit (210) in communication with each of the plurality of data packet sources via a plurality of interface units, wherein the UPF unit (210) is configured to: receive, data packets from the plurality of data packet sources via the plurality of interface units; create, a plurality of flow rules utilizing at least one network interface unit (206), wherein the plurality of flow rules includes at least one or more packet segregation rules and packet distribution rules; apply, one or more packet segregation rules for each of the received data packets to segregate the data packets subsequent to satisfying one or more predefined conditions; and apply, one or more packet distribution rules for each of the segregated data packets to distribute the data packets to a plurality of processing units (214) based on a type of data packet pattern. 2. The system (108) as claimed in claim 1 , wherein the plurality of interface units includes at least one of, N3 interface, N6 interface and N9 interface. 3. The system (108) as claimed in claim 1, wherein the plurality of data packet sources includes at least one of, User Equipment (UE) (102), data network (110) and Intermediate User Plane function (I-UPF) (112). 4. The system (108) as claimed in claim 3, wherein the UE (102) is in communication with the UPF unit (210) via the N3 interface, the data network (110) is in communication with the UPF unit (210) via the N6 interface and I- UPF (112) is in communication with the UPF unit (210) via the N9 interface. 5. The system (108) as claimed in claim 1, wherein the packet segregation rules are arranged in a primary table. 6. The system (108) as claimed in claim 5, wherein the UPF unit (210) is configured to: route the data packet to one or more secondary tables from the primary table upon satisfying the one or more pre-defined conditions, wherein the one or more pre-defined conditions are satisfied when a Virtual Local Area Network (VLAN) ID of the data packet corresponds to at least one of the plurality of interface units. 7. The system (108) as claimed in claim 6, wherein the UPF unit (210) is configured to equally distribute the data packets from at least one or more secondary tables to a plurality of processing units subsequent to satisfying the one or more pre-defined conditions utilizing the one or more packet distribution rules. 8. The system (108) as claimed in claim 1, wherein the network interface unit (206) is at least one of, a Network Interface Card (NIC). 9. The system (108) as claimed in claim 1, wherein the plurality of flow rules includes one or more packet segregation rules and one or more packet distribution rules, the one or more packet segregation rules pertain to segregating the data packets based on receiving the data packets via a specific interface unit from the available plurality of interface units, and the one or more packet distribution rules pertain to distributing the data packets to a plurality of processing units (214) based on load distribution. 10. The system (108) as claimed in claim 1, wherein the plurality of flow rules are created for the data packets related to the type of data packet patterns using one or more features of the network interface unit, wherein the type of data packet patterns includes at least one of, Ethernet, Virtual Local Area Network (VLAN)-Id, Internet Protocol version 4 (IPv4)/ Internet Protocol version 6 (IPv6), General Packet Radio Service Tunneling protocol (GTP), Transaction Protocol Data Unit (TPDU), Internet Protocol (IP)/Subnet, GTP with and without Primary scrambling code (PSCs), Differentiated Services Code Point (DSCP) and Quality of Service Flow Identifier (QFI) marking. 11. A method (400) for managing flow rules in a network (106), the method (400) comprises the steps of: receiving, by one or more processors (202), data packets from a plurality of data packet sources via a plurality of interface units; creating, by the one or more processors (202), a plurality of flow rules utilizing at least one network interface unit (206), wherein the plurality of flow rules includes at least one or more packet segregation rules and packet distribution rules; applying, by the one or more processors (202), one or more packet segregation rules for each of the received data packets to segregate the data packets subsequent to satisfying one or more predefined conditions; and applying, by the one or more processors (202), one or more packet distribution rules for each of the segregated data packets to distribute the data packets to a plurality of processing units (214) based on a type of data packet pattern. 12. The method (400) as claimed in claim 11, wherein the plurality of interface units includes at least one of, N3 interface, N6 interface and N9 interface. 13. The method (400) as claimed in claim 11, wherein the plurality of data packet sources includes at least one of, User Equipment (UE) (102), data network (110) and Intermediate User Plane function (I-UPF) (112). 14. The method (400) as claimed in claim 13, wherein the UE (102) is in communication with the one or more processors (202)via the N3 interface, the data network (110) is in communication with the one or more processors (202) via the N6 interface and I-UPF (212) is in communication with the one or more processors (202)via the N9 interface. 15. The method (400) as claimed in claim 11, wherein the packet segregation rules are arranged in a primary table. 16. The method (400) as claimed in claim 15, wherein the one or more processors (202) is configured to: route the data packet to one or more secondary tables from the primary table upon satisfying the one or more pre-defined conditions, wherein the one or more pre-defined conditions are satisfied when a Virtual Local Area Network (VLAN) ID of the data packet corresponds to at least one of the plurality of interface units. 17. The method (400) as claimed in claim 16, wherein the one or more processors (202) is configured to equally distribute the data packets from at least one or more secondary tables to a plurality of processing units (214) subsequent to satisfying the one or more pre-defined conditions utilizing the one or more packet distribution rules. 18. The method (400) as claimed in claim 11, wherein the network interface unit (206) is at least one of, a Network Interface Card (NIC). 19. The method (400) as claimed in claim 11, wherein the plurality of flow rules includes one or more packet segregation rules and one or more packet distribution rules, the one or more packet segregation rules pertain to segregating the data packets based on receiving the data packets via a specific interface unit from the available plurality of interface units, and the one or more packet distribution rules pertain to distributing the data packets to a plurality of processing units (214) based on load distribution. 20. The method (400) as claimed in claim 11 , wherein the plurality of flow rules are created for the data packets related to the type of data packet patterns using one or more features of the network interface unit, wherein the type of data packet patterns includes at least one of, Ethernet, Virtual Local Area Network (VLAN)-Id, Internet Protocol version 4 (IPv4)/ Internet Protocol version 6 (IPv6), General Packet Radio Service Tunneling protocol (GTP), Transaction Protocol Data Unit (TPDU), Internet Protocol (IP)/Subnet, GTP with and without Primary scrambling code (PSCs), Differentiated Services Code Point (DSCP) and Quality of Service Flow Identifier (QFI) marking. 21. A non-transitory computer-readable medium having stored thereon computer-readable instructions that, when executed by a processor (502), causes the processor (502) to: receive, data packets from the plurality of data packet sources via the plurality of interface units; create, a plurality of flow rules utilizing at least one network interface unit (206), wherein the plurality of flow rules includes at least one or more packet segregation rules and packet distribution rules; apply, one or more packet segregation rules for each of the received data packets to segregate the data packets subsequent to satisfying one or more predefined conditions; and apply, one or more packet distribution rules for each of the segregated data packets to distribute the data packets to a plurality of processing units (214) based on a type of data packet pattern.
Description
SYSTEM AND METHOD FOR MANAGING FLOW RULES IN A NETWORK FIELD OF THE INVENTION [0001] The present invention relates to the field of wireless communication system, more particularly relates to a system and method for managing flow rules in a network. BACKGROUND OF THE INVENTION [0002] A network interface card (NIC) is a hardware component without which a computer cannot be connected over a network. NIC is a circuit board installed in a computer that provides a dedicated network connection to the computer. NIC is also called network interface controller, network adapter or LAN adapter. [0003] NIC allows both wired and wireless communications. NIC allows communications between computers connected via local area network (LAN) as well as communications over large-scale network through Internet Protocol (IP). NIC is both a physical layer and a data link layer device, i.e. NIC provides the necessary hardware circuitry so that the physical layer processes and some data link layer processes can run on it. [0004] An NIC provides a computer with a dedicated, full-time connection to a network. It implements the physical layer circuitry necessary for communicating with a data link layer standard, such as Ethernet or Wi-Fi. Each card represents a device and can prepare, transmit and control the flow of data on the network. [0005] The IP 5-tuple identifies a Transmission Control Protocol (TCP)/IP connection and includes source IP address, source port, destination IP address, destination port, and transport protocol. A 5-tuple uniquely identifies a User Datagram Protocol (UDP)/TCP session. The NIC distributes packets by applying a filter to each packet that assigns it to one of a small number of logical flows. Packets for each flow are steered to a separate receive queue, which in turn can be processed by separate Central Processing Units (CPUs). This mechanism is generally known as Receive Side Scaling (RSS). The goal of RSS and the other scaling techniques is to increase performance uniformly. Multi-queue distribution can also be used for traffic prioritization. [0006] There are NICs which are capable of identifying the pattern. For example, a 2-tuple or 3 tuple may be used. Based upon the identified pattern, the NIC locates the information in the packet. Flow rules are required to be created for various patterns of the packet received on UPF data plane. For each and every possible pattern, flow rules are required to be defined and created. [0007] To achieve high performance, high throughput processing and low latency, the UPF is generally designed on a multi-core CPU architecture. With multi-core CPU’s, for optimal performance, it is desired that each of the CPU cores is equally loaded. This can be taken care of within the software. However, this requires a dedicated core that can be defined to receive the packets from the NIC hardware, and then further load distribute and assign them to rest of the cores for processing. This puts an undesired load on the core and consumes processor band width and uses the processor resources which could have been made available for the UPF packet processing tasks. [0008] Besides, with flow rule definition in parallel for multiple interfaces like N3/N6/N9, and with N3 and N9 interfaces both using General Packet Radio Service Tunneling protocol (GTP) tunneled traffic, there is complexity in configuring the rules as the generic pattern matches for N3 and N9 conflict. [0009] Therefore, there is a need for reducing the load on the core processor and optimization of the flow rules in a network which increases the processing speed and reduces the complexity of the rules and the memory required for storing the rules. SUMMARY OF THE INVENTION [0010] One or more embodiments of the present disclosure provide a method and system for managing flow rules in a network. [0011] In one aspect of the present invention, a system for managing flow rules in a network is disclosed. The system includes a plurality of data packet sources and a User Plane Function (UPF) unit in communication with each of the plurality of data packet sources via a plurality of interface units. The UPF unit is configured to receive data packets from a plurality of data packet sources via a plurality of interface units. The UPF unit is further configured to create a plurality of flow rules utilizing at least one network interface unit, wherein the plurality of flow rules includes at least one or more packet segregation rules and packet distribution rules. The UPF unit is further configured to apply one or more packet segregation rules for each of the received data packets to segregate the data packets subsequent to satisfying one or more predefined conditions. The UPF unit is further configured to apply one or more packet distribution rules for each of the segregated data packets to distribute the data packets to a plurality of processing units based on a type of data packet pattern. [0012] In one embodiment, the plurality of