Abstract: The present disclosure relates to a method and a system for implementing common stack platform for byte diagram-based protocols. For decoding the present disclosure encompasses receiving at the common stack platform, a message from a network node, the message comprising one or more information elements (IEs); creating, a stack object for the message, in an event the IE(s) are a familiar type IE; analysing, one or more IEs of the message by passing the message through the stack object; and decoding the message based on the analysis. For encoding messages, the present disclosure encompasses: providing at the common stack platform a value for each IE using a message byte diagram equivalent JSON configuration; and encoding the message based on the providing the value for the each IE. [Figure 3]
FORM 2
THE PATENTS ACT, 1970 (39 OF 1970) & THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See section 10 and rule 13)
“METHOD AND SYSTEM FOR IMPLEMENTING COMMON STACK PLATFORM FOR BYTE DIAGRAM-BASED PROTOCOLS”
We, Jio Platforms Limited, an Indian National, of Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India.
The following specification particularly describes the invention and the manner in which it is to be performed.
METHOD AND SYSTEM FOR IMPLEMENTING COMMON STACK PLATFORM FOR BYTE
DIAGRAM-BASED PROTOCOLS
FIELD OF THE DISCLOSURE
[0001] Embodiments of the present disclosure generally relate to network performance management systems. More particularly, embodiments of the present disclosure relate to a method and system for implementing a common stack platform for encoding and decoding messages related to one or more byte diagram-based protocols.
BACKGROUND
[0002] The following description of the related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section is used only to enhance the understanding of the reader with respect to the present disclosure, and not as admissions of the prior art.
[0003] Wireless communication technology has rapidly evolved over the past few decades, with each generation bringing significant improvements and advancements. The first generation of wireless communication technology was based on analog technology and offered only voice services. However, with the advent of the second-generation (2G) technology, digital communication and data services became possible, and text messaging was introduced. The third generation (3G) technology marked the introduction of high-speed internet access, mobile video calling, and location-based services. The fourth-generation (4G) technology revolutionized wireless communication with faster data speeds, better network coverage, and improved security. Currently, the fifth-generation (5G) technology is being deployed, promising even faster data speeds, low latency, and the ability to connect multiple devices simultaneously. With each generation, wireless communication technology has become more advanced, sophisticated, and capable of delivering more services to its users.
[0004] In the 5G communication system, there is provided a plurality of network functions (NFs), for example an Access and Mobility Management Function (AMF), session management function (SMF), Authentication Server function (AUSF), a Network Slice Selection Function (NSSF), Policy control function (PCF), a Network Repository Function (NRF), and the like. One or more of the aforementioned NFs communicates with each other, to implement multiple activities on the 5G communication system. There are multiple interfaces/protocols for receiving and transmitting messages for the NFs such as the AMF and/or the SMF of 5G network. Each such interface/protocol has large number of messages, and each message has larger number of information elements. For example, 5g- Non-Access Stratum (NAS) has 47 messages and 113 information elements, 4g-NAS has 61 messages and 109 information elements, Packet Forwarding Control Protocol (PFCP) has 22 messages and 248 information elements, General Packet Radio Service (GPRS) Tunnelling Protocol (GTPv2) has 50 messages and 212 information elements.
[0005] For decoding and encoding of these messages, one of the existing solutions is a stack platform which decodes and encodes messages that are received or transmitted by NFs such as the AMF and/or the SMF of 5G network. As a result, for different protocols, a separate stack with a large number of messages and information elements has to be developed in existing approaches. This is a labor intensive, a time consuming and an inefficient approach, particularly because where there are changes in any message or information element structure, entire stack platform has to be again developed, tested and deployed.
[0006] Further, information element and message specific classes are defined in a stack platform and separate application programming interfaces (APIs) are needed for each message class and information element specific class. Consequently, interfacing of stack platform with core application of the NFs such as the SMF and/or the AMF of 5G network is complex and voluminous work due to large of number of Application Programming Interfaces (APIs) involved in said interfacing.
[0007] Thus, there exists an imperative need in the art to develop a method and a system for implementing common stack platform for efficient and effective encoding and decoding of
different byte diagram-based protocols such as 5g-NAS, 4g-NAS, PFCP, and GTPv2, which the present disclosure aims to address.
OBJECTS OF THE DISCLOSURE
[0008] Some of the objects of the present disclosure, which at least one embodiment disclosed herein satisfies are listed herein below.
[0009] It is an object of the present disclosure to provide a method and a system for implementing a common stack platform for different byte diagram-based protocols, wherein only common generic encoding and decoding APIs are used which results in reduction of number of Application Programming Interfaces (APIs) involved in interfacing with core application.
[0010] It is yet another object of the present disclosure to provide a method and a system for implementing a common stack platform for different byte diagram-based protocols, wherein different stack platforms for different byte diagram-based protocols are not needed.
[0011] It is yet another object of the present disclosure to provide a method and a system for implementing a common stack platform for different byte diagram-based protocols, wherein the common stack platform is scalable and optimized.
SUMMARY
[0012] This section is provided to introduce certain aspects of the present disclosure in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter.
[0013] An aspect of the present disclosure may relate to a method for implementing a common stack platform for decoding messages related to one or more byte diagram-based protocols. The method comprises receiving, by a transceiver unit at the common stack platform, a message from a network node, the message comprising one or more information
elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE. The method further comprises creating, by an object creator unit at the common stack platform, a stack object for the message, in an event the one or more IEs is the familiar type IE. The method further comprises analysing, by an analysis unit at the common stack platform, the one or more IEs of the message by passing the message through the stack object, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an event the one or more IE is a variable length IE. The method further comprises decoding, by a decoder unit at the common stack platform, the message based on the analysis.
[0014] In an exemplary aspect of the present disclosure, in an event an IE in the message is: the fixed length IE and the unfamiliar type IE, the method further comprises: performing, by a traversal unit at the common stack platform, a full grammar traversal procedure for the IE; generating, by the traversal unit at the common stack platform, the decoding data for the fixed length IE based on the full grammar traversal procedure; and storing, by a storage unit at the common stack platform, the decoding data generated for the fixed length IE.
[0015] In an exemplary aspect of the present disclosure, in an event an IE in the message is: the variable length IE and the unfamiliar type IE, the method further comprises: performing, by a traversal unit at the common stack platform, a full grammar traversal procedure for the IE; generating, by the traversal unit at the common stack platform, the decoding data for the variable length IE based on the full grammar traversal procedure, wherein the decoding data for the variable length IE comprises a graph in form of an adjacency matrix in three-dimensional form; and storing, by a storage unit of the common stack platform, the decoding data generated for the variable length IE.
[0016] In an exemplary aspect of the present disclosure, the analysing, by the analysis unit at the common stack platform, the one or more IEs of the message using the decoding data for
the variable length IE comprises: performing, by the analysis unit at the common stack platform, a depth first search (DFS) traversal technique on the graph.
[0017] An aspect of the present disclosure may relate to a method for implementing a common stack platform for encoding messages related to one or more byte diagram based protocols, the method comprises receiving, by a transceiver unit at the common stack platform, an indication for sending a message to a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE. The method further comprises creating, by an object creator unit at the common stack platform, a stack object for the message, in an event the one or more IE is the familiar type IE. The method further comprises providing, by an input unit at the common stack platform, a value for said each of the one or more IEs in the message, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: an encoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and an encoding data for a variable length IE in an event the one or more IE is a variable length IE. The method further comprises encoding, by an encoder unit at the common stack platform, the message based on the providing the value for the each of the one or more IEs in the message.
[0018] In an exemplary aspect of the present disclosure, in an event an IE in the message is: the fixed length IE and the unfamiliar type IE, the method further comprises: performing, by a traversal unit at the common stack platform, a full grammar traversal procedure for the IE; generating, by the traversal unit at the common stack platform, the encoding data for the fixed length IE based on the full grammar traversal procedure; and storing, by a storage unit at the common stack platform, the encoding data generated for the fixed length IE.
[0019] In an exemplary aspect of the present disclosure, in an event an IE in the message is: the variable length IE and the unfamiliar type IE, the method further comprises: performing, by a traversal unit at the common stack platform, a full grammar traversal procedure for the IE; generating, by the traversal unit at the common stack platform, the encoding data for the
variable length IE based on the full grammar traversal procedure, wherein the encoding data for the variable length IE comprises a graph in form of an adjacency matrix in three-dimensional form; and storing, by a storage unit at the common stack platform, the encoding data generated for the variable length IE.
[0020] In an exemplary aspect of the present disclosure, the method further comprises providing, by the input unit at the common stack platform, the value for each of the one or more IEs in the message using the encoding data for the variable length IE comprises: performing, by the analysis unit at the common stack platform, a depth first search (DFS) traversal technique on the graph.
[0021] Another aspect of the present disclosure may relate to a system for decoding messages related to one or more byte diagram based protocols, the system comprising a transceiver unit configured to receive, at a common stack platform, a message from a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE. The system further comprises an object creator unit and the object creator unit configured to create, at the common stack platform, a stack object for the message, in an event the one or more IE is the familiar type IE. The system further comprises an analysis unit and the analysis unit configured to analyse, at the common stack platform, one or more IEs of the message by passing the message through the stack object, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an event the one or more IE is a variable length IE. The system further comprises a decoder unit and the decoder unit configured to decode, at the common stack platform, the message based on the analysis.
[0022] Another aspect of the present disclosure may relate to a system for encoding messages related to one or more byte diagram based protocols, the system comprising a transceiver unit configured to receive, at a common stack platform, an indication for sending a message to a network node, the message comprising one or more information elements
(IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE. The system further comprises an object creator unit configured to create, at the common stack platform, a stack object for the message, in an event the one or more IE is the familiar type IE. The method further comprises an input unit configured to provide, at the common stack platform, a value for said each of the one or more IEs in the message, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: an encoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and an encoding data for a variable length IE in an event the one or more IE is a variable length IE. The method further comprises an encoder unit configured to encode, at the common stack platform, the message based on the providing the value for the each of the one or more IEs in the message.
[0023] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for decoding messages related to one or more byte diagram based protocols, the instructions include executable code which, when executed by one or more units of a system, causes: a transceiver unit of the system to receive, at a common stack platform, a message from a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE; an object creator unit of the system to create, at the common stack platform, a stack object for the message, in an event the one or more IE is the familiar type IE; an analysis unit of the system to analyse, at the common stack platform, one or more IEs of the message by passing the message through the stack object, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an event the one or more IE is a variable length IE; and a decoder unit of the system to decode, at the common stack platform, the message based on the analysis.
[0024] Yet another aspect of the present disclosure may relate to a non-transitory computer
readable storage medium storing instructions for encoding messages related to one or more
byte diagram based protocols, the instructions include executable code which, when
executed by one or more units of a system, causes: a transceiver unit of the system to receive,
5 at a common stack platform, an indication for sending a message to a network node, the
message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE; an object creator unit of the system to create,
10 at the common stack platform, a stack object for the message, in an event the one or more IE
is the familiar type IE; an input unit of the system to provide, at the common stack platform, a value for said each of the one or more IEs in the message, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: an encoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and an encoding data for
15 a variable length IE in an event the one or more IE is a variable length IE; and an encoder unit
of the system to encode, at the common stack platform, the message based on the providing the value for the each of the one or more IEs in the message.
DESCRIPTION OF THE DRAWINGS
20
[0025] 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
25 clearly illustrating the principles of the present disclosure. Also, the embodiments shown in
the figures are not to be construed as limiting the disclosure, but the possible variants of the method and system according to the disclosure are illustrated herein to highlight the advantages of the disclosure. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to
30 implement such components.
9
[0026] FIG. 1 illustrates an exemplary block diagram representation of 5th generation core (5GC) network architecture.
[0027] FIG. 2 illustrates an exemplary block diagram of a computing device upon which the
5 features of the present disclosure may be implemented in accordance with exemplary
implementation of the present disclosure.
[0028] Fig. 3 illustrates an exemplary block diagram of a system for implementing a common
stack platform for byte diagram-based protocols, in accordance with exemplary
10 implementations of the present disclosure.
[0029] Fig. 4 illustrates a method flow diagram for implementing a common stack platform for decoding messages related to one or more byte diagram-based protocols, in accordance with exemplary implementations of the present disclosure. 15
[0030] Fig. 5 illustrates a method flow diagram for implementing a common stack platform for encoding messages related to one or more byte diagram-based protocols, in accordance with exemplary implementations of the present disclosure.
20 DETAILED DESCRIPTION
[0031] In the following description, for the purposes of explanation, various specific details
are set forth in order to provide a thorough understanding of embodiments of the present
disclosure. It will be apparent, however, that embodiments of the present disclosure may be
25 practiced without these specific details. Several features described hereafter may each be
used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above.
30 [0032] The ensuing description provides exemplary embodiments only, and is not intended
to limit the scope, applicability, or configuration of the disclosure. Rather, the ensuing description of the exemplary embodiments will provide those skilled in the art with an
10
enabling description for implementing an exemplary embodiment. It should be understood that various changes may be made in the function and arrangement of elements without departing from the spirit and scope of the disclosure as set forth.
5 [0033] Further, in accordance with the present disclosure, it is to be acknowledged that the
functionality described for the various components/units can be implemented
interchangeably. While specific embodiments may disclose a particular functionality of these
units for clarity, it is recognized that various configurations and combinations thereof are
within the scope of the disclosure. The functionality of specific units as disclosed in the
10 disclosure should not be construed as limiting the scope of the present disclosure.
Consequently, alternative arrangements and substitutions of units, provided they achieve the intended functionality described herein, are considered to be encompassed within the scope of the present disclosure.
15 [0034] Specific details are given in the following description to provide a thorough
understanding of the embodiments. However, it will be understood by one of ordinary skill in the art that the embodiments may be practiced without these specific details. For example, circuits, systems, processes, and other components may be shown as components in block diagram form in order not to obscure the embodiments in unnecessary detail.
20
[0035] Also, it is noted that individual embodiments may be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although a flowchart may describe the operations as a sequential process, many of the operations may be performed in parallel or concurrently. In addition, the order of the
25 operations may be re-arranged. A process is terminated when its operations are completed
but could have additional steps not included in a figure.
[0036] The word “exemplary” and/or “demonstrative” is used herein to mean serving as an
example, instance, or illustration. For the avoidance of doubt, the subject matter disclosed
30 herein is not limited by such examples. In addition, any aspect or design described herein as
“exemplary” and/or “demonstrative” is not necessarily to be construed as preferred or advantageous over other aspects or designs, nor is it meant to preclude equivalent exemplary
11
structures and techniques known to those of ordinary skill in the art. Furthermore, to the
extent that the terms “includes,” “has,” “contains,” and other similar words are used in either
the detailed description or the claims, such terms are intended to be inclusive—in a manner
similar to the term “comprising” as an open transition word—without precluding any
5 additional or other elements.
[0037] As used herein, a “processing unit” or “processor” or “operating processor” includes one or more processors, wherein processor refers to any logic circuitry for processing instructions. A processor may be a general-purpose processor, a special purpose processor, a
10 conventional processor, a digital signal processor, a plurality of microprocessors, one or more
microprocessors in association with a (Digital Signal Processing) DSP core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The processor may perform signal coding data processing, input/output processing, and/or any other functionality that enables the
15 working of the system according to the present disclosure. More specifically, the processor
or processing unit is a hardware processor.
[0038] As used herein, “a user equipment”, “a user device”, “a smart-user-device”, “a smart-device”, “an electronic device”, “a mobile device”, “a handheld device”, “a wireless
20 communication device”, “a mobile communication device”, “a communication device” may
be any electrical, electronic and/or computing device or equipment, capable of implementing the features of the present disclosure. The user equipment/device may include, but is not limited to, a mobile phone, smart phone, laptop, a general-purpose computer, desktop, personal digital assistant, tablet computer, wearable device or any other computing device
25 which is capable of implementing the features of the present disclosure. Also, the user device
may contain at least one input means configured to receive an input from unit(s) which are required to implement the features of the present disclosure.
[0039] As used herein, “storage unit” or “memory unit” refers to a machine or computer-
30 readable medium including any mechanism for storing information in a form readable by a
computer or similar machine. For example, a computer-readable medium includes read-only
memory (“ROM”), random access memory (“RAM”), magnetic disk storage media, optical
12
storage media, flash memory devices or other types of machine-accessible storage media. The storage unit stores at least the data that may be required by one or more units of the system to perform their respective functions.
5 [0040] As used herein “interface” or “user interface refers to a shared boundary across which
two or more separate components of a system exchange information or data. The interface may also be referred to a set of rules or protocols that define communication or interaction of one or more modules or one or more units with each other, which also includes the methods, functions, or procedures that may be called.
10
[0041] All modules, units, components used herein, unless explicitly excluded herein, may be software modules or hardware processors, the processors being a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a
15 controller, a microcontroller, Application Specific Integrated Circuits (ASIC), Field
Programmable Gate Array circuits (FPGA), any other type of integrated circuits, etc.
[0042] As used herein the transceiver unit include at least one receiver and at least one
transmitter configured respectively for receiving and transmitting data, signals, information
20 or a combination thereof between units/components within the system and/or connected
with the system.
[0043] As discussed in the background section, in existing approaches implemented in communication networks, for different protocols used for receiving and transmitting
25 messages from network functions such as AMF and SMF, a separate stack with a large number
of messages and information elements has to be developed. This is a labor intensive, time consuming and an inefficient approach. Furthermore, interfacing of stack platform with core application of network functions such as the SMF and/or the AMF of 5G network is complex and voluminous work due to a large number of Application Programming Interfaces (APIs)
30 involved in said interfacing.
13
[0044] The present disclosure aims to overcome the above-mentioned and other existing
problems in this field of technology by providing a method and a system which can be
configured via a JavaScript Object Notation (JSON) files for implementing common stack
platform for the 4g- Non-Access Stratum (NAS), 5g-NAS, Packet Forwarding Control Protocol
5 (PFCP), and General Packet Radio Service (GPRS) Tunnelling Protocol (GTPv2) protocols.
[0045] The present disclosure aims to overcome the above-mentioned and other existing
problems in this field of technology by providing a method and system for implementing a
common stack platform for encoding and decoding messages related to different byte
10 diagram-based protocols.
[0046] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the accompanying drawings.
[0047] FIG. 1 illustrates an exemplary block diagram representation of 5th generation core (5GC) network architecture, in accordance with exemplary implementation of the present disclosure. As shown in FIG. 1, the 5GC network architecture [100] includes a user equipment (UE) [102], a radio access network (RAN) [104], an access and mobility management function (AMF) [106], a Session Management Function (SMF) [108], a Service Communication Proxy (SCP) [110], an Authentication Server Function (AUSF) [112], a Network Slice Specific Authentication and Authorization Function (NSSAAF) [114], a Network Slice Selection Function (NSSF) [116], a Network Exposure Function (NEF) [118], a Network Repository Function (NRF) [120], a Policy Control Function (PCF) [122], a Unified Data Management (UDM) [124], an application function (AF) [126], a User Plane Function (UPF) [128], a data network (DN) [130], wherein all the components are assumed to be connected to each other in a manner as obvious to the person skilled in the art for implementing features of the present disclosure.
[0048] Radio Access Network (RAN) [104] is the part of a mobile telecommunications system
30 that connects user equipment (UE) [102] to the core network (CN) and provides access to
different types of networks (e.g., 5G network). It consists of radio base stations and the radio access technologies that enable wireless communication.
14
[0049] Access and Mobility Management Function (AMF) [106] is a 5G core network function responsible for managing access and mobility aspects, such as UE registration, connection, and reachability. It also handles mobility management procedures like handovers and paging. 5
[0050] Session Management Function (SMF) [108] is a 5G core network function responsible for managing session-related aspects, such as establishing, modifying, and releasing sessions. It coordinates with the User Plane Function (UPF) for data forwarding and handles IP address allocation and QoS enforcement. 10
[0051] Service Communication Proxy (SCP) [110] is a network function in the 5G core network that facilitates communication between other network functions by providing a secure and efficient messaging service. It acts as a mediator for service-based interfaces.
15 [0052] Authentication Server Function (AUSF) [112] is a network function in the 5G core
responsible for authenticating UEs during registration and providing security services. It generates and verifies authentication vectors and tokens.
[0053] Network Slice Specific Authentication and Authorization Function (NSSAAF) [114] is a
20 network function that provides authentication and authorization services specific to network
slices. It ensures that UEs can access only the slices for which they are authorized.
[0054] Network Slice Selection Function (NSSF) [116] is a network function responsible for
selecting the appropriate network slice for a UE based on factors such as subscription,
25 requested services, and network policies.
[0055] Network Exposure Function (NEF) [118] is a network function that exposes capabilities and services of the 5G network to external applications, enabling integration with third-party services and applications. 30
15
[0056] Network Repository Function (NRF) [120] is a network function that acts as a central repository for information about available network functions and services. It facilitates the discovery and dynamic registration of network functions.
5 [0057] Policy Control Function (PCF) [122] is a network function responsible for policy control
decisions, such as QoS, charging, and access control, based on subscriber information and network policies.
[0058] Unified Data Management (UDM) [124] is a network function that centralizes the
10 management of subscriber data, including authentication, authorization, and subscription
information.
[0059] Application Function (AF) [126] is a network function that represents external applications interfacing with the 5G core network to access network capabilities and services. 15
[0060] User Plane Function (UPF) [128] is a network function responsible for handling user data traffic, including packet routing, forwarding, and QoS enforcement.
[0061] Data Network (DN) [130] refers to a network that provides data services to user
20 equipment (UE) in a telecommunications system. The data services may include but are not
limited to Internet services, private data network related services.
[0062] FIG. 2 illustrates an exemplary block diagram of a computing device [1000] (or referred to herein as a computer system [1000]) upon which the features of the present disclosure
25 may be implemented in accordance with exemplary implementation of the present
disclosure. In an implementation, the computing device [1000] may be in communication with a communication network (such as a 5th generation network) and may also implement a method for implementing common stack platform for byte diagram-based protocols utilising a system [300]. In another implementation, the computing device [1000] in communication
30 with the communication network, itself implements the method for implementing the
common stack platform for byte diagram based protocols using one or more units configured within the computing device [1000], wherein a person skilled in the art would appreciate that
16
said one or more units are capable of implementing the features as disclosed in the present disclosure.
[0063] The computing device [1000] may include a bus [1002] or other communication
5 mechanism for communicating information, and a hardware processor [1004] coupled with
bus [1002] for processing information. The hardware processor [1004] may be, for example, a general-purpose microprocessor. The computing device [1000] may also include a main memory [1006], such as a random access memory (RAM), or other dynamic storage device, coupled to the bus [1002] for storing information and instructions to be executed by the
10 processor [1004]. The main memory [1006] also may be used for storing temporary variables
or other intermediate information during execution of the instructions to be executed by the processor [1004]. Such instructions, when stored in non-transitory storage media accessible to the processor [1004], render the computing device [1000] into a special-purpose machine that is customized to perform the operations specified in the instructions. The computing
15 device [1000] further includes a read only memory (ROM) [1008] or other static storage
device coupled to the bus [1002] for storing static information and instructions for the processor [1004].
[0064] A storage device [1010], such as a magnetic disk, optical disk, or solid-state drive is
20 provided and coupled to the bus [1002] for storing information and instructions. The
computing device [1000] may be coupled via the bus [1002] to a display [1012], such as a
cathode ray tube (CRT), Liquid crystal Display (LCD), Light Emitting Diode (LED) display,
Organic LED (OLED) display, etc. for displaying information to a computer user. An input
device [1014], including alphanumeric and other keys, touch screen input means, etc. may be
25 coupled to the bus [1002] for communicating information and command selections to the
processor [1004]. Another type of user input device may be a cursor controller [1016], such
as a mouse, a trackball, or cursor direction keys, for communicating direction information and
command selections to the processor [1004], and for controlling cursor movement on the
display [1012]. This input device typically has two degrees of freedom in two axes, a first axis
30 (e.g., x) and a second axis (e.g., y), that allow the device to specify positions in a plane.
17
[0065] The computing device [1000] may implement the techniques described herein using
customized hard-wired logic, one or more ASICs or FPGAs, firmware and/or program logic
which in combination with the computing device [1000] causes or programs the computing
device [1000] to be a special-purpose machine. According to one implementation, the
5 techniques herein are performed by the computing device [1000] in response to the
processor [1004] executing one or more sequences of one or more instructions contained in
the main memory [1006]. Such instructions may be read into the main memory [1006] from
another storage medium, such as the storage device [1010]. Execution of the sequences of
instructions contained in the main memory [1006] causes the processor [1004] to perform
10 the process steps described herein. In alternative implementations of the present disclosure,
hard-wired circuitry may be used in place of or in combination with software instructions.
[0066] The computing device [1000] also may include a communication interface [1018] coupled to the bus [1002]. The communication interface [1018] provides a two-way data
15 communication coupling to a network link [1020] that is connected to a local network [1022].
For example, the communication interface [1018] may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, the communication interface [1018] may be a local area network (LAN) card to provide a data
20 communication connection to a compatible LAN. Wireless links may also be implemented. In
any such implementation, the communication interface [1018] sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
25 [0067] The computing device [1000] can send messages and receive data, including program
code, through the network(s), the network link [1020] and the communication interface [1018]. In the Internet example, a server [1030] might transmit a requested code for an application program through the Internet [1028], the ISP [1026], the local network [1022], the host [1024] and the communication interface [1018]. The received code may be executed by
30 the processor [1004] as it is received, and/or stored in the storage device [1010], or other
non-volatile storage for later execution.
18
[0068] Referring to FIG.3, an exemplary block diagram of a system [300] for implementing a
common stack platform [301] for byte diagram-based protocols is shown, in accordance with
the exemplary implementations of the present disclosure. Mainly the system [300] is
configured for implementing the common stack platform [301] for encoding and decoding
5 messages related to one or more byte diagram-based protocols. The system [300] for
decoding messages related to one or more byte diagram based protocols comprises at least one transceiver unit [3002], at least one object creator unit [3004], at least one analysis unit [3006], at least one decoder unit [3008], at least one traversal unit [3010] and at least one storage unit [3012]. The system [300] for encoding messages related to one or more byte
10 diagram based protocols, comprises at least one transceiver unit [3102], at least one object
creator unit [3104], at least one analysis unit [3106a], at least one decoder unit [3108], at least one traversal unit [3110] and at least one storage unit [3112]. Also, all of the components/ units of the system [300] are assumed to be connected to each other unless otherwise indicated below. Also, in Fig. 3 only a few units are shown, however, the system
15 [300] may comprise multiple such units or the system [300] may comprise any such numbers
of said units, as required to implement the features of the present disclosure. Further, in an implementation, the system [300] may reside in a server or a network entity.
[0069] In an implementation the system [300] is configured for decoding messages related to
20 one or more byte diagram-based protocols, with the help of the interconnection between the
components/units of the system [300].
[0070] For implementing the platform for decoding the one or more messages of the one or more byte diagram protocols, initially, the transceiver unit [3002] of the system [300] may
25 receive, at a common stack platform [301] (or hereinafter interchangeably referred to as
“platform”), a message from a network node of a communication network. The message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a
30 familiar type IE and an unfamiliar type IE. Also, as used herein an “information element (IE)”
comprises an information required to be sent across an interface of the communication network (e.g., 5G network) via the message, wherein said information may include but is not
19
limited to a Quality of Service (QoS) related information, an information related to network capability, and a user equipment identifier etc.
[0071] The common stack platform [301] refers to a software framework or architecture
5 designed to facilitate the decoding and encoding of message(s) associated with one or more
byte diagram-based protocols. It serves as a centralized system component responsible for processing incoming message(s) received from network nodes and message(s) to be transmitted to the network nodes.
[0072] The term “byte diagram-based protocols” as used herein may correspond to communication protocols where data messages are structured and interpreted based on byte-level diagram. A byte-level diagram is a graphical representation used to depict the structure and format of messages in communication protocols. It shows how data is organized into individual bytes and how these bytes are interpreted to convey meaningful information. In an implementation, the one or more-byte diagram protocols may include but is not limited to at least one of a 4g- Non-Access Stratum (NAS), 5g-NAS, Packet Forwarding Control Protocol (PFCP), and General Packet Radio Service (GPRS) Tunnelling Protocol (GTPv2) protocols. It is to be noted that the byte diagram-based protocols involve the Information Elements (IEs) that are integral parts of the messages. Each IE can fall into one of two categories: the fixed length IE and the variable length IE.
[0073] Particularly, the transceiver unit [3002] may receive the message from the network
node for decoding said message. Further, the term “network node” herein may correspond
to a specific device or entity within the communication network, the network node is
25 responsible for sending or transmitting data.
[0074] The platform [301] is a part of the system [300] which encodes the messages before
such messages are transmitted from the system [300] to one or more network nodes in the
communication network. Moreover, the platform [301] also decodes the messages that are
30 received by the system [300]. More specifically, the platform [301] is a common stack
platform that may be implemented for different byte diagram-based protocols. The common stack platform [301] of the system [300] essentially needs a dictionary to encode and/or
20
decode messages for a given byte diagram-based protocol. The required dictionary is
provided to the common stack platform [301] in the form of JavaScript Object Notation (jSON)
configuration file containing necessary details for enabling the common stack platform [301]
to encode and decode messages for a given byte diagram-based protocol. Moreover, the
5 common stack platform [301] is enabled such that it can receive multiple jSON configuration
files and can get configured with each jSON file it receives. As a result, a same stack platform act as the common stack platform [301] for different byte diagram based protocols, such as 4g-NAS, 5g-NAS, PFCP, and GTPv2 protocols.
10 [0075] 4G-NAS (Non-Access Stratum) is a protocol stack layer within a Long Term Evolution
(LTE) mobile communication system. It handles signaling between the User Equipment (UE) and a Evolved Packet Core (EPC) network. NAS protocols include procedures for UE attach/detach, authentication, session management, mobility management, and security.
15 [0076] 5G-NAS (Next-Generation Non-Access Stratum) is a protocol stack layer within 5G
mobile communication systems. Similar to its predecessors in 4G networks, 5G NAS handles signaling between the User Equipment (UE) and the core network. It encompasses procedures such as UE registration, authentication, session management, mobility management, and security.
20
[0077] Packet Forwarding Control Protocol (PFCP) is a protocol used for communicating between control plane (CP) and user plane (UP) functions in 4G (Release 14 onwards) and 5G networks. PFCP is responsible for the control and management of data plane functions related to packet forwarding in the User Plane Function (UPF), which is a key component of the 5GC.
25
[0078] GTPv2 is a protocol used in mobile communication networks, particularly within the Evolved Packet Core (EPC) of LTE (Long Term Evolution). GTPV2 serves as a tunneling protocol facilitating the establishment, maintenance, and termination of tunnels between various network elements such as Serving Gateways (SGWs), Packet Data Network Gateways (PGWs),
30 and Mobility Management Entities (MMEs).
21
[0079] The system [300] further comprises the object creator unit [3004] and the object creator unit [3004] is configured to create, at the common stack platform [301], a stack object for the message, in an event the one or more IE is the familiar type IE.
5 [0080] The stack object refers to a structured data entity generated by the object creator unit
[3004] within the system [300], wherein said stack object is specifically designed to organize
and manage message data received at and originating from the platform [301]. The creation
of the stack object by the object creator unit [3004] is a fundamental step in decoding the
message received from the network node. After the creation of the stack object for the
10 message, the transceiver unit [3002] passes network bytes present in the message to the
stack object.
[0081] Further, the analysis unit [3006] is connected with the object connector unit [3004]. The analysis unit [3006] is configured to analyse, at the common stack platform [301], the one
15 or more IEs of the message by passing the message through the stack object, using a message
byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an event the one or more IE is a variable length IE. It is to be noted that after the analysis the decoder unit [3008] decodes the message based on
20 the analysis.
[0082] The term “fixed length IE” herein may correspond to an IE that has a predetermined length within the message format. Every instance of a fixed-length IE in a message occupies the same number of bytes. 25
[0083] The term “variable length IE” herein may correspond to an IE that can vary in size from one instance to another within the message. The length of each instance may depend on the specific data being represented.
30 [0084] The system [300] further comprises the traversal unit [3010] and the storage unit
[3012], wherein in an event an IE in the message is the fixed length IE and the unfamiliar type
22
IE, the traversal unit [3010] is configured to: perform, at the common stack platform [301], a full grammar traversal procedure for the IE.
[0085] It is to be noted that the full grammar traversal procedure enables the system [300]
5 to comprehensively analyze and understand the structure and content of an IE, ensuring
accurate decoding and efficient handling of diverse message formats. The full grammar traversal procedure involves thoroughly examining the structure and content of the IE according to the grammar rules defined for it.
10 [0086] When the traversal unit [3010] detects an Information Element (IE) in the message
that is both of fixed length and of an unfamiliar type IE, then the traversal unit [3010] initiates the full grammar traversal procedure. This procedure involves an examination of the grammar rules or structure associated with the unfamiliar type IE. The full grammar traversal procedure may include the following steps: the traversal unit [3010] triggers the procedure at the
15 common stack platform [301], which serves as the central processing unit for handling
protocol-related task. Further, the common stack platform [301] systematically analyzes the grammar or structure of the unfamiliar type IE. This involves breaking down the IE into its constituent parts, such as fields, subfields, length indicators, and data type. As the traversal progresses, the common stack platform [301] interprets the meaning of each component of
20 the IE based on predefined rules or specifications. This may involve consulting protocol
documentation or configuration data to understand the expected format and semantics of the IE. Throughout the traversal procedure, the common stack platform [301] performs error checking and validation to ensure that the IE conforms to the expected grammar and format. Once the traversal is complete, the decoded information obtained from the full grammar
25 traversal procedure is stored in the storage unit [3012]. The decoded information may include
decoded data and any associated metadata, which may be used for further processing or analysis. The decoded information is integrated into the overall decoding process of the message. This ensures that the system can properly interpret and handle all IEs, including those that were initially unfamiliar.
30
[0087] The traversal unit [3010] further generates, at the common stack platform [301], the decoding data for the fixed length IE based on the full grammar traversal procedure. Further
23
the storage unit [3012] stores, at the common stack platform [301], the decoding data generated for the fixed length IE. After storing the decoding data, the IE becomes a familiar type IE.
5 [0088] In one implementation, the decoding data are user defined decoding algorithms or
techniques that are pre-stored in a memory module of the system, however the disclosure is not limited thereto.
[0089] It is to be noted that, to decode the fixed length IEs, the full grammar traversal
10 procedure is performed by the traversal unit [3010] for every unique type variation of the IE.
In one implementation, the storage unit [3012] stores IE level differential global system wide data for decoding for every subsequent instance of the IE.
[0090] In an event an IE in the message is: the variable length IE and the unfamiliar type IE,
15 the traversal unit [3010] is configured to: perform, at the common stack platform [301], a full
grammar traversal procedure for the IE; and generate, at the common stack platform [301],
the decoding data for the variable length IE based on the full grammar traversal procedure,
wherein the decoding data for the variable length IE comprises a graph in form of an
adjacency matrix in three-dimensional form.
20
[0091] The graph represented in the form of an adjacency matrix in three-dimensional form
is a data structure used to model relationships between entities, typically vertices or nodes,
in a network. The three-dimensional adjacency matrix provides a detailed representation of
the relationships between components of the message, enabling efficient decoding and
25 analysis. Each layer of the matrix may correspond to specific properties or attributes of the
message components, allowing for nuanced interpretation of the message structure.
[0092] Further, the analysis unit [3006], for analysing the one or more components of the
message using the decoding data for the variable length IE, is configured to perform, at the
30 common stack platform [301], a depth-first search (DFS) traversal technique on the graph.
24
[0093] In an event the common stack platform [301] is implemented for decoding messages
related to the one or more byte diagram based protocols, the “DFS” is used to analyse one or
more components of a message represented as a graph structure, utilizing the decoding data
for the variable length Information Element (IE) to guide the traversal process.
5
[0094] It is to be noted that, the components of the message, including the variable length
IEs, can be represented as a graph. In this graph, nodes represent individual components or
fields within the message, while edges represent the connections or relationships between
them. The analysis unit [3006] employs a depth-first search (DFS) traversal technique to
10 systematically explore the graph. The DFS traversal starts at a designated node within the
graph, which could be the root node representing the beginning of the message or a specific node corresponding to a variable length IE. The DFS traversal proceeds by recursively exploring each node and its adjacent nodes in the graph. For each node visited, the analysis unit [3006] gathers information about the corresponding component of the message,
15 leveraging the decoding data to interpret the structure and content of the variable length IEs.
The DFS ensures thorough exploration of the graph, allowing the analysis unit [3006] to extract relevant information from each component of the message. Once the DFS traversal is complete, the analysis unit [3006] has systematically analyzed one or more components of the message using the decoding data for the variable length IEs. The information gathered
20 during the traversal can then be used for further processing, and decoding of the message.
[0095] Also, the storage unit [3012] is configured to store, at the common stack platform [301], the decoding data generated for the variable length IE.
25 [0096] In one implementation, to decode the variable length IEs, the full grammar traversal
procedure is performed by the traversal unit [3010] for every unique type variation of the IE to generate a graph in the form of an adjacency matrix in 3D form. In one implementation, the storage unit [3012] stores the decoding data generated for the variable length IE in the graph for decoding for every subsequent instance of the IE.
30
[0097] Further in one of the implementations of the present disclosure, the system [300] is configured for encoding messages related to one or more byte diagram-based protocols, with
25
the help of the interconnection between the components/units of the system [300]. The
system [300] comprises at least one transceiver unit [3102], at least one object creator unit
[3104], at least one input unit [3106], at least one analysis unit [3106a], at least one decoder
unit [3108], at least one traversal unit [3110] and at least one storage unit [3112].
5
[0098] At first, the transceiver unit [3102] may receive, at a common stack platform [301], an
indication for sending a message to a network node, the message comprising one or more
information elements (IEs), wherein the message relates to one of the one or more byte
diagram based protocols, and wherein each of the one or more IEs is one of a fixed length IE
10 and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an
unfamiliar type IE. Also, as mentioned above in the implementation where the system [300] is configured for decoding messages related to the one or more byte diagram based protocols, in the current implementation for encoding messages related to the one or more byte diagram based protocols, each of the one or more information element (IE) comprises an
15 information required to be sent across an interface of the communication network (e.g., 5G
network) via the message, wherein said information may include but is not limited to a Quality of Service (QoS) related information, an information related to network capability, and a user equipment identifier etc. Furthermore, in the current implementation the byte diagram-based protocols may correspond to communication protocols where data messages are
20 structured and interpreted based on byte-level diagram. In an implementation, the one or
more byte diagram protocols may include but is not limited to at least one of a 4g- Non-Access Stratum (NAS), 5g-NAS, Packet Forwarding Control Protocol (PCFP), and General Packet Radio Service (GPRS) Tunnelling Protocol (GTPv2) protocols. It is to be noted that the byte diagram-based protocols involve the IEs that are integral parts of the messages. Each IE can fall into
25 one of two categories: the fixed length IE and the variable length IE.
[0099] The transceiver unit [3102] receives the indication to send the message to the network node and indication for encoding the messages that are to be transmitted.
30 [0100] The platform [301] is a part of the system [300] which encodes the messages before
such messages are transmitted from the system [300] to one or more network nodes in the communication network. More specifically, the platform [301] is a common stack platform
26
that may be implemented for different byte diagram-based protocols. The common stack
platform [301] of the system [300] essentially needs a dictionary to encode and/or decode
messages for a given byte diagram-based protocol. The required dictionary is provided to the
common stack platform [301] in the form of JavaScript Object Notation (jSON) configuration
5 file containing necessary details for enabling the common stack platform [301] to encode and
decode messages for a given byte diagram-based protocol. Moreover, the common stack
platform [301] is enabled such that it can receive multiple jSON configuration files and can
get configured with each jSON file it receives. As a result, a same stack platform act as the
common stack platform [301] for different byte diagram-based protocols, such as 4g-NAS, 5g-
10 NAS, PFCP, and GTPv2 protocols.
[0101] The object creator unit [3104] is configured to create, at the common stack platform [301], a stack object for the message, in an event the one or more IE is the familiar type IE.
15 [0102] The stack object refers to a structured data entity generated by the object creator unit
[3004] within the system [300], wherein said stack object is specifically designed to organize and manage message data received at and originating from the platform [301]. The creation of the stack object by the object creator unit [3104] is a fundamental step in encoding the message for transmission of the message to the network node. After, creating the stack object
20 for the message, the input unit [3106] puts IE values in the stack object using generic encoding
Application Programming Interfaces (APIs).
[0103] The input unit [3106] is configured to provide, at the common stack platform [301], a value for said each of the one or more IEs in the message, using a message byte diagram
25 equivalent JavaScript Object Notation (JSON) configuration, and one of: an encoding data for
a fixed length IE in an event the IE one or more is the fixed length IE, and an encoding data for a variable length IE in an event the one or more IE is the variable length IE. It is to be noted that after the analysis the encoder unit [3108] encodes the message based on providing the value for the each of the one or more IEs in the message. Particularly, the encoder unit [3108]
30 encodes, at the common stack platform [301], the message based on the providing the value
for the each of the one or more IEs in the message. Moreover, each of the fixed length IE corresponds to an IE that has a predetermined length within the message format. Every
27
instance of a fixed-length IE in a message occupies the same number of bytes. Also, each of the variable length IE corresponds to an IE that can vary in size from one instance to another within the message. The length of each instance may depend on the specific data being represented. 5
[0104] The system [300] further comprises the traversal unit [3110] and the storage unit
[3112]. In an event an IE in the message is: the fixed length IE and the unfamiliar type IE, the
traversal unit [3110] is configured to: perform, at the common stack platform [301], a full
grammar traversal procedure for the IE; and generate, at the common stack platform [301],
10 the encoding data for the fixed length IE based on the full grammar traversal procedure. The
storage unit [3112] is then configured to store, at the common stack platform [301], the encoding data generated for the fixed length IE.
[0105] It is to be noted that the full grammar traversal procedure enables the system [300]
15 to comprehensively analyze and understand the structure and content of an IE, ensuring
accurate encoding and efficient handling of diverse message formats. The full grammar traversal procedure involves thoroughly examining the structure and content of the IE according to the grammar rules defined for it.
20 [0106] It is to be noted that to encode the fixed length IEs, the full grammar traversal
procedure is performed by the traversal unit [3110] for every unique type variation of the IE. In one implementation, the storage unit [3112] stores IE level differential global system wide data for encoding for every subsequent instance of the IE.
25 [0107] In an event in the message is: the variable length IE and the unfamiliar type IE, the
traversal unit [3110] is configured to perform, at the common stack platform [301], a full grammar traversal procedure for the IE and generate, at the common stack platform [301], the encoding data for the variable length IE based on the full grammar traversal procedure, wherein the encoding data for the variable length IE comprises a graph in form of an
30 adjacency matrix in three-dimensional form. The storage unit [3112] then is configured to
store, at the common stack platform [301], the encoding data generated for the variable length IE. After the storing of the encoding data, now the IE becomes a familiar type IE.
28
[0108] The graph represented in the form of an adjacency matrix in three-dimensional form
is a data structure used to model relationships between entities, typically vertices or nodes,
in a network. The three-dimensional adjacency matrix provides a detailed representation of
5 the relationships between components of the message, enabling efficient encoding and
analysis. Each layer of the matrix may correspond to specific properties or attributes of the
message components, allowing for interpretation of the message structure. Once the
encoding data for the variable length IE is generated and represented as a graph in the form
of the three-dimensional adjacency matrix, it is stored in the storage unit [3112] at the
10 common stack platform [301]. This allows for future reference and retrieval of the encoding
data as needed.
[0109] Also, the input unit [3106], for providing the value for each of the one or more IEs in
the message using the encoding data for the variable length IE, is configured to perform, at
15 the common stack platform [301], a depth first search (DFS) traversal technique on the graph.
[0110] The term “DFS” herein may correspond to a graph traversal technique used for
analysing one or more nodes and edges in a graph structure. In an event the common stack
platform [301] is implemented for encoding messages related to the one or more byte
20 diagram based protocols, the DFS is a traversal technique that used to analyse one or more
components of a message represented as a graph structure, utilizing the encoding data for the variable length Information Element (IE) to guide the traversal process.
[0111] It is to be noted that the DFS starts at a designated node (or root) in the graph and
25 explores along each branch. It typically follows a recursive approach, where it explores one
branch until it reaches end, then backtracks to explore other branches. During the DFS
traversal, the input unit [3106] systematically explores the graph representing the encoding
data. It begins at a designated starting point within the graph and recursively visits adjacent
nodes, following one branch of the graph before backtracking. As the input unit [3106]
30 traverses the graph using DFS, it assigns values to each of the one or more IEs in the message
based on the encoding data obtained from the traversal. Once the DFS traversal is complete, the input unit [3106] has assigned values to each of the one or more IEs in the message using
29
the encoding data obtained from the traversal. These values are based on the structure and relationships captured in the graph representation of the encoding data.
[0112] In one implementation, to encode the variable length IEs, the full grammar traversal
5 procedure is performed by the traversal unit [3110] for every unique type variation of the IE
to generate a graph in the form of an adjacency matrix in 3D form. In one implementation, the storage unit [3112] stores the encoding data generated for the variable length IE in the graph for encoding for every subsequent instance of the IE.
10 [0113] Referring to Figure 4, an exemplary method flow diagram [400] for implementing a
common stack platform [301] for decoding messages related to one or more byte diagram-based protocols, in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method [400] is performed by the system [300]. Further, in an implementation, the system [300] may be present in a server device to implement the
15 features of the present disclosure. Also, as shown in Figure 4, the method [400] starts at step
[402].
[0114] At step [404], the method comprises receiving, by a transceiver unit [3002] at the
common stack platform [301], a message from a network node, the message comprising one
20 or more information elements (IEs), wherein the message relates to one of the one or more
byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE.
25 [0115] The transceiver unit [3002] may receive the message from the network node for
decoding message that is received by the system.
[0116] The platform [301] is a part of the system [300] which encodes the messages before
such messages are transmitted from the system [300] to one or more network nodes in the
30 communication network. Moreover, the platform [301] also decodes the messages that are
received by the system [300]. More specifically, the platform [301] is a common stack platform that may be implemented for different byte diagram-based protocols. The common
30
stack platform [301] of the system [300] essentially needs a dictionary to encode and/or
decode messages for a given byte diagram-based protocol. The required dictionary is
provided to the common stack platform [301] in the form of JavaScript Object Notation (jSON)
configuration file containing necessary details for enabling the common stack platform [301]
5 to encode and decode messages for a given byte diagram-based protocol. Moreover, the
common stack platform [301] is enabled such that it can receive multiple jSON configuration files and can get configured with each jSON file it receives. As a result, a same stack platform act as the common stack platform [301] for different byte diagram-based protocols, such as 4g-NAS, 5g-NAS, PFCP, and GTPv2 protocols. 10
[0117] At step [406], the method comprises creating, by an object creator unit [3004] at the common stack platform [301], a stack object for the message, in an event the one or more IE is the familiar type IE.
15 [0118] The creation of the stack object by the object creator unit [3004] is a fundamental step
in decoding the message received from the network node. After, the creation of the stack object for the message, the transceiver unit [3002] passes network bytes present in the message to the stack object.
20 [0119] At step [408], the method comprises analysing, by an analysis unit [3006] at the
common stack platform [301], one or more IEs of the message by passing the message through the stack object, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an event the one or
25 more IE is a variable length IE. It is to be noted that after the analysis the decoder unit [3008]
decodes the message based on the analysis.
[0120] In an event an IE in the message is: the fixed length IE and the unfamiliar type IE, the
method further comprises performing, by a traversal unit [3010] at the common stack
30 platform [301], a full grammar traversal procedure for the IE; generating, by the traversal unit
[3010] at the common stack platform [301], the decoding data for the fixed length IE based on the full grammar traversal procedure; and storing, by a storage unit [3012] at the common
31
stack platform [301], the decoding data generated for the fixed length IE. After this storing of the decoding data, the IE becomes a familiar type IE.
[0121] It is to be noted that the full grammar traversal procedure enables the system [300]
5 to comprehensively analyze and understand the structure and content of an IE, ensuring
accurate decoding and efficient handling of diverse message formats. The full grammar traversal procedure involves thoroughly examining the structure and content of the IE according to the grammar rules defined for it.
10 [0122] In one implementation, the decoding data are user defined decoding algorithms or
techniques that are pre-stored in a memory module of the system, however the disclosure is not limited thereto.
[0123] It is to be noted that to decode the fixed length IEs, the method comprising
15 performing, by the traversal unit [3010], the full grammar traversal procedure for every
unique type variation of the IE. In one implementation, the method comprises storing by the storage unit [3012], IE level differential global system wide data for decoding for every subsequent instance of the IE.
20 [0124] In an event an IE in the message is: the variable length IE and the unfamiliar type IE,
the method further comprises: performing, by a traversal unit [3010] at the common stack platform [301], a full grammar traversal procedure for the IE; generating, by the traversal unit [3010] at the common stack platform [301], the decoding data for the variable length IE based on the full grammar traversal procedure, wherein the decoding data for the variable length
25 IE comprises a graph in form of an adjacency matrix in three-dimensional form; and storing,
by a storage unit [3012] of the common stack platform [301], the decoding data generated for the variable length IE.
[0125] The method further comprises the analysing, by the analysis unit [3006] at the
30 common stack platform [301], the one or more IEs of the message using the decoding data
for the variable length IE comprises performing, by the analysis unit [3006] at the common stack platform [301], a depth-first search (DFS) traversal technique on the graph.
32
[0126] In an event the common stack platform [301] is implemented for decoding messages
related to the one or more byte diagram based protocols, “DFS” corresponds to a traversal
technique or algorithm that is used to analyse one or more the components of a message
5 represented as a graph structure, utilizing the decoding data for the variable length
Information Element (IE) to guide the traversal process.
[0127] In one implementation, to decode the variable length IEs, the method comprises
performing, by the traversal unit [3010], the full grammar traversal procedure is performed
10 for every unique type variation of the IE to generate a graph in the form of an adjacency
matrix in 3D form. In one implementation, the method comprises storing, by the storage unit [3012], the decoding data generated for the variable length IE in the graph for decoding for every subsequent instance of the IE.
15 [0128] At step [410], the method comprises decoding, by the decoder unit [3008] at the
common stack platform [301], the message based on the analysis.
[0129] Thereafter the method terminates at step [412].
20 [0130] Referring to Figure 5, an exemplary method flow diagram [500] for implementing a
common stack platform [301] for encoding messages related to one or more byte diagram-based protocols, in accordance with exemplary implementations of the present disclosure is shown. In an implementation the method [500] is performed by the system [300]. Further, in an implementation, the system [300] may be present in a server device to implement the
25 features of the present disclosure. Also, as shown in Figure 5, the method [500] starts at step
[502].
[0131] At step [504], the method comprises receiving, by a transceiver unit [3102] at the
common stack platform [301], an indication for sending a message to a network node, the
30 message comprising one or more information elements (IEs), wherein the message relates to
one of the one or more byte diagram based protocols, and wherein each of the one or more
33
IEs is one of a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE.
[0132] The method comprises receiving by the transceiver unit [3102], the indication to send
5 the message to the network node for encoding the messages that to be transmitted.
[0133] The platform [301] is a part of the system [300] which encodes the messages before such messages are transmitted from the system [300] to one or more network nodes in the communication network. More specifically, the platform [301] is a common stack platform
10 that may be implemented for different byte diagram-based protocols. The common stack
platform [301] of the system [300] essentially needs a dictionary to encode and/or decode messages for a given byte diagram-based protocol. The required dictionary is provided to the common stack platform [301] in the form of JavaScript Object Notation (jSON) configuration file containing necessary details for enabling the common stack platform [301] to encode and
15 decode messages for a given byte diagram-based protocol. Moreover, the common stack
platform [301] is enabled such that it can receive multiple jSON configuration files and can get configured with each jSON file it receives. As a result, a same stack platform act as the common stack platform [301] for different byte diagram-based protocols, such as 4g-NAS, 5g-NAS, PFCP, and GTPv2 protocols.
20
[0134] At step [506], the method comprises creating, by an object creator unit [3104] at the common stack platform [301], a stack object for the message, in an event the one or more IE is the familiar type IE.
25 [0135] The creation of the stack object by the object creator unit [3104] is a fundamental step
in encoding the message for transmission of the message to the network node. After, creating the stack object for the message, the input unit [3106] puts IE values in the stack object using generic encoding Application Programming Interfaces (APIs).
30 [0136] At step [508], the method comprises providing, by an input unit [3106] at the common
stack platform [301], a value for said each of the one or more IEs in the message, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one
34
of: an encoding data for a fixed length IE in an event the one or more IE is the fixed length IE,
and an encoding data for a variable length IE in an event the one or more IE is the variable
length IE. It is to be noted that after the analysis the encoder unit [3108] encodes the message
based on providing the value for the each of the one or more IEs in the message. Particularly,
5 the encoder unit [3108] encodes, at the common stack platform [301], the message based on
the providing the value for the each of the one or more IEs in the message.
[0137] In an event an IE in the message is: the fixed length IE and the unfamiliar type IE, the method further comprises: performing, by a traversal unit [3110] at the common stack
10 platform [301], a full grammar traversal procedure for the IE; generating, by the traversal unit
[3110] at the common stack platform [301], the encoding data for the fixed length IE based on the full grammar traversal procedure; and storing, by a storage unit [3112] at the common stack platform [301], the encoding data generated for the fixed length IE. After storing of the encoding data, now the IE becomes a familiar type IE.
15
[0138] It is to be noted that the full grammar traversal procedure enables the system [300] to comprehensively analyze and understand the structure and content of an IE, ensuring accurate encoding and efficient handling of diverse message formats. The full grammar traversal procedure involves thoroughly examining the structure and content of the IE
20 according to the grammar rules defined for it.
[0139] It is to be noted that to encode the fixed length IEs, the full grammar traversal
procedure is performed by the traversal unit [3110] for every unique type variation of the IE.
In one implementation, the storage unit [3112] stores IE level differential global system wide
25 data for encoding for every subsequent instance of the IE.
[0140] In an event an IE in the message is: the variable length IE and the unfamiliar type IE,
the method further comprises: performing, by a traversal unit [3110] at the common stack
platform [301], a full grammar traversal procedure for the IE; generating, by the traversal unit
30 [3110] at the common stack platform [301], the encoding data for the variable length IE based
on the full grammar traversal procedure, wherein the encoding data for the variable length IE comprises a graph in form of an adjacency matrix in three-dimensional form; and storing,
35
by a storage unit [3112] at the common stack platform [301], the encoding data generated for the variable length IE. After storing of the encoding data, now the IE becomes a familiar type IE.
5 [0141] The process of providing, by the input unit [3106] at the common stack platform [301],
the value for each of the one or more IEs in the message using the encoding data for the variable length IE comprises: performing, by the analysis unit [3106a] at the common stack platform [301], a depth first search (DFS) traversal technique on the graph.
10 [0142] In one implementation, to encode the variable length IEs, the method comprises
performing, by the traversal unit [3110], the full grammar traversal procedure for every unique type variation of the IE to generate a graph in the form of an adjacency matrix in 3D form. In one implementation, the method comprises storing, by the storage unit [3112], the encoding data generated for the variable length IE in the graph for encoding for every
15 subsequent instance of the IE.
[0143] At step [510], the method comprises encoding, by the encoder unit [3108] at the common stack platform [301], the message based on the providing the value for the each of the one or more IEs in the message. 20
[0144] Thereafter the method terminates at step [512].
[0145] The present disclosure further discloses a non-transitory computer readable storage medium storing instructions for decoding messages related to one or more byte diagram
25 based protocols, the instructions include executable code which, when executed by one or
more units of a system, causes: a transceiver unit of the system to receive, at a common stack platform, a message from a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable
30 length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type
IE; an object creator unit of the system to create, at the common stack platform, a stack object for the message, in an event the one or more IE is the familiar type IE; an analysis unit of the
36
system to analyse, at the common stack platform, one or more IEs of the message by passing
the message through the stack object, using a message byte diagram equivalent JavaScript
Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an
event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an
5 event the one or more IE is a variable length IE; and a decoder unit of the system to decode,
at the common stack platform, the message based on the analysis.
[0146] Yet another aspect of the present disclosure may relate to a non-transitory computer readable storage medium storing instructions for encoding messages related to one or more
10 byte diagram based protocols, the instructions include executable code which, when
executed by one or more units of a system, causes: a transceiver unit of the system to receive, at a common stack platform, an indication for sending a message to a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more
15 IEs is one of a fixed length IE and a variable length IE, and each of the one or more IEs is one
of: a familiar type IE and an unfamiliar type IE; an object creator unit of the system to create, at the common stack platform, a stack object for the message, in an event the one or more IE is the familiar type IE; an input unit of the system to provide, at the common stack platform, a value for said each of the one or more IEs in the message, using a message byte diagram
20 equivalent JavaScript Object Notation (JSON) configuration, and one of: an encoding data for
a fixed length IE in an event the one or more IE is a fixed length IE, and an encoding data for a variable length IE in an event the one or more IE is the variable length IE; and an encoder unit of the system to encode, at the common stack platform, the message based on the providing the value for the each of the one or more IEs in the message.
25
[0147] As is evident from the above, the present disclosure provides a technically advanced solution for implementing common stack platform for different byte diagram-based protocols. The method and system for implementing common stack platform for different byte diagram-based protocols, as disclosed in present disclosure, enables common encoding
30 and decoding APIs to be used for different protocols such as the 4g-NAS, 5g-NAS, PFCP, and
GTPv2 protocols. It is emphasized that no information element or message specific APIs are needed, as are needed in case of conventional stack platforms known in the art. Moreover,
37
the number of APIs are also reduced by the implementation of the present solution, which improves computational speed and efficiency and makes the overall system less resource intensive. The method and system for implementing common stack platform for different byte diagram-based protocols make the stack platform highly scalable and optimized. 5
[0148] While considerable emphasis has been placed herein on the disclosed
implementations, it will be appreciated that many implementations can be made and that
many changes can be made to the implementations without departing from the principles of
the present disclosure. These and other changes in the implementations of the present
10 disclosure will be apparent to those skilled in the art, whereby it is to be understood that the
foregoing descriptive matter to be implemented is illustrative and non-limiting.
38
We Claim:
1. A method for implementing a common stack platform [301] for decoding messages
related to one or more byte diagram-based protocols, the method comprising:
- receiving, by a transceiver unit [3002] at the common stack platform [301], a message from a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE;
- creating, by an object creator unit [3004] at the common stack platform [301], a stack object for the message, in an event the one or more IEs is the familiar type IE;
- analysing, by an analysis unit [3006] at the common stack platform [301], the one or more IEs of the message by passing the message through the stack object, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an event the one or more IE is a variable length IE; and
- decoding, by a decoder unit [3008] at the common stack platform [301], the message based on the analysis.
2. The method as claimed in claim 1, wherein in an event an IE in the message is: the
fixed length IE and the unfamiliar type IE, the method further comprises:
- performing, by a traversal unit [3010] at the common stack platform [301], a full grammar traversal procedure for the IE;
- generating, by the traversal unit [3010] at the common stack platform [301], the decoding data for the fixed length IE based on the full grammar traversal procedure; and
- storing, by a storage unit [3012] at the common stack platform [301], the decoding data generated for the fixed length IE.
3. The method as claimed in claim 1, wherein in an event an IE in the message is: the
variable length IE and the unfamiliar type IE, the method further comprises:
- performing, by a traversal unit [3010] at the common stack platform [301], a full grammar traversal procedure for the IE;
- generating, by the traversal unit [3010] at the common stack platform [301], the decoding data for the variable length IE based on the full grammar traversal procedure, wherein the decoding data for the variable length IE comprises a graph in form of an adjacency matrix in three-dimensional form; and
- storing, by a storage unit [3012] of the common stack platform [301], the decoding data generated for the variable length IE.
4. The method as claimed in claim 3, wherein the analysing, by the analysis unit [3006]
at the common stack platform [301], the one or more IEs of the message using the
decoding data for the variable length IE comprises:
- performing, by the analysis unit [3006] at the common stack platform [301], a
depth first search (DFS) traversal technique on the graph.
5. A method for implementing a common stack platform [301] for encoding messages
related to one or more byte diagram-based protocols, the method comprising:
- receiving, by a transceiver unit [3102] at the common stack platform [301], an indication for sending a message to a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE;
- creating, by an object creator unit [3104] at the common stack platform [301], a stack object for the message, in an event the one or more IE is the familiar type IE;
- providing, by an input unit [3106] at the common stack platform [301], a value for said each of the one or more IEs in the message, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: an encoding data for a fixed length IE in an event the one or more IE is a fixed length
IE, and an encoding data for a variable length IE in an event the one or more IE is a variable length IE; and
- encoding, by an encoder unit [3108] at the common stack platform [301], the
message based on the providing the value for the each of the one or more IEs in
the message.
6. The method as claimed in claim 5, the wherein in an event an IE in the message is: the
fixed length IE and the unfamiliar type IE, the method further comprises:
- performing, by a traversal unit [3110] at the common stack platform [301], a full grammar traversal procedure for the IE;
- generating, by the traversal unit [3110] at the common stack platform [301], the encoding data for the fixed length IE based on the full grammar traversal procedure; and
- storing, by a storage unit [3112] at the common stack platform [301], the encoding data generated for the fixed length IE.
7. The method as claimed in claim 5, wherein in an event an IE in the message is: the
variable length IE and the unfamiliar type IE, the method further comprises:
- performing, by a traversal unit [3110] at the common stack platform [301], a full grammar traversal procedure for the IE;
- generating, by the traversal unit [3110] at the common stack platform [301], the encoding data for the variable length IE based on the full grammar traversal procedure, wherein the encoding data for the variable length IE comprises a graph in form of an adjacency matrix in three-dimensional form; and
- storing, by a storage unit [3112] at the common stack platform [301], the encoding data generated for the variable length IE.
8. The method as claimed in claim 7, wherein the providing, by the input unit [3106] at
the common stack platform [301], the value for each of the one or more IEs in the
message using the encoding data for the variable length IE comprises:
- performing, by the analysis unit [3106a] at the common stack platform [301], a
depth first search (DFS) traversal technique on the graph.
9. A system [300] for decoding messages related to one or more byte diagram-based
protocols, the system comprising:
- a transceiver unit [3002] configured to receive, at a common stack platform [301], a message from a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of: a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE;
- an object creator unit [3004] configured to create, at the common stack platform [301], a stack object for the message, in an event the one or more IE is the familiar type IE;
- an analysis unit [3006] configured to analyse, at the common stack platform [301], one or more IEs of the message by passing the message through the stack object, using a message byte diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: a decoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and a decoding data for a variable length IE in an event the one or more IE is a variable length IE; and
- a decoder unit [3008] configured to decode, at the common stack platform [301], the message based on the analysis.
10. The system as claimed in claim 9, the system further comprising a traversal unit [3010]
and a storage unit [3012], wherein in an event an IE in the message is: the fixed length
IE and the unfamiliar type IE:
- the traversal unit [3010] is configured to:
o perform, at the common stack platform [301], a full grammar traversal
procedure for the IE; and o generate, at the common stack platform [301], the decoding data for the
fixed length IE based on the full grammar traversal procedure; and
- the storage unit [3012] is configured to store, at the common stack platform [301],
the decoding data generated for the fixed length IE.
11. The system as claimed in claim 9, the system further comprising a traversal unit [3010]
and a storage unit [3012], wherein in an event an IE in the message is: the variable
length IE and the unfamiliar type IE:
- the traversal unit [3010] is configured to:
o perform, at the common stack platform [301], a full grammar traversal
procedure for the IE; o generate, at the common stack platform [301], the decoding data for the
variable length IE based on the full grammar traversal procedure, wherein
the decoding data for the variable length IE comprises a graph in form of
an adjacency matrix in three-dimensional form; and
- the storage unit [3012] is configured to store, at the common stack platform [301],
the decoding data generated for the variable length IE.
12. The system as claimed in claim 11, wherein the analysis unit [3006], for analysing the
one or more components of the message using the decoding data for the variable
length IE, is configured to:
- perform, at the common stack platform [301], a depth first search (DFS) traversal
technique on the graph.
13. A system [300] for encoding messages related to one or more byte diagram-based
protocols, the system comprising:
- a transceiver unit [3102] configured to receive, at a common stack platform [301], an indication for sending a message to a network node, the message comprising one or more information elements (IEs), wherein the message relates to one of the one or more byte diagram based protocols, and wherein each of the one or more IEs is one of a fixed length IE and a variable length IE, and each of the one or more IEs is one of: a familiar type IE and an unfamiliar type IE;
- an object creator unit [3104] configured to create, at the common stack platform [301], a stack object for the message, in an event the one or more IE is the familiar type IE;
- an input unit [3106] configured to provide, at the common stack platform [301], a value for said each of the one or more IEs in the message, using a message byte
diagram equivalent JavaScript Object Notation (JSON) configuration, and one of: an encoding data for a fixed length IE in an event the one or more IE is a fixed length IE, and an encoding data for a variable length IE in an event the one or more IE is the variable length IE; and
- an encoder unit [3108] configured to encode, at the common stack platform [301],
the message based on the providing the value for the each of the one or more IEs
in the message.
14. The system as claimed in claim 13, the system further comprising a traversal unit
[3010] and a storage unit [3012], wherein in an event an IE in the message is: the fixed
length IE and the unfamiliar type IE:
- the traversal unit [3110] is configured to:
o perform, at the common stack platform [301], a full grammar traversal
procedure for the IE; and o generate, at the common stack platform [301], the encoding data for the
fixed length IE based on the full grammar traversal procedure; and
- the storage unit [3112] is configured to store, at the common stack platform [301],
the encoding data generated for the fixed length IE.
15. The system as claimed in claim 13, the system further comprising a traversal unit
[3010] and a storage unit [3012], wherein in an event an IE in the message is: the
variable length IE and the unfamiliar type IE:
- the traversal unit [3110] is configured to:
o perform, at the common stack platform [301], a full grammar traversal
procedure for the IE; o generate, at the common stack platform [301], the encoding data for the
variable length IE based on the full grammar traversal procedure, wherein
the encoding data for the variable length IE comprises a graph in form of
an adjacency matrix in three-dimensional form; and
- the storage unit [3112] is configured to store, at the common stack platform [301],
the encoding data generated for the variable length IE.
16. The system as claimed in claim 15, wherein the input unit [3106], for providing the value for each of the one or more IEs in the message using the encoding data for the variable length IE, is configured to:
- perform, at the common stack platform [301], a depth first search (DFS) traversal technique on the graph.
| # | Name | Date |
|---|---|---|
| 1 | 202321044306-STATEMENT OF UNDERTAKING (FORM 3) [03-07-2023(online)].pdf | 2023-07-03 |
| 2 | 202321044306-PROVISIONAL SPECIFICATION [03-07-2023(online)].pdf | 2023-07-03 |
| 3 | 202321044306-FORM 1 [03-07-2023(online)].pdf | 2023-07-03 |
| 4 | 202321044306-FIGURE OF ABSTRACT [03-07-2023(online)].pdf | 2023-07-03 |
| 5 | 202321044306-DRAWINGS [03-07-2023(online)].pdf | 2023-07-03 |
| 6 | 202321044306-FORM-26 [06-09-2023(online)].pdf | 2023-09-06 |
| 7 | 202321044306-Proof of Right [05-10-2023(online)].pdf | 2023-10-05 |
| 8 | 202321044306-ORIGINAL UR 6(1A) FORM 1 & 26)-261023.pdf | 2023-11-04 |
| 9 | 202321044306-ENDORSEMENT BY INVENTORS [12-06-2024(online)].pdf | 2024-06-12 |
| 10 | 202321044306-DRAWING [12-06-2024(online)].pdf | 2024-06-12 |
| 11 | 202321044306-CORRESPONDENCE-OTHERS [12-06-2024(online)].pdf | 2024-06-12 |
| 12 | 202321044306-COMPLETE SPECIFICATION [12-06-2024(online)].pdf | 2024-06-12 |
| 13 | Abstract1.jpg | 2024-07-11 |
| 14 | 202321044306-FORM 3 [31-07-2024(online)].pdf | 2024-07-31 |
| 15 | 202321044306-Request Letter-Correspondence [09-08-2024(online)].pdf | 2024-08-09 |
| 16 | 202321044306-Power of Attorney [09-08-2024(online)].pdf | 2024-08-09 |
| 17 | 202321044306-Form 1 (Submitted on date of filing) [09-08-2024(online)].pdf | 2024-08-09 |
| 18 | 202321044306-Covering Letter [09-08-2024(online)].pdf | 2024-08-09 |
| 19 | 202321044306-CERTIFIED COPIES TRANSMISSION TO IB [09-08-2024(online)].pdf | 2024-08-09 |
| 20 | 202321044306-FORM 18 [24-01-2025(online)].pdf | 2025-01-24 |