WO2025008965A1 - System and method for managing flow rules in a network - Google Patents
System and method for managing flow rules in a network Download PDFInfo
- Publication number
- WO2025008965A1 WO2025008965A1 PCT/IN2024/050952 IN2024050952W WO2025008965A1 WO 2025008965 A1 WO2025008965 A1 WO 2025008965A1 IN 2024050952 W IN2024050952 W IN 2024050952W WO 2025008965 A1 WO2025008965 A1 WO 2025008965A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- packet
- rules
- data packets
- interface
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/76—Routing in software-defined topologies, e.g. routing between virtual machines
Definitions
- 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.
- a network interface card 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.
- 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).
- IP Internet Protocol
- 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.
- 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.
- 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.
- RSS Receive Side Scaling
- 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.
- the UPF is generally designed on a multi-core CPU architecture.
- multi-core CPU for optimal performance, it is desired that each of the CPU cores is equally loaded. This can be taken care of within the software.
- 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.
- One or more embodiments of the present disclosure provide a method and system for managing flow rules in a network.
- a system for managing flow rules in a network 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.
- the plurality of interface units includes at least one of, N3 interface, N6 interface and N9 interface.
- the plurality of data packet sources includes at least one of, User Equipment (UE), data network and Intermediate User Plane function (I- UPF).
- UE User Equipment
- I- UPF Intermediate User Plane function
- the UE is in communication with the UPF unit via the N3 interface
- the data network is in communication with the UPF via the N6 interface
- I-UPF is in communication with the UPF unit via the N9 interface.
- the packet segregation rules are arranged in a primary table.
- the UPF unit is further 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, 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.
- VLAN Virtual Local Area Network
- the UPF unit 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.
- the network interface unit is at least one of, a Network Interface Card (NIC).
- NIC Network Interface Card
- 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
- the one or more packet distribution rules pertain to distributing the data packets to a plurality of processing units based on load distribution.
- 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 ((IP)v4)/ 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
- VLAN Virtual Local Area Network
- IP Internet Protocol version 4
- IPv6 Internet Protocol version 6
- GTP General Packet Radio Service Tunneling protocol
- TPDU Transaction Protocol Data Unit
- IP Internet Protocol
- IP Internet Protocol
- Subnet GTP with and without Primary scrambling code
- PSCs Primary scrambling code
- DSCP Differentiated Services Code Point
- QFI Quality of Service Flow Identifier
- a method for managing flow rules in a network includes the step of receiving data packets from a plurality of data packet sources via a plurality of interface units.
- the method further includes the step of creating, 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 method further includes the step of applying 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 method further includes the step of 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.
- FIG. 1 is an exemplary block diagram of an environment for managing flow rules in a network, according to one or more embodiments of the present invention
- FIG. 2 is an exemplary block diagram of the system for managing flow rules in a network, according to one or more embodiments of the present invention
- FIG. 3a is an exemplary flow diagram of the system of FIG. 2, according to one or more embodiments of the present invention.
- FIG. 4 is a flow diagram of a method for managing flow rules in a network, according to one or more embodiments of the present invention.
- the present invention provides a system and method for managing flow rules in a network.
- the system utilizes the underlying Network Interface Card (NIC) feature for creation of plurality of flow rules which includes at least one or more packet segregation rules and packet distribution rules.
- NIC Network Interface Card
- the system normalizes and simplifies these flow rules by providing a primary table and one or more secondary tables.
- the present invention offers advantages which include avoiding the repetition of the flow rules and thus complexity in the rules is minimized.
- FIG. 1 illustrates an exemplary block diagram of an environment 100 for managing flow rules in a network 106, according to one or more embodiments of the present invention.
- the environment 100 includes, a User Equipment (UE) 102, a server 104, a network 106, a system 108, a data network 110 and an Intermediate User Plane function (I-UPF)112.
- UE User Equipment
- I-UPF Intermediate User Plane function
- UEs user equipment
- Each of the at least one UE 102 namely the first UE 102a, the second UE 102b, and the third UE 102c is configured to connect to the server 104 via the network 106.
- each of the first UE 102a, the second UE 102b, and the third UE 102c is one of, but not limited to, any electrical, electronic, electromechanical or an equipment and a combination of one or more of the above devices such as virtual reality (VR) devices, augmented reality (AR) devices, laptop, a computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device.
- VR virtual reality
- AR augmented reality
- the network 106 includes, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
- PSTN Public-Switched Telephone Network
- the network 106 may include, but is not limited to, a Third Generation (3G), a Fourth Generation (4G), a Fifth Generation (5G), a Sixth Generation (6G), a New Radio (NR), a Narrow Band Internet of Things (NB-IoT), an Open Radio Access Network (O-RAN), and the like.
- 3G Third Generation
- 4G Fourth Generation
- 5G Fifth Generation
- 6G Sixth Generation
- NR New Radio
- NB-IoT Narrow Band Internet of Things
- O-RAN Open Radio Access Network
- the network 106 may also include, by way of example but not limitation, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, waves, voltage or current levels, some combination thereof, or so forth.
- the network 106 may also include, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public- Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, a V OIP or some combination thereof.
- PSTN Public- Switched Telephone Network
- the environment 100 includes the server 104 accessible via the network 106.
- the server 115 may include by way of example but not limitation, one or more of a standalone server, a server blade, a server rack, a bank of servers, a server farm, hardware supporting a part of a cloud service or system, a home server, hardware running a virtualized server, a processor executing code to function as a server, one or more machines performing server-side functionality as described herein, at least a portion of any of the above, some combination thereof.
- the entity may include, but is not limited to, a vendor, a network operator, a company, an organization, a university, a lab facility, a business enterprise side, a defence facility side, or any other facility that provides service.
- the environment 100 further includes a system 108 communicably coupled to the server 104 and each of the first UE 102a, the second UE 102b, and the third UE 102c via the network 106.
- the system 108 is adapted to be embedded within the server 104 or is embedded as the individual entity. However, for the purpose of description, the system 108 is described as an integral part of the server 104, without deviating from the scope of the present disclosure.
- the system 108 is configured to manipulate message in the network 106.
- the data network 110 includes, by way of example but not limitation, one or more of a wireless network, a wired network, an internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a Public-Switched Telephone Network (PSTN), a cable network, a cellular network, a satellite network, a fiber optic network, or some combination thereof.
- PSTN Public-Switched Telephone Network
- the network 106 may include, but is not limited to, a Third Generation (3G), a Fourth Generation (4G), a Fifth Generation (5G), a Sixth Generation (6G), a New Radio (NR), a Narrow Band Internet of Things (NB-IoT), an Open Radio Access Network (O-RAN), and the like.
- 3G Third Generation
- 4G Fourth Generation
- 5G Fifth Generation
- 6G Sixth Generation
- NR New Radio
- NB-IoT Narrow Band Internet of Things
- O-RAN Open Radio Access Network
- the environment 100 further includes an Intermediate User Plane function (I-UPF) 112 communicably coupled to the system 108.
- I-UPF 112 performs the role of an uplink classifier and communicates with the system 108 over the N9 interface.
- FIG. 2 is an exemplary block diagram of the system 108 for managing flow rules in a network 106, according to one or more embodiments of the present invention.
- the system 108 to manage flow rules in the network 106 is a User Plane function (UPF).
- the system 108 supports features and capabilities to facilitate a user plane operation.
- the system 108 includes one or more processors 202, a memory 204, and a Network Interface Card (NIC) 206.
- the one or more processors 202 includes a User Plane Function (UPF) unit 210.
- UPF User Plane Function
- the one or more processors 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions.
- the system 108 may include multiple processors as per the requirement and without deviating from the scope of the present disclosure.
- the processor 202 is configured to fetch and execute computer-readable instructions stored in the memory 204.
- the processor 202 is configured to fetch and execute computer-readable instructions stored in the memory 204 as the memory 204 is communicably connected to the processor 202.
- the memory 204 is configured to store one or more computer-readable instructions or routines in a non-transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network service.
- the memory 204 may include any non- transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as disk memory, EPROMs, FLASH memory, unalterable memory, and the like.
- the User Plane Function (UPF) unit 210 of the processor 202 is communicably connected with each of the plurality of data packet sources via a plurality of interface units which supports features and capabilities to facilitate user plane operation.
- the plurality of data packet sources includes at least one of, User Equipment (UE) 102 such as at least first UE 102a, the second UE 102b, and the third UE 102c, data network 110 and Intermediate User Plane function (LUPF) 112.
- UE User Equipment
- LUPF Intermediate User Plane function
- the plurality of interface units includes at least one of, but not limited to, N3 interface, N6 interface and N9 interface.
- 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
- LUPF 112 is in communication with the UPF unit 210 via the N9 interface.
- the UPF unit 210 of the processor 202 includes plurality of processing units 214 associated with the Rx queues.
- the N3 interface is for communication between Next-Generation NodeB (gNB) and the UPF unit 210.
- the N3 interface is primarily used for exchanging user plane traffic between the gNB and the UPF unit 210 which includes forwarding of data packets between a radio access network and a core network.
- the N6 interface is an interface which provides the communication between the UPF unit 210 and the at least one of, an external or an internal network such as the data network 110, a service platform, such as an internet, a public cloud or a private cloud.
- the N6 interface forwards the data packets from the data network 110 to the UPF unit 210.
- the N9 interface is the interface between the two UPFs such as the UPF unit 210 and the LUPF 112.
- the N9 interface is used for forwarding data packets from the LUPF 112 to the UPF unit 210.
- the UPF unit 210 is configured to receive data packets from the plurality of data packet sources via the plurality of interface units.
- the UPF unit 210 is further configured to create a plurality of flow rules utilizing at least one network interface unit such as NIC 206.
- the NIC 206 is a hardware component, typically a circuit board or a chip, installed in the system 108 in order to connect the UPF unit 210 to the network 106.
- Modern NICs provide functionality to the system 108, such as support for an input/output interrupt, a direct-memory access interfaces, data transmission, a network traffic engineering and partitioning.
- the plurality of flow rules includes at least one or more packet segregation rules and packet distribution rules.
- the UPF unit 210 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 206 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 214 of the UPF unit 210 based on a type of data packet pattern.
- the one or more packet segregation rules are rules to segregate one or more packets received at the UPF unit 210 from the at least one of the UE 102, the data network 110 and the I-UPF 112 via the specific interface units.
- the one or more packet distribution rules are rules to distribute the segregated data packets to the plurality of processing units 214 of the UPF unit 210.
- the primary table is a list which specifies packet segregation rules (for example, by Rule ID 1, 2, 3, etc.) and the one or more secondary tables includes an alternate list of the one or more packet distribution rules (for example, type of data packet pattern) which are used to distribute the segregated data packets to the plurality of processing units 214 of the UPF unit 210.
- packet segregation rules for example, by Rule ID 1, 2, 3, etc.
- the one or more secondary tables includes an alternate list of the one or more packet distribution rules (for example, type of data packet pattern) which are used to distribute the segregated data packets to the plurality of processing units 214 of the UPF unit 210.
- At least one of the processing units 214 of the UPF unit 210 were dedicated to receive the packets from the NIC 206 hardware, and then the at least one of the processing units 214 is further configured to distribute load of the packets to rest of the processing units 214 for packet processing tasks.
- the system 108 provides offloading the functionality of distributing load of the packets to the hardware NIC 214, so that the processing units 214 can be saved and optimally utilized for the packet processing tasks.
- the computational cost of the packet processing tasks like load balancing gets offloaded to the NIC. Further, efficient load distribution among the plurality of the processing units 214 is also achieved.
- the NIC 206, and the UPF unit 210 in an exemplary embodiment, are implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 202.
- the programming for the processor 202 may be processor-executable instructions stored on a non-transitory machine -readable storage medium and the hardware for the processor may comprise a processing resource (for example, one or more processors), to execute such instructions.
- the memory 204 may store instructions that, when executed by the processing resource, implement the processor 202.
- the system 108 may comprise the memory 204 storing the instructions and the processing resource to execute the instructions, or the memory 204 may be separate but accessible to the system 108 and the processing resource.
- the processor 202 may be implemented by electronic circuitry.
- FIG. 3a illustrates an exemplary block diagram of an architecture for the system 108 of FIG. 2, according to one or more embodiments of the present invention.
- FIG. 3b illustrates an exemplary primary table and one or more secondary tables. More specifically, FIG. 3 illustrates the system 108 configured for managing flow rules in the network 106. It is to be noted that the embodiment with respect to FIG. 3a and FIG. 3b will be explained with respect to plurality of data packet sources for the purpose of description and illustration and should nowhere be construed as limited to the scope of the present disclosure.
- the FIG. 3 includes the system 108 and the plurality of data packet sources such as UE 102, the data network 110, the I-UPF 112.
- FIG. 3 includes the system 108 and the plurality of data packet sources such as UE 102, the data network 110, the I-UPF 112.
- the plurality of data packet sources communicates with the system 108 via the plurality of interface units including at least one of, N3 interface, N6 interface and N9 interface.
- the data packets received at the system 108 are transmitted by at least one of the data packet sources which includes the UE 102 via the N3 interface, the data network 110 via the N6 interface, and the I-UPF 112 via the N9 interface, respectively. , .
- the UE 102 includes a primary processor 302, and a memory 304.
- the UE 102 may include more than one primary processor 302 as per the requirement of the network 106.
- the primary processor 302 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, single board computers, and/or any devices that manipulate signals based on operational instructions.
- the primary processor 302 is configured to fetch and execute computer-readable instructions stored in the memory 304.
- the memory 304 may be configured to store one or more computer-readable instructions or routines in a non-transitory computer-readable storage medium, which may be fetched and executed to create or share data packets over a network 106.
- the memory 304 may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as disk memory, EPROMs, FLASH memory, unalterable memory, and the like.
- the data packets are received at system 108 from at least one of the plurality of data packet sources via the plurality of interface units.
- the plurality of flow rules are required to be created by the system 108 utilizing at least one network interface unit (NIC) 206.
- NIC network interface unit
- the system 108 uses underlying NIC's feature for creation of flow rules. Flow rules are required to be created related to the interface units and various patterns of the data packet received on system 108. In order to avoid conflicts of pattern matches for interface units like N3 and N9, flow rules are created related to the interface units.
- the data packets are received at the system 108 via the N3 and the N9 interfaces both using GPRS Tunnelling Protocol (GTP) tunneled traffic pattern, then there is complexity in configuring the rules as the pattern matches for N3 and N9 interfaces.
- GTP GPRS Tunnelling Protocol
- the GPRS Tunnelling Protocol (GTP) is a group of IP -based communications protocols which are used to carry data packets within a Global System for Mobile Communication (GSM), a Universal Mobile Telecommunications System (UMTS), a Long-Term Evolution (LTE) and 5G radio networks.
- the traffic tunneling is a port redirection technique in which the network data packet traffic is received at one port and forwarded to another port.
- the plurality of flow rules created by the system 108 includes one or more packet segregation rules and one or more packet distribution rules.
- the one or more packet distribution rules pertain to distributing the data packets to a plurality of processing units 214 based on load of the data packets.
- the packet segregation rules are arranged in a primary table as shown in FIG. 3b.
- the one or more packet segregation rules pertains to segregating the data packets based on receiving the data packets via a specific interface unit from the available plurality of interface units. For example, the data packets received by system 108 are segregated based on the plurality of interface units. Further based on the interface specific VLAN, the traffic pertaining to data packets are moved to the one or more secondary tables denoted as Jump Table 1 and Jump Table 2.
- the plurality of flow rules are not limited to one primary table and two secondary tables.
- the system 108 may create more levels of tables after the secondary table as well so as to form a chain of tables. [0059] Further, the system 108 utilizes NIC 206 in order to equally distribute the traffic pertaining to the data packets to the multiple Rx queues of the plurality of processing units 214 based on the one or more packet distribution rules and the type of the data packet pattern.
- the type of data packet pattern 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.
- the secondary table 1 includes Rule 1 that denotes action for the data packet pattern GTP/IP (SRC IP) such as Receive side scaling (RSS) on inner Source IP.
- SRC IP Receive side scaling
- the Source IP (SRC IP) address is the IP packet field containing the IP address of at least one of, the UE 102, the data network 110, and the LUPF 112 from which the data packet is transmitted using the GTP.
- the RSS has an important role in deciding the criteria for distributing the traffic of the data packets over Rx queues of the plurality of processing units 214.
- the RSS is a network driver technology that enables the efficient distribution of the traffic of the data packets across multiple processing units 214 in the system 108.
- the one or more packet distribution rules pertain to distributing the data packets to the plurality of processing units 214 based on load distribution task done by the system 108 utilizing the NIC 206.
- the NIC 206 equally distributes load pertaining to the traffic of data packets among each of the plurality of processing units 214a, 214b and 214c.
- the system 108 enables NIC 206 for traffic distribution and a load balancing task which consequently contributes towards achieving an optimal performance of the system 108.
- the data packets are distributed to the plurality of processing units 214 using the inner SRC IP and an Inner Destination IP (DST IP).
- the inner SRC IP and the inner DST IP includes the IP addresses for various units/modules included in the network 106.
- an inner IP address is specific to the network 106 which is used for communicating within the various units/modules of that network 106.
- FIG. 4 is a flow diagram of a method 400 for managing flow rules in a network 106, according to one or more embodiments of the present invention.
- the method 400 is described with the embodiments as illustrated in FIG. 2 and should nowhere be construed as limiting the scope of the present disclosure.
- the method 400 includes the step of receiving data packets from the plurality of data packet sources via the plurality of interface units.
- UPF unit 210 of the processor 202 is configured to receive data packets from the plurality of data packet sources which includes at least one of, User Equipment (UE) 102, data network 110 and I-UPF 112 via the plurality of interface units including at least one of, but not limited to, N3 interface, N6 interface and N9 interface.
- UE User Equipment
- the method 400 includes the step of creating a plurality of flow rules utilizing at least one network interface unit (NIC) 206.
- the UPF unit 210 of the processor 202 is configured to create the plurality of flow rules utilizing at least one underlying feature of the NIC 206.
- the plurality of flow rules governs how the received data packets shall be handled and steered in the system 108.
- the plurality of flow rules includes at least one or more packet segregation rules and packet distribution rules.
- the packet segregation rules are arranged in the primary table and one or more secondary tables.
- the primary table specifies packet segregation rules (for example, by Rule ID 1, 2, 3, etc.) on the basis of the interface specific VLAN’s.
- the packet distribution rules are created related to distributing the load of the data packets to the plurality of processing units 214 based on the type of data packet patterns.
- the arrangement of the packet segregation rules and the packet distribution rules in the table format results in a concise implementation by obviating the need of defining multiple specific flow rules, allowing each flow rule
- the method 400 includes the step of applying 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.
- UPF unit 210 of the processor 202 is 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 one or more predefined conditions includes segregating the data packets based on received data packets via a specific interface unit from the available plurality of interface units. For example, the data packets received from the N3 interface, N6 interface and N9 interface are segregated and are added to the primary table.
- the data packets are routed to the one or more secondary tables from the primary table upon satisfying the one or more predefined conditions when a Virtual Local Area Network (VLAN) ID of the data packet corresponds to at least one of the plurality of interface units.
- VLAN Virtual Local Area Network
- the method 400 includes the step of 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 the type of data packet pattern.
- the type of the data packet pattern includes at least one of, but not limited to, GTP/IP (SRC IP) and GTP+PSC/IP (DST IP).
- the GTP+PSC/IP (DST IP) is the at least one type of the data packet pattern which provides the information such as the data packet is received by the UPF unit 210 via the GTP along with the Primary Synchronization Code (PSC) and the Destination IP address (DST IP) of a recipient of this specific data packet.
- PSC Primary Synchronization Code
- DST IP Destination IP address
- the UPF unit 210 of the processor 202 utilizing the NIC 206 is configured to equally distribute the data packets from the at least one or more secondary tables to the plurality of processing units 214 subsequent to satisfying the one or more pre-defined conditions utilizing the one or more packet distribution rules.
- the one or more predefined conditions includes identifying the data packet pattern of the segregated data packets and then distributing the traffic of the segregated data packets to the plurality of processing units 214 based on the type of data packet pattern which 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.
- VLAN Virtual Local Area Network
- IPv4 Internet Protocol version 4
- IPv6 Internet Protocol version 6
- GTP General Packet Radio Service Tunneling protocol
- TPDU Transaction Protocol Data Unit
- IP Internet Protocol
- IP Internet Protocol
- Subnet GTP with and without Primary scrambling code
- PSCs Primary scrambling code
- DSCP Differentiated Services
- the traffic of the segregated data packet is distributed into multiple Rx queues of the corresponding plurality of processing units 214 due to which each of the plurality of processing units 214 are able to receive traffic independently.
- the present invention further discloses a non-transitory computer-readable medium having stored thereon computer-readable instructions.
- the computer- readable instructions are executed by the processor 202.
- the processor 202 is configured to receive data packets from the plurality of data packet sources via the plurality of interface units.
- the processor 202 is further configured to create 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 processor 202 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 processor 202 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 214 based on a type of data packet pattern.
- the present disclosure provides technical advancement of offloading the flow rule processing to the NIC (206). Further, the processing units (214) are saved and optimally utilized for the packet processing tasks. Further, the computational cost of tasks like load balancing gets offloaded to the NIC (206). Further, efficient load distribution is also achieved by utilizing NIC (206) for distribution of packets.
- the invention provides concise implementation and reduces the number of flow rules to be defined. This also allows each flow group to work independently. There is no repetition of flow rules and thus the complexity of the rules decreases.
- the present invention offers multiple advantages over the prior art and the above listed are few examples to emphasize on some of the advantageous features.
- the listed advantages are to be read in a non-limiting manner.
- UE User Equipment
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP24835686.7A EP4740409A1 (en) | 2023-07-03 | 2024-06-27 | System and method for managing flow rules in a network |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IN202321044341 | 2023-07-03 | ||
| IN202321044341 | 2023-07-03 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025008965A1 true WO2025008965A1 (en) | 2025-01-09 |
Family
ID=94171254
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/IN2024/050952 Ceased WO2025008965A1 (en) | 2023-07-03 | 2024-06-27 | System and method for managing flow rules in a network |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP4740409A1 (en) |
| WO (1) | WO2025008965A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20170318082A1 (en) * | 2016-04-29 | 2017-11-02 | Qualcomm Incorporated | Method and system for providing efficient receive network traffic distribution that balances the load in multi-core processor systems |
| US20200128426A1 (en) * | 2018-10-19 | 2020-04-23 | Anterix Inc. | Systems and methods for optimized lte private networks |
-
2024
- 2024-06-27 WO PCT/IN2024/050952 patent/WO2025008965A1/en not_active Ceased
- 2024-06-27 EP EP24835686.7A patent/EP4740409A1/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20170318082A1 (en) * | 2016-04-29 | 2017-11-02 | Qualcomm Incorporated | Method and system for providing efficient receive network traffic distribution that balances the load in multi-core processor systems |
| US20200128426A1 (en) * | 2018-10-19 | 2020-04-23 | Anterix Inc. | Systems and methods for optimized lte private networks |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4740409A1 (en) | 2026-05-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP3355553B1 (en) | Reliable load-balancer using segment routing and real-time application monitoring | |
| US8913613B2 (en) | Method and system for classification and management of inter-blade network traffic in a blade server | |
| US11296978B2 (en) | Enablement of multi-path routing in virtual edge systems | |
| CN106254235B (en) | Load sharing method and equipment | |
| WO2012127886A1 (en) | Network system, and policy route configuration method | |
| US10079767B2 (en) | Multi-mobile core networks and value-added services | |
| US20150215819A1 (en) | Method for Providing Sticky Load Balancing | |
| EP3780885B1 (en) | Method, apparatus and system for establishing subflows of multipath connection | |
| US11743236B2 (en) | Generating an application-based proxy auto configuration | |
| US11444840B2 (en) | Virtualized networking application and infrastructure | |
| US20210044523A1 (en) | Communication device, communication control system, communication control method, and communication control program | |
| US20140156954A1 (en) | System and method for achieving enhanced performance with multiple networking central processing unit (cpu) cores | |
| US20190349454A1 (en) | Network function virtualization (nfv) multi-protocol virtual probe control | |
| EP4740409A1 (en) | System and method for managing flow rules in a network | |
| US10177935B2 (en) | Data transfer system, data transfer server, data transfer method, and program recording medium | |
| US11770331B1 (en) | Encoding forwarding policy data in multiprotocol label switching (MPLS) labels | |
| US10079718B1 (en) | Network traffic processing system | |
| WO2017112241A1 (en) | Technologies for tracking out-of-order network packets | |
| US10397061B1 (en) | Link bandwidth adjustment for border gateway protocol | |
| EP1811739B1 (en) | Home agent apparatus and method of implementing load allocation in communication network | |
| US20240333641A1 (en) | Data structure associated with an interface of a network device | |
| US20230353486A1 (en) | Allocating a packet to a media session controller | |
| CN109714259B (en) | Traffic processing method and device | |
| EP4740435A1 (en) | System and method for uniform distribution of one or more data packets | |
| US20130100894A1 (en) | Dynamic selection of host-based or network-based mobility protocol |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24835686 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024835686 Country of ref document: EP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2024835686 Country of ref document: EP Effective date: 20260203 |
|
| WWP | Wipo information: published in national office |
Ref document number: 2024835686 Country of ref document: EP |