WO2025008971A1 - System and method for handling packet processing rules in a network - Google Patents
System and method for handling packet processing rules in a network Download PDFInfo
- Publication number
- WO2025008971A1 WO2025008971A1 PCT/IN2024/050959 IN2024050959W WO2025008971A1 WO 2025008971 A1 WO2025008971 A1 WO 2025008971A1 IN 2024050959 W IN2024050959 W IN 2024050959W WO 2025008971 A1 WO2025008971 A1 WO 2025008971A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- core
- network
- packet processing
- cores
- session
- 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
-
- 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/74—Address processing for routing
Definitions
- the present invention generally relates to wireless communication systems, and more particularly relates to a system and a method for handling packet processing rules in a network.
- a CP Control Plane
- a DP Data Plane
- the CP is responsible for making high-level decisions and managing the overall network. It handles tasks such as routing protocols, network topology discovery, and configuring network devices.
- the DP is responsible for the actual forwarding and processing of network packets. It handles tasks such as packet classification, traffic shaping, and forwarding decisions based on the established rules.
- a rule change with regard to how the packets from a User Equipment (UE) may need to be processed in relation to the occurred event.
- UE User Equipment
- a rule change request is made in the CP, such as modifying a packet processing rule or adding a new rule
- the CP communicates this request to the DP.
- the DP then applies the requested changes to its packet processing pipeline or forwarding tables.
- the CP-DP interaction ensures that the control plane makes the necessary changes to the packet processing rules, and those changes are propagated to the DP cores running in the data plane for actual packet forwarding and processing.
- the CP halts or locks the operation of all the DP cores as the UE traffic may land on any DP core.
- Applying the rule changes in a network by halting or locking the operation of all DP cores may carry significant drawbacks that result in the wastage of network resources. For instance, one notable drawback is the service disruption caused by halting the DP cores. This disruption leads to packet loss, increased latency, and potential unavailability for the affected UE. Consequently, user experience suffers, particularly for time-sensitive applications.
- One or more embodiments of the present disclosure provide a system and method of handling packet processing rules in a network.
- a method of handling packet processing rules in a network includes the step of receiving, by one or more processors, a request pertaining to at least one packet processing rule change.
- the method includes the step of identifying, by the one or more processors, a Data Plane (DP) core from a plurality of DP cores.
- the DP core is identified based on a session ID included in the request.
- the method includes the step of applying, by the one or more processors, a lock to the identified DP core.
- the remaining DP cores of the plurality of DP cores remain in an unlocked state.
- the method further includes the step of updating, by the one or more processors, the at least one packet processing rule change utilizing the locked DP core.
- the locked DP core is unlocked post updating the at least one packet processing rule change, thereby the DP core is adapted to process packets for an at least one User Equipment (UE).
- UE User Equipment
- the at least one packet processing rule is associated with the at least one UE.
- the request is triggered due to occurrence of network related events.
- the network related events are one of, handover, idle event, active event, barring, and quota consumption.
- the session ID serves as an identifier assigned to one of, a session and a connection, established between the network and the at least one UE.
- the method further includes the step of retrieving the session ID of the at least one UE from the request.
- the method further includes determining an Internet Protocol (IP) address of the at least one UE based on the session ID and a UE IP table.
- IP Internet Protocol
- the UE IP table corresponds to a mapping database that associates the session IDs with the respective IP address of the UEs.
- the method further includes applying, a hash function to the determined IP address in order to map the determined IP address to a specific DP core.
- the method further includes receiving, details pertaining to the specific DP core based on applying the hash function to the determined IP address, the details include one of an identity of the specific DP core, location of the specific DP core within the network, thereby identifying the DP core from the plurality of DP cores.
- the method further includes the step of transmitting, by the one or more processors, a lock command to the identified DP core to halt one or more operations pertaining to the identified DP core based upon applying the lock to the identified DP core.
- a system for handling packet processing rules in a network includes a receiving module configured to receive a request pertaining to at least one packet processing rule change.
- the system further includes an identifying module configured to identify a Data Plane (DP) core from a plurality of DP cores based on a session ID included in the received request.
- the system further includes an applying module configured to apply a lock to the identified DP core. The remaining DP cores of the plurality of DP cores remain in an unlocked state.
- the system further includes an updating module configured to update the at least one packet processing rule change utilizing the locked DP core.
- DP Data Plane
- a User Equipment includes one or more primary processors communicatively coupled to one or more processors in a system.
- the one or more primary processors coupled with a memory.
- the memory stores instructions which when executed by the one or more primary processors cause the UE to generate and transmit a request pertaining to at least one packet processing rule change to the one or more processors.
- FIG. 1 is an exemplary block diagram of an environment of handling packet processing rules in a network, according to one or more embodiments of the present disclosure
- FIG. 2 is an exemplary block diagram of a system of handling packet processing rules in the network, according to one or more embodiments of the present disclosure
- FIG. 3 is a schematic representation of the present system of FIG. 1 workflow, according to one or more embodiments of the present disclosure
- FIG. 4 illustrates an exemplary block diagram of workflow between one or more processors, and a plurality of Data Plane (DP) cores, according to one or more embodiments of the present disclosure
- FIG. 5 is a flow diagram illustrating a method of handling packet processing rules in a network, according to one or more embodiments of the present disclosure.
- the present invention discloses the system and method of handling packet processing rules in a network.
- the present invention provides a method for applying rule changes in a network's packet processing system.
- the method involves receiving the rule change request for modifying a packet processing rule associated with a User Equipment (UE) in the network.
- UE User Equipment
- the method further identifying a Data Plane (DP) core responsible for handling the packets from the UE using the session ID included in the request.
- DP Data Plane
- the method further applying a lock exclusively to that core while leaving other cores unaffected. This ensures that the operations of other cores are not stalled, optimizing network resource utilization.
- the method includes updating the rule within the locked DP core to reflect the desired changes in packet processing rule. Once the packet processing rule is updated, the lock on the DP core is released, allowing it to resume normal operations.
- FIG. 1 illustrates an exemplary block diagram of an environment 100 of handling packet processing rules in a network 105, according to one or more embodiments of the present disclosure.
- the environment 100 includes a network 105, a User Equipment (UE) 110, a server 115, and a system 120.
- the UE 110 aids a user to interact with the system 120 for generating and transmitting a request pertaining to at least one packet processing rule change to one or more processors 205 (as shown in FIG. 2).
- Each of the UE 110 from the one or more UEs 110a, 110b, llOn is configured to connect to the server 115 via the network 105.
- each of the first UE 110a, the second UE 110b, and the third UE 110c 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 general- purpose computer, desktop, personal digital assistant, tablet computer, mainframe computer, or any other computing device.
- VR virtual reality
- AR augmented reality
- the network 105 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 105 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
- OF-RAN Open Radio Access Network
- the network 105 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 105 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 115 accessible via the network 105.
- 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, one or more processors 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 the system 120 communicably coupled to the server 115 and each of the first UE 110a, the second UE 110b, and the third UE 110c via the network 105.
- the system 120 is adapted to be embedded within the server 115 or is embedded as the individual entity. However, for the purpose of description, the system 120 is described as an integral part of the server 115, without deviating from the scope of the present disclosure.
- FIG. 2 illustrates an exemplary block diagram of the system 120 of handling packet processing rules in the network 105, according to one or more embodiments of the present disclosure.
- the system 120 includes one or more processors 205, a memory 210, and a communication interface 215.
- the one or more processors 205 hereinafter referred to as the processor 205 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 120 includes one processor 205.
- the system 120 may include multiple processors as per the requirement and without deviating from the scope of the present disclosure.
- the information related to the request pertaining to the at least one packet processing rule change may be provided or stored in the memory 210.
- the processor 205 is configured to fetch and execute computer-readable instructions stored in the memory 210.
- the memory 210 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 service.
- the memory 210 may include any non-transitory storage device including, for example, volatile memory such as RAM, or non-volatile memory such as EPROMs, FLASH memory, unalterable memory, and the like.
- the information related to the request pertaining to the at least one packet processing rule change may be rendered on the communication interface 215.
- the communication interface 215 includes a variety of interfaces, for example, interfaces for a Graphical User Interface (GUI), a web user interface, a Command Line Interface (CLI), and the like.
- GUI Graphical User Interface
- CLI Command Line Interface
- the communication interface 215 facilitates communication of the system 125.
- the communication interface 215 provides a communication pathway for one or more components of the system 125. Examples of such components include, but are not limited to, the UE 110 and a database 240.
- the database 240 is configured to store the request pertaining to the at least one packet processing rule change which is generated and transmitted by the UE 110. Further, the database 240 provides structured storage, support for complex queries, and enables efficient data retrieval and analysis.
- the database 240 is one of, but is not limited to, one of a centralized database, a cloud-based database, a commercial database, an open-source database, a distributed database, an end-user database, a graphical database, a No-Structured Query Language (NoSQL) database, an object- oriented database, a personal database, an in-memory database, a document-based database, a time series database, a wide column database, a key value database, a search database, a cache databases, and so forth.
- NoSQL No-Structured Query Language
- the foregoing examples of database types are non-limiting and may not be mutually exclusive e.g., a database can be both commercial and cloud-based, or both relational
- the processor 205 may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 205.
- programming for the processor 205 may be processor-executable instructions stored on a non-transitory machine-readable storage medium and the hardware for processor 205 may comprise a processing resource (for example, one or more processors), to execute such instructions.
- the memory 210 may store instructions that, when executed by the processing resource, implement the processor 205.
- the system 120 may comprise the memory 210 storing the instructions and the processing resource to execute the instructions, or the memory 210 may be separate but accessible to the system 120 and the processing resource.
- the processor 205 may be implemented by electronic circuitry.
- the processor 205 includes a receiving module 220, an identifying module 225, an applying module 230, and an updating module 235 communicably coupled to each other for handling packet processing rules in the network 105.
- the receiving module 220, the identifying module 225, the applying module 230, and the updating module 235 in an embodiment, may be implemented as a combination of hardware and programming (for example, programmable instructions) to implement one or more functionalities of the processor 205.
- programming for the processor 205 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 210 may store instructions that, when executed by the processing resource, implement the processor.
- the system 120 may comprise the memory 210 storing the instructions and the processing resource to execute the instructions, or the memory 210 may be separate but accessible to the system 120 and the processing resource.
- the processor 205 may be implemented by electronic circuitry.
- the receiving module 220 In order for the system 120 to handle packet processing rules in the network 105, the receiving module 220, the identifying module 225, the applying module 230, and the updating module 235 are communicably coupled to each other.
- the receiving module 220 is configured to receive a request pertaining to at least one packet processing rule change.
- the request is triggered due to occurrence of network related events.
- the network related events include, but are not limited to, handover, idle event, active event, barring, and quota consumption.
- the at least one packet processing rule is associated with the at least one UE 110.
- the processor 205 receives the request from a network entity, such as a Session Management Function (SMF) 402 (shown in FIG.4) via N4 interface.
- SMF Session Management Function
- the SMF 402 is responsible for initiating and releasing communication sessions between the UE 110 and the network 105.
- the SMF 402 is configured to determine a user plane path for data transmission between the UE 110 and a User Plane Function (UPF).
- UPF User Plane Function
- the SMF 402 communicates the packet processing rule change request from the at least one UE 110 to the processor 205 over N4 interface.
- the processor 205 is configured to obtain a session Identifier (ID) from the request and subsequently query a UE Internet Protocol (IP) table based on receiving the request.
- ID session Identifier
- IP Internet Protocol
- the identifying module 225 is configured to identify a Data Plane (DP) core from a plurality of DP cores 408 (shown in FIG. 4) based on the session ID included in the received request.
- the DP core is responsible for handling the actual forwarding of user data.
- the data plane is the part of a network architecture that deals with transmission and reception of user traffic, as opposed to a control plane, which manages the signaling and control functions.
- the DP core includes elements like the User Plane Function (UPF).
- the UPF is responsible for routing and forwarding user data packets, enforcing Quality of Service (QoS) policies, and ensuring the efficient and reliable transport of user data between the UE 110 and the network 105.
- QoS Quality of Service
- the plurality of DP cores 408 include, but not limited to a first DP core 408a, a second DP core 408b, and a third DP core 408c.
- a first DP core 408a a second DP core 408b
- a third DP core 408c a third DP core 408c
- the session ID serves as an identifier assigned to one of, a session and a connection, established between the network 105 and the at least one UE 110.
- the session ID of the at least one UE 110 is retrieved from the packet processing rule change request.
- the session ID helps to track and differentiate the packets belonging to different sessions.
- An IP address of the at least one UE 110 is determined based on the session ID and the UE IP table 404.
- the UE IP table 404 corresponds to a mapping database that associates the session IDs with the respective IP address of the UEs 110.
- the UE IP table 404 contains information about the various sessions of the at least one UE 110 within the network and their respective IP addresses. Using the session ID as a reference, the processor 205 looks up the UE IP table 404 to find the entry that corresponds to the session ID. By doing so, the processor 205 can retrieve the specific IP address associated with the identified session. After retrieving the specific IP address, the processor 205 provides the IP address as an input to a hash operator 406.
- the hash operator 406 applies a hash function to the determined IP address in order to map the determined IP address to a specific DP core. Details pertaining to the specific DP core is received based on applying the hash function to the determined IP address.
- the hash function is a function that takes a set of inputs such as messages of any arbitrary size and returns a fixed-size string of bytes.
- the output of the hash function, once applied to the input, is the fixed-size string of characters or numbers, which is known as a hash value or a hash code. The exact form of the output depends on the specific hash function used.
- the details include one of an identity of the specific DP core, location of the specific DP core within the network, thereby identifying the DP core from the plurality of DP cores 408.
- the details of the specific DP core obtained through the hash function, are provided back to the processor 205. This information allows the processor 205 to be aware of the specific DP core that is responsible for processing the packets associated with the at least one UE 110.
- the processor 205 accurately determines the DP core that is currently processing the packets for the at least one UE 110 session and enables targeted application of the packet processing rule changes to the specific DP core only, ensuring that the modifications are applied only to the DP core handling the UE's packet traffic.
- the UE IP In all uplink traffic, the UE IP is available in a source address of inner Packet Data Unit (PDU) IP header and in downlink traffic, UE IP is available in a destination address of the IP header. Based on the UE IP address, the received uplink/downlink packets are pushed to the identified DP core where the packet processing is intended.
- PDU Packet Data Unit
- the applying module 230 is configured to apply a lock to the identified DP core which is handling the packets from the at least one UE 110.
- the remaining DP cores of the plurality of DP cores 408 remain in an unlocked state.
- the lock is only placed on the identified DP core, while leaving all the other DP cores unaffected and free to operate and ensures that the packet processing operations for other UEs or network traffic flows can proceed without being impacted by the packet processing rule change process for the at least one UE 110.
- a lock command is transmitted to the identified DP core to halt one or more operations pertaining to the identified DP core.
- the updating module 235 is configured to update the at least one packet processing rule change utilizing the locked DP core.
- the locked DP core is utilized for updating the at least one packet processing rule pertaining to the at least one UE 110 which is handled by the identified DP core.
- the processor 205 introduces modifications or adjustments to the packet processing rule within the identified DP core.
- the processor 205 is configured to unlock the locked DP core post updating the at least one packet processing rule change, thereby the DP core is adapted to process the packets for the at least one UE 110.
- the processor 205 releases the lock on the identified DP core after the packet processing rule is updated.
- the lock is lifted to allow the DP core to resume its regular packet processing activities, including handling packets from the UE 110 that were subject to the rule update.
- the system 120 applies the lock exclusively to the identified Data Plane (DP) core handling packets from the UE 110, which prevents unnecessary halting or disruption of operations on other DP cores.
- the system 120 optimizes resource utilization to ensure that the network's resources are not wasted, and that packet processing continues smoothly across all other cores, thereby improving processing speed and reducing memory space requirement.
- FIG. 3 is a schematic representation of the system 120 in which various entities operations are explained, according to one or more embodiments of the present disclosure.
- FIG. 3 describes the system 120 for handling packet processing rules in the network 105. It is to be noted that the embodiment with respect to FIG. 3 will be explained with respect to the first UE 110a for the purpose of description and illustration and should nowhere be construed as limited to the scope of the present disclosure.
- each of the first UE 110a, the second UE 110b, and the third UE 110c may include an external storage device, a bus, a main memory, a read-only memory, a mass storage device, communication port(s), and a processor.
- the exemplary embodiment as illustrated in the FIG. 3 will be explained with respect to the first UE 110a.
- the first UE 110a includes one or more primary processors 305 communicably coupled to the one or more processors 205 of the system 125.
- the one or more primary processors 305 are coupled with a memory 310 storing instructions which are executed by the one or more primary processors 305. Execution of the stored instructions by the one or more primary processors 305 enables the first UE 110a to generate and transmit the request pertaining to the at least one packet processing rule change to the one or more processors 205.
- the one or more processors 205 of the system 120 is configured to receive the request pertaining to the at least one packet processing rule change, identify the DP core from the plurality of DP cores based on the session ID included in the received request, apply the lock to the identified DP core, and update the at least one packet processing rule change utilizing the locked DP core.
- the system 120 includes the one or more processors 205, the memory 210, and the communication interface 215.
- the operations and functions of the one or more processors 205, the memory 210, and the communication interface 215 are already explained in FIG. 2.
- a similar description related to the working and operation of the system 120 as illustrated in FIG. 2 has been omitted to avoid repetition.
- the processor 205 includes the receiving module 220, the identifying module 225, the applying module 230, and the updating module 235.
- the operations and functions of the receiving module 220, the identifying module 225, the applying module 230, and the updating module 235 are already explained in FIG. 2.
- a similar description related to the working and operation of the system 120 as illustrated in FIG. 2 has been omitted to avoid repetition.
- the limited description provided for the system 120 in FIG. 3, should be read with the description provided for the system 120 in the FIG. 2 above, and should not be construed as limiting the scope of the present disclosure.
- FIG. 4 illustrates an exemplary block diagram of workflow of the processor 205, and the plurality of DP cores 408, according to one or more embodiments of the present disclosure.
- the plurality of DP cores 408 include, but not limited to the first DP core 408a, the second DP core 408b, and the third DP core 408c.
- the description will be explained with respect to the plurality of DP cores 408, or to be more specific will be explained with respect to the first DP core 408a, the second DP core 408b, and the third DP core 408c, and should nowhere be construed as limiting the scope of the present disclosure.
- the processor 205 is configured to receive the request from the network entity, such as the Session Management Function (SMF) 402 via the N4 interface.
- the SMF 402 is responsible for initiating and releasing communication sessions between the UE 110 and the network 105.
- the SMF 402 is configured to determine the user plane path for data transmission between the UE 110 and the UPF.
- the SMF 402 communicates the packet processing rule change request from the at least one UE 110 to the processor 205 over the N4 interface.
- the processor 205 is configured to obtain the session ID from the request and subsequently query the UE IP table based on receiving the request.
- the UE IP table 404 contains information about the various sessions of the first UE 110 within the network 105 and their respective IP addresses. Using the session ID as the reference, the processor 205 looks up the UE IP table 404 to find the entry that corresponds to the session ID. By doing so, the processor 205 can retrieve the specific IP address associated with the identified session. After retrieving the specific IP address, the processor 205 provides the IP address as an input to the hash operator 406.
- the hash operator 406 applies the hash function to the determined IP address in order to map the determined IP address to the specific DP core. Details pertaining to the specific DP core is received based on applying the hash function to the determined IP address. In one embodiment, the details include one of an identity of the specific DP core, location of the specific DP core within the network, thereby identifying the DP core from the plurality of DP cores. The details of the DP core are returned to the processor 205. In one embodiment, the details include one of an identity of the specific DP core, location of the specific
- Y1 DP core within the network, thereby identifying the DP core from the plurality of DP cores. This information allows the processor 205 to be aware of the specific DP core that is responsible for processing the packets associated with the at least one UE 110.
- the third DP core 408c is identified to be the specific DP core that is handling the traffic from the at least one UE 110.
- the processor 205 is configured to transmit the lock command to the third DP core 408c to halt one or more operations pertaining to the identified DP core.
- the processor 205 optimizes resource utilization and minimizes disruptions, improves processing speed, reduces memory space requirement, and thereby enabling efficient and continuous packet forwarding across the network.
- the third DP core 408c finishes any queued processing and subsequently enters a lock state.
- the lock is lifted to allow the third DP core 408c to resume its regular packet processing activities, including handling packets from the at least one UE 110 that were subject to the rule update.
- the processor 205 is further configured to unlock the locked third DP core 408c post updating the at least one packet processing rule change, thereby the third DP core 408c is adapted to process packets for the at least one UE 110.
- the processor 205 releases the lock on the third DP core 408c after the packet processing rule is updated. Thereafter, the packet processing rule is updated and post rule update, the lock is released to process the packets for the at least one UE 110.
- FIG. 5 is a flow diagram illustrating a method 500 for network planning, according to one or more embodiments of the present invention.
- the method 500 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 500 includes the step of receiving a request pertaining to at least one packet processing rule change by the receiving module 220.
- the request is triggered due to occurrence of network related events.
- the network related events include, but are not limited to, handover, idle event, active event, barring, and quota consumption.
- the at least one packet processing rule is associated with the at least one UE 110.
- the processor 205 receives the request from a network entity, such as a Session Management Function (SMF) via N4 interface.
- SMF Session Management Function
- the SMF 402 is configured to determine a user plane path for data transmission between the UE 110 and a User Plane Function (UPF).
- the SMF 402 communicates the packet processing rule change request from the at least one UE 110 to the processor 205 over N4 interface.
- the processor 205 is configured to obtain a session Identifier (ID) from the request and subsequently query a UE Internet Protocol (IP) table based on receiving the request.
- ID session Identifier
- IP Internet Protocol
- the method 500 includes identifying a DP core from a plurality of DP cores based on the session ID included in the received request by the identifying module 225 based on receipt of the request by the receiving module 220.
- the DP core is responsible for handling the actual forwarding of user data.
- the data plane is the part of a network architecture that deals with transmission and reception of user traffic, as opposed to a control plane, which manages the signaling and control functions.
- the DP core includes elements like the User Plane Function (UPF).
- the UPF is responsible for routing and forwarding user data packets, enforcing Quality of Service (QoS) policies, and ensuring the efficient and reliable transport of user data between the UE 110 and the network 105.
- QoS Quality of Service
- the session ID serves as an identifier assigned to one of, a session and a connection, established between the network and the at least one UE 110.
- the session ID of the at least one UE 110 is retrieved from the packet processing rule change request.
- the session ID helps to track and differentiate the packets belonging to different sessions.
- the IP address of the at least one UE 110 is determined based on the session ID and the UE IP table 404.
- the UE IP table 404 corresponds to a mapping database that associates the session IDs with the respective IP address of the UEs.
- the UE IP table 404 contains information about the various sessions of UEs 110 within the network and their respective IP addresses.
- the one or more processors 205 uses the session ID as a reference to find the entry that corresponds to the session ID. By doing so, the one or more processors 205 can retrieve the specific IP address associated with the identified session. After retrieving the specific IP address, the one or more processors 205 provides the IP address as an input to a hash operator 406 (shown in FIG. 4).
- the hash operator 406 applies a hash function to the determined IP address in order to map the determined IP address to a specific DP core. Details pertaining to the specific DP core is received based on applying the hash function to the determined IP address. In one embodiment, the details include one of an identity of the specific DP core, location of the specific DP core within the network, thereby identifying the DP core from the plurality of DP cores. The details of the specific DP core obtained through the hash function, are provided back to the one or more processors 205. This information allows the one or more processors 205 to be aware of the specific DP core that is responsible for processing the packets associated with the at least one UE 110.
- the processor 205 accurately determines the DP core that is currently processing the packets for the at least one UE 110 session and enables targeted application of the packet processing rule changes to the specific DP core only, ensuring that the modifications are applied only to the DP core handling the UE's packet traffic.
- the UE IP In all uplink traffic, the UE IP is available in a source address of inner Packet Data Unit (PDU) IP header and in downlink traffic, UE IP is available in a destination address of the IP header. Based on the UE IP address, the received uplink/downlink packets are pushed to the identified DP core where the packet processing is intended.
- PDU Packet Data Unit
- the processor 205 accurately determines the DP core that is currently processing the packets for the at least one UE 110 session and enables targeted application of the packet processing rule changes to the specific DP core only, ensuring that the modifications are applied only to the DP core handling the UE's packet traffic.
- the UE IP In all uplink traffic, the UE IP is available in a source address of inner Packet Data Unit (PDU) IP header and in downlink traffic, UE IP is available in a destination address of the IP header. Based on the UE IP address, the received uplink/downlink packets are pushed to the identified DP core where the packet processing is intended.
- PDU Packet Data Unit
- the method 500 includes applying a lock to the identified DP core which is handling the packets from the at least one UE 110 by the applying module 230.
- the remaining DP cores of the plurality of DP cores remain in an unlocked state.
- the lock is only placed on the identified DP core, while leaving all the other DP cores unaffected and free to operate. This approach ensures that the packet processing operations for other UEs or network traffic flows can proceed without being impacted by the ongoing rule change process for the specific UE.
- a lock command is transmitted to the identified DP core to halt one or more operations pertaining to the identified DP core.
- the processor 205 optimizes resource utilization and minimizes disruptions, improves processing speed, reduces memory space requirement, and thereby enabling efficient and continuous packet forwarding across the network.
- the method 500 includes the step of updating the at least one packet processing rule change utilizing the locked DP core for processing of packets pertaining to the UE which are handled by the identified DP core by the updating module 235.
- the processor 205 introduces modifications or adjustments to the packet processing rule within the identified DP core.
- the processor 205 is configured to unlock the locked DP core post updating the at least one packet processing rule change, thereby the DP core is adapted to process packets for the at least one UE 110.
- the processor 205 releases the lock on the identified DP core after the packet processing rule is updated.
- the lock is lifted to allow the DP core to resume its regular packet processing activities, including handling packets from the UE 110 that were subject to the rule update.
- the system applies the lock exclusively to the identified Data Plane (DP) core handling packets from the UE 110, which prevents unnecessary halting or disruption of operations on other DP cores.
- the method 500 optimizes resource utilization to ensure that the network's resources are not wasted, and that packet processing continues smoothly across all other cores, thereby improving processing speed and reducing memory space requirement.
- the present invention further discloses a non-transitory computer-readable medium having stored thereon computer-readable instructions.
- the computer- readable instructions are executed by a processor 205.
- the processor 205 is configured to receive a request pertaining to at least one packet processing rule change.
- the processor 205 is further configured to identify a Data Plane (DP) core from a plurality of DP cores 408.
- the DP core is identified based on a session ID included in the request.
- the processor 205 is further configured to apply a lock to the identified DP core.
- the remaining DP cores of the plurality of DP cores 408 remain in an unlocked state.
- the processor 205 is further configured to update the at least one packet processing rule change utilizing the locked DP core.
- DP Data Plane
- the present invention further discloses a non-transitory computer-readable medium having stored thereon computer-readable instructions.
- the computer- readable instructions are executed by a processor 205 upon identifying the DP core from the plurality of DP cores 408.
- the processor 205 is configured to retrieve the session ID of at least one User Equipment (UE) 110 from the request.
- the processor 205 is further configured to determine an Internet Protocol (IP) address of the at least UE based on the session ID and a UE IP table 404.
- the UE IP table 404 corresponds to a mapping database that associates session IDs with the respective IP addresses of the UEs 110.
- the processor 205 is further configured to apply a hash function to the determined IP address in order to map the determined IP address to a specific DP core.
- IP Internet Protocol
- the processor 205 is further configured to receive, details pertaining to the specific DP core based on applying the hash function to the determined IP address, the details include one of an identity of the specific DP core, location of the specific DP core within the network, thereby identifying the DP core from the plurality of DP cores 408.
- the present disclosure incorporates technical advancement of applying rule changes in a network's packet processing system. For instance, by applying the lock exclusively to the identified Data Plane (DP) core handling packets from the User Equipment (UE), which prevents unnecessary halting or disruption of operations on other DP cores.
- DP Data Plane
- UE User Equipment
- the optimized resource utilization ensures that the network's resources are not wasted, and that packet processing continues smoothly across all other cores.
- the present disclosure offers several advantages by locking the specific DP core to independently utilize plurality of CPUs with higher throughput, increase scale performance and reduce latency with increasing the number of DP cores which function independently, as that helps in spreading a load between the DP cores thus reducing the average reception queue length per core.
- the uplink/downlink traffic of the UE is pinned to the specific DP core, which reduces synchronization overheads and global cache invalidations and increases cache effectiveness by localizing the session specific structures per core.
- the present invention offers multiple advantages over the prior art and the above listed are a few examples to emphasize on some of the advantageous features. The listed advantages are to be read in a non-limiting manner.
- Hash operator - 406 [00102] Hash operator - 406;
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 |
|---|---|---|---|
| EP24835692.5A EP4740436A1 (en) | 2023-07-05 | 2024-06-27 | System and method for handling packet processing rules in a network |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IN202321045253 | 2023-07-05 | ||
| IN202321045253 | 2023-07-05 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025008971A1 true WO2025008971A1 (en) | 2025-01-09 |
Family
ID=94171853
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/IN2024/050959 Ceased WO2025008971A1 (en) | 2023-07-05 | 2024-06-27 | System and method for handling packet processing rules in a network |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP4740436A1 (en) |
| WO (1) | WO2025008971A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10122735B1 (en) * | 2011-01-17 | 2018-11-06 | Marvell Israel (M.I.S.L) Ltd. | Switch having dynamic bypass per flow |
| US10511669B2 (en) * | 2018-04-26 | 2019-12-17 | Verizon Patent And Licensing Inc. | Programmable user plane function |
-
2024
- 2024-06-27 WO PCT/IN2024/050959 patent/WO2025008971A1/en not_active Ceased
- 2024-06-27 EP EP24835692.5A patent/EP4740436A1/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10122735B1 (en) * | 2011-01-17 | 2018-11-06 | Marvell Israel (M.I.S.L) Ltd. | Switch having dynamic bypass per flow |
| US10511669B2 (en) * | 2018-04-26 | 2019-12-17 | Verizon Patent And Licensing Inc. | Programmable user plane function |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4740436A1 (en) | 2026-05-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN1925462B (en) | cache system | |
| JP6064291B2 (en) | Techniques for flow lookup management of network devices | |
| US10225145B2 (en) | Method and device for updating client | |
| CN107623729B (en) | Caching method, caching equipment and caching service system | |
| EP3149921B1 (en) | Providing router information according to a programmatic interface | |
| US12367320B2 (en) | Mechanism for real-time identity resolution in a distributed system | |
| CN106484713A (en) | A kind of based on service-oriented Distributed Request Processing system | |
| EP4339801B1 (en) | Systems and methods for querying and updating databases | |
| WO2025029345A1 (en) | System and method for dynamic routing and scalable management of endpoint device communications | |
| US20210157769A1 (en) | Distributed storage system for storing context data | |
| US9621657B2 (en) | Database session dependent routing | |
| EP4740436A1 (en) | System and method for handling packet processing rules in a network | |
| Patel et al. | Optimizing the performance of web applications in mobile cloud computing | |
| EP4740435A1 (en) | System and method for uniform distribution of one or more data packets | |
| US12530373B2 (en) | Data synchronization using transaction identifications within objects | |
| US10505792B1 (en) | Methods for facilitating network traffic analytics and devices thereof | |
| JP2020095434A (en) | Communication device, communication method, and communication program | |
| WO2025013080A1 (en) | Method and system for synchronizing instances of network nodes in a communication network | |
| WO2025017654A1 (en) | Method and system for configuring one or more attributes of nodes in a network | |
| CN119988349A (en) | Management method, device, system, equipment and medium for big data cluster | |
| CN116303253A (en) | Event Log Management | |
| WO2025013079A1 (en) | System and method for managing operation of the network | |
| JP2024511774A (en) | Hybrid cloud event notification management | |
| CN121530921A (en) | Data packet processing methods, flow table processing methods, and related equipment | |
| CN104104593A (en) | Request and response management mechanism based on multimode network message transmission |
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: 24835692 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024835692 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: 2024835692 Country of ref document: EP Effective date: 20260205 |
|
| WWP | Wipo information: published in national office |
Ref document number: 2024835692 Country of ref document: EP |