WO2025008964A1 - System and method for uniform distribution of one or more data packets - Google Patents
System and method for uniform distribution of one or more data packets Download PDFInfo
- Publication number
- WO2025008964A1 WO2025008964A1 PCT/IN2024/050951 IN2024050951W WO2025008964A1 WO 2025008964 A1 WO2025008964 A1 WO 2025008964A1 IN 2024050951 W IN2024050951 W IN 2024050951W WO 2025008964 A1 WO2025008964 A1 WO 2025008964A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data packets
- address
- interface
- unit
- cores
- 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
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- 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/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
Definitions
- the present invention relates to user plane packet processing, more particularly relates to a system and method for uniform distribution of data traffic using user plane packet processing on a multi-core computer processing unit.
- control plane traffic is responsible for managing signaling and control functions
- user plane is responsible for the transmission of user data packets.
- 5G 5th Generation
- the User Plane Function (UPF) technology is configured to handle the user data traffic within 5G and beyond network architectures. Hence the evolution of the UPF plays an important role, since UPF acts as a crucial component within the 5G core network, responsible for various tasks, including packet forwarding, traffic management, quality of service (QoS) enforcement, and network slicing. Further the User Plane Function (UPF) enables efficient data handling, supports diverse service requirements, and ensures a seamless user experience in highly dynamic and heterogeneous network environments.
- UPF User Plane Function
- the UPF in a service provider is configured to host multiple user/UE session and it applies different policies (rate limit, barring, quota, forwarding policies etc) on user packets flowing through the network.
- UPF in case of such service provider performs inter networking between the 5G network and the data network, and may have N3 interface defined towards gNodeB and N6 interface defined towards the data network.
- N3 interface defined towards gNodeB
- N6 interface defined towards the data network.
- multiple Rx queues are configured which are associated with the multiple CPU cores.
- the network interface card receives the uplink/downlink traffic and if the default 5-tuple RSS based packet distribution is configured, which uses source IP, destination IP, source port, destination port, protocol in deciding that on which Rx queue the packet will land to, and based on that classifies/distributes the traffic to the Rx queues.
- One or more embodiments of the present disclosure provide a system and a method for uniform distribution of one or more data packets.
- the system for uniform distribution of one or more data packets includes a receiving unit configured to receive one or more data packets from one or more User Equipments (UE).
- the system further includes a retrieving unit configured to retrieve, an Internet Protocol (IP) address of the one or more data packets from one of a source address of a Protocol Data Unit (PDU) of an IP header and a destination address of the IP header.
- IP Internet Protocol
- the system further includes a hashing unit configured to perform, a hashing operation on the IP address of each of the one or more retrieved IP addresses to receive a hash value of the IP address of each of the one or more retrieved IP addresses.
- the system further includes a mapping unit configured to map, the hash value with at least one core from a plurality of cores, and thereby distributing the one or more data packets across the plurality of data cores.
- the one or more data packets is one of an uplink data packet and a downlink data packet.
- the uplink data packet is received via a first interface and the downlink data packet is received via a second interface, and wherein the first interface is an N3 interface and the second interface is an N6 interface.
- the retrieving unit is configured to retrieve the IP address of the one or more data packets from the PDU of the IP header if the one or more data packets is the uplink data packet. In an embodiment, the retrieving unit is configured to retrieve the IP address of the one or more data packets from the destination address of the IP header if the one or more data packets is the downlink data packet.
- the system includes a generating unit configured to generate a query list based on the hash value.
- the query list includes a hash to an Rx queue table.
- the system further includes a transmitting unit configured to transmit queries from the query list to the at least one mapped core of the plurality of cores.
- the mapping unit is configured to map based on a redundancy check performed on processing history of a previously received data packets.
- the method of uniform distribution of one or more data packets includes the step of receiving one or more data packets from one or more User Equipments (UE).
- the method further includes the step of retrieving an Internet Protocol (IP) address of the one or more data packets from one of a source address of a Protocol Data Unit (PDU) of an IP header and a destination address of the IP header.
- IP Internet Protocol
- the method further includes the step of performing a hashing operation on the IP address of each of the one or more retrieved IP addresses to receive a hash value of the IP address of each of the one or more retrieved IP addresses.
- the method further includes the step of mapping of the hash value with at least one core from a plurality of cores, and thereby distributing the one or more data packets across the plurality of data cores.
- a non -transitory computer-readable medium having stored thereon computer-readable instructions is disclosed.
- the computer-readable instructions are executed by a processor.
- the processor is configured to receive the one or more data packets from one or more User Equipments (UE).
- the processor is further configured to retrieve an Internet Protocol (IP) address of the one or more data packets from one of a source address of a Protocol Data Unit (PDU) of an IP header and a destination address of the IP header.
- IP Internet Protocol
- the processor is further configured to perform hashing operation on the IP address of each of the one or more retrieved IP addresses to receive a hash value of the IP address of each of the one or more retrieved IP addresses.
- the processor is further configured to map the hash value with at least one core from the plurality of cores, and thereby distributing the one or more data packets across the plurality of data cores.
- the UE includes one or more primary processors communicatively coupled to one or more processors, the one or more primary processors coupled with a memory.
- the processor is configured to transmit one or more data packets to the one or more processers.
- FIG. 1 is an exemplary block diagram of a communication system for uniform distribution of one or more data packets, according to one or more embodiments of the present invention
- FIG. 2 is an exemplary block diagram of a system for uniform distribution of one or more data packets, according to one or more embodiments of the present invention
- FIG. 3 is a schematic representation of a workflow of the communication system of FIG. 1, according to the one or more embodiments of the present invention
- FIG. 4 is an exemplary block diagram of an architecture of the system of the FIG. 2, according to one or more embodiments of the present invention.
- FIG. 5 is a signal flow diagram for uniform distribution of one or more data packets, according to one or more embodiments of the present invention.
- FIG. 6 is a schematic representation of a method for uniform distribution of one or more data packets, according to one or more embodiments of the present invention.
- the present invention discloses a system and method for uniform distribution of data traffic such as one or more data packets.
- FIG. 1 illustrates an exemplary block diagram of a communication system 100 for uniform distribution of one or more data packets, according to one or more embodiments of the present disclosure.
- the communication system 100 includes a User Equipment (UE) 102, a server 104, a network 106 and a system 108 communicably coupled to each other for uniform distribution of one or more data packets.
- the UE 102 aids a user to interact with the system 108 for transmitting one or more data packets.
- the UE 102 includes, but not limited to, a first UE 102a, a second UE 102b, and a third UE 102c, and should nowhere be construed as limiting the scope of the present disclosure.
- the UE 102 may include a plurality of UEs as per the requirement.
- each of the first UE 102a, the second UE 102b, and the third UE 102c, will hereinafter be collectively and individually referred to as the “User Equipment (UE) 102”.
- UE User Equipment
- the UE 102 is one of, but not limited to, any electrical, electronic, electro-mechanical 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 communication system 100 includes the server 104 accessible via the network 106.
- the server 104 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 defense facility side, or any other facility that provides service.
- 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.
- 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 VOIP or some combination thereof.
- PSTN Public- Switched Telephone Network
- the communication system 100 further includes the system 108 communicably coupled to the server 104 and the UE 102 via the network 106.
- the system 108 is configured for uniform distribution of one or more data packets.
- the system 108 is adapted to be embedded within the server 104 or embedded as an individual entity.
- FIG. 2 is an exemplary block diagram of the system 108 for uniform distribution of one or more data packets, according to one or more embodiments of the present invention.
- the system 108 includes one or more processors 202, a memory 204, a user interface 206, and a database 208.
- processors 202 may include more than one processors 202 as per the requirement of the network 106.
- the one or more processors 202 hereinafter referred to as the processor 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 processor 202 is configured to fetch and execute computer-readable instructions stored in the memory 204.
- the memory 204 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 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 interface 206 includes a variety of interfaces, for example, interfaces for a graphical user interface, a web user interface, a Command Line Interface (CLI), and the like.
- the user interface 206 facilitates communication of the system 108.
- the user interface 206 provides a communication pathway for one or more components of the system 108. Examples of such components include, but are not limited to, the UE 102 and the database 208.
- the database 208 is one of, but not limited to, 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 inmemory 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.
- NoStructured Query Language (NoSQL) database No-Structured Query Language
- object-oriented database a personal database
- an inmemory database a document-based database
- a time series database a time series database
- a wide column database a key value database
- search database a cache databases
- the processor 202 includes one or more modules.
- the one or more modules includes, but not limited to, a receiving unit 210, a retrieving unit 212, a hashing unit 214, a generating unit 216, a mapping unit 218 and a transmitting unit 220 communicably coupled to each other for uniform distribution of one or more data packets.
- the receiving unit 210, the retrieving unit 212, the hashing unit 214, the generating unit 216, the mapping unit 218 and the transmitting unit 220 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 202.
- 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.
- 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.
- the receiving unit 210 of the system 108 is configured to receive one or more data packets from one or more UE 102.
- the one or more data packets is one of an uplink data packet and a downlink data packet.
- the uplink data packet refers to the data transmitted from the UE 102 to the network 106.
- the uplink data packet includes, but not limited to, video uploads, file uploads, text messages, sensor data from loT devices, Voice over Internet Protocol (VoIP) calls, online gaming, web requests, GPS location updates.
- VoIP Voice over Internet Protocol
- the downlink data packet refers to the data transmitted from the network 106 to the UE 102.
- the downlink data packet includes, but not limited to, web pages, streaming video, software updates, app downloads, emails and attachments, social media feeds, voice and video calls, realtime data feeds.
- the uplink data packet is received via a first interface and the downlink data packet is received via a second interface.
- the first interface is an N3 interface and the second interface is an N6 interface.
- the N3 interface is a logical interface primarily responsible for carrying user plane data traffic between an Access and Mobility Management Function (AMF) and a User Plane Function (UPF).
- the AMF is responsible for managing mobility and session-related information for the UE 102, while the UPF handles the routing, forwarding, and management of user plane data packets.
- the N3 interface includes, but not limited to, user plane tunneling, Quality of Service (QoS) enforcement, charging and billing, and session management.
- QoS Quality of Service
- the N6 interface enables communication and data exchange between the UPF and the AMF.
- a retrieving unit 212 Upon receiving the one or more data packets, a retrieving unit 212 is configured to retrieve an Internet Protocol (IP) address of the one or more data packets.
- IP Internet Protocol
- the IP address of the one or more data packets is retrieved from a source address of a Protocol Data Unit (PDU) of an IP header and a destination address of the IP header.
- PDU Protocol Data Unit
- the IP address is a unique numerical label assigned to each UE 102 connected to the network 106 that uses the IP for communication.
- the source address of the PDU of the IP header is the IP address assigned to the UE 102 for initiating the communication.
- the source address identifies where the PDU originates in the network 106.
- the PDU refers to the unit of data that is exchanged between different protocol layers.
- the destination address of the IP header is the IP address of the intended recipient UE 102.
- the retrieving unit 212 is configured to retrieve the IP address of the one or more data packets from the PDU of the IP header. If the one or more data packets is the downlink data packet, the retrieving unit 212 is configured to retrieve the IP address of the one or more data packets from the destination address of the IP header.
- the hashing unit 214 Upon retrieving the IP address of the one or more data packets, the hashing unit 214 is configured to perform hashing operation on the IP address of each of the one or more retrieved IP addresses. The hashing unit 214 performs hashing operation on the IP address of each of the one or more retrieved IP addresses to receive a hash value 406 of the IP address of each of the one or more retrieved IP addresses.
- the hashing is a technique used to map data of arbitrary size to fixed-size values and is often used to efficiently distribute packets across multiple processing queues or paths.
- the generating unit 216 Upon receiving the hash value 406 of the IP address of each of the one or more retrieved IP addresses, the generating unit 216 is configured to generate a query list based on the hash value 406.
- the query list includes a hash to an Rx queue table.
- the hash value 406 is a cryptographic representation generated by applying a hash function 404 to the IP address.
- the hash function 404 converts the IP address into a fixed-length string of characters, typically in hexadecimal format.
- the Rx queue is a receiving queue used to temporarily store one or more data packets until they can be processed.
- the hash to Rx queue table 408 is essentially a lookup table that maps the hash value 406 of certain packet attributes such as source/destination IP address, source/destination port, protocol type to specific Rx queues.
- the mapping unit 218 Upon generating the query list, the mapping unit 218 is configured to map the at least one core from the plurality of cores 410. By doing so, the mapping unit 218 distributes one or more data packets across the plurality of data cores.
- the at least one core refers to the CPU core (Central Processing Unit core).
- the CPU core refers to the individual processing units within a CPU (processor) chip.
- the CPU cores execute instructions and perform calculations for various tasks, including both control plane and data plane functions in the network 106.
- the CPU cores are found in the various network components such as routers, switches, or base stations.
- the CPU cores handle a variety of tasks, including packet forwarding, routing, management plane operations, control plane functions, and more.
- the mapping unit 218 is configured to map the at least one core from the plurality of cores 410 based on a redundancy check.
- the redundancy check is performed on processing history of previously received data packets.
- the previously received data packets include the one or more data packets previously received from the UE 102.
- the transmitting unit 220 is configured to transmit the queries from the query list to the at least one mapped core of the plurality of cores 410. By doing so, the system 108 improves the processing capacity, performance and throughput of the processor 202 and able to process more data packets per second.
- FIG. 3 describes a preferred embodiment of the system 108 of FIG. 2, according to various embodiments of the present invention. It is to be noted that the embodiment with respect to FIG. 3 will be explained with respect to the first UE 102a and the system 108 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 102a the second UE 102b, and the third UE 102c 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 FIG. 3 will be explained with respect to the first UE 102a without deviating from the scope of the present disclosure and the limiting the scope of the present disclosure.
- the first UE 102a includes one or more primary processors 302 communicably coupled to the one or more processors 202 of the system 108.
- the one or more primary processors 302 are coupled with a memory unit 304 storing instructions which are executed by the one or more primary processors 302. Execution of the stored instructions by the one or more primary processors 302 enables the first UE 102a to transmit the one or more data packets to the one or more processers 202.
- the one or more processors 202 of the system 108 is configured for uniform distribution of one or more data packets.
- the system 108 includes the one or more processors 202, the memory 204, the user interface 206, and the database 208.
- the operations and functions of the one or more processors 202, the memory 204, the user interface 206, and the database 208 are already explained in FIG. 2.
- FIG. 2 For the sake of brevity, a similar description related to the working and operation of the system 108 as illustrated in FIG. 2 has been omitted to avoid repetition.
- the processor 202 includes the receiving unit 210, the retrieving unit 212, the hashing unit 214, the generating unit 216, the mapping unit 218 and the transmitting unit 220.
- the operations and functions of the receiving unit 210, the retrieving unit 212, the hashing unit 214, the generating unit 216, the mapping unit 218 and the transmitting unit 220 are already explained in FIG. 2.
- a similar description related to the working and operation of the system 108 as illustrated in FIG. 2 has been omitted to avoid repetition.
- the limited description provided for the system 108 in FIG. 3, should be read with the description as provided for the system 108 in the FIG. 2 above, and should not be construed as limiting the scope of the present disclosure.
- FIG. 4 is an exemplary block diagram of an architecture 400 of the system 108 for uniform distribution of one or more data packets, according to one or more embodiments of the present invention.
- the UE 102 is configured to transmit one or more data packets to a User Plane Function (UPF) 402.
- the UPF is responsible for performing several important functions, such as packet forwarding, quality of service (QoS) enforcement, and traffic filtering.
- the one or more data packets is one of the uplink data packet and the downlink data packet.
- the uplink data packet is received via the first interface and the downlink data packet is received via the second interface.
- the first interface is the N3 interface and the second interface is the N6 interface.
- the UPF 402 includes the retrieving unit 212, hash function 404, hash value 406, hash to Rx queue table 408 and plurality of cores 410 communicably coupled to each other.
- the retrieving unit 212 upon receiving the one or more data packets, the IP address for the uplink data packet is identified and retrieved from the PDU IP header. Similarly, the IP address for the downlink data packet is identified and retrieved from the destination address of IP header. Upon identifying and retrieving the IP address, hash function 404 performs hashing on the IP address retrieved for the uplink data packet and the downlink data packet. Upon performing hash function 404 on the retrieved IP address, a hash value 406 is obtained for the uplink data packet and the downlink data packet.
- the query list is generated based on the hash value.
- the query list comprises hash to Rx queue table 408.
- the hashing value of the uplink request and the downlink request are mapped with at least one core from the plurality of core 410.
- the mapping of the hashing value with the at least one core from the plurality of core 410 is based on a redundancy check.
- the redundancy check is performed by determining previous request received from the UE 102 and the at least one core from the plurality of core 410 that processed the previous request.
- the memory 204 comprises El cache, L2 cache, and L3 cache to perform caching of information received from the uplink, and downlink.
- the LI cache, L2 cache and L3 cache may enable providing information pertaining to the earlier request and also assist the at least one core from the plurality of core 410 by providing information on the previous request.
- mapping of the repetitive query to the same core is referred to as pinning.
- pinning mapping of the repetitive query to the same core.
- FIG. 5 is a signal flow diagram for uniform distribution of one or more data packets, according to one or more embodiments of the present invention.
- the signal flow diagram is described with the embodiments as illustrated in FIG. 2 and should nowhere be construed as limiting the scope of the present disclosure.
- the receiving unit 210 receives the one or more data packets from the UE 102.
- the one or more data packets is one of the uplink data packet and the downlink data packet.
- the uplink data packet is received via the first interface and the downlink data packet is received via the second interface.
- the first interface and the second interface are N3 interface and N6 interface respectively.
- the retrieving unit 212 is configured to receive the one or more data packets from the receiving unit 210. Upon receiving the one or more data packets, the retrieving unit 212 retrieves the IP address of the one or more data packets. The IP address of the one or more data packets are retrieved from one of the source address of the PDU of the IP header and the destination address of the IP header. In particular, if the one or more data packets is the uplink data packet, the IP address of the one or more data packets is retrieved from the PDU of the IP header.
- the IP address of the one or more data packets is retrieved from the destination address of the IP header.
- the hashing unit 214 is configured to receive the retrieved IP address of the one or more data packets from the retrieving unit 212. Upon receiving the retrieved IP address of the one or more data packets, the hashing unit 214 performs hashing operation on the IP address of each of the one or more retrieved IP addresses. The hashing operation on the IP address of each of the one or more retrieved IP addresses is performed to receive the hash value of the IP address of each of the one or more retrieved IP addresses.
- the generating unit 216 is configured to receive the hash value of the IP address of each of the one or more retrieved IP addresses. Upon receiving the hash value, the generating unit 216 generates the query list based on the hash value received from the hashing unit 214. The query list includes the hash to the Rx queue table.
- the mapping unit 218 is configured to receive the query list based on the hash value from the generating unit 216. Upon receiving the query list based on hash value, the mapping unit 218 maps the hash value with at least one core from the plurality of cores. Thereby distributing the one or more data packets across the plurality of data cores. The mapping unit 218 is configured to map based on the redundancy check performed on processing history of the previously received data packets.
- FIG. 6 is a flow diagram of a method 600 for uniform distribution of one or more data packets, according to one or more embodiments of the present invention. For the purpose of description, the method 600 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 600 includes the step of receiving the one or more data packets from the UE 102 by the receiving unit 210.
- the one or more data packets is one of the uplink data packet and the downlink data packet.
- the uplink data packet is received via the first interface and the downlink data packet is received via the second interface, and wherein the first interface is the N3 interface and the second interface is the N6 interface.
- the method 600 includes the step of retrieving the IP address of the one or more data packets from one of the source address of the PDU of the IP header and the destination address of the IP header by the retrieving unit 212.
- the retrieving unit 212 is configured to retrieve the IP address of the one or more data packets from the PDU of the IP header if the one or more data packets is the uplink data packet. Further, the retrieving unit 212 is configured to retrieve the IP address of the one or more data packets from the destination address of the IP header if the one or more data packets is the downlink data packet.
- the method 600 includes the step of performing hashing operation on the IP address of each of the one or more retrieved IP addresses to receive the hash value of the IP address of each of the one or more retrieved IP addresses by the hashing unit 214.
- the generating unit 216 is configured to generate a query list based on the hash value.
- the query list includes a hash to an Rx queue table.
- the method 600 includes the step of mapping of the hash value with at least one core from the plurality of cores 410 by the mapping unit 218.
- the mapping unit 218 distributes one or more data packets across the plurality of data cores.
- the mapping unit 218 is configured to map the at least one core from the plurality of cores 410 based on a redundancy check. The redundancy check is performed on processing history of a previously received data packets.
- the transmitting unit 220 is configured to transmit the queries from the query list to the at least one mapped core of the plurality of cores 410.
- 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 the one or more data packets from one or more UE 102.
- the processor 202 is further configured to retrieve the IP address of the one or more data packets from one of the source address of the PDU of the IP header and the destination address of the IP header.
- the processor 202 is further configured to perform hashing operation on the IP address of each of the one or more retrieved IP addresses to receive the hash value of the IP address of each of the one or more retrieved IP addresses.
- the processor 202 is further configured to map the hash value with at least one core from the plurality of cores 410, and thereby distributing the one or more data packets across the plurality of data cores.
- the present disclosure incorporates technical advancement that the processing capacity of the processor is increased by mapping the hash value with at least one core from the plurality of cores and distributing the one or more data packets across the plurality of data cores.
- the uniform distribution of data reduces the processing time of the processor resulting in high performance, capacity and throughput from the processor.
- 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.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP24835685.9A EP4740435A1 (en) | 2023-07-03 | 2024-06-27 | System and method for uniform distribution of one or more data packets |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IN202321044576 | 2023-07-03 | ||
| IN202321044576 | 2023-07-03 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025008964A1 true WO2025008964A1 (en) | 2025-01-09 |
Family
ID=94171562
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/IN2024/050951 Ceased WO2025008964A1 (en) | 2023-07-03 | 2024-06-27 | System and method for uniform distribution of one or more data packets |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP4740435A1 (en) |
| WO (1) | WO2025008964A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100322076A1 (en) * | 2009-06-22 | 2010-12-23 | Deepak Goel | Systems and methods for retaining source ip in a load balancing multi-core environment |
| CN103763198A (en) * | 2013-11-15 | 2014-04-30 | 武汉绿色网络信息服务有限责任公司 | Data packet classification method |
| US20170063979A1 (en) * | 2014-03-19 | 2017-03-02 | Nec Corporation | Reception packet distribution method, queue selector, packet processing device, and recording medium |
| US20180248778A1 (en) * | 2017-02-27 | 2018-08-30 | Netscout Systems, Inc. | Parallelization of inline tool chaining |
| US20230195530A1 (en) * | 2021-12-17 | 2023-06-22 | Apple Inc. | Systems and Methods for Balancing Loads Across Multiple Processing Cores of a Wireless Device |
-
2024
- 2024-06-27 EP EP24835685.9A patent/EP4740435A1/en active Pending
- 2024-06-27 WO PCT/IN2024/050951 patent/WO2025008964A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100322076A1 (en) * | 2009-06-22 | 2010-12-23 | Deepak Goel | Systems and methods for retaining source ip in a load balancing multi-core environment |
| CN103763198A (en) * | 2013-11-15 | 2014-04-30 | 武汉绿色网络信息服务有限责任公司 | Data packet classification method |
| US20170063979A1 (en) * | 2014-03-19 | 2017-03-02 | Nec Corporation | Reception packet distribution method, queue selector, packet processing device, and recording medium |
| US20180248778A1 (en) * | 2017-02-27 | 2018-08-30 | Netscout Systems, Inc. | Parallelization of inline tool chaining |
| US20230195530A1 (en) * | 2021-12-17 | 2023-06-22 | Apple Inc. | Systems and Methods for Balancing Loads Across Multiple Processing Cores of a Wireless Device |
Also Published As
| Publication number | Publication date |
|---|---|
| EP4740435A1 (en) | 2026-05-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11121968B2 (en) | Systems and methods for dynamic routing on a shared IP address | |
| US10742722B2 (en) | Server load balancing | |
| US10057735B2 (en) | Systems and methods for performing load balancing and message routing for short message peer to peer protocol | |
| EP3334123B1 (en) | Content distribution method and system | |
| US12468657B2 (en) | Message forwarding method and apparatus based on remote direct data storage, and network card and device | |
| US8954992B2 (en) | Distributed and scaled-out network switch and packet processing | |
| US9674086B2 (en) | Work conserving schedular based on ranking | |
| US9571417B2 (en) | Processing resource access request in network | |
| WO2019237594A1 (en) | Session persistence method and apparatus, and computer device and storage medium | |
| CN111245637B (en) | Generating application-based proxy autoconfiguration | |
| JP2016119651A (en) | Technique for flow lookup management of network device | |
| US11102139B1 (en) | Shared queue management utilizing shuffle sharding | |
| EP3178215B1 (en) | Routing requests with varied protocols to the same endpoint within a cluster | |
| EP3032803A1 (en) | Providing requested content in an overlay information centric networking (o-icn) architecture | |
| CN102857547A (en) | Distributed caching method and device | |
| WO2014101846A1 (en) | Predictive caching in a distributed communication system | |
| CN112954084B (en) | Edge computing processing method, network function example and edge service management and control center | |
| CN119011594A (en) | Load balancing method and device, electronic equipment and storage medium | |
| EP4740435A1 (en) | System and method for uniform distribution of one or more data packets | |
| CN110247847B (en) | Method and device for back source routing between nodes | |
| TWI644536B (en) | User group-based process item management system and method thereof for SDN network | |
| WO2025181518A1 (en) | Hardware-based load balancer with network function scaling | |
| EP4740436A1 (en) | System and method for handling packet processing rules in a network | |
| CN119728559A (en) | Method and method for controlling network traffic using subscriber-aware deaggregator | |
| US20210021527A1 (en) | Traffic shaping over multiple hops in a network |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| DPE2 | Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101) | ||
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24835685 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024835685 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: 2024835685 Country of ref document: EP Effective date: 20260203 |
|
| WWP | Wipo information: published in national office |
Ref document number: 2024835685 Country of ref document: EP |