Abstract: ABSTRACT SYSTEM AND METHOD FOR TRCAING DATA PACKETS RELATED TO USER EQUIPMENT The present disclosure relates to a system (125) and a method (500) for tracing data packets related to a User Equipment (UE) (110). The system (125) includes a plurality of User Plane Function (UPF) data planes (235) in communication with a client module (230). The client module (230) is configured to receive a first tracing request from a debugger equipment user, retrieve an IP address pool corresponding to a plurality of UEs (110) from a database (240), identify a specific UPF data plane from the plurality of UPF data planes (235), and transmit a second tracing request to the identified specific UPF data plane to trace the data packets. The identified specific UPF data plane from the plurality of UPF data planes (235) traces the data packets related to the UE (110) and forwards the traced data packets to the client module (230). Ref. Fig. 2
DESC:
FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
1. TITLE OF THE INVENTION
SYSTEM AND METHOD FOR TRACING DATA PACKETS RELATED TO USER EQUIPMENT
2. APPLICANT(S)
NAME NATIONALITY ADDRESS
JIO PLATFORMS LIMITED INDIAN OFFICE-101, SAFFRON, NR. CENTRE POINT, PANCHWATI 5 RASTA, AMBAWADI, AHMEDABAD 380006, GUJARAT, INDIA
3.PREAMBLE TO THE DESCRIPTION
THE FOLLOWING SPECIFICATION PARTICULARLY DESCRIBES THE NATURE OF THIS INVENTION AND THE MANNER IN WHICH IT IS TO BE PERFORMED.
FIELD OF THE INVENTION
[0001] The present invention generally relates to wireless communication systems, and more particularly relates to a method and system for tracing data packets related to a User Equipment (UE).
BACKGROUND OF THE INVENTION
[0002] Tracing packets of a user session in a User Plane Function (UPF) involves monitoring and analyzing the flow of data packets between a user equipment (UE) and a network. The UPF is a key component in 5G networks and is responsible for managing the user plane traffic. By tracing packets, network operators can gain valuable insights into the performance, quality, and security of user sessions. This tracing process typically involves capturing and analyzing packet headers, payload data, and other relevant information to understand the behavior and characteristics of the user session.
[0003] One of the challenges in tracing packets of the user session in the UPF is the sheer volume of data generated. With the increasing number of connected devices and the growing demand for high-bandwidth applications, the amount of network traffic has significantly increased. This poses a problem for network operators as they need to efficiently handle and process large amounts of packet data in real-time. Scaling the tracing infrastructure to handle this volume of data and ensuring timely analysis can be a complex task.
[0004] Therefore, there is a need for an advancement of a method and system that can overcome at least one of the above shortcomings, particularly for tracing data packets related to a User Equipment (UE).
BRIEF SUMMARY OF THE INVENTION
[0005] One or more embodiments of the present disclosure provide a system and method for tracing data packets related to a User Equipment (UE).
[0006] In one aspect of the present invention, a method for tracing data packets related to a User Equipment (UE) is disclosed. The method includes the step of receiving, by a client module, a first tracing request from a debugger equipment user. The first tracing request includes an Internet Protocol (IP) address pertaining to the UE involved in a user session. The method includes the step of retrieving, by the client module, from a database, the IP address pool corresponding to a plurality of UEs which are hosted on a plurality of User Plane Function (UPF) data planes upon receiving the first tracing request from the debugger equipment user. The method includes the step of identifying, by the client module, based on the received first tracing request, a specific UPF data plane from the plurality of UPF data planes which hosts the IP address of the UE involved in the user session. The method includes the step of transmitting, by the client module, a second tracing request to the identified specific UPF data plane hosting the IP address of the UE involved in the user session, to trace the data packets of the UE. The method includes the step of tracing, by the identified specific UPF data plane, the data packets related to the UE and forwarding the traced data to the client module.
[0007] In one embodiment, the method further includes the step of performing, by the client module, a longest prefix match on the IP address pool corresponding to the plurality of UEs to identify the specific UPF data plane which hosts the received IP address of the UE involved in the user session upon identifying, based on the received first tracing request, the specific UPF data plane from the plurality of UPF data planes hosting the IP address of the UE involved in the user session.
[0008] In another embodiment, the second tracing request includes the IP address of the UE involved in the user session.
[0009] In yet another embodiment, the method further includes the step of identifying the data packets which match the IP address of the UE. The method further includes the step of duplicating the identified data packets by installing one or more data packet flow rules pertaining to the second tracing request on a Network Interface Controller (NIC). The method further includes the step of forwarding, the identified duplicated data packets to the client module via a preconfigured tap interface, thereby supporting real time data packets tracing.
[0010] In yet another embodiment, the method further includes the step of capturing, by the identified specific UPF data plane, traffic statistics corresponding to the IP address of the UE. The method further includes the step of forwarding the traffic statistics corresponding to the IP address to the client module.
[0011] In yet another embodiment, the client module is configured to display in real time via a display unit, the traffic statistics corresponding to the IP address.
[0012] In yet another embodiment, the traffic statistics includes data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drop, and the user session related information for pre-configured time duration.
[0013] In yet another embodiment, the traced data includes the traced data packets and traffic statistics.
[0014] In yet another embodiment, the user session pertains to a session established by a user of the UE at the UPF data plane.
[0015] In another aspect of the present invention, a system for tracing data packets related to a User Equipment (UE) is disclosed. The system includes a client module and a plurality of User Plane Function (UPF) data planes. The system includes the plurality of UPF data planes in communication with the client module. The client module is configured to receive a first tracing request from a debugger equipment user. The first tracing request includes an Internet Protocol (IP) address pertaining to the UE involved in a user session. The client module is configured to upon receiving the tracing request from the debugger equipment user, retrieve, from a database, an IP address pool corresponding to a plurality of UEs which are hosted on a plurality of User Plane Function (UPF) data planes. Further, the client module is configured to identify, based on the received first tracing request, a specific UPF data plane from the plurality of UPF data planes which host the IP address of the UE involved in the user session. Further, the client module is configured to transmit a second tracing request to the identified specific UPF data plane hosting the IP address of the UE involved in the user session, to trace the data packets of the UE.
[0016] In another aspect of the present invention, a User Equipment (UE) is disclosed. The UE includes one or more primary processors coupled with one or more memory units. The one or more memory units store instructions which when executed by the one or more primary processors causes the UE to initiate, a user session at a User Plane Function (UPF) data plane and transmit a plurality of data packets via the user session to the UPF data plane.
[0017] Other features and aspects of this invention will be apparent from the following description and the accompanying drawings. The features and advantages described in this summary and in the following detailed description are not all-inclusive, and particularly, many additional features and advantages will be apparent to one of ordinary skill in the relevant art, in view of the drawings, specification, and claims hereof. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes and may not have been selected to delineate or circumscribe the inventive subject matter, resort to the claims being necessary to determine such inventive subject matter.
BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components, electronic components or circuitry commonly used to implement such components.
[0019] FIG. 1 is an exemplary block diagram of an environment for tracing data packets related to a User Equipment (UE), according to one or more embodiments of the present invention;
[0020] FIG. 2 is an exemplary block diagram of a system for tracing data packets related to the UE, according to the one or more embodiments of the present invention;
[0021] FIG. 3 is a schematic representation of the present system of FIG. 1 workflow, according to the one or more embodiments of the present invention;
[0022] FIG. 4 illustrates an exemplary block diagram of workflow between a client module, and a plurality of User Plane Function (UPF) Data Planes (DP), according to one or more embodiments of the present invention;
[0023] FIG. 5A is a signaling call flow diagram indicating tracing the data packets of the UE during availability of a user session at a UPF data plane of the plurality of UPF data planes, according to one or more embodiments of the present invention;
[0024] FIG. 5B is a signaling call flow diagram indicating non-traceability of the data packets of the UE during non-availability of the user session at the UPF data plane, according to one or more embodiments of the present invention;
[0025] FIG. 5C is a signaling call flow diagram of the user session of the UE deleted at the UPF data plane when the user session of the UE detaches from the network under tracing of the data packets, according to one or more embodiments of the present invention; and
[0026] FIG. 6 illustrates a flow diagram of a method for tracing data packets related to the UE, according to the one or more embodiments of the present invention.
[0027] The foregoing shall be more apparent from the following detailed description of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0028] Some embodiments of the present disclosure, illustrating all its features, will now be discussed in detail. It must also be noted that as used herein and in the appended claims, the singular forms "a", "an" and "the" include plural references unless the context clearly dictates otherwise.
[0029] Various modifications to the embodiment will be readily apparent to those skilled in the art and the generic principles herein may be applied to other embodiments. However, one of ordinary skill in the art will readily recognize that the present disclosure including the definitions listed here below are not intended to be limited to the embodiments illustrated but is to be accorded the widest scope consistent with the principles and features described herein.
[0030] A person of ordinary skill in the art will readily ascertain that the illustrated steps detailed in the figures and here below are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0031] As per various embodiments depicted, the present invention discloses the system and method for tracing data packets related to a User Equipment (UE).
[0032] FIG. 1 illustrates an exemplary block diagram of an environment 100 for tracing data packets related to a User Equipment (UE) 110, according to one or more embodiments of the present invention. The environment 100 includes a network 105, the UE 110, a server 115, and a system 125. The UE 110 aids a user to interact with the system 125 for initiating a user session at a User Plane Function (UPF) data plane 235 (shown in FIG.2) and transmitting a plurality of data packets via the user session to the UPF data plane 235. The UPF data plane 235 is a Network Function (NF) in a 5G core architecture responsible for forwarding and processing user data packets. The UPF data plane 235 carries the user data packets, as opposed to control plane functions, which manage signaling and control messages, data routing, quality of service (QoS) enforcement, policy implementation, and packet inspection.
[0033] The terms “UE,” and “the plurality of UEs,” and variations thereof, as used herein, are used interchangeably, without limiting the scope of the present disclosure.
[0034] For the purpose of description and explanation, the description will be explained with respect to a plurality of UEs 110, or to be more specific will be explained with respect to a first UE 110a, a second UE 110b, and a third UE 110c, and should nowhere be construed as limiting the scope of the present disclosure. In one embodiment, each of the first UE 110a, the second UE 110b, and the third UE 110c is one of, but are 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. The computing device may include one or more in-built or externally coupled accessories including, but not limited to, a visual aid device such as camera, audio aid, a microphone, a keyboard, input devices for receiving input from a user such as touch pad, touch enabled screen, electronic pen and the like. It may be appreciated that the UEs may not be restricted to the mentioned devices and various other devices may be used.
[0035] Further, in one embodiment, each of the first UE 110a, the second UE 110b, and the third UE 110c includes an external storage device, a bus, a main memory, a read-only memory, a mass storage device, communication port(s), and a processor. A person skilled in the art will appreciate that each of the first UE 110a, the second UE 110b, and the third UE 110c may include more than one processor and communication ports. The communication port(s) may be any of an RS-232 port for use with a modem-based dialup connection, a 10/100 Ethernet port, a Gigabit or 10 Gigabit port using copper or fiber, a serial port, a parallel port, or other existing or future ports. The communication port(s) may be chosen depending on a network, such as, but not limited to, a Local Area Network (LAN), a Wide Area Network (WAN), or any of the network to which the computer system connects.
[0036] 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. 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.
[0037] 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. In an embodiment, 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, a defence facility, or any other facility that provides content.
[0038] The environment 100 further includes the system 125 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 125 is configured for tracing data packets related to each of the first UE 110a, the second UE 110b, and the third UE 110c. The system 125 is adapted to be embedded within the server 115 or is embedded as the individual entity, as per multiple embodiments of the present invention. However, for the purpose of description, the system 125 is described as an integral part of the server 115, without deviating from the scope and limiting the scope of the present disclosure.
[0039] Operational and construction features of the system 125 will be explained in detail with respect to the following figures.
[0040] Referring to FIG. 2, FIG. 2 illustrates an exemplary block diagram of the system 125 for tracing data packets related to the UE 110, according to one or more embodiments of the present invention.
[0041] As per the illustrated embodiment, the system 125 includes a processor 205, a memory 210, an interface unit 215, a display unit 220, and an input device 225. For the purpose of description and explanation, the description will be explained with respect to the one or more processors 205, or to be more specific will be explained with respect to the processor 205 and should nowhere be construed as limiting the scope of the present disclosure. 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.
[0042] The information related to tracing the plurality of data packets of the UE 110 is provided or stored in the memory 210. Among other capabilities, 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 Random-Access Memory (RAM), or non-volatile memory such as Electrically Erasable Programmable Read-only Memory (EPROM), FLASH memory, and the like.
[0043] The information related to tracing the plurality of data packets of the UE 110 is rendered on the interface unit 215. The interface unit 215 comprises a variety of interfaces, for example, interfaces for data input and output devices, referred to as input/output (I/O) devices, storage devices, and the like. The interface unit 215 may facilitate communication for the system. The interface unit 215 may also provide a communication pathway for one or more components of the system. Examples of such components include, but are not limited to, processing unit/engine(s) and the database 240.
[0044] The interface unit 215 is rendered on a display unit 220, implemented using LCD display technology, OLED display technology, and/or other types of conventional display technology. Further the input device(s) 225 may include, but not limited to, keyboard, buttons, scroll wheels, cursors, touchscreen sensors, audio command interfaces, magnetic strip reader, optical scanner, etc.
[0045] The database 240 is configured to store the plurality of data packets via the user session to the UPF data plane 235. The database 240 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 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. The foregoing examples of database 240 types are non-limiting and may not be mutually exclusive e.g., a database can be both commercial and cloud-based, or both relational and open-source, etc.
[0046] Further, the processor 205, 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. In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the 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. In the present examples, the memory 210 may store instructions that, when executed by the processing resource, implement the processor 205. In such examples, the system 125 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 125 and the processing resource. In other examples, the processor 205 may be implemented by electronic circuitry.
[0047] In order for the system 125 to trace data packets related to the UE 110, the processor 205 includes a client module 230, and the plurality of UPF data planes 235 communicably coupled to each other for tracing the data packets related to the UE 110.
[0048] The client module 230, and the plurality of UPF data planes 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. In the examples described herein, such combinations of hardware and programming may be implemented in several different ways. For example, the 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. In the present examples, the memory 210 may store instructions that, when executed by the processing resource, implement the processor. In such examples, 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. In other examples, the processor 205 may be implemented by electronic circuitry.
[0049] The client module 230 is configured to receive a first tracing request from a debugger equipment user. In an embodiment, the first tracing request includes an Internet Protocol (IP) address pertaining to the UE 110 involved in a user session. In an embodiment, the user session pertains to a session established by the user of the UE 110 at the plurality of UPF data planes 235. In an embodiment, the debugger equipment is one of, but not limited to, a Centralized UPF Session Analyzer and Debugger (CUSAD). The debugger equipment is configured to distribute online capturing of all control and user plane packets of the user session of the UE 110. The debugger equipment user monitors online statistics of the user based on the UE IP address allocated to the user.
[0050] On receipt of the first tracing request from the debugger equipment user, the client module 230 is configured to retrieve an IP address pool from the database 240. The IP address pool includes IP addresses of the plurality of the UE 110. On retrieving the IP address pool of the plurality of UEs 110, the client module 230 is further configured to identify a specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session based on the received first tracing request. The client module 230 is configured to perform a longest prefix match on the IP address pool corresponding to the plurality of UEs 110 to identify the specific UPF data plane which hosts the received IP address of the UE 110 involved in the user session. The specific UPF data plane handles all user sessions corresponding to the IP address of the UE 110.
[0051] On identification of the specific UPF data plane from the plurality of UPF data planes 235, the client module 230 is configured to transmit a second tracing request to the identified specific UPF data plane. The identified specific UPF data plane includes the IP address of the UE 110 involved in the user session to trace the data packets of the UE 110. In an embodiment, the second tracing request includes the IP address of the UE 110 involved in the user session to trace the data packets of the UE 110.
[0052] On receipt of the second tracing request to the identified specific UPF data plane, the identified specific UPF data plane is configured to trace the data packets related to the UE 110. Thereafter, the identified specific UPF plane is configured to forward the traced data to the client module 230. In an embodiment, the traced data includes traced data packets and traffic statistics. In another embodiment, the traffic statistics include, but not limited to, data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drops and the user session related information for pre-configured time duration.
[0053] The identified specific UPF data plane is configured to identify the data packets related to the IP address of the UE 110. On identification of the data packets of the UE 110, the identified specific UPF data plane is configured to duplicate the identified data packets by installing one or more data packet flow rules pertaining to the second tracing request on a Network Interface Controller (NIC). The NIC, also referred to as a network interface card or a network adapter, is a hardware component that allows the UE 110 to connect to the network 105. The primary function of the NIC is to provide a physical interface for networking and enabling communication between the UE 110 and other devices on the network 105. The identified specific UPF data plane is configured to forward the identified duplicated data packets to the client module 230 via a preconfigured tap interface, thereby supporting real time data packets tracing.
[0054] Further, the identified specific UPF data plane is configured to capture the traffic statistics corresponding to the IP address of the UE 110. In one embodiment, the traffic statistics include, but not limited to, data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drops and the user session related information for pre-configured time duration. The identified specific UPF data plane is configured to forward the traffic statistics corresponding to the IP address of the UE 110 to the client module 230.
[0055] Subsequent to receiving the traffic statistics, the client module 230 is configured to display the traffic statistics corresponding to the IP address of the UE 110 in real time via the display unit 220. By doing so, the system 125 utilizes the IP address as a unique identifier. In addition, the system 125 aids in accurate identification and tracing of the data packets of the UE 110 and ensures proper assignment of IP pools, IP addresses, and IP routes of the UE 110. Moreover, the system 125 allows optimizing resource utilization and network performance, enhances packet tracing capabilities, improves network management, and enables efficient analysis of user traffic, thereby improving processing speed and reducing memory space requirement for tracing the data packets.
[0056] FIG. 3 describes a preferred embodiment of the system 125, according to one or more embodiments of the present invention. Referring to FIG. 3, describes the system 125 for tracing data packets of the UE 110. 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.
[0057] As mentioned earlier in FIG.1, 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.
[0058] The one or more primary processors 305 are coupled with a memory unit 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.
[0059] As mentioned earlier in FIG.2, the one or more processors 205 of the system 125 is configured to receive the first tracing request from the debugger equipment user, retrieve the Ip address pool from the database 240, identify the specific UPF data plane from the plurality of UPF data planes 235, transmit the second tracing request to the identified specific UPF data plane, and trace the data packets related to the UE 110 and forward the traced data packets to the client module 230.
[0060] As per the illustrated embodiment, the system 125 includes the processor 205, the memory 210, the interface unit 215, the display unit 220, and the input device 225. The operations and functions of the processor 205, the memory 210, the interface unit 215, the display unit 220, and the input device 225 are already explained in FIG. 2. For the sake of brevity, a similar description related to the working and operation of the system 125 as illustrated in FIG. 2 has been omitted to avoid repetition.
[0061] Further, the processor 205 includes the client module 230, and the plurality of UPF data planes 235. The operations and functions of the client module 230, and the plurality of UPF data planes 235 are already explained in FIG. 2. Hence, for the sake of brevity, a similar description related to the working and operation of the system 125 as illustrated in FIG. 2 has been omitted to avoid repetition. The limited description provided for the system 125 in FIG. 3, should be read with the description provided for the system 125 in the FIG. 2 above, and should not be construed as limiting the scope of the present disclosure.
[0062] FIG. 4 illustrates an exemplary block diagram of workflow between the client module 230, and the plurality of UPF data planes 235, according to one or more embodiments of the present invention. The plurality of UPF data planes 235 include, but not limited to a first UPF data plane 235a, a second UPF data plane 235b, a third UPF data plane 235c, a fourth UPF data plane 235d, and number of UPF data plane 235n. With respect to the illustrated embodiment, and for the purpose of description and explanation, the description will be explained with respect to the plurality of UPF data planes 235, or to be more specific will be explained with respect to the first UPF data plane 235a, the second UPF data plane 235b, the third UPF data plane 235c, the fourth UPF data plane 235d, and the number of UPF data plane 235n and should nowhere be construed as limiting the scope of the present disclosure.
[0063] As mentioned earlier, the client module 230 is configured to receive the first tracing request from the debugger equipment user. On receipt of the first tracing request from the debugger equipment user, the client module 230 is configured to retrieve the IP address pool from the database 240. The IP address pool includes IP addresses of the plurality of the UEs 110.
[0064] On retrieving the IP address pool of the plurality of UEs 110, further the client module 230 is configured to identify the specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session based on the received first tracing request. The client module 230 is configured to perform the longest prefix match on the IP address pool corresponding to the plurality of UEs 110 to identify the specific UPF data plane which hosts the received IP address of the UE 110 involved in the user session. The specific UPF data plane handles all user sessions corresponding to the IP address of the UE 110.
[0065] Accordingly, as per an exemplary embodiment, let us consider the specific UPF data plane is referred to as the second UPF data plane 235b. On identification of the second UPF data plane 235b from the plurality of UPF data planes 235, the client module 230 is configured to transmit the second tracing request to the second UPF data plane 235b hosting the IP address of the UE 110 involved in the user session to trace the data packets of the UE 110. In an embodiment, the second tracing request includes the IP address of the UE 110 involved in the user session.
[0066] On receipt of the second tracing request to the second UPF data plane 235b, the second UPF data plane 235b is configured to trace the data packets related to the UE 110 and forward the traced data to the client module 230. In an embodiment, the traced data includes traced data packets and traffic statistics. In another embodiment, the traffic statistics include, but not limited to, data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drops and the user session related information for pre-configured time duration.
[0067] The second UPF data plane 235b is configured to identify the data packets which relate to the IP address of the UE 110. On identification of the data packets of the UE 110, the identified specific UPF data plane is configured to duplicate the identified data packets by installing one or more data packet flow rules pertaining to the second tracing request on the Network Interface Controller (NIC). The second UPF data plane 235b is configured to forward the identified duplicated data packets to the client module 230 via a preconfigured tap interface, thereby supporting real time data packets tracing.
[0068] Further, the second UPF data plane 235b is configured to capture the traffic statistics corresponding to the IP address of the UE 110. The second UPF data plane 235b is configured to forward the traffic statistics corresponding to the IP address of the UE 110 to the client module 230. On forwarding the traffic statistics to the client module 230, the client module 230 is configured to display the traffic statistics corresponding to the IP address of the UE 110 in real time via the display unit 220.
[0069] FIG. 5A is a signaling call flow diagram indicating tracing the data packets of the UE 110 during availability of a user session at a UPF data plane of the plurality of UPF data planes 235, according to one or more embodiments of the present invention.
[0070] At step 502a, the client module 230 is configured to receive the first tracing request from the debugger equipment user. The first tracing request includes the IP address pertaining to the UE 110 involved in the user session. On receipt of the first tracing request from the debugger equipment user, the client module 230 is configured to retrieve the IP address pool from the database 240. In an embodiment, the IP address pool includes, but not limited to IP addresses of the plurality of the UE 110.
[0071] At step 504a, on retrieving the IP address pool of the plurality of UEs 110, the client module 230 is configured to identify the specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session based on the received first tracing request.
[0072] At step 506a, on receipt of the first tracing request with the user session, the client module 230 is configured to display traffic statistics corresponding to the IP address of the UE 110 in real time via the display unit 220 by using a timer. In an example, the client module 230 is configured to display the traffic statistics corresponding to the IP address of the UE 110 in real time via the display unit 220 for a predefined time period set on the timer. In an embodiment, the predefined time period is ten seconds. In another embodiment, the predefined time period is modified as per the requirements of the network operator.
[0073] At step 508a, the client module 230 is configured to remove the first tracing request involved with the user session from the plurality of UPF data planes 235. In one exemplary embodiment, the client module 230 is configured to remove the first tracing request involved with the user session from the plurality of UPF data planes 235 on expiration of the predefined time period set on the timer. Thereafter, at step510a , the plurality of UPF data planes 235 acknowledges successful removal of the tracing of the UE IP to the client module 230.
[0074] FIG. 5B is a signaling call flow diagram indicating non-traceability of the data packets of the UE 110 during non-availability of the user session at the UPF data plane, according to one or more embodiments of the present invention.
[0075] At step 502b, the client module 230 is configured to receive the first tracing request from the debugger equipment user. The first tracing request includes the IP address pertaining to the UE 110 involved in the user session. On receipt of the first tracing request from the debugger equipment user, the client module 230 is configured to retrieve the IP address pool from the database 240. In an embodiment, the IP address pool includes, but not limited to, IP addresses of the plurality of the UEs 110.
[0076] At step 504b, the client module 230 is configured to check availability of the user session at the plurality of UPF data planes 235. The plurality of UPF data planes 235 hosts the IP address of the UE 110 based on the received first tracing request.
[0077] At step 506b, on determining non-availability of the user session at the plurality of UPF data planes 235, the plurality of UPF data planes 235 is configured to transmit that the user session does not exist at the plurality of UPF data planes 235, to the client module 230.
[0078] At step 508b, the client module 230 is configured to display the non-availability of the user session at the plurality of UPF data planes 235 by the display unit 220 when the user session does not exist at the plurality of UPF data planes 235.
[0079] FIG. 5C is a signaling call flow diagram indicating deleting the user session of the UE 110 at the UPF data plane 235 when the user session of the UE 110 detaches from the network 105 during tracing, according to one or more embodiments of the present invention.
[0080] At step 502c, the client module 230 is configured to receive the first tracing request from the debugger equipment user. The first tracing request includes the IP address pertaining to the UE 110 involved with the user session. On receipt of the first tracing request from the debugger equipment user, the client module 230 is configured to retrieve an IP address pool corresponding to the plurality of UEs 110 which are hosted on the plurality of UPF data planes 235 from the database 240.
[0081] At step 504c, on retrieving the IP address pool of the plurality of UEs 110, the client module 230 is configured to identify a specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session based on the received first tracing request.
[0082] At step 506c, on receipt of the first tracing request involved with the user session from the plurality of UPF data planes 235 on expiration of the predefined time period set on the timer, the client module 230 is configured to display traffic statistics corresponding to the IP address of the UE 110 in real time via the display unit 220 for the predefined time period set on the timer. In an embodiment, the predefined time period is ten seconds. In another embodiment, the predefined time period is modified as per the requirements of the network operator.
[0083] At step 508c, the plurality of UPF data planes 235 involved in the user session based on the received tracing request is detached from the network 105. The plurality of UPF data planes 235 acknowledges to the client module 230 that the user session for the UE IP deleted from the plurality of UPF data planes 235.
[0084] At step 510c, the client module 230 is configured to display that the user session for the UE IP deleted at the plurality of UPF data planes 235 when the user session of the UE 110 detaches from the network 105 under tracing of the data packets.
[0085] FIG. 6 is a flow diagram of a method 600 for tracing data packets related to the UE 110, according to the one or more embodiments of the present disclosure. 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.
[0086] At step 605, the method 600 includes the step of receiving a first tracing request from a debugger equipment user by the client module 230. In an embodiment, the first tracing request includes an Internet Protocol (IP) address pertaining to the UE 110 involved in a user session. In an embodiment, the user session pertains to a session established by a user of the UE at the plurality of UPF data planes 235. In an embodiment, the debugger equipment include, but not limited to, a Centralized UPF Session Analyzer and Debugger (CUSAD). The debugger equipment is configured for distributing online capturing of all control and user plane packets of the user session of the UE 110. The debugger equipment user can monitor online statistics of the user based on the UE IP address allocated to the user.
[0087] At step 610, the method 600 includes the step of retrieving an IP address pool from the database 240. The IP address pool includes IP addresses of the plurality of the UE 110. On retrieving the IP address pool of the plurality of UEs 110, the client module 230 is further configured to identify a specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session based on the received first tracing request.
[0088] At step 615, the method 600 includes the step of identifying a specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session based on the received first tracing request. The client module 230 is configured to perform a longest prefix match on the IP address pool corresponding to the plurality of UEs 110 to identify the specific UPF data plane which hosts the received IP address of the UE 110 involved in the user session. The specific UPF data plane handles all user sessions corresponding to the IP address of the UE 110.
[0089] At step 620, the method 600 includes the step of transmitting a second tracing request to the identified specific UPF data plane hosting the IP address of the UE 110 involved in the user session to trace the data packets of the UE 110 upon identification of the specific UPF data plane from the plurality of UPF data planes 235. In an embodiment, the second tracing request includes the IP address of the UE 110 involved in the user session.
[0090] At step 625, the method 600 includes the step of tracing the data packets related to the UE 110 and forwarding the traced data to the client module 230 from the identified specific UPF data plane based on receipt of the second tracing request to the identified specific UPF data plane. In an embodiment, the traced data includes traced data packets and traffic statistics. In another embodiment, the traffic statistics include, but not limited to, data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drops and the user session related information for pre-configured time duration.
[0091] The identified specific UPF data plane is configured to identify the data packets which relate to the IP address of the UE 110. On identification of the data packets of the UE 110, the identified specific UPF data plane is configured to duplicate the identified data packets by installing one or more data packet flow rules pertaining to the second tracing request on a Network Interface Controller (NIC). The identified specific UPF data plane is configured to forward the identified duplicated data packets to the client module 230 via a preconfigured tap interface, thereby supporting real time data packets tracing.
[0092] Further, the identified specific UPF data plane is configured to capture the traffic statistics corresponding to the IP address of the UE 110. In one embodiment, the traffic statistics include, but not limited to, data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drops and the user session related information for pre-configured time duration. The identified specific UPF data plane is configured to forward the traffic statistics corresponding to the IP address of the UE 110 to the client module 230.
[0093] Subsequent to receiving the traffic statistics, the client module 230 is configured to display the traffic statistics corresponding to the IP address of the UE 110 in real time via the display unit 220. By doing so, the method 600 utilizes the IP address as a unique identifier. In addition, the method 600 aids in accurate identification and tracing of the data packets of the UE 110, ensures proper assignment of IP pools, IP addresses, and IP routes of the UE 110. Moreover, the method 600 allows optimizing resource utilization and network performance, enhances packet tracing capabilities, improves network management, and enables efficient analysis of user traffic, thereby improving processing speed and reducing memory space requirement for tracing the data packets.
[0094] 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 a first tracing request from a debugger equipment user. The first tracing request includes an Internet Protocol (IP) address pertaining to a User Equipment (UE) involved in a user session. The processor 205 is further configured to retrieve, from a database, an IP address pool corresponding to a plurality of UEs 110 which are hosted on a plurality of User Plane Function (UPF) data planes 235 upon receiving the tracing request from the debugger equipment user. The processor 205 is further configured to identify, based on the received first tracing request, a specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session. The processor 205 is further configured to transmit a second tracing request to the identified specific UPF data plane hosting the IP address of the UE 110 involved in the user session, to trace the data packets of the UE 110. The processor 205 is further configured to trace the data packets related to the UE 110 and forwarding the traced data to the client module 230 by the identified specific UPF data plane.
[0095] A person of ordinary skill in the art will readily ascertain that the illustrated embodiments and steps in description and drawings (FIG.1-6) are set out to explain the exemplary embodiments shown, and it should be anticipated that ongoing technological development will change the manner in which particular functions are performed. These examples are presented herein for purposes of illustration, and not limitation. Further, the boundaries of the functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternative boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Alternatives (including equivalents, extensions, variations, deviations, etc., of those described herein) will be apparent to persons skilled in the relevant art(s) based on the teachings contained herein. Such alternatives fall within the scope and spirit of the disclosed embodiments.
[0096] The present disclosure incorporates technical advancement of identifying the specific UPF data plane from the plurality of UPF data planes 235 which hosts the IP address of the UE 110 involved in the user session. After identifying the specific UPF data plane, the identified specific UPF data plane is traced to the data packets related to the UE 110. By doing so, the system 125 and method 600 utilizes the IP address as the unique identifier, accurate identification and tracing of the data packets become possible, ensures proper assignment of roles, IP pools, IP addresses, and IP routes, optimizing resource utilization and network performance. Furthermore, the present invention enhances packet tracing capabilities, improves network management, and enables efficient analysis of user traffic, thereby improving processing speed and reducing memory space requirement for tracing the data packets.
[0097] The present disclosure incorporates the advantage of providing a systematic and efficient method for tracing packets associated with the UE 110. The database 240 streamlines the process by managing the complete cluster of UPF data planes 235. The client module 230 ensures proper assignment of roles, the UE pools, the IP addresses, and IP routes, optimizing resource utilization and network performance. Additionally, the present invention allows for detailed packet analysis, including capturing packet headers, payload data, and timestamps. This enables in-depth understanding of the behavior and characteristics of the user session, and ability to display a variety of traffic statistics related to the session provides valuable insights for network operators, facilitating troubleshooting, optimization, and monitoring of the user sessions. Overall, the present invention enhances packet tracing capabilities, improves network management, and enables efficient analysis of user traffic.
[0098] 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.
REFERENCE NUMERALS
[0099] Environment - 100;
[00100] Network – 105;
[00101] User Equipment - 110;
[00102] Server – 115;
[00103] System -125;
[00104] Processor -205;
[00105] Memory – 210;
[00106] Interface unit – 215;
[00107] Display unit - 220;
[00108] Input device - 225;
[00109] Client module- 230;
[00110] User Plane Function data plane -235;
[00111] First UPF data plane – 235a;
[00112] Second UPF data plane – 235b;
[00113] Third UPF data plane -235c;
[00114] Fourth UPF data plane – 235d;
[00115] Number of UPF data plane – 235n;
[00116] Database - 240;
[00117] Primary processor– 305;
[00118] Memory - 310.
,CLAIMS:CLAIMS
We Claim:
1. A method (600) for tracing data packets related to a User Equipment (UE) (110), the method (600) comprises the steps of:
receiving, by a client module (230), a first tracing request from a debugger equipment user, wherein the first tracing request includes an Internet Protocol (IP) address pertaining to the UE (110) involved in a user session;
upon receiving the first tracing request from the debugger equipment user, retrieving, by the client module (230), from a database (240), an IP address pool corresponding to a plurality of UEs (110) which are hosted on a plurality of User Plane Function (UPF) data planes (235);
identifying, by the client module (230), based on the received first tracing request, a specific UPF data plane from the plurality of UPF data planes (235) which hosts the IP address of the UE (110) involved in the user session; and
transmitting, by the client module (230), a second tracing request to the identified specific UPF data plane hosting the IP address of the UE (110) involved in the user session, to trace the data packets of the UE (110); and
tracing, by the identified specific UPF data plane, the data packets related to the UE (110) and forwarding the traced data packets to the client module (230).
2. The method (600) as claimed in claim 1, wherein the step of identifying, based on the received first tracing request, a specific UPF data plane from the plurality of UPF data planes (235) hosting the IP address of the UE involved in the user session, includes the step of:
performing, by the client module (230), a longest prefix match on the IP address pool corresponding to the plurality of UEs (110) to identify the specific UPF data plane which hosts the received IP address of the UE (110) involved in the user session.
3. The method (600) as claimed in claim 1, wherein the second tracing request includes the IP address of the UE (110) involved in the user session.
4. The method as claimed in claim 1, wherein the step of, tracing, by the identified specific UPF data plane, the data packets related to the UE, includes the steps of:
identifying, the data packets which match the IP address of the UE (110);
duplicating, the identified data packets by installing one or more data packet flow rules pertaining to the second tracing request on a Network Interface Controller (NIC); and
forwarding, the identified duplicated data packets to the client module (230) via a preconfigured tap interface, thereby supporting real time data packets tracing.
5. The method (600) as claimed in claim 1, wherein the method (600) further comprises the steps of:
capturing, by the identified specific UPF data plane, traffic statistics corresponding to the IP address of the UE (110); and
forwarding the traffic statistics corresponding to the IP address to the client module (230).
6. The method (600) as claimed in claim 5, wherein the client module (230) is configured to display in real time via a display unit (220), the traffic statistics corresponding to the IP address.
7. The method (600) as claimed in claim 5, wherein the traffic statistics includes data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drops and the user session related information for pre-configured time duration.
8. The method (600) as claimed in claim 1, wherein the traced data includes the traced data packets and traffic statistics.
9. The method (600) as claimed in claim 1, wherein the user session pertains to a session established by a user of the UE (110) at the UPF data plane (235).
10. A User Equipment (UE) (110), comprising:
one or more primary processors (305) coupled with one or more memory units (310), wherein said one or more memory units (310) store instructions which when executed by the one or more primary processors (305) causes the UE (110) to:
initiate, a user session at a User Plane Function (UPF) data plane (235); and
transmit, a plurality of data packets via the user session to the UPF data plane (235),
wherein the client module (230) and the UPF data plane (235) are configured to perform the method (600) as claimed in claim 1.
11. A system (125) for tracing data packets related to a User Equipment (UE) (110), the system (125) comprising:
a client module (230);
a plurality of User Plane Function (UPF) data planes (235) in communication with the client module (230), the client module (230) configured to:
receive, a first tracing request from a debugger equipment user, wherein the first tracing request includes an Internet Protocol (IP) address pertaining to the UE (110) involved in a user session;
upon receiving the tracing request from the debugger equipment user, retrieve, from a database (240), an IP address pool corresponding to a plurality of UEs (110) which are hosted on a plurality of User Plane Function (UPF) data planes (235);
identify, based on the received first tracing request, a specific UPF data plane from the plurality of UPF data planes (235) which hosts the IP address of the UE (110) involved in the user session; and
transmit, a second tracing request to the identified specific UPF data plane hosting the IP address of the UE (110) involved in the user session, to trace the data packets of the UE (110); and
the identified specific UPF data plane from the plurality of UPF data planes (235) is configured to:
trace, the data packets related to the UE (110); and
forward, the traced data packets to the client module (230).
12. The system (125) as claimed in claim 11, wherein on identification and based on the received first tracing request, the client module (230) is further configured to:
perform, a longest prefix match on the IP address pool corresponding to the plurality of UEs (110) to identify the specific UPF data plane which hosts the received IP address of the UE (110) involved in the user session.
13. The system (125) as claimed in claim 11, wherein the second tracing request includes the IP address of the UE (110) involved in the user session.
14. The system (125) as claimed in claim 11, wherein the identified specific UPF data plane from the plurality of UPF data planes (235) is configured to:
identify, the data packets which match the IP address of the UE (110);
duplicate, the identified data packets by installing one or more data packet flow rules pertaining to the second tracing request on a Network Interface Controller (NIC); and
forward, the identified duplicated data packets to the client module (230) via a preconfigured tap interface, thereby supporting real time data packets tracing.
15. The system (125) as claimed in claim 11, wherein the client module (230) is further configured to:
capture, by the identified specific UPF data plane, traffic statistics corresponding to the IP address of the UE (110); and
forward the traffic statistics corresponding to the IP address to the client module (230).
16. The system (125) as claimed in claim 15, wherein the client module (230) is configured to display in real time via a display unit (220), the traffic statistics corresponding to the IP address.
17. The system (125) as claimed in claim 16, wherein the traffic statistics includes data pertaining to transmission and reception traffic rate in terms of data Packets Per Second (PPS) and Mega bits per second (Mbps), traffic drops and the user session related information for pre-configured time duration.
18. The system (125) as claimed in claim 11, wherein the traced data includes the traced data packets and traffic statistics.
19. The system (125) as claimed in claim 11, wherein the user session pertains to a session established by a user of the UE (110) at the UPF data plane (235).
| # | Name | Date |
|---|---|---|
| 1 | 202321045198-STATEMENT OF UNDERTAKING (FORM 3) [05-07-2023(online)].pdf | 2023-07-05 |
| 2 | 202321045198-PROVISIONAL SPECIFICATION [05-07-2023(online)].pdf | 2023-07-05 |
| 3 | 202321045198-FORM 1 [05-07-2023(online)].pdf | 2023-07-05 |
| 4 | 202321045198-FIGURE OF ABSTRACT [05-07-2023(online)].pdf | 2023-07-05 |
| 5 | 202321045198-DRAWINGS [05-07-2023(online)].pdf | 2023-07-05 |
| 6 | 202321045198-DECLARATION OF INVENTORSHIP (FORM 5) [05-07-2023(online)].pdf | 2023-07-05 |
| 7 | 202321045198-FORM-26 [11-09-2023(online)].pdf | 2023-09-11 |
| 8 | 202321045198-Proof of Right [22-12-2023(online)].pdf | 2023-12-22 |
| 9 | 202321045198-DRAWING [26-06-2024(online)].pdf | 2024-06-26 |
| 10 | 202321045198-COMPLETE SPECIFICATION [26-06-2024(online)].pdf | 2024-06-26 |
| 11 | Abstract1.jpg | 2024-09-25 |
| 12 | 202321045198-Power of Attorney [11-11-2024(online)].pdf | 2024-11-11 |
| 13 | 202321045198-Form 1 (Submitted on date of filing) [11-11-2024(online)].pdf | 2024-11-11 |
| 14 | 202321045198-Covering Letter [11-11-2024(online)].pdf | 2024-11-11 |
| 15 | 202321045198-CERTIFIED COPIES TRANSMISSION TO IB [11-11-2024(online)].pdf | 2024-11-11 |
| 16 | 202321045198-FORM 3 [25-11-2024(online)].pdf | 2024-11-25 |
| 17 | 202321045198-FORM-9 [10-01-2025(online)].pdf | 2025-01-10 |
| 18 | 202321045198-FORM 18A [13-01-2025(online)].pdf | 2025-01-13 |
| 19 | 202321045198-FER.pdf | 2025-02-25 |
| 20 | 202321045198-FER_SER_REPLY [07-04-2025(online)].pdf | 2025-04-07 |
| 21 | 202321045198-PatentCertificate31-10-2025.pdf | 2025-10-31 |
| 22 | 202321045198-IntimationOfGrant31-10-2025.pdf | 2025-10-31 |
| 1 | SearchHistory-20914E_22-01-2025.pdf |