Sign In to Follow Application
View All Documents & Correspondence

Method And System For Software Modification Of Network Function (Nf) In Containerized Network Function Environment

Abstract: The present disclosure relates to a system and a method for software modification of a network function (NF) in a containerized network function (CNF) environment. The disclosure encompasses: accessing, by an authorization unit [302], a container via an interface; invoking, by an installation unit [304], a software modification script within the container for: copying a new release package to a destination path inside the container, the new release package comprising at least one of binaries, libraries, and configuration files; and performing system-level modification in a software associated with the NF, wherein the system-level modification is performed in a runtime environment keeping the state of the container same as prior to the modification. [FIG. 4]

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
26 September 2023
Publication Number
14/2025
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
Parent Application

Applicants

Jio Platforms Limited
Office - 101, Saffron, Nr. Centre Point, Panchwati 5 Rasta, Ambawadi, Ahmedabad - 380006, Gujarat, India

Inventors

1. Aayush Bhatnagar
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
2. Birendra Singh Bisht
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
3. Harbinder Pal Singh
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
4. Nitin Warape
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
5. Monish Rode
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
6. Ankit M
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India
7. Mayur Rane
Reliance Corporate Park, Thane-Belapur Road, Ghansoli, Navi Mumbai, Maharashtra 400701, India

