Abstract: The present disclosure relates to a method and a system for modifying configuration data in a network environment. The present disclosure encompasses: transmitting, by a transceiver unit [202] using a user interface (UI) [204], from a database [206], configuration data associated with at least an application; receiving, by the transceiver unit using the UI [204], one or more modifications to the transmitted configuration data associated with at least the application; generating, by a processing unit [208], a modified configuration data associated with at least the application, based on the transmitted configuration data, and the received one or more modifications; and checking, by a validation unit [210], a validity of the modified configuration data, wherein, in response to the modified configuration data being valid, the method comprises: storing, by the processing unit [208], in a repository [212] and the database [206], the modified configuration data associated with at least the application. [FIG. 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 MODIFYING
CONFIGURATION DATA IN A NETWORK 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 MODIFYING CONFIGURATION DATA
IN A NETWORK ENVIRONMENT
FIELD OF INVENTION
5
[0001] The present disclosure generally relates to handling software applications.
More particularly, embodiments of the present disclosure relate to a method and a
system for modifying configuration data in a network environment.
10 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
15 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] The software applications use different types of configuration data as input.
20 This configuration data can be static or dynamic and may vary for a number of
maximum possible entries to be added dynamically. For applications where the
cluster consists of multiple processes running on different containers, as per the
traditional approach of configuration change, if a single row entry is to be added
for a configuration file it goes through at least the following steps: (a) physical file
25 change at controller node-1, (b) updating of cache data for new configuration
change, (c) new change to be reflected across cluster so that all processes of clusters
from all containers using this configuration absorb new change.
[0004] In the third step (c), a locking mechanism is used by core processes to update
30 the cache as multiple threads are accessing that data. If a configuration change needs
to be done for a huge number of entries for the configuration file, the above 3 steps
3
(a, b, c) are repeated during each update in the configuration data. This puts an extra
burden of lock & unlock causing application threads to wait for resources adding
extra context switching for traffic handling threads. Further, if the file is larger (in
size), then writing the file to disk multiple times involves unnecessary input-output
5 operations. It further creates unnecessary handling on the system for data update
requests which are invoked in parallel, and also consumes a lot of computational
resources.
[0005] Thus, there exists an imperative need in the art to provide a method and a
10 system for modifying configuration data in a network environment in an efficient
manner, which the present disclosure aims to address.
SUMMARY
15 [0006] 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.
20 [0007] An aspect of the present disclosure may relate to a method for modifying
configuration data in a network environment. The method includes transmitting, by
a transceiver unit using a user interface (UI), from a database, configuration data
associated with at least an application. The method further includes receiving, by
the transceiver unit using the UI, one or more modifications to the transmitted
25 configuration data associated with at least the application. The method further
includes generating, by a processing unit, a modified configuration data associated
with at least the application, based on the transmitted configuration data, and the
received one or more modifications. The method further includes checking, by a
validation unit, a validity of the modified configuration data. In response to the
30 modified configuration data being valid, the method includes storing, by the
4
processing unit, in a repository and the database, the modified configuration data
associated with at least the application.
[0008] In an exemplary aspect of the present disclosure, in response to the modified
5 configuration data not being valid the method further comprises generating, by a
report generation unit, a report indicating one or more reasons for a failure of
validity of the one or more modifications in the transmitted configuration data; and
transmitting, by the transceiver unit, the generated report to the UI.
10 [0009] In an exemplary aspect of the present disclosure, the method further
comprises generating, by the processing unit using the UI, a request for revising the
one or more modifications associated with the transmitted configuration data, based
on the generated report.
15 [0010] In an exemplary aspect of the present disclosure, checking, by the validation
unit, the validity of the modified configuration data further comprises checking the
one or more modifications to the transmitted configuration data based on predefined
rules for at least one of a syntax, and file formatting of the modified configuration
data.
20
[0011] In an exemplary aspect of the present disclosure, the repository comprises
at least cache memory.
[0012] In an exemplary aspect of the present disclosure, the configuration data
25 comprises one or more configuration parameters associated with at least the
application.
[0013] In an exemplary aspect of the present disclosure, the modified configuration
data is further transmitted by the transceiver unit to at least one container associated
30 with at least the application.
5
[0014] Another aspect of the present disclosure may relate to a system for
modifying configuration data in a network environment. The system comprises a
transceiver unit configured to transmit, using a user interface (UI), from a database,
configuration data associated with at least an application. The transceiver unit is
5 further configured to receive, using the UI, one or more modifications to the
transmitted configuration data associated with at least the application. The system
further comprises a processing unit connected at least with the transceiver unit. The
processing unit is further configured to generate a modified configuration data
associated with at least the application, based on the transmitted configuration data,
10 and the received one or more modifications. The system further comprises a
validation unit connected at least with the processing unit. The validation unit is
configured to check a validity of the modified configuration data. The processing
unit is configured to store, in a repository and the database, the modified
configuration data associated with at least the application in response to the
15 modified configuration data being valid.
[0015] Another aspect of the present disclosure may relate to a user device for
modifying configuration data in a network environment, the user device. The UE
comprises a processor configured to receive, using a user interface (UI), from a
20 database, configuration data associated with at least an application; transmit, using
the UI, one or more modifications to the received configuration data associated with
at least the application, wherein the one or more modifications are transmitted to
generate a modified configuration data associated with at least the application,
based on the received configuration data, and the transmitted one or more
25 modifications; and check a validity of the modified configuration data, store, in a
repository and the database, the modified configuration data associated with at least
the application in response to the modified configuration data being valid.
[0016] Yet another aspect of the present disclosure may relate to a non-transitory
30 computer readable storage medium storing instructions for modifying configuration
data in a network environment, the instructions include executable code which,
6
when executed by one or more units of a system, causes a transceiver unit to
transmit, using a user interface (UI), from a database, configuration data associated
with at least an application. The instructions when executed further cause the
transceiver unit to receive, using the UI, one or more modifications to the
5 transmitted configuration data associated with at least the application. The
instructions when executed further cause a processing unit to generate a modified
configuration data associated with at least the application, based on the transmitted
configuration data, and the received one or more modifications. The instructions
when executed further cause a validation unit to check a validity of the modified
10 configuration data. The instructions when executed further cause the processing
unit to store, in a repository and the database, the modified configuration data
associated with at least the application in response to the modified configuration
data being valid.
15 OBJECTS OF THE DISCLOSURE
[0017] Some of the objects of the present disclosure, which at least one
embodiment disclosed herein satisfies are listed herein below.
20 [0018] It is an object of the present disclosure to provide a system and a method for
modifying configuration data in a network environment which avoids the extra
burden of lock-unlock by traffic handling threads.
[0019] It is another object of the present disclosure to provide a solution that avoids
25 the penalty of acquiring and releasing repeated locks.
[0020] It is yet another object of the present disclosure to provide a solution that
makes efficient use of threads by avoiding context switching to have efficient use
of processors.
30
7
[0021] It is yet another object of the present disclosure to provide a solution that
avoids performing multiple input-output (IO) operations of files.
[0022] It is yet another object of the present disclosure to provide a solution that
5 enables easy and clean execution for parallel requests.
BRIEF DESCRIPTION OF THE DRAWINGS
[0023] The accompanying drawings, which are incorporated herein, and constitute
10 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 not to be construed as
15 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.
20
[0024] FIG. 1 illustrates an exemplary block diagram of a computing device upon
which the features of the present disclosure may be implemented, in accordance
with exemplary implementation of the present disclosure.
25 [0025] FIG. 2 illustrates an exemplary block diagram of a system for modifying
configuration data in a network environment, in accordance with exemplary
implementations of the present disclosure.
[0026] FIG. 3 illustrates a method flow diagram for modifying configuration data
30 in a network environment, in accordance with exemplary implementations of the
present disclosure.
8
[0027] FIG. 4 illustrates a process flow diagram for modifying configuration data
in a network environment, in accordance with exemplary implementations of the
present disclosure.
5
[0028] The foregoing shall be more apparent from the following more detailed
description of the disclosure.
DETAILED DESCRIPTION
10
[0029] 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
15 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.
20 [0030] 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 enabling description for implementing an exemplary embodiment.
It should be understood that various changes may be made in the function and
25 arrangement of elements without departing from the spirit and scope of the
disclosure as set forth.
[0031] Specific details are given in the following description to provide a thorough
understanding of the embodiments. However, it will be understood by one of
30 ordinary skill in the art that the embodiments may be practiced without these
specific details. For example, circuits, systems, processes, and other components
9
may be shown as components in block diagram form in order not to obscure the
embodiments in unnecessary detail.
[0032] Also, it is noted that individual embodiments may be described as a process
5 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 steps not
10 included in a figure.
[0033] 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.
[0034] As used herein, a “processing unit” or “processor” or “operating processor”
25 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 microcontroller, Application Specific
30 Integrated Circuits, Field Programmable Gate Array circuits, any other type of
integrated circuits, etc. The processor may perform signal coding data processing,
10
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 [0035] 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 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
10 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
contain at least one input means configured to receive an input from unit(s) which
15 are required to implement the features of the present disclosure.
[0036] As used herein, “storage unit” or “memory unit” refers to a 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
20 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 unit stores at least the data
that may be required by one or more units of the system to perform their respective
functions.
25
[0037] 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
30 each other, which also includes the methods, functions, or procedures that may be
called.
11
[0038] 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
5 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 Programmable Gate Array
circuits (FPGA), any other type of integrated circuits, etc.
10 [0039] As used herein the transceiver unit includes at least one receiver and at least
one transmitter configured respectively for receiving and transmitting data, signals,
information, or a combination thereof between units/components within the system
and/or connected with the system.
15 [0040] As discussed in the background section, the current known solutions have
several shortcomings. The present disclosure aims to overcome the abovementioned and other existing problems in this field of technology by providing a
method and a system for modifying configuration data in a network environment.
20 [0041] FIG. 1 illustrates an exemplary block diagram of a computing device [100]
upon which the features of the present disclosure may be implemented in
accordance with exemplary implementation of the present disclosure. In an
implementation, the computing device [100] may also implement a method for
modifying configuration data in a network environment utilizing the system [200].
25 In another implementation, the computing device [100] itself implements the
method for modifying configuration data in a network environment using one or
more units configured within the computing device [100], wherein said one or more
units are capable of implementing the features as disclosed in the present disclosure.
30 [0042] The computing device [100] may include a bus [102] or other
communication mechanism for communicating information, and a hardware
12
processor [104] coupled with the bus [102] for processing information. The
hardware processor [104] may be, for example, a general-purpose microprocessor.
The computing device [100] may also include a main memory [106], such as a
random-access memory (RAM), or other dynamic storage device, coupled to the
5 bus [102] for storing information and instructions to be executed by the processor
[104]. The main memory [106] also may be used for storing temporary variables or
other intermediate information during execution of the instructions to be executed
by the processor [104]. Such instructions, when stored in non-transitory storage
media accessible to the processor [104], render the computing device [100] into a
10 special-purpose machine that is customized to perform the operations specified in
the instructions. The computing device [100] further includes a read only memory
(ROM) [108] or other static storage device coupled to the bus [102] for storing static
information and instructions for the processor [104].
15 [0043] A storage device [110], such as a magnetic disk, optical disk, or solid-state
drive is provided and coupled to the bus [102] for storing information and
instructions. The computing device [100] may be coupled via the bus [102] to a
display [112], 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 [114], including
alphanumeric and other keys, touch screen input means, etc. may be coupled to the
bus [102] for communicating information and command selections to the processor
[104]. Another type of user input device may be a cursor controller [116], such as a
mouse, a trackball, or cursor direction keys, for communicating direction
25 information and command selections to the processor [104], and for controlling
cursor movement on the display [112]. The 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 [0044] The computing device [100] may implement the techniques described
herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware
13
and/or program logic which in combination with the computing device [100] causes
or programs the computing device [100] to be a special-purpose machine.
According to one implementation, the techniques herein are performed by the
computing device [100] in response to the processor [104] executing one or more
5 sequences of one or more instructions contained in the main memory [106]. Such
instructions may be read into the main memory [106] from another storage medium,
such as the storage device [110]. Execution of the sequences of instructions
contained in the main memory [106] causes the processor [104] to perform the
process steps described herein. In alternative implementations of the present
10 disclosure, hard-wired circuitry may be used in place of or in combination with
software instructions.
[0045] The computing device [100] also may include a communication interface
[118] coupled to the bus [102]. The communication interface [118] provides a two15 way data communication coupling to a network link [120] that is connected to a
local network [122]. For example, the communication interface [118] 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 [118] may be a
20 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 [118] sends and receives electrical,
electromagnetic, or optical signals that carry digital data streams representing
various types of information.
25
[0046] The computing device [100] can send messages and receive data, including
program code, through the network(s), the network link [120], and the
communication interface [118]. In the Internet example, a server [130] might
transmit a requested code for an application program through the Internet [128], the
30 ISP [126], the local network [122], a host [124], and the communication interface
[118]. The received code may be executed by the processor [104] as it is received,
14
and/or stored in the storage device [110], or other non-volatile storage for later
execution.
[0047] The computing device [100] encompasses a wide range of electronic
5 devices capable of processing data and performing computations. Examples of
computing device [100] 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 [100]
10 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.
[0048] Referring to FIG. 2, an exemplary block diagram of a system [200] for
15 modifying configuration data in a network environment, is shown, in accordance
with an exemplary implementations of the present disclosure. The system [200]
comprises at least one transceiver unit [202], at least one user interface (UI) [204],
at least one database [206], at least one processing unit [208], at least one validation
unit [210], at least one repository [212], and at least one report generation unit
20 [214]. Also, all of the components/ units of the system [200] are assumed to be
connected to each other unless otherwise indicated below. As shown in the figures
all units shown within the system [200] should also be assumed to be connected to
each other. Also, in FIG. 2 only a few units are shown, however, the system [200]
may comprise multiple such units, or the system [200] may comprise any such
25 numbers of said units, as required to implement the features of the present
disclosure. Further, in an implementation, the system [200] may be present in a user
device/ user equipment to implement the features of the present disclosure. The
system [200] may be a part of the user device or may be independent of but in
communication with the user device (may also referred to herein as a UE). In
30 another implementation, the system [200] may reside in a server or a network entity.
15
In yet another implementation, the system [200] may reside partly in the server/
network entity and partly in the user device.
[0049] The system [200] is configured for modifying configuration data in a
5 network environment, with the help of the interconnection between the
components/units of the system [200].
[0050] The system [200] comprises a transceiver unit [202] configured to transmit,
using a user interface (UI) [204], from a database [206], configuration data
10 associated with at least an application.
[0051] The transceiver unit [202] transmits using the UI [204] the configuration
data associated with at least the application from the database [206]. In an
exemplary aspect, the transceiver unit transmits the current configuration data
15 related to a specific application using the user interface (UI), allowing a user (e.g.,
network administrator) to view the current configuration data stored in the database
[206].
[0052] As used herein, the application refers to a software program used to perform
20 specific tasks or functions related to network management such as network
monitoring, network traffic handling, configuration management, session
management and the like. In an example, the application may be an Access and
Mobility management Function (AMF) application, Session Management Function
(SMF) application. Additionally, the application may also be a business telephone
25 application server, or a network function.
[0053] In an exemplary aspect, the user interface (UI) [204] is a command line
interface (CLI) that is used by the network administrator to receive the
configuration data associated with at least an application.
30
16
[0054] In an exemplary aspect, the configuration data comprises one or more
configuration files comprising configuration parameters associated with at least the
application. The configuration parameters determine how the application functions
within the network environment. In an exemplary aspect, the configuration
5 parameters may include static parameters and dynamic parameters.
[0055] In an exemplary embodiment, the configuration parameters include, but are
not limited to, resource allocation settings, connection parameters, version details,
security credentials, paging parameters (e.g., paging cycle, paging occasion, paging
10 frame), Public Land Mobile Network parameters (e.g., mobile country code, mobile
network code), radio resource control parameters. Furthermore, the configuration
parameters may also relate to Hyper Text Transfer Protocol (HTTP) data, counter
data, cluster data, alarm data, alert data, and the like.
15 [0056] In an exemplary aspect, the static parameters are parameters that are fixed
during the application's runtime.
[0057] In an exemplary aspect, dynamic parameters are parameters that can be
changed based on the network administrator’s requirements.
20
[0058] The transceiver unit [202] is further configured to receive, using the UI
[204], one or more modifications to the transmitted configuration data associated
with at least the application.
25 [0059] The transceiver unit [202] receives the one or more modifications to the
transmitted configuration data associated with at least the application using the UI
[204]. In an exemplary aspect the transceiver unit, utilizing the UI [204], receives
one or more modifications that the network administrator wants to make to the
initially transmitted configuration data.
30
17
[0060] In an exemplary aspect, the one or more modifications may include, adding
new configuration parameters, deleting the previous configuration parameters,
updating the already existing parameter, etc.
5 [0061] The system [200] further comprises a processing unit [208] connected at
least with the transceiver unit [202]. The processing unit [208] is configured to
generate a modified configuration data associated with at least the application,
based on the transmitted configuration data, and the received one or more
modifications.
10
[0062] After receiving the initially transmitted configuration data and one or more
modifications associated with the configuration data, the processing unit [208]
generates the modified configuration data associated with the at least the
application. By generating the modified configuration data, the processing ensures
15 that all changes are reflected accurately and that the new modified configuration
data meets the network administrator’s requirements.
[0063] The system [200] further comprises a validation unit [210] connected at
least with the processing unit [208]. The validation unit [210] is configured to check
20 a validity of the modified configuration data.
[0064] The validation unit [210] checks the validity of the modified configuration
data in order to ascertain whether the newly generated modified configuration
contains any errors or conflicts. By checking the validity of the modified
25 configuration data, the system [200] safeguards against potential errors and ensures
that only accurate configurations are retained, enhancing the overall efficiency of
configuration management within the application.
[0065] In an exemplary aspect, to check the validity of the modified configuration
30 data, the validation unit [210] is configured to check the one or more modifications
to the transmitted configuration data based on predefined rules for at least one of a
18
syntax, and file formatting of the modified configuration data. The modified
configuration data is validated using predefined rules for syntax, format of file, and
the like.
5 [0066] In an exemplary aspect, the predefined rules include specific criteria or rules
that have been established beforehand by the network administrator. These predefined rules/criteria serve as benchmarks for evaluating the validity of the
modifications, ensuring that they comply with the requirements set by the network.
10 [0067] In an exemplary aspect, the processing unit [208] checks the file formatting
of the modified configuration data in order to verify that the file is properly
formatted which ensures that the application correctly interprets the modified
configuration data thereby enhancing the overall efficiency of the application.
15 [0068] In an example, predefined rules may check the use of syntax in the modified
configuration data. If the one or more modifications are received in JSON, the
predefined rules check the structure of the modifications e.g., whether curly braces
are used to define objects in the modifications or not. In case the syntax errors (e.g.,
missing commas, brackets) are found in the one or more modifications then the
20 application may not be able to read the modified file properly.
[0069] In an exemplary aspect, the validation unit [210] indicates the modified
configuration data as “valid” if it is free of any errors and conflicts. Similarly, the
validation unit indicates the modified configuration data as “invalid” if it contains
25 errors and conflicts that may affect the overall functioning of the application.
[0070] The processing unit [208] is further configured to store, in a repository [212]
and the database [206], the modified configuration data associated with at least the
application in response to the modified configuration data being valid. After
30 confirming the validity of the modified configuration data, the processing unit [208]
19
stores the modified configuration data in the repository [212] e.g., cache memory,
and a database [206] e.g., persistent storage medium.
[0071] The transceiver unit [202] is further configured to transmit the modified
5 configuration data to at least one container associated with at least the application.
The transceiver unit [202] transmits the modified configuration data to at least one
container associated with at least the application to ensure that the application has
access to the latest modified configuration data.
10 [0072] In an exemplary aspect, the repository [212] comprises at least cache
memory. The cache memory acts as a temporary storage that gives quick access to
the validated modified configuration data. Furthermore, the validated modified
configuration data is stored in the database [206] in order to maintain a permanent
record for long-term reliability.
15
[0073] In an exemplary aspect, in response to the modified configuration data not
being valid, a report generation unit [214] is configured to generate a report
indicating one or more reasons for failure of validity of the one or more
modifications in the transmitted configuration data.
20
[0074] The report generation unit [214] generates a report indicating one or more
reasons for the failure of validity of the one or more modifications in the transmitted
configuration data, in response to the modified configuration data not being valid.
In an exemplary aspect, the report generation unit [214] generates a detailed report
25 outlining the specific reasons for failures in validating the modifications of
configuration data. When the validation unit [214] detects issues, such as syntax
errors or formatting of the modified configuration data, the report generation unit
[214] provides a report detailing the detected issues that act as feedback for the
network administrator.
30
20
[0075] The transceiver unit [202] is further configured to transmit the generated
report to the UI [204].
[0076] Once the report is generated by the report generation unit [214], the
5 transceiver unit [202] transmits the information to the user interface (UI) [204]
where the network administrator may see the reasons for validation failures of the
modified data or the one or more modifications, enabling them to make necessary
adjustments accordingly.
10 [0077] The processing unit [208] is further configured to generate, using the UI
[304], a request for revising the one or more modifications associated with the
transmitted configuration data, based on the generated report.
[0078] Based on the generated report by the report generation unit [208], the
15 processing unit [208] generates the request for revising or rectifying the one or more
modifications associated with the transmitted configuration data thereby enabling
the network administrator to make any changes, modifications, and updates to
modified configuration data enhancing the overall efficiency of the system [200].
20 [0079] Referring to FIG. 3, an exemplary method flow diagram [300] for
modifying configuration data in a network environment, in accordance with
exemplary implementations of the present disclosure is shown. In an
implementation, the method [300] is performed by the system [200]. Further, in an
implementation, the system [200] may be present in a server device to implement
25 the features of the present disclosure. Also, as shown in FIG. 3, the method [300]
starts at step [302].
[0080] At step 304, the method [300] comprises transmitting, by a transceiver unit
[202] using a user interface (UI) [204], from a database [206], configuration data
30 associated with at least an application.
21
[0081] The transceiver unit [202] transmits using the UI [204] the configuration
data associated with at least the application from the database [206]. In an
exemplary aspect, the transceiver unit transmits the current configuration data
related to a specific application using the user interface (UI), allowing a network
5 administrator to view the current configuration data stored in the database [206].
[0082] In an exemplary aspect, the user interface (UI) [204] is a command line
interface that is used by the network administrator to receive configuration data
associated with at least an application.
10
[0083] In an exemplary aspect, the configuration data comprises one or more
configuration parameters associated with at least the application. The configuration
parameters determine how the application functions within the network
environment. In an exemplary aspect, the configuration parameters may include
15 static parameters and dynamic parameters.
[0084] In an exemplary aspect, the static parameters are parameters that are fixed
during the application's runtime.
20 [0085] In an exemplary aspect, dynamic parameters are parameters that can be
changed based on the network administrator’s requirements.
[0086] At step 306, the method [300] comprises receiving, by the transceiver unit
[202] using the UI [204], one or more modifications to the transmitted configuration
25 data associated with at least the application.
[0087] The transceiver unit [202] receives one or more modifications to the
transmitted configuration data associated with at least the application using the UI
[204]. In an exemplary aspect the transceiver unit, utilizing the UI [204], receives
30 one or more modifications that the user (e.g., network administrator) wants to make
to the initially transmitted configuration data.
22
[0088] In an exemplary aspect, the one or more modifications may include, adding
new configuration parameters, deleting the previous configuration parameters,
updating the already existing parameters, etc.
5
[0089] At step 308, the method [300] comprises generating, by a processing unit
[208], a modified configuration data associated with at least the application, based
on the transmitted configuration data, and the received one or more modifications.
10 [0090] After receiving the initially transmitted configuration data and one or more
modifications associated with the configuration data, the processing unit [208]
generates the modified configuration data associated with the at least the
application. By generating modified configuration data, the processing ensures that
all changes are reflected accurately and that the new modified configuration data
15 meets the network administrator’s requirements.
[0091] At step 310, the method [300] comprises checking, by a validation unit
[210], a validity of the modified configuration data, wherein, in response to the
modified configuration data being valid, the method comprises storing, by the
20 processing unit [208], in a repository and the database, the modified configuration
data associated with at least the application.
[0092] The validation unit [210] checks the validity of the modified configuration
data in order to ascertain whether the newly generated modified configuration
25 contains any errors or conflicts. By checking the validity of the modified
configuration data, the system [200] safeguards against potential errors and ensures
that only accurate configurations are retained, enhancing the overall efficiency of
configuration management within the application.
30 [0093] In an exemplary aspect, the validation unit [210] indicates the modified
configuration data as “valid” if it is free of any errors and conflicts. Similarly, the
23
validation unit indicates the modified configuration data as “invalid” if it contains
errors and conflicts which may affect the overall functioning of the application.
[0094] After confirming that the validity of the modified configuration data, the
5 processing unit [208] stores the modified configuration data in the repository [212]
and the database [206].
[0095] In an exemplary aspect, the repository [212] comprises at least cache
memory. The cache memory acts as a temporary storage that gives quick access to
10 the validated modified configuration data. Furthermore, the validated modified
configuration data is stored in the database [206] in order to maintain a permanent
record for long-term use.
[0096] In an exemplary aspect, the method comprises the step of checking, by the
15 validation unit [210], the validity of the modified configuration data comprises
checking the one or more modifications to the transmitted configuration data based
on predefined rules for at least one of a syntax, and file formatting of the modified
configuration data.
20 [0097] For checking the validity of the modified configuration data, the validation
unit [210] checks the one or more modifications to the transmitted configuration
data based on the predefined rules for at least one of the syntax and file formatting
of the modified configuration data.
25 [0098] In an exemplary aspect, the predefined rules use specific criteria or rules
that have been established beforehand by the network administrator. These predefined rules/criteria serve as benchmarks for evaluating the validity of the
modifications, ensuring that they comply with the requirements set by the network
administrator.
30
24
[0099] In an exemplary aspect, the processing unit [208] checks the file formatting
of the modified configuration data in order to verify that the file is properly
formatted which ensures that the application correctly interprets the modified
configuration data thereby enhancing the overall efficiency of the application.
5
[0100] In an exemplary aspect, the modified configuration data after validation is
further transmitted by the transceiver unit [302] to at least one container associated
with at least the application. The transceiver unit [202] transmits the modified
configuration data to at least one container associated with at least the application
10 to ensure that the application has access to the latest modified configuration data.
[0101] In an exemplary aspect, in response to the modified configuration data not
being valid, the method comprises generating, by a report generation unit, a report
indicating one or more reasons for failure of validity of the one or more
15 modifications in the transmitted configuration data.
[0102] The report generation unit [214] generates a report indicating one or more
reasons for a failure of validity of the one or more modifications in the transmitted
configuration data, in response to the modified configuration data not being valid.
20 In an exemplary aspect, the report generation unit [214] generates the detailed
report that outlines the specific reasons for failures in validating the modifications
of configuration data. When the validation unit [214] detects issues, such as syntax
errors or formatting of the modified configuration data, the report generation unit
[214] provides a report that acts as feedback for the network administrator.
25
[0103] The method [300] further comprises transmitting, by the transceiver unit
[202], the generated report to the UI [204]. Once the report is generated by the
report generation unit [214], the transceiver unit [202] transmits the information to
the user interface (UI) [204] where the network administrator may see the reasons
30 for validation failures of the modified data, enabling the user to make necessary
adjustments accordingly.
25
[0104] The method [300] further comprises generating, by the processing unit [208]
using the UI, a request for revising the one or more modifications associated with
the transmitted configuration data, based on the generated report.
5
[0105] Based on the generated report by the report generation unit [208], the
processing unit [208] generates the request for revising the one or more
modifications associated with the transmitted configuration data thereby enabling
the network administrator to make any changes, modifications, and updates to
10 modified configuration data enhancing the overall efficiency of the system [200].
[0106] Thereafter, at step [312], the method [300] is terminated.
[0107] Another aspect of the present disclosure may relate to a user device for
15 modifying configuration data in a network environment. The user device comprises
a processor configured to receive, using a user interface (UI), from a database,
configuration data associated with at least an application; transmit, using the UI,
one or more modifications to the received configuration data associated with at least
the application, wherein the one or more modifications are transmitted to generate
20 a modified configuration data associated with at least the application, based on the
received configuration data, and the transmitted one or more modifications; and
checks a validity of the modified configuration data, store, in a repository and the
database, the modified configuration data associated with at least the application in
response to the modified configuration data being valid.
25
[0108] Referring to FIG. 4, an exemplary process flow diagram [400] for
modifying configuration data in a network environment, in accordance with
exemplary implementations of the present disclosure is shown.
30 [0109] At step 402, the process [400] comprises receiving, in the container 1 using
the CLI, a request for transmitting the existing file associated with the configuration
26
data. In an exemplary aspect, the existing file is transmitted, from the container 1
to the command line interface (CLI). The container 1 is also referred to as the
controller, as it is the main container where the modification to the configuration
data is initiated. Additionally, Container 1 (controller) further control or manage or
5 modify the configuration data for other containers.
[0110] At step 404, the process [400] comprises receiving from the container 1,
using a command line interface (CLI) (also referred to herein as user interface
[204]), the existing file associated with the configuration data. As used herein, the
10 user may be referred to as CLI user.
[0111] At step 406, the process [400] comprises manually appending/modifying
existing configuration file with required large file entities.
15 [0112] At step 408, the process [400] comprises executing, at the CLI, request for
combined data change. In an exemplary aspect, this combined data is aggregation
of existing configuration data and appended configuration data.
[0113] At step 410, the process [400] comprises updating configuration file in the
20 cache memory and again physically updating configuration file in the database
[206]. In an exemplary aspect, the cache memory acts as a temporary storage that
gives quick access to the validated modified configuration data. Furthermore, the
validated modified configuration data is stored in the database [206] in order to
maintain a permanent record for long-term reliability.
25
[0114] At step 412, the process [400] comprises copying the modified/updated
configuration data files from container 1 to the remaining containers of clusters i.e.
containers 1 - N.
30 [0115] At step 414, the process [400] comprises getting, at the container 2-N,
trigger from container 1.
27
[0116] At step 416, the process [400] comprises updating, at the container 2-N,
cache using updated local file.
5 [0117] At step 418, the process [400] comprises processing, at the container 2-N,
new requests using the new updated data.
[0118] The present disclosure further discloses a non-transitory computer readable
storage medium storing instructions for modifying configuration data in a network
10 environment, the instructions include executable code which, when executed by one
or more units of a system, causes a transceiver unit to transmit, using a user interface
(UI), from a database, configuration data associated with at least an application.
The instructions when executed further causes the transceiver unit to receive, using
the UI, one or more modifications to the transmitted configuration data associated
15 with at least the application. The instructions when executed further causes a
processing unit to generate a modified configuration data associated with at least
the application, based on the transmitted configuration data, and the received one
or more modifications. The instructions when executed further causes a validation
unit to check a validity of the modified configuration data. The instructions when
20 executed further causes the processing unit is configured to store, in a repository
and the database, the modified configuration data associated with at least the
application in response to the modified configuration data being valid.
[0119] As is evident from the above, the present disclosure provides a technically
25 advanced solution for modifying configuration data in a network environment. The
present solution avoids extra burden of lock-unlock by traffic handling threads.
Further, the present solution avoids penalty of acquiring and releasing repeated lock
in case of large number data to be updated in configuration file. Further, the present
solution makes efficient use of threads by avoiding context switching to have
30 efficient use of processor. Further, the present solution avoids performing multiple
input-output (IO) operations of files. Further, the present solution enables easy and
28
clean execution for parallel requests. Also, the present solution facilitates effective
usage of the traffic processing threads and avoids context switching so that the key
performance indicators do not get impacted.
5 [0120] 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
10 functionality of specific units as disclosed in the 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
[0121] 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
20 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.
25
29
We Claim:
5 1. A method for modifying configuration data in a network environment, the
method comprising:
- transmitting, by a transceiver unit [202] using a user interface (UI)
[204], from a database [206], configuration data associated with at least
an application;
10 - receiving, by the transceiver unit [202] using the UI [204], one or more
modifications to the transmitted configuration data associated with at
least the application;
- generating, by a processing unit [208], a modified configuration data
associated with at least the application, based on the transmitted
15 configuration data, and the received one or more modifications; and
- checking, by a validation unit [210], a validity of the modified
configuration data,
wherein, in response to the modified configuration data being valid, the
method comprises:
20 - storing, by the processing unit [208], in a repository [212] and
the database [206], the modified configuration data associated
with at least the application.
2. The method as claimed in claim 1, wherein, in response to the modified
25 configuration data not being valid, the method comprises:
- generating, by a report generation unit [214], a report indicating one or
more reasons for failure of validity of the one or more modifications in
the transmitted configuration data; and
- transmitting, by the transceiver unit [202], the generated report to the UI
30 [204].
30
3. The method as claimed in claim 2, wherein the method comprises generating,
by the processing unit [208] using the UI [204], a request for revising the one
or more modifications associated with the transmitted configuration data,
5 based on the generated report.
4. The method as claimed in claim 1, wherein the step of checking, by the
validation unit [210], the validity of the modified configuration data
comprises checking the one or more modifications to the transmitted
10 configuration data based on predefined rules for at least one of a syntax, and
file formatting of the modified configuration data.
5. The method as claimed in claim 1, wherein the repository [212] comprises at
least cache memory.
15
6. The method as claimed in claim 1, wherein the configuration data comprises
one or more configuration parameters associated with at least the application
7. The method as claimed in claim 1, wherein the modified configuration data
20 is further transmitted by the transceiver unit [202] to at least one container
associated with at least the application.
8. A system for modifying configuration data in a network environment, the
system comprising:
25 - a transceiver unit [202] configured to:
- transmit, using a user interface (UI) [204], from a database [206],
configuration data associated with at least an application;
- receive, using the UI [204], one or more modifications to the
transmitted configuration data associated with at least the
30 application;
31
a processing unit [208] connected at least with the transceiver unit [202],
the processing unit [208] is configured to:
- generate a modified configuration data associated with at least the
application, based on the transmitted configuration data, and the
5 received one or more modifications; and
a validation unit [210] connected at least with the processing unit [208], the
validation unit [210] is configured to:
- check a validity of the modified configuration data,
the processing unit [208] is configured to:
10 - store, in a repository [212] and the database [206], the
modified configuration data associated with at least the
application in response to the modified configuration data
being valid.
15 9. The system as claimed in claim 8, wherein, in response to the modified
configuration data not being valid,
a report generation unit [214] is configured to:
- generate a report indicating one or more reasons for failure of validity
of the one or more modifications in the transmitted configuration data;
20 and
the transceiver unit [202] is configured to:
- transmit the generated report to the UI [204].
10. The system as claimed in claim 9, wherein the processing unit [208] is
25 configured to generate, using the UI [204], a request for revising the one or
more modifications associated with the transmitted configuration data, based
on the generated report.
32
11. The system as claimed in claim 8, wherein, to check the validity of the
modified configuration data, the validation unit [210] is configured to check
the one or more modifications to the transmitted configuration data based on
predefined rules for at least one of a syntax, and file formatting of the
5 modified configuration data.
12. The system as claimed in claim 8, wherein the repository [212] comprises at
least cache memory.
10 13. The system as claimed in claim 8, wherein the configuration data comprises
one or more configuration parameters associated with at least the application.
14. The system as claimed in claim 8, wherein the transceiver unit [202] is further
configured to transmit the modified configuration data to at least one
15 container associated with at least the application.
15. A user device for modifying configuration data in a network environment, the
user device comprising:
a processor configured to:
20 receive, using a user interface (UI), from a database,
configuration data associated with at least an application;
transmit, using the UI, one or more modifications to the received
configuration data associated with at least the application,
wherein the one or more modifications are transmitted to:
25 generate a modified configuration data associated with at least the
application, based on the received configuration data, and the
transmitted one or more modifications; and
check a validity of the modified configuration data,
33
store, in a repository and the database, the modified configuration
data associated with at least the application in response to the modified configuration data being valid.
| # | Name | Date |
|---|---|---|
| 1 | 202321063843-STATEMENT OF UNDERTAKING (FORM 3) [22-09-2023(online)].pdf | 2023-09-22 |
| 2 | 202321063843-PROVISIONAL SPECIFICATION [22-09-2023(online)].pdf | 2023-09-22 |
| 3 | 202321063843-POWER OF AUTHORITY [22-09-2023(online)].pdf | 2023-09-22 |
| 4 | 202321063843-FORM 1 [22-09-2023(online)].pdf | 2023-09-22 |
| 5 | 202321063843-FIGURE OF ABSTRACT [22-09-2023(online)].pdf | 2023-09-22 |
| 6 | 202321063843-DRAWINGS [22-09-2023(online)].pdf | 2023-09-22 |
| 7 | 202321063843-Proof of Right [22-01-2024(online)].pdf | 2024-01-22 |
| 8 | 202321063843-FORM-5 [21-09-2024(online)].pdf | 2024-09-21 |
| 9 | 202321063843-ENDORSEMENT BY INVENTORS [21-09-2024(online)].pdf | 2024-09-21 |
| 10 | 202321063843-DRAWING [21-09-2024(online)].pdf | 2024-09-21 |
| 11 | 202321063843-CORRESPONDENCE-OTHERS [21-09-2024(online)].pdf | 2024-09-21 |
| 12 | 202321063843-COMPLETE SPECIFICATION [21-09-2024(online)].pdf | 2024-09-21 |
| 13 | 202321063843-FORM 3 [07-10-2024(online)].pdf | 2024-10-07 |
| 14 | 202321063843-Request Letter-Correspondence [08-10-2024(online)].pdf | 2024-10-08 |
| 15 | 202321063843-Power of Attorney [08-10-2024(online)].pdf | 2024-10-08 |
| 16 | 202321063843-Form 1 (Submitted on date of filing) [08-10-2024(online)].pdf | 2024-10-08 |
| 17 | 202321063843-Covering Letter [08-10-2024(online)].pdf | 2024-10-08 |
| 18 | 202321063843-CERTIFIED COPIES TRANSMISSION TO IB [08-10-2024(online)].pdf | 2024-10-08 |
| 19 | Abstract.jpg | 2024-10-19 |
| 20 | 202321063843-ORIGINAL UR 6(1A) FORM 1 & 26-311224.pdf | 2025-01-04 |