Specification

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 SOFTWARE MODIFICATION
OF NETWORK FUNCTION (NF) IN CONTAINERIZED
NETWORK FUNCTION ENVIRONMENT”
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.
2
METHOD AND SYSTEM FOR SOFTWARE MODIFICATION OF
NETWORK FUNCTION (NF) IN CONTAINERIZED NETWORK
FUNCTION ENVIRONMENT
5 FIELD OF INVENTION
[0001] Embodiments of the present disclosure generally relate to a system
and a method for software modification. More particularly, embodiments of the
present disclosure relate to a method and a system for software modification of a
10 network function (NF) in containerized network function (CNF) environment.
BACKGROUND
[0002] The following description of the related art is intended to provide
15 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.
20
[0003] The telecommunication industry has undergone a profound
transformation in response to the ever-increasing demand for faster, more reliable,
and feature-rich communication services. To remain competitive and to meet the
evolving needs of customers, telecommunication companies are continually in
25 pursuit of ways to enhance their services and improve the overall customer
experience. Among the multitude of strategies employed, one crucial avenue for
achieving these objectives is the timely and convenient upgrade of software within
various network elements, particularly in the context of containerized
environments.
30
3
[0004] Containerization is a revolutionary technology that involves the
design of applications and major operating systems to run within discrete, selfcontained spaces known as containers. These containers encapsulate not only the
applications and microservices but also all the essential executable codes, binary
5 files, libraries, and configuration files required for the flawless execution of these
software components. Significantly, containers employ a multifaceted data storage
approach, dividing data into distinct sections: a persistent section for storing data
that must be preserved throughout the application's lifecycle and a non-persistent
section for storing data that dynamically changes in response to the ever-evolving
10 requirements of the application. This dynamic data encompasses crucial elements,
such as new Cron jobs, command line interface (CLI) libraries, and security limits.
Moreover, the non-persistent section can also store parametric information,
configuration data, and data related to development and repository tools or
pipelines, which, notably, are not integral to the container deployment process
15 itself.
[0005] While containers are used for their lightweight and portable nature,
they have ushered a paradigm shift in application deployment and scalability across
diverse environments. Nevertheless, the inherent challenges of preserving dynamic
20 configurations during upgrades have become increasingly apparent in containerized
environments.
[0006] The commitment of the telecommunications industry to deliver
efficient and enhanced user experiences necessitates regular upgrades of network
25 functions (NF) within cloud environments. Traditionally, the standard method for
upgrading NF software in containerized environments involves deploying a new
package of NF in the form of an image. This NF software upgrade process
culminates in the creation of a new container housing an upgraded version of the
software.
30
4
[0007] However, this conventional process has its own shortcomings. One
significant drawback is the loss of dynamic configuration changes made within the
old container during the creation of the new one. This loss can precipitate network
disruptions, introduce variability in container creation times, and even lead to
5 sudden traffic surges. Separate arrangement needs to be done to preserve dynamic
configuration data. Furthermore, the creation time of a new container can exhibit
significant variations, contingent upon the size of the container image, thereby
directly impacting the container spawning process. The necessity of container
spawning often compels the restart of containers, unavoidably resulting in software
10 downtime.
[0008] In light of these compelling factors, there arises an imperative need
within the domain of software modification. There is a demand for a method for
software modification releases that not only effectively addresses the challenges
15 associated with preserving dynamic configurations in containerized network
function environments but also aptly facilitates increased operational efficiency and
elimination of application downtime during the upgrade process.
SUMMARY
20
[0009] 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.
25
[0010] An aspect of the present disclosure may relate to a method for
software modification of a network function (NF) in a containerized network
function (CNF) environment. The method includes accessing, by an authorization
unit, a container via an interface for performing software modification. Next, the
30 method includes invoking, by an installation unit, a software modification script
within the container for: copying a new release package to a destination path inside
5
the container, the new release package comprising at least one of binaries, libraries,
and configuration files; and performing system-level modification in a software
associated with the NF, wherein the system-level modification is performed in a
runtime environment keeping the state of the container same as prior to the
5 modification.
[0011] In an exemplary aspect of the present disclosure, the destination
path corresponds to a path mapped to at least one of a persistent volume and a nonpersistent volume.
10
[0012] In an exemplary aspect of the present disclosure, the non-persistent
volume is dynamically updated to include new Cron jobs, libraries, and system file
limits.
15 [0013] In an exemplary aspect of the present disclosure, the system-level
modification comprises at least one of updating Cron jobs and changing nofile limit.
[0014] In an exemplary aspect of the present disclosure, the method
comprises performing, by the container, one or more service operations associated
20 with the NF during the modification.
[0015] Another aspect of the present disclosure may relate to a system for
software modification of a network function (NF) in a containerized network
function (CNF) environment. The system comprising: an authorization unit
25 configured to access a container via an interface to perform software modification;
and an installation unit connected to at least the authorization unit, the installation
unit configured to invoke a software modification script within the container to:
copy a new release package at a destination path inside the container, the new
release package comprises at least one of binaries, libraries, and configuration files;
30 and perform system-level modification in a software associated with the NF,
6
wherein the system-level modification is performed in a runtime environment
keeping the state of the container same as prior to the modification.
[0016] Yet another aspect of the present disclosure may relate to a system
5 for software modification of a network function (NF) in a containerized network
function (CNF) environment. The system comprising: a container running an
interface to execute software modification commands within the container; a
persistent volume connected at least to the container, the persistent volume to store
persistent data; a non-persistent volume connected at least to the container, the non10 persistent volume to store dynamic data; and an installation unit connected to at
least the container, the installation unit configured to invoke a software
modification script within the container to connect the container at least to the
persistent volume and the non-persistent volume.
15 [0017] Yet another aspect of the present disclosure may relate to a nontransitory computer readable storage medium storing instructions for software
modification of a network function (NF) in a containerized network function (CNF)
environment, the instructions include executable code which, when executed by one
or more units of a system, causes: an authorization unit of the system to access a
20 container via an interface to perform software modification; and an installation unit
connected to at least the authorization unit, the installation unit of the system to
invoke a software modification script within the container to: copy a new release
package at a destination path inside the container, the new release package
comprises at least one of binaries, libraries, and configuration files; and perform
25 system-level modification in a software associated with the NF, wherein the
system-level modification is performed in a runtime environment keeping the state
of the container same as prior to the modification.
OBJECTS OF THE INVENTION
30
7
[0018] Some of the objects of the present disclosure, which at least one
embodiment disclosed herein satisfies are listed herein below.
[0019] It is an object of the present disclosure to provide a system and a
5 method to preserve dynamic configurations within containerized network function
environments, thereby ensuring retention of data and settings in non-persistent
section of containers during software modification of a node.
[0020] It is another object of the present disclosure to facilitate avoidance
10 of creation of new containers during software modification, reducing resource
utilization, and improving operational efficiency.
[0021] It is yet another object of the present disclosure to maintain current
state of container after software modification, thereby avoiding any alternate
15 arrangement to be done.
DESCRIPTION OF THE DRAWINGS
[0022] The accompanying drawings, which are incorporated herein, and
20 constitute a part of this disclosure, illustrate exemplary embodiments of the
disclosed methods and systems in which like reference numerals refer to the same
parts throughout the different drawings. Components in the drawings are not
necessarily to scale, emphasis instead being placed upon clearly illustrating the
principles of the present disclosure. Also, the embodiments shown in the figures are
25 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 implement such components.
30
8
[0023] FIG. 1 illustrates an exemplary block diagram representation of 5th
generation core (5GC) network architecture.
[0024] FIG. 2 illustrates an exemplary block diagram of a computing
5 device upon which the features of the present disclosure may be implemented in
accordance with exemplary implementations of the present disclosure.
[0025] FIG. 3 illustrates an exemplary block diagram of a system for
software modification of a network function (NF) in a containerized network
10 function (CNF) environment, in accordance with exemplary implementations of the
present disclosure.
[0026] FIG. 4 illustrates a method flow diagram for software modification
of the network function (NF) in the containerized network function (CNF)
15 environment, in accordance with exemplary implementations of the present
disclosure.
[0027] FIG. 5 illustrates an exemplary block diagram of a system
architecture for software modification of the network function (NF) in the
20 containerized network function (CNF) environment, in accordance with exemplary
implementations of the present disclosure.
[0028] FIG. 6 illustrates an exemplary system diagram for software
modification of the network function (NF) without creating a new container in the
25 containerized network function (CNF) environment, in accordance with exemplary
implementations of the present disclosure.
[0029] FIG. 7 illustrates a method flow diagram for upgrading containers
within a network cluster, in accordance with exemplary implementations of the
30 present disclosure.
9
[0030] FIG. 8 illustrates a method flow diagram for copying a latest
release package residing at least one or more remote repositories, in accordance
with exemplary implementations of the present disclosure.
5 [0031] The foregoing shall be more apparent from the following more
detailed description of the disclosure.
DETAILED DESCRIPTION
10 [0032] 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 practiced without these specific
details. Several features described hereafter may each be used independently of one
15 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.
[0033] The ensuing description provides exemplary embodiments only,
20 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 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
25 scope of the disclosure as set forth.
[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
30 specific details. For example, circuits, systems, processes, and other components
10
may be shown as components in block diagram form in order not to obscure the
embodiments in unnecessary detail.
[0035] Also, it is noted that individual embodiments may be described as
5 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 operations may be re-arranged.
A process is terminated when its operations are completed but could have additional
10 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 herein is not limited by such examples. In addition, any
15 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 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
20 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 additional or other elements.
[0037] As used herein, a “processing unit” or “processor” or “operating
25 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 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
30 microcontroller, Application Specific Integrated Circuits, Field Programmable
Gate Array circuits, any other type of integrated circuits, etc. The processor may
11
perform signal coding data processing, input/output processing, and/or any other
functionality that enables the working of the system according to the present
disclosure. More specifically, the processor or processing unit is a hardware
processor.
5
[0038] As used herein, “a user equipment”, “a user device”, “a smart-userdevice”, “a smart-device”, “an electronic device”, “a mobile device”, “a handheld
device”, “a wireless communication device”, “a mobile communication device”, “a
communication device” may be any electrical, electronic and/or computing device
10 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 which is capable
of implementing the features of the present disclosure. Also, the user device may
15 contain at least one input means configured to receive an input from at least one of
a transceiver unit, a processing unit, a storage unit, a detection unit and any other
such 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
20 machine or computer-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 storage media, flash
memory devices or other types of machine-accessible storage media. The storage
25 unit stores at least the data that may be required by one or more units of the system
to perform their respective functions.
[0040] As used herein “interface” or “user interface refers to a shared
boundary across which two or more separate components of a system exchange
30 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
12
units with each other, which also includes the methods, functions, or procedures
that may be called.
[0041] All modules, units, components used herein, unless explicitly
5 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 controller, a
microcontroller, Application Specific Integrated Circuits (ASIC), Field
10 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
15 data, signals, information or a combination thereof between units/components
within the system and/or connected with the system.
[0043] As used herein, Access and Mobility Management Function
(AMF) is a 5G core network function responsible for managing access and mobility
20 aspects, such as UE registration, connection, and reachability. It also handles
mobility management procedures like handovers and paging.
[0044] As used herein, Session Management Function (SMF) is a 5G core
network function responsible for managing session-related aspects, such as
25 establishing, modifying, and releasing sessions. It coordinates with the User Plane
Function (UPF) for data forwarding and handles IP address allocation and QoS
enforcement.
[0045] As used herein, Containerized Network Function (CNF) refers to a
30 network function that is implemented and deployed within lightweight, portable
containers, which include all necessary dependencies and configurations. CNFs
13
offer increased portability, efficiency, agility, resilience, and scalability for
deployment of network functions (NFs).
[0046] As used herein, Network Cluster is an architecture in which the
5 network function (NF) operates. It consists of multiple controllers and payloads
distributed across different nodes within the cluster. The cluster architecture ensures
that network functions continue to operate even during software upgrades.
[0047] As used herein, Containers represent individual units within a
10 clustered network function architecture. The containers refer as a form of
virtualization of an operating system. The containers may have executables, binary
code, libraries, and configuration files. The containers may be portable and enables
CNFs to run consistently across cloud environment, while allowing for dynamic
scaling and rapid deployment.
15
[0048] As used herein, Cron jobs refer to a set of instructions or
commands to schedule tasks to run automatically at specific times or intervals in an
environment such as, Linux, macOS, etc.
20 [0049] As discussed in the background section, the current known
solutions have several shortcomings. 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 software modification of a network function
(NF) in a containerized network function (CNF) environment.
25
[0050] Hereinafter, exemplary embodiments of the present disclosure will
be described with reference to the accompanying drawings.
[0051] FIG. 1 illustrates an exemplary block diagram representation of 5th
30 generation core (5GC) network architecture, in accordance with exemplary
implementation of the present disclosure. As shown in FIG. 1, the 5GC network
14
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
5 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
10 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.
[0052] Radio Access Network (RAN) [104] is the part of a mobile
telecommunications system that connects user equipment (UE) [102] to the core
15 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.
[0053] Access and Mobility Management Function (AMF) [106] is a 5G
20 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.
[0054] Session Management Function (SMF) [108] is a 5G core network
25 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.
[0055] Service Communication Proxy (SCP) [110] is a network function
30 in the 5G core network that facilitates communication between other network
15
functions by providing a secure and efficient messaging service. It acts as a
mediator for service-based interfaces.
[0056] Authentication Server Function (AUSF) [112] is a network
5 function in the 5G core responsible for authenticating UEs during registration and
providing security services. It generates and verifies authentication vectors and
tokens.
[0057] Network Slice Specific Authentication and Authorization Function
10 (NSSAAF) [114] is a 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.
[0058] Network Slice Selection Function (NSSF) [116] is a network
15 function responsible for selecting the appropriate network slice for a UE based on
factors such as subscription, requested services, and network policies.
[0059] Network Exposure Function (NEF) [118] is a network function that
exposes capabilities and services of the 5G network to external applications,
20 enabling integration with third-party services and applications.
[0060] 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
25 functions.
[0061] 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.
30
16
[0062] Unified Data Management (UDM) [124] is a network function that
centralizes the management of subscriber data, including authentication,
authorization, and subscription information.
5 [0063] Application Function (AF) [126] is a network function that
represents external applications interfacing with the 5G core network to access
network capabilities and services.
[0064] User Plane Function (UPF) [128] is a network function responsible
10 for handling user data traffic, including packet routing, forwarding, and QoS
enforcement.
[0065] Data Network (DN) [130] refers to a network that provides data
services to user equipment (UE) in a telecommunications system. The data services
15 may include but are not limited to Internet services, private data network related
services.
[0066] FIG. 2 illustrates an exemplary block diagram of a computing
device [200] (also referred herein as a computer system [200]) upon which the
20 features of the present disclosure may be implemented in accordance with
exemplary implementation of the present disclosure. In an implementation, the
computing device [200] may also implement a method for software modification of
a network function (NF) in a containerized network function (CNF) environment
utilising the system. In another implementation, the computing device [200] itself
25 implements the method for software modification of a network function (NF) in a
containerized network function (CNF) environment using one or more units
configured within the computing device [200], wherein said one or more units are
capable of implementing the features as disclosed in the present disclosure.
30 [0067] The computing device [200] may include a bus [202] or other
communication mechanism for communicating information, and a hardware
17
processor [204] coupled with bus [202] for processing information. The hardware
processor [204] may be, for example, a general purpose microprocessor. The
computing device [200] may also include a main memory [206], such as a random
access memory (RAM), or other dynamic storage device, coupled to the bus [202]
5 for storing information and instructions to be executed by the processor [204]. The
main memory [206] also may be used for storing temporary variables or other
intermediate information during execution of the instructions to be executed by the
processor [204]. Such instructions, when stored in non-transitory storage media
accessible to the processor [204], render the computing device [200] into a special10 purpose machine that is customized to perform the operations specified in the
instructions. The computing device [200] further includes a read only memory
(ROM) [208] or other static storage device coupled to the bus [202] for storing static
information and instructions for the processor [204].
15 [0068] A storage device [210], such as a magnetic disk, optical disk, or
solid-state drive is provided and coupled to the bus [202] for storing information
and instructions. The computing device [200] may be coupled via the bus [202] to
a display [212], such as a cathode ray tube (CRT), Liquid crystal Display (LCD),
Light Emitting Diode (LED) display, Organic LED (OLED) display, etc. for
20 displaying information to a computer user. An input device [214], including
alphanumeric and other keys, touch screen input means, etc. may be coupled to the
bus [202] for communicating information and command selections to the processor
[204]. Another type of user input device may be a cursor controller [216], such as
a mouse, a trackball, or cursor direction keys, for communicating direction
25 information and command selections to the processor [204], and for controlling
cursor movement on the display [212]. This input device typically has two degrees
of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allow
the device to specify positions in a plane.
30 [0069] The computing device [200] may implement the techniques
described herein using customized hard-wired logic, one or more ASICs or FPGAs,
18
firmware and/or program logic which in combination with the computing device
[200] causes or programs the computing device [200] to be a special-purpose
machine. According to one implementation, the techniques herein are performed by
the computing device [200] in response to the processor [204] executing one or
5 more sequences of one or more instructions contained in the main memory [206].
Such instructions may be read into the main memory [206] from another storage
medium, such as the storage device [210]. Execution of the sequences of
instructions contained in the main memory [206] causes the processor [204] to
perform the process steps described herein. In alternative implementations of the
10 present disclosure, hard-wired circuitry may be used in place of or in combination
with software instructions.
[0070] The computing device [200] also may include a communication
interface [218] coupled to the bus [202]. The communication interface [218]
15 provides a two-way data communication coupling to a network link [220] that is
connected to a local network [222]. For example, the communication interface
[218] 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
20 interface [218] may be a local area network (LAN) card to provide a data
communication connection to a compatible LAN. Wireless links may also be
implemented. In any such implementation, the communication interface [218]
sends and receives electrical, electromagnetic or optical signals that carry digital
data streams representing various types of information.
25
[0071] The computing device [200] can send messages and receive data,
including program code, through the network(s), the network link [220] and the
communication interface [218]. In the Internet example, a server [230] might
transmit a requested code for an application program through the Internet [228], the
30 ISP [226], the local network [222], host [224] and the communication interface
[218]. The received code may be executed by the processor [204] as it is received,
19
and/or stored in the storage device [210], or other non-volatile storage for later
execution.
[0072] The computing device [200] encompasses a wide range of
5 electronic devices capable of processing data and performing computations.
Examples of computing device [200] include, but are not limited only to, personal
computers, laptops, tablets, smartphones, servers, and embedded systems. The
devices may operate independently or as part of a network and can perform a variety
of tasks such as data storage, retrieval, and analysis. Additionally, computing device
10 [200] may include peripheral devices, such as monitors, keyboards, and printers, as
well as integrated components within larger electronic systems, showcasing their
versatility in various technological applications.
[0073] Referring to FIG. 3, an exemplary block diagram of a system [300]
15 for software modification of a network function (NF) in a containerized network
function (CNF) environment is shown, in accordance with the exemplary
implementations of the present disclosure. The system [300] comprises at least one
authorization unit [302] and at least one installation unit [304]. Also, all of the
components/ units of the system [300] are assumed to be connected to each other
20 unless otherwise indicated below. Also, in FIG. 3 only a few units are shown,
however, the system [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 be
present in a user device to implement the features of the present invention. The
25 system [300] may be a part of the user device / or may be independent of but in
communication with the user device (herein may also referred as a user equipment
(UE)). In another implementation, the system [300] may reside in a server or a
network entity. In yet another implementation, the system [300] may reside partly
in the server/ network entity and partly in the user device.
30
20
[0074] The system [300] is configured for software modification of the
network function (NF) in the containerized network function (CNF) environment,
with the help of the interconnection between the components/units of the system
[300].
5
[0075] The system [300] comprises the authorization unit [302]. The
authorization unit [302] is configured to access a container via an interface to
perform software modification. The authorization unit [302] is configured to access
the container via the interface to perform software modification. In one
10 implementation, the interface may include, but not limited to, Secure Shell (SSH)
interface and Bash interface. In an implementation, the software modification may
represent an upgrade or a downgrade of the software of the network function (NF).
In some examples, the NF may include, but not limited to, Access and Mobility
Management Function (AMF) and Session Management Function (SMF) hosted on
15 container in the CNF environment.
[0076] Bourne Again Shell (BASH) interface enables management and
debugging of the container running the NF by inspecting logs, checking system
status, or configuring NF operational parameters. The SSH interface provides a
20 secure connection for connecting remote container or server. The SSH interface
also facilitates accessing of the container over an unsecured network. The SSH
interface and BASH interface allows to a user, such as, a network administrator or
an authorised person to execute commands for performing the software
modification (e.g., upgrade or degrade or change of the software of the NF).
25
[0077] In one implementation, the container is configured to perform one
or more service operations associated with the NF during the modification. The
authorization unit [302] is configured to enable the user to login in the interface
(e.g., SSH interface, BASH interface, etc.) for accessing the container to perform
30 the software modification. After successful authentication, the authorization unit
[302] allows the user to access the container in the CNF environment.
21
[0078] The system [300] further comprises the installation unit [304]. The
installation unit [304] is connected to at least the authorization unit [302]. The
installation unit [304] is configured to invoke the software modification script
5 within the container during the one or more service operations. The one or more
service operations may include operations performed by NF, such as routing,
forwarding, session management, Quality of Service (QoS), caching, and the like.
The installation unit [304] is configured to invoke the software modification script
within the container to copy a new release package at a destination path inside the
10 container, wherein copying involves receiving the new release package. The new
release package comprises at least one of binaries, libraries, and configuration files.
The term “binaries” herein represent pre-compiled files ready for a specific
installation as per release package. The term “libraries” herein may represent
precompiled code, instructions, and program to perform specific tasks and functions
15 as per defined for release package. The term “configuration files” herein may
represent files that store settings and options for determining software behaviour
during runtime. In addition, the installation unit [304] is configured to invoke the
software modification script within the container to perform system-level
modification in a software associated with the NF. The system-level modification
20 is performed in a runtime environment keeping the state of the container same as
prior to the modification. In one implementation, the copy of the new release
package is performed via a local storage (e.g., server, database), or a remote storage.
[0079] The destination path herein may correspond to a path mapped to at
25 least one of a persistent volume and a non-persistent volume. In any containerized
application, the container uses the persistent volume to store data, which is required
to be preserved persistently in the lifecycle of that application. The non-persistent
volume is dynamically updated to include new Cron jobs, libraries, and system file
limits.
30
22
[0080] The system-level modification may comprise at least one of
updating Cron jobs and changing nofile limit. In an example, the software
modification script performs the system-level changes (e.g., for Linux system),
which are required as per application functionality like adding/changing Cron entry,
5 changing nofile limit for desired user (e.g., network administrator) by doing
changes in file at /etc/security/limits.conf.
[0081] Further, in accordance with the present disclosure, it is to be
acknowledged that the functionality described for the various the components/units
10 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 disclosure should not be construed
as limiting the scope of the present disclosure. Consequently, alternative
15 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.
[0082] Referring to FIG. 4, a method flow diagram [400] for software
20 modification of the network function (NF) in the containerized network function
(CNF) environment, in accordance with exemplary implementations of the present
disclosure. The method [400] is implemented by the system [300]. As shown in
FIG. 4, the method [400] starts at step [402].
25 [0083] At step [404], the method [400] as disclosed by the present
disclosure comprises accessing, by an authorization unit [302], a container via an
interface for performing software modification. The method [400] implemented by
the authorization unit [302] may access the container via the interface to perform
software modification. In one implementation, the interface may include, but not
30 limited to, Secure Shell (SSH) interface and Bash interface. In an implementation,
the software modification may represent an upgrade or a downgrade of the software
23
of the network function (NF). In some examples, the NF may include, but not
limited to, Access and Mobility Management Function (AMF) and Session
Management Function (SMF) hosted on container in the CNF environment.
5 [0084] Bourne Again Shell (BASH) interface enables management and
debugging of the container running the NF by inspecting logs, checking system
status, or configuring NF operational parameters. The SSH interface provides a
secure connection for connecting remote container or server. The SSH interface
also facilitates accessing of the container over an unsecured network. The SSH
10 interface and BASH interface allows to a user, such as, a network administrator or
an authorised person to execute commands for performing the software
modification (e.g., upgrade or degrade or change of the software of the NF).
[0085] In one implementation, the container is configured to perform one
15 or more service operations associated with the NF during the modification. The
authorization unit [302] is configured to enable the user to login in the interface
(e.g., SSH interface, BASH interface, etc.) for accessing the container to perform
the software modification. After successful authentication, the authorization unit
[302] allows the user to access the container in the CNF environment.
20
[0086] Next, at step [406], the method [400] as disclosed by the present
disclosure comprises invoking, by an installation unit [304], a software
modification script within the container for copying a new release package to a
destination path inside the container, the new release package comprising at least
25 one of binaries, libraries, and configuration files. The binaries contain pre-compiled
files ready for a specific installation as per release package. The libraries are
precompiled code, instructions, program to perform specific tasks and function as
per defined for release package. The configuration files store settings and options
for determining software behaviour at runtime. The installation unit [304] may
30 invoke the software modification script within the container during the one or more
service operations. In an implementation, the container may perform one or more
service operations associated with the NF during the modification. In an
24
implementation, the copy the new release package is performed via such as, but not
limited to local storage (e.g., server, database), remote storage. The installation unit
[304] may invoke the software modification script within the container to copy a
new release package at a destination path inside the container. The new release
5 package comprises at least one of binaries, libraries, and configuration files.
[0087] Next, at step [408], the method [400] as disclosed by the present
disclosure comprises performing system-level modification in a software associated
with the NF, wherein the system-level modification is performed in a runtime
10 environment keeping the state of the container same as prior to the modification.
Further, the installation unit [304] may invoke the software modification script
within the container to perform system-level modification in a software associated
with the NF. The system-level modification is performed in a runtime environment
keeping the state of the container same as prior to the modification.
15
[0088] The destination path herein may correspond to a path mapped to at
least one of a persistent volume and a non-persistent volume. In any containerized
application, the container uses the persistent volume to store data, which is required
to be preserved persistently in the lifecycle of that application. The non-persistent
20 volume is dynamically updated to include new Cron jobs, libraries, and system file
limits.
[0089] The system-level modification may comprise at least one of
updating Cron jobs and changing nofile limit. In an example, the software
25 modification script performs the system-level changes (e.g., for Linux system),
which are required as per application functionality like adding/changing Cron entry,
changing nofile limit for desired user (e.g., network administrator) by doing
changes in file at /etc/security/limits.conf.
30 [0090] Thereafter, the method [400] terminates at step [410].
25
[0091] Referring to FIG. 5, an exemplary block diagram of a system
architecture [500] for software modification of the network function (NF) in the
containerized network function (CNF), in accordance with exemplary
implementations of the present disclosure, is shown. As shown in FIG. 5, the system
5 architecture [500] includes a Clustered Network Function [502] configured to
provide a software release upgrade without the requirement for recreation of a new
container during software upgrade. The system [500] comprises one or more
controller containers [504a-504n] for orchestration and management of one or more
container payloads [506a-506n].
10
[0092] Further, the Clustered Network Function [502] comprises an
Upgrade Utility Module [508]. The Upgrade Utility Module [508] is a
comprehensive software component module designed to facilitate seamless and
non-disruptive software upgrades in containerized network function (CNF)
15 environments. The Clustered Network Function [502] achieves software upgrade
by managing without container re-creation, software installation, dynamic
configuration preservation, and error handling, while ensuring continuous service
availability and efficient resource utilization.
20 [0093] The Upgrade Utility Module [508] further comprises a plurality of
sub-modules. The plurality of sub-modules include a Login Utility Module [510],
a Data Mapping Module [512a], a Linux Setting Module [512b], and a Remote
Upgrade Module [514].
25 [0094] The Login Utility Module [510] is configured to gain
administrative access via command prompt into at least one of the controller
container (e.g., the first container 504a), via the Secure Shell (SSH). In general,
SSH is a cryptographic network protocol that provides secure, encrypted access and
communication to remote devices over a potentially unsecured network. The
30 module [510] may include a traffic management sub-module (not shown in figures)
for performing traffic management functions during the software upgrade at the one
26
or more controller containers [504a-504n]. Examples of traffic management
functions performed may include, but not limited, to maintaining service
availability, controlling traffic bursts, and the like.
5 [0095] The data mapping sub-module [512a] is configured to create a
copy of the latest release package residing at one or more remote repositories. The
data mapping sub-module [512a] copies the required binaries, libraries, and
configuration at a required path, which can be mapped to a persistent volume or
non-persistent volume of the at least one or more controller containers [504a-504n].
10
[0096] The Linux setting sub-module [512b] is configured to perform
necessary changes to the Linux operating system within the container. This includes
actions, such as adding or modifying Cron (scheduled task) entries, altering security
limits (e.g., nofile limits) for specific users, and updating configuration files as per
15 the application's requirements. The data may be changed at any time as per the
requirement of the application. Further, the data may be needed by the application
across all the runtime of the application.
[0097] The remote upgrade sub-module [514] is configured to upgrade
20 script of new software release inside the one or more controller containers [504a504n] within the cluster. The remote upgrade sub module [514] invokes the
software modification script and copies the new release package, which includes
required binaries, libraries, and configuration at required path which can be mapped
to persistent volume or non-persistent volume.
25
[0098] The functionality of the submodule [514] further includes
performing Linux system level changes. The system level changes are performed
according to the application functionality (for example, adding/changing Cron
entry, changing “no file” limit for desired user by doing changes in file at
30 /etc/security/limits.conf, etc.). The software is upgraded with the required version
without creating the new container (as illustrated in FIG. 6).
27
[0099] Before the software upgrade, static data is stored in the persistent
volume and dynamic data is stored in the non-persistent volume of the container.
However, when the data is copied, the binaries, libraries, and configuration are
5 copied at required path mapping to persistent volume or non-persistent volume.
Therefore, after the software upgrade, the data present at the non-persistent volume
before the upgrade is also preserved.
[0100] FIG. 6 illustrates an exemplary system [600] diagram for software
10 modification of the network function (NF) without creating a new container in the
containerized network function (CNF) environment, in accordance with exemplary
implementations of the present disclosure.
[0101] As shown in FIG. 6, the system [600] is configured to perform
15 software modification of a network function (NF) in a containerized network
function (CNF) environment. As shown in FIG. 6, the system [600] comprises a
Software Upgrade Procedure [602], a persistent volume [604], a non-persistent
volume [606], a container [608], and a container with upgraded version [610]. The
system [600] comprises the container [608] running an interface to execute software
20 modification commands within the container [608]. In an implementation, the
interface may include SSH interface, BASH interface, and the like. In addition,
software modification commands may be associated with upgrade or downgrade
for the software of the NF (e.g., Access and Mobility Management Function
(AMF), Session Management Function (SMF), etc.). The system [600] further
25 comprises the persistence volume [604] connected at least to the container [608].
The persistent volume [608] is configured to store persistent data.
[0102] In any containerized application, the container [608] uses the
persistent volume [604] to store data, which is required to be preserved persistently.
30 The system [600] further comprises the non-persistent volume [606] connected at
least to the container [608]. The non-persistent volume [606] is configured to store
28
dynamic data. The non-persistent volume [606] is dynamically updated to include
new Cron jobs, libraries, and system file limits.
[0103] The system [600] further comprises the installation unit [304]
5 connected to at least the container [608]. In one implementation, the installation
unit [604] is configured to invoke the software modification script (e.g., the
software upgraded procedure [602]), within the container [608] to connect the
container [608] at least to the persistent volume [604] and the non-persistent volume
[606]. The software modification script copies required binaries, libraries,and
10 configuration at required path which can be mapped to the persistent volume [604]
or the non-persistent volume [606]. During the software modification, the software
modification script may modify the software at the NF without stopping the
container [608] and preserving data at the non-persistent volume [606] of the
container [608]. The container [608] with the modified software is termed as the
15 container with upgraded version [610].
[0104] Referring to FIG. 7, an exemplary flow diagram of a method [700]
for upgrading containers within a network cluster, in accordance with exemplary
implementations of the present disclosure is shown. The method [700] may be
20 implemented by the system [500], system [600]. As shown in FIG. 7, the method
[700] starts at step [702] and proceeds to step [704].
[0105] At step [704], a system administrator logs into at least one of the
controller containers (e.g., the controller container [504a]) via the Secure Shell
25 (SSH) to gain administrative access. The one or more controller containers (e.g.,
the controller container [504a]) is configured to serve as a starting point for the
software modification.
[0106] The method [700] then proceeds to step [706]. At step [706], the
30 Data Mapping Module [512a] of the Upgrade Utility Module [508] is configured to
create a copy of the latest release package residing at the one or more remote
29
repositories onto a required path selected from one of the persistent volume [604]
and the non-persistent volume [606].
[0107] Thereafter, the method [700] proceeds to the step [708]. At step
5 [708], Linux system-level changes are performed to accommodate the updated
software version. This includes tasks such as modifying Cron entries and adjusting
user-specific configuration files, and the like. This step ensures that current state of
the container [608] is maintained after release upgrade, which avoids any other
alternate arrangement to be done.
10
[0108] At step [710], the Remote Upgrade module [514] is configured to
perform the steps [702], [704], [706], and [708] on all the remaining nodes of
cluster, in the one or more controller containers [504a-504n] within the cluster. This
step ensures sequential execution of the method [700] on each container payload
15 node in the cluster.
[0109] Thereafter, the method [700] terminates at step [712].
[0110] Referring to FIG. 8, a method flow diagram [800] for copying a
20 latest release package residing at least one or more remote repositories, in
accordance with exemplary implementations of the present disclosure, is shown.
The method [800] starts at [802] and proceeds to step [804]. At step [804], the
administrator determines a destination path for copying the components (e.g.,
binaries, libraries, and configuration) of the release package. For the components
25 determined to be persistent which are needed throughout the application's lifecycle,
the method [800] proceeds to step [806] where the components of the release
package are copied to a path that is mapped to the persistent volume [604] of the
storage. If, however, the data is dynamic and can change during the software
modification operation, the method [800] proceeds to the step [808] where the
30 components of the release package are copied to a path that is mapped to the nonpersistent volume [606] of the storage. In a preferred implementation, the copy
30
operation includes copying the selected binaries, libraries, and configuration files
from the new release package to the designated destination path within the container
[608]. This action ensures that the updated software components are now available
and accessible within the container [608].
5
[0111] At step [810], the method [800] includes integrating the copied
components into the container's file system, thereby making them part of the
container's runtime environment. Accordingly, depending on whether they were
copied to the persistent [604] or non-persistent volume [606], the data will either
10 persist or remain transient.
[0112] Thereafter, the method [800] terminates at step [812].
[0113] Accordingly, it may be noted that the system of the current
15 disclosure can be utilized to handle large number of software upgrades, including
upgrades of controllers and payloads within the clustered network function in a
sequential manner, one at a time, thereby reducing the risk of downtime.
[0114] Accordingly, as shown in FIG. 7, the method flow diagram for
20 upgrading containers within the network cluster may also be applicable for
downgrading containers within the network cluster.
[0115] The present disclosure further discloses a non-transitory computer
readable storage medium storing instructions for software modification of a
25 network function (NF) in a containerized network function (CNF) environment, the
instructions include executable code which, when executed by one or more units of
a system [300], causes: an authorization unit [302] of the system to access a
container via an interface to perform software modification; and an installation unit
[304] connected to at least the authorization unit [302], the installation unit [304]
30 of the system to invoke an upgrade script within the container to: copy a new release
package at a destination path inside the container, the new release package
comprises at least one of binaries, libraries, and configuration files; and perform
31
system-level modification in a software associated with the NF, wherein the
system-level modification is performed in a runtime environment keeping the state
of the container same as prior to the modification.
5 [0116] As is evident from the above, the present disclosure provides a
method and a system for efficiently modifying the software within the containerized
network function environment, while preserving dynamic configurations and
minimizing downtime. One of the main purpose of the present disclosure is to
effectively preserve dynamic configurations within containerized network function
10 environments during software modification, thereby ensuring data and settings in
the non-persistent section of containers remain intact throughout the software
upgrade process. The present disclosure ensures the preservation of dynamic
configuration changes made inside a container during software modification. This
includes preservation of elements, such as Cron jobs, CLI libraries, and user15 specific security limits. By retaining these configurations, the present disclosure
maintains the operational state of the application, allowing it to adapt to changing
requirements seamlessly. The present disclosure simplifies the software upgrade
process by eliminating the need for complex container re-creation and manging data
associated with containers. This streamlined approach reduces the management and
20 orchestration complexity associated with upgrades, thereby making it more
accessible and efficient for administrators. Further, unlike traditional methods that
often require service interruptions and downtime during upgrades, the present
disclosure allows services to continue running without disruption. This
uninterrupted service availability enhances network reliability and ensures a
25 consistent user experience. Further, the present disclosure eliminates software
downtime during the upgrade process. Users and services experience continuous
operation without interruptions, thereby avoiding possible burden on peer entities.
The present disclosure eliminates the need for cluster restarts and minimizes the
overhead associated with restarting containers, thereby ensuring that system
30 resources are used efficiently.
32
[0117] Accordingly, it may be understood that the software upgrade
system of the current disclosure provides a comprehensive and configurable
solution to the challenges of managing upgrades required within network clusters,
thereby leading to a more effective and cost-efficient software upgradation
5 experience.
[0118] While considerable emphasis has been placed herein on the
disclosed embodiments, it will be appreciated that many embodiments can be made
and that many changes can be made to the embodiments without departing from the
10 principles of the present disclosure. These and other changes in the embodiments
of the present 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.
33
We Claim:
1. A method for software modification of a network function (NF) in a
containerized network function (CNF) environment, the method comprising:
5 accessing, by an authorization unit [302], a container via an interface;
and
invoking, by an installation unit [304], a software modification script
within the container for:
copying a new release package to a destination path inside the
10 container, the new release package comprising at least one of binaries,
libraries, and configuration files; and
performing system-level modification in a software associated
with the NF, wherein the system-level modification is performed in a
runtime environment keeping the state of the container same as prior to
15 the modification.
2. The method as claimed in claim 1, wherein the destination path corresponds
to a path mapped to at least one of a persistent volume and a non-persistent
volume.
20
3. The method as claimed in claim 2, wherein the non-persistent volume is
dynamically updated to include new cron jobs, libraries, and system file
limits.
25 4. The method as claimed in claim 1, wherein the system-level modification
comprises at least one of updating cron jobs and changing nofile limit.
34
5. The method as claimed in claim 1, further comprising performing, by the
container, one or more service operations associated with the NF during the
modification.
5 6. A system for software modification of a network function (NF) in a
containerized network function (CNF) environment, the system comprising:
an authorization unit [302] configured to access a container via an
interface; and
an installation unit [304] connected to at least the authorization unit
10 [302], the installation unit [304] configured to invoke a software
modification script within the container to:
copy a new release package at a destination path inside the
container, the new release package comprises at least one of
binaries, libraries, and configuration files; and
15 perform system-level modification in a software associated
with the NF, wherein the system-level modification is performed
in a runtime environment keeping the state of the container same
as prior to the modification.
20 7. The system as claimed in claim 6, wherein the destination path corresponds
to a path mapped to at least one of a persistent volume and a non-persistent
volume.
8. The system as claimed in claim 7, wherein the non-persistent volume is
25 dynamically updated to include new cron jobs, command-line interface (CLI)
libraries, and system file limits.
9. The system as claimed in claim 6, wherein the system-level modification
comprises at least one of updating cron jobs and changing nofile limit.
35
10. The system as claimed in claim 6, wherein the installation unit [304] is
configured to invoke the software modification script during the one or more
service operations.
5
11. A system for software modification of a network function (NF) in a
containerized network function (CNF) environment, the system comprising:
- a container running an interface to execute software modification
commands within the container;
10 - a persistent volume connected at least to the container, the persistent
volume to store persistent data;
- a non-persistent volume connected at least to the container, the nonpersistent volume to store dynamic data; and
- an installation unit [304] connected to at least the container, the
15 installation unit [304] configured to invoke a software modification
script within the container to connect the container at least to the
persistent volume and the non-persistent volume.

Documents

Application Documents

# Name Date
1 202321064695-STATEMENT OF UNDERTAKING (FORM 3) [26-09-2023(online)].pdf 2023-09-26
2 202321064695-PROVISIONAL SPECIFICATION [26-09-2023(online)].pdf 2023-09-26
3 202321064695-POWER OF AUTHORITY [26-09-2023(online)].pdf 2023-09-26
4 202321064695-FORM 1 [26-09-2023(online)].pdf 2023-09-26
5 202321064695-FIGURE OF ABSTRACT [26-09-2023(online)].pdf 2023-09-26
6 202321064695-DRAWINGS [26-09-2023(online)].pdf 2023-09-26
7 202321064695-Proof of Right [21-02-2024(online)].pdf 2024-02-21
8 202321064695-FORM-5 [19-09-2024(online)].pdf 2024-09-19
9 202321064695-ENDORSEMENT BY INVENTORS [19-09-2024(online)].pdf 2024-09-19
10 202321064695-DRAWING [19-09-2024(online)].pdf 2024-09-19
11 202321064695-CORRESPONDENCE-OTHERS [19-09-2024(online)].pdf 2024-09-19
12 202321064695-COMPLETE SPECIFICATION [19-09-2024(online)].pdf 2024-09-19
13 202321064695-Request Letter-Correspondence [07-10-2024(online)].pdf 2024-10-07
14 202321064695-Power of Attorney [07-10-2024(online)].pdf 2024-10-07
15 202321064695-FORM 3 [07-10-2024(online)].pdf 2024-10-07
16 202321064695-Form 1 (Submitted on date of filing) [07-10-2024(online)].pdf 2024-10-07
17 202321064695-Covering Letter [07-10-2024(online)].pdf 2024-10-07
18 202321064695-CERTIFIED COPIES TRANSMISSION TO IB [07-10-2024(online)].pdf 2024-10-07
19 Abstract.jpg 2024-10-18
20 202321064695-ORIGINAL UR 6(1A) FORM 1 & 26-200125.pdf 2025-01-24